1
0
mirror of https://github.com/CLfamilaris/VRDOM.git synced 2024-11-24 03:00:09 +01:00

Add really crude foot "calibration"

This commit is contained in:
RubberDuckShobe 2023-08-04 23:07:24 +02:00
parent 2e392206ab
commit 422d2d4aac
10 changed files with 137 additions and 882 deletions

View File

@ -1,14 +1,13 @@
[gd_scene load_steps=20 format=3 uid="uid://bq81xxba71cxw"] [gd_scene load_steps=18 format=3 uid="uid://bq81xxba71cxw"]
[ext_resource type="Script" path="res://scripts/RootInit.cs" id="1_i51wy"] [ext_resource type="Script" path="res://scripts/RootInit.cs" id="1_i51wy"]
[ext_resource type="BoxMesh" uid="uid://c86k0m3ggdn76" path="res://controller.tres" id="2_d3qf6"]
[ext_resource type="Shader" path="res://shaders/ColorSwap.gdshader" id="2_xru62"] [ext_resource type="Shader" path="res://shaders/ColorSwap.gdshader" id="2_xru62"]
[ext_resource type="Script" path="res://scripts/FootSensor.cs" id="3_6061f"] [ext_resource type="Script" path="res://scripts/FootSensor.cs" id="3_6061f"]
[ext_resource type="Script" path="res://scripts/SensorTrigger.cs" id="4_thw0t"]
[ext_resource type="Shader" path="res://shaders/FootSensor.gdshader" id="4_xuw0l"] [ext_resource type="Shader" path="res://shaders/FootSensor.gdshader" id="4_xuw0l"]
[ext_resource type="Script" path="res://scripts/GameConnection.cs" id="5_44hhi"] [ext_resource type="Script" path="res://scripts/GameConnection.cs" id="5_44hhi"]
[ext_resource type="Shape3D" uid="uid://rd2eoar5f4gj" path="res://controller_collisionshape.tres" id="5_py4o4"] [ext_resource type="PackedScene" uid="uid://bn06u52d2m00s" path="res://virtual_foot.tscn" id="6_ss0nc"]
[ext_resource type="Script" path="res://scripts/DisplayCapture.cs" id="7_ffs0h"] [ext_resource type="Script" path="res://scripts/DisplayCapture.cs" id="7_ffs0h"]
[ext_resource type="Script" path="res://scripts/ActionHandler.cs" id="8_a7ujv"]
[sub_resource type="PlaneMesh" id="PlaneMesh_j2hdc"] [sub_resource type="PlaneMesh" id="PlaneMesh_j2hdc"]
size = Vector2(1.77, 1) size = Vector2(1.77, 1)
@ -32,9 +31,6 @@ shader_parameter/led_data = null
[sub_resource type="BoxShape3D" id="BoxShape3D_r3gxn"] [sub_resource type="BoxShape3D" id="BoxShape3D_r3gxn"]
size = Vector3(1.3, 0.08, 1.7) size = Vector3(1.3, 0.08, 1.7)
[sub_resource type="BoxMesh" id="BoxMesh_a5ph8"]
size = Vector3(0.04, 0.045, 0.05)
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_cxmum"] [sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_cxmum"]
sky_top_color = Color(0.141176, 0.454902, 0.764706, 1) sky_top_color = Color(0.141176, 0.454902, 0.764706, 1)
sky_horizon_color = Color(0.901961, 0.65098, 0.678431, 1) sky_horizon_color = Color(0.901961, 0.65098, 0.678431, 1)
@ -82,7 +78,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.64, 0, -0.824933)
[node name="MaxMarker" type="Marker3D" parent="XROrigin3D/Foot Sensor Pad/Sensor"] [node name="MaxMarker" type="Marker3D" parent="XROrigin3D/Foot Sensor Pad/Sensor"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.640241, 0, 0.825155) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.640241, 0, 0.825155)
[node name="CollisionPolygon3D" type="CollisionShape3D" parent="XROrigin3D/Foot Sensor Pad/Sensor"] [node name="TouchableArea" type="CollisionShape3D" parent="XROrigin3D/Foot Sensor Pad/Sensor"]
shape = SubResource("BoxShape3D_r3gxn") shape = SubResource("BoxShape3D_r3gxn")
[node name="XRCamera3D" type="XRCamera3D" parent="XROrigin3D"] [node name="XRCamera3D" type="XRCamera3D" parent="XROrigin3D"]
@ -92,47 +88,15 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.7, 0)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.5, 1, -0.5) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.5, 1, -0.5)
tracker = &"left_hand" tracker = &"left_hand"
[node name="Sensor" type="Area3D" parent="XROrigin3D/LeftHand"] [node name="Virtual Foot" parent="XROrigin3D/LeftHand" instance=ExtResource("6_ss0nc")]
collision_layer = 2
collision_mask = 2
script = ExtResource("4_thw0t")
[node name="CollisionShape3D" type="CollisionShape3D" parent="XROrigin3D/LeftHand/Sensor"]
shape = ExtResource("5_py4o4")
[node name="RayCast3D" type="RayCast3D" parent="XROrigin3D/LeftHand/Sensor"]
collision_mask = 4
[node name="MeshInstance3D" type="MeshInstance3D" parent="XROrigin3D/LeftHand"]
mesh = ExtResource("2_d3qf6")
[node name="MeshInstance3D2" type="MeshInstance3D" parent="XROrigin3D/LeftHand"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.0740553, 0)
mesh = SubResource("BoxMesh_a5ph8")
[node name="RightHand" type="XRController3D" parent="XROrigin3D"] [node name="RightHand" type="XRController3D" parent="XROrigin3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.5, 1, -0.5) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.5, 1, -0.5)
tracker = &"right_hand" tracker = &"right_hand"
[node name="Sensor" type="Area3D" parent="XROrigin3D/RightHand"] [node name="Virtual Foot" parent="XROrigin3D/RightHand" instance=ExtResource("6_ss0nc")]
collision_layer = 2
collision_mask = 2
script = ExtResource("4_thw0t")
sensorId = 1 sensorId = 1
[node name="CollisionShape3D" type="CollisionShape3D" parent="XROrigin3D/RightHand/Sensor"]
shape = ExtResource("5_py4o4")
[node name="RayCast3D" type="RayCast3D" parent="XROrigin3D/RightHand/Sensor"]
collision_mask = 4
[node name="MeshInstance3D" type="MeshInstance3D" parent="XROrigin3D/RightHand"]
mesh = ExtResource("2_d3qf6")
[node name="MeshInstance3D2" type="MeshInstance3D" parent="XROrigin3D/RightHand"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.0740553, 0)
mesh = SubResource("BoxMesh_a5ph8")
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."] [node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.445432, 0.895316, 0, -0.895316, 0.445432, 0, 5.43573, -0.011737) transform = Transform3D(1, 0, 0, 0, 0.445432, 0.895316, 0, -0.895316, 0.445432, 0, 5.43573, -0.011737)
@ -142,3 +106,11 @@ environment = SubResource("Environment_jj1ls")
[node name="Game Connection" type="Node" parent="." node_paths=PackedStringArray("_footSensor")] [node name="Game Connection" type="Node" parent="." node_paths=PackedStringArray("_footSensor")]
script = ExtResource("5_44hhi") script = ExtResource("5_44hhi")
_footSensor = NodePath("../XROrigin3D/Foot Sensor Pad") _footSensor = NodePath("../XROrigin3D/Foot Sensor Pad")
[node name="Action Handler" type="Node" parent="." node_paths=PackedStringArray("_leftFoot", "_rightFoot")]
script = ExtResource("8_a7ujv")
_leftFoot = NodePath("../XROrigin3D/LeftHand/Virtual Foot")
_rightFoot = NodePath("../XROrigin3D/RightHand/Virtual Foot")
[connection signal="button_pressed" from="XROrigin3D/LeftHand" to="Action Handler" method="OnXRButtonPress"]
[connection signal="button_pressed" from="XROrigin3D/RightHand" to="Action Handler" method="OnXRButtonPress"]

View File

@ -6,4 +6,4 @@ For the people who
This is for that one funny 573 dance game with all those pretty lights. Still pretty WIP, the most basic stuff *should* work though. This is for that one funny 573 dance game with all those pretty lights. Still pretty WIP, the most basic stuff *should* work though.
# Building # Building
Grab [Godot 4.1 with .NET support](https://godotengine.org/download/windows) and open the project. You may need to install the NuGet packages yourself. Grab [Godot 4.1 with .NET support](https://godotengine.org/download/windows) and open the project. You may need to install the NuGet packages yourself.

View File

@ -1,835 +0,0 @@
[gd_resource type="OpenXRActionMap" load_steps=197 format=3 uid="uid://6jacgy3u6pau"]
[sub_resource type="OpenXRAction" id="OpenXRAction_y062n"]
resource_name = "trigger"
localized_name = "Trigger"
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_seerx"]
resource_name = "trigger_click"
localized_name = "Trigger click"
action_type = 0
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_s8iuk"]
resource_name = "trigger_touch"
localized_name = "Trigger touching"
action_type = 0
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_4fliw"]
resource_name = "grip"
localized_name = "Grip"
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_vtkrt"]
resource_name = "grip_click"
localized_name = "Grip click"
action_type = 0
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_a4qke"]
resource_name = "grip_touch"
localized_name = "Grip touching"
action_type = 0
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_gtsy0"]
resource_name = "grip_force"
localized_name = "Grip force"
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_4t61h"]
resource_name = "primary"
localized_name = "Primary joystick/thumbstick/trackpad"
action_type = 2
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_mbh41"]
resource_name = "primary_click"
localized_name = "Primary joystick/thumbstick/trackpad click"
action_type = 0
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_2b35x"]
resource_name = "primary_touch"
localized_name = "Primary joystick/thumbstick/trackpad touching"
action_type = 0
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_wc4bs"]
resource_name = "secondary"
localized_name = "Secondary joystick/thumbstick/trackpad"
action_type = 2
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_3meys"]
resource_name = "secondary_click"
localized_name = "Secondary joystick/thumbstick/trackpad click"
action_type = 0
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_leb4v"]
resource_name = "secondary_touch"
localized_name = "Secondary joystick/thumbstick/trackpad touching"
action_type = 0
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_ds8ku"]
resource_name = "menu_button"
localized_name = "Menu button"
action_type = 0
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_54yne"]
resource_name = "select_button"
localized_name = "Select button"
action_type = 0
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_3ajip"]
resource_name = "ax_button"
localized_name = "A/X button"
action_type = 0
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_2v5hd"]
resource_name = "ax_touch"
localized_name = "A/X touching"
action_type = 0
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_expdw"]
resource_name = "by_button"
localized_name = "B/Y button"
action_type = 0
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_0138q"]
resource_name = "by_touch"
localized_name = "B/Y touching"
action_type = 0
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_1seqp"]
resource_name = "default_pose"
localized_name = "Default pose"
action_type = 3
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right", "/user/vive_tracker_htcx/role/left_foot", "/user/vive_tracker_htcx/role/right_foot", "/user/vive_tracker_htcx/role/left_shoulder", "/user/vive_tracker_htcx/role/right_shoulder", "/user/vive_tracker_htcx/role/left_elbow", "/user/vive_tracker_htcx/role/right_elbow", "/user/vive_tracker_htcx/role/left_knee", "/user/vive_tracker_htcx/role/right_knee", "/user/vive_tracker_htcx/role/waist", "/user/vive_tracker_htcx/role/chest", "/user/vive_tracker_htcx/role/camera", "/user/vive_tracker_htcx/role/keyboard")
[sub_resource type="OpenXRAction" id="OpenXRAction_4cghg"]
resource_name = "aim_pose"
localized_name = "Aim pose"
action_type = 3
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_rvi8w"]
resource_name = "grip_pose"
localized_name = "Grip pose"
action_type = 3
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_sv3of"]
resource_name = "palm_pose"
localized_name = "Palm pose"
action_type = 3
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right")
[sub_resource type="OpenXRAction" id="OpenXRAction_fei5o"]
resource_name = "haptic"
localized_name = "Haptic"
action_type = 4
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right", "/user/vive_tracker_htcx/role/left_foot", "/user/vive_tracker_htcx/role/right_foot", "/user/vive_tracker_htcx/role/left_shoulder", "/user/vive_tracker_htcx/role/right_shoulder", "/user/vive_tracker_htcx/role/left_elbow", "/user/vive_tracker_htcx/role/right_elbow", "/user/vive_tracker_htcx/role/left_knee", "/user/vive_tracker_htcx/role/right_knee", "/user/vive_tracker_htcx/role/waist", "/user/vive_tracker_htcx/role/chest", "/user/vive_tracker_htcx/role/camera", "/user/vive_tracker_htcx/role/keyboard")
[sub_resource type="OpenXRActionSet" id="OpenXRActionSet_qs6q3"]
resource_name = "godot"
localized_name = "Godot action set"
actions = [SubResource("OpenXRAction_y062n"), SubResource("OpenXRAction_seerx"), SubResource("OpenXRAction_s8iuk"), SubResource("OpenXRAction_4fliw"), SubResource("OpenXRAction_vtkrt"), SubResource("OpenXRAction_a4qke"), SubResource("OpenXRAction_gtsy0"), SubResource("OpenXRAction_4t61h"), SubResource("OpenXRAction_mbh41"), SubResource("OpenXRAction_2b35x"), SubResource("OpenXRAction_wc4bs"), SubResource("OpenXRAction_3meys"), SubResource("OpenXRAction_leb4v"), SubResource("OpenXRAction_ds8ku"), SubResource("OpenXRAction_54yne"), SubResource("OpenXRAction_3ajip"), SubResource("OpenXRAction_2v5hd"), SubResource("OpenXRAction_expdw"), SubResource("OpenXRAction_0138q"), SubResource("OpenXRAction_1seqp"), SubResource("OpenXRAction_4cghg"), SubResource("OpenXRAction_rvi8w"), SubResource("OpenXRAction_sv3of"), SubResource("OpenXRAction_fei5o")]
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_1lr1w"]
action = SubResource("OpenXRAction_1seqp")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_mkvmr"]
action = SubResource("OpenXRAction_4cghg")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_pm370"]
action = SubResource("OpenXRAction_rvi8w")
paths = PackedStringArray("/user/hand/left/input/grip/pose", "/user/hand/right/input/grip/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_g8wiw"]
action = SubResource("OpenXRAction_sv3of")
paths = PackedStringArray("/user/hand/left/input/palm_ext/pose", "/user/hand/right/input/palm_ext/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_upisp"]
action = SubResource("OpenXRAction_ds8ku")
paths = PackedStringArray("/user/hand/left/input/menu/click", "/user/hand/right/input/menu/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_375vj"]
action = SubResource("OpenXRAction_54yne")
paths = PackedStringArray("/user/hand/left/input/select/click", "/user/hand/right/input/select/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_h7a33"]
action = SubResource("OpenXRAction_fei5o")
paths = PackedStringArray("/user/hand/left/output/haptic", "/user/hand/right/output/haptic")
[sub_resource type="OpenXRInteractionProfile" id="OpenXRInteractionProfile_l83nv"]
interaction_profile_path = "/interaction_profiles/khr/simple_controller"
bindings = [SubResource("OpenXRIPBinding_1lr1w"), SubResource("OpenXRIPBinding_mkvmr"), SubResource("OpenXRIPBinding_pm370"), SubResource("OpenXRIPBinding_g8wiw"), SubResource("OpenXRIPBinding_upisp"), SubResource("OpenXRIPBinding_375vj"), SubResource("OpenXRIPBinding_h7a33")]
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_1dxdc"]
action = SubResource("OpenXRAction_1seqp")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_gr4le"]
action = SubResource("OpenXRAction_4cghg")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_7x18d"]
action = SubResource("OpenXRAction_rvi8w")
paths = PackedStringArray("/user/hand/left/input/grip/pose", "/user/hand/right/input/grip/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_x1gd5"]
action = SubResource("OpenXRAction_sv3of")
paths = PackedStringArray("/user/hand/left/input/palm_ext/pose", "/user/hand/right/input/palm_ext/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_eojnc"]
action = SubResource("OpenXRAction_ds8ku")
paths = PackedStringArray("/user/hand/left/input/menu/click", "/user/hand/right/input/menu/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_f83ke"]
action = SubResource("OpenXRAction_54yne")
paths = PackedStringArray("/user/hand/left/input/system/click", "/user/hand/right/input/system/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_f5b8j"]
action = SubResource("OpenXRAction_y062n")
paths = PackedStringArray("/user/hand/left/input/trigger/value", "/user/hand/right/input/trigger/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_iq2bx"]
action = SubResource("OpenXRAction_seerx")
paths = PackedStringArray("/user/hand/left/input/trigger/click", "/user/hand/right/input/trigger/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_bpfx6"]
action = SubResource("OpenXRAction_4fliw")
paths = PackedStringArray("/user/hand/left/input/squeeze/click", "/user/hand/right/input/squeeze/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_5laq6"]
action = SubResource("OpenXRAction_vtkrt")
paths = PackedStringArray("/user/hand/left/input/squeeze/click", "/user/hand/right/input/squeeze/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_jegcb"]
action = SubResource("OpenXRAction_4t61h")
paths = PackedStringArray("/user/hand/left/input/trackpad", "/user/hand/right/input/trackpad")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_akuse"]
action = SubResource("OpenXRAction_mbh41")
paths = PackedStringArray("/user/hand/left/input/trackpad/click", "/user/hand/right/input/trackpad/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_7vqhb"]
action = SubResource("OpenXRAction_2b35x")
paths = PackedStringArray("/user/hand/left/input/trackpad/touch", "/user/hand/right/input/trackpad/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_edu20"]
action = SubResource("OpenXRAction_fei5o")
paths = PackedStringArray("/user/hand/left/output/haptic", "/user/hand/right/output/haptic")
[sub_resource type="OpenXRInteractionProfile" id="OpenXRInteractionProfile_m56k4"]
interaction_profile_path = "/interaction_profiles/htc/vive_controller"
bindings = [SubResource("OpenXRIPBinding_1dxdc"), SubResource("OpenXRIPBinding_gr4le"), SubResource("OpenXRIPBinding_7x18d"), SubResource("OpenXRIPBinding_x1gd5"), SubResource("OpenXRIPBinding_eojnc"), SubResource("OpenXRIPBinding_f83ke"), SubResource("OpenXRIPBinding_f5b8j"), SubResource("OpenXRIPBinding_iq2bx"), SubResource("OpenXRIPBinding_bpfx6"), SubResource("OpenXRIPBinding_5laq6"), SubResource("OpenXRIPBinding_jegcb"), SubResource("OpenXRIPBinding_akuse"), SubResource("OpenXRIPBinding_7vqhb"), SubResource("OpenXRIPBinding_edu20")]
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_0rios"]
action = SubResource("OpenXRAction_1seqp")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_ms761"]
action = SubResource("OpenXRAction_4cghg")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_hk0al"]
action = SubResource("OpenXRAction_rvi8w")
paths = PackedStringArray("/user/hand/left/input/grip/pose", "/user/hand/right/input/grip/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_h1ir5"]
action = SubResource("OpenXRAction_sv3of")
paths = PackedStringArray("/user/hand/left/input/palm_ext/pose", "/user/hand/right/input/palm_ext/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_blqf0"]
action = SubResource("OpenXRAction_ds8ku")
paths = PackedStringArray("/user/hand/left/input/menu/click", "/user/hand/right/input/menu/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_1awhh"]
action = SubResource("OpenXRAction_y062n")
paths = PackedStringArray("/user/hand/left/input/trigger/value", "/user/hand/right/input/trigger/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_wsxge"]
action = SubResource("OpenXRAction_seerx")
paths = PackedStringArray("/user/hand/left/input/trigger/value", "/user/hand/right/input/trigger/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_6xld6"]
action = SubResource("OpenXRAction_4fliw")
paths = PackedStringArray("/user/hand/left/input/squeeze/click", "/user/hand/right/input/squeeze/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_vmqoo"]
action = SubResource("OpenXRAction_vtkrt")
paths = PackedStringArray("/user/hand/left/input/squeeze/click", "/user/hand/right/input/squeeze/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_ehcrx"]
action = SubResource("OpenXRAction_4t61h")
paths = PackedStringArray("/user/hand/left/input/thumbstick", "/user/hand/right/input/thumbstick")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_vet2g"]
action = SubResource("OpenXRAction_mbh41")
paths = PackedStringArray("/user/hand/left/input/thumbstick/click", "/user/hand/right/input/thumbstick/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_q2dcl"]
action = SubResource("OpenXRAction_wc4bs")
paths = PackedStringArray("/user/hand/left/input/trackpad", "/user/hand/right/input/trackpad")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_pdwus"]
action = SubResource("OpenXRAction_3meys")
paths = PackedStringArray("/user/hand/left/input/trackpad/click", "/user/hand/right/input/trackpad/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_758rk"]
action = SubResource("OpenXRAction_leb4v")
paths = PackedStringArray("/user/hand/left/input/trackpad/touch", "/user/hand/right/input/trackpad/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_ve1pp"]
action = SubResource("OpenXRAction_fei5o")
paths = PackedStringArray("/user/hand/left/output/haptic", "/user/hand/right/output/haptic")
[sub_resource type="OpenXRInteractionProfile" id="OpenXRInteractionProfile_0nr80"]
interaction_profile_path = "/interaction_profiles/microsoft/motion_controller"
bindings = [SubResource("OpenXRIPBinding_0rios"), SubResource("OpenXRIPBinding_ms761"), SubResource("OpenXRIPBinding_hk0al"), SubResource("OpenXRIPBinding_h1ir5"), SubResource("OpenXRIPBinding_blqf0"), SubResource("OpenXRIPBinding_1awhh"), SubResource("OpenXRIPBinding_wsxge"), SubResource("OpenXRIPBinding_6xld6"), SubResource("OpenXRIPBinding_vmqoo"), SubResource("OpenXRIPBinding_ehcrx"), SubResource("OpenXRIPBinding_vet2g"), SubResource("OpenXRIPBinding_q2dcl"), SubResource("OpenXRIPBinding_pdwus"), SubResource("OpenXRIPBinding_758rk"), SubResource("OpenXRIPBinding_ve1pp")]
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_fum5p"]
action = SubResource("OpenXRAction_1seqp")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_xbfgg"]
action = SubResource("OpenXRAction_4cghg")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_qtuq8"]
action = SubResource("OpenXRAction_rvi8w")
paths = PackedStringArray("/user/hand/left/input/grip/pose", "/user/hand/right/input/grip/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_hwaoo"]
action = SubResource("OpenXRAction_sv3of")
paths = PackedStringArray("/user/hand/left/input/palm_ext/pose", "/user/hand/right/input/palm_ext/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_61hx0"]
action = SubResource("OpenXRAction_ds8ku")
paths = PackedStringArray("/user/hand/left/input/menu/click", "/user/hand/right/input/system/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_6i1a7"]
action = SubResource("OpenXRAction_3ajip")
paths = PackedStringArray("/user/hand/left/input/x/click", "/user/hand/right/input/a/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_0ensj"]
action = SubResource("OpenXRAction_2v5hd")
paths = PackedStringArray("/user/hand/left/input/x/touch", "/user/hand/right/input/a/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_qkpjp"]
action = SubResource("OpenXRAction_expdw")
paths = PackedStringArray("/user/hand/left/input/y/click", "/user/hand/right/input/b/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_g73pc"]
action = SubResource("OpenXRAction_0138q")
paths = PackedStringArray("/user/hand/left/input/y/touch", "/user/hand/right/input/b/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_cfodb"]
action = SubResource("OpenXRAction_y062n")
paths = PackedStringArray("/user/hand/left/input/trigger/value", "/user/hand/right/input/trigger/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_aa4pf"]
action = SubResource("OpenXRAction_seerx")
paths = PackedStringArray("/user/hand/left/input/trigger/value", "/user/hand/right/input/trigger/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_uoek2"]
action = SubResource("OpenXRAction_s8iuk")
paths = PackedStringArray("/user/hand/left/input/trigger/touch", "/user/hand/right/input/trigger/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_wh0qn"]
action = SubResource("OpenXRAction_4fliw")
paths = PackedStringArray("/user/hand/left/input/squeeze/value", "/user/hand/right/input/squeeze/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_sbuho"]
action = SubResource("OpenXRAction_vtkrt")
paths = PackedStringArray("/user/hand/left/input/squeeze/value", "/user/hand/right/input/squeeze/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_qq2je"]
action = SubResource("OpenXRAction_4t61h")
paths = PackedStringArray("/user/hand/left/input/thumbstick", "/user/hand/right/input/thumbstick")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_w0olk"]
action = SubResource("OpenXRAction_mbh41")
paths = PackedStringArray("/user/hand/left/input/thumbstick/click", "/user/hand/right/input/thumbstick/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_qcnqk"]
action = SubResource("OpenXRAction_2b35x")
paths = PackedStringArray("/user/hand/left/input/thumbstick/touch", "/user/hand/right/input/thumbstick/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_pb6tx"]
action = SubResource("OpenXRAction_fei5o")
paths = PackedStringArray("/user/hand/left/output/haptic", "/user/hand/right/output/haptic")
[sub_resource type="OpenXRInteractionProfile" id="OpenXRInteractionProfile_coslu"]
interaction_profile_path = "/interaction_profiles/oculus/touch_controller"
bindings = [SubResource("OpenXRIPBinding_fum5p"), SubResource("OpenXRIPBinding_xbfgg"), SubResource("OpenXRIPBinding_qtuq8"), SubResource("OpenXRIPBinding_hwaoo"), SubResource("OpenXRIPBinding_61hx0"), SubResource("OpenXRIPBinding_6i1a7"), SubResource("OpenXRIPBinding_0ensj"), SubResource("OpenXRIPBinding_qkpjp"), SubResource("OpenXRIPBinding_g73pc"), SubResource("OpenXRIPBinding_cfodb"), SubResource("OpenXRIPBinding_aa4pf"), SubResource("OpenXRIPBinding_uoek2"), SubResource("OpenXRIPBinding_wh0qn"), SubResource("OpenXRIPBinding_sbuho"), SubResource("OpenXRIPBinding_qq2je"), SubResource("OpenXRIPBinding_w0olk"), SubResource("OpenXRIPBinding_qcnqk"), SubResource("OpenXRIPBinding_pb6tx")]
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_wavuv"]
action = SubResource("OpenXRAction_1seqp")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_qg0bj"]
action = SubResource("OpenXRAction_4cghg")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_3b2hc"]
action = SubResource("OpenXRAction_rvi8w")
paths = PackedStringArray("/user/hand/left/input/grip/pose", "/user/hand/right/input/grip/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_nbnpu"]
action = SubResource("OpenXRAction_sv3of")
paths = PackedStringArray("/user/hand/left/input/palm_ext/pose", "/user/hand/right/input/palm_ext/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_fx2n0"]
action = SubResource("OpenXRAction_54yne")
paths = PackedStringArray("/user/hand/left/input/system/click", "/user/hand/right/input/system/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_cnjem"]
action = SubResource("OpenXRAction_ds8ku")
paths = PackedStringArray("/user/hand/left/input/back/click", "/user/hand/right/input/back/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_17m8t"]
action = SubResource("OpenXRAction_3ajip")
paths = PackedStringArray("/user/hand/left/input/x/click", "/user/hand/right/input/a/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_2d0nq"]
action = SubResource("OpenXRAction_2v5hd")
paths = PackedStringArray("/user/hand/left/input/x/touch", "/user/hand/right/input/a/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_2btaf"]
action = SubResource("OpenXRAction_expdw")
paths = PackedStringArray("/user/hand/left/input/y/click", "/user/hand/right/input/b/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_oo1jo"]
action = SubResource("OpenXRAction_0138q")
paths = PackedStringArray("/user/hand/left/input/y/touch", "/user/hand/right/input/b/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_mcxpd"]
action = SubResource("OpenXRAction_y062n")
paths = PackedStringArray("/user/hand/left/input/trigger/value", "/user/hand/right/input/trigger/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_dt10d"]
action = SubResource("OpenXRAction_seerx")
paths = PackedStringArray("/user/hand/left/input/trigger/value", "/user/hand/right/input/trigger/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_da06j"]
action = SubResource("OpenXRAction_s8iuk")
paths = PackedStringArray("/user/hand/left/input/trigger/touch", "/user/hand/right/input/trigger/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_8mcic"]
action = SubResource("OpenXRAction_4fliw")
paths = PackedStringArray("/user/hand/left/input/squeeze/value", "/user/hand/right/input/squeeze/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_ej0ux"]
action = SubResource("OpenXRAction_vtkrt")
paths = PackedStringArray("/user/hand/left/input/squeeze/value", "/user/hand/right/input/squeeze/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_1l68r"]
action = SubResource("OpenXRAction_4t61h")
paths = PackedStringArray("/user/hand/left/input/thumbstick", "/user/hand/right/input/thumbstick")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_1c8ws"]
action = SubResource("OpenXRAction_mbh41")
paths = PackedStringArray("/user/hand/left/input/thumbstick/click", "/user/hand/right/input/thumbstick/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_pk2h5"]
action = SubResource("OpenXRAction_2b35x")
paths = PackedStringArray("/user/hand/left/input/thumbstick/touch", "/user/hand/right/input/thumbstick/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_0g3ls"]
action = SubResource("OpenXRAction_fei5o")
paths = PackedStringArray("/user/hand/left/output/haptic", "/user/hand/right/output/haptic")
[sub_resource type="OpenXRInteractionProfile" id="OpenXRInteractionProfile_dwef8"]
interaction_profile_path = "/interaction_profiles/pico/neo3_controller"
bindings = [SubResource("OpenXRIPBinding_wavuv"), SubResource("OpenXRIPBinding_qg0bj"), SubResource("OpenXRIPBinding_3b2hc"), SubResource("OpenXRIPBinding_nbnpu"), SubResource("OpenXRIPBinding_fx2n0"), SubResource("OpenXRIPBinding_cnjem"), SubResource("OpenXRIPBinding_17m8t"), SubResource("OpenXRIPBinding_2d0nq"), SubResource("OpenXRIPBinding_2btaf"), SubResource("OpenXRIPBinding_oo1jo"), SubResource("OpenXRIPBinding_mcxpd"), SubResource("OpenXRIPBinding_dt10d"), SubResource("OpenXRIPBinding_da06j"), SubResource("OpenXRIPBinding_8mcic"), SubResource("OpenXRIPBinding_ej0ux"), SubResource("OpenXRIPBinding_1l68r"), SubResource("OpenXRIPBinding_1c8ws"), SubResource("OpenXRIPBinding_pk2h5"), SubResource("OpenXRIPBinding_0g3ls")]
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_vrpj5"]
action = SubResource("OpenXRAction_1seqp")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_ryr8e"]
action = SubResource("OpenXRAction_4cghg")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_og7cr"]
action = SubResource("OpenXRAction_rvi8w")
paths = PackedStringArray("/user/hand/left/input/grip/pose", "/user/hand/right/input/grip/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_oukxt"]
action = SubResource("OpenXRAction_sv3of")
paths = PackedStringArray("/user/hand/left/input/palm_ext/pose", "/user/hand/right/input/palm_ext/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_7sojt"]
action = SubResource("OpenXRAction_ds8ku")
paths = PackedStringArray("/user/hand/left/input/system/click", "/user/hand/right/input/system/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_j2vfe"]
action = SubResource("OpenXRAction_3ajip")
paths = PackedStringArray("/user/hand/left/input/a/click", "/user/hand/right/input/a/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_ee1qf"]
action = SubResource("OpenXRAction_2v5hd")
paths = PackedStringArray("/user/hand/left/input/a/touch", "/user/hand/right/input/a/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_ywty5"]
action = SubResource("OpenXRAction_expdw")
paths = PackedStringArray("/user/hand/left/input/b/click", "/user/hand/right/input/b/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_g0yxg"]
action = SubResource("OpenXRAction_0138q")
paths = PackedStringArray("/user/hand/left/input/b/touch", "/user/hand/right/input/b/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_vlagd"]
action = SubResource("OpenXRAction_y062n")
paths = PackedStringArray("/user/hand/left/input/trigger/value", "/user/hand/right/input/trigger/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_hlhwq"]
action = SubResource("OpenXRAction_seerx")
paths = PackedStringArray("/user/hand/left/input/trigger/click", "/user/hand/right/input/trigger/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_k2pgv"]
action = SubResource("OpenXRAction_s8iuk")
paths = PackedStringArray("/user/hand/left/input/trigger/touch", "/user/hand/right/input/trigger/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_gq6rk"]
action = SubResource("OpenXRAction_4fliw")
paths = PackedStringArray("/user/hand/left/input/squeeze/value", "/user/hand/right/input/squeeze/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_3n3gf"]
action = SubResource("OpenXRAction_vtkrt")
paths = PackedStringArray("/user/hand/left/input/squeeze/value", "/user/hand/right/input/squeeze/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_1ky72"]
action = SubResource("OpenXRAction_gtsy0")
paths = PackedStringArray("/user/hand/left/input/squeeze/force", "/user/hand/right/input/squeeze/force")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_x06h7"]
action = SubResource("OpenXRAction_4t61h")
paths = PackedStringArray("/user/hand/left/input/thumbstick", "/user/hand/right/input/thumbstick")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_jr3bv"]
action = SubResource("OpenXRAction_mbh41")
paths = PackedStringArray("/user/hand/left/input/thumbstick/click", "/user/hand/right/input/thumbstick/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_x4v5r"]
action = SubResource("OpenXRAction_2b35x")
paths = PackedStringArray("/user/hand/left/input/thumbstick/touch", "/user/hand/right/input/thumbstick/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_5jh43"]
action = SubResource("OpenXRAction_wc4bs")
paths = PackedStringArray("/user/hand/left/input/trackpad", "/user/hand/right/input/trackpad")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_xj2ji"]
action = SubResource("OpenXRAction_3meys")
paths = PackedStringArray("/user/hand/left/input/trackpad/force", "/user/hand/right/input/trackpad/force")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_t3c1u"]
action = SubResource("OpenXRAction_leb4v")
paths = PackedStringArray("/user/hand/left/input/trackpad/touch", "/user/hand/right/input/trackpad/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_ld2y0"]
action = SubResource("OpenXRAction_fei5o")
paths = PackedStringArray("/user/hand/left/output/haptic", "/user/hand/right/output/haptic")
[sub_resource type="OpenXRInteractionProfile" id="OpenXRInteractionProfile_orejf"]
interaction_profile_path = "/interaction_profiles/valve/index_controller"
bindings = [SubResource("OpenXRIPBinding_vrpj5"), SubResource("OpenXRIPBinding_ryr8e"), SubResource("OpenXRIPBinding_og7cr"), SubResource("OpenXRIPBinding_oukxt"), SubResource("OpenXRIPBinding_7sojt"), SubResource("OpenXRIPBinding_j2vfe"), SubResource("OpenXRIPBinding_ee1qf"), SubResource("OpenXRIPBinding_ywty5"), SubResource("OpenXRIPBinding_g0yxg"), SubResource("OpenXRIPBinding_vlagd"), SubResource("OpenXRIPBinding_hlhwq"), SubResource("OpenXRIPBinding_k2pgv"), SubResource("OpenXRIPBinding_gq6rk"), SubResource("OpenXRIPBinding_3n3gf"), SubResource("OpenXRIPBinding_1ky72"), SubResource("OpenXRIPBinding_x06h7"), SubResource("OpenXRIPBinding_jr3bv"), SubResource("OpenXRIPBinding_x4v5r"), SubResource("OpenXRIPBinding_5jh43"), SubResource("OpenXRIPBinding_xj2ji"), SubResource("OpenXRIPBinding_t3c1u"), SubResource("OpenXRIPBinding_ld2y0")]
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_nwe24"]
action = SubResource("OpenXRAction_1seqp")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_62a71"]
action = SubResource("OpenXRAction_4cghg")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_flxka"]
action = SubResource("OpenXRAction_rvi8w")
paths = PackedStringArray("/user/hand/left/input/grip/pose", "/user/hand/right/input/grip/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_07yjo"]
action = SubResource("OpenXRAction_sv3of")
paths = PackedStringArray("/user/hand/left/input/palm_ext/pose", "/user/hand/right/input/palm_ext/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_7aoxy"]
action = SubResource("OpenXRAction_ds8ku")
paths = PackedStringArray("/user/hand/left/input/menu/click", "/user/hand/right/input/menu/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_mrwqd"]
action = SubResource("OpenXRAction_3ajip")
paths = PackedStringArray("/user/hand/left/input/x/click", "/user/hand/right/input/a/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_onpfa"]
action = SubResource("OpenXRAction_expdw")
paths = PackedStringArray("/user/hand/left/input/y/click", "/user/hand/right/input/b/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_0664x"]
action = SubResource("OpenXRAction_y062n")
paths = PackedStringArray("/user/hand/left/input/trigger/value", "/user/hand/right/input/trigger/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_w807y"]
action = SubResource("OpenXRAction_seerx")
paths = PackedStringArray("/user/hand/left/input/trigger/value", "/user/hand/right/input/trigger/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_fra6p"]
action = SubResource("OpenXRAction_4fliw")
paths = PackedStringArray("/user/hand/left/input/squeeze/value", "/user/hand/right/input/squeeze/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_sb4na"]
action = SubResource("OpenXRAction_vtkrt")
paths = PackedStringArray("/user/hand/left/input/squeeze/value", "/user/hand/right/input/squeeze/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_8rtwo"]
action = SubResource("OpenXRAction_4t61h")
paths = PackedStringArray("/user/hand/left/input/thumbstick", "/user/hand/right/input/thumbstick")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_qrr2e"]
action = SubResource("OpenXRAction_mbh41")
paths = PackedStringArray("/user/hand/left/input/thumbstick/click", "/user/hand/right/input/thumbstick/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_gnbgw"]
action = SubResource("OpenXRAction_fei5o")
paths = PackedStringArray("/user/hand/left/output/haptic", "/user/hand/right/output/haptic")
[sub_resource type="OpenXRInteractionProfile" id="OpenXRInteractionProfile_jcpt7"]
interaction_profile_path = "/interaction_profiles/hp/mixed_reality_controller"
bindings = [SubResource("OpenXRIPBinding_nwe24"), SubResource("OpenXRIPBinding_62a71"), SubResource("OpenXRIPBinding_flxka"), SubResource("OpenXRIPBinding_07yjo"), SubResource("OpenXRIPBinding_7aoxy"), SubResource("OpenXRIPBinding_mrwqd"), SubResource("OpenXRIPBinding_onpfa"), SubResource("OpenXRIPBinding_0664x"), SubResource("OpenXRIPBinding_w807y"), SubResource("OpenXRIPBinding_fra6p"), SubResource("OpenXRIPBinding_sb4na"), SubResource("OpenXRIPBinding_8rtwo"), SubResource("OpenXRIPBinding_qrr2e"), SubResource("OpenXRIPBinding_gnbgw")]
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_kdnwj"]
action = SubResource("OpenXRAction_1seqp")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_smeve"]
action = SubResource("OpenXRAction_4cghg")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_fglyf"]
action = SubResource("OpenXRAction_rvi8w")
paths = PackedStringArray("/user/hand/left/input/grip/pose", "/user/hand/right/input/grip/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_yc6jt"]
action = SubResource("OpenXRAction_sv3of")
paths = PackedStringArray("/user/hand/left/input/palm_ext/pose", "/user/hand/right/input/palm_ext/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_8fwi4"]
action = SubResource("OpenXRAction_ds8ku")
paths = PackedStringArray("/user/hand/left/input/menu/click", "/user/hand/right/input/menu/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_7nkhk"]
action = SubResource("OpenXRAction_y062n")
paths = PackedStringArray("/user/hand/left/input/trigger/value", "/user/hand/right/input/trigger/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_jy8rl"]
action = SubResource("OpenXRAction_seerx")
paths = PackedStringArray("/user/hand/left/input/trigger/value", "/user/hand/right/input/trigger/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_hpgo7"]
action = SubResource("OpenXRAction_4fliw")
paths = PackedStringArray("/user/hand/left/input/squeeze/click", "/user/hand/right/input/squeeze/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_4q5ub"]
action = SubResource("OpenXRAction_vtkrt")
paths = PackedStringArray("/user/hand/left/input/squeeze/click", "/user/hand/right/input/squeeze/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_nelm6"]
action = SubResource("OpenXRAction_4t61h")
paths = PackedStringArray("/user/hand/left/input/thumbstick", "/user/hand/right/input/thumbstick")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_ph4wk"]
action = SubResource("OpenXRAction_mbh41")
paths = PackedStringArray("/user/hand/left/input/thumbstick/click", "/user/hand/right/input/thumbstick/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_1661t"]
action = SubResource("OpenXRAction_wc4bs")
paths = PackedStringArray("/user/hand/left/input/trackpad", "/user/hand/right/input/trackpad")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_l5otv"]
action = SubResource("OpenXRAction_3meys")
paths = PackedStringArray("/user/hand/left/input/trackpad/click", "/user/hand/right/input/trackpad/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_pvix6"]
action = SubResource("OpenXRAction_leb4v")
paths = PackedStringArray("/user/hand/left/input/trackpad/touch", "/user/hand/right/input/trackpad/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_wc3gb"]
action = SubResource("OpenXRAction_fei5o")
paths = PackedStringArray("/user/hand/left/output/haptic", "/user/hand/right/output/haptic")
[sub_resource type="OpenXRInteractionProfile" id="OpenXRInteractionProfile_vdhpc"]
interaction_profile_path = "/interaction_profiles/samsung/odyssey_controller"
bindings = [SubResource("OpenXRIPBinding_kdnwj"), SubResource("OpenXRIPBinding_smeve"), SubResource("OpenXRIPBinding_fglyf"), SubResource("OpenXRIPBinding_yc6jt"), SubResource("OpenXRIPBinding_8fwi4"), SubResource("OpenXRIPBinding_7nkhk"), SubResource("OpenXRIPBinding_jy8rl"), SubResource("OpenXRIPBinding_hpgo7"), SubResource("OpenXRIPBinding_4q5ub"), SubResource("OpenXRIPBinding_nelm6"), SubResource("OpenXRIPBinding_ph4wk"), SubResource("OpenXRIPBinding_1661t"), SubResource("OpenXRIPBinding_l5otv"), SubResource("OpenXRIPBinding_pvix6"), SubResource("OpenXRIPBinding_wc3gb")]
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_6pq45"]
action = SubResource("OpenXRAction_1seqp")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_q21y2"]
action = SubResource("OpenXRAction_4cghg")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_fxbve"]
action = SubResource("OpenXRAction_rvi8w")
paths = PackedStringArray("/user/hand/left/input/grip/pose", "/user/hand/right/input/grip/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_x82yu"]
action = SubResource("OpenXRAction_sv3of")
paths = PackedStringArray("/user/hand/left/input/palm_ext/pose", "/user/hand/right/input/palm_ext/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_dfgrh"]
action = SubResource("OpenXRAction_ds8ku")
paths = PackedStringArray("/user/hand/left/input/menu/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_ldgwr"]
action = SubResource("OpenXRAction_54yne")
paths = PackedStringArray("/user/hand/right/input/system/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_7mbc0"]
action = SubResource("OpenXRAction_3ajip")
paths = PackedStringArray("/user/hand/left/input/x/click", "/user/hand/right/input/a/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_8puxy"]
action = SubResource("OpenXRAction_expdw")
paths = PackedStringArray("/user/hand/left/input/y/click", "/user/hand/right/input/b/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_ogvyw"]
action = SubResource("OpenXRAction_y062n")
paths = PackedStringArray("/user/hand/left/input/trigger/value", "/user/hand/right/input/trigger/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_662xs"]
action = SubResource("OpenXRAction_seerx")
paths = PackedStringArray("/user/hand/left/input/trigger/click", "/user/hand/right/input/trigger/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_0gpqb"]
action = SubResource("OpenXRAction_4fliw")
paths = PackedStringArray("/user/hand/left/input/squeeze/click", "/user/hand/right/input/squeeze/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_64uy7"]
action = SubResource("OpenXRAction_vtkrt")
paths = PackedStringArray("/user/hand/left/input/squeeze/click", "/user/hand/right/input/squeeze/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_no5tl"]
action = SubResource("OpenXRAction_4t61h")
paths = PackedStringArray("/user/hand/left/input/thumbstick", "/user/hand/right/input/thumbstick")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_stsrw"]
action = SubResource("OpenXRAction_mbh41")
paths = PackedStringArray("/user/hand/left/input/thumbstick/click", "/user/hand/right/input/thumbstick/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_rhl1w"]
action = SubResource("OpenXRAction_2b35x")
paths = PackedStringArray("/user/hand/left/input/thumbstick/touch", "/user/hand/right/input/thumbstick/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_awhlk"]
action = SubResource("OpenXRAction_fei5o")
paths = PackedStringArray("/user/hand/left/output/haptic", "/user/hand/right/output/haptic")
[sub_resource type="OpenXRInteractionProfile" id="OpenXRInteractionProfile_ymb65"]
interaction_profile_path = "/interaction_profiles/htc/vive_cosmos_controller"
bindings = [SubResource("OpenXRIPBinding_6pq45"), SubResource("OpenXRIPBinding_q21y2"), SubResource("OpenXRIPBinding_fxbve"), SubResource("OpenXRIPBinding_x82yu"), SubResource("OpenXRIPBinding_dfgrh"), SubResource("OpenXRIPBinding_ldgwr"), SubResource("OpenXRIPBinding_7mbc0"), SubResource("OpenXRIPBinding_8puxy"), SubResource("OpenXRIPBinding_ogvyw"), SubResource("OpenXRIPBinding_662xs"), SubResource("OpenXRIPBinding_0gpqb"), SubResource("OpenXRIPBinding_64uy7"), SubResource("OpenXRIPBinding_no5tl"), SubResource("OpenXRIPBinding_stsrw"), SubResource("OpenXRIPBinding_rhl1w"), SubResource("OpenXRIPBinding_awhlk")]
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_r45x1"]
action = SubResource("OpenXRAction_1seqp")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_v3j5x"]
action = SubResource("OpenXRAction_4cghg")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_i5lfi"]
action = SubResource("OpenXRAction_rvi8w")
paths = PackedStringArray("/user/hand/left/input/grip/pose", "/user/hand/right/input/grip/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_je57r"]
action = SubResource("OpenXRAction_sv3of")
paths = PackedStringArray("/user/hand/left/input/palm_ext/pose", "/user/hand/right/input/palm_ext/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_pikjn"]
action = SubResource("OpenXRAction_ds8ku")
paths = PackedStringArray("/user/hand/left/input/menu/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_wkuva"]
action = SubResource("OpenXRAction_54yne")
paths = PackedStringArray("/user/hand/right/input/system/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_llgws"]
action = SubResource("OpenXRAction_3ajip")
paths = PackedStringArray("/user/hand/left/input/x/click", "/user/hand/right/input/a/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_6fk1c"]
action = SubResource("OpenXRAction_expdw")
paths = PackedStringArray("/user/hand/left/input/y/click", "/user/hand/right/input/b/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_o3tve"]
action = SubResource("OpenXRAction_y062n")
paths = PackedStringArray("/user/hand/left/input/trigger/value", "/user/hand/right/input/trigger/value")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_kcw08"]
action = SubResource("OpenXRAction_seerx")
paths = PackedStringArray("/user/hand/left/input/trigger/click", "/user/hand/right/input/trigger/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_1rhrb"]
action = SubResource("OpenXRAction_s8iuk")
paths = PackedStringArray("/user/hand/left/input/trigger/touch", "/user/hand/right/input/trigger/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_qigcd"]
action = SubResource("OpenXRAction_4fliw")
paths = PackedStringArray("/user/hand/left/input/squeeze/click", "/user/hand/right/input/squeeze/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_l883a"]
action = SubResource("OpenXRAction_vtkrt")
paths = PackedStringArray("/user/hand/left/input/squeeze/click", "/user/hand/right/input/squeeze/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_5si61"]
action = SubResource("OpenXRAction_4t61h")
paths = PackedStringArray("/user/hand/left/input/thumbstick", "/user/hand/right/input/thumbstick")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_481oo"]
action = SubResource("OpenXRAction_mbh41")
paths = PackedStringArray("/user/hand/left/input/thumbstick/click", "/user/hand/right/input/thumbstick/click")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_o480n"]
action = SubResource("OpenXRAction_2b35x")
paths = PackedStringArray("/user/hand/left/input/thumbstick/touch", "/user/hand/right/input/thumbstick/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_ynweh"]
action = SubResource("OpenXRAction_leb4v")
paths = PackedStringArray("/user/hand/left/input/thumbrest/touch", "/user/hand/right/input/thumbrest/touch")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_mtx5n"]
action = SubResource("OpenXRAction_fei5o")
paths = PackedStringArray("/user/hand/left/output/haptic", "/user/hand/right/output/haptic")
[sub_resource type="OpenXRInteractionProfile" id="OpenXRInteractionProfile_mbvhu"]
interaction_profile_path = "/interaction_profiles/htc/vive_focus3_controller"
bindings = [SubResource("OpenXRIPBinding_r45x1"), SubResource("OpenXRIPBinding_v3j5x"), SubResource("OpenXRIPBinding_i5lfi"), SubResource("OpenXRIPBinding_je57r"), SubResource("OpenXRIPBinding_pikjn"), SubResource("OpenXRIPBinding_wkuva"), SubResource("OpenXRIPBinding_llgws"), SubResource("OpenXRIPBinding_6fk1c"), SubResource("OpenXRIPBinding_o3tve"), SubResource("OpenXRIPBinding_kcw08"), SubResource("OpenXRIPBinding_1rhrb"), SubResource("OpenXRIPBinding_qigcd"), SubResource("OpenXRIPBinding_l883a"), SubResource("OpenXRIPBinding_5si61"), SubResource("OpenXRIPBinding_481oo"), SubResource("OpenXRIPBinding_o480n"), SubResource("OpenXRIPBinding_ynweh"), SubResource("OpenXRIPBinding_mtx5n")]
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_3xtv4"]
action = SubResource("OpenXRAction_1seqp")
paths = PackedStringArray("/user/vive_tracker_htcx/role/left_foot/input/grip/pose", "/user/vive_tracker_htcx/role/right_foot/input/grip/pose", "/user/vive_tracker_htcx/role/left_shoulder/input/grip/pose", "/user/vive_tracker_htcx/role/right_shoulder/input/grip/pose", "/user/vive_tracker_htcx/role/left_elbow/input/grip/pose", "/user/vive_tracker_htcx/role/right_elbow/input/grip/pose", "/user/vive_tracker_htcx/role/left_knee/input/grip/pose", "/user/vive_tracker_htcx/role/right_knee/input/grip/pose", "/user/vive_tracker_htcx/role/waist/input/grip/pose", "/user/vive_tracker_htcx/role/chest/input/grip/pose", "/user/vive_tracker_htcx/role/camera/input/grip/pose", "/user/vive_tracker_htcx/role/keyboard/input/grip/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_jsp5c"]
action = SubResource("OpenXRAction_fei5o")
paths = PackedStringArray("/user/vive_tracker_htcx/role/left_foot/output/haptic", "/user/vive_tracker_htcx/role/right_foot/output/haptic", "/user/vive_tracker_htcx/role/left_shoulder/output/haptic", "/user/vive_tracker_htcx/role/right_shoulder/output/haptic", "/user/vive_tracker_htcx/role/left_elbow/output/haptic", "/user/vive_tracker_htcx/role/right_elbow/output/haptic", "/user/vive_tracker_htcx/role/left_knee/output/haptic", "/user/vive_tracker_htcx/role/right_knee/output/haptic", "/user/vive_tracker_htcx/role/waist/output/haptic", "/user/vive_tracker_htcx/role/chest/output/haptic", "/user/vive_tracker_htcx/role/camera/output/haptic", "/user/vive_tracker_htcx/role/keyboard/output/haptic")
[sub_resource type="OpenXRInteractionProfile" id="OpenXRInteractionProfile_5qrmo"]
interaction_profile_path = "/interaction_profiles/htc/vive_tracker_htcx"
bindings = [SubResource("OpenXRIPBinding_3xtv4"), SubResource("OpenXRIPBinding_jsp5c")]
[resource]
action_sets = [SubResource("OpenXRActionSet_qs6q3")]
interaction_profiles = [SubResource("OpenXRInteractionProfile_l83nv"), SubResource("OpenXRInteractionProfile_m56k4"), SubResource("OpenXRInteractionProfile_0nr80"), SubResource("OpenXRInteractionProfile_coslu"), SubResource("OpenXRInteractionProfile_dwef8"), SubResource("OpenXRInteractionProfile_orejf"), SubResource("OpenXRInteractionProfile_jcpt7"), SubResource("OpenXRInteractionProfile_vdhpc"), SubResource("OpenXRInteractionProfile_ymb65"), SubResource("OpenXRInteractionProfile_mbvhu"), SubResource("OpenXRInteractionProfile_5qrmo")]

View File

@ -15,6 +15,10 @@ run/main_scene="res://Main.tscn"
config/features=PackedStringArray("4.1", "C#", "Forward Plus") config/features=PackedStringArray("4.1", "C#", "Forward Plus")
config/icon="res://icon.svg" config/icon="res://icon.svg"
[audio]
driver/driver="Dummy"
[dotnet] [dotnet]
project/assembly_name="VRDOM" project/assembly_name="VRDOM"
@ -22,4 +26,5 @@ project/assembly_name="VRDOM"
[xr] [xr]
openxr/enabled=true openxr/enabled=true
openxr/default_action_map="res://xr_action_map.tres"
shaders/enabled=true shaders/enabled=true

40
scripts/ActionHandler.cs Normal file
View File

@ -0,0 +1,40 @@
using Godot;
using System;
public partial class ActionHandler : Node
{
[Export]
private Node3D _leftFoot;
[Export]
private Node3D _rightFoot;
// Called when the node enters the scene tree for the first time.
public override void _Ready()
{
}
// Called every frame. 'delta' is the elapsed time since the previous frame.
public override void _Process(double delta)
{
}
public void OnXRButtonPress(string name)
{
GD.Print("Action pressed: " + name);
if (name == "recalibrate")
{
Recalibrate();
}
}
private void Recalibrate()
{
GD.Print("Recalibrating feet");
const float defaultFootHeight = 0.075f;
_leftFoot.GlobalRotation = Vector3.Zero;
_rightFoot.GlobalRotation = Vector3.Zero;
_leftFoot.GlobalPosition = new Vector3(_leftFoot.GlobalPosition.X, defaultFootHeight, _leftFoot.GlobalPosition.Z);
_rightFoot.GlobalPosition = new Vector3(_rightFoot.GlobalPosition.X, defaultFootHeight, _rightFoot.GlobalPosition.Z);
}
}

View File

@ -56,7 +56,7 @@ public partial class FootSensor : CsgMesh3D
touchCommands.Add(new TouchCommand(pair.Key, (int)TouchEvents.TOUCH_UP, new Vector2(0, 0), _defaultTouchSize)); touchCommands.Add(new TouchCommand(pair.Key, (int)TouchEvents.TOUCH_UP, new Vector2(0, 0), _defaultTouchSize));
} }
} }
_gameConnection.setTouch(touchCommands); _gameConnection.SetTouch(touchCommands);
} }
//Turns the world position into X and Y values from 0 to 1 on the pad that we can use for Spice //Turns the world position into X and Y values from 0 to 1 on the pad that we can use for Spice

View File

@ -14,13 +14,13 @@ public partial class GameConnection : Node
readonly double lightingGetInterval = 0.0166; readonly double lightingGetInterval = 0.0166;
double lightingGetTimer = 0; double lightingGetTimer = 0;
public void getLighting() public void GetLighting()
{ {
if (_wsPeer.GetReadyState() == WebSocketPeer.State.Open) if (_wsPeer.GetReadyState() == WebSocketPeer.State.Open)
_wsPeer.Send(Encoding.UTF8.GetBytes("{\"id\":0,\"module\":\"drs\",\"function\":\"tapeled_get\",\"params\":[]}")); _wsPeer.Send(Encoding.UTF8.GetBytes("{\"id\":0,\"module\":\"drs\",\"function\":\"tapeled_get\",\"params\":[]}"));
} }
public void setTouch(List<TouchCommand> touchCommands) public void SetTouch(List<TouchCommand> touchCommands)
{ {
if (touchCommands.Count == 0) if (touchCommands.Count == 0)
return; return;
@ -59,7 +59,7 @@ public partial class GameConnection : Node
case WebSocketPeer.State.Open: case WebSocketPeer.State.Open:
if (lightingGetTimer >= lightingGetInterval) if (lightingGetTimer >= lightingGetInterval)
{ {
getLighting(); GetLighting();
lightingGetTimer = 0; lightingGetTimer = 0;
} }

View File

@ -5,5 +5,6 @@ void fragment()
{ {
vec4 albedo_tex = texture(texture_albedo, UV); vec4 albedo_tex = texture(texture_albedo, UV);
ALBEDO = albedo_tex.bgr; ALBEDO = albedo_tex.bgr;
EMISSION = ALBEDO;
ALPHA = albedo_tex.a; ALPHA = albedo_tex.a;
} }

28
virtual_foot.tscn Normal file
View File

@ -0,0 +1,28 @@
[gd_scene load_steps=5 format=3 uid="uid://bn06u52d2m00s"]
[ext_resource type="Script" path="res://scripts/SensorTrigger.cs" id="1_aibvx"]
[ext_resource type="Shape3D" uid="uid://rd2eoar5f4gj" path="res://controller_collisionshape.tres" id="2_vuma2"]
[ext_resource type="BoxMesh" uid="uid://c86k0m3ggdn76" path="res://controller.tres" id="3_njpfj"]
[sub_resource type="BoxMesh" id="BoxMesh_a5ph8"]
size = Vector3(0.04, 0.015, 0.05)
[node name="Virtual Foot" type="Area3D"]
collision_layer = 2
collision_mask = 2
script = ExtResource("1_aibvx")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = ExtResource("2_vuma2")
[node name="RayCast3D" type="RayCast3D" parent="."]
collision_mask = 4
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
mesh = ExtResource("3_njpfj")
skeleton = NodePath("../..")
[node name="MeshInstance3D2" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.0574117, 0)
mesh = SubResource("BoxMesh_a5ph8")
skeleton = NodePath("../..")

44
xr_action_map.tres Normal file
View File

@ -0,0 +1,44 @@
[gd_resource type="OpenXRActionMap" load_steps=9 format=3 uid="uid://dj5lrsrjr7l7s"]
[sub_resource type="OpenXRAction" id="OpenXRAction_tgww6"]
resource_name = "default_pose"
localized_name = "Default pose"
action_type = 3
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right", "/user/vive_tracker_htcx/role/left_foot", "/user/vive_tracker_htcx/role/right_foot", "/user/vive_tracker_htcx/role/left_shoulder", "/user/vive_tracker_htcx/role/right_shoulder", "/user/vive_tracker_htcx/role/left_elbow", "/user/vive_tracker_htcx/role/right_elbow", "/user/vive_tracker_htcx/role/left_knee", "/user/vive_tracker_htcx/role/right_knee", "/user/vive_tracker_htcx/role/waist", "/user/vive_tracker_htcx/role/chest", "/user/vive_tracker_htcx/role/camera", "/user/vive_tracker_htcx/role/keyboard")
[sub_resource type="OpenXRAction" id="OpenXRAction_8s7vw"]
resource_name = "haptic"
localized_name = "Haptic"
action_type = 4
toplevel_paths = PackedStringArray("/user/hand/left", "/user/hand/right", "/user/vive_tracker_htcx/role/left_foot", "/user/vive_tracker_htcx/role/right_foot", "/user/vive_tracker_htcx/role/left_shoulder", "/user/vive_tracker_htcx/role/right_shoulder", "/user/vive_tracker_htcx/role/left_elbow", "/user/vive_tracker_htcx/role/right_elbow", "/user/vive_tracker_htcx/role/left_knee", "/user/vive_tracker_htcx/role/right_knee", "/user/vive_tracker_htcx/role/waist", "/user/vive_tracker_htcx/role/chest", "/user/vive_tracker_htcx/role/camera", "/user/vive_tracker_htcx/role/keyboard")
[sub_resource type="OpenXRAction" id="OpenXRAction_m3s11"]
resource_name = "recalibrate"
localized_name = "Recalibrate feet"
action_type = 0
toplevel_paths = PackedStringArray("/user/hand/left")
[sub_resource type="OpenXRActionSet" id="OpenXRActionSet_5gwpn"]
resource_name = "vrdom"
localized_name = "VRDOM"
actions = [SubResource("OpenXRAction_tgww6"), SubResource("OpenXRAction_8s7vw"), SubResource("OpenXRAction_m3s11")]
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_7fsr8"]
action = SubResource("OpenXRAction_tgww6")
paths = PackedStringArray("/user/hand/left/input/aim/pose", "/user/hand/right/input/aim/pose")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_mpmsu"]
action = SubResource("OpenXRAction_8s7vw")
paths = PackedStringArray("/user/hand/left/output/haptic", "/user/hand/right/output/haptic")
[sub_resource type="OpenXRIPBinding" id="OpenXRIPBinding_idjss"]
action = SubResource("OpenXRAction_m3s11")
paths = PackedStringArray("/user/hand/left/input/thumbstick/click")
[sub_resource type="OpenXRInteractionProfile" id="OpenXRInteractionProfile_pkpee"]
interaction_profile_path = "/interaction_profiles/oculus/touch_controller"
bindings = [SubResource("OpenXRIPBinding_7fsr8"), SubResource("OpenXRIPBinding_mpmsu"), SubResource("OpenXRIPBinding_idjss")]
[resource]
action_sets = [SubResource("OpenXRActionSet_5gwpn")]
interaction_profiles = [SubResource("OpenXRInteractionProfile_pkpee")]