Renderer
Ein Renderer ist ein Programmteil, der aus einer Beschreibung ein fertiges Bild berechnet – zum Beispiel aus HTML-Code eine sichtbare Webseite oder aus einem 3D-Modell ein Foto-ähnliches Bild. Er ist die Übersetzungsstufe zwischen Daten, die ein Computer speichert, und dem, was ein Mensch auf dem Bildschirm sieht.
Ein Computer speichert Bilder oft nicht als Bild, sondern als Bauanleitung. Bei einer Webseite steht in dieser Anleitung zum Beispiel: Überschrift, Schriftgröße 24, darunter ein Foto, links davon ein Menü. Bei einem Videospiel steht darin, wo eine Figur steht, welche Form sie hat und woher das Licht kommt. Der Renderer ist das Programm, das diese Anleitung liest und daraus die einzelnen Bildpunkte berechnet, die der Bildschirm dann anzeigt. Das Wort kommt vom englischen „to render“, also etwa „wiedergeben“ oder „darstellen“. Ohne diesen Schritt bliebe alles eine Ansammlung von Zahlen und Text.
Warum jede Webseite und jedes Spiel darauf angewiesen ist
Der Renderer entscheidet darüber, ob sich Software schnell oder zäh anfühlt. Ein Spiel soll 60 Bilder pro Sekunde liefern. Für jedes einzelne Bild bleiben also etwa 16 Millisekunden Rechenzeit. Schafft der Renderer das nicht, ruckelt das Bild sichtbar. Deshalb steckt in Grafikkarten enorm viel Technik, die genau diese eine Aufgabe beschleunigt.
Auch im Web ist der Renderer ein Machtfaktor. Jeder Browser bringt einen mit, und die Ergebnisse unterscheiden sich leicht. Sieht eine Seite in einem Browser gut aus und im anderen kaputt, liegt das meist an unterschiedlichem Rendering-Verhalten. Weil heute fast alle großen Browser auf derselben Engine namens Blink oder auf WebKit aufbauen, bestimmt eine Handvoll Firmen, wie das Web aussieht.
Ein häufiger Irrtum: Rendering hat nichts damit zu tun, wie schnell eine Datei aus dem Internet geladen wird. Das eine ist Übertragung, das andere Berechnung. Eine kleine Datei kann trotzdem langsam erscheinen, wenn ihre Darstellung aufwendig ist.
Vom Modell zum einzelnen Bildpunkt
Ein Renderer arbeitet in Stufen. Beim Browser wird zuerst der Text der Seite in eine Baumstruktur zerlegt. Dann werden die Gestaltungsregeln zugeordnet, also Farben, Abstände und Schriften. Danach berechnet der Renderer, wo jedes Element genau liegt. Erst im letzten Schritt werden die Pixel gemalt und aufeinandergelegt.
In der 3D-Grafik läuft es ähnlich, aber mit Geometrie. Objekte bestehen aus vielen kleinen Dreiecken. Der Renderer rechnet aus, wo diese Dreiecke aus Sicht der virtuellen Kamera landen. Danach bestimmt er für jeden Bildpunkt Farbe und Helligkeit, abhängig von Material und Lichtquellen. Ein Verfahren namens Raytracing verfolgt dafür einzelne Lichtstrahlen und liefert sehr realistische Spiegelungen, kostet aber viel Rechenzeit.
Man unterscheidet grob zwei Betriebsarten. Echtzeit-Renderer müssen sofort liefern und nehmen dafür Ungenauigkeiten in Kauf. Offline-Renderer, wie sie im Kino eingesetzt werden, dürfen sich für ein einziges Bild auch Stunden Zeit nehmen. Das erklärt, warum Animationsfilme besser aussehen als Spiele, obwohl beide auf denselben Grundideen beruhen.
Wo der Begriff in Produkten und Schlagzeilen auftaucht
Am häufigsten begegnet man dem Wort im Browser. Wenn Entwickler von der Rendering-Engine sprechen, meinen sie den Teil, der Webseiten zeichnet. Chrome nutzt Blink, Safari nutzt WebKit, Firefox nutzt Gecko. Unterschiede zwischen diesen drei sind der Grund, warum Entwickler ihre Seiten in mehreren Browsern testen.
In der Spiele- und Filmbranche taucht der Begriff über Programme wie Unreal Engine, Unity oder Blender auf. Dort ist der Renderer das Herzstück, und neue Versionen werben oft mit besseren Lichteffekten. Auch Architekturbüros nutzen solche Software, um geplante Gebäude als realistisches Bild zu zeigen.
Ein Hinweis zur Abgrenzung, weil das oft durcheinandergeht: Wenn eine KI wie ein Bildgenerator ein Bild erzeugt, ist das kein Rendering im klassischen Sinn. Dort wird kein 3D-Modell durchgerechnet, sondern ein Bild statistisch aus gelernten Mustern erzeugt. Beide liefern am Ende Pixel, aber der Weg dorthin ist völlig verschieden.