Registriert: Do Dez 05, 2002 10:35 Beiträge: 4234 Wohnort: Dortmund
Mit Floattexturen habe ich bisher selber zwar noch nicht gearbeitet aber eigentlich sollte er das so nicht machen. Kannste ausprobieren in dem du dir mal die Größe der Textur zurückgeben lässt. Dann kannst du anhand der Größe recht gut sagen was sich darin befindet.
Pixelzugriff auf Bufferspeicher: Da habe ich bei der glBitmap einen sehr simplen Trick angewendet. Sobald ich einen Datenpointer setze erzeuge ich ein Array of Pointer das den Scanlines entspricht. Somit kann ich ohne rechnen sagen wo welche Zeile anfängt. Da du immer den selben Inhalt hast kannst du eine Methode erstellen die auf dieses Array zugreift und dann entsprechend nur den typisierten Pointer (Pointer auf dein SingleRecord) um X erhöht. Damit wird automatisch auf die Größe des records rücksicht genommen.
Und so hast du eine passende Schnittstelle bei der jeder auf die Daten zugreifen kann und zwar so, dass es entsprechend schnell ist.
PS: Dem Record würde ich noch den Zusatz packed geben. Damit wird sicher gestellt, dass es immer genau die Größe hat die es auch an Daten beinhält. Sonst kann es wie gesagt passieren, dass zwischen den Records lücken existieren. Ist bei Texturen nicht sonderlich erwünscht, da sich die Daten dann verschieben.
Hab jetzt alles eingebaut.. funktioniert wunderbar!
Das einzige was ich nochnicht gemacht habe (aber auch gleich tun werde) ist der teil mit den Float Texturen.. aber es läuft sogar schon jetzt schnell genug
Mitglieder in diesem Forum: 0 Mitglieder und 9 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.