Water plugin, access height or position of gerstner waves through blueprints?

I’m working on a controllable boat that I want to bob with a WaterBodyOcean created with the official Water plugin. I currently have it set up in a material, using the material function ComputeGerstnerWaves to rotate and offset the mesh of the boat using WPO. Unfortunately since this is done at the shader level the boat actor itself has no concept of where exactly it is, so having the camera follow it accurately, among other things, is impossible. Going down the rabbit hole of that function points me to a GetAllGerstnerWavesNew() from the file GerstnerWaveFunctions.ush, so it seems this particular one will only work with shaders.

I know the buoyancy system exists but using it is pretty unreliable for what I need it to do and provides inconsistent results

I’m wondering if it’s possible somehow to access a function like ComputeGerstnerWaves within the boat’s BP, and manually offset the actor there? I just want to be able to provide a world position for where the boat is and spit out a new position and a normal vector.

1 Like

Did you manage to find it? I’m having the same problem with water plugin, for swimming I’m using capsule collision with water but it doesn’t collide with the water itself but an imaginary plane, how do I get access to the waves offset? My post: