BeatSaber 게임 모작 및 이그노어등
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ce6293aea353e494f98858b3bcc881e7
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1bba8bf2738365a4ebe41aa48a804770
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3b0cd98e7918f8948adc45d9aa40973c
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Binary file not shown.
+7
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ab7acf0d9677fbe4db51bc36647d4fcb
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: fe662ea7d4bacf74ea2459d10b988a1b
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+170
@@ -0,0 +1,170 @@
|
||||
%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: 10
|
||||
--- !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: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords:
|
||||
- _EMISSION
|
||||
m_InvalidKeywords: []
|
||||
m_LightmapFlags: 6
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap:
|
||||
RenderType: Opaque
|
||||
disabledShaderPasses:
|
||||
- MOTIONVECTORS
|
||||
m_LockedProperties:
|
||||
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
|
||||
- _AddPrecomputedVelocity: 0
|
||||
- _AlphaClip: 0
|
||||
- _AlphaToMask: 0
|
||||
- _Blend: 0
|
||||
- _BlendModePreserveSpecular: 1
|
||||
- _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
|
||||
- _DstBlendAlpha: 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
|
||||
- _SrcBlendAlpha: 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: []
|
||||
m_AllowLocking: 1
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7b26add94f09dc44fb811013f007a3aa
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+170
@@ -0,0 +1,170 @@
|
||||
%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: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords:
|
||||
- _EMISSION
|
||||
m_InvalidKeywords: []
|
||||
m_LightmapFlags: 6
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap:
|
||||
RenderType: Opaque
|
||||
disabledShaderPasses:
|
||||
- MOTIONVECTORS
|
||||
m_LockedProperties:
|
||||
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
|
||||
- _AddPrecomputedVelocity: 0
|
||||
- _AlphaClip: 0
|
||||
- _AlphaToMask: 0
|
||||
- _Blend: 0
|
||||
- _BlendModePreserveSpecular: 1
|
||||
- _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
|
||||
- _DstBlendAlpha: 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
|
||||
- _SrcBlendAlpha: 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: []
|
||||
m_AllowLocking: 1
|
||||
--- !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: 10
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 727f87098255ad04987a60f5f08390bc
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+174
@@ -0,0 +1,174 @@
|
||||
%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: 10
|
||||
--- !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: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords:
|
||||
- _EMISSION
|
||||
- _SURFACE_TYPE_TRANSPARENT
|
||||
m_InvalidKeywords:
|
||||
- _ALPHABLEND_ON
|
||||
m_LightmapFlags: 6
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: 3000
|
||||
stringTagMap:
|
||||
RenderType: Transparent
|
||||
disabledShaderPasses:
|
||||
- DepthOnly
|
||||
- SHADOWCASTER
|
||||
- MOTIONVECTORS
|
||||
m_LockedProperties:
|
||||
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
|
||||
- _AddPrecomputedVelocity: 0
|
||||
- _AlphaClip: 0
|
||||
- _AlphaToMask: 0
|
||||
- _Blend: 0
|
||||
- _BlendModePreserveSpecular: 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
|
||||
- _DstBlendAlpha: 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
|
||||
- _SrcBlendAlpha: 1
|
||||
- _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: []
|
||||
m_AllowLocking: 1
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 613690cd962241049a0ec289a6ff835e
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+58
@@ -0,0 +1,58 @@
|
||||
%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: 6772a216ed6f29c42abef904c7d6940d, type: 3}
|
||||
m_Name: MaterialPipelineHandler
|
||||
m_EditorClassIdentifier:
|
||||
m_ShaderContainers:
|
||||
- material: {fileID: 2100000, guid: 7b26add94f09dc44fb811013f007a3aa, type: 2}
|
||||
useSRPShaderName: 1
|
||||
scriptableRenderPipelineShaderName: Universal Render Pipeline/Lit
|
||||
scriptableRenderPipelineShader: {fileID: 0}
|
||||
useBuiltinShaderName: 1
|
||||
builtInPipelineShaderName: Standard
|
||||
builtInPipelineShader: {fileID: 0}
|
||||
- material: {fileID: 2100000, guid: 727f87098255ad04987a60f5f08390bc, type: 2}
|
||||
useSRPShaderName: 1
|
||||
scriptableRenderPipelineShaderName: Universal Render Pipeline/Lit
|
||||
scriptableRenderPipelineShader: {fileID: 0}
|
||||
useBuiltinShaderName: 1
|
||||
builtInPipelineShaderName: Standard
|
||||
builtInPipelineShader: {fileID: 0}
|
||||
- material: {fileID: 2100000, guid: 613690cd962241049a0ec289a6ff835e, type: 2}
|
||||
useSRPShaderName: 1
|
||||
scriptableRenderPipelineShaderName: Universal Render Pipeline/Lit
|
||||
scriptableRenderPipelineShader: {fileID: 0}
|
||||
useBuiltinShaderName: 1
|
||||
builtInPipelineShaderName: Standard
|
||||
builtInPipelineShader: {fileID: 0}
|
||||
- material: {fileID: 2100000, guid: 55fa12dc7870f1e46b6a7f8617949a86, type: 2}
|
||||
useSRPShaderName: 1
|
||||
scriptableRenderPipelineShaderName: Universal Render Pipeline/Lit
|
||||
scriptableRenderPipelineShader: {fileID: 0}
|
||||
useBuiltinShaderName: 1
|
||||
builtInPipelineShaderName: Standard
|
||||
builtInPipelineShader: {fileID: 0}
|
||||
- material: {fileID: 2100000, guid: d149182fa7aa1dc47bd32b2a6da80ec9, type: 2}
|
||||
useSRPShaderName: 1
|
||||
scriptableRenderPipelineShaderName: Universal Render Pipeline/Lit
|
||||
scriptableRenderPipelineShader: {fileID: 0}
|
||||
useBuiltinShaderName: 1
|
||||
builtInPipelineShaderName: Standard
|
||||
builtInPipelineShader: {fileID: 0}
|
||||
- material: {fileID: 2100000, guid: c3474c208278e814cb8d1c29aa806e81, type: 2}
|
||||
useSRPShaderName: 1
|
||||
scriptableRenderPipelineShaderName: Universal Render Pipeline/Lit
|
||||
scriptableRenderPipelineShader: {fileID: 0}
|
||||
useBuiltinShaderName: 1
|
||||
builtInPipelineShaderName: Standard
|
||||
builtInPipelineShader: {fileID: 0}
|
||||
m_AutoRefreshShaders: 1
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e22d037d5d9286644b4b81a8b91b5ee5
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+170
@@ -0,0 +1,170 @@
|
||||
%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: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords:
|
||||
- _EMISSION
|
||||
m_InvalidKeywords: []
|
||||
m_LightmapFlags: 6
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap:
|
||||
RenderType: Opaque
|
||||
disabledShaderPasses:
|
||||
- MOTIONVECTORS
|
||||
m_LockedProperties:
|
||||
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
|
||||
- _AddPrecomputedVelocity: 0
|
||||
- _AlphaClip: 0
|
||||
- _AlphaToMask: 0
|
||||
- _Blend: 0
|
||||
- _BlendModePreserveSpecular: 1
|
||||
- _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
|
||||
- _DstBlendAlpha: 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
|
||||
- _SrcBlendAlpha: 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: []
|
||||
m_AllowLocking: 1
|
||||
--- !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: 10
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 55fa12dc7870f1e46b6a7f8617949a86
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+170
@@ -0,0 +1,170 @@
|
||||
%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: TransparentRed
|
||||
m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords:
|
||||
- _EMISSION
|
||||
m_InvalidKeywords: []
|
||||
m_LightmapFlags: 6
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap:
|
||||
RenderType: Opaque
|
||||
disabledShaderPasses:
|
||||
- MOTIONVECTORS
|
||||
m_LockedProperties:
|
||||
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
|
||||
- _AddPrecomputedVelocity: 0
|
||||
- _AlphaClip: 0
|
||||
- _AlphaToMask: 0
|
||||
- _Blend: 0
|
||||
- _BlendModePreserveSpecular: 1
|
||||
- _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
|
||||
- _DstBlendAlpha: 0
|
||||
- _EmissionEnabled: 0
|
||||
- _EnableExternalAlpha: 0
|
||||
- _EnvironmentReflections: 1
|
||||
- _FlipbookMode: 0
|
||||
- _GlossMapScale: 1
|
||||
- _Glossiness: 0
|
||||
- _GlossyReflections: 1
|
||||
- _LightingEnabled: 1
|
||||
- _Metallic: 0
|
||||
- _Mode: 3
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.02
|
||||
- _QueueOffset: 0
|
||||
- _ReceiveShadows: 1
|
||||
- _Smoothness: 0.5
|
||||
- _SmoothnessTextureChannel: 0
|
||||
- _SoftParticlesEnabled: 0
|
||||
- _SoftParticlesFarFadeDistance: 1
|
||||
- _SoftParticlesNearFadeDistance: 0
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 1
|
||||
- _SrcBlendAlpha: 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: 0.54509807}
|
||||
- _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0}
|
||||
- _Color: {r: 1, g: 0, b: 0, a: 0.54509807}
|
||||
- _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: []
|
||||
m_AllowLocking: 1
|
||||
--- !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: 10
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d149182fa7aa1dc47bd32b2a6da80ec9
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+170
@@ -0,0 +1,170 @@
|
||||
%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: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords:
|
||||
- _EMISSION
|
||||
m_InvalidKeywords: []
|
||||
m_LightmapFlags: 6
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap:
|
||||
RenderType: Opaque
|
||||
disabledShaderPasses:
|
||||
- MOTIONVECTORS
|
||||
m_LockedProperties:
|
||||
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
|
||||
- _AddPrecomputedVelocity: 0
|
||||
- _AlphaClip: 0
|
||||
- _AlphaToMask: 0
|
||||
- _Blend: 0
|
||||
- _BlendModePreserveSpecular: 1
|
||||
- _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
|
||||
- _DstBlendAlpha: 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
|
||||
- _SrcBlendAlpha: 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: []
|
||||
m_AllowLocking: 1
|
||||
--- !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: 10
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c3474c208278e814cb8d1c29aa806e81
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 22f58ef53b57ffc4390fa3fd82468a7d
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Binary file not shown.
+103
@@ -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:
|
||||
BIN
Binary file not shown.
+247
@@ -0,0 +1,247 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7eff605df5fc69141bad762b74fb9228
|
||||
ModelImporter:
|
||||
serializedVersion: 22200
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
materials:
|
||||
materialImportMode: 0
|
||||
materialName: 0
|
||||
materialSearch: 1
|
||||
materialLocation: 1
|
||||
animations:
|
||||
legacyGenerateAnimations: 4
|
||||
bakeSimulation: 0
|
||||
resampleCurves: 1
|
||||
optimizeGameObjects: 0
|
||||
removeConstantScaleCurves: 0
|
||||
motionNodeName:
|
||||
animationImportErrors:
|
||||
animationImportWarnings:
|
||||
animationRetargetingWarnings:
|
||||
animationDoRetargetingWarnings: 0
|
||||
importAnimatedCustomProperties: 0
|
||||
importConstraints: 0
|
||||
animationCompression: 3
|
||||
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
|
||||
importPhysicalCameras: 1
|
||||
importVisibility: 1
|
||||
importBlendShapes: 0
|
||||
importCameras: 0
|
||||
importLights: 0
|
||||
nodeNameCollisionStrategy: 0
|
||||
fileIdsGeneration: 2
|
||||
swapUVChannels: 0
|
||||
generateSecondaryUV: 0
|
||||
useFileUnits: 1
|
||||
keepQuads: 0
|
||||
weldVertices: 1
|
||||
bakeAxisConversion: 0
|
||||
preserveHierarchy: 0
|
||||
skinWeightsMode: 0
|
||||
maxBonesPerVertex: 4
|
||||
minBoneWeight: 0.001
|
||||
optimizeBones: 1
|
||||
meshOptimizationFlags: -1
|
||||
indexFormat: 0
|
||||
secondaryUVAngleDistortion: 8
|
||||
secondaryUVAreaDistortion: 15.000001
|
||||
secondaryUVHardAngle: 88
|
||||
secondaryUVMarginMethod: 1
|
||||
secondaryUVMinLightmapResolution: 40
|
||||
secondaryUVMinObjectScale: 1
|
||||
secondaryUVPackMargin: 4
|
||||
useFileScale: 1
|
||||
strictVertexDataChecks: 0
|
||||
tangentSpace:
|
||||
normalSmoothAngle: 60
|
||||
normalImportMode: 0
|
||||
tangentImportMode: 3
|
||||
normalCalculationMode: 4
|
||||
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
|
||||
blendShapeNormalImportMode: 1
|
||||
normalSmoothingSource: 0
|
||||
referencedClips: []
|
||||
importAnimation: 0
|
||||
humanDescription:
|
||||
serializedVersion: 3
|
||||
human: []
|
||||
skeleton:
|
||||
- name: RightHand-Original-ImportExportTest(Clone)
|
||||
parentName:
|
||||
position: {x: 0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: V2-Hand reference mesh-02
|
||||
parentName: RightHand-Original-ImportExportTest(Clone)
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: R_Wrist
|
||||
parentName: RightHand-Original-ImportExportTest(Clone)
|
||||
position: {x: -0.003278835, y: 0.05342003, z: -0.062004544}
|
||||
rotation: {x: 0.6861093, y: 0.036429923, z: 0.028978078, w: 0.7260077}
|
||||
scale: {x: 1.0000001, y: 1, z: 1.0000027}
|
||||
- name: R_IndexMetacarpal
|
||||
parentName: R_Wrist
|
||||
position: {x: -0.015184388, y: 0.043368313, z: -0.0004082384}
|
||||
rotation: {x: -0.039728012, y: -0.016940618, z: 0.0136341, w: 0.9989739}
|
||||
scale: {x: 0.99999994, y: 1, z: 0.99999994}
|
||||
- name: R_IndexProximal
|
||||
parentName: R_IndexMetacarpal
|
||||
position: {x: -0.0000000030971443, y: 0.053249188, z: 0.0000000036459735}
|
||||
rotation: {x: 0.11408561, y: 0.027069341, z: -0.003031183, w: 0.9930975}
|
||||
scale: {x: 1, y: 0.9999999, z: 1.0000002}
|
||||
- name: R_IndexIntermediate
|
||||
parentName: R_IndexProximal
|
||||
position: {x: 2.0986757e-10, y: 0.03119257, z: -0.0000000029665912}
|
||||
rotation: {x: 0.22822198, y: -0.0019579423, z: -0.0028197072, w: 0.9736031}
|
||||
scale: {x: 1, y: 1.0000002, z: 0.9999998}
|
||||
- name: R_IndexDistal
|
||||
parentName: R_IndexIntermediate
|
||||
position: {x: 0.000000011364375, y: 0.015153917, z: 0.000000006907221}
|
||||
rotation: {x: 0.11608021, y: -0.020753868, z: 0.0004017833, w: 0.9930229}
|
||||
scale: {x: 0.99999994, y: 1.0000006, z: 0.99999946}
|
||||
- name: R_IndexTip
|
||||
parentName: R_IndexDistal
|
||||
position: {x: 0.0000000049176343, y: 0.008471283, z: 0.000000011485351}
|
||||
rotation: {x: 0.023955874, y: -0.01890053, z: -0.00004664642, w: 0.99953437}
|
||||
scale: {x: 0.99999994, y: 1.0000001, z: 0.9999998}
|
||||
- name: R_MiddleMetacarpal
|
||||
parentName: R_Wrist
|
||||
position: {x: -0.0021637694, y: 0.041841764, z: -0.0008136065}
|
||||
rotation: {x: -0.018308057, y: -0.06036859, z: -0.022970585, w: 0.9977439}
|
||||
scale: {x: 1.0000001, y: 1, z: 0.99999994}
|
||||
- name: R_MiddleProximal
|
||||
parentName: R_MiddleMetacarpal
|
||||
position: {x: -0.00000000739658, y: 0.053792052, z: 0.0000000048860156}
|
||||
rotation: {x: 0.118838586, y: 0.01847689, z: -0.00033644997, w: 0.9927416}
|
||||
scale: {x: 1, y: 0.9999999, z: 1.0000001}
|
||||
- name: R_MiddleIntermediate
|
||||
parentName: R_MiddleProximal
|
||||
position: {x: 0.000000005422766, y: 0.031502105, z: -6.3897215e-10}
|
||||
rotation: {x: 0.32552293, y: -0.011826178, z: 0.020449111, w: 0.945239}
|
||||
scale: {x: 0.9999999, y: 1.0000005, z: 0.99999946}
|
||||
- name: R_MiddleDistal
|
||||
parentName: R_MiddleIntermediate
|
||||
position: {x: 0.000000028710986, y: 0.018965539, z: 0.000000026385173}
|
||||
rotation: {x: 0.20727825, y: 0.012435533, z: 0.028069785, w: 0.9778002}
|
||||
scale: {x: 1, y: 1.0000008, z: 0.99999917}
|
||||
- name: R_MiddleTip
|
||||
parentName: R_MiddleDistal
|
||||
position: {x: 0.000000018862254, y: 0.01355556, z: 0.000000010927729}
|
||||
rotation: {x: 0.027218292, y: -0.026071634, z: -0.0108469, w: 0.9992306}
|
||||
scale: {x: 1, y: 1.0000001, z: 0.9999999}
|
||||
- name: R_RingMetacarpal
|
||||
parentName: R_Wrist
|
||||
position: {x: 0.009159105, y: 0.04289402, z: -0.0009776641}
|
||||
rotation: {x: -0.5051329, y: -0.012376049, z: -0.08139011, w: 0.8591061}
|
||||
scale: {x: 1.0000001, y: 1, z: 0.9999999}
|
||||
- name: R_RingProximal
|
||||
parentName: R_RingMetacarpal
|
||||
position: {x: 7.1046946e-10, y: 0.047772877, z: -0.0000000012237608}
|
||||
rotation: {x: 0.01830861, y: -0.036776215, z: 0.04406918, w: 0.9981835}
|
||||
scale: {x: 1.0000002, y: 1, z: 0.9999999}
|
||||
- name: R_RingIntermediate
|
||||
parentName: R_RingProximal
|
||||
position: {x: 0.000000020008601, y: 0.027416931, z: 0.000000009794475}
|
||||
rotation: {x: -0.004819274, y: -0.085748516, z: -0.0073304567, w: 0.9962782}
|
||||
scale: {x: 1.0000001, y: 1.0000005, z: 0.99999917}
|
||||
- name: R_RingDistal
|
||||
parentName: R_RingIntermediate
|
||||
position: {x: 0.0000000361422, y: 0.021599585, z: 0.000000012509237}
|
||||
rotation: {x: 0.21586773, y: -0.11252745, z: 0.5731088, w: 0.78248644}
|
||||
scale: {x: 1.0000002, y: 1.0000005, z: 0.9999993}
|
||||
- name: R_RingTip
|
||||
parentName: R_RingDistal
|
||||
position: {x: 0.000000014014161, y: 0.008182308, z: 0.000000016518117}
|
||||
rotation: {x: 0.08212139, y: 0.050801937, z: -0.04902353, w: 0.9941187}
|
||||
scale: {x: 0.99999976, y: 1.0000004, z: 0.99999976}
|
||||
- name: R_Palm
|
||||
parentName: R_Wrist
|
||||
position: {x: 0.00033856664, y: 0.052908763, z: -0.0050242892}
|
||||
rotation: {x: 0.036044274, y: -0.046207204, z: 0.0056319265, w: 0.9982655}
|
||||
scale: {x: 1.0000001, y: 1, z: 0.9999999}
|
||||
- name: R_ThumbMetacarpal
|
||||
parentName: R_Wrist
|
||||
position: {x: -0.024570636, y: 0.039576054, z: 0.0056750975}
|
||||
rotation: {x: 0.38757673, y: 0.48578048, z: 0.5464086, w: 0.5614617}
|
||||
scale: {x: 0.99999976, y: 0.99999994, z: 1.0000002}
|
||||
- name: R_ThumbProximal
|
||||
parentName: R_ThumbMetacarpal
|
||||
position: {x: 0.0000000030227367, y: 0.024318831, z: 0.0000000127638735}
|
||||
rotation: {x: 0.11798811, y: 0.073554516, z: 0.027695354, w: 0.9898998}
|
||||
scale: {x: 1.0000005, y: 0.99999994, z: 0.9999997}
|
||||
- name: R_ThumbDistal
|
||||
parentName: R_ThumbProximal
|
||||
position: {x: -0.000000013828266, y: 0.03048904, z: 0.000000047016265}
|
||||
rotation: {x: 0.06120874, y: -0.114165455, z: -0.55291957, w: 0.82310367}
|
||||
scale: {x: 1.0000006, y: 1.0000001, z: 0.99999917}
|
||||
- name: R_ThumbTip
|
||||
parentName: R_ThumbDistal
|
||||
position: {x: -0.000000024058998, y: 0.017674206, z: 0.00000008461095}
|
||||
rotation: {x: -0.042718224, y: -0.040577695, z: -0.007416172, w: 0.9982353}
|
||||
scale: {x: 0.99999994, y: 1.0000001, z: 1.0000001}
|
||||
- name: R_LittleMetacarpal
|
||||
parentName: R_Wrist
|
||||
position: {x: 0.018062059, y: 0.041240305, z: 0.002480461}
|
||||
rotation: {x: 0.040541753, y: -0.2460445, z: -0.13661616, w: 0.9587255}
|
||||
scale: {x: 1.0000004, y: 1, z: 0.9999997}
|
||||
- name: R_LittleProximal
|
||||
parentName: R_LittleMetacarpal
|
||||
position: {x: 0.000000022705052, y: 0.04444153, z: -0.0000000065787407}
|
||||
rotation: {x: 0.58528006, y: 0.13245042, z: -0.15188508, w: 0.7853885}
|
||||
scale: {x: 0.99999964, y: 1.0000001, z: 1.0000004}
|
||||
- name: R_LittleIntermediate
|
||||
parentName: R_LittleProximal
|
||||
position: {x: 0.000000013486351, y: 0.0184942, z: -0.0000000054124114}
|
||||
rotation: {x: 0.21532907, y: -0.22571056, z: -0.01377247, w: 0.9499992}
|
||||
scale: {x: 1.0000007, y: 1.0000004, z: 0.99999905}
|
||||
- name: R_LittleDistal
|
||||
parentName: R_LittleIntermediate
|
||||
position: {x: 0.000000031878056, y: 0.014893936, z: 0.00000000870707}
|
||||
rotation: {x: -0.27264047, y: 0.07361126, z: 0.2861297, w: 0.91563004}
|
||||
scale: {x: 0.9999997, y: 1.0000007, z: 0.99999964}
|
||||
- name: R_LittleTip
|
||||
parentName: R_LittleDistal
|
||||
position: {x: 0.000000019335364, y: 0.0077872393, z: -9.0059754e-10}
|
||||
rotation: {x: 0.030928679, y: 0.115395255, z: 0.0017466116, w: 0.99283653}
|
||||
scale: {x: 0.99999994, y: 1, z: 1}
|
||||
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: 1
|
||||
skeletonHasParents: 1
|
||||
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
||||
autoGenerateAvatarMappingIfUnspecified: 1
|
||||
animationType: 2
|
||||
humanoidOversampling: 1
|
||||
avatarSetup: 0
|
||||
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||
importBlendShapeDeformPercent: 0
|
||||
remapMaterialsIfMaterialImportModeIsNone: 0
|
||||
additionalBone: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Binary file not shown.
+103
@@ -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:
|
||||
BIN
Binary file not shown.
+247
@@ -0,0 +1,247 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 49090752ee8bba242ad64a291905ee10
|
||||
ModelImporter:
|
||||
serializedVersion: 22200
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
materials:
|
||||
materialImportMode: 0
|
||||
materialName: 0
|
||||
materialSearch: 1
|
||||
materialLocation: 1
|
||||
animations:
|
||||
legacyGenerateAnimations: 4
|
||||
bakeSimulation: 0
|
||||
resampleCurves: 1
|
||||
optimizeGameObjects: 0
|
||||
removeConstantScaleCurves: 0
|
||||
motionNodeName:
|
||||
animationImportErrors:
|
||||
animationImportWarnings:
|
||||
animationRetargetingWarnings:
|
||||
animationDoRetargetingWarnings: 0
|
||||
importAnimatedCustomProperties: 0
|
||||
importConstraints: 0
|
||||
animationCompression: 3
|
||||
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
|
||||
importPhysicalCameras: 1
|
||||
importVisibility: 1
|
||||
importBlendShapes: 0
|
||||
importCameras: 0
|
||||
importLights: 0
|
||||
nodeNameCollisionStrategy: 0
|
||||
fileIdsGeneration: 2
|
||||
swapUVChannels: 0
|
||||
generateSecondaryUV: 0
|
||||
useFileUnits: 1
|
||||
keepQuads: 0
|
||||
weldVertices: 1
|
||||
bakeAxisConversion: 0
|
||||
preserveHierarchy: 0
|
||||
skinWeightsMode: 0
|
||||
maxBonesPerVertex: 4
|
||||
minBoneWeight: 0.001
|
||||
optimizeBones: 1
|
||||
meshOptimizationFlags: -1
|
||||
indexFormat: 0
|
||||
secondaryUVAngleDistortion: 8
|
||||
secondaryUVAreaDistortion: 15.000001
|
||||
secondaryUVHardAngle: 88
|
||||
secondaryUVMarginMethod: 1
|
||||
secondaryUVMinLightmapResolution: 40
|
||||
secondaryUVMinObjectScale: 1
|
||||
secondaryUVPackMargin: 4
|
||||
useFileScale: 1
|
||||
strictVertexDataChecks: 0
|
||||
tangentSpace:
|
||||
normalSmoothAngle: 60
|
||||
normalImportMode: 0
|
||||
tangentImportMode: 3
|
||||
normalCalculationMode: 4
|
||||
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
|
||||
blendShapeNormalImportMode: 1
|
||||
normalSmoothingSource: 0
|
||||
referencedClips: []
|
||||
importAnimation: 0
|
||||
humanDescription:
|
||||
serializedVersion: 3
|
||||
human: []
|
||||
skeleton:
|
||||
- name: RightHand-Original-ImportExportTest(Clone)
|
||||
parentName:
|
||||
position: {x: 0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: V2-Hand reference mesh-02
|
||||
parentName: RightHand-Original-ImportExportTest(Clone)
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: R_Wrist
|
||||
parentName: RightHand-Original-ImportExportTest(Clone)
|
||||
position: {x: -0.003278835, y: 0.05342003, z: -0.062004544}
|
||||
rotation: {x: 0.6861093, y: 0.036429923, z: 0.028978078, w: 0.7260077}
|
||||
scale: {x: 1.0000001, y: 1, z: 1.0000027}
|
||||
- name: R_IndexMetacarpal
|
||||
parentName: R_Wrist
|
||||
position: {x: -0.015184388, y: 0.043368313, z: -0.0004082384}
|
||||
rotation: {x: -0.039728012, y: -0.016940618, z: 0.0136341, w: 0.9989739}
|
||||
scale: {x: 0.99999994, y: 1, z: 0.99999994}
|
||||
- name: R_IndexProximal
|
||||
parentName: R_IndexMetacarpal
|
||||
position: {x: -0.0000000030971443, y: 0.053249188, z: 0.0000000036459735}
|
||||
rotation: {x: 0.11408561, y: 0.027069341, z: -0.003031183, w: 0.9930975}
|
||||
scale: {x: 1, y: 0.9999999, z: 1.0000002}
|
||||
- name: R_IndexIntermediate
|
||||
parentName: R_IndexProximal
|
||||
position: {x: 2.0986757e-10, y: 0.03119257, z: -0.0000000029665912}
|
||||
rotation: {x: 0.22822198, y: -0.0019579423, z: -0.0028197072, w: 0.9736031}
|
||||
scale: {x: 1, y: 1.0000002, z: 0.9999998}
|
||||
- name: R_IndexDistal
|
||||
parentName: R_IndexIntermediate
|
||||
position: {x: 0.000000011364375, y: 0.015153917, z: 0.000000006907221}
|
||||
rotation: {x: 0.11608021, y: -0.020753868, z: 0.0004017833, w: 0.9930229}
|
||||
scale: {x: 0.99999994, y: 1.0000006, z: 0.99999946}
|
||||
- name: R_IndexTip
|
||||
parentName: R_IndexDistal
|
||||
position: {x: 0.0000000049176343, y: 0.008471283, z: 0.000000011485351}
|
||||
rotation: {x: 0.023955874, y: -0.01890053, z: -0.00004664642, w: 0.99953437}
|
||||
scale: {x: 0.99999994, y: 1.0000001, z: 0.9999998}
|
||||
- name: R_MiddleMetacarpal
|
||||
parentName: R_Wrist
|
||||
position: {x: -0.0021637694, y: 0.041841764, z: -0.0008136065}
|
||||
rotation: {x: -0.018308057, y: -0.06036859, z: -0.022970585, w: 0.9977439}
|
||||
scale: {x: 1.0000001, y: 1, z: 0.99999994}
|
||||
- name: R_MiddleProximal
|
||||
parentName: R_MiddleMetacarpal
|
||||
position: {x: -0.00000000739658, y: 0.053792052, z: 0.0000000048860156}
|
||||
rotation: {x: 0.118838586, y: 0.01847689, z: -0.00033644997, w: 0.9927416}
|
||||
scale: {x: 1, y: 0.9999999, z: 1.0000001}
|
||||
- name: R_MiddleIntermediate
|
||||
parentName: R_MiddleProximal
|
||||
position: {x: 0.000000005422766, y: 0.031502105, z: -6.3897215e-10}
|
||||
rotation: {x: 0.32552293, y: -0.011826178, z: 0.020449111, w: 0.945239}
|
||||
scale: {x: 0.9999999, y: 1.0000005, z: 0.99999946}
|
||||
- name: R_MiddleDistal
|
||||
parentName: R_MiddleIntermediate
|
||||
position: {x: 0.000000028710986, y: 0.018965539, z: 0.000000026385173}
|
||||
rotation: {x: 0.20727825, y: 0.012435533, z: 0.028069785, w: 0.9778002}
|
||||
scale: {x: 1, y: 1.0000008, z: 0.99999917}
|
||||
- name: R_MiddleTip
|
||||
parentName: R_MiddleDistal
|
||||
position: {x: 0.000000018862254, y: 0.01355556, z: 0.000000010927729}
|
||||
rotation: {x: 0.027218292, y: -0.026071634, z: -0.0108469, w: 0.9992306}
|
||||
scale: {x: 1, y: 1.0000001, z: 0.9999999}
|
||||
- name: R_RingMetacarpal
|
||||
parentName: R_Wrist
|
||||
position: {x: 0.009159105, y: 0.04289402, z: -0.0009776641}
|
||||
rotation: {x: -0.5051329, y: -0.012376049, z: -0.08139011, w: 0.8591061}
|
||||
scale: {x: 1.0000001, y: 1, z: 0.9999999}
|
||||
- name: R_RingProximal
|
||||
parentName: R_RingMetacarpal
|
||||
position: {x: 7.1046946e-10, y: 0.047772877, z: -0.0000000012237608}
|
||||
rotation: {x: 0.01830861, y: -0.036776215, z: 0.04406918, w: 0.9981835}
|
||||
scale: {x: 1.0000002, y: 1, z: 0.9999999}
|
||||
- name: R_RingIntermediate
|
||||
parentName: R_RingProximal
|
||||
position: {x: 0.000000020008601, y: 0.027416931, z: 0.000000009794475}
|
||||
rotation: {x: -0.004819274, y: -0.085748516, z: -0.0073304567, w: 0.9962782}
|
||||
scale: {x: 1.0000001, y: 1.0000005, z: 0.99999917}
|
||||
- name: R_RingDistal
|
||||
parentName: R_RingIntermediate
|
||||
position: {x: 0.0000000361422, y: 0.021599585, z: 0.000000012509237}
|
||||
rotation: {x: 0.21586773, y: -0.11252745, z: 0.5731088, w: 0.78248644}
|
||||
scale: {x: 1.0000002, y: 1.0000005, z: 0.9999993}
|
||||
- name: R_RingTip
|
||||
parentName: R_RingDistal
|
||||
position: {x: 0.000000014014161, y: 0.008182308, z: 0.000000016518117}
|
||||
rotation: {x: 0.08212139, y: 0.050801937, z: -0.04902353, w: 0.9941187}
|
||||
scale: {x: 0.99999976, y: 1.0000004, z: 0.99999976}
|
||||
- name: R_Palm
|
||||
parentName: R_Wrist
|
||||
position: {x: 0.00033856664, y: 0.052908763, z: -0.0050242892}
|
||||
rotation: {x: 0.036044274, y: -0.046207204, z: 0.0056319265, w: 0.9982655}
|
||||
scale: {x: 1.0000001, y: 1, z: 0.9999999}
|
||||
- name: R_ThumbMetacarpal
|
||||
parentName: R_Wrist
|
||||
position: {x: -0.024570636, y: 0.039576054, z: 0.0056750975}
|
||||
rotation: {x: 0.38757673, y: 0.48578048, z: 0.5464086, w: 0.5614617}
|
||||
scale: {x: 0.99999976, y: 0.99999994, z: 1.0000002}
|
||||
- name: R_ThumbProximal
|
||||
parentName: R_ThumbMetacarpal
|
||||
position: {x: 0.0000000030227367, y: 0.024318831, z: 0.0000000127638735}
|
||||
rotation: {x: 0.11798811, y: 0.073554516, z: 0.027695354, w: 0.9898998}
|
||||
scale: {x: 1.0000005, y: 0.99999994, z: 0.9999997}
|
||||
- name: R_ThumbDistal
|
||||
parentName: R_ThumbProximal
|
||||
position: {x: -0.000000013828266, y: 0.03048904, z: 0.000000047016265}
|
||||
rotation: {x: 0.06120874, y: -0.114165455, z: -0.55291957, w: 0.82310367}
|
||||
scale: {x: 1.0000006, y: 1.0000001, z: 0.99999917}
|
||||
- name: R_ThumbTip
|
||||
parentName: R_ThumbDistal
|
||||
position: {x: -0.000000024058998, y: 0.017674206, z: 0.00000008461095}
|
||||
rotation: {x: -0.042718224, y: -0.040577695, z: -0.007416172, w: 0.9982353}
|
||||
scale: {x: 0.99999994, y: 1.0000001, z: 1.0000001}
|
||||
- name: R_LittleMetacarpal
|
||||
parentName: R_Wrist
|
||||
position: {x: 0.018062059, y: 0.041240305, z: 0.002480461}
|
||||
rotation: {x: 0.040541753, y: -0.2460445, z: -0.13661616, w: 0.9587255}
|
||||
scale: {x: 1.0000004, y: 1, z: 0.9999997}
|
||||
- name: R_LittleProximal
|
||||
parentName: R_LittleMetacarpal
|
||||
position: {x: 0.000000022705052, y: 0.04444153, z: -0.0000000065787407}
|
||||
rotation: {x: 0.58528006, y: 0.13245042, z: -0.15188508, w: 0.7853885}
|
||||
scale: {x: 0.99999964, y: 1.0000001, z: 1.0000004}
|
||||
- name: R_LittleIntermediate
|
||||
parentName: R_LittleProximal
|
||||
position: {x: 0.000000013486351, y: 0.0184942, z: -0.0000000054124114}
|
||||
rotation: {x: 0.21532907, y: -0.22571056, z: -0.01377247, w: 0.9499992}
|
||||
scale: {x: 1.0000007, y: 1.0000004, z: 0.99999905}
|
||||
- name: R_LittleDistal
|
||||
parentName: R_LittleIntermediate
|
||||
position: {x: 0.000000031878056, y: 0.014893936, z: 0.00000000870707}
|
||||
rotation: {x: -0.27264047, y: 0.07361126, z: 0.2861297, w: 0.91563004}
|
||||
scale: {x: 0.9999997, y: 1.0000007, z: 0.99999964}
|
||||
- name: R_LittleTip
|
||||
parentName: R_LittleDistal
|
||||
position: {x: 0.000000019335364, y: 0.0077872393, z: -9.0059754e-10}
|
||||
rotation: {x: 0.030928679, y: 0.115395255, z: 0.0017466116, w: 0.99283653}
|
||||
scale: {x: 0.99999994, y: 1, z: 1}
|
||||
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: 1
|
||||
skeletonHasParents: 1
|
||||
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
||||
autoGenerateAvatarMappingIfUnspecified: 1
|
||||
animationType: 2
|
||||
humanoidOversampling: 1
|
||||
avatarSetup: 0
|
||||
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||
importBlendShapeDeformPercent: 0
|
||||
remapMaterialsIfMaterialImportModeIsNone: 0
|
||||
additionalBone: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3acfee4a2c8c7c24b96095fdac3ee33d
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Binary file not shown.
+7
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 254b742d65a15d14b9df756ae77de868
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Binary file not shown.
+7
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b3ed8a0a703ebd34a9e44ed3d9f1fcf6
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Binary file not shown.
+7
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3f7511fbc40ae7a4b89c3298a3de199d
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Binary file not shown.
+7
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 629fd7882ec6bfc499a5fcf20035282b
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
# Hand Visualizer Sample
|
||||
|
||||
Demonstrates driving meshes and free-floating debug-draw objects on an XR Origin by using `XRHandSubsystem`.
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b0057a2d371351e41ae711f975c741e2
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0c161b4c00c888c41a1bb8253e94492c
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+171
@@ -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>();
|
||||
}
|
||||
}
|
||||
+11
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ac5903b776721d74786a2e43f00b949a
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+608
@@ -0,0 +1,608 @@
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine.Serialization;
|
||||
|
||||
namespace UnityEngine.XR.Hands.Samples.VisualizerSample
|
||||
{
|
||||
// Hand rig setups can differ between platforms. In these cases, the HandVisualizer supports displaying unique hands on a per-platform basis.
|
||||
// If you would like to customize the hand meshes that are displayed by the HandVisualizer, based on the platform you are using,
|
||||
// you will need to replace the rigged hand mesh references assigned to the corresponding fields for that platform.
|
||||
// For Meta Quest devices, assign your rigged hand meshes to the "m_MetaQuestLeftHandMesh" & "m_MetaQuestRightHandMesh" fields.
|
||||
// For Android XR devices, assign your rigged hand meshes to the "m_AndroidXRLeftHandMesh" & "m_AndroidXRRightHandMesh" fields.
|
||||
// The rigged hand meshes that are assigned for a given platform will be displayed when that platform is detected,
|
||||
// and any other rigged hand meshes assigned for other undetected platforms will not be displayed.
|
||||
|
||||
/// <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, FormerlySerializedAs("m_LeftHandMesh")]
|
||||
[Tooltip("References either a prefab or a GameObject in the scene that will be used to visualize the left hand.")]
|
||||
GameObject m_MetaQuestLeftHandMesh;
|
||||
|
||||
[SerializeField, FormerlySerializedAs("m_RightHandMesh")]
|
||||
[Tooltip("References either a prefab or a GameObject in the scene that will be used to visualize the right hand.")]
|
||||
GameObject m_MetaQuestRightHandMesh;
|
||||
|
||||
[SerializeField]
|
||||
[Tooltip("References either a prefab or a GameObject in the scene that will be used to visualize the left hand on Android XR devices." +
|
||||
"<br><br><b>Instructions for how to setup and use these meshes can be found at the top of the <b>HandVisualizer.cs class</b>")]
|
||||
GameObject m_AndroidXRLeftHandMesh;
|
||||
|
||||
[SerializeField]
|
||||
[Tooltip("References either a prefab or a GameObject in the scene that will be used to visualize the right hand on Android XR devices." +
|
||||
"<br><br><b>Instructions for how to setup and use these meshes can be found at the top of the <b>HandVisualizer.cs class</b>")]
|
||||
GameObject m_AndroidXRRightHandMesh;
|
||||
|
||||
[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;
|
||||
|
||||
GameObject selectedLeftHandMesh = null, selectedRightHandMesh = null;
|
||||
if (m_Subsystem.detectedHandMeshLayout == XRDetectedHandMeshLayout.OpenXRAndroidXR)
|
||||
{
|
||||
selectedLeftHandMesh = m_AndroidXRLeftHandMesh;
|
||||
selectedRightHandMesh = m_AndroidXRRightHandMesh;
|
||||
}
|
||||
else
|
||||
{
|
||||
selectedLeftHandMesh = m_MetaQuestLeftHandMesh;
|
||||
selectedRightHandMesh = m_MetaQuestRightHandMesh;
|
||||
}
|
||||
|
||||
if (m_LeftHandGameObjects == null)
|
||||
{
|
||||
m_LeftHandGameObjects = new HandGameObjects(
|
||||
Handedness.Left,
|
||||
transform,
|
||||
selectedLeftHandMesh,
|
||||
m_HandMeshMaterial,
|
||||
m_DebugDrawPrefab,
|
||||
m_VelocityPrefab);
|
||||
}
|
||||
|
||||
if (m_RightHandGameObjects == null)
|
||||
{
|
||||
m_RightHandGameObjects = new HandGameObjects(
|
||||
Handedness.Right,
|
||||
transform,
|
||||
selectedRightHandMesh,
|
||||
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()];
|
||||
JointVisualizer[] m_JointVisualizers = new JointVisualizer[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);
|
||||
|
||||
if (m_DrawJoints[jointIndex].TryGetComponent<JointVisualizer>(out var jointVisualizer))
|
||||
m_JointVisualizers[jointIndex] = jointVisualizer;
|
||||
}
|
||||
|
||||
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();
|
||||
m_JointVisualizers[jointIndex].NotifyTrackingState(joint.trackingState);
|
||||
|
||||
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));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+11
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2e9813c68d7d6f44282ace8bd2d1fd46
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.XR.Hands.Processing;
|
||||
|
||||
namespace UnityEngine.XR.Hands.Samples.VisualizerSample
|
||||
{
|
||||
public class JointVisualizer : MonoBehaviour
|
||||
{
|
||||
[SerializeField]
|
||||
GameObject m_JointVisual;
|
||||
|
||||
[SerializeField]
|
||||
Material m_HighFidelityJointMaterial;
|
||||
|
||||
[SerializeField]
|
||||
Material m_LowFidelityJointMaterial;
|
||||
|
||||
bool m_HighFidelityJoint;
|
||||
|
||||
Renderer m_JointRenderer;
|
||||
|
||||
public void NotifyTrackingState(XRHandJointTrackingState jointTrackingState)
|
||||
{
|
||||
bool highFidelityJoint = (jointTrackingState & XRHandJointTrackingState.HighFidelityPose) == XRHandJointTrackingState.HighFidelityPose;
|
||||
if (m_HighFidelityJoint == highFidelityJoint)
|
||||
return;
|
||||
|
||||
m_JointRenderer.material = highFidelityJoint ? m_HighFidelityJointMaterial : m_LowFidelityJointMaterial;
|
||||
|
||||
m_HighFidelityJoint = highFidelityJoint;
|
||||
}
|
||||
|
||||
void Start()
|
||||
{
|
||||
if (m_JointVisual.TryGetComponent<Renderer>(out var jointRenderer))
|
||||
m_JointRenderer = jointRenderer;
|
||||
}
|
||||
}
|
||||
}
|
||||
+11
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6e1c395ff62a3a14dbeb293298bb46bf
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+249
@@ -0,0 +1,249 @@
|
||||
using UnityEngine.Rendering;
|
||||
using System.Collections.Generic;
|
||||
#if UNITY_EDITOR
|
||||
using UnityEditor;
|
||||
#endif
|
||||
|
||||
namespace UnityEngine.XR.Hands.Samples.VisualizerSample
|
||||
{
|
||||
#if UNITY_EDITOR
|
||||
[InitializeOnLoad]
|
||||
static class RenderPipelineValidation
|
||||
{
|
||||
static RenderPipelineValidation()
|
||||
{
|
||||
foreach (var pipelineHandler in GetAllInstances())
|
||||
pipelineHandler.AutoRefreshPipelineShaders();
|
||||
}
|
||||
|
||||
static List<MaterialPipelineHandler> GetAllInstances()
|
||||
{
|
||||
var instances = new List<MaterialPipelineHandler>();
|
||||
|
||||
// Find all GUIDs for objects that match the type MaterialPipelineHandler
|
||||
var guids = AssetDatabase.FindAssets("t:MaterialPipelineHandler");
|
||||
for (int i = 0; i < guids.Length; i++)
|
||||
{
|
||||
string path = AssetDatabase.GUIDToAssetPath(guids[i]);
|
||||
var asset = AssetDatabase.LoadAssetAtPath<MaterialPipelineHandler>(path);
|
||||
if (asset != null)
|
||||
instances.Add(asset);
|
||||
}
|
||||
|
||||
return instances;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
/// <summary>
|
||||
/// Serializable class that contains the shader information for a material.
|
||||
/// </summary>
|
||||
[System.Serializable]
|
||||
public class ShaderContainer
|
||||
{
|
||||
public Material material;
|
||||
public bool useSRPShaderName = true;
|
||||
public string scriptableRenderPipelineShaderName = "Universal Render Pipeline/Lit";
|
||||
public Shader scriptableRenderPipelineShader;
|
||||
public bool useBuiltinShaderName = true;
|
||||
public string builtInPipelineShaderName = "Standard";
|
||||
public Shader builtInPipelineShader;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Scriptable object that allows for setting the shader on a material based on the current render pipeline.
|
||||
/// Will run automatically OnEnable in the editor to set the shaders on project bootup. Can be refreshed manually with editor button.
|
||||
/// This exists because while objects render correctly using shadergraph shaders, others do not and using the standard shader resolves various rendering issues.
|
||||
/// </summary>
|
||||
[CreateAssetMenu(fileName = "MaterialPipelineHandler", menuName = "XR/MaterialPipelineHandler", order = 0)]
|
||||
public class MaterialPipelineHandler : ScriptableObject
|
||||
{
|
||||
[SerializeField]
|
||||
[Tooltip("List of materials and their associated shaders.")]
|
||||
List<ShaderContainer> m_ShaderContainers;
|
||||
|
||||
[SerializeField]
|
||||
[Tooltip("If true, the shaders will be refreshed automatically when the editor opens and when this scriptable object instance is enabled.")]
|
||||
bool m_AutoRefreshShaders = true;
|
||||
|
||||
#if UNITY_EDITOR
|
||||
void OnEnable()
|
||||
{
|
||||
if (Application.isPlaying)
|
||||
return;
|
||||
AutoRefreshPipelineShaders();
|
||||
}
|
||||
#endif
|
||||
|
||||
public void AutoRefreshPipelineShaders()
|
||||
{
|
||||
if (m_AutoRefreshShaders)
|
||||
SetPipelineShaders();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Applies the appropriate shader to the materials based on the current render pipeline.
|
||||
/// </summary>
|
||||
public void SetPipelineShaders()
|
||||
{
|
||||
if (m_ShaderContainers == null)
|
||||
return;
|
||||
|
||||
bool isBuiltinRenderPipeline = GraphicsSettings.currentRenderPipeline == null;
|
||||
|
||||
foreach (var info in m_ShaderContainers)
|
||||
{
|
||||
if (info.material == null)
|
||||
continue;
|
||||
|
||||
// Store original color before shader change
|
||||
Color originalColor = info.material.GetColor("_Color");
|
||||
if (!info.material.HasProperty("_Color"))
|
||||
originalColor = info.material.GetColor("_BaseColor"); // URP uses _BaseColor
|
||||
|
||||
// Find the appropriate shaders based on the toggle
|
||||
Shader birpShader = info.useBuiltinShaderName ? Shader.Find(info.builtInPipelineShaderName) : info.builtInPipelineShader;
|
||||
Shader srpShader = info.useSRPShaderName ? Shader.Find(info.scriptableRenderPipelineShaderName) : info.scriptableRenderPipelineShader;
|
||||
|
||||
// Determine current shader for comparison
|
||||
Shader currentShader = info.material.shader;
|
||||
|
||||
// Update shader for the current render pipeline only if necessary
|
||||
if (isBuiltinRenderPipeline && birpShader != null && currentShader != birpShader)
|
||||
{
|
||||
info.material.shader = birpShader;
|
||||
info.material.SetColor("_Color", originalColor);
|
||||
MarkMaterialModified(info.material);
|
||||
}
|
||||
else if (!isBuiltinRenderPipeline && srpShader != null && currentShader != srpShader)
|
||||
{
|
||||
info.material.shader = srpShader;
|
||||
info.material.SetColor("_BaseColor", originalColor);
|
||||
MarkMaterialModified(info.material);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void MarkMaterialModified(Material material)
|
||||
{
|
||||
#if UNITY_EDITOR
|
||||
EditorUtility.SetDirty(material);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
#if UNITY_EDITOR
|
||||
/// <summary>
|
||||
/// Custom property drawer for the shader container class.
|
||||
/// </summary>
|
||||
[CustomPropertyDrawer(typeof(ShaderContainer))]
|
||||
public class ShaderContainerDrawer : PropertyDrawer
|
||||
{
|
||||
public override void OnGUI(Rect position, SerializedProperty property, GUIContent label)
|
||||
{
|
||||
EditorGUI.BeginProperty(position, label, property);
|
||||
|
||||
float singleLineHeight = EditorGUIUtility.singleLineHeight;
|
||||
float verticalSpacing = EditorGUIUtility.standardVerticalSpacing;
|
||||
|
||||
SerializedProperty materialProp = property.FindPropertyRelative("material");
|
||||
SerializedProperty useSRPShaderNameProp = property.FindPropertyRelative("useSRPShaderName");
|
||||
SerializedProperty scriptableShaderNameProp = property.FindPropertyRelative("scriptableRenderPipelineShaderName");
|
||||
SerializedProperty scriptableShaderProp = property.FindPropertyRelative("scriptableRenderPipelineShader");
|
||||
SerializedProperty useShaderNameProp = property.FindPropertyRelative("useBuiltinShaderName");
|
||||
SerializedProperty builtInNameProp = property.FindPropertyRelative("builtInPipelineShaderName");
|
||||
SerializedProperty builtInShaderProp = property.FindPropertyRelative("builtInPipelineShader");
|
||||
|
||||
// Draw Material without the header.
|
||||
position.height = singleLineHeight;
|
||||
EditorGUI.PropertyField(position, materialProp);
|
||||
position.y += singleLineHeight + verticalSpacing;
|
||||
|
||||
// SRP Shader header and fields.
|
||||
EditorGUI.LabelField(position, "Scriptable Render Pipeline Shader", EditorStyles.boldLabel);
|
||||
position.y += EditorGUIUtility.singleLineHeight + verticalSpacing;
|
||||
|
||||
EditorGUI.PropertyField(position, useSRPShaderNameProp);
|
||||
position.y += singleLineHeight + verticalSpacing;
|
||||
|
||||
if (useSRPShaderNameProp.boolValue)
|
||||
{
|
||||
EditorGUI.PropertyField(position, scriptableShaderNameProp);
|
||||
position.y += singleLineHeight + verticalSpacing;
|
||||
}
|
||||
else
|
||||
{
|
||||
EditorGUI.PropertyField(position, scriptableShaderProp);
|
||||
position.y += singleLineHeight + verticalSpacing;
|
||||
}
|
||||
|
||||
// Built-in Shader header and fields.
|
||||
EditorGUI.LabelField(position, "Built-In Render Pipeline Shader", EditorStyles.boldLabel);
|
||||
position.y += singleLineHeight + verticalSpacing;
|
||||
|
||||
EditorGUI.PropertyField(position, useShaderNameProp);
|
||||
position.y += singleLineHeight + verticalSpacing;
|
||||
|
||||
if (useShaderNameProp.boolValue)
|
||||
{
|
||||
EditorGUI.PropertyField(position, builtInNameProp);
|
||||
position.y += singleLineHeight + verticalSpacing;
|
||||
}
|
||||
else
|
||||
{
|
||||
EditorGUI.PropertyField(position, builtInShaderProp);
|
||||
position.y += singleLineHeight + verticalSpacing;
|
||||
}
|
||||
|
||||
// Draw a separator line at the end.
|
||||
position.y += verticalSpacing / 2; // Extra space for the line.
|
||||
position.height = 1;
|
||||
EditorGUI.DrawRect(new Rect(position.x, position.y, position.width, 1), Color.gray);
|
||||
|
||||
EditorGUI.EndProperty();
|
||||
}
|
||||
|
||||
public override float GetPropertyHeight(SerializedProperty property, GUIContent label)
|
||||
{
|
||||
const int baseFieldCount = 4; // The Material field, the two toggles, and one for an optional field.
|
||||
int extraLineCount = property.FindPropertyRelative("useBuiltinShaderName").boolValue ? 0 : 1;
|
||||
extraLineCount += property.FindPropertyRelative("useSRPShaderName").boolValue ? 0 : 1;
|
||||
|
||||
float singleLineHeight = EditorGUIUtility.singleLineHeight;
|
||||
float verticalSpacing = EditorGUIUtility.standardVerticalSpacing;
|
||||
float headerHeight = EditorGUIUtility.singleLineHeight; // No longer need extra height for headers.
|
||||
|
||||
// Calculate height for fields and headers
|
||||
float fieldsHeight = baseFieldCount * singleLineHeight + (baseFieldCount - 1 + extraLineCount) * verticalSpacing;
|
||||
|
||||
// Allow space for header, separator line, and a bit of padding before the line.
|
||||
float headersHeight = 2 * (headerHeight + verticalSpacing);
|
||||
float separatorSpace = verticalSpacing / 2 + 1; // Additional vertical spacing and line height.
|
||||
|
||||
return fieldsHeight + headersHeight + separatorSpace + singleLineHeight * 1.5f;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Custom editor MaterialPipelineHandler
|
||||
/// </summary>
|
||||
[CustomEditor(typeof(MaterialPipelineHandler)), CanEditMultipleObjects]
|
||||
public class MaterialPipelineHandlerEditor : Editor
|
||||
{
|
||||
public override void OnInspectorGUI()
|
||||
{
|
||||
base.OnInspectorGUI();
|
||||
|
||||
// Draw the "Refresh Shaders" button
|
||||
if (GUILayout.Button("Refresh Shaders"))
|
||||
{
|
||||
foreach (var t in targets)
|
||||
{
|
||||
var handler = (MaterialPipelineHandler)t;
|
||||
handler.SetPipelineShaders();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
+11
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6772a216ed6f29c42abef904c7d6940d
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+18
@@ -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
|
||||
}
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 60e576d96416ac94182fe26f63acf9ff
|
||||
AssemblyDefinitionImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3099165e1531cb747bf5f107ed487035
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 433bde593676ec646b322eed4ca63779
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a9308b2af512bb049ab21187d0e84301
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 433598263b9448741a163c607dcda8a5
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+74
@@ -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: FingerColor
|
||||
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: 1, g: 0.78431374, b: 0.5686275, a: 0.5254902}
|
||||
animationStateEndValue: {r: 1, g: 0.78431374, b: 0.5686275, a: 0.5254902}
|
||||
- stateName: hoveredPriority
|
||||
animationStateStartValue: {r: 1, g: 0.78431374, b: 0.5686275, a: 0.5254902}
|
||||
animationStateEndValue: {r: 1, g: 0.78431374, b: 0.5686275, a: 0.5254902}
|
||||
- stateName: selected
|
||||
animationStateStartValue: {r: 0.5686275, g: 0.78431374, b: 1, a: 1}
|
||||
animationStateEndValue: {r: 0.5686275, g: 0.78431374, 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
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ec1df508c6fb9eb45ae9f181ff6bbe82
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+74
@@ -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: HandEdgeColor
|
||||
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: 1, g: 1, b: 1, a: 0.5254902}
|
||||
animationStateEndValue: {r: 1, g: 1, b: 1, a: 0.5254902}
|
||||
- stateName: hoveredPriority
|
||||
animationStateStartValue: {r: 1, g: 1, b: 1, a: 0.8}
|
||||
animationStateEndValue: {r: 1, g: 1, b: 1, a: 0.8}
|
||||
- stateName: selected
|
||||
animationStateStartValue: {r: 1, g: 1, b: 1, a: 1}
|
||||
animationStateEndValue: {r: 0.5686275, g: 0.78431374, b: 1, a: 1}
|
||||
- stateName: activated
|
||||
animationStateStartValue: {r: 0.5686275, g: 0.78431374, b: 1, a: 0.8}
|
||||
animationStateEndValue: {r: 0.5686275, g: 0.78431374, 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
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f94337e1a5a93c7438d8f8508b246e6d
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+74
@@ -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: InteractionColor
|
||||
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
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2447c2ae63ed301429bb0f32f88ef8ce
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+66
@@ -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
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: fbf5c74e21f572740881de5634f1ce9c
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+68
@@ -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
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1468864c36cbf39428681b1f0d9ef149
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+66
@@ -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
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2d9d4878bfb037248af1d243a0638dd0
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+68
@@ -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
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6b0360f219436394b8519378cd55c7e3
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+108
@@ -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
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2826cece951f71642a19da5a2080a27c
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+66
@@ -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
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d22e48f34794ab9498d082f9713c2293
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9024548be6607c7498776620cbf54adf
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+33
@@ -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
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2899508b1645c5e4fa421b4217da9539
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+33
@@ -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
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 15088c60ea1e00448a95ebaef96316da
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+33
@@ -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
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 979c1b69d98e91041bc1c5c6e63aab97
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+33
@@ -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
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5c3063cefe11749438f60126cef83288
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 981a9b62b953c3045a7054300387cca1
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "Unity.XR.Interaction.Toolkit.Samples.Hands.Editor",
|
||||
"rootNamespace": "UnityEditor.XR.Interaction.Toolkit.Samples.Hands.Editor",
|
||||
"references": [
|
||||
"Unity.XR.CoreUtils",
|
||||
"Unity.XR.CoreUtils.Editor",
|
||||
"Unity.XR.Interaction.Toolkit",
|
||||
"Unity.XR.Interaction.Toolkit.Editor"
|
||||
],
|
||||
"includePlatforms": [
|
||||
"Editor"
|
||||
],
|
||||
"excludePlatforms": [],
|
||||
"allowUnsafeCode": false,
|
||||
"overrideReferences": false,
|
||||
"precompiledReferences": [],
|
||||
"autoReferenced": true,
|
||||
"defineConstraints": [],
|
||||
"versionDefines": [],
|
||||
"noEngineReferences": false
|
||||
}
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ec10eb674fe33dc418851b064a84acc4
|
||||
AssemblyDefinitionImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 86f27c2138eb8584fa6527e18c1be13d
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+236
@@ -0,0 +1,236 @@
|
||||
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 UnityEditor.XR.Interaction.Toolkit.ProjectValidation;
|
||||
using UnityEngine;
|
||||
|
||||
namespace UnityEditor.XR.Interaction.Toolkit.Samples.Hands.Editor
|
||||
{
|
||||
/// <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 HandsSampleProjectValidation
|
||||
{
|
||||
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_HandsPackageDisplayName = "XR Hands";
|
||||
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_MinimumHandsPackageVersion = new PackageVersion("1.5.1");
|
||||
static readonly PackageVersion s_RecommendedHandsPackageVersion = new PackageVersion("1.6.1");
|
||||
|
||||
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_MinimumHandsPackageVersion,
|
||||
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_RecommendedHandsPackageVersion} or higher to use the latest sample features.",
|
||||
Category = k_Category,
|
||||
CheckPredicate = () => PackageVersionUtility.GetPackageVersion(k_HandsPackageName) >= s_RecommendedHandsPackageVersion,
|
||||
FixIt = () =>
|
||||
{
|
||||
if (s_HandsPackageAddRequest == null || s_HandsPackageAddRequest.IsCompleted)
|
||||
InstallOrUpdateHands();
|
||||
},
|
||||
FixItAutomatic = true,
|
||||
Error = false,
|
||||
},
|
||||
new BuildValidationRule
|
||||
{
|
||||
IsRuleEnabled = () => PackageVersionUtility.GetPackageVersion(k_HandsPackageName) >= s_MinimumHandsPackageVersion,
|
||||
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 = () => ProjectValidationUtility.SampleImportMeetsMinimumVersion(k_HandsPackageDisplayName, k_HandVisualizerSampleName, PackageVersionUtility.GetPackageVersion(k_HandsPackageName)),
|
||||
FixIt = () =>
|
||||
{
|
||||
if (TryFindSample(k_HandsPackageName, string.Empty, k_HandVisualizerSampleName, out var sample))
|
||||
{
|
||||
sample.Import(Sample.ImportOptions.OverridePreviousImports);
|
||||
}
|
||||
},
|
||||
FixItAutomatic = true,
|
||||
Error = !ProjectValidationUtility.SampleImportMeetsMinimumVersion(k_HandsPackageDisplayName, k_HandVisualizerSampleName, s_MinimumHandsPackageVersion),
|
||||
},
|
||||
new BuildValidationRule
|
||||
{
|
||||
Message = $"[{k_SampleDisplayName}] {k_StarterAssetsSampleName} sample from XR Interaction Toolkit ({k_XRIPackageName}) package must be imported or updated to use this sample. {GetImportSampleVersionMessage(k_Category, k_StarterAssetsSampleName, ProjectValidationUtility.minimumXRIStarterAssetsSampleVersion)}",
|
||||
Category = k_Category,
|
||||
CheckPredicate = () => ProjectValidationUtility.SampleImportMeetsMinimumVersion(k_Category, k_StarterAssetsSampleName, ProjectValidationUtility.minimumXRIStarterAssetsSampleVersion),
|
||||
FixIt = () =>
|
||||
{
|
||||
if (TryFindSample(k_XRIPackageName, string.Empty, k_StarterAssetsSampleName, out var sample))
|
||||
{
|
||||
sample.Import(Sample.ImportOptions.OverridePreviousImports);
|
||||
}
|
||||
},
|
||||
FixItAutomatic = true,
|
||||
Error = !ProjectValidationUtility.HasSampleImported(k_Category, k_StarterAssetsSampleName),
|
||||
},
|
||||
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() && validation.Error))
|
||||
{
|
||||
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;
|
||||
#if UNITY_2022_2_OR_NEWER
|
||||
var recommendedVersion = new PackageVersion(versions.recommended);
|
||||
#else
|
||||
var recommendedVersion = new PackageVersion(versions.verified);
|
||||
#endif
|
||||
var latestCompatible = new PackageVersion(versions.latestCompatible);
|
||||
if (recommendedVersion < s_RecommendedHandsPackageVersion && s_RecommendedHandsPackageVersion <= latestCompatible)
|
||||
addRequest = $"{k_HandsPackageName}@{s_RecommendedHandsPackageVersion}";
|
||||
}
|
||||
|
||||
s_HandsPackageAddRequest = Client.Add(addRequest);
|
||||
if (s_HandsPackageAddRequest.Error != null)
|
||||
{
|
||||
Debug.LogError($"Package installation error: {s_HandsPackageAddRequest.Error}: {s_HandsPackageAddRequest.Error.message}");
|
||||
}
|
||||
}
|
||||
|
||||
static string GetImportSampleVersionMessage(string packageFolderName, string sampleDisplayName, PackageVersion version)
|
||||
{
|
||||
if (ProjectValidationUtility.SampleImportMeetsMinimumVersion(packageFolderName, sampleDisplayName, version) || !ProjectValidationUtility.HasSampleImported(packageFolderName, sampleDisplayName))
|
||||
return string.Empty;
|
||||
|
||||
return $"An older version of {sampleDisplayName} has been found. This may cause errors.";
|
||||
}
|
||||
}
|
||||
}
|
||||
+11
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0deb305527bf17143801528616ee4f73
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Binary file not shown.
+7
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3ff35cecbcc52cc42945cf531638a60a
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1a5d62171de539e4e9cb663b19180604
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e808bedb47894a9469ff90e39c886dd5
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+39
@@ -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: Audio
|
||||
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}
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 57def9352cdee8548bfc9ebc6a55914a
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+66
@@ -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: BlendShapeValue
|
||||
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
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 20eb8725b4dab864ea2bfa8ecbd4adff
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+108
@@ -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: CapsuleScale
|
||||
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
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e5acc2ade2588d44fb53e968cd702099
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+68
@@ -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: ChessPieceColor
|
||||
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
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c39d3614cd6089347a01b0743003ae34
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user