Skip to main content

Cos'è un OpenGL Vbo?

Quando si utilizza la libreria grafica aperta e reg;(OpenGL ) Librerie di computer grafica per la programmazione del computer, un oggetto buffer vertice (VBO) è una struttura di dati che consente di costruire e memorizzare un oggetto tridimensionale (3D) nella memoria della scheda grafica o dell'hardware grafico.Ciò consente un OpenGL VBO da rendere molto rapidamente e utilizzare risorse di sistema molte meno rispetto ad altre tecniche che utilizzano il disegno in modalità immediata.Oltre ai guadagni di velocità e alla riduzione dei sovraccarichi grafici, un OpenGL VBO è anche una struttura dinamica dei dati mdash;A differenza di un OpenGL Visualizza elenco e mdash;Questo può essere cambiato una volta che è in memoria.Il concetto di OpenGL VBO ha effettivamente iniziato con i produttori di hardware originariamente inclusi mdash;con nomi diversi e mdash;Un tipo di funzionalità simile come estensione di OpenGL Librerie che in seguito sono state standardizzate da OpenGL Architecture Review Board (ARB).

A OpenGL VBO è fondamentalmente una combinazione di altri due tipi di OpenGL strutture di dati.Comprende la funzionalità di base di un array di vertice, perché le informazioni per la geometria mdash;comprese le coordinate del vertice, le normali e il colore mdash;Tutti possono essere conservati in un array strutturato che può essere passato a OpenGL per l'elaborazione.A differenza di un array di vertice, tuttavia, un OpenGL VBO è memorizzato sul lato server del rendering e non è necessario accedere costantemente al lato client per le informazioni sul vertice.

Consentendo al VBO di essere archiviato nella memoria grafica, assume anche alcune delle proprietà di un elenco di visualizzazioni.La differenza principale è che OpenGL VBO può essere modificato e un elenco di visualizzazioni non può.Inoltre, il VBO non è necessariamente copiato nella memoria grafica come un elenco di visualizzazioni, quindi solo una struttura di dati deve essere presente in memoria.

Quando un OpenGL VBO è finalmente reso, la distanza dalla memoria grafica in cui è memorizzata e l'unità di elaborazione grafica (GPU) è molto piccola, consentendo una rasterizzazione molto rapida senza la necessità di spostarsi prima dell'hardware del sistema più lento.In alcuni casi, tuttavia, l'uso di VBO non è supportato dall'hardware della scheda grafica.Ciò può portare a problemi di programmazione che rimuovono eventuali vantaggi dall'uso di un VBO o un programma che sarà incompatibile con alcune schede grafiche.

Ci sono alcuni metodi che possono aiutare a ottimizzare come un OpenGL VBO viene trattato quando usato.Uno di questi è fornire suggerimenti alla scheda grafica o a OpenGL , per aiutare a determinare dove dovrebbe essere localizzato il VBO in memoria.A seconda dei suggerimenti forniti, il VBO può essere archiviato direttamente nella memoria grafica sulla scheda grafica o può essere memorizzato nella memoria di accesso casuale principale (RAM) del sistema, se ritenuto necessario.