Skip to main content

Vad är en OpenGL Vertexbuffert?

Ett öppet grafikbibliotek reg;(OpenGL ) Vertex Buffer är ett område i datorminnet som ofta ligger direkt på ett grafikkort som möjliggör mycket snabb åtkomst till en mängd toppar och deras egenskaper.Oftast en OpenGL Vertex-buffert används för att skapa ett Vertex Buffer-objekt (VBO), vilket tillåter objekt inom en tredimensionell (3D) -scen att återges som en del av en visningslista och inte i omedelbart läge.Ibland kan emellertid en Vertex -buffert användas utanför en VBO för att lagra information om ett objekt eller för att underlätta transformationer enklare på komplexa modeller.Det bör noteras att en Vertex -buffert inte behöver placeras i grafikkortsminnet, eftersom det kan tilldelas som alla datastrukturer.Om OpenGL Vertexbuffert kommer att användas som en del av en VBO, då måste grafikkortet som används stödja Special OpenGL VBO -förlängning för att säkerställa att bufferten placeras i grafikminnet.

På den mest grundläggande nivån, en OpenGL Vertexbuffert är bara en enkel buffert, ett tilldelat minnesområde där data kan lagras.Det blir en toppunktbuffert när en toppunkt array lagras i den.En OpenGL Vertex Array är en rad datastrukturer som definierar alla egenskaper hos enskilda vertikaler.Denna information kan inkludera X-, Y- och Z -platserna för vertexen i 3D -scenen, färgen på toppunktet, de normala och andra egenskaperna.

i omedelbar läge rendering, OpenGL REG;Kommandon körs direkt när de kallas inifrån ett program.Det är onödigt i dessa fall att ha en vertexuppsättning, eftersom kommandona för att placera och rita ett toppunkt kan ges direkt till hårdvaran, även om detta kan orsaka allvarliga prestandaproblem.För återgivning av icke-imediate-läge måste informationen om ett 3D-objekt eller en modell först placeras i en vertex-array så att den har en struktur som OpenGL REG;kan lätt tolka;Den matrisen måste sedan lagras i ett speciellt minnesområde som kallas en OpenGL Vertexbuffert.

Av sig själv har Vertex -bufferten inte nödvändigtvis några speciella attribut andra än att vara en komplett samling information som används för att rita ett objekt.När OpenGL Vertexbuffert omvandlas till en OpenGL reg;Vertex -buffertobjekt genom OpenGL -förlängningen inträffar emellertid en speciell händelseförlopp för att optimera ritningen av objektet som definieras i vertexbufferten.Nämligen tilldelas bufferten och lagras i grafikkortsminne, på serversidan av klient-serverinställningen OpenGL användningar.Vissa beräkningar kan också utföras i förväg på VBO så att de kan göras så snabbt som möjligt.Utanför en VBO får en vanlig toppunktbuffert vanligtvis inte denna behandling och kan tilldelas och användas som någon annan datatyp.