I have a character with a beam weapon.
I also have a water system with no collision. The water system is is expansive and
applying collision to the water mesh is computationally heavy.
The water asset has a method to be able to get the height of the water wave at a given location.

My beam weapon performs a line trace on the visibility channel to find a hit where it will project the beam.
My issue is that since the water cannot be interacted with through any collision channel, I am unable to get the beam to stop at the water. The beam passes through the water and hits the ground.
I had a solution in mind but am unsure of the mathematical implication of it (i sux @ maths)
If my beam weapon is at location X=1, Z=4 and fires the beam towards water surface, which is at a Z height of 2 and my beam hits the ground at location X=6, Z=0, graphically I can see that my beam intersects the water at X=4, Z=2, and I would be able readjust the beam’s fire to this location on the water surface.
However, how would I go about achieving this in Unreal?
The only way I am able to interact with the water is through the “get wave height at location” function which I have so far used for almost every interaction by checking if whatever I need interaction with is at or around this height, thus, being able to cause splashes and turn on swimming.
Halp pls









