Skip to content

Commit 873392b

Browse files
updated tracking state logic in controller pose synchronizer
1 parent ba82911 commit 873392b

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed

Assets/MixedRealityToolkit-SDK/Features/Input/Handlers/ControllerPoseSynchronizer.cs

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,14 @@ public virtual void OnSourceLost(SourceStateEventData eventData)
119119
}
120120

121121
/// <inheritdoc />
122-
public virtual void OnSourcePoseChanged(SourcePoseEventData<TrackingState> eventData) { }
122+
public virtual void OnSourcePoseChanged(SourcePoseEventData<TrackingState> eventData)
123+
{
124+
if (eventData.SourceData != TrackingState)
125+
{
126+
IsTracked = eventData.SourceData == TrackingState.Tracked;
127+
TrackingState = eventData.SourceData;
128+
}
129+
}
123130

124131
/// <inheritdoc />
125132
public virtual void OnSourcePoseChanged(SourcePoseEventData<Vector2> eventData) { }
@@ -140,12 +147,6 @@ public virtual void OnSourcePoseChanged(SourcePoseEventData<MixedRealityPose> ev
140147
return;
141148
}
142149

143-
if (eventData.TrackingState != TrackingState)
144-
{
145-
IsTracked = eventData.TrackingState == TrackingState.Tracked;
146-
TrackingState = eventData.TrackingState;
147-
}
148-
149150
if (UseSourcePoseData && TrackingState == TrackingState.Tracked)
150151
{
151152
transform.localPosition = eventData.SourceData.Position;

0 commit comments

Comments
 (0)