Cos'è una fotocamera OpenGL®?
"OpenGL® Camera" è il nome dato alla posizione virtuale di uno spettatore all'interno di una scena Open Graphics Library® (OpenGL®). È definito dalla posizione dello spettatore all'interno della scena e quindi dalla posizione o dalla direzione in cui lo spettatore sta guardando. La posizione della fotocamera in una scena OpenGL® determinerà quale parte di una scena verrà resa al dispositivo di visualizzazione e a quale angolo. Vengono utilizzate due matrici per descrivere una fotocamera OpenGL®: la matrice ModelView e la matrice di proiezione, che descrivono la posizione della fotocamera e il modo in cui gli oggetti in cui sta guardando sono resi rispettivamente. Una fotocamera è in grado di essere spostata all'interno di una scena per mostrare aree diverse o per simulare il movimento, sebbene in molti casi sia più facile o più efficiente spostare gli oggetti in una scena anziché la fotocamera.
Quando imparano OpenGL®, alcuni programmatori hanno difficoltà a capire le proprietà relativamente astratte di una fotocamera OpenGL®. Questo è in gran parte becAuse alcune trasformazioni e altre funzioni non funzionano allo stesso modo su una fotocamera come farebbero su un oggetto OpenGL® standard. Inoltre, le operazioni complesse con una fotocamera OpenGL® di solito richiedono competenza con Matrix Math e una comprensione della pipeline di trasformazione OpenGL®. Esistono alcune funzioni di convenienza nel supportare le librerie OpenGL®, sebbene possa essere difficile fare affidamento esclusivamente sugli strumenti di supporto in applicazioni più interattive.
La posizione di una fotocamera OpenGL® è definita utilizzando la matrice ModelView. La fotocamera può essere posizionata ovunque all'interno di una scena e tradotta o ruotata lungo qualsiasi asse. In molte applicazioni, in particolare le applicazioni che contengono solo una manciata di oggetti, può essere più facile applicare trasformazioni inverse agli oggetti all'interno di una scena per dare l'aspetto del movimento. In sostanza, l'intera scena si muove attorno a una statisticafotocamera IC in questo caso. Per scene più grandi, può essere più facile gestire le complessità della pipeline e della matrice matematica per spostare liberamente la fotocamera, lasciando la scena statica.
Gli attributi di una fotocamera OpenGL® sono controllati dalla matrice di proiezione. Per utilizzare l'analogia della fotocamera, la matrice di proiezione può essere pensata come il tipo di lente utilizzato. La matrice di proiezione viene spesso modificata per realizzare proiezioni ortografiche, che non hanno alcuna regolazione prospettica e proiezioni prospettiche che spiegano la distanza nel determinare la dimensione degli oggetti. Altri effetti, come una lente a occhio di pesce, una lunghezza focale o rapporti di aspetto diversi, possono essere tutti impostati attraverso l'uso della matrice di proiezione.