Als je de verschillende render-engines op de markt hebt bekeken, of hebt gelezen over stand-alone rendering-oplossingen, is de kans groot dat je termen bent tegengekomen als bevooroordeeld en onbevooroordeeld, GPU-versnelling, Reyes en Monte-Carlo. De nieuwste golf van renderers van de volgende generatie heeft een enorme hype gegenereerd, maar het kan soms moeilijk zijn om het verschil te zien tussen een marketingbuzzword en een eerlijk-naar-god-functie.
Wat is het verschil tussen bevooroordeelde en onbevooroordeelde weergave?
- onbevooroordeeld – Onpartijdige renderers zoals Maxwell, Indigo en Luxrender worden doorgaans geprezen als “fysiek nauwkeurige” render-engines. Hoewel “fysiek nauwkeurig” een verkeerde benaming is (niets in CG is echt fysiek nauwkeurig), is de term bedoeld om te impliceren dat een onbevooroordeelde renderer het pad van het licht zo nauwkeurig berekent als statistisch mogelijk is binnen de grenzen van de huidige-gen-renderingalgoritmen .
Met andere woorden, er wordt geen systematische fout of “bias” opzettelijk geïntroduceerd. Elke variantie zal zich manifesteren als ruis, maar met voldoende tijd zal een onbevooroordeelde renderer uiteindelijk convergeren tot een wiskundig “correct” resultaat. - Bevooroordeeld – Bevooroordeelde renderers doen daarentegen bepaalde concessies in het belang van efficiëntie. In plaats van weg te tuffen totdat een goed resultaat is bereikt, zullen bevooroordeelde renderers sample bias introduceren en subtiele interpolatie of vervaging gebruiken om de rendertijd te verkorten. Bevooroordeelde renderers kunnen doorgaans meer worden verfijnd dan hun onpartijdige tegenhangers, en in de juiste handen kan een bevooroordeelde renderer potentieel een zeer nauwkeurig resultaat produceren met aanzienlijk minder CPU-tijd.
Dus uiteindelijk is de keuze tussen een onbevooroordeelde engine, die meer CPU-tijd vereist maar minder artiesturen om te werken, of een bevooroordeelde renderer die de artiest behoorlijk wat meer controle geeft, maar een grotere tijdsinvestering vereist van de rendertechnicus. Hoewel er altijd uitzonderingen op de regel zijn, werken onbevooroordeelde renderers vrij goed voor stilstaande beelden, vooral in de architecturale visualisatiesector, maar in bewegende beelden, film en animatie heeft de efficiëntie van een vooringenomen renderer meestal de voorkeur.
Hoe speelt de GPU-versnellingsfactor mee?
GPU-versnelling is een relatief nieuwe ontwikkeling in de weergavetechnologie. Game-engines zijn al jaren en jaren afhankelijk van GPU-gebaseerde graphics, maar het is pas vrij recent dat GPU-integratie is onderzocht voor gebruik in niet-realtime rendering-applicaties waar de CPU altijd koning is geweest. Met de wijdverbreide verspreiding van NVIDIA’s CUDA-platform, werd het echter mogelijk om de GPU samen met de CPU te gebruiken bij offline renderingtaken, wat leidde tot een opwindende nieuwe golf van renderingtoepassingen. GPU-versnelde renderers kunnen onbevooroordeeld zijn, zoals Indigo of Octane, of bevooroordeeld zoals Redshift.
Waar past Renderman (Reyes) in het plaatje?
Op een bepaald niveau staat Renderman enigszins los van de huidige discussie. Het is een bevooroordeelde rendering-architectuur op basis van het Reyes-algoritme, meer dan 20 jaar geleden ontwikkeld door Pixar Animation Studios. Renderman is diep geworteld in de computer grafische industrie, en ondanks de groeiende concurrentie van Arnold van Solid Angle, zal het hoogstwaarschijnlijk nog vele jaren een van de beste rendering-oplossingen in high-end animatie- en effectstudio’s blijven. Dus als Renderman zo populair is, waarom (afgezien van geïsoleerde zakken op plaatsen zoals CGTalk), hoor je er dan niet vaker over? Omdat het simpelweg niet is ontworpen voor de onafhankelijke eindgebruiker. Kijk rond in de online CG-gemeenschap en je zult duizenden afbeeldingen zien van bevooroordeelde raytracers zoals Vray en Mental Ray, of onpartijdige pakketten zoals Maxwell en Indigo, maar het is erg zeldzaam om iets tegen te komen dat in Renderman is gebouwd. Het komt er eigenlijk op neer dat Renderman (zoals Arnold) nooit bedoeld was om op grote schaal gebruikt te worden door onafhankelijke artiesten. Hoewel Vray of Maxwell door een enkele onafhankelijke artiest behoorlijk bekwaam kunnen worden gebruikt, is er een team voor nodig om Renderman te gebruiken zoals het bedoeld was. Renderman is ontworpen voor grootschalige productiepijpleidingen en daar gedijt het goed.
Wat betekent het allemaal voor de eindgebruiker?
Allereerst betekent dit dat er meer opties zijn dan ooit. Nog niet zo lang geleden was rendering een beetje zwarte magie in de CG-wereld, en alleen de meest technisch ingestelde artiesten hadden de sleutels. In de loop van het afgelopen decennium is het speelveld enorm geëgaliseerd en is fotorealisme perfect haalbaar geworden voor een eenmansteam (in een stilstaand beeld tenminste). Bekijk onze recent gepubliceerde lijst met render-engines om een idee te krijgen van hoeveel nieuwe oplossingen er zijn ontstaan. De renderingtechnologie is uit de doos gesprongen en nieuwere oplossingen zoals Octane of Redshift verschillen zo van oude standbys zoals Renderman dat het bijna geen zin heeft om ze te vergelijken.