You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -600,7 +603,7 @@ When the <dfn method for="XRFrame">getViewerPose(|referenceSpace|)</dfn> method
600
603
601
604
1. If the {{XRFrame}}'s [=active=] boolean is <code>false</code>, throw a {{InvalidStateError}} and abort these steps.
602
605
1. Let |session| be the {{XRFrame}}'s {{XRFrame/session}} object.
603
-
1. If |referenceSpace|'s [=XRSpace/session=] does not equal |session|, return <code>null</code> and abort these steps.
606
+
1. If |referenceSpace|'s [=XRSpace/session=] does not equal |session|, throw a {{InvalidStateError}} and abort these steps.
604
607
1. If the [=viewer=]'s pose cannot be determined relative to |referenceSpace|, return <code>null</code>
605
608
1. Return a new {{XRViewerPose}} describing the [=viewer=]'s pose relative to the origin of |referenceSpace| at the timestamp of the {{XRFrame}}.
606
609
@@ -612,15 +615,13 @@ When the <dfn method for="XRFrame">getPose(|space|, |relativeTo|)</dfn> method i
612
615
613
616
1. If the {{XRFrame}}'s [=active=] boolean is <code>false</code>, throw a {{InvalidStateError}} and abort these steps.
614
617
1. Let |session| be the {{XRFrame}}'s {{XRFrame/session}} object.
615
-
1. If |space|'s [=XRSpace/session=] does not equal |session|, return <code>null</code> and abort these steps.
616
-
1. If |relativeTo|'s [=XRSpace/session=] does not equal |session|, return <code>null</code> and abort these steps.
618
+
1. If |space|'s [=XRSpace/session=] does not equal |session|, throw a {{InvalidStateError}} and abort these steps.
619
+
1. If |relativeTo|'s [=XRSpace/session=] does not equal |session|, throw a {{InvalidStateError}} and abort these steps.
617
620
1. If |space|'s pose cannot be determined relative to |relativeTo|, return <code>null</code>
618
621
1. Return a new {{XRPose}} describing |space|'s pose relative to the origin of |relativeTo|.
619
622
620
623
</div>
621
624
622
-
Issue: Describe behavior for passing <code>null</code>{{XRReferenceSpace}}s to {{getViewerPose()}} and {{getPose()}}
623
-
624
625
ISSUE: The last two steps of the {{getViewerPose()}} and {{getPose()}} algorithms need to be expanded.
625
626
626
627
Spaces {#spaces}
@@ -951,7 +952,7 @@ An {{XRPose}} describes a position and orientation in space relative to an {{XRS
951
952
952
953
The <dfn attribute for="XRPose">transform</dfn> attribute describes the {{XRRigidTransform}} between two {{XRSpace}}.
953
954
954
-
The <dfn attribute for="XRPose">emulatedPosition</dfn> attribute indicates the accuracy of the {{XRPose/transform}}.{{XRRigidTransform/position}}value. {{XRPose/emulatedPosition}} MUST be set to <code>true</code> if the given positional values are software estimations, such as those provided by a neck or arm model. {{XRPose/emulatedPosition}} MUST be set to <code>false</code> if the positional values are based on sensor readings.
955
+
The <dfn attribute for="XRPose">emulatedPosition</dfn> attribute MUST be <code>false</code> if the {{XRPose/transform}}.{{XRRigidTransform/position}}values are based on sensor readings, or <code>true</code> if the position values are software estimations, such as those provided by a neck or arm model.
955
956
956
957
XRViewerPose {#xrviewerpose-interface}
957
958
-------------
@@ -1012,9 +1013,9 @@ Note: Some input sources, like an {{XRInputSource}} with {{targetRayMode}} set t
1012
1013
1013
1014
The <dfn attribute for="XRInputSource">targetRaySpace</dfn> attribute is an {{XRSpace}} that tracks the pose of the preferred pointing ray of the {{XRInputSource}}, as defined by the {{targetRayMode}}.
1014
1015
1015
-
The <dfn attribute for="XRInputSource">gripSpace</dfn> attribute is an {{XRSpace}} that tracks the transform that should be used to render virtual objects such that they appear to be held in the user's hand. If the user were to hold a straight rod, this {{XRSpace}} places the origin at the centroid of their curled fingers and where the <code>-Z</code> axis points along the length of the rod towards their thumb. The <code>X</code> axis is perpendicular to the back of the hand being described, with back of the users right hand pointing towards <code>+X</code> and the back of the user's left hand pointing towards <code>-X</code>. The <code>Y</code> axis is implied by the relationship between the <code>X</code> and <code>Z</code> axis, with <code>+Y</code> roughly pointing in the direction of the user's arm.
1016
+
The <dfn attribute for="XRInputSource">gripSpace</dfn> attribute is an {{XRSpace}} that tracks the pose that should be used to render virtual objects such that they appear to be held in the user's hand. If the user were to hold a straight rod, this {{XRSpace}} places the origin at the centroid of their curled fingers and where the <code>-Z</code> axis points along the length of the rod towards their thumb. The <code>X</code> axis is perpendicular to the back of the hand being described, with back of the users right hand pointing towards <code>+X</code> and the back of the user's left hand pointing towards <code>-X</code>. The <code>Y</code> axis is implied by the relationship between the <code>X</code> and <code>Z</code> axis, with <code>+Y</code> roughly pointing in the direction of the user's arm.
1016
1017
1017
-
The {{gripSpace}} MUST be `null` if the input source isn't trackable.
1018
+
The {{gripSpace}} MUST be `null` if the input source isn't inherently trackable.
0 commit comments