Renderingsprocessen spelar en avgörande roll i utvecklingscykeln för datorgrafik.
Gilla att utveckla film
Rendering är den mest tekniskt komplexa aspekten av 3D-produktion, men det kan faktiskt förstås ganska enkelt i samband med en analogi: Såsom en filmfotograf måste utveckla och skriva ut sina foton innan de kan visas, blir grafikprofessorer belastade med en liknande nödvändighet.
När en konstnär arbetar på en 3D-scen, är modellerna han manipulerar faktiskt en matematisk representation av punkter och ytor (mer specifikt snitt och polygoner) i tredimensionellt utrymme.
Termen rendering avser de beräkningar som utförs av en 3D-mjukvarupaketets renderingsmotor för att översätta scenen från en matematisk approximation till en slutförd 2D-bild. Under processen kombineras hela scenens rumsliga, textur- och belysningsinformation för att bestämma färgvärdet för varje pixel i den plana bilden.
Två typer av rendering
Det finns två huvudtyper av rendering, vars huvudsakliga skillnad är den hastighet som bilderna beräknas och slutförs.
- Realtid Rendering: Real-time rendering används mest framträdande i spel och interaktiv grafik, där bilder måste beräknas från 3D-information i oerhört snabb takt. Eftersom det är omöjligt att förutsäga exakt hur en spelare kommer att interagera med spelmiljön, måste bilderna ges i realtid när åtgärden utvecklas.
- Hastighetsfrågor: För att rörelse ska kunna förekomma vätska måste minst 18 till 20 bilder per sekund lämnas till skärmen. Något som är mindre än detta och åtgärd kommer att bli hakigt.
- Metoderna: Real-time-rendering förbättras drastiskt med dedikerad grafikhårdvara, och genom att förbereda så mycket information som möjligt. En stor del av en spelmiljös belysningsinformation är förberäknad och "bakad" direkt i miljöens texturfiler för att förbättra renderhastigheten.
- Offline eller Pre-Rendering: Offline-rendering används i situationer där hastigheten är mindre av ett problem, med beräkningar som vanligtvis utförs med flera kärnprocessorer i stället för dedikerad grafikhårdvara. Offline rendering ses mest i animering och verkar arbete där visuell komplexitet och fotorealism hålls till en mycket högre standard. Eftersom det inte finns någon oförutsägbarhet om vad som kommer att visas i varje ram, har stora studior varit kända för att ägna upp till 90 timmar att göra tid till enskilda ramar.
- Photorealism: Eftersom offline-rendering sker inom en tidsram med öppen tid, kan högre nivåer av fotorealism uppnås än i realtidssändning. Tecken, miljöer och deras associerade strukturer och ljus tillåts typiskt högre polygontal och 4k (eller högre) upplösningstextfiler.
Renderingstekniker
Det finns tre stora beräkningstekniker som används för de flesta rendering. Varje har sin egen uppsättning fördelar och nackdelar, vilket gör alla tre användbara alternativ i vissa situationer.
- Scanline (eller rasterisering): Scanline-rendering används när hastighet är en nödvändighet, vilket gör det till tekniken att välja för realtidsutförande och interaktiv grafik. I stället för att göra en bild pixel-för-pixel beräknar scanlinjeleverantörer en polygon med hjälp av polygonbasis. Scanline-tekniker som används i samband med förkomprimerad (bakad) belysning kan uppnå hastigheter på 60 bilder per sekund eller bättre på ett avancerat grafikkort.
- raytracing: I raytracing, för varje pixel i scenen, spåras en eller flera ljusstrålar från kameran till närmaste 3D-objekt. Ljusstrålen går sedan igenom ett bestämt antal "studsar", vilket kan innefatta reflektion eller brytning beroende på materialet i 3D-scenen. Färgen på varje pixel beräknas algoritmiskt baserat på ljusstrålens interaktion med objekt i dess spårväg. Raytracing har förmåga större fotorealism än scanlinje men är exponentiellt långsammare.
- Radiosity: Till skillnad från raytracing beräknas radiositet oberoende av kameran, och är ytorienterad snarare än pixel-för-pixel. Den primära funktionen av radiositet är att simulera ytfärgen mer exakt genom att redovisa indirekt belysning (studs diffust ljus). Radiositeten karakteriseras typiskt av mjuka graduerade skuggor och färgblödningar, där ljus från ljusa föremål "blöder" på närliggande ytor.
I praktiken används radiositet och raytracing ofta i förbindelse med varandra, med fördelarna med varje system för att uppnå imponerande nivåer av fotorealism.
Rendering Software
Även om rendering bygger på otroligt sofistikerade beräkningar, erbjuder dagens program lätt att förstå parametrar som gör det så att en artist aldrig behöver hantera den underliggande matematiken. En rendermotor ingår i alla större 3D-programvarusatser, och de flesta innehåller material- och belysningspaket som gör det möjligt att uppnå fantastiska nivåer av fotorealism.
De två vanligaste gör motorerna:
- Mental Ray: Förpackad med Autodesk Maya. Mental Ray är oerhört mångsidig, relativt snabb, och förmodligen den mest kompetenta renderaren för karaktärsbilder som behöver underskridningsspridning. Mental ray använder en kombination av raytracing och "global illumination" (radiosity).
- V-Ray: Du brukar se V-Ray som används tillsammans med 3DS Max-tillsammans, paret är absolut oöverträffat för arkitektonisk visualisering och miljöåtergivning.Huvudfördelar med VRay över konkurrenten är dess belysningsverktyg och omfattande materialbibliotek för arch-viz.
Rendering är ett tekniskt ämne men kan vara ganska intressant när du verkligen börjar titta på några av de vanliga teknikerna.