Terug naar begrippenlijst

Rendering

Rendering is het wiskundige en grafische proces waarbij een computer ruwe gegevens omzet in een definitief tweedimensionaal beeld of een reeks beelden (video). Je kunt het zien als een virtuele fotograaf die in een digitale ruimte de belichting afstelt, de schaduwen berekent en de lens scherpstelt om het eindresultaat af te drukken. Zonder rendering zou een digitaal ontwerp niet meer zijn dan een onzichtbare verzameling van wiskundige punten en lijnen.

Geschreven door Thijn de Haas

Zwaaiende emoji

Thijn Senior developer

Meer over Thijn

Inhoudsopgave

Hoe ruwe data verandert in een realistisch beeld

Het renderproces vergt een enorme hoeveelheid rekenkracht van de grafische kaart (GPU) of de processor (CPU). De software moet namelijk voor elke individuele pixel op het scherm berekenen welke kleur en helderheid deze moet krijgen.

De techniek achter dit proces is grofweg op te delen in twee hoofdvarianten, afhankelijk van het doel en de beschikbare tijd:

  • Realtime rendering: Hierbij moet de computer het beeld direct genereren, meestal met een snelheid van 30 tot 120 beelden per seconde. Dit wordt gebruikt in videogames en interactieve software. De computer maakt slimme wiskundige schattingen om beelden razendsnel te tonen zonder dat het spel hapert.
  • Pre-rendering (Offline rendering): Hierbij staat de rekenkracht los van de tijd. Het berekenen van een enkel frame voor een animatiefilm zoals van Pixar of een realistisch architectuurontwerp kan minuten tot uren duren. De computer gebruikt geavanceerde lichtberekeningen (zoals ray tracing) om lichtinvallen, reflecties en brekingen tot in de kleinste details natuurgetrouw na te botsen.

Van onzichtbare code naar een klikbare website

Rendering speelt niet alleen een rol in zware 3D-software, maar vindt ook elke seconde plaats wanneer je op het internet surft. Wanneer je een webpagina opent, ontvangt je browser (zoals Chrome of Safari) een pakketje ruwe teksten en bestanden in de vorm van HTML, CSS en JavaScript.

De zogeheten rendering engine van de browser leest deze code supersnel uit, bouwt een visueel ‘boomstructuur-model’ op (DOM) en berekent waar elk element, tekstblok en afbeelding op jouw scherm moet staan. Dit proces heet painting. Bij het bouwen van moderne, snelle websites kijken ontwikkelaars continu naar server-side rendering (de server zet de pagina vooraf klaar) versus client-side rendering (de browser van de bezoeker bouwt de pagina live op).

Onmisbaar in de moderne visuele wereld

Hoewel het begrip rendering van oorsprong uit de computerwereld komt, komen we het in vrijwel elke moderne industrie tegen. In de filmwereld worden complete digitale sets en special effects (CGI) gerenderd om ze naadloos te laten samensmelten met echte camerabeelden.

Architecten gebruiken rendering om bouwtekeningen om te zetten in fotorealistische impressies voor potentiële kopers, nog voordat de eerste paal is geslagen. Ook in de videobewerking is rendering de bekende laatste stap: het ‘exporteren’ van alle losse videosporen, overgangen en kleurbewerkingen naar één afspeelbaar bestand.

Veelgestelde vragen

Modelleren is het ‘boetseren’ van de digitale vorm (het skelet en de geometrie). Renderen is de vervolgstap waarin de computer belichting, texturen en schaduwen toevoegt om er een definitief beeld van te maken.

Omdat de computer miljoenen lichtstralen en reflecties per pixel moet doorrekenen. Hoe hoger de resolutie, hoe gedetailleerder de texturen en hoe complexer de belichting, hoe meer rekenwerk er nodig is.

Een renderfarm is een netwerk van honderden of duizenden krachtige computers die samenwerken. Ze worden door animatiestudio’s en effectenhuizen ingezet om grote projecten te verdelen, zodat een film niet jaren maar weken kost om te verwerken.

In de context van webontwikkeling slaat rendering op het proces waarbij de webbrowser (zoals Chrome of Safari) de ruwe HTML-, CSS- en JavaScript-code omzet in de visuele pagina die jij op je scherm ziet.

Thijn de Haas Senior developer

Meer over Thijn

Mijn programmeeravontuur begon rond mijn twaalfde, toen ik ontdekte dat je met code vrijwel alles kunt maken. Ik begon met het bouwen van kleine projecten en startte al snel mijn eigen hostingdienst, wat me veel leerde over maatwerkcode, serverbeheer en het koppelen aan websites. Deze kennis pas ik nu dagelijks toe in mijn werk aan websites en applicaties.

Als student Applicatieontwikkelaar liep ik drie stages bij Wux, waarbij ik tijdens de eerste stage mijn eerste bedrijf startte, deels op advies van Bo. Deze ervaringen vormden het fundament van mijn rol als lead developer en mede-eigenaar van Wux. Met een constante interesse in nieuwe technieken en het meedenken naar de beste oplossingen, zet ik mijn expertise dagelijks in om complexe vraagstukken op te lossen samen met mijn team.

Zwaaiende emoji

Thijn Senior developer

Op zoek naar slimme software-oplossingen die jouw bedrijf efficiënter maken?

Het team van Wux ontwikkelt maatwerk software die aansluit bij jouw behoeften. Neem vandaag nog contact op en ontdek hoe we jouw bedrijf elke dag succesvoller kunnen maken.

Meer over software