Wat is een OpenGL® -camera?

"OpenGL® -camera" is de naam die wordt gegeven aan de virtuele positie van een kijker in een open grafische bibliotheek® (OpenGL®) scene. Het wordt gedefinieerd door de positie van de kijker in de scène en vervolgens de locatie of richting waarin de kijker kijkt. De positie van de camera in een OpenGL® -scène zal bepalen welk gedeelte van een scène wordt weergegeven aan het display -apparaat en onder welke hoek. Twee matrices worden gebruikt om een ​​OpenGL® -camera te beschrijven: de ModelView -matrix en de projectiematrix, die de positie van de camera beschrijven en de manier waarop de objecten waarop deze kijkt, respectievelijk worden weergegeven. Een camera kan binnen een scène worden verplaatst om verschillende gebieden te tonen, of om beweging te simuleren, hoewel het in veel gevallen eenvoudiger of efficiënter is om de objecten in een scène te verplaatsen in plaats van de camera.

Bij het leren van OpenGL® hebben sommige programmeurs een moeilijke tijd om de relatief abstracte eigenschappen van een OpenGL® -camera te begrijpen. Dit is grotendeels BECAuse Sommige transformaties en andere functies werken niet op dezelfde manier op een camera als op een standaard OpenGL® -object. Bovendien vereisen complexe bewerkingen met een OpenGL® -camera meestal vaardigheid met Matrix Math en een begrip van de OpenGL® -transformatiepijplijn. Er zijn enkele gemaksfuncties bij het ondersteunen van OpenGL® -bibliotheken, hoewel het moeilijk kan zijn om alleen op de ondersteuningstoolkits te vertrouwen in meer interactieve toepassingen.

De positie van een OpenGL® -camera wordt gedefinieerd met behulp van de ModelView -matrix. De camera kan overal in een scène worden geplaatst en langs elke as worden vertaald of gedraaid. In veel toepassingen, met name toepassingen die slechts een handvol objecten bevatten, kan het gemakkelijker zijn om inverse transformaties toe te passen op de objecten binnen een scène om het uiterlijk van beweging te geven. In wezen beweegt de hele scène rond een statIC -camera in dit geval. Voor grotere scènes kan het gemakkelijker zijn om met de complexiteit van de pijplijn en matrixwiskunde om te gaan om de camera vrij te verplaatsen, waardoor de scène statisch blijft.

De attributen van een OpenGL® -camera worden bestuurd door de projectiematrix. Om de camera -analogie te gebruiken, kan de projectiematrix worden beschouwd als het type lens dat wordt gebruikt. De projectiematrix wordt vaak gewijzigd om orthografische projecties te maken, die geen perspectiefaanpassing hebben, en perspectiefprojecties die rekening houden met afstand bij het bepalen van de grootte van objecten. Andere effecten, zoals een visooglens, brandpuntsafstand of verschillende beeldverhoudingen, kunnen allemaal worden ingesteld door het gebruik van de projectiematrix.

ANDERE TALEN