Vad är ett renderingsmål?

Vid programmering av datorgrafik är ett renderingsmål ett område i datorminnet där nästa ram som ska visas ritas. Oftast används för att öka renderingshastigheten, är renderingsmålet vanligtvis i ett område med dedikerat minne på grafikkortet nära grafikbehandlingsenheten (GPU). Även om konceptet är nästan samma, finns det några mindre skillnader i implementering och namngivningskonventioner kopplade till ett renderingsmål; dessa beror på det programmeringsspråk eller bibliotek som används, med vissa språk som kallar det en bakre buffert, ett framebufferobjekt eller en dubbel buffert. Det är också möjligt, särskilt i tredimensionell (3D) datorgrafik, att använda renderingsmålet för att rita strukturer på objekt för att hjälpa till att optimera den slutliga visningsbilden när den sammanställs. I vissa fall är det möjligt att ha flera render-mål (MRT), där olika delar av en ram dras på olika ytor och sedan komponeras på det slutliga målet.

Idén om ett render-mål liknar processen som används vid dubbel buffring. En bild ritas väsentligen på en yta utanför skärmen, som verkligen är ett minnesområde, så att när det är dags att nästa ram dras till en bildskärmsanordning eller skärm kan den göras så snabbt som möjligt eftersom alla av ritningsfunktionerna har redan utförts. Skillnaden med ett renderingsmål i många implementeringar är att minnesområdet kan vara på grafikkortet och hanteras genom hårdvara eller andra aspekter av GPU, vilket gör det mycket effektivare och snabbare än en programvarahanterad dubbelbuffrande design.

När det gäller programmering av 3D-datorgrafik kan ett renderingsmål användas för att optimera återgivningen av objekt som använder bilder för ytstrukturer. Görarkontakten finns i grafikhårdvaran, så detta kan möjliggöra mycket snabb rasterisering av 3D-objekt. Specialeffekter kan också dras på detta sätt, vilket gör montering av den slutliga scenen på en bakre buffert mycket snabb eftersom de flesta av den grafiska informationen flyttas bara ett kort avstånd på grafikkortet.

Grafikhårdvaran, drivrutiner och bibliotek som används kan göra någon skillnad i hur ett renderingsmål fungerar. En specifik begränsning är användningen av MRT, där grafikkortet avgör hur många mål som kan användas samtidigt. Vissa kort har inte heller något hårdvarosupport för renderingsmål alls, även om liknande funktionalitet vanligtvis kan uppnås med alternativa medel.

ANDRA SPRÅK

Hjälpte den här artikeln dig? Tack för feedbacken Tack för feedbacken

Hur kan vi hjälpa? Hur kan vi hjälpa?