En OpenGL®-projektion är processen och bilden som är resultatet av översättningen av tredimensionella (3D) objekt till en justerad tvådimensionell (2D) bild som kan visas på en skärm. Ordet ”projektion” i datorgrafikprogrammering hänvisar till det faktum att 3D-objekt inom en scen måste matematiskt flyttas, eller projiceras, på en virtuell 2D-yta så att de kan visas på en platt skärm på en enhet. Även om hela händelseförloppet som tar ett 3D-objekt och återger det till en 2D-yta kan kallas projektion, är termen också mer snävt applicerad på den specifika uppsättningen av geometriska transformationer i den grafiska pipelinen som sker som ett steg mellan andra uppsättningar av transformationer. De två specifika typerna av OpenGL®-projektionslägen som är tillgängliga för programmerare är perspektiv och ortografi.
Utmaningen med att skapa en OpenGL®-projektion är att ta data som omfattar alla objekt i en given scen och justera den så att objekten, när de visas på en skärm, överensstämmer med projektionsläget, visningsvolymen och inställningarna för virtuell kamera. Visningsvolymen är det synliga området av en scen från betraktarens plats i scenen, eller ögonpositionen. Sex siffror definierar visningsvolymen, inklusive höger-, vänster-, topp- och bottenavstånd från en virtuell mitt i visningsramen. Dessutom definierar två värden som kallas när- och fjärrplanen djupet på visningsvolymen. Denna volym definierar vilka objekt som ska projiceras, medan alla andra objekt utanför volymen kommer att ignoreras eller klippas så att de osynliga delarna inte utvärderas.
Det första läget för OpenGL®-projektion som kan användas är känt som ortografisk projektion. I det här läget justeras inte koordinaterna för objekten i en scen för deras avstånd från betraktaren eller perspektiv. Detta innebär att alla objekt ritas i samma storlek oavsett avståndet från betraktaren. Detta OpenGL®-projektionsläge används oftast i 3D-modelleringsprogram, tekniska designprogram och applikationer som använder 3D-polygoner för att skapa 2D-kompositbilder och som inte kräver exakt perspektiv.
Det vanligaste OpenGL®-projektionsläget kallas perspektivprojektion. I perspektivprojektionsläge skalas objekten i en scen och placeras efter deras avstånd från betraktaren. Detta innebär att objekt som är längre bort verkar mindre. Det betyder också att objekt i scenen justeras så att de långsamt konvergerar vid en punkt på visningshorisonten som kallas försvinnningspunkten. Perspektivprojektion modellerar nära hur den verkliga världen ser ut och används för att skapa realistiska renderingar i motsats till tekniska.