Change world to meters scale at runtime + VR hands

Hi,

For a project I’m working on, I need to change the world to meters scale at runtime to give the player the impression to shrink. The problem I’m facing is that when using the UE4 MotionControllerPawn with hands, the hands will be high above the player if I lower the world to meters scale - value from 100 to 20.

Does anyone know of a way to update the hand tracking position according to the current world to meters scale?

Best regards
Battlepad

Same situation, would like a little help on this.

I did a project once where the VR pawn could shrink or grow.
One thing I had to do to make it work was to scale the controllers accordingly. I dont know if this changed in a newer engine version but my setup at the time looked like this:

I my case that worked fine. Now in the VR template the motion controller components are in the motion controller blueprints that get spawned in on begin play. My motion controller components were in the pawn itself which might be one thing to consider:

135632-mocon+setup.png

Depending an how small you are planing to go, you should also adjust the near clipping plane since your hands will be so close to the camera that they will not render. The default in the general Project settings is set to 10. I my lowest “world to meters” was 5 and i had to set the clipping plane to 0.1

Let me know if this was any help

Thanks a lot!
I can’t really test to parent the controllers on to the pawn, but you helped me with the clipping plane :smiley: I set it to 0.1 and the controllers are at least rendered correctly now.

You can do the scaling part in the motioncontroller BP aswell. just make a funktion in Mocon bp similar to what I posted and call it from where you adjust the world to meters by casting to the mocon BPs.
Also try to reset the MoCons transform after scaling them. So position and rotation to 0,0,0 and scale to 1,1,1.

Are you using Vive or Rift? either way make sure that your tracking level is set to floor and your hmd is calibrated correctly in steam vr / oculus home

Thank you very much for your help! I resetted the MotionControllers after changing the world to meters scale and it worked great. The Controllers are working like I wanted now.
Thanks again!

I know this is old… but thank you for posting this… saved me hours of rescaling… :smiley:

For a solution see this thread:

TL;DR: close all open (except the viewport) tabs in the editor for correct behavior

Just an update that this is still an issue in 4.22 as have just encountered it (and lost days trying to implement work arounds before finding the closing tab work around!)

Have submitted as a bug to Epic - hopefully they’ll fix it for a future release. Does anyone know if it’s fixed for 4.23?