Zeinab's UI changes

This commit is contained in:
Abdul Mukheem Shaik 2024-05-13 22:15:29 +02:00
parent 5941f3ec68
commit fe107c363e
457 changed files with 117814 additions and 4674 deletions
Assets
Oculus
Samples.meta
Samples
XR Hands.meta
XR Hands
XR Interaction Toolkit.meta
XR Interaction Toolkit
2.5.2.meta
2.5.2
Hands Interaction Demo.meta
Hands Interaction Demo
.sample.jsonAffordanceThemes.meta
AffordanceThemes
DatumPresets.meta
DatumPresets
Editor.meta
Editor
HandsDemoScene.unityHandsDemoScene.unity.metaHandsDemoSceneAssets.meta
HandsDemoSceneAssets

@ -30,6 +30,7 @@ MonoBehaviour:
enableNSCConfig: 1
securityXmlPath:
skipUnneededShaders: 0
enableIL2CPPLTO: 0
focusAware: 1
requiresSystemKeyboard: 0
experimentalFeaturesEnabled: 0
@ -39,5 +40,5 @@ MonoBehaviour:
systemSplashScreen: {fileID: 0}
systemSplashScreenType: 0
_systemLoadingScreenBackground: 0
ovrPluginMd5Win64: e2f96821b9509a5aaf6b44cbb17681834b7fd5fcabb66fff487e05508d3281ac
ovrPluginMd5Android: b11c9996e5f49cf2c13b34f2f4bb8d161eca613361f7dba54b600ce29ec2472d
ovrPluginMd5Win64: e8cfe66d40bc858ac6a51dd265d3b2f75a0542a3e3343a50aea7cfb077f7e496
ovrPluginMd5Android: c7bb9a379e186c4b2726b69bbb7d3acebc5010d969f325037b474f297f01d26f

8
Assets/Samples.meta Normal file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 571e884c64c2e8b4c8ca13a771d602b4
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: c7401c9c63b63814e8f3aeeee3ab9e62
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f4e34f3d191bd8a4c99b868a6027d296
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9ec97d630d633bd4aa06f5bebd46f3f8
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,4 @@
{
"displayName": "HandVisualizer",
"description": "Basic sample showing how visualize hands."
}

@ -0,0 +1,762 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!29 &1
OcclusionCullingSettings:
m_ObjectHideFlags: 0
serializedVersion: 2
m_OcclusionBakeSettings:
smallestOccluder: 5
smallestHole: 0.25
backfaceThreshold: 100
m_SceneGUID: 00000000000000000000000000000000
m_OcclusionCullingData: {fileID: 0}
--- !u!104 &2
RenderSettings:
m_ObjectHideFlags: 0
serializedVersion: 9
m_Fog: 0
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
m_FogMode: 3
m_FogDensity: 0.01
m_LinearFogStart: 0
m_LinearFogEnd: 300
m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
m_AmbientIntensity: 1
m_AmbientMode: 0
m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
m_HaloStrength: 0.5
m_FlareStrength: 1
m_FlareFadeSpeed: 3
m_HaloTexture: {fileID: 0}
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
m_DefaultReflectionMode: 0
m_DefaultReflectionResolution: 128
m_ReflectionBounces: 1
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0.18028378, g: 0.22571412, b: 0.30692285, a: 1}
m_UseRadianceAmbientProbe: 0
--- !u!157 &3
LightmapSettings:
m_ObjectHideFlags: 0
serializedVersion: 12
m_GIWorkflowMode: 1
m_GISettings:
serializedVersion: 2
m_BounceScale: 1
m_IndirectOutputScale: 1
m_AlbedoBoost: 1
m_EnvironmentLightingMode: 0
m_EnableBakedLightmaps: 1
m_EnableRealtimeLightmaps: 0
m_LightmapEditorSettings:
serializedVersion: 12
m_Resolution: 2
m_BakeResolution: 40
m_AtlasSize: 1024
m_AO: 0
m_AOMaxDistance: 1
m_CompAOExponent: 1
m_CompAOExponentDirect: 0
m_ExtractAmbientOcclusion: 0
m_Padding: 2
m_LightmapParameters: {fileID: 0}
m_LightmapsBakeMode: 1
m_TextureCompression: 1
m_FinalGather: 0
m_FinalGatherFiltering: 1
m_FinalGatherRayCount: 256
m_ReflectionCompression: 2
m_MixedBakeMode: 2
m_BakeBackend: 1
m_PVRSampling: 1
m_PVRDirectSampleCount: 32
m_PVRSampleCount: 512
m_PVRBounces: 2
m_PVREnvironmentSampleCount: 256
m_PVREnvironmentReferencePointCount: 2048
m_PVRFilteringMode: 1
m_PVRDenoiserTypeDirect: 1
m_PVRDenoiserTypeIndirect: 1
m_PVRDenoiserTypeAO: 1
m_PVRFilterTypeDirect: 0
m_PVRFilterTypeIndirect: 0
m_PVRFilterTypeAO: 0
m_PVREnvironmentMIS: 1
m_PVRCulling: 1
m_PVRFilteringGaussRadiusDirect: 1
m_PVRFilteringGaussRadiusIndirect: 5
m_PVRFilteringGaussRadiusAO: 2
m_PVRFilteringAtrousPositionSigmaDirect: 0.5
m_PVRFilteringAtrousPositionSigmaIndirect: 2
m_PVRFilteringAtrousPositionSigmaAO: 1
m_ExportTrainingData: 0
m_TrainingDataDestination: TrainingData
m_LightProbeSampleCountMultiplier: 4
m_LightingDataAsset: {fileID: 0}
m_LightingSettings: {fileID: 2722834}
--- !u!196 &4
NavMeshSettings:
serializedVersion: 2
m_ObjectHideFlags: 0
m_BuildSettings:
serializedVersion: 2
agentTypeID: 0
agentRadius: 0.5
agentHeight: 2
agentSlope: 45
agentClimb: 0.4
ledgeDropHeight: 0
maxJumpAcrossDistance: 0
minRegionArea: 2
manualCellSize: 0
cellSize: 0.16666667
manualTileSize: 0
tileSize: 256
accuratePlacement: 0
maxJobWorkers: 0
preserveTilesOutsideBounds: 0
debug:
m_Flags: 0
m_NavMeshData: {fileID: 0}
--- !u!850595691 &2722834
LightingSettings:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
serializedVersion: 4
m_GIWorkflowMode: 1
m_EnableBakedLightmaps: 1
m_EnableRealtimeLightmaps: 0
m_RealtimeEnvironmentLighting: 1
m_BounceScale: 1
m_AlbedoBoost: 1
m_IndirectOutputScale: 1
m_UsingShadowmask: 1
m_BakeBackend: 1
m_LightmapMaxSize: 1024
m_BakeResolution: 40
m_Padding: 2
m_LightmapCompression: 2
m_AO: 0
m_AOMaxDistance: 1
m_CompAOExponent: 1
m_CompAOExponentDirect: 0
m_ExtractAO: 0
m_MixedBakeMode: 2
m_LightmapsBakeMode: 1
m_FilterMode: 1
m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0}
m_ExportTrainingData: 0
m_TrainingDataDestination: TrainingData
m_RealtimeResolution: 2
m_ForceWhiteAlbedo: 0
m_ForceUpdates: 0
m_FinalGather: 0
m_FinalGatherRayCount: 256
m_FinalGatherFiltering: 1
m_PVRCulling: 1
m_PVRSampling: 1
m_PVRDirectSampleCount: 32
m_PVRSampleCount: 512
m_PVREnvironmentSampleCount: 256
m_PVREnvironmentReferencePointCount: 2048
m_LightProbeSampleCountMultiplier: 4
m_PVRBounces: 2
m_PVRMinBounces: 1
m_PVREnvironmentMIS: 1
m_PVRFilteringMode: 1
m_PVRDenoiserTypeDirect: 1
m_PVRDenoiserTypeIndirect: 1
m_PVRDenoiserTypeAO: 1
m_PVRFilterTypeDirect: 0
m_PVRFilterTypeIndirect: 0
m_PVRFilterTypeAO: 0
m_PVRFilteringGaussRadiusDirect: 1
m_PVRFilteringGaussRadiusIndirect: 5
m_PVRFilteringGaussRadiusAO: 2
m_PVRFilteringAtrousPositionSigmaDirect: 0.5
m_PVRFilteringAtrousPositionSigmaIndirect: 2
m_PVRFilteringAtrousPositionSigmaAO: 1
m_PVRTiledBaking: 0
--- !u!1 &92641028 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 3133494152545806682, guid: 3f7511fbc40ae7a4b89c3298a3de199d, type: 3}
m_PrefabInstance: {fileID: 402783663}
m_PrefabAsset: {fileID: 0}
--- !u!4 &92641029 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 2321527512367231968, guid: 3f7511fbc40ae7a4b89c3298a3de199d, type: 3}
m_PrefabInstance: {fileID: 402783663}
m_PrefabAsset: {fileID: 0}
--- !u!1 &215855080
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 215855081}
- component: {fileID: 215855084}
- component: {fileID: 215855083}
- component: {fileID: 215855082}
- component: {fileID: 215855085}
m_Layer: 0
m_Name: Main Camera
m_TagString: MainCamera
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &215855081
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 215855080}
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: 944581975}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &215855082
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 215855080}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5a2a9c34df4095f47b9ca8f975175f5b, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Device: 0
m_PoseSource: 2
m_PoseProviderComponent: {fileID: 0}
m_TrackingType: 0
m_UpdateType: 0
m_UseRelativeTransform: 0
--- !u!81 &215855083
AudioListener:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 215855080}
m_Enabled: 1
--- !u!20 &215855084
Camera:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 215855080}
m_Enabled: 1
serializedVersion: 2
m_ClearFlags: 1
m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0}
m_projectionMatrixMode: 1
m_GateFitMode: 2
m_FOVAxisMode: 0
m_SensorSize: {x: 36, y: 24}
m_LensShift: {x: 0, y: 0}
m_FocalLength: 50
m_NormalizedViewPortRect:
serializedVersion: 2
x: 0
y: 0
width: 1
height: 1
near clip plane: 0.01
far clip plane: 1000
field of view: 60
orthographic: 0
orthographic size: 5
m_Depth: -1
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 &215855085
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 215855080}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c2fadf230d1919748a9aa21d40f74619, type: 3}
m_Name:
m_EditorClassIdentifier:
m_TrackingType: 0
m_UpdateType: 0
m_PositionInput:
m_UseReference: 0
m_Action:
m_Name: Position
m_Type: 0
m_ExpectedControlType: Vector3
m_Id: e8ff7b7a-9f10-4ee3-8333-563442d7ba93
m_Processors:
m_Interactions:
m_SingletonActionBindings:
- m_Name:
m_Id: 32444af1-0203-4f80-82eb-ce8caabdcfc3
m_Path: <XRHMD>/centerEyePosition
m_Interactions:
m_Processors:
m_Groups:
m_Action: Position
m_Flags: 0
- m_Name:
m_Id: 05aa6447-a626-43f2-aaaa-0a7026bc02e0
m_Path: <HandheldARInputDevice>/devicePosition
m_Interactions:
m_Processors:
m_Groups:
m_Action: Position
m_Flags: 0
m_Flags: 0
m_Reference: {fileID: 0}
m_RotationInput:
m_UseReference: 0
m_Action:
m_Name: Rotation
m_Type: 0
m_ExpectedControlType: Quaternion
m_Id: 193e5ce3-4bd7-4b7f-b8d1-4e82524e705c
m_Processors:
m_Interactions:
m_SingletonActionBindings:
- m_Name:
m_Id: 000caf52-48a9-43c2-9211-0615cc4e6b2d
m_Path: <XRHMD>/centerEyeRotation
m_Interactions:
m_Processors:
m_Groups:
m_Action: Rotation
m_Flags: 0
- m_Name:
m_Id: 43882e43-112e-47fc-bb4d-c0695fd7ed12
m_Path: <HandheldARInputDevice>/deviceRotation
m_Interactions:
m_Processors:
m_Groups:
m_Action: Rotation
m_Flags: 0
m_Flags: 0
m_Reference: {fileID: 0}
m_PositionAction:
m_Name:
m_Type: 0
m_ExpectedControlType:
m_Id:
m_Processors:
m_Interactions:
m_SingletonActionBindings: []
m_Flags: 0
m_RotationAction:
m_Name:
m_Type: 0
m_ExpectedControlType:
m_Id:
m_Processors:
m_Interactions:
m_SingletonActionBindings: []
m_Flags: 0
m_HasMigratedActions: 1
--- !u!1001 &402783663
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 944581975}
m_Modifications:
- target: {fileID: 2321527512367231968, guid: 3f7511fbc40ae7a4b89c3298a3de199d, type: 3}
propertyPath: m_RootOrder
value: 3
objectReference: {fileID: 0}
- target: {fileID: 2321527512367231968, guid: 3f7511fbc40ae7a4b89c3298a3de199d, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2321527512367231968, guid: 3f7511fbc40ae7a4b89c3298a3de199d, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2321527512367231968, guid: 3f7511fbc40ae7a4b89c3298a3de199d, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2321527512367231968, guid: 3f7511fbc40ae7a4b89c3298a3de199d, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2321527512367231968, guid: 3f7511fbc40ae7a4b89c3298a3de199d, type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 2321527512367231968, guid: 3f7511fbc40ae7a4b89c3298a3de199d, type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: 2321527512367231968, guid: 3f7511fbc40ae7a4b89c3298a3de199d, type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: 2321527512367231968, guid: 3f7511fbc40ae7a4b89c3298a3de199d, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2321527512367231968, guid: 3f7511fbc40ae7a4b89c3298a3de199d, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2321527512367231968, guid: 3f7511fbc40ae7a4b89c3298a3de199d, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3133494152545806682, guid: 3f7511fbc40ae7a4b89c3298a3de199d, type: 3}
propertyPath: m_Name
value: Right Hand Tracking
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 3f7511fbc40ae7a4b89c3298a3de199d, type: 3}
--- !u!1 &935940900
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 935940901}
- component: {fileID: 935940902}
- component: {fileID: 935940903}
m_Layer: 0
m_Name: Hand Visualizer
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &935940901
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 935940900}
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: 944581975}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &935940902
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 935940900}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 2e9813c68d7d6f44282ace8bd2d1fd46, type: 3}
m_Name:
m_EditorClassIdentifier:
m_UseOptimizedControls: 0
m_LeftHandMesh: {fileID: 1048441851}
m_RightHandMesh: {fileID: 92641028}
m_HandMeshMaterial: {fileID: 2100000, guid: 613690cd962241049a0ec289a6ff835e, type: 2}
m_DrawMeshes: 1
m_DebugDrawPrefab: {fileID: 6507399986997092475, guid: 254b742d65a15d14b9df756ae77de868, type: 3}
m_DebugDrawJoints: 1
m_VelocityPrefab: {fileID: 8538602047018081646, guid: 629fd7882ec6bfc499a5fcf20035282b, type: 3}
m_VelocityType: 2
--- !u!114 &935940903
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 935940900}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ac5903b776721d74786a2e43f00b949a, type: 3}
m_Name:
m_EditorClassIdentifier:
m_ProcessorExampleMode: 0
m_LeftHandSmoothingFactor: 16
m_RightHandSmoothingFactor: 16
--- !u!1 &944581974
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 944581975}
m_Layer: 0
m_Name: Camera Offset
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &944581975
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 944581974}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 1.2, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 215855081}
- {fileID: 935940901}
- {fileID: 1048441850}
- {fileID: 92641029}
m_Father: {fileID: 1085439597}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1001 &1048441849
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 944581975}
m_Modifications:
- target: {fileID: 141466980049140221, guid: b3ed8a0a703ebd34a9e44ed3d9f1fcf6, type: 3}
propertyPath: m_RootOrder
value: 2
objectReference: {fileID: 0}
- target: {fileID: 141466980049140221, guid: b3ed8a0a703ebd34a9e44ed3d9f1fcf6, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 141466980049140221, guid: b3ed8a0a703ebd34a9e44ed3d9f1fcf6, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 141466980049140221, guid: b3ed8a0a703ebd34a9e44ed3d9f1fcf6, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 141466980049140221, guid: b3ed8a0a703ebd34a9e44ed3d9f1fcf6, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 141466980049140221, guid: b3ed8a0a703ebd34a9e44ed3d9f1fcf6, type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 141466980049140221, guid: b3ed8a0a703ebd34a9e44ed3d9f1fcf6, type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: 141466980049140221, guid: b3ed8a0a703ebd34a9e44ed3d9f1fcf6, type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: 141466980049140221, guid: b3ed8a0a703ebd34a9e44ed3d9f1fcf6, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 141466980049140221, guid: b3ed8a0a703ebd34a9e44ed3d9f1fcf6, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 141466980049140221, guid: b3ed8a0a703ebd34a9e44ed3d9f1fcf6, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 773853689519989575, guid: b3ed8a0a703ebd34a9e44ed3d9f1fcf6, type: 3}
propertyPath: m_Name
value: Left Hand Tracking
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: b3ed8a0a703ebd34a9e44ed3d9f1fcf6, type: 3}
--- !u!4 &1048441850 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 141466980049140221, guid: b3ed8a0a703ebd34a9e44ed3d9f1fcf6, type: 3}
m_PrefabInstance: {fileID: 1048441849}
m_PrefabAsset: {fileID: 0}
--- !u!1 &1048441851 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 773853689519989575, guid: b3ed8a0a703ebd34a9e44ed3d9f1fcf6, type: 3}
m_PrefabInstance: {fileID: 1048441849}
m_PrefabAsset: {fileID: 0}
--- !u!1 &1085439595
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1085439597}
- component: {fileID: 1085439596}
m_Layer: 0
m_Name: XR Origin
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &1085439596
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1085439595}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e0cb9aa70a22847b5925ee5f067c10a9, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Camera: {fileID: 215855084}
m_OriginBaseGameObject: {fileID: 1085439595}
m_CameraFloorOffsetObject: {fileID: 944581974}
m_RequestedTrackingOriginMode: 0
m_CameraYOffset: 1.1176
--- !u!4 &1085439597
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1085439595}
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: 944581975}
m_Father: {fileID: 0}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1517268251
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1517268253}
- component: {fileID: 1517268252}
m_Layer: 0
m_Name: Directional Light
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!108 &1517268252
Light:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1517268251}
m_Enabled: 1
serializedVersion: 10
m_Type: 1
m_Shape: 0
m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1}
m_Intensity: 1
m_Range: 10
m_SpotAngle: 30
m_InnerSpotAngle: 21.80208
m_CookieSize: 10
m_Shadows:
m_Type: 2
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 1
m_Bias: 0.05
m_NormalBias: 0.4
m_NearPlane: 0.2
m_CullingMatrixOverride:
e00: 1
e01: 0
e02: 0
e03: 0
e10: 0
e11: 1
e12: 0
e13: 0
e20: 0
e21: 0
e22: 1
e23: 0
e30: 0
e31: 0
e32: 0
e33: 1
m_UseCullingMatrixOverride: 0
m_Cookie: {fileID: 0}
m_DrawHalo: 0
m_Flare: {fileID: 0}
m_RenderMode: 0
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_RenderingLayerMask: 1
m_Lightmapping: 4
m_LightShadowCasterMode: 0
m_AreaSize: {x: 1, y: 1}
m_BounceIntensity: 1
m_ColorTemperature: 6570
m_UseColorTemperature: 0
m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
m_UseBoundingSphereOverride: 0
m_UseViewFrustumForShadowCasterCull: 1
m_ShadowRadius: 0
m_ShadowAngle: 0
--- !u!4 &1517268253
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1517268251}
m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261}
m_LocalPosition: {x: 0, y: 3, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0}

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: ab7acf0d9677fbe4db51bc36647d4fcb
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: fe662ea7d4bacf74ea2459d10b988a1b
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,159 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-7628788528051855285
MonoBehaviour:
m_ObjectHideFlags: 11
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 5
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Blue
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ValidKeywords:
- _EMISSION
m_InvalidKeywords: []
m_LightmapFlags: 0
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _AlphaTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- PixelSnap: 0
- _AlphaClip: 0
- _Blend: 0
- _BlendOp: 0
- _BumpScale: 1
- _CameraFadingEnabled: 0
- _CameraFarFadeDistance: 2
- _CameraNearFadeDistance: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _ColorMask: 15
- _Cull: 2
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DistortionBlend: 0.5
- _DistortionEnabled: 0
- _DistortionStrength: 1
- _DistortionStrengthScaled: 0
- _DstBlend: 0
- _EmissionEnabled: 0
- _EnableExternalAlpha: 0
- _EnvironmentReflections: 1
- _FlipbookMode: 0
- _GlossMapScale: 1
- _Glossiness: 0
- _GlossyReflections: 1
- _LightingEnabled: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0
- _SoftParticlesEnabled: 0
- _SoftParticlesFarFadeDistance: 1
- _SoftParticlesNearFadeDistance: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _Stencil: 0
- _StencilComp: 8
- _StencilOp: 0
- _StencilReadMask: 255
- _StencilWriteMask: 255
- _Surface: 0
- _UVSec: 0
- _UseUIAlphaClip: 0
- _WorkflowMode: 1
- _ZWrite: 1
m_Colors:
- _BaseColor: {r: 0, g: 0, b: 1, a: 1}
- _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0}
- _Color: {r: 0, g: 0, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _Flip: {r: 1, g: 1, b: 1, a: 1}
- _RendererColor: {r: 1, g: 1, b: 1, a: 1}
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 7b26add94f09dc44fb811013f007a3aa
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,159 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Green
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ValidKeywords:
- _EMISSION
m_InvalidKeywords: []
m_LightmapFlags: 0
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _AlphaTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- PixelSnap: 0
- _AlphaClip: 0
- _Blend: 0
- _BlendOp: 0
- _BumpScale: 1
- _CameraFadingEnabled: 0
- _CameraFarFadeDistance: 2
- _CameraNearFadeDistance: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _ColorMask: 15
- _Cull: 2
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DistortionBlend: 0.5
- _DistortionEnabled: 0
- _DistortionStrength: 1
- _DistortionStrengthScaled: 0
- _DstBlend: 0
- _EmissionEnabled: 0
- _EnableExternalAlpha: 0
- _EnvironmentReflections: 1
- _FlipbookMode: 0
- _GlossMapScale: 1
- _Glossiness: 0
- _GlossyReflections: 1
- _LightingEnabled: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0
- _SoftParticlesEnabled: 0
- _SoftParticlesFarFadeDistance: 1
- _SoftParticlesNearFadeDistance: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _Stencil: 0
- _StencilComp: 8
- _StencilOp: 0
- _StencilReadMask: 255
- _StencilWriteMask: 255
- _Surface: 0
- _UVSec: 0
- _UseUIAlphaClip: 0
- _WorkflowMode: 1
- _ZWrite: 1
m_Colors:
- _BaseColor: {r: 0, g: 1, b: 0, a: 1}
- _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0}
- _Color: {r: 0, g: 1, b: 0, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _Flip: {r: 1, g: 1, b: 1, a: 1}
- _RendererColor: {r: 1, g: 1, b: 1, a: 1}
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []
--- !u!114 &9064977523446290879
MonoBehaviour:
m_ObjectHideFlags: 11
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 5

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 727f87098255ad04987a60f5f08390bc
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,164 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-6565127186501960882
MonoBehaviour:
m_ObjectHideFlags: 11
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 5
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: HandsDefaultMaterial
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ValidKeywords:
- _ALPHABLEND_ON
- _EMISSION
m_InvalidKeywords:
- _SURFACE_TYPE_TRANSPARENT
m_LightmapFlags: 0
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 3000
stringTagMap:
RenderType: Transparent
disabledShaderPasses:
- DepthOnly
- SHADOWCASTER
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _AlphaTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- PixelSnap: 0
- _AlphaClip: 0
- _Blend: 0
- _BlendOp: 0
- _BumpScale: 1
- _CameraFadingEnabled: 0
- _CameraFarFadeDistance: 2
- _CameraNearFadeDistance: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _ColorMask: 15
- _Cull: 2
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DistortionBlend: 0.5
- _DistortionEnabled: 0
- _DistortionStrength: 1
- _DistortionStrengthScaled: 0
- _DstBlend: 10
- _EmissionEnabled: 0
- _EnableExternalAlpha: 0
- _EnvironmentReflections: 1
- _FlipbookMode: 0
- _GlossMapScale: 1
- _Glossiness: 0
- _GlossyReflections: 1
- _LightingEnabled: 1
- _Metallic: 0
- _Mode: 2
- _OcclusionStrength: 1
- _Parallax: 0.02
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0
- _SmoothnessTextureChannel: 0
- _SoftParticlesEnabled: 0
- _SoftParticlesFarFadeDistance: 1
- _SoftParticlesNearFadeDistance: 0
- _SpecularHighlights: 1
- _SrcBlend: 5
- _Stencil: 0
- _StencilComp: 8
- _StencilOp: 0
- _StencilReadMask: 255
- _StencilWriteMask: 255
- _Surface: 1
- _UVSec: 0
- _UseUIAlphaClip: 0
- _WorkflowMode: 1
- _ZWrite: 0
m_Colors:
- _BaseColor: {r: 0.66518503, g: 0.66518503, b: 0.66518503, a: 0.64705884}
- _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0}
- _Color: {r: 0.66518503, g: 0.66518503, b: 0.66518503, a: 0.64705884}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _Flip: {r: 1, g: 1, b: 1, a: 1}
- _RendererColor: {r: 1, g: 1, b: 1, a: 1}
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 613690cd962241049a0ec289a6ff835e
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,159 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Red
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ValidKeywords:
- _EMISSION
m_InvalidKeywords: []
m_LightmapFlags: 0
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _AlphaTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- PixelSnap: 0
- _AlphaClip: 0
- _Blend: 0
- _BlendOp: 0
- _BumpScale: 1
- _CameraFadingEnabled: 0
- _CameraFarFadeDistance: 2
- _CameraNearFadeDistance: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _ColorMask: 15
- _Cull: 2
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DistortionBlend: 0.5
- _DistortionEnabled: 0
- _DistortionStrength: 1
- _DistortionStrengthScaled: 0
- _DstBlend: 0
- _EmissionEnabled: 0
- _EnableExternalAlpha: 0
- _EnvironmentReflections: 1
- _FlipbookMode: 0
- _GlossMapScale: 1
- _Glossiness: 0
- _GlossyReflections: 1
- _LightingEnabled: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0
- _SoftParticlesEnabled: 0
- _SoftParticlesFarFadeDistance: 1
- _SoftParticlesNearFadeDistance: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _Stencil: 0
- _StencilComp: 8
- _StencilOp: 0
- _StencilReadMask: 255
- _StencilWriteMask: 255
- _Surface: 0
- _UVSec: 0
- _UseUIAlphaClip: 0
- _WorkflowMode: 1
- _ZWrite: 1
m_Colors:
- _BaseColor: {r: 1, g: 0, b: 0, a: 1}
- _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0}
- _Color: {r: 1, g: 0, b: 0, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _Flip: {r: 1, g: 1, b: 1, a: 1}
- _RendererColor: {r: 1, g: 1, b: 1, a: 1}
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []
--- !u!114 &2151432713694262380
MonoBehaviour:
m_ObjectHideFlags: 11
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 5

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 55fa12dc7870f1e46b6a7f8617949a86
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,159 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: White
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ValidKeywords:
- _EMISSION
m_InvalidKeywords: []
m_LightmapFlags: 0
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _AlphaTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- PixelSnap: 0
- _AlphaClip: 0
- _Blend: 0
- _BlendOp: 0
- _BumpScale: 1
- _CameraFadingEnabled: 0
- _CameraFarFadeDistance: 2
- _CameraNearFadeDistance: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _ColorMask: 15
- _Cull: 2
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DistortionBlend: 0.5
- _DistortionEnabled: 0
- _DistortionStrength: 1
- _DistortionStrengthScaled: 0
- _DstBlend: 0
- _EmissionEnabled: 0
- _EnableExternalAlpha: 0
- _EnvironmentReflections: 1
- _FlipbookMode: 0
- _GlossMapScale: 1
- _Glossiness: 0
- _GlossyReflections: 1
- _LightingEnabled: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0
- _SoftParticlesEnabled: 0
- _SoftParticlesFarFadeDistance: 1
- _SoftParticlesNearFadeDistance: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _Stencil: 0
- _StencilComp: 8
- _StencilOp: 0
- _StencilReadMask: 255
- _StencilWriteMask: 255
- _Surface: 0
- _UVSec: 0
- _UseUIAlphaClip: 0
- _WorkflowMode: 1
- _ZWrite: 1
m_Colors:
- _BaseColor: {r: 0.9686274, g: 0.9686274, b: 0.9686274, a: 1}
- _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0}
- _Color: {r: 0.9686274, g: 0.9686274, b: 0.9686274, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _Flip: {r: 1, g: 1, b: 1, a: 1}
- _RendererColor: {r: 1, g: 1, b: 1, a: 1}
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []
--- !u!114 &447292672560585647
MonoBehaviour:
m_ObjectHideFlags: 11
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 5

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: c3474c208278e814cb8d1c29aa806e81
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 22f58ef53b57ffc4390fa3fd82468a7d
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,103 @@
fileFormatVersion: 2
guid: bf7151579c38e2a44be94ba8773876c1
ModelImporter:
serializedVersion: 20300
internalIDToNameTable: []
externalObjects: {}
materials:
materialImportMode: 2
materialName: 0
materialSearch: 1
materialLocation: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
resampleCurves: 1
optimizeGameObjects: 0
motionNodeName:
rigImportErrors:
rigImportWarnings:
animationImportErrors:
animationImportWarnings:
animationRetargetingWarnings:
animationDoRetargetingWarnings: 0
importAnimatedCustomProperties: 0
importConstraints: 0
animationCompression: 1
animationRotationError: 0.5
animationPositionError: 0.5
animationScaleError: 0.5
animationWrapMode: 0
extraExposedTransformPaths: []
extraUserProperties: []
clipAnimations: []
isReadable: 0
meshes:
lODScreenPercentages: []
globalScale: 1
meshCompression: 0
addColliders: 0
useSRGBMaterialColor: 1
sortHierarchyByName: 1
importVisibility: 1
importBlendShapes: 1
importCameras: 1
importLights: 1
fileIdsGeneration: 2
swapUVChannels: 0
generateSecondaryUV: 0
useFileUnits: 1
keepQuads: 0
weldVertices: 1
bakeAxisConversion: 0
preserveHierarchy: 0
skinWeightsMode: 0
maxBonesPerVertex: 4
minBoneWeight: 0.001
meshOptimizationFlags: -1
indexFormat: 0
secondaryUVAngleDistortion: 8
secondaryUVAreaDistortion: 15.000001
secondaryUVHardAngle: 88
secondaryUVMarginMethod: 1
secondaryUVMinLightmapResolution: 40
secondaryUVMinObjectScale: 1
secondaryUVPackMargin: 4
useFileScale: 1
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 0
tangentImportMode: 3
normalCalculationMode: 4
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
blendShapeNormalImportMode: 1
normalSmoothingSource: 0
referencedClips: []
importAnimation: 1
humanDescription:
serializedVersion: 3
human: []
skeleton: []
armTwist: 0.5
foreArmTwist: 0.5
upperLegTwist: 0.5
legTwist: 0.5
armStretch: 0.05
legStretch: 0.05
feetSpacing: 0
globalScale: 1
rootMotionBoneName:
hasTranslationDoF: 0
hasExtraRoot: 0
skeletonHasParents: 1
lastHumanDescriptionAvatarSource: {instanceID: 0}
autoGenerateAvatarMappingIfUnspecified: 1
animationType: 2
humanoidOversampling: 1
avatarSetup: 0
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
remapMaterialsIfMaterialImportModeIsNone: 0
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,103 @@
fileFormatVersion: 2
guid: 56186ccf27ad7864681108ed88349071
ModelImporter:
serializedVersion: 20300
internalIDToNameTable: []
externalObjects: {}
materials:
materialImportMode: 2
materialName: 0
materialSearch: 1
materialLocation: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
resampleCurves: 1
optimizeGameObjects: 0
motionNodeName:
rigImportErrors:
rigImportWarnings:
animationImportErrors:
animationImportWarnings:
animationRetargetingWarnings:
animationDoRetargetingWarnings: 0
importAnimatedCustomProperties: 0
importConstraints: 0
animationCompression: 1
animationRotationError: 0.5
animationPositionError: 0.5
animationScaleError: 0.5
animationWrapMode: 0
extraExposedTransformPaths: []
extraUserProperties: []
clipAnimations: []
isReadable: 0
meshes:
lODScreenPercentages: []
globalScale: 1
meshCompression: 0
addColliders: 0
useSRGBMaterialColor: 1
sortHierarchyByName: 1
importVisibility: 1
importBlendShapes: 1
importCameras: 1
importLights: 1
fileIdsGeneration: 2
swapUVChannels: 0
generateSecondaryUV: 0
useFileUnits: 1
keepQuads: 0
weldVertices: 1
bakeAxisConversion: 0
preserveHierarchy: 0
skinWeightsMode: 0
maxBonesPerVertex: 4
minBoneWeight: 0.001
meshOptimizationFlags: -1
indexFormat: 0
secondaryUVAngleDistortion: 8
secondaryUVAreaDistortion: 15.000001
secondaryUVHardAngle: 88
secondaryUVMarginMethod: 1
secondaryUVMinLightmapResolution: 40
secondaryUVMinObjectScale: 1
secondaryUVPackMargin: 4
useFileScale: 1
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 0
tangentImportMode: 3
normalCalculationMode: 4
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
blendShapeNormalImportMode: 1
normalSmoothingSource: 0
referencedClips: []
importAnimation: 1
humanDescription:
serializedVersion: 3
human: []
skeleton: []
armTwist: 0.5
foreArmTwist: 0.5
upperLegTwist: 0.5
legTwist: 0.5
armStretch: 0.05
legStretch: 0.05
feetSpacing: 0
globalScale: 1
rootMotionBoneName:
hasTranslationDoF: 0
hasExtraRoot: 0
skeletonHasParents: 1
lastHumanDescriptionAvatarSource: {instanceID: 0}
autoGenerateAvatarMappingIfUnspecified: 1
animationType: 2
humanoidOversampling: 1
avatarSetup: 0
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
remapMaterialsIfMaterialImportModeIsNone: 0
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 3acfee4a2c8c7c24b96095fdac3ee33d
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,490 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &734748737383922805
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2107813110650148675}
- component: {fileID: 6434675759608581130}
- component: {fileID: 5634315896501048958}
m_Layer: 0
m_Name: Y
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &2107813110650148675
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 734748737383922805}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0.005, z: 0}
m_LocalScale: {x: 0.005, y: 0.005, z: 0.005}
m_Children: []
m_Father: {fileID: 4831140773533800019}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &6434675759608581130
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 734748737383922805}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &5634315896501048958
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 734748737383922805}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 727f87098255ad04987a60f5f08390bc, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &998394589122162542
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6518585025970797200}
- component: {fileID: 1887305460834055526}
- component: {fileID: 6370029320555855244}
m_Layer: 0
m_Name: Cube
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &6518585025970797200
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 998394589122162542}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.01, y: 0.01, z: 0.01}
m_Children: []
m_Father: {fileID: 8123511170798101446}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &1887305460834055526
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 998394589122162542}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &6370029320555855244
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 998394589122162542}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: c3474c208278e814cb8d1c29aa806e81, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &1884330011090648049
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5222184468966665097}
- component: {fileID: 1819206441057094587}
- component: {fileID: 1391820213567226204}
m_Layer: 0
m_Name: X
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5222184468966665097
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1884330011090648049}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0.005, y: 0, z: 0}
m_LocalScale: {x: 0.005, y: 0.005, z: 0.005}
m_Children: []
m_Father: {fileID: 4831140773533800019}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &1819206441057094587
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1884330011090648049}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &1391820213567226204
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1884330011090648049}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 55fa12dc7870f1e46b6a7f8617949a86, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &6507399986997092475
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 8123511170798101446}
- component: {fileID: 2704860076515533465}
m_Layer: 0
m_Name: Joint
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &8123511170798101446
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6507399986997092475}
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_Children:
- {fileID: 6518585025970797200}
- {fileID: 4831140773533800019}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!120 &2704860076515533465
LineRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6507399986997092475}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 0
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 0
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 10306, guid: 0000000000000000f000000000000000, type: 0}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_Positions:
- {x: 0, y: 0, z: 0}
- {x: 0, y: 0, z: 1}
m_Parameters:
serializedVersion: 3
widthMultiplier: 1
widthCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0.04166603
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
colorGradient:
serializedVersion: 2
key0: {r: 1, g: 1, b: 1, a: 1}
key1: {r: 1, g: 1, b: 1, a: 1}
key2: {r: 0, g: 0, b: 0, a: 0}
key3: {r: 0, g: 0, b: 0, a: 0}
key4: {r: 0, g: 0, b: 0, a: 0}
key5: {r: 0, g: 0, b: 0, a: 0}
key6: {r: 0, g: 0, b: 0, a: 0}
key7: {r: 0, g: 0, b: 0, a: 0}
ctime0: 0
ctime1: 65535
ctime2: 0
ctime3: 0
ctime4: 0
ctime5: 0
ctime6: 0
ctime7: 0
atime0: 0
atime1: 65535
atime2: 0
atime3: 0
atime4: 0
atime5: 0
atime6: 0
atime7: 0
m_Mode: 0
m_NumColorKeys: 2
m_NumAlphaKeys: 2
numCornerVertices: 0
numCapVertices: 0
alignment: 0
textureMode: 0
shadowBias: 0.5
generateLightingData: 0
m_UseWorldSpace: 1
m_Loop: 0
--- !u!1 &6513021459858911318
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 791700661656661422}
- component: {fileID: 8027412990048445551}
- component: {fileID: 3953861510652508848}
m_Layer: 0
m_Name: Z
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &791700661656661422
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6513021459858911318}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0.005}
m_LocalScale: {x: 0.005, y: 0.005, z: 0.005}
m_Children: []
m_Father: {fileID: 4831140773533800019}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &8027412990048445551
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6513021459858911318}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &3953861510652508848
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6513021459858911318}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 7b26add94f09dc44fb811013f007a3aa, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &6855854388140184776
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4831140773533800019}
m_Layer: 0
m_Name: Axis
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4831140773533800019
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6855854388140184776}
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_Children:
- {fileID: 5222184468966665097}
- {fileID: 2107813110650148675}
- {fileID: 791700661656661422}
m_Father: {fileID: 8123511170798101446}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 254b742d65a15d14b9df756ae77de868
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,351 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1001 &467299062429507094
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: -8679921383154817045, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_RootOrder
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -7009038412992213568, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_Enabled
value: 1
objectReference: {fileID: 0}
- target: {fileID: -7009038412992213568, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_Materials.Array.data[0]
value:
objectReference: {fileID: 2100000, guid: 613690cd962241049a0ec289a6ff835e, type: 2}
- target: {fileID: -2886011254516924842, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_LocalPosition.x
value: -0.2
objectReference: {fileID: 0}
- target: {fileID: -2886011254516924842, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -2886011254516924842, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_LocalPosition.z
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: -2886011254516924842, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_LocalRotation.w
value: 0.8660254
objectReference: {fileID: 0}
- target: {fileID: -2886011254516924842, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_LocalRotation.x
value: -0.5
objectReference: {fileID: 0}
- target: {fileID: -2886011254516924842, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -2886011254516924842, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -2886011254516924842, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: -60
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
propertyPath: m_Name
value: Left Hand Tracking
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
--- !u!1 &773853689519989575 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &5876909491052011584 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -2886011254516924842, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &1448281546621806375 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 1325600225764489521, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &330500789068740710 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 209983296314435184, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &3946411421816380034 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -5712721285632293740, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &3094800083807817888 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -6012624077346500938, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &7683948867115331237 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -1378399668587237197, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &7135220269285660042 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 7311957944441736092, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &3789855843017900069 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -5556197524085236173, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &5830835152374552890 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 6239569783937730348, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &4762083549225478452 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 4929893224545990434, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &6191545133100169418 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -3201804815453640996, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &5647312111078691803 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -4025260990191858227, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &4511303806647181083 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 4100370146787934477, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &9150967386063312380 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -539611307452216342, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &653873766723170089 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -8111219613762522817, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &6241780104622499675 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -3394746642390042291, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &2733093729761800249 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 2563049845517938223, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &3721614932501511239 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -5342963413919112623, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &7215852769725028180 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -2134717383426619070, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &394343688656815241 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 217531209976470175, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &708706760777700289 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 1128709220219833815, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &4678747065800207856 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 5085146375408579558, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &6373319304223449305 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 6777559164489776847, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &5200181528285594001 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -3578409481622970489, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &4564316283654639424 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -5103814781551259306, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!4 &3133028404922549142 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 3244543061537447296, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!137 &1785337192100647894 stripped
SkinnedMeshRenderer:
m_CorrespondingSourceObject: {fileID: -7009038412992213568, guid: bf7151579c38e2a44be94ba8773876c1, type: 3}
m_PrefabInstance: {fileID: 467299062429507094}
m_PrefabAsset: {fileID: 0}
--- !u!114 &639686448
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 773853689519989575}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b5b9cf54c47f40ee9c3eb30ea8eb89b9, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Handedness: 1
m_UpdateType: 2
m_PoseUpdated:
m_PersistentCalls:
m_Calls: []
m_JointsUpdated:
m_PersistentCalls:
m_Calls: []
m_TrackingAcquired:
m_PersistentCalls:
m_Calls: []
m_TrackingLost:
m_PersistentCalls:
m_Calls: []
m_TrackingChanged:
m_PersistentCalls:
m_Calls: []
--- !u!114 &5828388934748857539
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 773853689519989575}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 07aaccfa1bc2417d8fbd0d9e2e102c2c, type: 3}
m_Name:
m_EditorClassIdentifier:
m_XRHandTrackingEvents: {fileID: 639686448}
m_RootTransform: {fileID: 5876909491052011584}
m_JointTransformReferences:
- m_XRHandJointID: 1
m_JointTransform: {fileID: 5876909491052011584}
- m_XRHandJointID: 7
m_JointTransform: {fileID: 1448281546621806375}
- m_XRHandJointID: 8
m_JointTransform: {fileID: 330500789068740710}
- m_XRHandJointID: 9
m_JointTransform: {fileID: 3946411421816380034}
- m_XRHandJointID: 10
m_JointTransform: {fileID: 3094800083807817888}
- m_XRHandJointID: 11
m_JointTransform: {fileID: 7683948867115331237}
- m_XRHandJointID: 22
m_JointTransform: {fileID: 7135220269285660042}
- m_XRHandJointID: 23
m_JointTransform: {fileID: 3789855843017900069}
- m_XRHandJointID: 24
m_JointTransform: {fileID: 5830835152374552890}
- m_XRHandJointID: 25
m_JointTransform: {fileID: 4762083549225478452}
- m_XRHandJointID: 26
m_JointTransform: {fileID: 6191545133100169418}
- m_XRHandJointID: 12
m_JointTransform: {fileID: 5647312111078691803}
- m_XRHandJointID: 13
m_JointTransform: {fileID: 4511303806647181083}
- m_XRHandJointID: 14
m_JointTransform: {fileID: 9150967386063312380}
- m_XRHandJointID: 15
m_JointTransform: {fileID: 653873766723170089}
- m_XRHandJointID: 16
m_JointTransform: {fileID: 6241780104622499675}
- m_XRHandJointID: 17
m_JointTransform: {fileID: 3721614932501511239}
- m_XRHandJointID: 18
m_JointTransform: {fileID: 7215852769725028180}
- m_XRHandJointID: 19
m_JointTransform: {fileID: 394343688656815241}
- m_XRHandJointID: 20
m_JointTransform: {fileID: 708706760777700289}
- m_XRHandJointID: 21
m_JointTransform: {fileID: 4678747065800207856}
- m_XRHandJointID: 3
m_JointTransform: {fileID: 6373319304223449305}
- m_XRHandJointID: 4
m_JointTransform: {fileID: 5200181528285594001}
- m_XRHandJointID: 5
m_JointTransform: {fileID: 4564316283654639424}
- m_XRHandJointID: 6
m_JointTransform: {fileID: 3133028404922549142}
- m_XRHandJointID: 2
m_JointTransform: {fileID: 2733093729761800249}
--- !u!114 &6627571522594998540
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 773853689519989575}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 21096d6d8059a5343a1f2b4d050e4789, type: 3}
m_Name:
m_EditorClassIdentifier:
m_XRHandTrackingEvents: {fileID: 639686448}
m_HandMeshRenderer: {fileID: 1785337192100647894}
m_ShowMeshWhenTrackingIsAcquired: 1
m_HideMeshWhenTrackingIsLost: 1

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: b3ed8a0a703ebd34a9e44ed3d9f1fcf6
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,347 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1001 &2863446611106501643
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: -8679921383154817045, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_RootOrder
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -5335555045901936782, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_Materials.Array.data[0]
value:
objectReference: {fileID: 2100000, guid: 613690cd962241049a0ec289a6ff835e, type: 2}
- target: {fileID: 431247075847058747, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_LocalPosition.x
value: 0.2
objectReference: {fileID: 0}
- target: {fileID: 431247075847058747, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 431247075847058747, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_LocalPosition.z
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 431247075847058747, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_LocalRotation.w
value: 0.8660254
objectReference: {fileID: 0}
- target: {fileID: 431247075847058747, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_LocalRotation.x
value: -0.5
objectReference: {fileID: 0}
- target: {fileID: 431247075847058747, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 431247075847058747, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 431247075847058747, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: -60
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 56186ccf27ad7864681108ed88349071, type: 3}
propertyPath: m_Name
value: Right Hand Tracking
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 56186ccf27ad7864681108ed88349071, type: 3}
--- !u!1 &3133494152545806682 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &2468282021181825328 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 431247075847058747, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &3948347335870036048 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -7965080492784997285, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &2604916979015095787 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -8963421420082658848, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &5784116713708183948 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 8644745267644822919, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &2168581177090073220 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 4153823618884826767, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &3288495761867447508 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -8494328768516585249, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &6612406317759570666 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 8970885712544478945, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &2539154032915424125 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -8898582184611268746, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &8701566162615192194 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 6881269161254739593, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &65199002294604442 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 2835758823564002961, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &1018444605519319862 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 2999182382527465277, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &2087600070971462675 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -4952371131901738984, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &5925080913539658014 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 8468768647995122965, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &4158396131418465098 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 2164145347914561345, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &6226456670447996205 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -1020680080924960474, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &7356241863038367081 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -4491320855693958814, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &2721691953714425675 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -9045367783505560768, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &8609037504304071432 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 5819900291352614659, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &5643220763833292161 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 7632966843634336138, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &7629607333241681997 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 5646615596051819590, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &7165857418126095518 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -4265123391628091243, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &1590987666903257055 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -5644888990184678444, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &2353264378503682855 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -8712924870032863444, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &423036791582609439 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -6745288066082061292, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &129824984984905013 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 2769778261254893886, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!4 &4114692932810539891 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 2208825326345590648, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!137 &1317669517487522681 stripped
SkinnedMeshRenderer:
m_CorrespondingSourceObject: {fileID: -5335555045901936782, guid: 56186ccf27ad7864681108ed88349071, type: 3}
m_PrefabInstance: {fileID: 2863446611106501643}
m_PrefabAsset: {fileID: 0}
--- !u!114 &513866637
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3133494152545806682}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b5b9cf54c47f40ee9c3eb30ea8eb89b9, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Handedness: 2
m_UpdateType: 2
m_PoseUpdated:
m_PersistentCalls:
m_Calls: []
m_JointsUpdated:
m_PersistentCalls:
m_Calls: []
m_TrackingAcquired:
m_PersistentCalls:
m_Calls: []
m_TrackingLost:
m_PersistentCalls:
m_Calls: []
m_TrackingChanged:
m_PersistentCalls:
m_Calls: []
--- !u!114 &513866642
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3133494152545806682}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 07aaccfa1bc2417d8fbd0d9e2e102c2c, type: 3}
m_Name:
m_EditorClassIdentifier:
m_XRHandTrackingEvents: {fileID: 513866637}
m_RootTransform: {fileID: 2468282021181825328}
m_JointTransformReferences:
- m_XRHandJointID: 1
m_JointTransform: {fileID: 2468282021181825328}
- m_XRHandJointID: 7
m_JointTransform: {fileID: 3948347335870036048}
- m_XRHandJointID: 8
m_JointTransform: {fileID: 2604916979015095787}
- m_XRHandJointID: 9
m_JointTransform: {fileID: 5784116713708183948}
- m_XRHandJointID: 10
m_JointTransform: {fileID: 2168581177090073220}
- m_XRHandJointID: 11
m_JointTransform: {fileID: 3288495761867447508}
- m_XRHandJointID: 22
m_JointTransform: {fileID: 6612406317759570666}
- m_XRHandJointID: 23
m_JointTransform: {fileID: 2539154032915424125}
- m_XRHandJointID: 24
m_JointTransform: {fileID: 8701566162615192194}
- m_XRHandJointID: 25
m_JointTransform: {fileID: 65199002294604442}
- m_XRHandJointID: 26
m_JointTransform: {fileID: 1018444605519319862}
- m_XRHandJointID: 12
m_JointTransform: {fileID: 2087600070971462675}
- m_XRHandJointID: 13
m_JointTransform: {fileID: 5925080913539658014}
- m_XRHandJointID: 14
m_JointTransform: {fileID: 4158396131418465098}
- m_XRHandJointID: 15
m_JointTransform: {fileID: 6226456670447996205}
- m_XRHandJointID: 16
m_JointTransform: {fileID: 7356241863038367081}
- m_XRHandJointID: 17
m_JointTransform: {fileID: 8609037504304071432}
- m_XRHandJointID: 18
m_JointTransform: {fileID: 5643220763833292161}
- m_XRHandJointID: 19
m_JointTransform: {fileID: 7629607333241681997}
- m_XRHandJointID: 20
m_JointTransform: {fileID: 7165857418126095518}
- m_XRHandJointID: 21
m_JointTransform: {fileID: 1590987666903257055}
- m_XRHandJointID: 3
m_JointTransform: {fileID: 2353264378503682855}
- m_XRHandJointID: 4
m_JointTransform: {fileID: 423036791582609439}
- m_XRHandJointID: 5
m_JointTransform: {fileID: 129824984984905013}
- m_XRHandJointID: 6
m_JointTransform: {fileID: 4114692932810539891}
- m_XRHandJointID: 2
m_JointTransform: {fileID: 2721691953714425675}
--- !u!114 &2726143015963839043
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3133494152545806682}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 21096d6d8059a5343a1f2b4d050e4789, type: 3}
m_Name:
m_EditorClassIdentifier:
m_XRHandTrackingEvents: {fileID: 513866637}
m_HandMeshRenderer: {fileID: 1317669517487522681}
m_ShowMeshWhenTrackingIsAcquired: 1
m_HideMeshWhenTrackingIsLost: 1

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 3f7511fbc40ae7a4b89c3298a3de199d
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,131 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &8538602047018081646
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7702457921730198461}
- component: {fileID: 3262118000911692578}
m_Layer: 0
m_Name: VelocityPrefab
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &7702457921730198461
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8538602047018081646}
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_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!120 &3262118000911692578
LineRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8538602047018081646}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_MotionVectors: 0
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 0
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 10306, guid: 0000000000000000f000000000000000, type: 0}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_Positions:
- {x: 0, y: 0, z: 0}
- {x: 0, y: 0, z: 1}
m_Parameters:
serializedVersion: 3
widthMultiplier: 1
widthCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0.013891645
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
colorGradient:
serializedVersion: 2
key0: {r: 1, g: 0, b: 0, a: 1}
key1: {r: 0, g: 0, b: 1, a: 1}
key2: {r: 0, g: 0, b: 0, a: 0}
key3: {r: 0, g: 0, b: 0, a: 0}
key4: {r: 0, g: 0, b: 0, a: 0}
key5: {r: 0, g: 0, b: 0, a: 0}
key6: {r: 0, g: 0, b: 0, a: 0}
key7: {r: 0, g: 0, b: 0, a: 0}
ctime0: 0
ctime1: 65535
ctime2: 0
ctime3: 0
ctime4: 0
ctime5: 0
ctime6: 0
ctime7: 0
atime0: 0
atime1: 65535
atime2: 0
atime3: 0
atime4: 0
atime5: 0
atime6: 0
atime7: 0
m_Mode: 0
m_NumColorKeys: 2
m_NumAlphaKeys: 2
numCornerVertices: 0
numCapVertices: 0
alignment: 0
textureMode: 0
shadowBias: 0.5
generateLightingData: 0
m_UseWorldSpace: 1
m_Loop: 0

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 629fd7882ec6bfc499a5fcf20035282b
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,3 @@
# Hand Visualizer Sample
Demonstrates driving meshes and free-floating debug-draw objects on an XR Origin by using `XRHandSubsystem`.

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: b0057a2d371351e41ae711f975c741e2
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 0c161b4c00c888c41a1bb8253e94492c
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,171 @@
using System.Collections.Generic;
using UnityEngine.XR.Hands.Processing;
namespace UnityEngine.XR.Hands.Samples.VisualizerSample
{
/// <summary>
/// Example hand processor that applies transformations on the root poses to
/// modify the hands skeleton. Note it is possible to modify the bones
/// directly for more advanced use cases that are not shown here.
/// </summary>
public class HandProcessor : MonoBehaviour, IXRHandProcessor
{
/// <inheritdoc />
public int callbackOrder => 0;
/// <summary>
/// The mode to use for the sample processor.
/// </summary>
public enum ProcessorExampleMode
{
/// <summary>
/// No processing is applied.
/// </summary>
None,
/// <summary>
/// Smooths the hand root pose of the left and right hands with interpolated positions
/// </summary>
Smoothing,
/// <summary>
/// Inverts the left and right hands.
/// </summary>
Invert
}
// Variables used for smoothing hand movements.
bool m_FirstFrame = false;
Vector3 m_LastLeftHandPosition;
Vector3 m_LastRightHandPosition;
Pose m_LeftHandPose = Pose.identity;
Pose m_RightHandPose = Pose.identity;
[SerializeField]
[Tooltip("The mode to use for the sample processor.")]
ProcessorExampleMode m_ProcessorExampleMode = ProcessorExampleMode.Smoothing;
ProcessorExampleMode m_LastProcessorExampleMode = ProcessorExampleMode.None;
/// <summary>
/// The <see cref="ProcessorExampleMode"/> to use for the sample processor.
/// </summary>
public ProcessorExampleMode processorExampleMode
{
get => m_ProcessorExampleMode;
set => m_ProcessorExampleMode = value;
}
// Smoothing factors for the left and right hands.
[Header("Smoothing parameters")]
[SerializeField]
[Tooltip("The smoothing factor to use when smoothing the root of the left hand in the sample processor. Use 0 for no smoothing.")]
float m_LeftHandSmoothingFactor = 16f;
[SerializeField]
[Tooltip("The smoothing factor to use when smoothing the root of the right hand in the sample processor. Use 0 for no smoothing.")]
float m_RightHandSmoothingFactor = 16f;
/// <inheritdoc />
public void ProcessJoints(XRHandSubsystem subsystem, XRHandSubsystem.UpdateSuccessFlags successFlags, XRHandSubsystem.UpdateType updateType)
{
switch (m_ProcessorExampleMode)
{
case ProcessorExampleMode.Smoothing:
SmoothHandsExample(subsystem, successFlags, updateType, m_LastProcessorExampleMode != m_ProcessorExampleMode);
break;
case ProcessorExampleMode.Invert:
InvertHandsExample(subsystem, successFlags, updateType);
break;
}
m_LastProcessorExampleMode = m_ProcessorExampleMode;
}
// Smooths the hand movements of an XRHandSubsystem by updating the root
// pose of the left and right hands with interpolated positions.
void SmoothHandsExample(XRHandSubsystem subsystem, XRHandSubsystem.UpdateSuccessFlags successFlags, XRHandSubsystem.UpdateType updateType, bool modeChanged)
{
var leftHand = subsystem.leftHand;
var rightHand = subsystem.rightHand;
if (leftHand.isTracked && m_LeftHandSmoothingFactor > 0)
{
var leftPose = leftHand.rootPose;
var currentLeftHandPosition = leftPose.position;
if (!m_FirstFrame && !modeChanged)
{
float tweenAmt = Time.deltaTime * m_LeftHandSmoothingFactor;
currentLeftHandPosition = Vector3.Lerp(m_LastLeftHandPosition, currentLeftHandPosition, tweenAmt);
m_LeftHandPose.position = currentLeftHandPosition;
m_LeftHandPose.rotation = leftPose.rotation;
leftHand.SetRootPose(m_LeftHandPose);
subsystem.SetCorrespondingHand(leftHand);
}
m_LastLeftHandPosition = currentLeftHandPosition;
}
if (rightHand.isTracked && m_RightHandSmoothingFactor > 0)
{
var rightPose = rightHand.rootPose;
var currentRightHandPosition = rightPose.position;
if (!m_FirstFrame && !modeChanged)
{
float tweenAmt = Time.deltaTime * m_RightHandSmoothingFactor;
currentRightHandPosition = Vector3.Lerp(m_LastRightHandPosition, currentRightHandPosition, tweenAmt);
m_RightHandPose.position = currentRightHandPosition;
m_RightHandPose.rotation = rightPose.rotation;
rightHand.SetRootPose(m_RightHandPose);
subsystem.SetCorrespondingHand(rightHand);
}
m_LastRightHandPosition = currentRightHandPosition;
}
}
// Call this from process joints to try inverting the user's hands.
void InvertHandsExample(XRHandSubsystem subsystem, XRHandSubsystem.UpdateSuccessFlags successFlags, XRHandSubsystem.UpdateType updateType)
{
var leftHand = subsystem.leftHand;
var leftHandPose = leftHand.rootPose;
var rightHand = subsystem.rightHand;
var rightHandPose = rightHand.rootPose;
if (leftHand.isTracked)
{
leftHand.SetRootPose(rightHandPose);
subsystem.SetCorrespondingHand(leftHand);
rightHand.SetRootPose(leftHandPose);
subsystem.SetCorrespondingHand(rightHand);
}
}
void Update()
{
if (m_Subsystem != null)
return;
SubsystemManager.GetSubsystems(s_SubsystemsReuse);
if (s_SubsystemsReuse.Count == 0)
return;
m_Subsystem = s_SubsystemsReuse[0];
m_Subsystem.RegisterProcessor(this);
}
void OnDisable()
{
if (m_Subsystem != null)
{
m_Subsystem.UnregisterProcessor(this);
m_Subsystem = null;
}
}
XRHandSubsystem m_Subsystem;
static List<XRHandSubsystem> s_SubsystemsReuse = new List<XRHandSubsystem>();
}
}

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: ac5903b776721d74786a2e43f00b949a
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,573 @@
using System;
using System.Collections.Generic;
namespace UnityEngine.XR.Hands.Samples.VisualizerSample
{
/// <summary>
/// This component visualizes the hand joints and mesh for the left and right hands.
/// </summary>
public class HandVisualizer : MonoBehaviour
{
/// <summary>
/// The type of velocity to visualize.
/// </summary>
public enum VelocityType
{
/// <summary>
/// Visualize the linear velocity of the joint.
/// </summary>
Linear,
/// <summary>
/// Visualize the angular velocity of the joint.
/// </summary>
Angular,
/// <summary>
/// Do not visualize velocity.
/// </summary>
None,
}
[SerializeField]
[Tooltip("If this is enabled, this component will enable the Input System internal feature flag 'USE_OPTIMIZED_CONTROLS'. You must have at least version 1.5.0 of the Input System and have its backend enabled for this to take effect.")]
bool m_UseOptimizedControls;
[SerializeField]
[Tooltip("References either a prefab or a GameObject in the scene that will be used to visualize the left hand.")]
GameObject m_LeftHandMesh;
[SerializeField]
[Tooltip("References either a prefab or a GameObject in the scene that will be used to visualize the right hand.")]
GameObject m_RightHandMesh;
[SerializeField]
[Tooltip("(Optional) If this is set, the hand meshes will be assigned this material.")]
Material m_HandMeshMaterial;
[SerializeField]
[Tooltip("Tells the Hand Visualizer to draw the meshes for the hands.")]
bool m_DrawMeshes;
bool m_PreviousDrawMeshes;
/// <summary>
/// Tells the Hand Visualizer to draw the meshes for the hands.
/// </summary>
public bool drawMeshes
{
get => m_DrawMeshes;
set => m_DrawMeshes = value;
}
[SerializeField]
[Tooltip("The prefab that will be used to visualize the joints for debugging.")]
GameObject m_DebugDrawPrefab;
[SerializeField]
[Tooltip("Tells the Hand Visualizer to draw the debug joints for the hands.")]
bool m_DebugDrawJoints;
bool m_PreviousDebugDrawJoints;
/// <summary>
/// Tells the Hand Visualizer to draw the debug joints for the hands.
/// </summary>
public bool debugDrawJoints
{
get => m_DebugDrawJoints;
set => m_DebugDrawJoints = value;
}
[SerializeField]
[Tooltip("Prefab to use for visualizing the velocity.")]
GameObject m_VelocityPrefab;
[SerializeField]
[Tooltip("The type of velocity to visualize.")]
VelocityType m_VelocityType;
VelocityType m_PreviousVelocityType;
/// <summary>
/// The type of velocity to visualize.
/// </summary>
public VelocityType velocityType
{
get => m_VelocityType;
set => m_VelocityType = value;
}
XRHandSubsystem m_Subsystem;
HandGameObjects m_LeftHandGameObjects;
HandGameObjects m_RightHandGameObjects;
static readonly List<XRHandSubsystem> s_SubsystemsReuse = new List<XRHandSubsystem>();
/// <summary>
/// See <see cref="MonoBehaviour"/>.
/// </summary>
protected void Awake()
{
#if ENABLE_INPUT_SYSTEM
if (m_UseOptimizedControls)
InputSystem.InputSystem.settings.SetInternalFeatureFlag("USE_OPTIMIZED_CONTROLS", true);
#endif // ENABLE_INPUT_SYSTEM
}
/// <summary>
/// See <see cref="MonoBehaviour"/>.
/// </summary>
protected void OnEnable()
{
if (m_Subsystem == null)
return;
UpdateRenderingVisibility(m_LeftHandGameObjects, m_Subsystem.leftHand.isTracked);
UpdateRenderingVisibility(m_RightHandGameObjects, m_Subsystem.rightHand.isTracked);
}
/// <summary>
/// See <see cref="MonoBehaviour"/>.
/// </summary>
protected void OnDisable()
{
if (m_Subsystem != null)
{
m_Subsystem.trackingAcquired -= OnTrackingAcquired;
m_Subsystem.trackingLost -= OnTrackingLost;
m_Subsystem.updatedHands -= OnUpdatedHands;
m_Subsystem = null;
}
UpdateRenderingVisibility(m_LeftHandGameObjects, false);
UpdateRenderingVisibility(m_RightHandGameObjects, false);
}
/// <summary>
/// See <see cref="MonoBehaviour"/>.
/// </summary>
protected void OnDestroy()
{
if (m_LeftHandGameObjects != null)
{
m_LeftHandGameObjects.OnDestroy();
m_LeftHandGameObjects = null;
}
if (m_RightHandGameObjects != null)
{
m_RightHandGameObjects.OnDestroy();
m_RightHandGameObjects = null;
}
}
/// <summary>
/// See <see cref="MonoBehaviour"/>.
/// </summary>
protected void Update()
{
if (m_Subsystem != null && m_Subsystem.running)
return;
SubsystemManager.GetSubsystems(s_SubsystemsReuse);
var foundRunningHandSubsystem = false;
for (var i = 0; i < s_SubsystemsReuse.Count; ++i)
{
var handSubsystem = s_SubsystemsReuse[i];
if (handSubsystem.running)
{
UnsubscribeHandSubsystem();
m_Subsystem = handSubsystem;
foundRunningHandSubsystem = true;
break;
}
}
if (!foundRunningHandSubsystem)
return;
if (m_LeftHandGameObjects == null)
{
m_LeftHandGameObjects = new HandGameObjects(
Handedness.Left,
transform,
m_LeftHandMesh,
m_HandMeshMaterial,
m_DebugDrawPrefab,
m_VelocityPrefab);
}
if (m_RightHandGameObjects == null)
{
m_RightHandGameObjects = new HandGameObjects(
Handedness.Right,
transform,
m_RightHandMesh,
m_HandMeshMaterial,
m_DebugDrawPrefab,
m_VelocityPrefab);
}
UpdateRenderingVisibility(m_LeftHandGameObjects, m_Subsystem.leftHand.isTracked);
UpdateRenderingVisibility(m_RightHandGameObjects, m_Subsystem.rightHand.isTracked);
m_PreviousDrawMeshes = m_DrawMeshes;
m_PreviousDebugDrawJoints = m_DebugDrawJoints;
m_PreviousVelocityType = m_VelocityType;
SubscribeHandSubsystem();
}
void SubscribeHandSubsystem()
{
if (m_Subsystem == null)
return;
m_Subsystem.trackingAcquired += OnTrackingAcquired;
m_Subsystem.trackingLost += OnTrackingLost;
m_Subsystem.updatedHands += OnUpdatedHands;
}
void UnsubscribeHandSubsystem()
{
if (m_Subsystem == null)
return;
m_Subsystem.trackingAcquired -= OnTrackingAcquired;
m_Subsystem.trackingLost -= OnTrackingLost;
m_Subsystem.updatedHands -= OnUpdatedHands;
}
void UpdateRenderingVisibility(HandGameObjects handGameObjects, bool isTracked)
{
if (handGameObjects == null)
return;
handGameObjects.ToggleDrawMesh(m_DrawMeshes);
handGameObjects.ToggleDebugDrawJoints(m_DebugDrawJoints && isTracked);
handGameObjects.SetVelocityType(isTracked ? m_VelocityType : VelocityType.None);
}
void OnTrackingAcquired(XRHand hand)
{
switch (hand.handedness)
{
case Handedness.Left:
UpdateRenderingVisibility(m_LeftHandGameObjects, true);
break;
case Handedness.Right:
UpdateRenderingVisibility(m_RightHandGameObjects, true);
break;
}
}
void OnTrackingLost(XRHand hand)
{
switch (hand.handedness)
{
case Handedness.Left:
UpdateRenderingVisibility(m_LeftHandGameObjects, false);
break;
case Handedness.Right:
UpdateRenderingVisibility(m_RightHandGameObjects, false);
break;
}
}
void OnUpdatedHands(XRHandSubsystem subsystem, XRHandSubsystem.UpdateSuccessFlags updateSuccessFlags, XRHandSubsystem.UpdateType updateType)
{
// We have no game logic depending on the Transforms, so early out here
// (add game logic before this return here, directly querying from
// subsystem.leftHand and subsystem.rightHand using GetJoint on each hand)
if (updateType == XRHandSubsystem.UpdateType.Dynamic)
return;
bool leftHandTracked = subsystem.leftHand.isTracked;
bool rightHandTracked = subsystem.rightHand.isTracked;
if (m_PreviousDrawMeshes != m_DrawMeshes)
{
m_LeftHandGameObjects.ToggleDrawMesh(m_DrawMeshes);
m_RightHandGameObjects.ToggleDrawMesh(m_DrawMeshes);
m_PreviousDrawMeshes = m_DrawMeshes;
}
if (m_PreviousDebugDrawJoints != m_DebugDrawJoints)
{
m_LeftHandGameObjects.ToggleDebugDrawJoints(m_DebugDrawJoints && leftHandTracked);
m_RightHandGameObjects.ToggleDebugDrawJoints(m_DebugDrawJoints && rightHandTracked);
m_PreviousDebugDrawJoints = m_DebugDrawJoints;
}
if (m_PreviousVelocityType != m_VelocityType)
{
m_LeftHandGameObjects.SetVelocityType(leftHandTracked ? m_VelocityType : VelocityType.None);
m_RightHandGameObjects.SetVelocityType(rightHandTracked ? m_VelocityType : VelocityType.None);
m_PreviousVelocityType = m_VelocityType;
}
m_LeftHandGameObjects.UpdateJoints(
subsystem.leftHand,
(updateSuccessFlags & XRHandSubsystem.UpdateSuccessFlags.LeftHandJoints) != 0,
m_DebugDrawJoints,
m_VelocityType);
m_RightHandGameObjects.UpdateJoints(
subsystem.rightHand,
(updateSuccessFlags & XRHandSubsystem.UpdateSuccessFlags.RightHandJoints) != 0,
m_DebugDrawJoints,
m_VelocityType);
}
class HandGameObjects
{
GameObject m_HandRoot;
GameObject m_DrawJointsParent;
GameObject[] m_DrawJoints = new GameObject[XRHandJointID.EndMarker.ToIndex()];
GameObject[] m_VelocityParents = new GameObject[XRHandJointID.EndMarker.ToIndex()];
LineRenderer[] m_Lines = new LineRenderer[XRHandJointID.EndMarker.ToIndex()];
static Vector3[] s_LinePointsReuse = new Vector3[2];
XRHandMeshController m_MeshController;
const float k_LineWidth = 0.005f;
public HandGameObjects(
Handedness handedness,
Transform parent,
GameObject meshPrefab,
Material meshMaterial,
GameObject debugDrawPrefab,
GameObject velocityPrefab)
{
void AssignJoint(
XRHandJointID jointId,
Transform jointDrivenTransform,
Transform drawJointsParent)
{
var jointIndex = jointId.ToIndex();
m_DrawJoints[jointIndex] = Instantiate(debugDrawPrefab);
m_DrawJoints[jointIndex].transform.parent = drawJointsParent;
m_DrawJoints[jointIndex].name = jointId.ToString();
m_VelocityParents[jointIndex] = Instantiate(velocityPrefab);
m_VelocityParents[jointIndex].transform.parent = jointDrivenTransform;
m_Lines[jointIndex] = m_DrawJoints[jointIndex].GetComponent<LineRenderer>();
m_Lines[jointIndex].startWidth = m_Lines[jointIndex].endWidth = k_LineWidth;
s_LinePointsReuse[0] = s_LinePointsReuse[1] = jointDrivenTransform.position;
m_Lines[jointIndex].SetPositions(s_LinePointsReuse);
}
var isSceneObject = meshPrefab.scene.IsValid();
m_HandRoot = isSceneObject ? meshPrefab : Instantiate(meshPrefab, parent);
m_HandRoot.SetActive(false); // Deactivate so that added components do not run OnEnable before they are finished being set up
m_HandRoot.transform.localPosition = Vector3.zero;
m_HandRoot.transform.localRotation = Quaternion.identity;
var handEvents = m_HandRoot.GetComponent<XRHandTrackingEvents>();
if (handEvents == null)
{
handEvents = m_HandRoot.AddComponent<XRHandTrackingEvents>();
handEvents.updateType = XRHandTrackingEvents.UpdateTypes.Dynamic;
handEvents.handedness = handedness;
}
m_MeshController = m_HandRoot.GetComponent<XRHandMeshController>();
if (m_MeshController == null)
{
m_MeshController = m_HandRoot.AddComponent<XRHandMeshController>();
for (var childIndex = 0; childIndex < m_HandRoot.transform.childCount; ++childIndex)
{
var childTransform = m_HandRoot.transform.GetChild(childIndex);
if (childTransform.TryGetComponent<SkinnedMeshRenderer>(out var renderer))
m_MeshController.handMeshRenderer = renderer;
}
m_MeshController.handTrackingEvents = handEvents;
}
if (meshMaterial != null)
{
m_MeshController.handMeshRenderer.sharedMaterial = meshMaterial;
}
var skeletonDriver = m_HandRoot.GetComponent<XRHandSkeletonDriver>();
if (skeletonDriver == null)
{
skeletonDriver = m_HandRoot.AddComponent<XRHandSkeletonDriver>();
skeletonDriver.jointTransformReferences = new List<JointToTransformReference>();
Transform root = null;
for (var childIndex = 0; childIndex < m_HandRoot.transform.childCount; ++childIndex)
{
var child = m_HandRoot.transform.GetChild(childIndex);
if (child.gameObject.name.EndsWith(XRHandJointID.Wrist.ToString()))
root = child;
}
skeletonDriver.rootTransform = root;
XRHandSkeletonDriverUtility.FindJointsFromRoot(skeletonDriver);
skeletonDriver.InitializeFromSerializedReferences();
skeletonDriver.handTrackingEvents = handEvents;
}
m_DrawJointsParent = new GameObject();
m_DrawJointsParent.transform.parent = parent;
m_DrawJointsParent.transform.localPosition = Vector3.zero;
m_DrawJointsParent.transform.localRotation = Quaternion.identity;
m_DrawJointsParent.name = handedness + "HandDebugDrawJoints";
for (var i = 0; i < skeletonDriver.jointTransformReferences.Count; i++)
{
var jointTransformReference = skeletonDriver.jointTransformReferences[i];
var jointTransform = jointTransformReference.jointTransform;
var jointID = jointTransformReference.xrHandJointID;
AssignJoint(jointID, jointTransform, m_DrawJointsParent.transform);
}
m_HandRoot.SetActive(true);
}
public void OnDestroy()
{
Destroy(m_HandRoot);
m_HandRoot = null;
for (var jointIndex = 0; jointIndex < m_DrawJoints.Length; ++jointIndex)
{
Destroy(m_DrawJoints[jointIndex]);
m_DrawJoints[jointIndex] = null;
}
for (var jointIndex = 0; jointIndex < m_VelocityParents.Length; ++jointIndex)
{
Destroy(m_VelocityParents[jointIndex]);
m_VelocityParents[jointIndex] = null;
}
Destroy(m_DrawJointsParent);
m_DrawJointsParent = null;
}
public void ToggleDrawMesh(bool drawMesh)
{
m_MeshController.enabled = drawMesh;
if (!drawMesh)
m_MeshController.handMeshRenderer.enabled = false;
}
public void ToggleDebugDrawJoints(bool debugDrawJoints)
{
for (int jointIndex = 0; jointIndex < m_DrawJoints.Length; ++jointIndex)
{
ToggleRenderers<MeshRenderer>(debugDrawJoints, m_DrawJoints[jointIndex].transform);
m_Lines[jointIndex].enabled = debugDrawJoints;
}
m_Lines[0].enabled = false;
}
public void SetVelocityType(VelocityType velocityType)
{
for (int jointIndex = 0; jointIndex < m_VelocityParents.Length; ++jointIndex)
ToggleRenderers<LineRenderer>(velocityType != VelocityType.None, m_VelocityParents[jointIndex].transform);
}
public void UpdateJoints(
XRHand hand,
bool areJointsTracked,
bool debugDrawJoints,
VelocityType velocityType)
{
if (!areJointsTracked)
return;
var wristPose = Pose.identity;
var parentIndex = XRHandJointID.Wrist.ToIndex();
UpdateJoint(debugDrawJoints, velocityType, hand.GetJoint(XRHandJointID.Wrist), ref wristPose, ref parentIndex);
UpdateJoint(debugDrawJoints, velocityType, hand.GetJoint(XRHandJointID.Palm), ref wristPose, ref parentIndex, false);
for (var fingerIndex = (int)XRHandFingerID.Thumb;
fingerIndex <= (int)XRHandFingerID.Little;
++fingerIndex)
{
var parentPose = wristPose;
var fingerId = (XRHandFingerID)fingerIndex;
parentIndex = XRHandJointID.Wrist.ToIndex();
var jointIndexBack = fingerId.GetBackJointID().ToIndex();
for (var jointIndex = fingerId.GetFrontJointID().ToIndex();
jointIndex <= jointIndexBack;
++jointIndex)
{
UpdateJoint(debugDrawJoints, velocityType, hand.GetJoint(XRHandJointIDUtility.FromIndex(jointIndex)), ref parentPose, ref parentIndex);
}
}
}
void UpdateJoint(
bool debugDrawJoints,
VelocityType velocityType,
XRHandJoint joint,
ref Pose parentPose,
ref int parentIndex,
bool cacheParentPose = true)
{
if (joint.id == XRHandJointID.Invalid)
return;
var jointIndex = joint.id.ToIndex();
if (!joint.TryGetPose(out var pose))
return;
m_DrawJoints[jointIndex].transform.localPosition = pose.position;
m_DrawJoints[jointIndex].transform.localRotation = pose.rotation;
if (debugDrawJoints && joint.id != XRHandJointID.Wrist)
{
s_LinePointsReuse[0] = m_DrawJoints[parentIndex].transform.position;
s_LinePointsReuse[1] = m_DrawJoints[jointIndex].transform.position;
m_Lines[jointIndex].SetPositions(s_LinePointsReuse);
}
if (cacheParentPose)
{
parentPose = pose;
parentIndex = jointIndex;
}
if (velocityType != VelocityType.None && m_VelocityParents[jointIndex].TryGetComponent<LineRenderer>(out var renderer))
{
m_VelocityParents[jointIndex].transform.localPosition = Vector3.zero;
m_VelocityParents[jointIndex].transform.localRotation = Quaternion.identity;
s_LinePointsReuse[0] = s_LinePointsReuse[1] = m_VelocityParents[jointIndex].transform.position;
if (velocityType == VelocityType.Linear)
{
if (joint.TryGetLinearVelocity(out var velocity))
s_LinePointsReuse[1] += velocity;
}
else if (velocityType == VelocityType.Angular)
{
if (joint.TryGetAngularVelocity(out var velocity))
s_LinePointsReuse[1] += 0.05f * velocity.normalized;
}
renderer.SetPositions(s_LinePointsReuse);
}
}
static void ToggleRenderers<TRenderer>(bool toggle, Transform rendererTransform)
where TRenderer : Renderer
{
if (rendererTransform.TryGetComponent<TRenderer>(out var renderer))
renderer.enabled = toggle;
for (var childIndex = 0; childIndex < rendererTransform.childCount; ++childIndex)
ToggleRenderers<TRenderer>(toggle, rendererTransform.GetChild(childIndex));
}
}
}
}

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 2e9813c68d7d6f44282ace8bd2d1fd46
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,18 @@
{
"name": "Unity.XR.Hands.Samples.VisualizerSample",
"rootNamespace": "",
"references": [
"GUID:75469ad4d38634e559750d17036d5f7c",
"GUID:dc960734dc080426fa6612f1c5fe95f3",
"GUID:ce522b6ed64c8be4c989a1d26d0e3275"
],
"includePlatforms": [],
"excludePlatforms": [],
"allowUnsafeCode": false,
"overrideReferences": false,
"precompiledReferences": [],
"autoReferenced": true,
"defineConstraints": [],
"versionDefines": [],
"noEngineReferences": false
}

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 60e576d96416ac94182fe26f63acf9ff
AssemblyDefinitionImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 665a54f6fb9f8ad4aa1a710b41c88dd9
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d1b76b5e2c89d9e4eb9b3600eee1ef3f
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 34efdb46ac239744fb1f6582f302c375
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,4 @@
{
"displayName": "Hands Interaction Demo",
"description": "Sample scene and other assets for hand-tracking integration with the XR Interaction Toolkit."
}

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 433598263b9448741a163c607dcda8a5
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,74 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b5d80f45fb5f4418a5e84a476e517628, type: 3}
m_Name: FingerColorAffordanceTheme
m_EditorClassIdentifier:
m_Comments: 'For each state in the list, there are 2 values (Start and End).
Default
=> End value is chosen | Hovering => Blend between [Start,End] with input
Select
=> Value can be animated between [Start,End] for click anim.'
m_ReadOnly: 1
m_Value:
m_StateAnimationCurve:
m_UseConstant: 1
m_ConstantValue:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Variable: {fileID: 0}
m_List:
- stateName: disabled
animationStateStartValue: {r: 1, g: 1, b: 1, a: 0}
animationStateEndValue: {r: 0.9019608, g: 0.9019608, b: 0.9019608, a: 0}
- stateName: idle
animationStateStartValue: {r: 0.90196085, g: 0.90196085, b: 0.90196085, a: 0}
animationStateEndValue: {r: 0.90196085, g: 0.90196085, b: 0.90196085, a: 0}
- stateName: hovered
animationStateStartValue: {r: 0.2509804, g: 0.7019608, b: 0.9019608, a: 0.5254902}
animationStateEndValue: {r: 0.2509804, g: 0.7019608, b: 0.9019608, a: 0.5254902}
- stateName: hoveredPriority
animationStateStartValue: {r: 0.2509804, g: 0.7019608, b: 0.9019608, a: 0.5254902}
animationStateEndValue: {r: 0.2509804, g: 0.7019608, b: 0.9019608, a: 0.5254902}
- stateName: selected
animationStateStartValue: {r: 0, g: 0.627451, b: 1, a: 1}
animationStateEndValue: {r: 0, g: 0.627451, b: 1, a: 1}
- stateName: activated
animationStateStartValue: {r: 0, g: 0, b: 0, a: 0}
animationStateEndValue: {r: 0, g: 0, b: 0, a: 0}
- stateName: focused
animationStateStartValue: {r: 0.90196085, g: 0.90196085, b: 0.90196085, a: 0}
animationStateEndValue: {r: 0.90196085, g: 0.90196085, b: 0.90196085, a: 0}
m_ColorBlendMode: 0
m_BlendAmount: 1

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: ec1df508c6fb9eb45ae9f181ff6bbe82
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,74 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b5d80f45fb5f4418a5e84a476e517628, type: 3}
m_Name: HandEdgeColorAffordanceTheme
m_EditorClassIdentifier:
m_Comments: 'For each state in the list, there are 2 values (Start and End).
Default
=> End value is chosen | Hovering => Blend between [Start,End] with input
Select
=> Value can be animated between [Start,End] for click anim.'
m_ReadOnly: 1
m_Value:
m_StateAnimationCurve:
m_UseConstant: 1
m_ConstantValue:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Variable: {fileID: 0}
m_List:
- stateName: disabled
animationStateStartValue: {r: 0.76470596, g: 0.7843138, b: 0.8117648, a: 0.60784316}
animationStateEndValue: {r: 0.76470596, g: 0.7843138, b: 0.8117648, a: 0.60784316}
- stateName: idle
animationStateStartValue: {r: 1, g: 1, b: 1, a: 0.8}
animationStateEndValue: {r: 1, g: 1, b: 1, a: 0.8}
- stateName: hovered
animationStateStartValue: {r: 0.2509804, g: 0.7019608, b: 0.90196085, a: 0.5254902}
animationStateEndValue: {r: 0.2509804, g: 0.7019608, b: 0.9019608, a: 0.5254902}
- stateName: hoveredPriority
animationStateStartValue: {r: 0.2509804, g: 0.7019608, b: 0.90196085, a: 0.8}
animationStateEndValue: {r: 0.2509804, g: 0.7019608, b: 0.9019608, a: 0.8}
- stateName: selected
animationStateStartValue: {r: 0.2509804, g: 0.7019608, b: 0.9019608, a: 1}
animationStateEndValue: {r: 0.2509804, g: 0.7019608, b: 0.9019608, a: 1}
- stateName: activated
animationStateStartValue: {r: 1, g: 1, b: 1, a: 0.8}
animationStateEndValue: {r: 1, g: 1, b: 1, a: 0.8}
- stateName: focused
animationStateStartValue: {r: 1, g: 1, b: 1, a: 0.8}
animationStateEndValue: {r: 1, g: 1, b: 1, a: 0.8}
m_ColorBlendMode: 0
m_BlendAmount: 1

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f94337e1a5a93c7438d8f8508b246e6d
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,74 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b5d80f45fb5f4418a5e84a476e517628, type: 3}
m_Name: InteractionColorAffordanceTheme
m_EditorClassIdentifier:
m_Comments: 'For each state in the list, there are 2 values (Start and End).
Default
=> End value is chosen | Hovering => Blend between [Start,End] with input
Select
=> Value can be animated between [Start,End] for click anim.'
m_ReadOnly: 1
m_Value:
m_StateAnimationCurve:
m_UseConstant: 1
m_ConstantValue:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Variable: {fileID: 0}
m_List:
- stateName: disabled
animationStateStartValue: {r: 0.76470596, g: 0.7843138, b: 0.8117648, a: 0.60784316}
animationStateEndValue: {r: 0.76470596, g: 0.7843138, b: 0.8117648, a: 0.60784316}
- stateName: idle
animationStateStartValue: {r: 0.90196085, g: 0.90196085, b: 0.90196085, a: 0}
animationStateEndValue: {r: 0.90196085, g: 0.90196085, b: 0.90196085, a: 0}
- stateName: hovered
animationStateStartValue: {r: 0.2509804, g: 0.7019608, b: 0.90196085, a: 1}
animationStateEndValue: {r: 0, g: 0.627451, b: 1, a: 1}
- stateName: hoveredPriority
animationStateStartValue: {r: 0.2509804, g: 0.7019608, b: 0.90196085, a: 1}
animationStateEndValue: {r: 0, g: 0.627451, b: 1, a: 1}
- stateName: selected
animationStateStartValue: {r: 0, g: 0.627451, b: 1, a: 1}
animationStateEndValue: {r: 1, g: 0.40000004, b: 0, a: 1}
- stateName: activated
animationStateStartValue: {r: 1, g: 0.40000004, b: 0, a: 1}
animationStateEndValue: {r: 1, g: 0.9729279, b: 0, a: 1}
- stateName: focused
animationStateStartValue: {r: 0.41176474, g: 0.5176471, b: 0.69411767, a: 1}
animationStateEndValue: {r: 0.41176474, g: 0.5176471, b: 0.69411767, a: 1}
m_ColorBlendMode: 0
m_BlendAmount: 1

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 2447c2ae63ed301429bb0f32f88ef8ce
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 34e352a1666bde6488650a627865ac8b
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,66 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b53eb82258e249bb97cf3789c6a97dda, type: 3}
m_Name: PinchPointBlendShape
m_EditorClassIdentifier:
m_Comments:
m_ReadOnly: 1
m_Value:
m_StateAnimationCurve:
m_UseConstant: 1
m_ConstantValue:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Variable: {fileID: 0}
m_List:
- stateName: disabled
animationStateStartValue: 0
animationStateEndValue: 0
- stateName: idle
animationStateStartValue: 0
animationStateEndValue: 0
- stateName: hovered
animationStateStartValue: 0
animationStateEndValue: 100
- stateName: hoveredPriority
animationStateStartValue: 0
animationStateEndValue: 0
- stateName: selected
animationStateStartValue: 100
animationStateEndValue: 100
- stateName: activated
animationStateStartValue: 0
animationStateEndValue: 0
- stateName: focused
animationStateStartValue: 0
animationStateEndValue: 0

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: fbf5c74e21f572740881de5634f1ce9c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,68 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b5d80f45fb5f4418a5e84a476e517628, type: 3}
m_Name: PinchPointColor
m_EditorClassIdentifier:
m_Comments:
m_ReadOnly: 1
m_Value:
m_StateAnimationCurve:
m_UseConstant: 1
m_ConstantValue:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Variable: {fileID: 0}
m_List:
- stateName: disabled
animationStateStartValue: {r: 0, g: 0, b: 0, a: 0.09803922}
animationStateEndValue: {r: 0, g: 0, b: 0, a: 0.09803922}
- stateName: idle
animationStateStartValue: {r: 0, g: 0, b: 0, a: 0.5019608}
animationStateEndValue: {r: 0, g: 0, b: 0, a: 0.5019608}
- stateName: hovered
animationStateStartValue: {r: 0, g: 0, b: 0, a: 0.7254902}
animationStateEndValue: {r: 0, g: 0, b: 0, a: 0.7254902}
- stateName: hoveredPriority
animationStateStartValue: {r: 0, g: 0, b: 0, a: 0.7254902}
animationStateEndValue: {r: 0, g: 0, b: 0, a: 0.7254902}
- stateName: selected
animationStateStartValue: {r: 0, g: 0, b: 0, a: 0.7254902}
animationStateEndValue: {r: 0, g: 0, b: 0, a: 0.7254902}
- stateName: activated
animationStateStartValue: {r: 0, g: 0, b: 0, a: 0.7254902}
animationStateEndValue: {r: 0, g: 0, b: 0, a: 0.7254902}
- stateName: focused
animationStateStartValue: {r: 0, g: 0, b: 0, a: 0.5019608}
animationStateEndValue: {r: 0, g: 0, b: 0, a: 0.5019608}
m_ColorBlendMode: 0
m_BlendAmount: 1

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1468864c36cbf39428681b1f0d9ef149
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,66 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b53eb82258e249bb97cf3789c6a97dda, type: 3}
m_Name: PinchPointEdgeStrength
m_EditorClassIdentifier:
m_Comments:
m_ReadOnly: 1
m_Value:
m_StateAnimationCurve:
m_UseConstant: 1
m_ConstantValue:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Variable: {fileID: 0}
m_List:
- stateName: disabled
animationStateStartValue: 4
animationStateEndValue: 4
- stateName: idle
animationStateStartValue: 4
animationStateEndValue: 4
- stateName: hovered
animationStateStartValue: 3
animationStateEndValue: 2.5
- stateName: hoveredPriority
animationStateStartValue: 3
animationStateEndValue: 3
- stateName: selected
animationStateStartValue: 2.5
animationStateEndValue: 2
- stateName: activated
animationStateStartValue: 2
animationStateEndValue: 2
- stateName: focused
animationStateStartValue: 3
animationStateEndValue: 3

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 2d9d4878bfb037248af1d243a0638dd0
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,68 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b5d80f45fb5f4418a5e84a476e517628, type: 3}
m_Name: PinchPointHighlightColor
m_EditorClassIdentifier:
m_Comments:
m_ReadOnly: 1
m_Value:
m_StateAnimationCurve:
m_UseConstant: 1
m_ConstantValue:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Variable: {fileID: 0}
m_List:
- stateName: disabled
animationStateStartValue: {r: 1, g: 1, b: 1, a: 0.5019608}
animationStateEndValue: {r: 1, g: 1, b: 1, a: 0.5019608}
- stateName: idle
animationStateStartValue: {r: 1, g: 1, b: 1, a: 1}
animationStateEndValue: {r: 1, g: 1, b: 1, a: 1}
- stateName: hovered
animationStateStartValue: {r: 0.92156863, g: 0.9490196, b: 1, a: 1}
animationStateEndValue: {r: 0.9215687, g: 0.9490197, b: 1, a: 1}
- stateName: hoveredPriority
animationStateStartValue: {r: 0.9215687, g: 0.9490197, b: 1, a: 1}
animationStateEndValue: {r: 0.9215687, g: 0.9490197, b: 1, a: 1}
- stateName: selected
animationStateStartValue: {r: 0.86274517, g: 0.90196085, b: 1, a: 1}
animationStateEndValue: {r: 0.7843138, g: 0.8431373, b: 1, a: 1}
- stateName: activated
animationStateStartValue: {r: 0.8627451, g: 0.9019608, b: 1, a: 1}
animationStateEndValue: {r: 0.78431374, g: 0.84313726, b: 1, a: 1}
- stateName: focused
animationStateStartValue: {r: 0.86274517, g: 0.90196085, b: 1, a: 1}
animationStateEndValue: {r: 0.86274517, g: 0.90196085, b: 1, a: 1}
m_ColorBlendMode: 0
m_BlendAmount: 1

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 6b0360f219436394b8519378cd55c7e3
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,108 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6f7c05e2d6a94808ac5dcf4531f19721, type: 3}
m_Name: PinchPointLocalTransformOffset
m_EditorClassIdentifier:
m_Comments:
m_ReadOnly: 1
m_Value:
m_StateAnimationCurve:
m_UseConstant: 1
m_ConstantValue:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Variable: {fileID: 0}
m_List:
- stateName: disabled
animationStateStartValue:
x: 0
y: 0
z: 0
animationStateEndValue:
x: 0
y: 0
z: 0
- stateName: idle
animationStateStartValue:
x: 0
y: 0
z: 0
animationStateEndValue:
x: 0
y: 0
z: 0
- stateName: hovered
animationStateStartValue:
x: 0
y: 0
z: 0
animationStateEndValue:
x: 0
y: 0
z: 0.0075
- stateName: hoveredPriority
animationStateStartValue:
x: 0
y: 0
z: 0
animationStateEndValue:
x: 0
y: 0
z: 0.0075
- stateName: selected
animationStateStartValue:
x: 0
y: 0
z: 0.0075
animationStateEndValue:
x: 0
y: 0
z: 0.0075
- stateName: activated
animationStateStartValue:
x: 0
y: 0
z: 0
animationStateEndValue:
x: 0
y: 0
z: 0
- stateName: focused
animationStateStartValue:
x: 0
y: 0
z: 0
animationStateEndValue:
x: 0
y: 0
z: 0

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 2826cece951f71642a19da5a2080a27c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,66 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b53eb82258e249bb97cf3789c6a97dda, type: 3}
m_Name: PinchPointUniformScaleScale
m_EditorClassIdentifier:
m_Comments:
m_ReadOnly: 1
m_Value:
m_StateAnimationCurve:
m_UseConstant: 1
m_ConstantValue:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Variable: {fileID: 0}
m_List:
- stateName: disabled
animationStateStartValue: 0.5
animationStateEndValue: 0.5
- stateName: idle
animationStateStartValue: 1
animationStateEndValue: 1
- stateName: hovered
animationStateStartValue: 1.15
animationStateEndValue: 0.95
- stateName: hoveredPriority
animationStateStartValue: 1.15
animationStateEndValue: 0.95
- stateName: selected
animationStateStartValue: 0.95
animationStateEndValue: 0.95
- stateName: activated
animationStateStartValue: 1
animationStateEndValue: 1
- stateName: focused
animationStateStartValue: 1
animationStateEndValue: 1

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d22e48f34794ab9498d082f9713c2293
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9024548be6607c7498776620cbf54adf
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,33 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9846808ef0fb41b39630338c123c9269, type: 3}
m_Name: Menu Controller Follow Preset
m_EditorClassIdentifier:
m_Comments:
m_ReadOnly: 1
m_Value:
rightHandLocalPosition: {x: 0, y: -0.17, z: 0}
leftHandLocalPosition: {x: 0, y: -0.17, z: 0}
rightHandLocalRotation: {x: 0, y: 90, z: 90}
leftHandLocalRotation: {x: 0, y: -90, z: -90}
palmReferenceAxis: 0
invertAxisForRightHand: 1
requirePalmFacingUser: 1
palmFacingUserDegreeAngleThreshold: 54
requirePalmFacingUp: 1
palmFacingUpDegreeAngleThreshold: 72
snapToGaze: 1
snapToGazeAngleThreshold: 30
hideDelaySeconds: 0.15
allowSmoothing: 1
followLowerSmoothingValue: 12
followUpperSmoothingValue: 16

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 2899508b1645c5e4fa421b4217da9539
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,33 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9846808ef0fb41b39630338c123c9269, type: 3}
m_Name: Menu Hands Follow Preset
m_EditorClassIdentifier:
m_Comments:
m_ReadOnly: 1
m_Value:
rightHandLocalPosition: {x: 0.17, y: 0, z: 0.1}
leftHandLocalPosition: {x: -0.17, y: 0, z: 0.1}
rightHandLocalRotation: {x: 270, y: 180, z: 0}
leftHandLocalRotation: {x: 270, y: 180, z: 0}
palmReferenceAxis: 4
invertAxisForRightHand: 0
requirePalmFacingUser: 1
palmFacingUserDegreeAngleThreshold: 95.74
requirePalmFacingUp: 1
palmFacingUpDegreeAngleThreshold: 95.74
snapToGaze: 1
snapToGazeAngleThreshold: 49.46
hideDelaySeconds: 0.05
allowSmoothing: 1
followLowerSmoothingValue: 12
followUpperSmoothingValue: 16

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 15088c60ea1e00448a95ebaef96316da
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,33 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9846808ef0fb41b39630338c123c9269, type: 3}
m_Name: Under Watch Controller Follow Preset
m_EditorClassIdentifier:
m_Comments:
m_ReadOnly: 1
m_Value:
rightHandLocalPosition: {x: -0.05, y: -0.02, z: -0.17}
leftHandLocalPosition: {x: 0.05, y: -0.02, z: -0.17}
rightHandLocalRotation: {x: 0, y: 0, z: -270}
leftHandLocalRotation: {x: 0, y: 0, z: 270}
palmReferenceAxis: 0
invertAxisForRightHand: 1
requirePalmFacingUser: 1
palmFacingUserDegreeAngleThreshold: 54
requirePalmFacingUp: 0
palmFacingUpDegreeAngleThreshold: 72
snapToGaze: 0
snapToGazeAngleThreshold: 30
hideDelaySeconds: 0.15
allowSmoothing: 0
followLowerSmoothingValue: 12
followUpperSmoothingValue: 16

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 979c1b69d98e91041bc1c5c6e63aab97
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,33 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9846808ef0fb41b39630338c123c9269, type: 3}
m_Name: Under Watch Hands Follow Preset
m_EditorClassIdentifier:
m_Comments:
m_ReadOnly: 1
m_Value:
rightHandLocalPosition: {x: 0, y: -0.05, z: -0.03}
leftHandLocalPosition: {x: 0, y: -0.05, z: -0.03}
rightHandLocalRotation: {x: 0, y: 0, z: 180}
leftHandLocalRotation: {x: 0, y: 0, z: 180}
palmReferenceAxis: 4
invertAxisForRightHand: 0
requirePalmFacingUser: 0
palmFacingUserDegreeAngleThreshold: 54
requirePalmFacingUp: 1
palmFacingUpDegreeAngleThreshold: 72
snapToGaze: 0
snapToGazeAngleThreshold: 30
hideDelaySeconds: 0.15
allowSmoothing: 0
followLowerSmoothingValue: 12
followUpperSmoothingValue: 16

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5c3063cefe11749438f60126cef83288
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 981a9b62b953c3045a7054300387cca1
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 86f27c2138eb8584fa6527e18c1be13d
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,222 @@
using System;
using System.Collections.Generic;
using System.Linq;
using Unity.XR.CoreUtils.Editor;
using UnityEditor.PackageManager;
using UnityEditor.PackageManager.Requests;
using UnityEditor.PackageManager.UI;
using UnityEngine;
namespace UnityEditor.XR.Interaction.Toolkit.Samples.Hands
{
/// <summary>
/// Unity Editor class which registers Project Validation rules for the Hands Interaction Demo sample,
/// checking that other required samples and packages are installed.
/// </summary>
static class HandsInteractionSampleProjectValidation
{
const string k_SampleDisplayName = "Hands Interaction Demo";
const string k_Category = "XR Interaction Toolkit";
const string k_StarterAssetsSampleName = "Starter Assets";
const string k_HandVisualizerSampleName = "HandVisualizer";
const string k_ProjectValidationSettingsPath = "Project/XR Plug-in Management/Project Validation";
const string k_HandsPackageName = "com.unity.xr.hands";
const string k_XRIPackageName = "com.unity.xr.interaction.toolkit";
const string k_ShaderGraphPackageName = "com.unity.shadergraph";
static readonly PackageVersion s_MinimumPackageVersion = new PackageVersion("1.2.1");
static readonly PackageVersion s_RecommendedPackageVersion = new PackageVersion("1.3.0");
static readonly BuildTargetGroup[] s_BuildTargetGroups =
((BuildTargetGroup[])Enum.GetValues(typeof(BuildTargetGroup))).Distinct().ToArray();
static readonly List<BuildValidationRule> s_BuildValidationRules = new List<BuildValidationRule>
{
new BuildValidationRule
{
IsRuleEnabled = () => s_HandsPackageAddRequest == null || s_HandsPackageAddRequest.IsCompleted,
Message = $"[{k_SampleDisplayName}] XR Hands ({k_HandsPackageName}) package must be installed or updated to use this sample.",
Category = k_Category,
CheckPredicate = () => PackageVersionUtility.GetPackageVersion(k_HandsPackageName) >= s_MinimumPackageVersion,
FixIt = () =>
{
if (s_HandsPackageAddRequest == null || s_HandsPackageAddRequest.IsCompleted)
InstallOrUpdateHands();
},
FixItAutomatic = true,
Error = true,
},
new BuildValidationRule
{
IsRuleEnabled = () => s_HandsPackageAddRequest == null || s_HandsPackageAddRequest.IsCompleted,
Message = $"[{k_SampleDisplayName}] XR Hands ({k_HandsPackageName}) package must be at version {s_RecommendedPackageVersion} or higher to use the latest sample features.",
Category = k_Category,
CheckPredicate = () => PackageVersionUtility.GetPackageVersion(k_HandsPackageName) >= s_RecommendedPackageVersion,
FixIt = () =>
{
if (s_HandsPackageAddRequest == null || s_HandsPackageAddRequest.IsCompleted)
InstallOrUpdateHands();
},
FixItAutomatic = true,
Error = false,
},
new BuildValidationRule
{
IsRuleEnabled = () => PackageVersionUtility.GetPackageVersion(k_HandsPackageName) >= s_MinimumPackageVersion,
Message = $"[{k_SampleDisplayName}] {k_HandVisualizerSampleName} sample from XR Hands ({k_HandsPackageName}) package must be imported or updated to use this sample.",
Category = k_Category,
CheckPredicate = () => TryFindSample(k_HandsPackageName, string.Empty, k_HandVisualizerSampleName, out var sample) && sample.isImported,
FixIt = () =>
{
if (TryFindSample(k_HandsPackageName, string.Empty, k_HandVisualizerSampleName, out var sample))
{
sample.Import(Sample.ImportOptions.OverridePreviousImports);
}
},
FixItAutomatic = true,
Error = true,
},
new BuildValidationRule
{
Message = $"[{k_SampleDisplayName}] {k_StarterAssetsSampleName} sample from XR Interaction Toolkit ({k_XRIPackageName}) package must be imported or updated to use this sample.",
Category = k_Category,
CheckPredicate = () => TryFindSample(k_XRIPackageName, string.Empty, k_StarterAssetsSampleName, out var sample) && sample.isImported,
FixIt = () =>
{
if (TryFindSample(k_XRIPackageName, string.Empty, k_StarterAssetsSampleName, out var sample))
{
sample.Import(Sample.ImportOptions.OverridePreviousImports);
}
},
FixItAutomatic = true,
Error = true,
},
new BuildValidationRule
{
IsRuleEnabled = () => s_ShaderGraphPackageAddRequest == null || s_ShaderGraphPackageAddRequest.IsCompleted,
Message = $"[{k_SampleDisplayName}] Shader Graph ({k_ShaderGraphPackageName}) package must be installed for materials used in this sample.",
Category = k_Category,
CheckPredicate = () => PackageVersionUtility.IsPackageInstalled(k_ShaderGraphPackageName),
FixIt = () =>
{
s_ShaderGraphPackageAddRequest = Client.Add(k_ShaderGraphPackageName);
if (s_ShaderGraphPackageAddRequest.Error != null)
{
Debug.LogError($"Package installation error: {s_ShaderGraphPackageAddRequest.Error}: {s_ShaderGraphPackageAddRequest.Error.message}");
}
},
FixItAutomatic = true,
Error = false,
},
};
static AddRequest s_HandsPackageAddRequest;
static AddRequest s_ShaderGraphPackageAddRequest;
[InitializeOnLoadMethod]
static void RegisterProjectValidationRules()
{
foreach (var buildTargetGroup in s_BuildTargetGroups)
{
BuildValidator.AddRules(buildTargetGroup, s_BuildValidationRules);
}
// Delay evaluating conditions for issues to give time for Package Manager and UPM cache to fully initialize.
EditorApplication.delayCall += ShowWindowIfIssuesExist;
}
static void ShowWindowIfIssuesExist()
{
foreach (var validation in s_BuildValidationRules)
{
if (validation.CheckPredicate == null || !validation.CheckPredicate.Invoke())
{
ShowWindow();
return;
}
}
}
internal static void ShowWindow()
{
// Delay opening the window since sometimes other settings in the player settings provider redirect to the
// project validation window causing serialized objects to be nullified.
EditorApplication.delayCall += () =>
{
SettingsService.OpenProjectSettings(k_ProjectValidationSettingsPath);
};
}
static bool TryFindSample(string packageName, string packageVersion, string sampleDisplayName, out Sample sample)
{
sample = default;
if (!PackageVersionUtility.IsPackageInstalled(packageName))
return false;
IEnumerable<Sample> packageSamples;
try
{
packageSamples = Sample.FindByPackage(packageName, packageVersion);
}
catch (Exception e)
{
Debug.LogError($"Couldn't find samples of the {ToString(packageName, packageVersion)} package; aborting project validation rule. Exception: {e}");
return false;
}
if (packageSamples == null)
{
Debug.LogWarning($"Couldn't find samples of the {ToString(packageName, packageVersion)} package; aborting project validation rule.");
return false;
}
foreach (var packageSample in packageSamples)
{
if (packageSample.displayName == sampleDisplayName)
{
sample = packageSample;
return true;
}
}
Debug.LogWarning($"Couldn't find {sampleDisplayName} sample in the {ToString(packageName, packageVersion)} package; aborting project validation rule.");
return false;
}
static string ToString(string packageName, string packageVersion)
{
return string.IsNullOrEmpty(packageVersion) ? packageName : $"{packageName}@{packageVersion}";
}
static void InstallOrUpdateHands()
{
// Set a 3-second timeout for request to avoid editor lockup
var currentTime = DateTime.Now;
var endTime = currentTime + TimeSpan.FromSeconds(3);
var request = Client.Search(k_HandsPackageName);
if (request.Status == StatusCode.InProgress)
{
Debug.Log($"Searching for ({k_HandsPackageName}) in Unity Package Registry.");
while (request.Status == StatusCode.InProgress && currentTime < endTime)
currentTime = DateTime.Now;
}
var addRequest = k_HandsPackageName;
if (request.Status == StatusCode.Success && request.Result.Length > 0)
{
var versions = request.Result[0].versions;
var verifiedVersion = new PackageVersion(versions.verified);
var latestCompatible = new PackageVersion(versions.latestCompatible);
if (verifiedVersion < s_RecommendedPackageVersion && s_RecommendedPackageVersion <= latestCompatible)
addRequest = $"{k_HandsPackageName}@{s_RecommendedPackageVersion}";
}
s_HandsPackageAddRequest = Client.Add(addRequest);
if (s_HandsPackageAddRequest.Error != null)
{
Debug.LogError($"Package installation error: {s_HandsPackageAddRequest.Error}: {s_HandsPackageAddRequest.Error.message}");
}
}
}
}

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 0deb305527bf17143801528616ee4f73
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,19 @@
{
"name": "Unity.XR.Interaction.Toolkit.Samples.Hands.Editor",
"rootNamespace": "",
"references": [
"Unity.XR.CoreUtils",
"Unity.XR.CoreUtils.Editor"
],
"includePlatforms": [
"Editor"
],
"excludePlatforms": [],
"allowUnsafeCode": false,
"overrideReferences": false,
"precompiledReferences": [],
"autoReferenced": true,
"defineConstraints": [],
"versionDefines": [],
"noEngineReferences": false
}

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: ec10eb674fe33dc418851b064a84acc4
AssemblyDefinitionImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 3ff35cecbcc52cc42945cf531638a60a
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1a5d62171de539e4e9cb663b19180604
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: e808bedb47894a9469ff90e39c886dd5
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,39 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6af57311f7c9446fae8acabfbbfdb412, type: 3}
m_Name: AudioAffordanceTheme
m_EditorClassIdentifier:
m_Comments:
m_ReadOnly: 1
m_Value:
m_List:
- stateName: disabled
stateEntered: {fileID: 0}
stateExited: {fileID: 0}
- stateName: idle
stateEntered: {fileID: 0}
stateExited: {fileID: 0}
- stateName: hovered
stateEntered: {fileID: 8300000, guid: 9a6d738025ed59f4fb946bb59c20e774, type: 3}
stateExited: {fileID: 0}
- stateName: hoveredPriority
stateEntered: {fileID: 0}
stateExited: {fileID: 0}
- stateName: selected
stateEntered: {fileID: 8300000, guid: eeeda5dce5e1d344f8e2f6195f16cb38, type: 3}
stateExited: {fileID: 0}
- stateName: activated
stateEntered: {fileID: 0}
stateExited: {fileID: 0}
- stateName: focused
stateEntered: {fileID: 0}
stateExited: {fileID: 0}

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 57def9352cdee8548bfc9ebc6a55914a
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,108 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6f7c05e2d6a94808ac5dcf4531f19721, type: 3}
m_Name: CapsuleScaleTheme
m_EditorClassIdentifier:
m_Comments:
m_ReadOnly: 1
m_Value:
m_StateAnimationCurve:
m_UseConstant: 1
m_ConstantValue:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Variable: {fileID: 0}
m_List:
- stateName: disabled
animationStateStartValue:
x: 0
y: 0
z: 0
animationStateEndValue:
x: 0
y: 0
z: 0
- stateName: idle
animationStateStartValue:
x: 0.5
y: 0.5
z: 0.5
animationStateEndValue:
x: 0.5
y: 0.5
z: 0.5
- stateName: hovered
animationStateStartValue:
x: 0.5
y: 2
z: 0.5
animationStateEndValue:
x: 0.5
y: 2
z: 0.5
- stateName: hoveredPriority
animationStateStartValue:
x: 0.5
y: 2
z: 0.5
animationStateEndValue:
x: 0.5
y: 2
z: 0.5
- stateName: selected
animationStateStartValue:
x: 0.5
y: 2
z: 0.5
animationStateEndValue:
x: 0.5
y: 2
z: 0.5
- stateName: activated
animationStateStartValue:
x: 0.5
y: 2
z: 0.5
animationStateEndValue:
x: 0.5
y: 2
z: 0.5
- stateName: focused
animationStateStartValue:
x: 0.5
y: 0.5
z: 0.5
animationStateEndValue:
x: 0.5
y: 0.5
z: 0.5

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: e5acc2ade2588d44fb53e968cd702099
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 0be2a80454fcbff4a9017ce60441e58c
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,66 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b53eb82258e249bb97cf3789c6a97dda, type: 3}
m_Name: InteractionBlendShapeAffordanceTheme
m_EditorClassIdentifier:
m_Comments:
m_ReadOnly: 1
m_Value:
m_StateAnimationCurve:
m_UseConstant: 1
m_ConstantValue:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Variable: {fileID: 0}
m_List:
- stateName: disabled
animationStateStartValue: 0
animationStateEndValue: 0
- stateName: idle
animationStateStartValue: 0
animationStateEndValue: 0
- stateName: hovered
animationStateStartValue: 0
animationStateEndValue: 100
- stateName: hoveredPriority
animationStateStartValue: 0
animationStateEndValue: 0
- stateName: selected
animationStateStartValue: 100
animationStateEndValue: 90
- stateName: activated
animationStateStartValue: 0
animationStateEndValue: 0
- stateName: focused
animationStateStartValue: 0
animationStateEndValue: 0

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 20eb8725b4dab864ea2bfa8ecbd4adff
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,68 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b5d80f45fb5f4418a5e84a476e517628, type: 3}
m_Name: WhiteChessPieceColorTheme
m_EditorClassIdentifier:
m_Comments:
m_ReadOnly: 1
m_Value:
m_StateAnimationCurve:
m_UseConstant: 1
m_ConstantValue:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Variable: {fileID: 0}
m_List:
- stateName: disabled
animationStateStartValue: {r: 0, g: 0, b: 0, a: 0}
animationStateEndValue: {r: 0, g: 0, b: 0, a: 0}
- stateName: idle
animationStateStartValue: {r: 1, g: 1, b: 1, a: 1}
animationStateEndValue: {r: 1, g: 1, b: 1, a: 1}
- stateName: hovered
animationStateStartValue: {r: 0.92156863, g: 0.9490196, b: 1, a: 1}
animationStateEndValue: {r: 0.9215687, g: 0.9490197, b: 1, a: 1}
- stateName: hoveredPriority
animationStateStartValue: {r: 0.9215687, g: 0.9490197, b: 1, a: 1}
animationStateEndValue: {r: 0.9215687, g: 0.9490197, b: 1, a: 1}
- stateName: selected
animationStateStartValue: {r: 0.86274517, g: 0.90196085, b: 1, a: 1}
animationStateEndValue: {r: 0.7843138, g: 0.8431373, b: 1, a: 1}
- stateName: activated
animationStateStartValue: {r: 0.8627451, g: 0.9019608, b: 1, a: 1}
animationStateEndValue: {r: 0.78431374, g: 0.84313726, b: 1, a: 1}
- stateName: focused
animationStateStartValue: {r: 0.86274517, g: 0.90196085, b: 1, a: 1}
animationStateEndValue: {r: 0.86274517, g: 0.90196085, b: 1, a: 1}
m_ColorBlendMode: 0
m_BlendAmount: 1

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: c39d3614cd6089347a01b0743003ae34
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,66 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b53eb82258e249bb97cf3789c6a97dda, type: 3}
m_Name: InteractionLargeScaleAffordanceTheme
m_EditorClassIdentifier:
m_Comments:
m_ReadOnly: 1
m_Value:
m_StateAnimationCurve:
m_UseConstant: 1
m_ConstantValue:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Variable: {fileID: 0}
m_List:
- stateName: disabled
animationStateStartValue: 1
animationStateEndValue: 1
- stateName: idle
animationStateStartValue: 1
animationStateEndValue: 1
- stateName: hovered
animationStateStartValue: 1.15
animationStateEndValue: 1.25
- stateName: hoveredPriority
animationStateStartValue: 1
animationStateEndValue: 1
- stateName: selected
animationStateStartValue: 1.25
animationStateEndValue: 1.3
- stateName: activated
animationStateStartValue: 1
animationStateEndValue: 1
- stateName: focused
animationStateStartValue: 1
animationStateEndValue: 1

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d47a7e28eb1851943b2b99ded7acba3b
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,66 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b53eb82258e249bb97cf3789c6a97dda, type: 3}
m_Name: InteractionScaleAffordanceTheme
m_EditorClassIdentifier:
m_Comments:
m_ReadOnly: 1
m_Value:
m_StateAnimationCurve:
m_UseConstant: 1
m_ConstantValue:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Variable: {fileID: 0}
m_List:
- stateName: disabled
animationStateStartValue: 1
animationStateEndValue: 1
- stateName: idle
animationStateStartValue: 1
animationStateEndValue: 1
- stateName: hovered
animationStateStartValue: 1.1
animationStateEndValue: 1.15
- stateName: hoveredPriority
animationStateStartValue: 1
animationStateEndValue: 1
- stateName: selected
animationStateStartValue: 1.15
animationStateEndValue: 1.2
- stateName: activated
animationStateStartValue: 1
animationStateEndValue: 1
- stateName: focused
animationStateStartValue: 1
animationStateEndValue: 1

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 6c5f857510aad3f4c8df41fd90e934a5
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 71a837b47f3069c4582a87e6a15555aa
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

Some files were not shown because too many files have changed in this diff Show More