Skip to content

Revert TrackerResetsHandler & add comments#1748

Open
ButterscotchV wants to merge 2 commits intomainfrom
bscotch/revert-reset
Open

Revert TrackerResetsHandler & add comments#1748
ButterscotchV wants to merge 2 commits intomainfrom
bscotch/revert-reset

Conversation

@ButterscotchV
Copy link
Member

My changes made in #1595 were not correct and likely made an existing problem worse; we should be computing (and probably applying) heading correction in IMU space, not bone space.

Originally, we had gyroFix which did apply heading correction in IMU space, I removed it because I realized we were unecessarily performing heading correction twice, but I did not consider the implications of applying a heading correction in bone space -- the conversion from IMU space to bone space will warp the heading correction and apply it to more than just world oriented yaw, the axis where drift actually occurs. In essence, this means that IMU drift will accumulate in the pitch and roll over time where a full reset is not performed (applying it with gyroFix, before converting spaces).

The reason that the changes I made worked at all seems to be because official SlimeVR trackers have a correct IMU rotation applied, so the actual value of attachmentFix will be approximately equal to the quaternion identity, therefore the heading correction will be approximately equal between IMU and bone spaces.

tl;dr: This will revert to the original behaviour but with acceleration fixed, there is much work to be done to fix things beyond this.

@ButterscotchV ButterscotchV self-assigned this Feb 14, 2026
@ButterscotchV ButterscotchV added Type: Bug Something isn't working Area: Skeletal Model Deals with the model of the skeleton and its pose Priority: High Important feature or blocks something important Area: Server Related to the server labels Feb 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area: Server Related to the server Area: Skeletal Model Deals with the model of the skeleton and its pose Priority: High Important feature or blocks something important Type: Bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant