I created a fresh first-person project with VR controllers visible and just had the player capsule move at a high constant speed - 1000 units/sec. On 4.19.1, the controllers tracked just fine. However, on the same project on 4.23.1, the controllers jump around a lot at the high speed unless I disable low-latency updates, which would instead introduces a slight lag in controller position. I notice in the change log for 4.23.1 that the low-latency updates was supposedly given a hotfix, but instead it looks like it actually got broken between 4.19 and 4.23.1. I’m using a Plus with SteamVR for Windows MR. I’ve had other players confirm the same issue on other devices as well.
This appears to be fixed in UE4.25.1, so it’s only a problem in 4.23.1 (wasn’t a problem on older or newer). Can someone point me towards where the code for tracking is in the source? I can’t migrate the project yet due to some plugins not working on the newer engine at the moment, but I’ll be wanting to copy the changes over to patch the 4.23.1 tracking.
The workaround I’m using right now fixes it visually and works without the lag/latency of disabling low-latency on the motion controller options.
Create an empty scene component (not parented to the controller) that is the parent of what you actually want attached the motion controller (ie, a hand or weapon).
On event-tick in blueprints, set the relative location and rotation of the scene component to the FInteropolate from the scene component’s existing location/rotation to the motion controller’s new location/rotation. Use the delta time from event tick and 90 for the interpolation speed.
Can you explain or show where the FInterpolate comes in? I’m having this same issue in 4.26.2. Stuff parented to the VR camera lags behind it. Maybe it has something to do with late update, I’m not sure.