Utilizing a full screen mesh (one vertex per pixel on the screen) to displace geometry via height maps in screen space.
The scene with elements that are desired to be displaced are rendered by a separate camera. This camera is at the same position and orientation as the Main camera in Unity that will draw the scene. The Displacement camera outputs 4 textures - MRT’s – position, color and lighting, normal and height information.
3 compute shaders are used to created a screen space displaced mesh that is then sent to the Unity function of DrawProcedural for final composition to the main camera scene.
Update 220.127.116.11 - Added Sparse Texture Support (Mega Texture)
Update 18.104.22.168 - Overhaul of entire package as well as Including oi_Fluid_Surface Package.
Unity Version 2019.1.5f1 and up.