Das Wasser in Half-life² wird über einen komplexen Shader dargestellt. Es ist animiert und reflektiert die Umwelt. Bei diesem komplexen System gibt es natürlich einige Richtlinien und Einschränkungen, wie man das Wasser in verschiedenen Situationen einsetzen kann.
Das aufwendige Wasser sieht am Besten aus, verbraucht dafür aber auch einiges an Ressourcen. Dieser Shader reflektiert die Welt, ist animiert und nebelt benachbarte Objekte ein wenig ein, ausserdem ist er bump-mapped. Die Ergebnisse reichen fast an Foto-Qualtität heran, allerdings ist diese Art des Wassers bei komplexeren Situationen sehr perfomancedrückend.
Bei Situationen, bei denen das aufwendige Wasser nicht angebracht ist (meistens wegen der Performance), kann einfaches Wasser benutzt werden. Diese Version des Shaders reflektiert nicht die Umwelt, was es natürlich nicht so realistisch erscheinen lässt, allerdings ist es dafür nicht so intensiv für die Engine. Das aufwendige Wasser wird automatisch auf Einfaches Wasser zurückgesetzt, wenn die Grafikkarte die notwendigen Ressourcen nicht bereitstellen kann. Es kann auch zurückgesetzt werden, indem der Benutzer in den Video Optionen die „Water Reflection“ herunterstellt.
Um das Wasser richtig anzuwenden, benötigt es einige Regeln:
_beneath
oder _bottom
enden, können nicht verwendet werden, da sie Teil einer andern Wassertextur sind.
Anmerkung: Aufwändiges Wasser sollte nicht zu einem Entity gebunden werden, weil es dann Darstellungsfehler geben kann!
Um Wasser zu erstellen müsst ihr folgendes machen:
Wichtig: VIS und RAD müssen auf jeden Fall durchlaufen, damit das Wasser korrekt dargestellt werden kann (mögliche Fehler: Leak)