diff --git a/Assets/Gothic-Lab/Scenes/Lab.unity b/Assets/Gothic-Lab/Scenes/Lab.unity index 3b81727b6..e98921661 100644 --- a/Assets/Gothic-Lab/Scenes/Lab.unity +++ b/Assets/Gothic-Lab/Scenes/Lab.unity @@ -2980,6 +2980,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &413353241 MonoBehaviour: m_ObjectHideFlags: 0 @@ -3143,6 +3150,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &428376844 MonoBehaviour: m_ObjectHideFlags: 0 @@ -3362,6 +3376,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &432836813 MonoBehaviour: m_ObjectHideFlags: 0 @@ -4499,6 +4520,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &609399910 MonoBehaviour: m_ObjectHideFlags: 0 @@ -5304,6 +5332,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &695938249 MonoBehaviour: m_ObjectHideFlags: 0 @@ -6999,6 +7034,77 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 38f6bf3d943ac7945842268c9ef1dca6, type: 3} m_Name: m_EditorClassIdentifier: + m_InteractionManager: {fileID: 0} + m_Colliders: [] + m_InteractionLayers: + m_Bits: 1 + m_DistanceCalculationMode: 1 + m_SelectMode: 0 + m_FocusMode: 1 + m_CustomReticle: {fileID: 0} + m_AllowGazeInteraction: 0 + m_AllowGazeSelect: 0 + m_OverrideGazeTimeToSelect: 0 + m_GazeTimeToSelect: 0.5 + m_OverrideTimeToAutoDeselectGaze: 0 + m_TimeToAutoDeselectGaze: 3 + m_AllowGazeAssistance: 0 + m_FirstHoverEntered: + m_PersistentCalls: + m_Calls: [] + m_LastHoverExited: + m_PersistentCalls: + m_Calls: [] + m_HoverEntered: + m_PersistentCalls: + m_Calls: [] + m_HoverExited: + m_PersistentCalls: + m_Calls: [] + m_FirstSelectEntered: + m_PersistentCalls: + m_Calls: [] + m_LastSelectExited: + m_PersistentCalls: + m_Calls: [] + m_SelectEntered: + m_PersistentCalls: + m_Calls: [] + m_SelectExited: + m_PersistentCalls: + m_Calls: [] + m_FirstFocusEntered: + m_PersistentCalls: + m_Calls: [] + m_LastFocusExited: + m_PersistentCalls: + m_Calls: [] + m_FocusEntered: + m_PersistentCalls: + m_Calls: [] + m_FocusExited: + m_PersistentCalls: + m_Calls: [] + m_Activated: + m_PersistentCalls: + m_Calls: [] + m_Deactivated: + m_PersistentCalls: + m_Calls: [] + m_StartingHoverFilters: [] + m_StartingSelectFilters: [] + m_StartingInteractionStrengthFilters: [] + m_AutoFindParentInteractableInHierarchy: 0 + m_ParentInteractableObject: {fileID: 0} + m_TeleportationProvider: {fileID: 0} + m_MatchOrientation: 0 + m_MatchDirectionalInput: 0 + m_TeleportTrigger: 0 + m_FilterSelectionByHitNormal: 0 + m_UpNormalToleranceDegrees: 30 + m_Teleporting: + m_PersistentCalls: + m_Calls: [] --- !u!4 &826442475 Transform: m_ObjectHideFlags: 0 @@ -7502,6 +7608,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &863748300 MonoBehaviour: m_ObjectHideFlags: 0 @@ -7909,6 +8022,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &900567012 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8232,6 +8352,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &906131692 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8783,6 +8910,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &919650703 MonoBehaviour: m_ObjectHideFlags: 0 @@ -9022,6 +9156,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &946990592 MonoBehaviour: m_ObjectHideFlags: 0 @@ -9177,6 +9318,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &948682319 MonoBehaviour: m_ObjectHideFlags: 0 @@ -9768,7 +9916,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8612154590849758022, guid: 144495bf4b5f5354fb56fc074a0fe5a0, type: 3} propertyPath: m_IsActive - value: 1 + value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] @@ -10051,6 +10199,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &1040493464 MonoBehaviour: m_ObjectHideFlags: 0 @@ -10172,6 +10327,10 @@ PrefabInstance: propertyPath: m_Name value: HVR - Player objectReference: {fileID: 0} + - target: {fileID: 778145573255517820, guid: c9aaa67c73a5ed34d8a865ecc7613ca2, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} - target: {fileID: 1317661251346845374, guid: c9aaa67c73a5ed34d8a865ecc7613ca2, type: 3} propertyPath: m_AnchoredPosition.x value: -0.0025939941 @@ -10508,6 +10667,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &1065201294 MonoBehaviour: m_ObjectHideFlags: 0 @@ -10663,6 +10829,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &1093765984 MonoBehaviour: m_ObjectHideFlags: 0 @@ -10955,6 +11128,87 @@ RectTransform: m_CorrespondingSourceObject: {fileID: 893294720952735752, guid: 30a1e77eafe8f644dba70315d5f67504, type: 3} m_PrefabInstance: {fileID: 1120548122} m_PrefabAsset: {fileID: 0} +--- !u!1001 &1122706743 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 778145573255517820, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_Name + value: VR - Player XRI + objectReference: {fileID: 0} + - target: {fileID: 778145573255517820, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1365252485424465809, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_AnchorMax.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1365252485424465809, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_AnchorMax.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3301783518968500612, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_AnchorMax.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3301783518968500612, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_AnchorMax.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3301783518968500612, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_AnchorMin.y + value: 0.048571706 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalPosition.x + value: -20 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalPosition.z + value: -11 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} --- !u!1001 &1125615518 PrefabInstance: m_ObjectHideFlags: 0 @@ -11960,6 +12214,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &1156960609 MonoBehaviour: m_ObjectHideFlags: 0 @@ -12366,6 +12627,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &1220371021 MonoBehaviour: m_ObjectHideFlags: 0 @@ -13809,6 +14077,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &1375500388 MonoBehaviour: m_ObjectHideFlags: 0 @@ -14462,6 +14737,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &1463187705 MonoBehaviour: m_ObjectHideFlags: 0 @@ -14976,6 +15258,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &1548291501 MonoBehaviour: m_ObjectHideFlags: 0 @@ -15234,6 +15523,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!1 &1577728377 GameObject: m_ObjectHideFlags: 0 @@ -16351,6 +16647,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &1696001511 MonoBehaviour: m_ObjectHideFlags: 0 @@ -16506,6 +16809,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &1729331129 MonoBehaviour: m_ObjectHideFlags: 0 @@ -17372,6 +17682,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &1797836663 MonoBehaviour: m_ObjectHideFlags: 0 @@ -18476,6 +18793,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &1915455406 MonoBehaviour: m_ObjectHideFlags: 0 @@ -18631,6 +18955,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &1945234943 MonoBehaviour: m_ObjectHideFlags: 0 @@ -19053,6 +19384,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &2048981433 MonoBehaviour: m_ObjectHideFlags: 0 @@ -19632,6 +19970,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} m_Name: m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 0 + m_CheckFor2DOcclusion: 0 + m_CheckFor3DOcclusion: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 --- !u!114 &2094016709 MonoBehaviour: m_ObjectHideFlags: 0 @@ -20114,6 +20459,7 @@ SceneRoots: - {fileID: 2101890269} - {fileID: 648481967} - {fileID: 1042196316} + - {fileID: 1122706743} - {fileID: 1020358201} - {fileID: 1620998804} - {fileID: 1046231032} diff --git a/Assets/Gothic-VR/Resources/VR/Prefabs/VR - Player XRI.prefab b/Assets/Gothic-VR/Resources/VR/Prefabs/VR - Player XRI.prefab new file mode 100644 index 000000000..e1312af2f --- /dev/null +++ b/Assets/Gothic-VR/Resources/VR/Prefabs/VR - Player XRI.prefab @@ -0,0 +1,2242 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &778145573255517820 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3866233120056885002} + m_Layer: 0 + m_Name: VR - Player XRI + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3866233120056885002 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 778145573255517820} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1361426706454156200} + - {fileID: 5083113002348074586} + - {fileID: 3739056530010303857} + - {fileID: 6497179529087212011} + - {fileID: 6150959287153794973} + - {fileID: 5178568052186272030} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &3580888346999583535 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2998614402320049837} + - component: {fileID: 1435405315088257603} + - component: {fileID: 8165985969289754186} + - component: {fileID: 242655525520869064} + - component: {fileID: 6560536017312742706} + - component: {fileID: 5987075695519224435} + - component: {fileID: 5504711397442723850} + m_Layer: 8 + m_Name: Locomotion + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2998614402320049837 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3580888346999583535} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1361426706454156200} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1435405315088257603 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3580888346999583535} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9b46d3c2f9f9a9849840e47b9ddef1b2, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.XR.Interaction.Toolkit::UnityEngine.XR.Interaction.Toolkit.Locomotion.Gravity.GravityProvider + m_Mediator: {fileID: 3925867730616114923} + m_TransformationPriority: 0 + m_UseGravity: 1 + m_UseLocalSpaceGravity: 1 + m_TerminalVelocity: 20 + m_GravityAccelerationModifier: 1 + m_UpdateCharacterControllerCenterEachFrame: 1 + m_SphereCastRadius: 0.09 + m_SphereCastDistanceBuffer: -0.05 + m_SphereCastLayerMask: + serializedVersion: 2 + m_Bits: 4294967291 + m_SphereCastTriggerInteraction: 1 + m_OnGravityLockChanged: + m_PersistentCalls: + m_Calls: [] + m_OnGroundedChanged: + m_PersistentCalls: + m_Calls: [] +--- !u!114 &8165985969289754186 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3580888346999583535} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 626a4d6723d6ad24b9aebb811ad5a3dd, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.XR.Interaction.Toolkit::UnityEngine.XR.Interaction.Toolkit.Locomotion.Movement.ContinuousMoveProvider + m_Mediator: {fileID: 3925867730616114923} + m_TransformationPriority: 0 + m_MoveSpeed: 1.5 + m_InAirControlModifier: 0.5 + m_EnableStrafe: 1 + m_EnableFly: 0 + m_ForwardSource: {fileID: 3795310480892305868} + m_LeftHandMoveInput: + m_InputSourceMode: 2 + m_InputAction: + m_Name: Left Hand Move + m_Type: 0 + m_ExpectedControlType: Vector2 + m_Id: 5b513761-7539-4b15-8a3a-262a644cb04b + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_InputActionReference: {fileID: -5439901737986614265, guid: 2924cdc729619de4a8f9d4046047a886, type: 3} + m_ObjectReferenceObject: {fileID: 0} + m_ManualValue: {x: 0, y: 0} + m_RightHandMoveInput: + m_InputSourceMode: 0 + m_InputAction: + m_Name: Right Hand Move + m_Type: 0 + m_ExpectedControlType: Vector2 + m_Id: 6a6a7e20-dcc2-49ee-8b63-53a352ddc63f + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_InputActionReference: {fileID: 0} + m_ObjectReferenceObject: {fileID: 0} + m_ManualValue: {x: 0, y: 0} + m_UseGravity: 1 +--- !u!114 &242655525520869064 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3580888346999583535} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e9f365cf844c03449bc8973eead2c3c1, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.XR.Interaction.Toolkit::UnityEngine.XR.Interaction.Toolkit.Locomotion.Turning.SnapTurnProvider + m_Mediator: {fileID: 3925867730616114923} + m_TransformationPriority: 0 + m_TurnAmount: 45 + m_DebounceTime: 0.5 + m_EnableTurnLeftRight: 1 + m_EnableTurnAround: 0 + m_DelayTime: 0 + m_LeftHandTurnInput: + m_InputSourceMode: 0 + m_InputAction: + m_Name: Left Hand Snap Turn + m_Type: 0 + m_ExpectedControlType: Vector2 + m_Id: a609d245-2d87-4316-be90-d48d7d946d18 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_InputActionReference: {fileID: 0} + m_ObjectReferenceObject: {fileID: 0} + m_ManualValue: {x: 0, y: 0} + m_RightHandTurnInput: + m_InputSourceMode: 2 + m_InputAction: + m_Name: Right Hand Snap Turn + m_Type: 0 + m_ExpectedControlType: Vector2 + m_Id: 15bcfb26-5893-4bf4-8da7-51ad2ee325c6 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_InputActionReference: {fileID: -8225591275963638648, guid: 2924cdc729619de4a8f9d4046047a886, type: 3} + m_ObjectReferenceObject: {fileID: 0} + m_ManualValue: {x: 0, y: 0} +--- !u!114 &6560536017312742706 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3580888346999583535} + m_Enabled: 0 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 75b29b6c6428c984a8a73ffc2d58063b, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.XR.Interaction.Toolkit::UnityEngine.XR.Interaction.Toolkit.Locomotion.Turning.ContinuousTurnProvider + m_Mediator: {fileID: 3925867730616114923} + m_TransformationPriority: 0 + m_TurnSpeed: 90 + m_EnableTurnLeftRight: 1 + m_EnableTurnAround: 0 + m_LeftHandTurnInput: + m_InputSourceMode: 0 + m_InputAction: + m_Name: Left Hand Turn + m_Type: 0 + m_ExpectedControlType: Vector2 + m_Id: 53a60a5a-dea0-4e6c-a3ce-16feb5cd2c72 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_InputActionReference: {fileID: 0} + m_ObjectReferenceObject: {fileID: 0} + m_ManualValue: {x: 0, y: 0} + m_RightHandTurnInput: + m_InputSourceMode: 2 + m_InputAction: + m_Name: Right Hand Turn + m_Type: 0 + m_ExpectedControlType: Vector2 + m_Id: 765528b3-4a9f-46e1-8285-1f3cab790d54 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_InputActionReference: {fileID: 5216087425261502227, guid: 2924cdc729619de4a8f9d4046047a886, type: 3} + m_ObjectReferenceObject: {fileID: 0} + m_ManualValue: {x: 0, y: 0} +--- !u!114 &5987075695519224435 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3580888346999583535} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 01f69dc1cb084aa42b2f2f8cd87bc770, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.XR.Interaction.Toolkit::UnityEngine.XR.Interaction.Toolkit.Locomotion.Teleportation.TeleportationProvider + m_Mediator: {fileID: 3925867730616114923} + m_TransformationPriority: 0 + m_DelayTime: 0 +--- !u!114 &5504711397442723850 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3580888346999583535} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e3cd49dc1a38aff4fa00676ddd64cf4e, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.XR.Interaction.Toolkit::UnityEngine.XR.Interaction.Toolkit.Locomotion.Jump.JumpProvider + m_Mediator: {fileID: 3925867730616114923} + m_TransformationPriority: 0 + m_DisableGravityDuringJump: 0 + m_UnlimitedInAirJumps: 0 + m_InAirJumpCount: 0 + m_JumpForgivenessWindow: 0.25 + m_JumpHeight: 0.46 + m_VariableHeightJump: 0 + m_MinJumpHoldTime: 0.1 + m_MaxJumpHoldTime: 0.5 + m_EarlyOutDecelerationSpeed: 0.1 + m_JumpInput: + m_InputSourceMode: 2 + m_InputActionPerformed: + m_Name: Jump + m_Type: 1 + m_ExpectedControlType: + m_Id: 2b86d316-7ad6-4cb1-b169-fe17978f7119 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_InputActionValue: + m_Name: Jump Value + m_Type: 0 + m_ExpectedControlType: Axis + m_Id: 1e99f8ec-2f5e-4385-b2ee-3677187a5504 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_InputActionReferencePerformed: {fileID: 5216976321224679217, guid: 2924cdc729619de4a8f9d4046047a886, type: 3} + m_InputActionReferenceValue: {fileID: 5216976321224679217, guid: 2924cdc729619de4a8f9d4046047a886, type: 3} + m_ObjectReferenceObject: {fileID: 0} + m_ManualPerformed: 0 + m_ManualValue: 0 + m_ManualQueuePerformed: 0 + m_ManualQueueWasPerformedThisFrame: 0 + m_ManualQueueWasCompletedThisFrame: 0 + m_ManualQueueValue: 0 + m_ManualQueueTargetFrame: 0 +--- !u!1 &3942069294043007131 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2704301485295035116} + - component: {fileID: 7612709134508012581} + m_Layer: 8 + m_Name: Left Controller + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2704301485295035116 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3942069294043007131} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 6001075864142468059} + m_Father: {fileID: 7905090655299301591} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &7612709134508012581 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3942069294043007131} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c2fadf230d1919748a9aa21d40f74619, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.InputSystem::UnityEngine.InputSystem.XR.TrackedPoseDriver + m_TrackingType: 0 + m_UpdateType: 0 + m_IgnoreTrackingState: 0 + m_PositionInput: + m_UseReference: 1 + m_Action: + m_Name: Position + m_Type: 0 + m_ExpectedControlType: Vector3 + m_Id: 3261195d-bb7f-4341-bd42-02bb9fcb4de0 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_Reference: {fileID: -3219715897119940502, guid: 2924cdc729619de4a8f9d4046047a886, type: 3} + m_RotationInput: + m_UseReference: 1 + m_Action: + m_Name: Rotation + m_Type: 0 + m_ExpectedControlType: Quaternion + m_Id: 879c46c7-1588-4f0b-886f-e3702319c800 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_Reference: {fileID: -698967360994658447, guid: 2924cdc729619de4a8f9d4046047a886, type: 3} + m_TrackingStateInput: + m_UseReference: 1 + m_Action: + m_Name: Tracking State + m_Type: 0 + m_ExpectedControlType: Integer + m_Id: 91dbf186-0444-4473-a7ef-15690fff63da + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_Reference: {fileID: 6176134782907135114, guid: 2924cdc729619de4a8f9d4046047a886, type: 3} + m_PositionAction: + m_Name: + m_Type: 0 + m_ExpectedControlType: + m_Id: bd0619f9-498d-4b26-a9fe-685b681339cd + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_RotationAction: + m_Name: + m_Type: 0 + m_ExpectedControlType: + m_Id: 91abfd53-b16c-41c6-bc67-7b8002c04e43 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 +--- !u!1 &4282864642912822117 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3795310480892305868} + - component: {fileID: 7212599541473323004} + - component: {fileID: 4746153788034521359} + - component: {fileID: 9185839101923391914} + - component: {fileID: 5460697659480693705} + m_Layer: 8 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3795310480892305868 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4282864642912822117} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 7905090655299301591} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!20 &7212599541473323004 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4282864642912822117} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0.019607844} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.01 + far clip plane: 300 + field of view: 90 + orthographic: 0 + orthographic size: 5 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: 1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!81 &4746153788034521359 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4282864642912822117} + m_Enabled: 1 +--- !u!114 &9185839101923391914 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4282864642912822117} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_RenderShadows: 1 + m_RequiresDepthTextureOption: 2 + m_RequiresOpaqueTextureOption: 2 + m_CameraType: 0 + m_Cameras: [] + m_RendererIndex: -1 + m_VolumeLayerMask: + serializedVersion: 2 + m_Bits: 1 + m_VolumeTrigger: {fileID: 0} + m_VolumeFrameworkUpdateModeOption: 2 + m_RenderPostProcessing: 0 + m_Antialiasing: 0 + m_AntialiasingQuality: 2 + m_StopNaN: 0 + m_Dithering: 0 + m_ClearDepth: 1 + m_AllowXRRendering: 1 + m_AllowHDROutput: 1 + m_UseScreenCoordOverride: 0 + m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0} + m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0} + m_RequiresDepthTexture: 0 + m_RequiresColorTexture: 0 + m_TaaSettings: + m_Quality: 3 + m_FrameInfluence: 0.1 + m_JitterScale: 1 + m_MipBias: 0 + m_VarianceClampScale: 0.9 + m_ContrastAdaptiveSharpening: 0 + m_Version: 2 +--- !u!114 &5460697659480693705 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4282864642912822117} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c2fadf230d1919748a9aa21d40f74619, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.InputSystem::UnityEngine.InputSystem.XR.TrackedPoseDriver + m_TrackingType: 0 + m_UpdateType: 0 + m_IgnoreTrackingState: 0 + m_PositionInput: + m_UseReference: 1 + m_Action: + m_Name: Position + m_Type: 0 + m_ExpectedControlType: Vector3 + m_Id: c84c85b4-ba1a-4f5a-b41f-9635b0bea125 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_Reference: {fileID: -939862505250633605, guid: 2924cdc729619de4a8f9d4046047a886, type: 3} + m_RotationInput: + m_UseReference: 1 + m_Action: + m_Name: Rotation + m_Type: 0 + m_ExpectedControlType: Quaternion + m_Id: 8f927968-160e-4140-8730-c098069ce686 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_Reference: {fileID: -5272768276525813815, guid: 2924cdc729619de4a8f9d4046047a886, type: 3} + m_TrackingStateInput: + m_UseReference: 1 + m_Action: + m_Name: Tracking State + m_Type: 0 + m_ExpectedControlType: Integer + m_Id: f1f148bd-bf77-456e-a6e5-2b3b2dc85001 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_Reference: {fileID: 643526232256856740, guid: 2924cdc729619de4a8f9d4046047a886, type: 3} + m_PositionAction: + m_Name: + m_Type: 0 + m_ExpectedControlType: + m_Id: 686bb76a-2e83-4aec-a4b7-c902e48e927f + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_RotationAction: + m_Name: + m_Type: 0 + m_ExpectedControlType: + m_Id: 4485d34b-4eaa-4496-a00c-6aad8568ceaf + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 +--- !u!1 &5690067108025510331 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5178568052186272030} + - component: {fileID: 4382114312616386799} + - component: {fileID: 5806260974420883386} + - component: {fileID: 6544727698683918407} + m_Layer: 7 + m_Name: Spectator Camera + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5178568052186272030 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5690067108025510331} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 3866233120056885002} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &4382114312616386799 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5690067108025510331} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a353b6bac7d44c2993ecd140f26bfb90, type: 3} + m_Name: + m_EditorClassIdentifier: + _vrCameraTransform: {fileID: 3795310480892305868} + _spectatorCamera: {fileID: 5806260974420883386} +--- !u!20 &5806260974420883386 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5690067108025510331} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0, g: 0, b: 0, a: 1} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.01 + far clip plane: 300 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: 10 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!114 &6544727698683918407 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5690067108025510331} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_RenderShadows: 1 + m_RequiresDepthTextureOption: 2 + m_RequiresOpaqueTextureOption: 2 + m_CameraType: 0 + m_Cameras: [] + m_RendererIndex: -1 + m_VolumeLayerMask: + serializedVersion: 2 + m_Bits: 1 + m_VolumeTrigger: {fileID: 0} + m_VolumeFrameworkUpdateModeOption: 2 + m_RenderPostProcessing: 0 + m_Antialiasing: 0 + m_AntialiasingQuality: 2 + m_StopNaN: 0 + m_Dithering: 0 + m_ClearDepth: 1 + m_AllowXRRendering: 0 + m_AllowHDROutput: 1 + m_UseScreenCoordOverride: 0 + m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0} + m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0} + m_RequiresDepthTexture: 0 + m_RequiresColorTexture: 0 + m_TaaSettings: + m_Quality: 3 + m_FrameInfluence: 0.1 + m_JitterScale: 1 + m_MipBias: 0 + m_VarianceClampScale: 0.9 + m_ContrastAdaptiveSharpening: 0 + m_Version: 2 +--- !u!1 &6995813130144571658 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7905090655299301591} + m_Layer: 8 + m_Name: Camera Offset + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7905090655299301591 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6995813130144571658} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 3795310480892305868} + - {fileID: 2704301485295035116} + - {fileID: 4055452250844519603} + m_Father: {fileID: 1361426706454156200} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &7701317328730321625 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4055452250844519603} + - component: {fileID: 3829692317711544481} + m_Layer: 8 + m_Name: Right Controller + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4055452250844519603 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7701317328730321625} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 7905090655299301591} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &3829692317711544481 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7701317328730321625} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c2fadf230d1919748a9aa21d40f74619, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.InputSystem::UnityEngine.InputSystem.XR.TrackedPoseDriver + m_TrackingType: 0 + m_UpdateType: 0 + m_IgnoreTrackingState: 0 + m_PositionInput: + m_UseReference: 1 + m_Action: + m_Name: Position + m_Type: 0 + m_ExpectedControlType: Vector3 + m_Id: 5207b00a-1067-47a9-a16e-abb8872cc3a8 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_Reference: {fileID: 8613212409439040078, guid: 2924cdc729619de4a8f9d4046047a886, type: 3} + m_RotationInput: + m_UseReference: 1 + m_Action: + m_Name: Rotation + m_Type: 0 + m_ExpectedControlType: Quaternion + m_Id: bf752fdc-837f-474a-b585-7aeadcc294b4 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_Reference: {fileID: 200339776960576950, guid: 2924cdc729619de4a8f9d4046047a886, type: 3} + m_TrackingStateInput: + m_UseReference: 1 + m_Action: + m_Name: Tracking State + m_Type: 0 + m_ExpectedControlType: Integer + m_Id: ee416524-c4a8-4471-bd59-74394f1fd56b + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_Reference: {fileID: 5185144548463573753, guid: 2924cdc729619de4a8f9d4046047a886, type: 3} + m_PositionAction: + m_Name: + m_Type: 0 + m_ExpectedControlType: + m_Id: 8feb118d-1789-41b9-8984-98c2b4b4c1b1 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_RotationAction: + m_Name: + m_Type: 0 + m_ExpectedControlType: + m_Id: 34cc32ce-9170-4561-8aff-d9f4b53e9c33 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 +--- !u!1 &8467730262558146822 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1361426706454156200} + - component: {fileID: 3989580456932340501} + - component: {fileID: 471137428327096532} + - component: {fileID: 8567400073603973995} + - component: {fileID: 6562940717087433017} + - component: {fileID: 3560415404040107759} + - component: {fileID: 5238562897225684341} + - component: {fileID: 6245187427461270548} + - component: {fileID: 2997810277323268843} + - component: {fileID: 2703091364652657320} + - component: {fileID: 5424874057453399272} + - component: {fileID: 3925867730616114923} + - component: {fileID: 2157509798102132288} + - component: {fileID: 1622587261020372793} + m_Layer: 8 + m_Name: XR Origin + m_TagString: Player + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1361426706454156200 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8467730262558146822} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 7905090655299301591} + - {fileID: 2998614402320049837} + m_Father: {fileID: 3866233120056885002} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!143 &3989580456932340501 +CharacterController: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8467730262558146822} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Height: 1.5 + m_Radius: 0.1 + m_SlopeLimit: 55 + m_StepOffset: 0.5 + m_SkinWidth: 0.01 + m_MinMoveDistance: 0 + m_Center: {x: 0, y: 0.75, z: 0} +--- !u!82 &471137428327096532 +AudioSource: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8467730262558146822} + m_Enabled: 1 + serializedVersion: 4 + OutputAudioMixerGroup: {fileID: 0} + m_audioClip: {fileID: 0} + m_Resource: {fileID: 0} + m_PlayOnAwake: 1 + m_Volume: 1 + m_Pitch: 1 + Loop: 0 + Mute: 0 + Spatialize: 0 + SpatializePostEffects: 0 + Priority: 128 + DopplerLevel: 1 + MinDistance: 1 + MaxDistance: 500 + Pan2D: 0 + rolloffMode: 0 + BypassEffects: 0 + BypassListenerEffects: 0 + BypassReverbZones: 0 + rolloffCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + panLevelCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + spreadCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + reverbZoneMixCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 +--- !u!114 &8567400073603973995 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8467730262558146822} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e8f218a92500441fbbf8345ea50c5594, type: 3} + m_Name: + m_EditorClassIdentifier: + _isHero: 1 + NpcSound: {fileID: 0} + Bip01: {fileID: 0} + ColliderRootMotion: {fileID: 0} + AiHandler: {fileID: 0} + Animation: {fileID: 0} + AnimationSystem: {fileID: 0} + AnimationHeadHandler: {fileID: 0} +--- !u!114 &6562940717087433017 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8467730262558146822} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ae71b0be15a534849b5249a3e671a43f, type: 3} + m_Name: + m_EditorClassIdentifier: Gothic.VR::Gothic.VR.Adapters.Player.VRPlayer + MenuHandler: {fileID: 2192772470500779476} + Cinema: {fileID: 8331837288116874071} + SwimDiveStepHeight: 1 + IsMenuButtonEnabled: 1 +--- !u!114 &3560415404040107759 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8467730262558146822} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4722222ff5b643658bd19ac210dbf94b, type: 3} + m_Name: + m_EditorClassIdentifier: + _waterBobAmplitude: 0.001 + _waterBobFrequency: 2.5 + _swimStartDiveVerticalVelocity: -1 + _swimHandMovementMultiplier: 4 + _swimVelocityFadeRate: 0.25 + _diveHandMovementMultiplier: 2.5 + _diveVelocityFadeRate: 0.25 + _debugStartDive: 0 +--- !u!114 &5238562897225684341 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8467730262558146822} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 99f0a46232384db0a4a79f2b55bacf2e, type: 3} + m_Name: + m_EditorClassIdentifier: + _mass2HOneHanded: 5 + _mass1HAnyHand2HTwoHanded: 1 + _linearDamping2HOneHanded: 0 + _linearDamping1HAnyHand2HTwoHanded: 0 + _angularDamping2HOneHanded: 0 + _angularDamping1HAnyHand2HTwoHanded: 0 + _weaponVelocityThreshold: 2 + _weaponVelocityDropPercentage: 0.1 + _velocityCheckDuration: 0.5 + _velocitySampleCount: 5 +--- !u!114 &6245187427461270548 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8467730262558146822} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0e83c537278f4d8ba1c1c30f5e029f15, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &2997810277323268843 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8467730262558146822} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6d2e7e4cb78b75f4c8e7f40655bbc968, type: 3} + m_Name: + m_EditorClassIdentifier: Gothic.VR::Gothic.VR.Adapters.Player.VRHandsOnTop + _handRenderers: [] + _onTopMaterial: {fileID: 2100000, guid: 0733e67100959404abf850e406e5cb05, type: 2} + _onTopRenderQueue: 3950 +--- !u!114 &2703091364652657320 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8467730262558146822} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e0cb9aa70a22847b5925ee5f067c10a9, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.XR.CoreUtils::Unity.XR.CoreUtils.XROrigin + m_Camera: {fileID: 7212599541473323004} + m_OriginBaseGameObject: {fileID: 8467730262558146822} + m_CameraFloorOffsetObject: {fileID: 6995813130144571658} + m_RequestedTrackingOriginMode: 2 + m_CameraYOffset: 0 +--- !u!114 &5424874057453399272 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8467730262558146822} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6a26c941eb8a46f7b6d00416227ab8c0, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.XR.Interaction.Toolkit::UnityEngine.XR.Interaction.Toolkit.Locomotion.XRBodyTransformer + m_XROrigin: {fileID: 2703091364652657320} + m_BodyPositionEvaluatorObject: {fileID: 0} + m_ConstrainedBodyManipulatorObject: {fileID: 0} + m_UseCharacterControllerIfExists: 1 +--- !u!114 &3925867730616114923 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8467730262558146822} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6fa7b4195685c3846be746c74f0ab2f8, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.XR.Interaction.Toolkit::UnityEngine.XR.Interaction.Toolkit.Locomotion.LocomotionMediator +--- !u!114 &2157509798102132288 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8467730262558146822} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 017c5e3933235514c9520e1dace2a4b2, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.XR.Interaction.Toolkit::UnityEngine.XR.Interaction.Toolkit.Inputs.InputActionManager + m_ActionAssets: + - {fileID: -944628639613478452, guid: 2924cdc729619de4a8f9d4046047a886, type: 3} +--- !u!114 &1622587261020372793 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8467730262558146822} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 28827cc1c678f554ebcf99ba66c6af1e, type: 3} + m_Name: + m_EditorClassIdentifier: Gothic.VR::Gothic.VR.Interaction.Backends.Xri.XriRig + _origin: {fileID: 2703091364652657320} + _characterController: {fileID: 3989580456932340501} + _camera: {fileID: 7212599541473323004} + _leftController: {fileID: 2704301485295035116} + _rightController: {fileID: 4055452250844519603} + _moveProvider: {fileID: 8165985969289754186} + _snapTurnProvider: {fileID: 242655525520869064} + _continuousTurnProvider: {fileID: 6560536017312742706} + _teleportationProvider: {fileID: 5987075695519224435} + _gravityProvider: {fileID: 1435405315088257603} + _jumpProvider: {fileID: 5504711397442723850} + _moveSpeed: 1.5 + _runSpeed: 3.5 + _sprintStopThreshold: 0.1 + _gravity: 9.81 + _maxFallSpeed: 20 + _eyeHeight: 1.66 + _crouchHeight: 0.7 + _crouchSpeed: 1.5 + _minCalibrationHeight: 0.5 +--- !u!1001 &74078208933106267 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 3866233120056885002} + m_Modifications: + - target: {fileID: 6078651533031837126, guid: a36530f2971b4164aa6624c0e1d5d427, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6078651533031837126, guid: a36530f2971b4164aa6624c0e1d5d427, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6078651533031837126, guid: a36530f2971b4164aa6624c0e1d5d427, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6078651533031837126, guid: a36530f2971b4164aa6624c0e1d5d427, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6078651533031837126, guid: a36530f2971b4164aa6624c0e1d5d427, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6078651533031837126, guid: a36530f2971b4164aa6624c0e1d5d427, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6078651533031837126, guid: a36530f2971b4164aa6624c0e1d5d427, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6078651533031837126, guid: a36530f2971b4164aa6624c0e1d5d427, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6078651533031837126, guid: a36530f2971b4164aa6624c0e1d5d427, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6078651533031837126, guid: a36530f2971b4164aa6624c0e1d5d427, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8552309156735478297, guid: a36530f2971b4164aa6624c0e1d5d427, type: 3} + propertyPath: m_Name + value: Cinema + objectReference: {fileID: 0} + - target: {fileID: 8552309156735478297, guid: a36530f2971b4164aa6624c0e1d5d427, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: a36530f2971b4164aa6624c0e1d5d427, type: 3} +--- !u!4 &6150959287153794973 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 6078651533031837126, guid: a36530f2971b4164aa6624c0e1d5d427, type: 3} + m_PrefabInstance: {fileID: 74078208933106267} + m_PrefabAsset: {fileID: 0} +--- !u!114 &8331837288116874071 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 8261726400638187788, guid: a36530f2971b4164aa6624c0e1d5d427, type: 3} + m_PrefabInstance: {fileID: 74078208933106267} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 323528e17db46144a9f40735cfe2e794, type: 3} + m_Name: + m_EditorClassIdentifier: Gothic.VR::Gothic.VR.Adapters.UI.VRCinema +--- !u!1001 &389902283970083402 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 6497179529087212011} + m_Modifications: + - target: {fileID: 2282871596405899006, guid: cd095a3981bb372429f6df026b1dec73, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: cd095a3981bb372429f6df026b1dec73, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: cd095a3981bb372429f6df026b1dec73, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: cd095a3981bb372429f6df026b1dec73, type: 3} + propertyPath: m_LocalPosition.x + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: cd095a3981bb372429f6df026b1dec73, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: cd095a3981bb372429f6df026b1dec73, type: 3} + propertyPath: m_LocalPosition.z + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: cd095a3981bb372429f6df026b1dec73, type: 3} + propertyPath: m_LocalRotation.w + value: 0.98078537 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: cd095a3981bb372429f6df026b1dec73, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: cd095a3981bb372429f6df026b1dec73, type: 3} + propertyPath: m_LocalRotation.y + value: 0.19509031 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: cd095a3981bb372429f6df026b1dec73, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: cd095a3981bb372429f6df026b1dec73, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: cd095a3981bb372429f6df026b1dec73, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 22.5 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: cd095a3981bb372429f6df026b1dec73, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: cd095a3981bb372429f6df026b1dec73, type: 3} + propertyPath: m_ConstrainProportionsScale + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8412591900964177680, guid: cd095a3981bb372429f6df026b1dec73, type: 3} + propertyPath: m_Name + value: QuestMenu + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 2282871596405899006, guid: cd095a3981bb372429f6df026b1dec73, type: 3} + insertIndex: 0 + addedObject: {fileID: 911066974270464583} + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: cd095a3981bb372429f6df026b1dec73, type: 3} +--- !u!4 &1929605044844119220 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2282871596405899006, guid: cd095a3981bb372429f6df026b1dec73, type: 3} + m_PrefabInstance: {fileID: 389902283970083402} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1372453668343731003 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 1929605044844119220} + m_Modifications: + - target: {fileID: 1879303798920566507, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_Name + value: Tutorials + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} +--- !u!4 &911066974270464583 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + m_PrefabInstance: {fileID: 1372453668343731003} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &4370666150582550914 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 3866233120056885002} + m_Modifications: + - target: {fileID: 6438015706988437683, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + propertyPath: m_Name + value: MenuHandler + objectReference: {fileID: 0} + - target: {fileID: 6438015706988437683, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7389606469834037353, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + propertyPath: m_LocalScale.x + value: 0.35 + objectReference: {fileID: 0} + - target: {fileID: 7389606469834037353, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + propertyPath: m_LocalScale.y + value: 0.35 + objectReference: {fileID: 0} + - target: {fileID: 7389606469834037353, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7389606469834037353, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7389606469834037353, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7389606469834037353, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7389606469834037353, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + propertyPath: m_LocalRotation.w + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7389606469834037353, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7389606469834037353, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + propertyPath: m_LocalRotation.y + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 7389606469834037353, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7389606469834037353, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7389606469834037353, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -180 + objectReference: {fileID: 0} + - target: {fileID: 7389606469834037353, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 7389606469834037353, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + insertIndex: -1 + addedObject: {fileID: 6971875092960890840} + - targetCorrespondingSourceObject: {fileID: 7389606469834037353, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + insertIndex: -1 + addedObject: {fileID: 5039203737416974477} + - targetCorrespondingSourceObject: {fileID: 7389606469834037353, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + insertIndex: -1 + addedObject: {fileID: 1929605044844119220} + - targetCorrespondingSourceObject: {fileID: 7389606469834037353, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + insertIndex: -1 + addedObject: {fileID: 5693358733919242621} + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 6438015706988437683, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + insertIndex: -1 + addedObject: {fileID: 7124583920175634411} + - targetCorrespondingSourceObject: {fileID: 6438015706988437683, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + insertIndex: -1 + addedObject: {fileID: 843678819706251389} + m_SourcePrefab: {fileID: 100100000, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} +--- !u!114 &2192772470500779476 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 2506802144082420822, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + m_PrefabInstance: {fileID: 4370666150582550914} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7349826874247373105} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9305aaeea2e2485cb173e2cef57ad482, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!4 &6497179529087212011 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 7389606469834037353, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + m_PrefabInstance: {fileID: 4370666150582550914} + m_PrefabAsset: {fileID: 0} +--- !u!1 &7349826874247373105 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 6438015706988437683, guid: 962bda2b335a56f48a6f7159a9e824d8, type: 3} + m_PrefabInstance: {fileID: 4370666150582550914} + m_PrefabAsset: {fileID: 0} +--- !u!114 &7124583920175634411 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7349826874247373105} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0b02e7af663f2ba4083705e7617061ba, type: 3} + m_Name: + m_EditorClassIdentifier: Gothic.VR::Gothic.VR.Adapters.UI.VRUiOnTop + _backgroundMaterial: {fileID: 2100000, guid: 48439b88586731342a3aa9860552fb48, type: 2} + _textMaterial: {fileID: 2100000, guid: c4170a11c4f4d85439112ebdae034112, type: 2} + _meshMaterial: {fileID: 2100000, guid: 487fd66192ac47c6b39bfffdd445f5a2, type: 2} + _isAppliedAutomatically: 1 + _maxVisibleDistance: 0 + _canvasGroup: {fileID: 0} +--- !u!114 &843678819706251389 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7349826874247373105} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5c3b82e67b17c5e418f879278f9fe524, type: 3} + m_Name: + m_EditorClassIdentifier: Gothic.VR::Gothic.VR.Adapters.UI.VRPlaceInFrontOfCamera + _distance: 2.5 +--- !u!1001 &4793340960506667346 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 6497179529087212011} + m_Modifications: + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_AnchorMax.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_AnchorMax.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_AnchorMin.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_AnchorMin.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_SizeDelta.x + value: 200 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_SizeDelta.y + value: 175 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_LocalScale.x + value: 0.005 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_LocalScale.y + value: 0.005 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_LocalPosition.z + value: -0.2 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_AnchoredPosition.x + value: 2.06 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_AnchoredPosition.y + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 22.5 + objectReference: {fileID: 0} + - target: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5443751599501581721, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: m_Name + value: Gothic-logo + objectReference: {fileID: 0} + - target: {fileID: 6793405629452684711, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + propertyPath: _tutorialHandler + value: + objectReference: {fileID: 4635703751691790106} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} +--- !u!224 &6971875092960890840 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 2469183434187583114, guid: d905c6fd3294c82478f4edf887cac0a9, type: 3} + m_PrefabInstance: {fileID: 4793340960506667346} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &5813227951801890691 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 6497179529087212011} + m_Modifications: + - target: {fileID: 2282871596405899006, guid: 442d7862e66282348b7a8c3c0dffdc95, type: 3} + propertyPath: m_LocalPosition.x + value: -5 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: 442d7862e66282348b7a8c3c0dffdc95, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: 442d7862e66282348b7a8c3c0dffdc95, type: 3} + propertyPath: m_LocalPosition.z + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: 442d7862e66282348b7a8c3c0dffdc95, type: 3} + propertyPath: m_LocalRotation.w + value: 0.98078537 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: 442d7862e66282348b7a8c3c0dffdc95, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: 442d7862e66282348b7a8c3c0dffdc95, type: 3} + propertyPath: m_LocalRotation.y + value: -0.19509031 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: 442d7862e66282348b7a8c3c0dffdc95, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: 442d7862e66282348b7a8c3c0dffdc95, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: 442d7862e66282348b7a8c3c0dffdc95, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -22.5 + objectReference: {fileID: 0} + - target: {fileID: 2282871596405899006, guid: 442d7862e66282348b7a8c3c0dffdc95, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8412591900964177680, guid: 442d7862e66282348b7a8c3c0dffdc95, type: 3} + propertyPath: m_Name + value: StatusMenu + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 442d7862e66282348b7a8c3c0dffdc95, type: 3} +--- !u!4 &5693358733919242621 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2282871596405899006, guid: 442d7862e66282348b7a8c3c0dffdc95, type: 3} + m_PrefabInstance: {fileID: 5813227951801890691} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &6171425951156898325 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 3866233120056885002} + m_Modifications: + - target: {fileID: 7339275886835513150, guid: 3b8af67e66ca2c543a0476bac77da182, type: 3} + propertyPath: m_Name + value: Menu-Dialog + objectReference: {fileID: 0} + - target: {fileID: 7369722077890996068, guid: 3b8af67e66ca2c543a0476bac77da182, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7369722077890996068, guid: 3b8af67e66ca2c543a0476bac77da182, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7369722077890996068, guid: 3b8af67e66ca2c543a0476bac77da182, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7369722077890996068, guid: 3b8af67e66ca2c543a0476bac77da182, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7369722077890996068, guid: 3b8af67e66ca2c543a0476bac77da182, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7369722077890996068, guid: 3b8af67e66ca2c543a0476bac77da182, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7369722077890996068, guid: 3b8af67e66ca2c543a0476bac77da182, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7369722077890996068, guid: 3b8af67e66ca2c543a0476bac77da182, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7369722077890996068, guid: 3b8af67e66ca2c543a0476bac77da182, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7369722077890996068, guid: 3b8af67e66ca2c543a0476bac77da182, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3b8af67e66ca2c543a0476bac77da182, type: 3} +--- !u!4 &3739056530010303857 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 7369722077890996068, guid: 3b8af67e66ca2c543a0476bac77da182, type: 3} + m_PrefabInstance: {fileID: 6171425951156898325} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &6503748551157953009 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 6497179529087212011} + m_Modifications: + - target: {fileID: 1879303798920566507, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_Name + value: Tutorials + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2721688293221894282, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalScale.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 2721688293221894282, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalScale.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 2721688293221894282, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalPosition.z + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 2721688293221894282, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalRotation.w + value: 0.98078537 + objectReference: {fileID: 0} + - target: {fileID: 2721688293221894282, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalRotation.y + value: -0.19509031 + objectReference: {fileID: 0} + - target: {fileID: 2721688293221894282, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_AnchoredPosition.x + value: -5 + objectReference: {fileID: 0} + - target: {fileID: 2721688293221894282, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_AnchoredPosition.y + value: 5.2 + objectReference: {fileID: 0} + - target: {fileID: 2721688293221894282, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -22.5 + objectReference: {fileID: 0} + - target: {fileID: 8641483639200414027, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalScale.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 8641483639200414027, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_LocalScale.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 8641483639200414027, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8641483639200414027, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + propertyPath: m_AnchoredPosition.y + value: 5.2 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} +--- !u!1 &4635703751691790106 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 1879303798920566507, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + m_PrefabInstance: {fileID: 6503748551157953009} + m_PrefabAsset: {fileID: 0} +--- !u!4 &5039203737416974477 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2283093842980008316, guid: a0af29d97abd24d4c8382b6da4017660, type: 3} + m_PrefabInstance: {fileID: 6503748551157953009} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &6859114946436840023 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 2704301485295035116} + m_Modifications: + - target: {fileID: 298446091609037833, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 298446091609037833, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120498, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_Name + value: Menu-MarvinMode + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_AnchorMax.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_AnchorMin.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_SizeDelta.x + value: 750 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_SizeDelta.y + value: 500 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_LocalScale.x + value: 0.00030000004 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_LocalScale.y + value: 0.00030000004 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_LocalPosition.z + value: -0.26460007 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071067 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_LocalRotation.y + value: 0.70710695 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_AnchoredPosition.x + value: -0.028600093 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_AnchoredPosition.y + value: -0.034799993 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: -90 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 90 + objectReference: {fileID: 0} + - target: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2162288150533917344, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_Size + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2162288150533917344, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_Value + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2420633602523777188, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2420633602523777188, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2420633602523777188, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2420633602523777188, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5094430710808868511, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5094430710808868511, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5582560689641485545, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_AnchoredPosition.x + value: -366.49997 + objectReference: {fileID: 0} + - target: {fileID: 5582560689641485545, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_AnchoredPosition.y + value: 166.49922 + objectReference: {fileID: 0} + - target: {fileID: 5603077536188825030, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5603077536188825030, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5603077536188825030, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6272730690859954775, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_Size + value: 0.9514283 + objectReference: {fileID: 0} + - target: {fileID: 6272730690859954775, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_Value + value: 1.000043 + objectReference: {fileID: 0} + - target: {fileID: 8278234239060405203, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8278234239060405203, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8278234239060405203, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 8348fe5825a421c42be0dad392e03669, type: 3} +--- !u!224 &6001075864142468059 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 898575911347120524, guid: 8348fe5825a421c42be0dad392e03669, type: 3} + m_PrefabInstance: {fileID: 6859114946436840023} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &7985553264238736323 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 3866233120056885002} + m_Modifications: + - target: {fileID: 2862573070440368112, guid: b3b86d187a3f5284b919723a7b9b7f55, type: 3} + propertyPath: m_Name + value: Rain + objectReference: {fileID: 0} + - target: {fileID: 2907278319546885529, guid: b3b86d187a3f5284b919723a7b9b7f55, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2907278319546885529, guid: b3b86d187a3f5284b919723a7b9b7f55, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2907278319546885529, guid: b3b86d187a3f5284b919723a7b9b7f55, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2907278319546885529, guid: b3b86d187a3f5284b919723a7b9b7f55, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2907278319546885529, guid: b3b86d187a3f5284b919723a7b9b7f55, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2907278319546885529, guid: b3b86d187a3f5284b919723a7b9b7f55, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2907278319546885529, guid: b3b86d187a3f5284b919723a7b9b7f55, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2907278319546885529, guid: b3b86d187a3f5284b919723a7b9b7f55, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2907278319546885529, guid: b3b86d187a3f5284b919723a7b9b7f55, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2907278319546885529, guid: b3b86d187a3f5284b919723a7b9b7f55, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: b3b86d187a3f5284b919723a7b9b7f55, type: 3} +--- !u!4 &5083113002348074586 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2907278319546885529, guid: b3b86d187a3f5284b919723a7b9b7f55, type: 3} + m_PrefabInstance: {fileID: 7985553264238736323} + m_PrefabAsset: {fileID: 0} diff --git a/Assets/Gothic-VR/Resources/VR/Prefabs/VR - Player XRI.prefab.meta b/Assets/Gothic-VR/Resources/VR/Prefabs/VR - Player XRI.prefab.meta new file mode 100644 index 000000000..cfb064cc9 --- /dev/null +++ b/Assets/Gothic-VR/Resources/VR/Prefabs/VR - Player XRI.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9f1083f28417eca49b52039eb29f75eb +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Gothic-VR/Scenes/VR/Player.unity b/Assets/Gothic-VR/Scenes/VR/Player.unity index d481f8fe2..dc4e7312a 100644 --- a/Assets/Gothic-VR/Scenes/VR/Player.unity +++ b/Assets/Gothic-VR/Scenes/VR/Player.unity @@ -242,6 +242,10 @@ PrefabInstance: propertyPath: m_Name value: HVR - Player objectReference: {fileID: 0} + - target: {fileID: 778145573255517820, guid: c9aaa67c73a5ed34d8a865ecc7613ca2, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} - target: {fileID: 1317661251346845374, guid: c9aaa67c73a5ed34d8a865ecc7613ca2, type: 3} propertyPath: m_AnchoredPosition.x value: -6.9991455 @@ -445,6 +449,87 @@ PrefabInstance: m_AddedGameObjects: [] m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 7d55fa6bfea14d1498e070a53ac806a4, type: 3} +--- !u!1001 &877978168 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 778145573255517820, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_Name + value: VR - Player XRI + objectReference: {fileID: 0} + - target: {fileID: 778145573255517820, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1365252485424465809, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_AnchorMax.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1365252485424465809, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_AnchorMax.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3301783518968500612, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_AnchorMax.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3301783518968500612, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_AnchorMax.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3301783518968500612, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_AnchorMin.y + value: 0.048571706 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3866233120056885002, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1083f28417eca49b52039eb29f75eb, type: 3} --- !u!1001 &1402327359425347789 PrefabInstance: m_ObjectHideFlags: 0 @@ -505,6 +590,10 @@ PrefabInstance: propertyPath: m_Name value: HVR - XRDeviceSimulator objectReference: {fileID: 0} + - target: {fileID: 8612154590849758022, guid: 144495bf4b5f5354fb56fc074a0fe5a0, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] @@ -516,5 +605,6 @@ SceneRoots: m_Roots: - {fileID: 138840304} - {fileID: 441653735} + - {fileID: 877978168} - {fileID: 1402327359425347789} - {fileID: 855327201} diff --git a/Assets/Gothic-VR/Scripts/Gothic.VR.asmdef b/Assets/Gothic-VR/Scripts/Gothic.VR.asmdef index 41cf96aab..0e4003b3f 100644 --- a/Assets/Gothic-VR/Scripts/Gothic.VR.asmdef +++ b/Assets/Gothic-VR/Scripts/Gothic.VR.asmdef @@ -11,7 +11,8 @@ "GUID:e40ba710768534012815d3193fa296cb", "GUID:5a20be0fd8f247ccb50f69086136ea87", "GUID:1530a967b84cfb44dbdd5e8a1989764f", - "GUID:fe685ec1767f73d42b749ea8045bfe43" + "GUID:fe685ec1767f73d42b749ea8045bfe43", + "GUID:dc960734dc080426fa6612f1c5fe95f3" ], "includePlatforms": [], "excludePlatforms": [], diff --git a/Assets/Gothic-VR/Scripts/Interaction/Backends/Hvr/HvrBackend.cs b/Assets/Gothic-VR/Scripts/Interaction/Backends/Hvr/HvrBackend.cs index 52f621bab..35bc8c9ef 100644 --- a/Assets/Gothic-VR/Scripts/Interaction/Backends/Hvr/HvrBackend.cs +++ b/Assets/Gothic-VR/Scripts/Interaction/Backends/Hvr/HvrBackend.cs @@ -15,6 +15,11 @@ public void InstallBindings(ContainerBuilder containerBuilder) containerBuilder.AddSingleton(typeof(HvrUiPointers), typeof(IVrUiPointers)); containerBuilder.AddSingleton(typeof(HvrSfxPlayer), typeof(IVrSfxPlayer)); } + + public bool OwnsRig(IVrRig rig) + { + return rig is HvrRig; + } } } #endif diff --git a/Assets/Gothic-VR/Scripts/Interaction/Backends/Xri/XriBackend.cs b/Assets/Gothic-VR/Scripts/Interaction/Backends/Xri/XriBackend.cs index 6592782f1..0905be1f3 100644 --- a/Assets/Gothic-VR/Scripts/Interaction/Backends/Xri/XriBackend.cs +++ b/Assets/Gothic-VR/Scripts/Interaction/Backends/Xri/XriBackend.cs @@ -7,8 +7,9 @@ namespace Gothic.VR.Interaction.Backends.Xri { /// /// XR Interaction Toolkit backend. Always compiled, as XRI is a free package. - /// Implemented: input, haptics, SFX. Missing: the XRI player rig (IVrRig, HVR phase 1b) and the UI laser pointers - /// (IVrUiPointers, HVR phase 1c; registered as a placeholder which only warns). + /// Implemented: input, haptics, SFX and the player rig (XriRig on "VR - Player XRI.prefab", without screen fade). + /// Missing: the UI laser pointers (IVrUiPointers, HVR phase 1c; registered as a placeholder which only warns), + /// ScreenFade/WallFade (1c), the simulator (1d) and grabbing (phase 2). /// public class XriBackend : IVrBackend { @@ -16,13 +17,19 @@ public class XriBackend : IVrBackend public void InstallBindings(ContainerBuilder containerBuilder) { - Logger.LogWarning("XRI backend is work in progress: input and haptics work. The XRI player rig " + - "(HVR phase 1b) and UI laser pointers (phase 1c) are missing.", LogCat.VR); + Logger.LogWarning("XRI backend is work in progress: rig, locomotion, input and haptics work. " + + "UI laser pointers and screen fades (HVR phase 1c), the simulator (1d) and grabbing " + + "(phase 2) are missing.", LogCat.VR); containerBuilder.AddSingleton(typeof(XriInput), typeof(IVrInput), typeof(XriInput)); containerBuilder.AddSingleton(typeof(XriHaptics), typeof(IVrHaptics)); containerBuilder.AddSingleton(typeof(XriUiPointers), typeof(IVrUiPointers)); containerBuilder.AddSingleton(typeof(XriSfxPlayer), typeof(IVrSfxPlayer)); } + + public bool OwnsRig(IVrRig rig) + { + return rig is XriRig; + } } } diff --git a/Assets/Gothic-VR/Scripts/Interaction/Backends/Xri/XriRig.cs b/Assets/Gothic-VR/Scripts/Interaction/Backends/Xri/XriRig.cs new file mode 100644 index 000000000..a9c2284e4 --- /dev/null +++ b/Assets/Gothic-VR/Scripts/Interaction/Backends/Xri/XriRig.cs @@ -0,0 +1,397 @@ +using System; +using System.Collections.Generic; +using Gothic.Core.Logging; +using Gothic.VR.Interaction.Models; +using Gothic.VR.Interaction.Ports; +using Reflex.Attributes; +using Unity.XR.CoreUtils; +using UnityEngine; +using UnityEngine.XR; +using UnityEngine.XR.Interaction.Toolkit.Locomotion; +using UnityEngine.XR.Interaction.Toolkit.Locomotion.Gravity; +using UnityEngine.XR.Interaction.Toolkit.Locomotion.Jump; +using UnityEngine.XR.Interaction.Toolkit.Locomotion.Movement; +using UnityEngine.XR.Interaction.Toolkit.Locomotion.Teleportation; +using UnityEngine.XR.Interaction.Toolkit.Locomotion.Turning; +using Logger = Gothic.Core.Logging.Logger; + +namespace Gothic.VR.Interaction.Backends.Xri +{ + /// + /// IVrRig on top of XRI's XR Origin and locomotion providers. Sits on the XR Origin GameObject next to VRPlayer. + /// Sprinting and crouching are ours, as XRI has no providers for them. + /// Gothic logic (menu, control modes, ini settings) lives in VRPlayer and VRContextInteractionService, not here. + /// + public class XriRig : MonoBehaviour, IVrRig + { + [Inject] private readonly IVrInput _vrInput; + + [Header("Rig")] + [SerializeField] private XROrigin _origin; + [SerializeField] private CharacterController _characterController; + [SerializeField] private Camera _camera; + [SerializeField] private Transform _leftController; + [SerializeField] private Transform _rightController; + + [Header("Locomotion")] + [SerializeField] private ContinuousMoveProvider _moveProvider; + [SerializeField] private SnapTurnProvider _snapTurnProvider; + [SerializeField] private ContinuousTurnProvider _continuousTurnProvider; + [SerializeField] private TeleportationProvider _teleportationProvider; + [SerializeField] private GravityProvider _gravityProvider; + [SerializeField] private JumpProvider _jumpProvider; + + [Header("Movement")] + [Tooltip("Walking speed in m/s.")] + [SerializeField] private float _moveSpeed = 1.5f; + + [Tooltip("Speed in m/s while sprinting (sprint button, simulator: Left Shift).")] + [SerializeField] private float _runSpeed = 3.5f; + + [Tooltip("Thumbstick deflection below which a clicked sprint ends.")] + [SerializeField] private float _sprintStopThreshold = 0.1f; + + [Tooltip("Gravity acceleration in m/s^2. 0 disables gravity (swimming, diving).")] + [SerializeField] private float _gravity = 9.81f; + + [Tooltip("Terminal fall speed in m/s.")] + [SerializeField] private float _maxFallSpeed = 20f; + + [Header("Height")] + [Tooltip("Eye height of the virtual player in m. Used by the Sitting and Standing comfort settings.")] + [SerializeField] private float _eyeHeight = 1.66f; + + [Tooltip("Camera height in m while crouching.")] + [SerializeField] private float _crouchHeight = 0.7f; + + [Tooltip("Speed in m/s of the camera moving down/up when crouching starts/ends.")] + [SerializeField] private float _crouchSpeed = 1.5f; + + [Tooltip("Below this HMD height (m), the Standing setting doesn't scale (no headset, not tracked yet).")] + [SerializeField] private float _minCalibrationHeight = 0.5f; + + private static readonly IReadOnlyList _noGrabbers = Array.Empty(); + + private XriInput _xriInput; + private Transform _cameraOffset; + private bool _turnEnabled = true; + private bool _teleportEnabled = true; + private bool _canCrouch = true; + private bool _canSprint = true; + private VrTurnType _turnType = VrTurnType.Snap; + private bool _isSprintLatched; + private bool _isCrouching; + private float _crouchOffset; + private float _fadeAlpha; + private bool _isTeleportQueued; + private Vector3 _teleportPosition; + + public event Action Teleported; + + public Transform Root => _origin.Origin.transform; + public Transform TrackingSpace => CameraOffset; + public Transform Head => _camera.transform; + public Transform LeftHand => _leftController; + public Transform RightHand => _rightController; + public Camera Camera => _camera; + public CharacterController CharacterController => _characterController; + public float CameraHeight => _origin.CameraInOriginSpaceHeight; + public bool IsGrounded => _gravityProvider.isGrounded || _characterController.isGrounded; + + // Climbing comes with HVR phase 4 (ClimbProvider). + public bool IsClimbing => false; + + public bool MovementEnabled + { + get => _moveProvider.enabled; + set => _moveProvider.enabled = value; + } + + public bool TurnEnabled + { + get => _turnEnabled; + set + { + _turnEnabled = value; + UpdateTurnProviders(); + } + } + + /// + /// Player-initiated teleporting. Teleports from code (Teleport()) always work, therefore the + /// TeleportationProvider itself stays enabled. There are no teleport interactors yet (HVR phase 2). + /// + public bool TeleportEnabled + { + get => _teleportEnabled; + set => _teleportEnabled = value; + } + + public bool CanJump + { + get => _jumpProvider.enabled; + set => _jumpProvider.enabled = value; + } + + public bool CanCrouch + { + get => _canCrouch; + set + { + _canCrouch = value; + if (!value) + _isCrouching = false; + } + } + + public bool CanSprint + { + get => _canSprint; + set + { + _canSprint = value; + if (!value) + _isSprintLatched = false; + } + } + + public float Gravity + { + get => _gravity; + set + { + _gravity = value; + ApplyGravity(); + } + } + + public float MaxFallSpeed + { + get => _maxFallSpeed; + set + { + _maxFallSpeed = value; + ApplyGravity(); + } + } + + public float MoveSpeed + { + get => _moveSpeed; + set => _moveSpeed = value; + } + + public float RunSpeed + { + get => _runSpeed; + set => _runSpeed = value; + } + + public float StepOffset + { + get => _characterController.stepOffset; + set => _characterController.stepOffset = value; + } + + // TODO HVR phase 1c: ScreenFade. Until then, Fade() only stores the value. + public float FadeAlpha => _fadeAlpha; + + // TODO HVR phase 2: Near-Far interactors. + public IReadOnlyList HandGrabbers => _noGrabbers; + + private Transform CameraOffset => _cameraOffset ??= _origin.CameraFloorOffsetObject.transform; + + private void Awake() + { + // Grounded check against everything the player collides with (world, VOBs, NPCs), not only Default. + _gravityProvider.sphereCastLayerMask = GetCollidingLayers(gameObject.layer); + + _teleportationProvider.locomotionEnded += OnTeleportLocomotionEnded; + + ApplyGravity(); + UpdateTurnProviders(); + } + + private void Start() + { + _xriInput = _vrInput as XriInput; + if (_xriInput == null) + Logger.LogError("XriRig needs the XRI backend (XriInput). Sprinting and crouching won't work.", + LogCat.VR); + } + + private void OnDestroy() + { + if (_teleportationProvider != null) + _teleportationProvider.locomotionEnded -= OnTeleportLocomotionEnded; + } + + private void Update() + { + UpdateSprint(); + UpdateCrouch(); + } + + private void UpdateSprint() + { + var sprintAction = _xriInput?.GetGothicAction(XriGothicAction.Sprint) ?? default; + var moveInput = _moveProvider.leftHandMoveInput.ReadValue(); + + // A click on the thumbstick sprints until the stick is released. Holding the button (simulator: Shift) + // sprints as well. + if (sprintAction.IsJustActivated) + _isSprintLatched = true; + else if (moveInput.magnitude < _sprintStopThreshold && !sprintAction.IsActive) + _isSprintLatched = false; + + var isSprinting = _canSprint && (_isSprintLatched || sprintAction.IsActive); + _moveProvider.moveSpeed = isSprinting ? _runSpeed : _moveSpeed; + } + + private void UpdateCrouch() + { + if (_canCrouch && _xriInput != null && _xriInput.GetGothicAction(XriGothicAction.Crouch).IsJustActivated) + _isCrouching = !_isCrouching; + + // The camera offset's height is owned by XROrigin (CameraYOffset in Device mode, 0 in Floor mode). + // Crouching moves it down on top, so that the camera ends at _crouchHeight. The CharacterController + // follows the camera height on its next move (CharacterControllerBodyManipulator). + var baseOffset = _origin.CurrentTrackingOriginMode == TrackingOriginModeFlags.Floor + ? 0f + : _origin.CameraYOffset; + var standingCameraHeight = CameraHeight + _crouchOffset; + var targetOffset = _isCrouching ? Mathf.Max(0f, standingCameraHeight - _crouchHeight) : 0f; + _crouchOffset = Mathf.MoveTowards(_crouchOffset, targetOffset, _crouchSpeed * Time.deltaTime); + + var position = CameraOffset.localPosition; + position.y = baseOffset - _crouchOffset; + CameraOffset.localPosition = position; + } + + public void ApplyComfortSettings(VrSitStand sitStand, VrMoveDirection direction, VrTurnType turn, + float snapDegrees, float smoothSpeed) + { + ApplySitStand(sitStand); + + _moveProvider.forwardSource = direction switch + { + VrMoveDirection.LeftController => _leftController, + VrMoveDirection.RightController => _rightController, + _ => _camera.transform + }; + + _turnType = turn; + _snapTurnProvider.turnAmount = snapDegrees; + _continuousTurnProvider.turnSpeed = smoothSpeed; + UpdateTurnProviders(); + } + + /// + /// Sitting: tracking relative to the HMD start position, lifted to the eye height. + /// Standing: floor tracking, scaled so that the HMD's current height becomes the eye height (like HVR). + /// PlayerHeight: floor tracking with the player's real height. + /// + private void ApplySitStand(VrSitStand sitStand) + { + var scale = 1f; + + switch (sitStand) + { + case VrSitStand.Sitting: + _origin.RequestedTrackingOriginMode = XROrigin.TrackingOriginMode.Device; + _origin.CameraYOffset = _eyeHeight; + break; + case VrSitStand.Standing: + _origin.RequestedTrackingOriginMode = XROrigin.TrackingOriginMode.Floor; + var hmdHeight = _camera.transform.localPosition.y; + if (hmdHeight >= _minCalibrationHeight) + scale = _eyeHeight / hmdHeight; + break; + default: + _origin.RequestedTrackingOriginMode = XROrigin.TrackingOriginMode.Floor; + break; + } + + CameraOffset.localScale = Vector3.one * scale; + } + + private static int GetCollidingLayers(int layer) + { + var mask = 0; + for (var i = 0; i < 32; i++) + { + if (i != layer && !Physics.GetIgnoreLayerCollision(layer, i)) + mask |= 1 << i; + } + + return mask; + } + + private void UpdateTurnProviders() + { + _snapTurnProvider.enabled = _turnEnabled && _turnType == VrTurnType.Snap; + _continuousTurnProvider.enabled = _turnEnabled && _turnType == VrTurnType.Smooth; + } + + private void ApplyGravity() + { + var physicsGravity = Physics.gravity.magnitude; + _gravityProvider.useGravity = _gravity > 0f; + _gravityProvider.gravityAccelerationModifier = physicsGravity > 0f ? _gravity / physicsGravity : 0f; + _gravityProvider.terminalVelocity = _maxFallSpeed; + + if (_gravity <= 0f) + _gravityProvider.ResetFallForce(); + } + + /// + /// Applied by the TeleportationProvider in its next Update(). Teleported is raised once the XRBodyTransformer + /// moved the rig (same frame). The camera (not the XR Origin) ends up above the position and looks along the rotation. + /// + public void Teleport(Vector3 position, Quaternion rotation) + { + // TeleportPlayerTo() passes default(Quaternion) (all 0) when no rotation is given. + if (rotation == default) + rotation = Quaternion.identity; + + _teleportPosition = position; + _isTeleportQueued = true; + _gravityProvider.ResetFallForce(); + + _teleportationProvider.QueueTeleportRequest(new TeleportRequest + { + destinationPosition = position, + destinationRotation = rotation, + matchOrientation = MatchOrientation.TargetUpAndForward, + requestTime = Time.time + }); + } + + /// + /// XRI defers locomotionEnded until the body transformer applied the queued transformations. + /// + private void OnTeleportLocomotionEnded(LocomotionProvider provider) + { + if (!_isTeleportQueued) + return; + + _isTeleportQueued = false; + + // XRBodyGroundPosition moves the transform directly. Without the sync, the CharacterController would + // continue from its old position (Physics.autoSyncTransforms is off). + Physics.SyncTransforms(); + Teleported?.Invoke(_teleportPosition); + } + + public void SetGrabbingEnabled(bool isEnabled) + { + // NOP until HVR phase 2 (interactors). + } + + public void Fade(float alpha, float speed) + { + // TODO HVR phase 1c: ScreenFade on the camera. Only the value is kept until then. + _fadeAlpha = Mathf.Clamp01(alpha); + } + } +} diff --git a/Assets/Gothic-VR/Scripts/Interaction/Backends/Xri/XriRig.cs.meta b/Assets/Gothic-VR/Scripts/Interaction/Backends/Xri/XriRig.cs.meta new file mode 100644 index 000000000..a0a16e9f4 --- /dev/null +++ b/Assets/Gothic-VR/Scripts/Interaction/Backends/Xri/XriRig.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 28827cc1c678f554ebcf99ba66c6af1e \ No newline at end of file diff --git a/Assets/Gothic-VR/Scripts/Interaction/Ports/IVrBackend.cs b/Assets/Gothic-VR/Scripts/Interaction/Ports/IVrBackend.cs index db7f50f42..bd7c4dc4c 100644 --- a/Assets/Gothic-VR/Scripts/Interaction/Ports/IVrBackend.cs +++ b/Assets/Gothic-VR/Scripts/Interaction/Ports/IVrBackend.cs @@ -15,5 +15,11 @@ public interface IVrBackend /// IVrRig isn't registered here, as it lives on the player prefab. /// void InstallBindings(ContainerBuilder containerBuilder); + + /// + /// Whether the rig (on a player prefab in Player.unity / Lab.unity) belongs to this backend. + /// Used to pick the backend's player prefab. null (e.g., a rig whose scripts are missing) returns false. + /// + bool OwnsRig(IVrRig rig); } } diff --git a/Assets/Gothic-VR/Scripts/ReflexVRSceneInstaller.cs b/Assets/Gothic-VR/Scripts/ReflexVRSceneInstaller.cs index 9e0cd3c38..4502fbe58 100644 --- a/Assets/Gothic-VR/Scripts/ReflexVRSceneInstaller.cs +++ b/Assets/Gothic-VR/Scripts/ReflexVRSceneInstaller.cs @@ -1,6 +1,7 @@ using Gothic.Core; using Gothic.Core.Services.Config; using Gothic.VR.Adapters.Context; +using Gothic.VR.Interaction.Ports; using Gothic.VR.Services; using Reflex.Core; using UnityEngine; @@ -19,7 +20,9 @@ public void InstallBindings(ContainerBuilder containerBuilder) // VR ports (IVrInput, IVrHaptics, ...) come from the active backend (DeveloperConfig.VrInteractionBackend). // At this point, DIContainer is still the parent (project) container. var developerConfig = ReflexProjectInstaller.DIContainer?.Resolve().Dev; - VRContextBootstrap.SelectBackend(developerConfig).InstallBindings(containerBuilder); + var backend = VRContextBootstrap.SelectBackend(developerConfig); + backend.InstallBindings(containerBuilder); + containerBuilder.AddSingleton(backend, typeof(IVrBackend)); containerBuilder.AddSingleton(typeof(VRPlayerService)); containerBuilder.AddSingleton(typeof(VRWeaponService)); diff --git a/Assets/Gothic-VR/Scripts/Services/Context/VRContextInteractionService.cs b/Assets/Gothic-VR/Scripts/Services/Context/VRContextInteractionService.cs index 64e49f54f..df804d2a1 100644 --- a/Assets/Gothic-VR/Scripts/Services/Context/VRContextInteractionService.cs +++ b/Assets/Gothic-VR/Scripts/Services/Context/VRContextInteractionService.cs @@ -34,6 +34,7 @@ public class VRContextInteractionService : IContextInteractionService [Inject] private readonly IVrInput _vrInput; [Inject] private readonly IVrUiPointers _vrUiPointers; [Inject] private readonly IVrHaptics _vrHaptics; + [Inject] private readonly IVrBackend _vrBackend; private const string _contextName = "VR"; @@ -108,19 +109,30 @@ public void SetupPlayerController(DeveloperConfig developerConfig) // We call this method once at the very beginning of game start. We can safely assume we are in the Player.unity scene. var activeScene = SceneManager.GetActiveScene(); - // VR Player: Gothic part and the backend's rig live on the same GameObject. - _player = activeScene.GetComponentInChildren(true)!; - _rig = _player.GetComponent(); - if (_rig == null) + // VR Player: Gothic part and the backend's rig live on the same GameObject. The scene contains one + // (inactive) player prefab per VR backend. We use the one of the active backend and remove the others, so + // that scene-wide lookups (dialog, canvases, ...) find only ours. + var players = activeScene.GetRootGameObjects() + .SelectMany(i => i.GetComponentsInChildren(true)) + .ToList(); + _player = players.FirstOrDefault(i => _vrBackend.OwnsRig(i.GetComponent())); + if (_player == null) { - // e.g., VrInteractionBackend = Xri before the XRI rig exists (HVR phase 1b) and without HVR installed. - const string message = "VR player has no IVrRig (rig of the active VR backend). " + - "Check DeveloperConfig.VrInteractionBackend and the rigs in Player.unity."; + var message = $"No VR player with a rig of the active VR backend ({_vrBackend.Name}) found. " + + "Check DeveloperConfig.VrInteractionBackend and the player prefabs in Player.unity."; Logger.LogError(message, LogCat.VR); throw new MissingComponentException(message); } - _player.transform.parent.parent.gameObject.SetActive(true); + _rig = _player.GetComponent(); + var playerRoot = _player.transform.root.gameObject; + foreach (var otherRoot in players.Select(i => i.transform.root.gameObject).Distinct()) + { + if (otherRoot != playerRoot) + Object.Destroy(otherRoot); + } + + playerRoot.SetActive(true); _defaultStepOffset = _rig.StepOffset; ApplyComfortSettings(true); @@ -128,7 +140,8 @@ public void SetupPlayerController(DeveloperConfig developerConfig) _vrInput.SetDeviceSimulatorActive(developerConfig.EnableVRDeviceSimulator); // Marvin Mode - _marvinRoot = activeScene.GetComponentInChildren(true)!.gameObject; + // Searched inside our player only: the other backends' players are destroyed at the end of this frame. + _marvinRoot = playerRoot.GetComponentInChildren(true)!.gameObject; _marvinRoot.SetActive(_marvinService.IsMarvinMode); // PrintScreen() messages in front of the camera diff --git a/Docs/HVR-replacement/phase-1-rig-input-locomotion-ui.md b/Docs/HVR-replacement/phase-1-rig-input-locomotion-ui.md index 93cd86bf0..4e8395f9a 100644 --- a/Docs/HVR-replacement/phase-1-rig-input-locomotion-ui.md +++ b/Docs/HVR-replacement/phase-1-rig-input-locomotion-ui.md @@ -43,8 +43,15 @@ menus and dialogs, and watch videos, on a headset or in the simulator. Grabbing null any more. `XriBackend` registers `XriInput`, `XriHaptics`, `XriSfxPlayer` (minimal `PlayClipAtPoint`, no pool) and a placeholder `XriUiPointers` that only warns until 1c. Without an `IVrRig` on the player, `SetupPlayerController` now fails with a clear error instead of a NullReferenceException.) -- `Player.unity` (and `Lab.unity`) contain both rigs, disabled. `VRContextInteractionService.SetupPlayerController` +- [x] `Player.unity` (and `Lab.unity`) contain both rigs, disabled. `VRContextInteractionService.SetupPlayerController` enables the one matching the backend (today it already enables `transform.parent.parent`). + (1b: both scenes have `HVR - Player` and `VR - Player XRI` as inactive root prefab instances; `HVR - XRDeviceSimulator` + is inactive too, `IVrInput.SetDeviceSimulatorActive` switches it as before. The backend is registered in DI as + `IVrBackend` (`ReflexVRSceneInstaller`), and `IVrBackend.OwnsRig(IVrRig)` picks the `VRPlayer` whose rig belongs to + it. Its scene root (`transform.root`) is enabled, the other player roots are **destroyed**, so scene-wide lookups + (`VRDialog`, `RegisterAllCanvases`, ...) only find the active player; the Marvin menu is looked up inside the active + player only, because `Destroy` finishes at the end of the frame. On Hvr the HVR player is now activated in + `SetupPlayerController` (same frame as the scene load, before `Start`) instead of being active in the scene.) - The Xri backend files carry no define, since XRI is free and always installed. The Hvr backend stays behind `GOTHIC_HVR_INSTALLED`. @@ -69,6 +76,44 @@ VR - Player XRI `XriRig : MonoBehaviour, IVrRig` maps the port onto these components. +- [x] Done in 1b (prefab `Gothic-VR/Resources/VR/Prefabs/VR - Player XRI.prefab`, built via UnityMCP). Notes: + - Made from a copy of `HVR - Player.prefab` with `UIManager`, `HVRGlobal` and `TechDemoXRRigOpenXR` removed, so the + nested Gothic prefabs keep their overrides: `Rain`, `Menu-Dialog`, `MenuHandler` (inactive), `Cinema` (inactive), + `Spectator Camera` (now pointing at the XRI camera). `Menu-MarvinMode` moved to `Left Controller` with its pose + relative to the HVR physics hand (check its placement on a headset). + - `XR Origin` (layer/tag Player) carries `CharacterController` (values of the HVR one), `AudioSource`, + `NpcPrefabProperties`, `VRPlayer`, `VRSwimDive`, `VRPlayerWeaponInteraction`, `VRPlayerItemAdapter`, + `VRHandsOnTop` (no hand renderers until phase 2), `XROrigin` (Floor), `XRBodyTransformer`, `LocomotionMediator`, + `InputActionManager` (GothicVR asset, enables all its maps) and `XriRig`. `Main Camera` (tag MainCamera) has the + HVR camera's `Camera`/URP data/`AudioListener` plus `TrackedPoseDriver` (XRI Head). Controllers: `TrackedPoseDriver` + with `XRI Left/Right` Position/Rotation/Tracking State. No hand visuals, interactors, ray or teleport interactors + yet; `WallFade`/`ScreenFade` are 1c, `ClimbProvider` phase 4. + - Providers on `Locomotion`: move = `XRI Left Locomotion/Move`, snap turn = `XRI Right Locomotion/Snap Turn`, + smooth turn = `XRI Right Locomotion/Turn` (turn-around off for both), jump = `Gothic/Jump` (0.46 m = HVR's + 3 m/s jump velocity), teleportation (delay 0), gravity (terminal velocity 20). + - `MoveSpeed`/`RunSpeed` 1.5/3.5 as HVR. Sprint (`Gothic/Sprint`): a click sprints until the stick is released, + holding the key sprints too. Crouch (`Gothic/Crouch`) toggles; the camera offset moves down until the camera is at + 0.7 m (HVR's `CrouchHeight`). The `CharacterController` height follows the camera height on its next move + (XRI's `CharacterControllerBodyManipulator`), so it shrinks only once the player moves. + - `Gravity` maps to `GravityProvider.gravityAccelerationModifier` (relative to `Physics.gravity`), 0 disables gravity; + the grounded sphere cast uses every layer the Player layer collides with. `IsGrounded` = + `GravityProvider.isGrounded || CharacterController.isGrounded`. + - `TeleportEnabled` is only a flag for player-initiated teleports (no teleport interactor yet). The + `TeleportationProvider` stays enabled, so `Teleport()` also works while the player is locked (dialogs, cinema). + - `Teleport` queues `MatchOrientation.TargetUpAndForward` (the camera, not the origin, ends above the position and + looks along the rotation; `default(Quaternion)` = identity). The HVR workaround of setting the rotation afterwards + is not needed. `Teleported` is raised from `locomotionEnded`, which XRI defers until the body transformer applied + the move (same frame, one frame after the request), plus `Physics.SyncTransforms()`. + - Sitting: `Device` tracking + `CameraYOffset` = eye height 1.66. Standing: `Floor` + `Camera Offset` scaled by + `EyeHeight / HMD height` at the time the setting is applied (no scaling below 0.5 m HMD height). PlayerHeight: + `Floor`, no scaling. + - `Fade()` only stores the value until 1c (`FadeAlpha` returns it). `SetGrabbingEnabled` is a no-op, + `HandGrabbers` is empty, `IsClimbing` is false. + - `IVrRig.Root` is the XR Origin, which stays at the tracking-space origin: in room-scale the body is up to the + play-area size away from it (HVR moves its root under the head). `KeepPlayerWithin` and the hero position + (`GetCurrentPlayerController().transform`) use it. Fine for walking with the stick; revisit if room-scale + walking out of dialogs or NPC distances look wrong. + | `IVrRig` member | XRI implementation | |-----------------|--------------------| | `MovementEnabled` / `TurnEnabled` / `TeleportEnabled` | enable/disable the providers (or their input actions) | @@ -186,4 +231,4 @@ On Quest 3, Pico 4 and PCVR (Index), backend `Xri`: |------|-----------| | Sitting/Standing semantics differ from HVR | Implement `PlayerHeight` first (most players), then `Sitting`; check `Standing` scaling with a playtester. | | Pico button names differ in OpenXR profiles | Test the Pico 4 profile early; bind via the generic `{LeftHand}/secondaryButton` paths where possible. | -| Gravity/jump providers vs. our `KeepPlayerWithin` (`controller.Move`) | Both move the `CharacterController`. Keep `KeepPlayerWithin` after the providers (late update order) and verify dialogs. | +| Gravity/jump providers vs. our `KeepPlayerWithin` (`controller.Move`) | Both move the `CharacterController`. Keep `KeepPlayerWithin` after the providers (late update order) and verify dialogs. 1b: already the case, `DialogService` calls it from a coroutine (`yield return null`, after all `Update`s) and the providers/`XRBodyTransformer` run in `Update` (execution order -210/-205). Dialogs not tested on XRI yet (needs UI, 1c). |