Register a floating object's contact footprint with the enclosing <Ocean>
so it spreads foam where it meets the water. Reusable by any floating
component: pass a function that returns the object's current footprint (centre,
heading and half-extents) each frame.
No-op when there is no enclosing <Ocean> or when enabled is false. The
source function is read through a ref, so it can close over changing values
without re-registering every render.
Register a floating object's contact footprint with the enclosing
<Ocean>so it spreads foam where it meets the water. Reusable by any floating component: pass a function that returns the object's current footprint (centre, heading and half-extents) each frame.No-op when there is no enclosing
<Ocean>or whenenabledisfalse. The source function is read through a ref, so it can close over changing values without re-registering every render.