An example of using the flipbook approach to achieve FFT wave motion in Unity. Credits to @GhislainGir's tutorial --> FFT Ocean Flipbook: How to create & sample one using Blender & UE.
OceanDemo.mp4
Basic setups of the shader.
- Use Blender's ocean modifier to create a multi-wave ocean.
- Change the shading of the ocean mesh inside Blender to normal color and height color.
- Use "Rendering animation" to output the captured ocean surface result from Blender's camera. This gives you a sequence of images which can be later combined as a single sprite sheet.
- Inside Unity, use the flipbook node to sample the normal and height sprite sheet. Adjust the normal and displacement accordingly.
The URP Shader Graph does not support tessellation. In this demo, I use instancing and manually choose LOD based on the distance from the camera. Please note that each LOD mesh's edge needs to have the same vertex count as the aligned mesh. Otherwise, a visible seam will occur.