Does anyone know how this could be setup or is there already a template out there that does this?
Interesting use case. The simplest way to do it is to manually calculate the (vertical) speed of the motion controllers on your Tick Event and use that information to activate/deactivate the fly mode. To avoid cheating, you can use a branch to also check the horizontal distance/position respect to the HMD and make sure the arms are actually extended away from it. Then (pseudocode):
MCSpeed = ( MCWorldPosition[current tick] - MCWorldPosition[previous tick] ) / DeltaTime MCVerticalSpeed = MCSpeed .dotproduct. [0,0,1] bFlyMode = ( MCVerticalSpeed > MinVerticalSpeedFlyMode )
This assumes the up/down direction is the world Z axis, otherwise adjust accordingly.
I’m trying to do the same thing but with BPs, would anyone mind giving directions to a non-dev on how to achieve this please??