Website powered by

Unreal Engine Water Shader

This was a project to exercise my skills on unreal engine shaders and I had a lot of fun. I finished it in the span of 2 weeks and every day working on it, I would add a new feature to it that can be customized via instanced parameters. The texture set includes:
- Caustics Texture: A texture for the scrolling fake caustics;
- Caustics Texture Rotated: The same texture but rotated 90° degrees for the second layer of scrolling caustics;
- Water Normal: The normal map of the water, scrolling 2 layers;
- Water Normal Breaker: A normal map with a different pattern to avoid visible normal map repetition, third layer of normal map;
- Water AO: The dark areas of the waves;
- Water Height: The height map for the tesselation;

Node Structure.

Node Structure.

Customizable parameters when instanced.

Customizable parameters when instanced.

In-engine demonstration.

In-engine demonstration.

Dynamic edge fading, depth and caustics, all done on the water shader.

Dynamic edge fading, depth and caustics, all done on the water shader.

Tessellation and animated height map for 3D waves.

Tessellation and animated height map for 3D waves.

Shallow Water

Shallow Water