Search Issue Tracker

Fixed in Unity 2017.3.0f3



Found in


Issue ID




[VR] Canvas should not lag behind when attached to a spatially tracked object




Priority: 7Not yet prioritized for a release


Severity: 3Workaround is possible

Verified FIXED with 2017.3.0b6 and SteamVR 1.2.2

Steps to reproduce:
1. Download and open attached project ""
2. Make sure HTC Vive is set up and connected
3. Make sure VR Mode is on in Player Settings\
4. Play the project

Actual result: Left hand has a cube and canvas as child object. Moving hand in space you can see that the canvas lags behind the cube and the controller

Expected: No dragging/lagging behind

Tested and reproduced on:
Windows 10
Unity 5.4.0b22, 5.4.0f1


A workaround is to modify the SteamVR_UpdatePoses.cs script.. change OnPreCull to LateUpdate. This will make the controllers line up with the UI but they will be slightly more latent, so it is only recommended updating in LateUpdate when you need UI attached to the controllers.

A proper fix for this is scheduled for 5.5 where the controllers will be updated before the UI, bringing latency down.

Comments (16)

  1. Be7d7a012ebfcc4d1d55c4b1313c425d?d=mm


    Mar 16, 2018 19:12

    Canvas lag still happening with Unity 2017.3.0f3.
    Tested by attaching a Worlds Space canvas as child of the camera, noticable judder/jitter when moving your head. Happens with Google Cardboard, Google Daydream and Oculus Gear VR (with OVRCameraRig). Can this issue be opened again?

  2. 4d1927198912dd4507b19fb4f301928e?d=mm


    Feb 08, 2018 10:28

    Might be you didnt try this with lucky patcher

    lucky patcher busybox
    with lucky patcher by apk pure
    of lucky patcher billing hack
    the some lucky patcher blackberry
    make lucky patcher by chelpus 6.4.1
    do the lucky patcher best app
    download lucky patcher best hacks
    latest lucky patcher by android 1

  3. Ab594fc7779d7ba0c782eccb545eec1f?d=mm


    Nov 23, 2017 19:26

    This is definitely not resolved. Re-tested with empty environment.

  4. 6fd85482a163cc7a6e211851f2af8c80?d=mm


    Nov 11, 2017 11:10

    I'm still seeing this issue as well in 2017.2.0f3 for macOS

  5. D162fe8801f27d694b14956944c9227b?d=mm


    Oct 17, 2017 02:07

    This issue is definitely not resolved

  6. 1493ce68c5578c5f2d89362a7bac74e9?d=mm


    Jul 13, 2017 15:05

    I found a workaround:
    The position and rotation of the controllers is updated in the Script "SteamVR_TrackedObject.cs" in the method OnNewPoses().
    This Skript I modified like this: Instead of setting the position and rotation in OnNewPoses() i store the information in variables.
    Then i add the Unity Update() functions and do the setting there.
    I Do it in Update(), LateUpdate() and FixedUpdate() because otherwise it seamed not fluend, but that could easily caused by my vive rig setup and not the code.

  7. Fc9349e9ef3035ce6b6b549cbad3ba3b?d=mm


    Jul 07, 2017 18:12

    As a workaround, one thing you guys might try is manually updating your UI elements by listening to SteamVR's NewPosesApplied event.

  8. 9e4b404d6f00ded7fc6245b6bf5cb5ad?d=mm


    Jul 04, 2017 16:30

    I've also hit this with the new update to 1.2.2 and the fix is no longer possible.
    Any alternate fix or revert to 1.2.1 until a fix comes along?

  9. 1493ce68c5578c5f2d89362a7bac74e9?d=mm


    Jun 30, 2017 12:54

    With Steam VR 1.2.2 the SteamVR_UpdatePoses.cs script has no longer any function, so the workaround doesn't fix the problem anymore.

  10. E0cbf374d07fd947f58343f8451a0037?d=mm


    May 30, 2017 09:44

    This is a major issue for us - we have to choose between tracking quality (lag due to updating in LateUpdate) or the UI lagging. The implication was it would be solved in 5.5. Is there any update on a time scale?

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.