Revert "Update emulated position on each XRFrame"
This reverts commit 8be89ae08126913ff4447927ac5a087b8d6babcf.
Reason for revert: Build failure:
https://ci.chromium.org/p/chromium/builders/ci/Win%20x64%20Builder/79827
[4142/15096] CXX obj/device/vr/vr/openxr_controller.obj
FAILED: obj/device/vr/vr/openxr_controller.obj
C:\b\s\w\ir\cache\goma\client\gomacc.exe ..\..\third_party\llvm-build\Release+Asserts\bin\clang-cl.e...(too long)
../../device/vr/openxr/openxr_controller.cc(204,19): error: no member named 'emulated_position' in 'device::mojom::XRInputSourceDescription'
description_->emulated_position = false;
~~~~~~~~~~~~ ^
1 error generated.
Original change's description:
> Update emulated position on each XRFrame
>
> For both the head poses and input poses, send this value through mojo
> from the device process to the renderer process on every frame.
>
> Bug: 969131
> Change-Id: Ie895deb75bddb6dd883d09828cfcb30f335d3793
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1825478
> Auto-Submit: Jacob DeWitt <jacde@chromium.org>
> Commit-Queue: Will Harris <wfh@chromium.org>
> Reviewed-by: Will Harris <wfh@chromium.org>
> Reviewed-by: Klaus Weidner <klausw@chromium.org>
> Reviewed-by: Alexander Cooper <alcooper@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#701389}
TBR=dcheng@chromium.org,wfh@chromium.org,klausw@chromium.org,jacde@chromium.org,alcooper@chromium.org
Change-Id: I91ec66842b8f0a14bcb85145843fb4d617847066
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 969131
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1833005
Reviewed-by: Tsuyoshi Horo <horo@chromium.org>
Commit-Queue: Tsuyoshi Horo <horo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#701401}
diff --git a/resources/chromium/webxr-test.js b/resources/chromium/webxr-test.js
index b564ec2..eae4d64 100644
--- a/resources/chromium/webxr-test.js
+++ b/resources/chromium/webxr-test.js
@@ -268,7 +268,6 @@
this.pose_ = {
orientation: { x: q[0], y: q[1], z: q[2], w: q[3] },
position: { x: p[0], y: p[1], z: p[2] },
- emulatedPosition: emulatedPosition,
angularVelocity: null,
linearVelocity: null,
angularAcceleration: null,
@@ -692,7 +691,6 @@
this.desc_dirty_ = true;
this.pointer_offset_ = new gfx.mojom.Transform();
this.pointer_offset_.matrix = getMatrixFromTransform(transform);
- this.emulated_position_ = emulatedPosition;
}
disconnect() {
@@ -814,11 +812,11 @@
input_state.gamepad = this.gamepad_;
- input_state.emulatedPosition = this.emulated_position_;
-
if (this.desc_dirty_) {
let input_desc = new device.mojom.XRInputSourceDescription();
+ input_desc.emulatedPosition = this.emulated_position_;
+
switch (this.target_ray_mode_) {
case 'gaze':
input_desc.targetRayMode = device.mojom.XRTargetRayMode.GAZING;
diff --git a/webxr/getViewerPose_emulatedPosition.https.html b/webxr/getViewerPose_emulatedPosition.https.html
deleted file mode 100644
index 201a9b7..0000000
--- a/webxr/getViewerPose_emulatedPosition.https.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<!DOCTYPE html>
-<body>
- <script src=/resources/testharness.js></script>
- <script src=/resources/testharnessreport.js></script>
- <script src="resources/webxr_util.js"></script>
- <script src="resources/webxr_test_constants.js"></script>
- <canvas></canvas>
-
- <script>
-
- let testName = "XRFrame getViewerPose has emulatedPosition set properly.";
-
- const poseTransform = {
- position: [1, 1, 1],
- orientation: [0.5, 0.5, 0.5, 0.5]
- };
-
- let testFunction = function(session, fakeDeviceController, t) {
- return session.requestReferenceSpace('local')
- .then((referenceSpace) => new Promise((resolve, reject) => {
- function CheckPositionNotEmulated(time, vrFrame){
- t.step(() => {
- let pose = vrFrame.getViewerPose(referenceSpace);
- assert_not_equals(pose, null);
- assert_equals(pose.emulatedPosition, false);
- fakeDeviceController.setViewerOrigin(poseTransform, true);
- });
-
- session.requestAnimationFrame(CheckPositionEmulated);
- }
-
- function CheckPositionEmulated(time, vrFrame) {
- t.step(() => {
- let pose = vrFrame.getViewerPose(referenceSpace);
- assert_not_equals(pose, null);
- assert_equals(pose.emulatedPosition, true);
- });
-
- // Finished.
- resolve();
- }
-
- session.requestAnimationFrame(CheckPositionNotEmulated);
- }));
- };
-
- xr_session_promise_test(testName, testFunction,
- TRACKED_IMMERSIVE_DEVICE, 'immersive-vr');
-
- </script>
-</body>
diff --git a/webxr/xrInputSource_emulatedPosition.https.html b/webxr/xrInputSource_emulatedPosition.https.html
deleted file mode 100644
index 7b0fda4..0000000
--- a/webxr/xrInputSource_emulatedPosition.https.html
+++ /dev/null
@@ -1,63 +0,0 @@
-<!DOCTYPE html>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="resources/webxr_util.js"></script>
-<script src="resources/webxr_test_constants.js"></script>
-<script src="resources/webxr_test_asserts.js"></script>
-<canvas id="webgl-canvas"></canvas>
-
-<script>
-
-let testName = "Poses from XRInputSource.gripSpace have emulatedPosition set "
- + "properly";
-
-let fakeDeviceInitParams = TRACKED_IMMERSIVE_DEVICE;
-
-let testFunction =
- (session, fakeDeviceController, t) => new Promise((resolve) => {
- let input_source = fakeDeviceController.simulateInputSourceConnection({
- handedness: "right",
- targetRayMode: "tracked-pointer",
- pointerOrigin: IDENTITY_TRANSFORM,
- gripOrigin: VALID_GRIP_TRANSFORM,
- profiles: []
- });
-
- // Must have a reference space to get input poses. eye-level doesn't apply
- // any transforms to the given matrix.
- session.requestReferenceSpace('local').then( (referenceSpace) => {
-
- function CheckPositionNotEmulated(time, xrFrame) {
- let source = session.inputSources[0];
- let grip_pose = xrFrame.getPose(source.gripSpace, referenceSpace);
-
- t.step(() => {
- assert_not_equals(grip_pose, null);
- assert_equals(grip_pose.emulatedPosition, false);
- });
-
- input_source.setGripOrigin(VALID_GRIP_TRANSFORM, true);
- session.requestAnimationFrame(CheckPositionEmulated);
- }
-
- function CheckPositionEmulated(time, xrFrame) {
- let source = session.inputSources[0];
- let grip_pose = xrFrame.getPose(source.gripSpace, referenceSpace);
-
- t.step(() => {
- assert_not_equals(grip_pose, null);
- assert_equals(grip_pose.emulatedPosition, true);
- });
-
- resolve();
- }
-
- // Can only request input poses in an xr frame.
- session.requestAnimationFrame(CheckPositionNotEmulated);
- });
- });
-
-xr_session_promise_test(
- testName, testFunction, fakeDeviceInitParams, 'immersive-vr');
-
-</script>