Vad är en OpenGL®-animation?
OpenGL®-animering är en allmän term som tillämpas på alla scener som har föremål som rör sig inom sig och återges med hjälp av OpenGL®-biblioteken. Från ett programmeringsperspektiv finns det flera metoder som kan användas för att skapa en OpenGL®-animation. Inom en mer datorgrafikorienterad vy kan en OpenGL®-animation vara vilken animerad sekvens som gjordes med OpenGL®, oavsett om scenen genererades i programkällkoden eller inom ett fristående modelleringsprogram. Det finns flera typer av animationer som kan göras med OpenGL® och andra stödbibliotek, men två av de mest använda är keyframe-animering och skelettanimation.
Den mest grundläggande typen av OpenGL®-animering innebär helt enkelt att flytta ett objekt genom en scen. Detta görs vanligtvis genom att ändra platsen för vart och ett av toppkoordinaterna lika, genom att långsamt översätta dem till önskad position. Kamerans placering i en scen kan också ändras för att skapa en animeringseffekt, även om hela scenen förblir statisk i detta fall. Denna grundläggande form av animering används ofta i tvådimensionella (2D) program där objekten bara är platshållare för att visa strukturer.
Keyframe-animering är en mycket mer komplex process. Denna form av OpenGL®-animering innebär att man tar en modell som har laddats in i scenen och flyttar den stegvis mot en annan position, kallad en nyckelram. Ett exempel är en modell av en hand som vinkar. Den ursprungliga positionen för handen jämförs med en annan modell, eller keyframe, av animering där handen är helt utsträckt. Handens medelvärde och stegvisa rörelse skapar animeringen utan att behöva lagra handens position i varje steg längs banan.
En annan typ av OpenGL®-animering är känd som skelettanimation. Detta innebär att skapa en modell, vanligtvis av en ledad människa eller djur, och sedan skapa en typ av benstruktur inuti modellen. Var och en av benen är praktiskt taget fäst vid modellens omgivande hörn. Benen utövar en viss kraft, eller vikt, på varje topp, så att när själva benet flyttas reagerar den omgivande modellen och det nät som utgör modellens "hud" deformeras. Den här typen av animering tar tid att skapa men kan ge mycket verklighetstrogna rörelser när du gör det korrekt.
En OpenGL®-animation förlitar sig både på modellen som skapats för att animeras och på hur ett program utför animeringen. Det mest använda sättet är att återge animationsramar till ett område utanför skärmen känd som en buffert innan den dras till den synliga skärmen. Detta gör att bilden kan ritas i sin helhet utan att användaren behöver titta på den om den är för långsam. Många datorprogram som använder OpenGL®-animering måste också se till att de upprätthåller en jämn bildhastighet för att förhindra hoppiga animationer, vilket åstadkommes genom att tidställa varje ram som ritas och antingen vänta eller påskynda återgivningsprocessen.