Progress on streaming spats to VR hmd -- but how to adjust VR panning speed and control viewpoint height?

  • I'm putting together a package for showing Gaussian splats, targeting desktop and desktop streamed to VR headsets since splats are still too heavy for mobile devices. It works nicely on PC screen using the stock krpano VR navigation widgets. After some tuning (mostly matching monitior and headset refresh rates, and disabling things that de-synchronize head tracking) streamed VR rendering is working pretty well, especially with Virtual Desktop -- only a small occasional jitter remains. But I have some control issues.

    The stock WebVR package provides smooth control of viewpoint dolly/truck by the left joystick, but only horizontal view rotation by the right, and that moves much too fast. I need help to find the way to adjust this, and to add control of viewpoint height by the forward/back axis of the right joystick.

  • I can see that the machinery for this is in controls3d.xml, but it is hard to understand how to make the changes I need without breaking something. Your guidance would be appreciated.

    To recapitulate, I am interested only in the right VR controller touchpad/thumbstick functions. Goals are 1) make view rotation in response to X offsets slower and smooth; 2) make y offsets move the viewpoint vertically in a similar way.

  • Thanks, Klaus.

    reducing joystick_rotate_speed and adding this line for right joytsick control mode 0 did it.

    diraccel.y = Math.abs(axes[1]) > 0.2 ? joystick_move_speed * axes[1] : 0;

    But one problem remains. Sometimes pressing that stick (in either axis) makes no motion, and then later a long series of motions happens, as if some buffer was suddenly being read again. Can you suggest where to look for the cause?

    • New
    • Official Post

    But one problem remains. Sometimes pressing that stick (in either axis) makes no motion, and then later a long series of motions happens, as if some buffer was suddenly being read again. Can you suggest where to look for the cause?

    That sounds more like a problem with the streaming setup...
    Neither in krpano nor in the WebXR API there is an input buffering...

  • I'd agree the problem is probably external. I'm streaming VR renders from PC to hmd with Virtual Desktop, which works really well except when it doesn't. But the odd thing is that the left joystick seems to be free of these buffering glitches. Do you think some alternative way of polling in krpano might help?

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!