From e55b3831ca5fff6dfc232b047ee70dca5d11a216 Mon Sep 17 00:00:00 2001 From: Kevin Lee <kevin@infinite-lee.com> Date: Tue, 24 Apr 2018 18:51:38 -0700 Subject: [PATCH] Adding support for windows mixed reality controllers --- src/components/hand-controls2.js | 5 +++++ src/input-mappings.js | 25 +++++++++++++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/src/components/hand-controls2.js b/src/components/hand-controls2.js index af86cd5da..f3ce63691 100644 --- a/src/components/hand-controls2.js +++ b/src/components/hand-controls2.js @@ -18,6 +18,11 @@ const CONTROLLER_OFFSETS = { new THREE.Quaternion().setFromEuler(new THREE.Euler(-40 * THREE.Math.DEG2RAD, 0, 0)), new THREE.Vector3(1, 1, 1) ), + "windows-motion-controls": new THREE.Matrix4().compose( + new THREE.Vector3(0, -0.017, 0.13), + new THREE.Quaternion().setFromEuler(new THREE.Euler(-40 * THREE.Math.DEG2RAD, 0, 0)), + new THREE.Vector3(1, 1, 1) + ), "daydream-controls": new THREE.Matrix4().makeTranslation(0, 0, -0.04), "gearvr-controls": new THREE.Matrix4() }; diff --git a/src/input-mappings.js b/src/input-mappings.js index a5c399937..36a1fdb0e 100644 --- a/src/input-mappings.js +++ b/src/input-mappings.js @@ -26,6 +26,9 @@ const config = { "vive-controls": { trackpad: "trackpad_dpad4" }, + "windows-motion-controls": { + joystick: "joystick_dpad4" + }, "daydream-controls": { trackpad: "trackpad_dpad4" }, @@ -80,6 +83,28 @@ const config = { abuttondown: "action_primary_down", abuttonup: "action_primary_up" }, + "windows-motion-controls": { + joystick_dpad4_west: { + right: "snap_rotate_left" + }, + joystick_dpad4_east: { + right: "snap_rotate_right" + }, + "trackpad.pressedmove": { left: "move" }, + joystick_dpad4_pressed_west_down: { right: "snap_rotate_left" }, + joystick_dpad4_pressed_east_down: { right: "snap_rotate_right" }, + trackpaddown: {right: "action_primary_down"}, + trackpadup: { right: "action_primary_up" }, + menudown: "thumb_down", + menuup: "thumb_up", + gripdown: ["action_grab", "middle_ring_pinky_down"], + gripup: ["action_release", "middle_ring_pinky_up"], + trackpadtouchstart: "thumb_down", + trackpadtouchend: "thumb_up", + triggerdown: ["action_grab", "index_down"], + triggerup: ["action_release", "index_up"], + "axismove.reverseY": { left: "move" }, + }, "daydream-controls": { trackpad_dpad4_pressed_west_down: "snap_rotate_left", trackpad_dpad4_pressed_east_down: "snap_rotate_right", -- GitLab