# JOGL glBindBuffer einmalig oder mehrmalig?



## AllquantorX (8. Feb 2013)

Wenn man in seinem Model nur ein großen VBO benutzt, reicht es dann, diesen nach glGenBuffer einmal zu binden und dann alles so zu belassen oder bindet undunbindet man ihn display() immer wieder neu.


----------



## Guest2 (8. Feb 2013)

Moin,

in OpenGL kann fast immer alles solange gebunden bleiben, bis etwas Neues gebraucht wird.

Allerdings: Bei aktuellem OpenGL wird ein VBO immer an ein VAO gebunden. Wenn verschiedene Dinge gezeichnet werden sollen, wird nur zwischen den VAOs umgeschaltet. Insofern stellt sich eigentlich nicht die Frage ob ein VBO "entbunden" werden soll. Die Verwendung eines VBO ohne VAO ist deprecated. (Genauer: Die Verwendung des default VAO ist deprecated)

Viele Grüße
Fancy


----------



## Marco13 (9. Feb 2013)

Etwas schwierig dabei ist, dass die "alten" Programme (ohne VAO, nur mit VBO) noch funktionieren können - und ich hatte dann irgendwann mal ein Treiberupdate gemacht, und dann darf man zusehen, wie man den Bildschirm _etwas weniger schwarz_ bekommt (speziell wenn man nicht weiß, wonach man suchen muss...)


----------



## Guest2 (9. Feb 2013)

Ja, den Spaß hatte ich auch schon! 

Eigentlich sollte dabei zumindest eine INVALID_OPERATION fliegen, tut sie aber wohl nicht immer. Mit dem neuen OpenGL Debug Context (ab 4.3) soll es angeblich sinnvolle Fehlermeldungen geben. Setzt natürlich voraus das man eine 4.3 Karte und Treiber hat. Also keine ATI, NV immerhin ab GTx 4xx. (Ich hab zurzeit nur ne ATI, kann also nicht sagen, ob das wirklich hilfreich ist.)

Viele Grüße
Fancy


----------

