Skip to main content

Vad är en OpenGL VBO?

När du använder Open Graphics Library .Detta tillåter en OpenGL VBO ska göras mycket snabbt och använda mycket färre systemresurser än andra tekniker som använder ritning av omedelbar läge.Förutom hastighetens vinster och minskningen av grafikområdet, en OpenGL VBO är också en dynamisk datastruktur mdash;Till skillnad från en OpenGL Display List Mdash;Det kan ändras när det är i minnet.Begreppet en OpenGL VBO började faktiskt med hårdvarutillverkare som ursprungligen inkluderade mdash;under olika namn mdash;en liknande typ av funktionalitet som en förlängning av OpenGL Bibliotek som senare standardiserades av OpenGL Architecture Review Board (ARB).

An OpenGL VBO är i princip en kombination av två andra typer av OpenGL data struktur.Den omfattar den grundläggande funktionaliteten för en toppunktuppsättning, eftersom informationen för geometri mdash;inklusive Vertex -koordinater, normaler och färg mdash;kan alla lagras i en strukturerad matris som kan skickas till OpenGL för bearbetning.Till skillnad från en vertex -array, emellertid en OpenGL VBO lagras på serversidan av renderaren och behöver inte ständigt komma åt klientsidan för toppinformationen.

Genom att låta VBO lagras i grafikminne tar det också några av egenskaperna för en visningslista.Den största skillnaden är att en OpenGL VBO kan modifieras och en visningslista kan inte.Dessutom kopieras VBO inte nödvändigtvis till grafikminnet som en visningslista skulle vara, så endast en datastruktur behöver vara närvarande i minnet.

När en OpenGL VBO återges äntligen, avståndet från grafikminnet där det lagras och grafikbehandlingsenheten (GPU) är mycket liten, vilket möjliggör mycket snabb rasterisering utan att behöva gå igenom långsammare systemhårdvara först.I vissa fall stöds emellertid inte användningen av VBO: er av grafikkortshårdvara.Detta kan leda till programmeringsproblem som tar bort eventuella fördelar med att använda ett VBO, eller ett program som kommer att vara oförenligt med vissa grafikkort.

Det finns några metoder som kan hjälpa till att optimera hur en OpenGL VBO behandlas när det används.En av dessa är att ge tips till grafikkortet, eller till OpenGl , för att avgöra var VBO ska vara beläget i minnet.Beroende på de angivna antydningarna kan VBO lagras direkt i grafikminnet på grafikkortet, eller kan lagras i systemets huvudsakliga slumpmässiga åtkomstminne (RAM), om det anses nödvändigt.