Skip to main content

Het 3D-beeld met weergave voltooien: een overzicht

CGI Dreamworks Animation Studio Pipeline | CGMeetup (April 2025)

CGI Dreamworks Animation Studio Pipeline | CGMeetup (April 2025)
Anonim

Het weergaveproces speelt een cruciale rol in de ontwikkeling van de computergrafiek.

Zoals het ontwikkelen van film

Renderen is het technisch meest complexe aspect van 3D-productie, maar het kan eigenlijk vrij eenvoudig worden begrepen in de context van een analogie: net zoals een filmfotograaf zijn foto's moet ontwikkelen en afdrukken voordat ze kunnen worden weergegeven, hebben professionals in de grafische sector een soortgelijke last noodzaak.

Wanneer een kunstenaar in een 3D-scène werkt, zijn de modellen die hij manipuleert feitelijk een wiskundige weergave van punten en oppervlakken (meer specifiek, hoekpunten en veelhoeken) in een driedimensionale ruimte.

De term rendering verwijst naar de berekeningen die worden uitgevoerd door de renderengine van een 3D-softwarepakket om de scène te vertalen van een wiskundige benadering naar een gefinaliseerde 2D-afbeelding. Tijdens het proces wordt de informatie in de gehele scène, textuur en belichting gecombineerd om de kleurwaarde van elke pixel in de afgevlakte afbeelding te bepalen.

Twee soorten weergave

Er zijn twee hoofdtypen rendering, met als belangrijkste verschil de snelheid waarmee beelden worden berekend en gefinaliseerd.

  1. Realtime weergave: Real-time weergave wordt het meest gebruikt in gaming en interactieve grafische afbeeldingen, waarbij afbeeldingen in een ongelooflijk snel tempo uit 3D-informatie moeten worden berekend. Omdat het onmogelijk is om precies te voorspellen hoe een speler met de spelomgeving zal omgaan, moeten afbeeldingen in "realtime" worden weergegeven terwijl de actie wordt uitgevoerd.
  2. Speed ​​Matters: Om beweging vloeibaar te laten lijken, moet minimaal 18 tot 20 frames per seconde op het scherm worden weergegeven. Alles minder dan dit en de actie zal schokkerig lijken.
  3. De methodes: Real-time weergave wordt drastisch verbeterd door speciale grafische hardware en door het vooraf compileren van zoveel mogelijk informatie. Een groot deel van de lichtinformatie van een game-omgeving wordt vooraf berekend en direct in de textuurbestanden van de omgeving "gebakken" om de weergavesnelheid te verbeteren.
  4. Offline of pre-rendering: Offline renderen wordt gebruikt in situaties waar snelheid minder een probleem is, met berekeningen die meestal worden uitgevoerd met multi-core CPU's in plaats van speciale grafische hardware. Offline renderen wordt het meest gezien bij animatie en effecten waarbij visuele complexiteit en fotorealisme op een veel hogere standaard worden gehouden. Omdat er geen onvoorspelbaarheid is met betrekking tot wat in elk frame zal verschijnen, is bekend dat grote studio's tot 90 uur tijd besteden aan individuele frames.
  1. photorealism: Omdat offline rendering plaatsvindt binnen een open tijdsbestek, kunnen hogere niveaus van fotorealisme worden bereikt dan met real-time rendering. Tekens, omgevingen en de bijbehorende texturen en lichten zijn doorgaans toegestaan ​​hogere aantallen polygonen en structuurbestanden met een resolutie van 4 k (of hoger).

Renderingstechnieken

Er zijn drie belangrijke computationele technieken gebruikt voor de meeste weergave. Elk heeft zijn eigen set van voor- en nadelen, waardoor alle drie haalbare opties in bepaalde situaties beschikbaar zijn.

  • Scanline (of rastering): Scanline-rendering wordt gebruikt wanneer snelheid een noodzaak is, waardoor het de voorkeursmethode is voor realtime weergave en interactieve grafische weergave. In plaats van pixel per pixel een afbeelding weer te geven, berekenen scanline-renderers op basis van polygonen een polygoon. Scanline-technieken die worden gebruikt in combinatie met vooraf berekende (gebakken) verlichting kunnen snelheden bereiken van 60 frames per seconde of beter op een geavanceerde grafische kaart.
  • raytracing: Bij raytracing worden voor elke pixel in de scène een of meer lichtstralen getraceerd van de camera naar het dichtstbijzijnde 3D-object. De lichtstraal wordt vervolgens door een bepaald aantal "bounces" gevoerd, dat reflectie of breking kan omvatten, afhankelijk van de materialen in de 3D-scène. De kleur van elke pixel wordt algoritmisch berekend op basis van de interactie van de lichtstraal met objecten in zijn getraceerde pad. Raytracing is in staat tot groter fotorealisme dan scanline maar is exponentieel langzamer.
  • Radiosity: In tegenstelling tot raytracing, wordt de radiositeit onafhankelijk van de camera berekend en is het oppervlak georiënteerd in plaats van pixel per pixel. De primaire functie van radiositeit is het nauwkeuriger simuleren van de kleur van het oppervlak door rekening te houden met indirecte verlichting (gestabiliseerd diffuus licht). Radiositeit wordt meestal gekenmerkt door zachte, van een schaalverdeling voorziene schaduwen en kleurbloedingen, waarbij licht van felgekleurde voorwerpen op aangrenzende oppervlakken "bloedt".

In de praktijk worden radiositeit en raytracing vaak in combinatie met elkaar gebruikt, waarbij de voordelen van elk systeem worden gebruikt om indrukwekkende niveaus van fotorealisme te bereiken.

Renderende software

Hoewel renderen afhankelijk is van ongelooflijk geavanceerde berekeningen, biedt de software van vandaag gemakkelijk te begrijpen parameters waardoor het een kunstenaar is die nooit met de onderliggende wiskunde te maken hoeft te krijgen. Bij elke grote 3D-softwaresuite is een render-engine inbegrepen, en de meeste omvatten materiaal- en verlichtingspakketten die het mogelijk maken om verbluffende niveaus van fotorealisme te bereiken.

De twee meest gebruikte render-engines:

  • Geestelijke Straal: Verpakt met Autodesk Maya. Mental Ray is ongelooflijk veelzijdig, relatief snel en waarschijnlijk de meest competente renderer voor personage-afbeeldingen die ondergrondse verstrooiing nodig hebben. Psychische straling maakt gebruik van een combinatie van raytracing en "globale verlichting" (radiositeit).
  • V-Ray: U ziet meestal V-Ray samen met 3DS Max gebruiken - samen is het paar absoluut ongeëvenaard voor architecturale visualisatie en omgevingsweergave.Belangrijkste voordelen van VRay ten opzichte van zijn concurrent zijn de lichtwerktuigen en de uitgebreide materialenbibliotheek voor arch-viz.

Renderen is een technisch onderwerp, maar kan best interessant zijn als je echt eens wat dieper ingaat op enkele van de gangbare technieken.