[OpenGL] Indices kommen mit Stride; was tun?
-
hellihjb schrieb:
Was spricht denn gegen konvertieren?
Ich muss die Sache der Schnittstelle wegen on-the-fly abwickeln können. Die Konvertierung muss bei der ersten Verwendung der Indizes automatisch im Hintergrund erfolgen - und wenn sich die Daten ändern sollte (bei Indizes ist das Glücklicherweise sehr selten), erneut ablaufen.
Am besten ist es wohl, wenn man eine Art Caching programmiert, welches die verdichteten Indizes zwischenspeichert. Mal schauen, ob das praktikabel ist.
Danke.
-
Hast du so riesige Buffer dass du 32bit Indices brauchst? Denn ansonsten würd ich 16bit Indices verwenden wenn du eh schon am umpacken bist...
-
Mit Vertex Arrays geht das nicht. VBOs können das jedoch. Was spricht gegen die Verwendung von VBOs.
-
dot schrieb:
Hast du so riesige Buffer dass du 32bit Indices brauchst? Denn ansonsten würd ich 16bit Indices verwenden wenn du eh schon am umpacken bist...
Ja, das werde ich so machen; leider bekomme ich die Indices mit 8 Byte Länge geliefert und der OpenGL-Port ist nur sekundär von Bedeutung.
Gast00_05 schrieb:
Mit Vertex Arrays geht das nicht. VBOs können das jedoch. Was spricht gegen die Verwendung von VBOs.
Wie denn? Kannst du mir hierfür einen Link oder ein Beispiel geben?
MfG
-
/rant/ schrieb:
Wie denn? Kannst du mir hierfür einen Link oder ein Beispiel geben?
Das würd mich auch interessieren
-
Mich würde auch wundern wenn das geht, das bietet keine mir bekannte API. Den Vertex-Stride kann man angeben, ja, aber den Index-Stride... hm.
-
/rant/ schrieb:
Am besten ist es wohl, wenn man eine Art Caching programmiert, welches die verdichteten Indizes zwischenspeichert. Mal schauen, ob das praktikabel ist.
Bekommst du denn Änderungen an den Indizes explizit mit?
-
gast00_05 schrieb:
Mit Vertex Arrays geht das nicht. VBOs können das jedoch. Was spricht gegen die Verwendung von VBOs.
hustbaer schrieb:
Mich würde auch wundern wenn das geht, das bietet keine mir bekannte API. Den Vertex-Stride kann man angeben, ja, aber den Index-Stride... hm.
Geht auch nicht bei OpenGL.
-
inter2k3 schrieb:
Geht auch nicht bei OpenGL.
Jo, das dacht ich mir schon, kann dazu nur das gleiche sagen wie hustbear: Das wär mir sehr neu denn das kann keine mir bekannte API (weder OGL noch irgendeine D3D Version > 6)...
-
hustbaer schrieb:
Bekommst du denn Änderungen an den Indizes explizit mit?
Vorausgesetzt alle Programmierer und deren Quellcodes halten sich an gewisse Schnittstellen und Spezifikationen kann ich Änderungen feststellen; ich gehe mal davon aus, dass dies der Fall ist
-
Dann sollte die Lösung ja mehr oder weniger offensichtlich sein