From a8ffae284404cadd0cbd62f7d914531f9e992f87 Mon Sep 17 00:00:00 2001
From: Lab3 <account@vr.rwth-aachen.de>
Date: Wed, 17 May 2023 16:21:12 +0200
Subject: [PATCH] Adding SteamVRManifests

---
 Config/DefaultEditorSettings.ini              |  32 ++
 Config/SteamVRBindings/gamepad.json           |  13 +
 .../holographic_controller.json               | 188 +++++++++
 .../SteamVRBindings/hpmotioncontroller.json   | 188 +++++++++
 Config/SteamVRBindings/indexhmd.json          |  13 +
 Config/SteamVRBindings/knuckles.json          | 155 +++++++
 Config/SteamVRBindings/oculus_touch.json      | 188 +++++++++
 Config/SteamVRBindings/rift.json              |  13 +
 Config/SteamVRBindings/steamvr_manifest.json  | 394 ++++++++++++++++++
 Config/SteamVRBindings/vive.json              |  13 +
 Config/SteamVRBindings/vive_controller.json   | 188 +++++++++
 .../vive_cosmos_controller.json               |  44 ++
 Config/SteamVRBindings/vive_pro.json          |  13 +
 Config/SteamVRBindings/vive_tracker.json      |  64 +++
 .../SteamVRBindings/vive_tracker_camera.json  |  19 +
 .../SteamVRBindings/vive_tracker_chest.json   |  19 +
 .../SteamVRBindings/vive_tracker_handed.json  |  64 +++
 .../vive_tracker_keyboard.json                |  19 +
 .../vive_tracker_left_elbow.json              |  19 +
 .../vive_tracker_left_foot.json               |  19 +
 .../vive_tracker_left_knee.json               |  19 +
 .../vive_tracker_left_shoulder.json           |  19 +
 .../vive_tracker_right_elbow.json             |  19 +
 .../vive_tracker_right_foot.json              |  19 +
 .../vive_tracker_right_knee.json              |  19 +
 .../vive_tracker_right_shoulder.json          |  19 +
 .../SteamVRBindings/vive_tracker_waist.json   |  19 +
 Config/steamvr_ue_editor_app.json             |  18 +
 Content/Assets/SeminarRoom.umap               |   4 +-
 DasherDemo.uproject                           |  42 ++
 30 files changed, 1860 insertions(+), 2 deletions(-)
 create mode 100644 Config/DefaultEditorSettings.ini
 create mode 100644 Config/SteamVRBindings/gamepad.json
 create mode 100644 Config/SteamVRBindings/holographic_controller.json
 create mode 100644 Config/SteamVRBindings/hpmotioncontroller.json
 create mode 100644 Config/SteamVRBindings/indexhmd.json
 create mode 100644 Config/SteamVRBindings/knuckles.json
 create mode 100644 Config/SteamVRBindings/oculus_touch.json
 create mode 100644 Config/SteamVRBindings/rift.json
 create mode 100644 Config/SteamVRBindings/steamvr_manifest.json
 create mode 100644 Config/SteamVRBindings/vive.json
 create mode 100644 Config/SteamVRBindings/vive_controller.json
 create mode 100644 Config/SteamVRBindings/vive_cosmos_controller.json
 create mode 100644 Config/SteamVRBindings/vive_pro.json
 create mode 100644 Config/SteamVRBindings/vive_tracker.json
 create mode 100644 Config/SteamVRBindings/vive_tracker_camera.json
 create mode 100644 Config/SteamVRBindings/vive_tracker_chest.json
 create mode 100644 Config/SteamVRBindings/vive_tracker_handed.json
 create mode 100644 Config/SteamVRBindings/vive_tracker_keyboard.json
 create mode 100644 Config/SteamVRBindings/vive_tracker_left_elbow.json
 create mode 100644 Config/SteamVRBindings/vive_tracker_left_foot.json
 create mode 100644 Config/SteamVRBindings/vive_tracker_left_knee.json
 create mode 100644 Config/SteamVRBindings/vive_tracker_left_shoulder.json
 create mode 100644 Config/SteamVRBindings/vive_tracker_right_elbow.json
 create mode 100644 Config/SteamVRBindings/vive_tracker_right_foot.json
 create mode 100644 Config/SteamVRBindings/vive_tracker_right_knee.json
 create mode 100644 Config/SteamVRBindings/vive_tracker_right_shoulder.json
 create mode 100644 Config/SteamVRBindings/vive_tracker_waist.json
 create mode 100644 Config/steamvr_ue_editor_app.json

diff --git a/Config/DefaultEditorSettings.ini b/Config/DefaultEditorSettings.ini
new file mode 100644
index 0000000..33576e7
--- /dev/null
+++ b/Config/DefaultEditorSettings.ini
@@ -0,0 +1,32 @@
+[/Script/UnrealEd.EditorPerformanceSettings]
+bShowFrameRateAndMemory=False
+bThrottleCPUWhenNotForeground=False
+bDisableRealtimeViewportsInRemoteSessions=True
+bMonitorEditorPerformance=False
+Editor.OverrideDPIBasedEditorViewportScaling=False
+bEnableSharedDDCPerformanceNotifications=True
+bEnableScalabilityWarningIndicator=True
+
+[/Script/UnrealEd.ContentBrowserSettings]
+NumObjectsToLoadBeforeWarning=20
+bOpenSourcesPanelByDefault=False
+RealTimeThumbnails=True
+DisplayFolders=True
+DisplayEmptyFolders=True
+FilterRecursively=True
+ShowAllFolder=False
+OrganizeFolders=False
+NumObjectsInRecentList=20
+bShowFullCollectionNameInToolTip=True
+bEnableRealtimeMaterialInstanceThumbnails=True
+DisplayEngineFolder=False
+DisplayDevelopersFolder=False
+DisplayL10NFolder=False
+DisplayPluginFolders=False
+DisplayFavorites=False
+DockCollections=False
+DisplayCppFolders=True
+IncludeClassNames=True
+IncludeAssetPaths=False
+IncludeCollectionNames=True
+
diff --git a/Config/SteamVRBindings/gamepad.json b/Config/SteamVRBindings/gamepad.json
new file mode 100644
index 0000000..41729d4
--- /dev/null
+++ b/Config/SteamVRBindings/gamepad.json
@@ -0,0 +1,13 @@
+{
+	"name": "Default bindings for Gamepads",
+	"controller_type": "gamepad",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"sources": []
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/holographic_controller.json b/Config/SteamVRBindings/holographic_controller.json
new file mode 100644
index 0000000..e919988
--- /dev/null
+++ b/Config/SteamVRBindings/holographic_controller.json
@@ -0,0 +1,188 @@
+{
+	"name": "Default bindings for MixedReality",
+	"controller_type": "holographic_controller",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"sources": [
+				{
+					"mode": "trigger",
+					"path": "/user/hand/right/input/trigger",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/Click"
+						}
+					}
+				},
+				{
+					"mode": "button",
+					"path": "/user/hand/left/input/grip",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/GrabLeft"
+						}
+					}
+				},
+				{
+					"mode": "button",
+					"path": "/user/hand/right/input/grip",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/GrabRight"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/left/input/trigger",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/TriggerLeft"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/right/input/trigger",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/TriggerRight"
+						}
+					}
+				},
+				{
+					"mode": "button",
+					"path": "/user/hand/left/input/application_menu",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/MenuToggleLeft"
+						}
+					}
+				},
+				{
+					"mode": "button",
+					"path": "/user/hand/right/input/application_menu",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/MenuToggleRight"
+						}
+					}
+				},
+				{
+					"mode": "joystick",
+					"path": "/user/hand/left/input/joystick",
+					"inputs":
+					{
+						"position":
+						{
+							"output": "/actions/main/in/MovementAxisLeft_X,MovementAxisLeft_Y X Y_axis2d"
+						}
+					}
+				},
+				{
+					"mode": "scalar_constant",
+					"path": "/user/hand/left/input/grip",
+					"inputs":
+					{
+						"value":
+						{
+							"output": "/actions/main/in/GrabAxisLeft axis"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/left/input/trigger",
+					"inputs":
+					{
+						"pull":
+						{
+							"output": "/actions/main/in/TriggerAxisLeft axis"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/right/input/trigger",
+					"inputs":
+					{
+						"pull":
+						{
+							"output": "/actions/main/in/TriggerAxisRight axis"
+						}
+					}
+				},
+				{
+					"mode": "scalar_constant",
+					"path": "/user/hand/right/input/grip",
+					"inputs":
+					{
+						"value":
+						{
+							"output": "/actions/main/in/GrabAxisRight axis"
+						}
+					}
+				},
+				{
+					"mode": "joystick",
+					"path": "/user/hand/right/input/joystick",
+					"inputs":
+					{
+						"position":
+						{
+							"output": "/actions/main/in/MovementAxisRight_X,MovementAxisRight_Y X Y_axis2d"
+						}
+					}
+				}
+			],
+			"poses": [
+				{
+					"output": "/actions/main/in/controllerleft",
+					"path": "/user/hand/left/pose/raw",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/controllerright",
+					"path": "/user/hand/right/pose/raw"
+				}
+			],
+			"skeleton": [
+				{
+					"output": "/actions/main/in/skeletonleft",
+					"path": "/user/hand/left/input/skeleton/left"
+				},
+				{
+					"output": "/actions/main/in/skeletonright",
+					"path": "/user/hand/right/input/skeleton/right"
+				}
+			],
+			"haptics": [
+				{
+					"output": "/actions/main/out/vibrateleft",
+					"path": "/user/hand/left/output/haptic"
+				},
+				{
+					"output": "/actions/main/out/vibrateright",
+					"path": "/user/hand/right/output/haptic"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/hpmotioncontroller.json b/Config/SteamVRBindings/hpmotioncontroller.json
new file mode 100644
index 0000000..473e861
--- /dev/null
+++ b/Config/SteamVRBindings/hpmotioncontroller.json
@@ -0,0 +1,188 @@
+{
+	"name": "Default bindings for HPMixedRealityController",
+	"controller_type": "hpmotioncontroller",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"sources": [
+				{
+					"mode": "trigger",
+					"path": "/user/hand/right/input/trigger",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/Click"
+						}
+					}
+				},
+				{
+					"mode": "button",
+					"path": "/user/hand/left/input/grip",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/GrabLeft"
+						}
+					}
+				},
+				{
+					"mode": "button",
+					"path": "/user/hand/right/input/grip",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/GrabRight"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/left/input/trigger",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/TriggerLeft"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/right/input/trigger",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/TriggerRight"
+						}
+					}
+				},
+				{
+					"mode": "button",
+					"path": "/user/hand/left/input/application_menu",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/MenuToggleLeft"
+						}
+					}
+				},
+				{
+					"mode": "button",
+					"path": "/user/hand/right/input/application_menu",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/MenuToggleRight"
+						}
+					}
+				},
+				{
+					"mode": "joystick",
+					"path": "/user/hand/left/input/joystick",
+					"inputs":
+					{
+						"position":
+						{
+							"output": "/actions/main/in/MovementAxisLeft_X,MovementAxisLeft_Y X Y_axis2d"
+						}
+					}
+				},
+				{
+					"mode": "scalar_constant",
+					"path": "/user/hand/left/input/grip",
+					"inputs":
+					{
+						"value":
+						{
+							"output": "/actions/main/in/GrabAxisLeft axis"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/left/input/trigger",
+					"inputs":
+					{
+						"pull":
+						{
+							"output": "/actions/main/in/TriggerAxisLeft axis"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/right/input/trigger",
+					"inputs":
+					{
+						"pull":
+						{
+							"output": "/actions/main/in/TriggerAxisRight axis"
+						}
+					}
+				},
+				{
+					"mode": "scalar_constant",
+					"path": "/user/hand/right/input/grip",
+					"inputs":
+					{
+						"value":
+						{
+							"output": "/actions/main/in/GrabAxisRight axis"
+						}
+					}
+				},
+				{
+					"mode": "joystick",
+					"path": "/user/hand/right/input/joystick",
+					"inputs":
+					{
+						"position":
+						{
+							"output": "/actions/main/in/MovementAxisRight_X,MovementAxisRight_Y X Y_axis2d"
+						}
+					}
+				}
+			],
+			"poses": [
+				{
+					"output": "/actions/main/in/controllerleft",
+					"path": "/user/hand/left/pose/raw",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/controllerright",
+					"path": "/user/hand/right/pose/raw"
+				}
+			],
+			"skeleton": [
+				{
+					"output": "/actions/main/in/skeletonleft",
+					"path": "/user/hand/left/input/skeleton/left"
+				},
+				{
+					"output": "/actions/main/in/skeletonright",
+					"path": "/user/hand/right/input/skeleton/right"
+				}
+			],
+			"haptics": [
+				{
+					"output": "/actions/main/out/vibrateleft",
+					"path": "/user/hand/left/output/haptic"
+				},
+				{
+					"output": "/actions/main/out/vibrateright",
+					"path": "/user/hand/right/output/haptic"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/indexhmd.json b/Config/SteamVRBindings/indexhmd.json
new file mode 100644
index 0000000..8f4cd5f
--- /dev/null
+++ b/Config/SteamVRBindings/indexhmd.json
@@ -0,0 +1,13 @@
+{
+	"name": "Default bindings for Valve Index Headset",
+	"controller_type": "indexhmd",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"sources": []
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/knuckles.json b/Config/SteamVRBindings/knuckles.json
new file mode 100644
index 0000000..294cfb3
--- /dev/null
+++ b/Config/SteamVRBindings/knuckles.json
@@ -0,0 +1,155 @@
+{
+	"name": "Default bindings for ValveIndex",
+	"controller_type": "knuckles",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"sources": [
+				{
+					"mode": "button",
+					"path": "/user/hand/left/input/grip",
+					"inputs":
+					{
+						"touch":
+						{
+							"output": "/actions/main/in/GrabLeft"
+						}
+					}
+				},
+				{
+					"mode": "button",
+					"path": "/user/hand/right/input/grip",
+					"inputs":
+					{
+						"touch":
+						{
+							"output": "/actions/main/in/GrabRight"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/left/input/trigger",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/TriggerLeft"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/right/input/trigger",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/TriggerRight"
+						}
+					}
+				},
+				{
+					"mode": "joystick",
+					"path": "/user/hand/left/input/thumbstick",
+					"inputs":
+					{
+						"position":
+						{
+							"output": "/actions/main/in/MovementAxisLeft_X,MovementAxisLeft_Y X Y_axis2d"
+						}
+					}
+				},
+				{
+					"mode": "force_sensor",
+					"path": "/user/hand/left/input/grip",
+					"inputs":
+					{
+						"force":
+						{
+							"output": "/actions/main/in/GrabAxisLeft axis"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/left/input/trigger",
+					"inputs":
+					{
+						"pull":
+						{
+							"output": "/actions/main/in/TriggerAxisLeft axis"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/right/input/trigger",
+					"inputs":
+					{
+						"pull":
+						{
+							"output": "/actions/main/in/TriggerAxisRight axis"
+						}
+					}
+				},
+				{
+					"mode": "force_sensor",
+					"path": "/user/hand/right/input/grip",
+					"inputs":
+					{
+						"force":
+						{
+							"output": "/actions/main/in/GrabAxisRight axis"
+						}
+					}
+				},
+				{
+					"mode": "joystick",
+					"path": "/user/hand/right/input/thumbstick",
+					"inputs":
+					{
+						"position":
+						{
+							"output": "/actions/main/in/MovementAxisRight_X,MovementAxisRight_Y X Y_axis2d"
+						}
+					}
+				}
+			],
+			"poses": [
+				{
+					"output": "/actions/main/in/controllerleft",
+					"path": "/user/hand/left/pose/raw",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/controllerright",
+					"path": "/user/hand/right/pose/raw"
+				}
+			],
+			"skeleton": [
+				{
+					"output": "/actions/main/in/skeletonleft",
+					"path": "/user/hand/left/input/skeleton/left"
+				},
+				{
+					"output": "/actions/main/in/skeletonright",
+					"path": "/user/hand/right/input/skeleton/right"
+				}
+			],
+			"haptics": [
+				{
+					"output": "/actions/main/out/vibrateleft",
+					"path": "/user/hand/left/output/haptic"
+				},
+				{
+					"output": "/actions/main/out/vibrateright",
+					"path": "/user/hand/right/output/haptic"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/oculus_touch.json b/Config/SteamVRBindings/oculus_touch.json
new file mode 100644
index 0000000..bf4c256
--- /dev/null
+++ b/Config/SteamVRBindings/oculus_touch.json
@@ -0,0 +1,188 @@
+{
+	"name": "Default bindings for OculusTouch",
+	"controller_type": "oculus_touch",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"sources": [
+				{
+					"mode": "trigger",
+					"path": "/user/hand/right/input/trigger",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/Click"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/left/input/grip",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/GrabLeft"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/right/input/grip",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/GrabRight"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/left/input/trigger",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/TriggerLeft"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/right/input/trigger",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/TriggerRight"
+						}
+					}
+				},
+				{
+					"mode": "button",
+					"path": "/user/hand/left/input/application_menu",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/MenuToggleLeft"
+						}
+					}
+				},
+				{
+					"mode": "joystick",
+					"path": "/user/hand/left/input/joystick",
+					"inputs":
+					{
+						"position":
+						{
+							"output": "/actions/main/in/MovementAxisLeft_X,MovementAxisLeft_Y X Y_axis2d"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/left/input/grip",
+					"inputs":
+					{
+						"pull":
+						{
+							"output": "/actions/main/in/GrabAxisLeft axis"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/left/input/trigger",
+					"inputs":
+					{
+						"pull":
+						{
+							"output": "/actions/main/in/TriggerAxisLeft axis"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/right/input/trigger",
+					"inputs":
+					{
+						"pull":
+						{
+							"output": "/actions/main/in/TriggerAxisRight axis"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/right/input/grip",
+					"inputs":
+					{
+						"pull":
+						{
+							"output": "/actions/main/in/GrabAxisRight axis"
+						}
+					}
+				},
+				{
+					"mode": "joystick",
+					"path": "/user/hand/right/input/joystick",
+					"inputs":
+					{
+						"position":
+						{
+							"output": "/actions/main/in/MovementAxisRight_X,MovementAxisRight_Y X Y_axis2d"
+						}
+					}
+				},
+				{
+					"mode": "button",
+					"path": "/user/hand/right/input/a",
+					"inputs":
+					{
+						"pull":
+						{
+							"output": "/actions/main/in/MovementAxisRight_Y axis"
+						}
+					}
+				}
+			],
+			"poses": [
+				{
+					"output": "/actions/main/in/controllerleft",
+					"path": "/user/hand/left/pose/raw",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/controllerright",
+					"path": "/user/hand/right/pose/raw"
+				}
+			],
+			"skeleton": [
+				{
+					"output": "/actions/main/in/skeletonleft",
+					"path": "/user/hand/left/input/skeleton/left"
+				},
+				{
+					"output": "/actions/main/in/skeletonright",
+					"path": "/user/hand/right/input/skeleton/right"
+				}
+			],
+			"haptics": [
+				{
+					"output": "/actions/main/out/vibrateleft",
+					"path": "/user/hand/left/output/haptic"
+				},
+				{
+					"output": "/actions/main/out/vibrateright",
+					"path": "/user/hand/right/output/haptic"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/rift.json b/Config/SteamVRBindings/rift.json
new file mode 100644
index 0000000..595d789
--- /dev/null
+++ b/Config/SteamVRBindings/rift.json
@@ -0,0 +1,13 @@
+{
+	"name": "Default bindings for Rift Headset",
+	"controller_type": "rift",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"sources": []
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/steamvr_manifest.json b/Config/SteamVRBindings/steamvr_manifest.json
new file mode 100644
index 0000000..eccf554
--- /dev/null
+++ b/Config/SteamVRBindings/steamvr_manifest.json
@@ -0,0 +1,394 @@
+{
+	"actions": [
+		{
+			"name": "/actions/main/in/controllerleft",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/controllerright",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_camera",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_chest",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_shoulder_left",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_shoulder_right",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_elbow_left",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_elbow_right",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_knee_left",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_knee_right",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_waist",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_foot_left",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_foot_right",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_keyboard",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_handed_pose_left",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_handed_pose_right",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_handed_back_left",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_handed_back_right",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_handed_front_left",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_handed_front_right",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_handed_frontr_left",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_handed_frontr_right",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_handed_grip_left",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/tracker_handed_grip_right",
+			"type": "pose",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/skeletonleft",
+			"type": "skeleton",
+			"skeleton": "/skeleton/hand/left",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/skeletonright",
+			"type": "skeleton",
+			"skeleton": "/skeleton/hand/right",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/out/vibrateleft",
+			"type": "vibration",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/out/vibrateright",
+			"type": "vibration",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/open_console",
+			"type": "boolean",
+			"requirement": "optional"
+		},
+		{
+			"name": "/actions/main/in/Click",
+			"type": "boolean"
+		},
+		{
+			"name": "/actions/main/in/GrabLeft",
+			"type": "boolean"
+		},
+		{
+			"name": "/actions/main/in/GrabRight",
+			"type": "boolean"
+		},
+		{
+			"name": "/actions/main/in/TriggerLeft",
+			"type": "boolean"
+		},
+		{
+			"name": "/actions/main/in/TriggerRight",
+			"type": "boolean"
+		},
+		{
+			"name": "/actions/main/in/MenuToggleLeft",
+			"type": "boolean"
+		},
+		{
+			"name": "/actions/main/in/MenuToggleRight",
+			"type": "boolean"
+		},
+		{
+			"name": "/actions/main/in/MovementAxisLeft_X,MovementAxisLeft_Y X Y_axis2d",
+			"type": "vector2"
+		},
+		{
+			"name": "/actions/main/in/GrabAxisLeft axis",
+			"type": "vector1"
+		},
+		{
+			"name": "/actions/main/in/TriggerAxisLeft axis",
+			"type": "vector1"
+		},
+		{
+			"name": "/actions/main/in/TriggerAxisRight axis",
+			"type": "vector1"
+		},
+		{
+			"name": "/actions/main/in/GrabAxisRight axis",
+			"type": "vector1"
+		},
+		{
+			"name": "/actions/main/in/SpectatorYaw axis",
+			"type": "vector1"
+		},
+		{
+			"name": "/actions/main/in/SpectatorPitch axis",
+			"type": "vector1"
+		},
+		{
+			"name": "/actions/main/in/SpectatorFOV axis",
+			"type": "vector1"
+		},
+		{
+			"name": "/actions/main/in/SpectatorMoveForward axis",
+			"type": "vector1"
+		},
+		{
+			"name": "/actions/main/in/SpectatorMoveRight axis",
+			"type": "vector1"
+		},
+		{
+			"name": "/actions/main/in/SpectatorMoveUp axis",
+			"type": "vector1"
+		},
+		{
+			"name": "/actions/main/in/MovementAxisRight_X,MovementAxisRight_Y X Y_axis2d",
+			"type": "vector2"
+		},
+		{
+			"name": "/actions/main/in/MovementAxisRight_Y axis",
+			"type": "vector1"
+		}
+	],
+	"action_sets": [
+		{
+			"name": "/actions/main",
+			"usage": "leftright"
+		}
+	],
+	"default_bindings": [
+		{
+			"controller_type": "gamepad",
+			"binding_url": "gamepad.json"
+		},
+		{
+			"controller_type": "holographic_controller",
+			"binding_url": "holographic_controller.json"
+		},
+		{
+			"controller_type": "hpmotioncontroller",
+			"binding_url": "hpmotioncontroller.json"
+		},
+		{
+			"controller_type": "indexhmd",
+			"binding_url": "indexhmd.json"
+		},
+		{
+			"controller_type": "knuckles",
+			"binding_url": "knuckles.json"
+		},
+		{
+			"controller_type": "oculus_touch",
+			"binding_url": "oculus_touch.json"
+		},
+		{
+			"controller_type": "rift",
+			"binding_url": "rift.json"
+		},
+		{
+			"controller_type": "vive",
+			"binding_url": "vive.json"
+		},
+		{
+			"controller_type": "vive_controller",
+			"binding_url": "vive_controller.json"
+		},
+		{
+			"controller_type": "vive_cosmos_controller",
+			"binding_url": "vive_cosmos_controller.json"
+		},
+		{
+			"controller_type": "vive_pro",
+			"binding_url": "vive_pro.json"
+		},
+		{
+			"controller_type": "vive_tracker",
+			"binding_url": "vive_tracker.json"
+		},
+		{
+			"controller_type": "vive_tracker_camera",
+			"binding_url": "vive_tracker_camera.json"
+		},
+		{
+			"controller_type": "vive_tracker_chest",
+			"binding_url": "vive_tracker_chest.json"
+		},
+		{
+			"controller_type": "vive_tracker_handed",
+			"binding_url": "vive_tracker_handed.json"
+		},
+		{
+			"controller_type": "vive_tracker_keyboard",
+			"binding_url": "vive_tracker_keyboard.json"
+		},
+		{
+			"controller_type": "vive_tracker_left_elbow",
+			"binding_url": "vive_tracker_left_elbow.json"
+		},
+		{
+			"controller_type": "vive_tracker_left_foot",
+			"binding_url": "vive_tracker_left_foot.json"
+		},
+		{
+			"controller_type": "vive_tracker_left_knee",
+			"binding_url": "vive_tracker_left_knee.json"
+		},
+		{
+			"controller_type": "vive_tracker_left_shoulder",
+			"binding_url": "vive_tracker_left_shoulder.json"
+		},
+		{
+			"controller_type": "vive_tracker_right_elbow",
+			"binding_url": "vive_tracker_right_elbow.json"
+		},
+		{
+			"controller_type": "vive_tracker_right_foot",
+			"binding_url": "vive_tracker_right_foot.json"
+		},
+		{
+			"controller_type": "vive_tracker_right_knee",
+			"binding_url": "vive_tracker_right_knee.json"
+		},
+		{
+			"controller_type": "vive_tracker_right_shoulder",
+			"binding_url": "vive_tracker_right_shoulder.json"
+		},
+		{
+			"controller_type": "vive_tracker_waist",
+			"binding_url": "vive_tracker_waist.json"
+		}
+	],
+	"localization": [
+		{
+			"language_tag": "en_us",
+			"/actions/main/in/controllerleft": "Left Controller [Pose]",
+			"/actions/main/in/controllerright": "Right Controller [Pose]",
+			"/actions/main/in/tracker_camera": "Camera [Tracker]",
+			"/actions/main/in/tracker_chest": "Chest [Tracker]",
+			"/actions/main/in/tracker_shoulder_left": "Shoulder Left [Tracker]",
+			"/actions/main/in/tracker_shoulder_right": "Shoulder Right [Tracker]",
+			"/actions/main/in/tracker_elbow_left": "Elbow Left [Tracker]",
+			"/actions/main/in/tracker_elbow_right": "Elbow Right [Tracker]",
+			"/actions/main/in/tracker_knee_left": "Knee Left [Tracker]",
+			"/actions/main/in/tracker_knee_right": "Knee Right [Tracker]",
+			"/actions/main/in/tracker_waist": "Waist [Tracker]",
+			"/actions/main/in/tracker_foot_left": "Foot Left [Tracker]",
+			"/actions/main/in/tracker_foot_right": "Foot Right [Tracker]",
+			"/actions/main/in/tracker_keyboard": "Keyboard [Tracker]",
+			"/actions/main/in/tracker_handed_pose_left": "Raw Pose Left [Tracker]",
+			"/actions/main/in/tracker_handed_pose_right": "Raw Pose Right [Tracker]",
+			"/actions/main/in/tracker_handed_back_left": "Handed Back Left [Tracker]",
+			"/actions/main/in/tracker_handed_back_right": "Handed Back Right [Tracker]",
+			"/actions/main/in/tracker_handed_front_left": "Handed Front Left [Tracker]",
+			"/actions/main/in/tracker_handed_front_right": "Handed Front Right [Tracker]",
+			"/actions/main/in/tracker_handed_frontr_left": "Handed Front Rolled Left [Tracker]",
+			"/actions/main/in/tracker_handed_frontr_right": "Handed Front Rolled Right [Tracker]",
+			"/actions/main/in/tracker_handed_grip_left": "Handed Pistol Grip Left [Tracker]",
+			"/actions/main/in/tracker_handed_grip_right": "Handed Pistol Grip Right [Tracker]",
+			"/actions/main/in/skeletonleft": "Skeleton (Left)",
+			"/actions/main/in/skeletonright": "Skeleton (Right)",
+			"/actions/main/out/vibrateleft": "Haptic (Left)",
+			"/actions/main/out/vibrateright": "Haptic (Right)",
+			"/actions/main/in/open_console": "Open Console",
+			"/actions/main/in/Click": "Click",
+			"/actions/main/in/GrabLeft": "GrabLeft",
+			"/actions/main/in/GrabRight": "GrabRight",
+			"/actions/main/in/TriggerLeft": "TriggerLeft",
+			"/actions/main/in/TriggerRight": "TriggerRight",
+			"/actions/main/in/MenuToggleLeft": "MenuToggleLeft",
+			"/actions/main/in/MenuToggleRight": "MenuToggleRight",
+			"/actions/main/in/MovementAxisLeft_X,MovementAxisLeft_Y X Y_axis2d": "MovementAxisLeft",
+			"/actions/main/in/GrabAxisLeft axis": "GrabAxisLeft",
+			"/actions/main/in/TriggerAxisLeft axis": "TriggerAxisLeft",
+			"/actions/main/in/TriggerAxisRight axis": "TriggerAxisRight",
+			"/actions/main/in/GrabAxisRight axis": "GrabAxisRight",
+			"/actions/main/in/SpectatorYaw axis": "SpectatorYaw",
+			"/actions/main/in/SpectatorPitch axis": "SpectatorPitch",
+			"/actions/main/in/SpectatorFOV axis": "SpectatorFOV",
+			"/actions/main/in/SpectatorMoveForward axis": "SpectatorMoveForward",
+			"/actions/main/in/SpectatorMoveRight axis": "SpectatorMoveRight",
+			"/actions/main/in/SpectatorMoveUp axis": "SpectatorMoveUp",
+			"/actions/main/in/MovementAxisRight_X,MovementAxisRight_Y X Y_axis2d": "MovementAxisRight",
+			"/actions/main/in/MovementAxisRight_Y axis": "MovementAxisRight_Y",
+			"/actions/main": "Main Game Actions"
+		}
+	]
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/vive.json b/Config/SteamVRBindings/vive.json
new file mode 100644
index 0000000..c8bd16d
--- /dev/null
+++ b/Config/SteamVRBindings/vive.json
@@ -0,0 +1,13 @@
+{
+	"name": "Default bindings for Vive Headset",
+	"controller_type": "vive",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"sources": []
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/vive_controller.json b/Config/SteamVRBindings/vive_controller.json
new file mode 100644
index 0000000..b3900ec
--- /dev/null
+++ b/Config/SteamVRBindings/vive_controller.json
@@ -0,0 +1,188 @@
+{
+	"name": "Default bindings for Vive",
+	"controller_type": "vive_controller",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"sources": [
+				{
+					"mode": "trigger",
+					"path": "/user/hand/right/input/trigger",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/Click"
+						}
+					}
+				},
+				{
+					"mode": "button",
+					"path": "/user/hand/left/input/grip",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/GrabLeft"
+						}
+					}
+				},
+				{
+					"mode": "button",
+					"path": "/user/hand/right/input/grip",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/GrabRight"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/left/input/trigger",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/TriggerLeft"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/right/input/trigger",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/TriggerRight"
+						}
+					}
+				},
+				{
+					"mode": "button",
+					"path": "/user/hand/left/input/application_menu",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/MenuToggleLeft"
+						}
+					}
+				},
+				{
+					"mode": "button",
+					"path": "/user/hand/right/input/application_menu",
+					"inputs":
+					{
+						"click":
+						{
+							"output": "/actions/main/in/MenuToggleRight"
+						}
+					}
+				},
+				{
+					"mode": "trackpad",
+					"path": "/user/hand/left/input/trackpad",
+					"inputs":
+					{
+						"position":
+						{
+							"output": "/actions/main/in/MovementAxisLeft_X,MovementAxisLeft_Y X Y_axis2d"
+						}
+					}
+				},
+				{
+					"mode": "scalar_constant",
+					"path": "/user/hand/left/input/grip",
+					"inputs":
+					{
+						"value":
+						{
+							"output": "/actions/main/in/GrabAxisLeft axis"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/left/input/trigger",
+					"inputs":
+					{
+						"pull":
+						{
+							"output": "/actions/main/in/TriggerAxisLeft axis"
+						}
+					}
+				},
+				{
+					"mode": "trigger",
+					"path": "/user/hand/right/input/trigger",
+					"inputs":
+					{
+						"pull":
+						{
+							"output": "/actions/main/in/TriggerAxisRight axis"
+						}
+					}
+				},
+				{
+					"mode": "scalar_constant",
+					"path": "/user/hand/right/input/grip",
+					"inputs":
+					{
+						"value":
+						{
+							"output": "/actions/main/in/GrabAxisRight axis"
+						}
+					}
+				},
+				{
+					"mode": "trackpad",
+					"path": "/user/hand/right/input/trackpad",
+					"inputs":
+					{
+						"position":
+						{
+							"output": "/actions/main/in/MovementAxisRight_X,MovementAxisRight_Y X Y_axis2d"
+						}
+					}
+				}
+			],
+			"poses": [
+				{
+					"output": "/actions/main/in/controllerleft",
+					"path": "/user/hand/left/pose/raw",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/controllerright",
+					"path": "/user/hand/right/pose/raw"
+				}
+			],
+			"skeleton": [
+				{
+					"output": "/actions/main/in/skeletonleft",
+					"path": "/user/hand/left/input/skeleton/left"
+				},
+				{
+					"output": "/actions/main/in/skeletonright",
+					"path": "/user/hand/right/input/skeleton/right"
+				}
+			],
+			"haptics": [
+				{
+					"output": "/actions/main/out/vibrateleft",
+					"path": "/user/hand/left/output/haptic"
+				},
+				{
+					"output": "/actions/main/out/vibrateright",
+					"path": "/user/hand/right/output/haptic"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/vive_cosmos_controller.json b/Config/SteamVRBindings/vive_cosmos_controller.json
new file mode 100644
index 0000000..5de1740
--- /dev/null
+++ b/Config/SteamVRBindings/vive_cosmos_controller.json
@@ -0,0 +1,44 @@
+{
+	"name": "Default bindings for Cosmos",
+	"controller_type": "vive_cosmos_controller",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"sources": [],
+			"poses": [
+				{
+					"output": "/actions/main/in/controllerleft",
+					"path": "/user/hand/left/pose/raw",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/controllerright",
+					"path": "/user/hand/right/pose/raw"
+				}
+			],
+			"skeleton": [
+				{
+					"output": "/actions/main/in/skeletonleft",
+					"path": "/user/hand/left/input/skeleton/left"
+				},
+				{
+					"output": "/actions/main/in/skeletonright",
+					"path": "/user/hand/right/input/skeleton/right"
+				}
+			],
+			"haptics": [
+				{
+					"output": "/actions/main/out/vibrateleft",
+					"path": "/user/hand/left/output/haptic"
+				},
+				{
+					"output": "/actions/main/out/vibrateright",
+					"path": "/user/hand/right/output/haptic"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/vive_pro.json b/Config/SteamVRBindings/vive_pro.json
new file mode 100644
index 0000000..6a5003b
--- /dev/null
+++ b/Config/SteamVRBindings/vive_pro.json
@@ -0,0 +1,13 @@
+{
+	"name": "Default bindings for Vive Pro Headset",
+	"controller_type": "vive_pro",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"sources": []
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/vive_tracker.json b/Config/SteamVRBindings/vive_tracker.json
new file mode 100644
index 0000000..94e90d8
--- /dev/null
+++ b/Config/SteamVRBindings/vive_tracker.json
@@ -0,0 +1,64 @@
+{
+	"name": "Default bindings for Vive Tracker",
+	"controller_type": "vive_tracker",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"poses": [
+				{
+					"output": "/actions/main/in/tracker_handed_pose_left",
+					"path": "/user/hand/left/pose/raw",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/tracker_handed_pose_right",
+					"path": "/user/hand/right/pose/raw",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/tracker_handed_back_left",
+					"path": "/user/hand/left/pose/back",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/tracker_handed_back_right",
+					"path": "/user/hand/right/pose/back",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/tracker_handed_front_left",
+					"path": "/user/hand/left/pose/front",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/tracker_handed_front_right",
+					"path": "/actions/main/in/tracker_handed_front_right",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/tracker_handed_frontr_left",
+					"path": "/user/hand/left/pose/front_rolled",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/tracker_handed_frontr_right",
+					"path": "/user/hand/right/pose/front_rolled",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/tracker_handed_grip_left",
+					"path": "/user/hand/left/pose/pistol",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/tracker_handed_grip_right",
+					"path": "/user/hand/right/pose/pistol",
+					"requirement": "optional"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/vive_tracker_camera.json b/Config/SteamVRBindings/vive_tracker_camera.json
new file mode 100644
index 0000000..5172af9
--- /dev/null
+++ b/Config/SteamVRBindings/vive_tracker_camera.json
@@ -0,0 +1,19 @@
+{
+	"name": "Default bindings for Vive Tracker (Camera)",
+	"controller_type": "vive_tracker_camera",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"poses": [
+				{
+					"output": "/actions/main/in/tracker_camera",
+					"path": "/user/camera/pose/raw",
+					"requirement": "optional"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/vive_tracker_chest.json b/Config/SteamVRBindings/vive_tracker_chest.json
new file mode 100644
index 0000000..b5c0d54
--- /dev/null
+++ b/Config/SteamVRBindings/vive_tracker_chest.json
@@ -0,0 +1,19 @@
+{
+	"name": "Default bindings for Vive Tracker (Chest)",
+	"controller_type": "vive_tracker_chest",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"poses": [
+				{
+					"output": "/actions/main/in/tracker_chest",
+					"path": "/user/chest/pose/raw",
+					"requirement": "optional"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/vive_tracker_handed.json b/Config/SteamVRBindings/vive_tracker_handed.json
new file mode 100644
index 0000000..b2c91db
--- /dev/null
+++ b/Config/SteamVRBindings/vive_tracker_handed.json
@@ -0,0 +1,64 @@
+{
+	"name": "Default bindings for Vive Tracker (Handed)",
+	"controller_type": "vive_tracker_handed",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"poses": [
+				{
+					"output": "/actions/main/in/tracker_handed_pose_left",
+					"path": "/user/hand/left/pose/raw",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/tracker_handed_pose_right",
+					"path": "/user/hand/right/pose/raw",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/tracker_handed_back_left",
+					"path": "/user/hand/left/pose/back",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/tracker_handed_back_right",
+					"path": "/user/hand/right/pose/back",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/tracker_handed_front_left",
+					"path": "/user/hand/left/pose/front",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/tracker_handed_front_right",
+					"path": "/actions/main/in/tracker_handed_front_right",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/tracker_handed_frontr_left",
+					"path": "/user/hand/left/pose/front_rolled",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/tracker_handed_frontr_right",
+					"path": "/user/hand/right/pose/front_rolled",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/tracker_handed_grip_left",
+					"path": "/user/hand/left/pose/pistol",
+					"requirement": "optional"
+				},
+				{
+					"output": "/actions/main/in/tracker_handed_grip_right",
+					"path": "/user/hand/right/pose/pistol",
+					"requirement": "optional"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/vive_tracker_keyboard.json b/Config/SteamVRBindings/vive_tracker_keyboard.json
new file mode 100644
index 0000000..8907ce4
--- /dev/null
+++ b/Config/SteamVRBindings/vive_tracker_keyboard.json
@@ -0,0 +1,19 @@
+{
+	"name": "Default bindings for Vive Tracker (Keyboard)",
+	"controller_type": "vive_tracker_keyboard",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"poses": [
+				{
+					"output": "/actions/main/in/tracker_keyboard",
+					"path": "/user/keyboard/pose/raw",
+					"requirement": "optional"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/vive_tracker_left_elbow.json b/Config/SteamVRBindings/vive_tracker_left_elbow.json
new file mode 100644
index 0000000..750f4c9
--- /dev/null
+++ b/Config/SteamVRBindings/vive_tracker_left_elbow.json
@@ -0,0 +1,19 @@
+{
+	"name": "Default bindings for Vive Tracker (Left Elbow)",
+	"controller_type": "vive_tracker_left_elbow",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"poses": [
+				{
+					"output": "/actions/main/in/tracker_elbow_left",
+					"path": "/user/elbow/left/pose/raw",
+					"requirement": "optional"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/vive_tracker_left_foot.json b/Config/SteamVRBindings/vive_tracker_left_foot.json
new file mode 100644
index 0000000..c489bb3
--- /dev/null
+++ b/Config/SteamVRBindings/vive_tracker_left_foot.json
@@ -0,0 +1,19 @@
+{
+	"name": "Default bindings for Vive Tracker (Left Foot)",
+	"controller_type": "vive_tracker_left_foot",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"poses": [
+				{
+					"output": "/actions/main/in/tracker_foot_left",
+					"path": "/user/foot/left/pose/raw",
+					"requirement": "optional"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/vive_tracker_left_knee.json b/Config/SteamVRBindings/vive_tracker_left_knee.json
new file mode 100644
index 0000000..b72c004
--- /dev/null
+++ b/Config/SteamVRBindings/vive_tracker_left_knee.json
@@ -0,0 +1,19 @@
+{
+	"name": "Default bindings for Vive Tracker (Left knee)",
+	"controller_type": "vive_tracker_left_knee",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"poses": [
+				{
+					"output": "/actions/main/in/tracker_knee_left",
+					"path": "/user/knee/left/pose/raw",
+					"requirement": "optional"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/vive_tracker_left_shoulder.json b/Config/SteamVRBindings/vive_tracker_left_shoulder.json
new file mode 100644
index 0000000..14ded33
--- /dev/null
+++ b/Config/SteamVRBindings/vive_tracker_left_shoulder.json
@@ -0,0 +1,19 @@
+{
+	"name": "Default bindings for Vive Tracker (Left Shoulder)",
+	"controller_type": "vive_tracker_left_shoulder",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"poses": [
+				{
+					"output": "/actions/main/in/tracker_shoulder_left",
+					"path": "/user/shoulder/left/pose/raw",
+					"requirement": "optional"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/vive_tracker_right_elbow.json b/Config/SteamVRBindings/vive_tracker_right_elbow.json
new file mode 100644
index 0000000..68fb6db
--- /dev/null
+++ b/Config/SteamVRBindings/vive_tracker_right_elbow.json
@@ -0,0 +1,19 @@
+{
+	"name": "Default bindings for Vive Tracker (Right Elbow)",
+	"controller_type": "vive_tracker_right_elbow",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"poses": [
+				{
+					"output": "/actions/main/in/tracker_elbow_right",
+					"path": "/user/elbow/right/pose/raw",
+					"requirement": "optional"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/vive_tracker_right_foot.json b/Config/SteamVRBindings/vive_tracker_right_foot.json
new file mode 100644
index 0000000..7e1e590
--- /dev/null
+++ b/Config/SteamVRBindings/vive_tracker_right_foot.json
@@ -0,0 +1,19 @@
+{
+	"name": "Default bindings for Vive Tracker (Right Foot)",
+	"controller_type": "vive_tracker_right_foot",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"poses": [
+				{
+					"output": "/actions/main/in/tracker_foot_right",
+					"path": "/user/foot/right/pose/raw",
+					"requirement": "optional"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/vive_tracker_right_knee.json b/Config/SteamVRBindings/vive_tracker_right_knee.json
new file mode 100644
index 0000000..a2c98de
--- /dev/null
+++ b/Config/SteamVRBindings/vive_tracker_right_knee.json
@@ -0,0 +1,19 @@
+{
+	"name": "Default bindings for Vive Tracker (Right Knee)",
+	"controller_type": "vive_tracker_right_knee",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"poses": [
+				{
+					"output": "/actions/main/in/tracker_knee_right",
+					"path": "/user/knee/right/pose/raw",
+					"requirement": "optional"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/vive_tracker_right_shoulder.json b/Config/SteamVRBindings/vive_tracker_right_shoulder.json
new file mode 100644
index 0000000..e65583b
--- /dev/null
+++ b/Config/SteamVRBindings/vive_tracker_right_shoulder.json
@@ -0,0 +1,19 @@
+{
+	"name": "Default bindings for Vive Tracker (Right Shoulder)",
+	"controller_type": "vive_tracker_right_shoulder",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"poses": [
+				{
+					"output": "/actions/main/in/tracker_shoulder_right",
+					"path": "/user/shoulder/right/pose/raw",
+					"requirement": "optional"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/SteamVRBindings/vive_tracker_waist.json b/Config/SteamVRBindings/vive_tracker_waist.json
new file mode 100644
index 0000000..45bb24b
--- /dev/null
+++ b/Config/SteamVRBindings/vive_tracker_waist.json
@@ -0,0 +1,19 @@
+{
+	"name": "Default bindings for Vive Tracker (Waist)",
+	"controller_type": "vive_tracker_waist",
+	"last_edited_by": "UnrealEngine",
+	"bindings":
+	{
+		"/actions/main":
+		{
+			"poses": [
+				{
+					"output": "/actions/main/in/tracker_waist",
+					"path": "/user/waist/pose/raw",
+					"requirement": "optional"
+				}
+			]
+		}
+	},
+	"description": "DasherDemo-18319896"
+}
\ No newline at end of file
diff --git a/Config/steamvr_ue_editor_app.json b/Config/steamvr_ue_editor_app.json
new file mode 100644
index 0000000..8feb86d
--- /dev/null
+++ b/Config/steamvr_ue_editor_app.json
@@ -0,0 +1,18 @@
+{
+	"source": "UE",
+	"applications": [
+		{
+			"app_key": "application.generated.ue.dasherdemo-18319896.ue4editor.exe",
+			"launch_type": "url",
+			"url": "steam://launch/",
+			"action_manifest_path": "C:/Users/vr-admin/Desktop/dasher-demo-project/Config/SteamVRBindings/steamvr_manifest.json",
+			"strings":
+			{
+				"en_us":
+				{
+					"name": "DasherDemo-18319896 [UE Editor]"
+				}
+			}
+		}
+	]
+}
\ No newline at end of file
diff --git a/Content/Assets/SeminarRoom.umap b/Content/Assets/SeminarRoom.umap
index ca6588d..fcf66ce 100644
--- a/Content/Assets/SeminarRoom.umap
+++ b/Content/Assets/SeminarRoom.umap
@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:d605ae259156bb10744253fc6c83adac8f09cdf4ee8f8456adbe41a3e1e7cf50
-size 1001419
+oid sha256:96aa5bcd29fc3b411aed008f7cc91915adb711cda3aeb7928079e25eb1db1203
+size 1001726
diff --git a/DasherDemo.uproject b/DasherDemo.uproject
index f03c287..238df67 100644
--- a/DasherDemo.uproject
+++ b/DasherDemo.uproject
@@ -14,6 +14,48 @@
 		{
 			"Name": "DasherVR",
 			"Enabled": true
+		},
+		{
+			"Name": "OpenXREyeTracker",
+			"Enabled": false,
+			"SupportedTargetPlatforms": [
+				"Win32",
+				"Win64",
+				"Linux",
+				"HoloLens",
+				"Android"
+			]
+		},
+		{
+			"Name": "OpenXRHandTracking",
+			"Enabled": false,
+			"SupportedTargetPlatforms": [
+				"Win32",
+				"Win64",
+				"Linux",
+				"HoloLens",
+				"Android"
+			]
+		},
+		{
+			"Name": "OpenXR",
+			"Enabled": false,
+			"SupportedTargetPlatforms": [
+				"Win32",
+				"Win64",
+				"Linux",
+				"Android",
+				"HoloLens"
+			]
+		},
+		{
+			"Name": "OculusVR",
+			"Enabled": false,
+			"SupportedTargetPlatforms": [
+				"Win32",
+				"Win64",
+				"Android"
+			]
 		}
 	]
 }
\ No newline at end of file
-- 
GitLab