ein novum war nicht die echtzeitdarstellung von licht und schatten, das bot unter anderem bereits neverwinter nights 2002. neu war das pixelgenaue (per pixel) berechnen von lichteinfall bzw. shadern und die unified lighting architektur. carmack, bis id tech 4 noch quasi im alleingang für die verwendeten engines zuständig, wollte dieses feature unbedingt einbauen, also musste das komplette spiel darum gebaut werden - was auch immer es werden sollte. doom war übrigens auch nur ein ausdrücklicher wunsch carmacks.moriturus hat geschrieben:Die Neuheit der Engine waren die zur Laufzeit berechneten Schatten/Lichter - ein Novum (und Hardwarefresser) - welches natürlich besonders hervorgehoben werden sollten. [...] Ein Doom mit Arealen wäre - ohne den besonderen Fokus auf Licht/Schatten - auf damals aktueller Hardware möglich gewesen. Id war als Third-Party Hersteller jedoch sehr an Lizensierungen interessiert, da werden technische Neuheiten unterstrichen.
im kombination mit dem damals üblichen forward rendering ergeben sich so aber unzählige renderdurchläufe für einen frame, bis das fertige bild dargestellt wird, ohne paralleles rendering. gerade in kombination mit dynamischer lichtberechnung "tödlich". heute verwendet man deferred rendering mit mehreren render targets.
ein weiterer nachteil dynamischer lichtberechnung damals (und auch noch heute) ist das realistische reflektieren von licht von oberflächen - global illumination. das licht wird zwar von der oberfläche in die kamera reflektiert, aber eben nicht von anderen oberflächen. daher erscheint auch die umgebung in doom3 tiefschwarz. für jede weitere lichtquelle, die zwar die umgebung erhellt, wird aber die renderzeit erhöht. deswegen gibt's auch mit r_showSurfaces einen befehl, um die oberflächen auf lichtanzahl zu überprüfen

große areale brauchen also viele dynamische lichter, um ausgeleuchtet zu werden, da licht nicht vorab gerendert und in texturinformationen gespeichert wird. ein einzelnes licht mit großem radius (als sonnenersatz) sieht in der verwendeten engine leider mistig aus, daher musste man davon abstand nehmen. deswegen würde ein doom ohne fokus auf licht/schatten nicht funktionieren, da es nunmal der kern der engine war.
man behalf sich eben damit, einen korridorshooter mit wenigen lichtern zu entwerfen. zusammen mit einer langsamen laufgeschwindigkeit konnte damalige hardware ganz passabel mithalten.
mit aktueller hardware fressen sich grafikkarten ihren weg durch unzählige renderframes. mehr lichter, mehr monster und größere areale sind damit auch mit id tech 4 möglich - und damit auch ein klassisches doom. interessiert nur keinen mehr
