Highlights:
✓ Physics-driven: reacts to container movement
✓ Foam with proper UVs on virtual surface
✓  VR Performant
Technical differentiator:
Foam UVs projected spherically from under the calculated surface .
Most other shaders use container UVs or skip foam.
Debug views

Physics constraint box tracks liquid orientation Arrow = surface normal 

Left to Right: physics simulation, liquid depth under surface, and wireframe

Left to Right: Flat liquid, World Normals, Liquid with Foam, Foam UVs

Material Breakdown

Virtual Surface Positions and Normals

Frontside/Backside liquid depth

Environment Reflection/Refraction 

Foam UVs spherically projected from a point along the normal, under the virtual surface



Back to Top