Vad är en OpenGL®-kamera?
"OpenGL®-kamera" är namnet som ges till en visares virtuella position inom en Open Graphics Library® (OpenGL®) -scen. Det definieras av betraktarens position i scenen och sedan platsen eller riktningen som tittaren tittar på. Kamerans placering i en OpenGL®-scen kommer att bestämma vilken del av en scen som ska återges till skärmenheten och i vilken vinkel. Två matriser används för att beskriva en OpenGL®-kamera: modelview-matrisen och projektionsmatrisen, som beskriver kamerans position respektive hur de objekt som den tittar på återges. En kamera kan flyttas inom en scen för att visa olika områden, eller för att simulera rörelse, även om det i många fall är lättare eller mer effektivt att flytta föremål i en scen istället för kameran.
När man lär sig OpenGL® har vissa programmerare svårt att förstå de relativt abstrakta egenskaperna hos en OpenGL®-kamera. Detta beror till stor del på att vissa transformationer och andra funktioner inte fungerar på samma sätt på en kamera som på ett vanligt OpenGL®-objekt. Dessutom kräver komplexa funktioner med en OpenGL®-kamera vanligtvis kunskaper i matrismatematik och en förståelse av OpenGL®-transformationsledningen. Det finns vissa bekvämlighetsfunktioner för att stödja OpenGL®-bibliotek, även om det kan vara svårt att bara lita på supportverktygssatserna i mer interaktiva applikationer.
Positionen för en OpenGL®-kamera definieras med hjälp av modellvisningsmatrisen. Kameran kan placeras var som helst inom en scen och översättas eller roteras längs vilken axel som helst. I många applikationer, framför allt applikationer som bara innehåller en handfull objekt, kan det vara lättare att tillämpa omvända transformationer på objekten inom en scen för att ge rörelsens utseende. I huvudsak rör sig hela scenen runt en statisk kamera i detta fall. För större scener kan det vara lättare att hantera komplexiteten i rörledningen och matrismatematiken för att flytta kameran fritt, vilket lämnar scenen statisk.
Attributen för en OpenGL®-kamera styrs av projektionsmatrisen. För att använda kameranalogin kan projektionsmatrisen anses vara den typ av lins som används. Projektionsmatrisen modifieras ofta för att göra ortografiska projektioner, som inte har någon perspektivjustering, och perspektivprojektioner som tar hänsyn till avståndet för att bestämma storleken på objekt. Andra effekter, såsom en ögonlins, brännvidd eller olika bildförhållanden, kan alla ställas in genom användning av projektionsmatrisen.