qianzhuqing 3 роки тому
батько
коміт
b07a3cf383
100 змінених файлів з 14447 додано та 32 видалено
  1. 8 0
      Assets/DynamicBone.meta
  2. 5 0
      Assets/DynamicBone/Demo.meta
  3. 940 0
      Assets/DynamicBone/Demo/Demo1.unity
  4. 4 0
      Assets/DynamicBone/Demo/Demo1.unity.meta
  5. 43 0
      Assets/DynamicBone/Demo/DynamicBoneDemo1.cs
  6. 8 0
      Assets/DynamicBone/Demo/DynamicBoneDemo1.cs.meta
  7. BIN
      Assets/DynamicBone/Demo/c1.fbx
  8. 421 0
      Assets/DynamicBone/Demo/c1.fbx.meta
  9. BIN
      Assets/DynamicBone/Demo/tail.FBX
  10. 98 0
      Assets/DynamicBone/Demo/tail.FBX.meta
  11. 160 0
      Assets/DynamicBone/ReadMe.txt
  12. 4 0
      Assets/DynamicBone/ReadMe.txt.meta
  13. 5 0
      Assets/DynamicBone/Scripts.meta
  14. 1137 0
      Assets/DynamicBone/Scripts/DynamicBone.cs
  15. 8 0
      Assets/DynamicBone/Scripts/DynamicBone.cs.meta
  16. 460 0
      Assets/DynamicBone/Scripts/DynamicBoneCollider.cs
  17. 8 0
      Assets/DynamicBone/Scripts/DynamicBoneCollider.cs.meta
  18. 45 0
      Assets/DynamicBone/Scripts/DynamicBoneColliderBase.cs
  19. 12 0
      Assets/DynamicBone/Scripts/DynamicBoneColliderBase.cs.meta
  20. 94 0
      Assets/DynamicBone/Scripts/DynamicBonePlaneCollider.cs
  21. 12 0
      Assets/DynamicBone/Scripts/DynamicBonePlaneCollider.cs.meta
  22. 3 3
      Assets/GameMain/Entities/Player/baseplayer.prefab
  23. 77 0
      Assets/GameMain/Meshes/Player/Arms.mat
  24. 8 0
      Assets/GameMain/Meshes/Player/Arms.mat.meta
  25. 78 0
      Assets/GameMain/Meshes/Player/Cornea.mat
  26. 8 0
      Assets/GameMain/Meshes/Player/Cornea.mat.meta
  27. 77 0
      Assets/GameMain/Meshes/Player/Ears.mat
  28. 8 0
      Assets/GameMain/Meshes/Player/Ears.mat.meta
  29. 78 0
      Assets/GameMain/Meshes/Player/EyeMoisture.mat
  30. 8 0
      Assets/GameMain/Meshes/Player/EyeMoisture.mat.meta
  31. 77 0
      Assets/GameMain/Meshes/Player/EyeSocket.mat
  32. 8 0
      Assets/GameMain/Meshes/Player/EyeSocket.mat.meta
  33. 77 0
      Assets/GameMain/Meshes/Player/Face.mat
  34. 8 0
      Assets/GameMain/Meshes/Player/Face.mat.meta
  35. 77 0
      Assets/GameMain/Meshes/Player/Fingernails.mat
  36. 8 0
      Assets/GameMain/Meshes/Player/Fingernails.mat.meta
  37. BIN
      Assets/GameMain/Meshes/Player/HOUZI.FBX
  38. 990 0
      Assets/GameMain/Meshes/Player/HOUZI.FBX.meta
  39. 77 0
      Assets/GameMain/Meshes/Player/Irises.mat
  40. 8 0
      Assets/GameMain/Meshes/Player/Irises.mat.meta
  41. 77 0
      Assets/GameMain/Meshes/Player/Legs.mat
  42. 8 0
      Assets/GameMain/Meshes/Player/Legs.mat.meta
  43. 77 0
      Assets/GameMain/Meshes/Player/Lips.mat
  44. 8 0
      Assets/GameMain/Meshes/Player/Lips.mat.meta
  45. 77 0
      Assets/GameMain/Meshes/Player/Mouth.mat
  46. 8 0
      Assets/GameMain/Meshes/Player/Mouth.mat.meta
  47. 77 0
      Assets/GameMain/Meshes/Player/Pupils.mat
  48. 8 0
      Assets/GameMain/Meshes/Player/Pupils.mat.meta
  49. 77 0
      Assets/GameMain/Meshes/Player/Sclera.mat
  50. 8 0
      Assets/GameMain/Meshes/Player/Sclera.mat.meta
  51. 77 0
      Assets/GameMain/Meshes/Player/Teeth.mat
  52. 8 0
      Assets/GameMain/Meshes/Player/Teeth.mat.meta
  53. 77 0
      Assets/GameMain/Meshes/Player/Toenails.mat
  54. 8 0
      Assets/GameMain/Meshes/Player/Toenails.mat.meta
  55. 77 0
      Assets/GameMain/Meshes/Player/Torso.mat
  56. 8 0
      Assets/GameMain/Meshes/Player/Torso.mat.meta
  57. 73 0
      Assets/GameMain/Meshes/Player/baseani.controller
  58. 8 0
      Assets/GameMain/Meshes/Player/baseani.controller.meta
  59. BIN
      Assets/GameMain/Meshes/Player/biaozhunnv.FBX
  60. 984 0
      Assets/GameMain/Meshes/Player/biaozhunnv.FBX.meta
  61. 77 0
      Assets/GameMain/Meshes/Player/cloth.mat
  62. 8 0
      Assets/GameMain/Meshes/Player/cloth.mat.meta
  63. 77 0
      Assets/GameMain/Meshes/Player/hair.mat
  64. 8 0
      Assets/GameMain/Meshes/Player/hair.mat.meta
  65. 62 1
      Assets/GameMain/Meshes/Player/kuaidiyuan_5.FBX.meta
  66. 77 0
      Assets/GameMain/Meshes/Player/skin.mat
  67. 8 0
      Assets/GameMain/Meshes/Player/skin.mat.meta
  68. BIN
      Assets/GameMain/Meshes/Player/女.FBX
  69. 1376 0
      Assets/GameMain/Meshes/Player/女.FBX.meta
  70. 1061 5
      Assets/GameMain/Scenes/CustomRole.unity
  71. 23 0
      Assets/GameMain/Scripts/Entity/EntityData/RoleCustomBoneData.cs
  72. 11 0
      Assets/GameMain/Scripts/Entity/EntityData/RoleCustomBoneData.cs.meta
  73. 49 0
      Assets/GameMain/Scripts/Event/CustomRoleBodyEventArgs.cs
  74. 11 0
      Assets/GameMain/Scripts/Event/CustomRoleBodyEventArgs.cs.meta
  75. 39 3
      Assets/GameMain/Scripts/Game/CustomRole/CustomManager.cs
  76. 53 0
      Assets/GameMain/Scripts/Game/CustomRole/CustomRoleController.cs
  77. 11 0
      Assets/GameMain/Scripts/Game/CustomRole/CustomRoleController.cs.meta
  78. 2 1
      Assets/GameMain/Scripts/Procedure/ProcedureCustomRole.cs
  79. 68 2
      Assets/GameMain/Scripts/UI/CustomRoleForm.cs
  80. 177 3
      Assets/GameMain/Scripts/Utility/CustomRoleUtility.cs
  81. 2024 14
      Assets/GameMain/UI/UIForms/CustomRoleForm.prefab
  82. 8 0
      Assets/HumanoidEditor.meta
  83. BIN
      Assets/HumanoidEditor/HE_Readme.pdf
  84. 9 0
      Assets/HumanoidEditor/HE_Readme.pdf.meta
  85. BIN
      Assets/HumanoidEditor/HumanoidEditor.dll
  86. 33 0
      Assets/HumanoidEditor/HumanoidEditor.dll.meta
  87. 9 0
      Assets/HumanoidEditor/HumanoidEditorGUI.meta
  88. BIN
      Assets/HumanoidEditor/HumanoidEditorGUI/HumanoidEditorLogo.png
  89. 119 0
      Assets/HumanoidEditor/HumanoidEditorGUI/HumanoidEditorLogo.png.meta
  90. 1889 0
      Assets/HumanoidEditor/HumanoidEditorGUI/PolybayEditorSkin.guiskin
  91. 8 0
      Assets/HumanoidEditor/HumanoidEditorGUI/PolybayEditorSkin.guiskin.meta
  92. BIN
      Assets/HumanoidEditor/HumanoidEditorGUI/save_Icon.png
  93. 57 0
      Assets/HumanoidEditor/HumanoidEditorGUI/save_Icon.png.meta
  94. BIN
      Assets/HumanoidEditor/HumanoidEditorGUI/save_active_Icon.png
  95. 57 0
      Assets/HumanoidEditor/HumanoidEditorGUI/save_active_Icon.png.meta
  96. BIN
      Assets/HumanoidEditor/HumanoidEditorGUI/xUp_Icon.png
  97. 76 0
      Assets/HumanoidEditor/HumanoidEditorGUI/xUp_Icon.png.meta
  98. BIN
      Assets/HumanoidEditor/HumanoidEditorGUI/yUp_Icon.png
  99. 68 0
      Assets/HumanoidEditor/HumanoidEditorGUI/yUp_Icon.png.meta
  100. 0 0
      Assets/HumanoidEditor/HumanoidEditorGUI/zUp_Icon.png

+ 8 - 0
Assets/DynamicBone.meta

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

+ 5 - 0
Assets/DynamicBone/Demo.meta

@@ -0,0 +1,5 @@
+fileFormatVersion: 2
+guid: 21a42390d25252341a66bc19a8addaea
+folderAsset: yes
+DefaultImporter:
+  userData: 

+ 940 - 0
Assets/DynamicBone/Demo/Demo1.unity

@@ -0,0 +1,940 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!29 &1
+OcclusionCullingSettings:
+  m_ObjectHideFlags: 0
+  serializedVersion: 2
+  m_OcclusionBakeSettings:
+    smallestOccluder: 5
+    smallestHole: 0.25
+    backfaceThreshold: 100
+  m_SceneGUID: 00000000000000000000000000000000
+  m_OcclusionCullingData: {fileID: 0}
+--- !u!104 &2
+RenderSettings:
+  m_ObjectHideFlags: 0
+  serializedVersion: 9
+  m_Fog: 0
+  m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
+  m_FogMode: 3
+  m_FogDensity: 0.01
+  m_LinearFogStart: 0
+  m_LinearFogEnd: 300
+  m_AmbientSkyColor: {r: 0.2, g: 0.2, b: 0.2, a: 1}
+  m_AmbientEquatorColor: {r: 0.2, g: 0.2, b: 0.2, a: 1}
+  m_AmbientGroundColor: {r: 0.2, g: 0.2, b: 0.2, a: 1}
+  m_AmbientIntensity: 1
+  m_AmbientMode: 3
+  m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
+  m_SkyboxMaterial: {fileID: 0}
+  m_HaloStrength: 0.5
+  m_FlareStrength: 1
+  m_FlareFadeSpeed: 3
+  m_HaloTexture: {fileID: 0}
+  m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
+  m_DefaultReflectionMode: 0
+  m_DefaultReflectionResolution: 128
+  m_ReflectionBounces: 1
+  m_ReflectionIntensity: 1
+  m_CustomReflection: {fileID: 0}
+  m_Sun: {fileID: 0}
+  m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
+  m_UseRadianceAmbientProbe: 0
+--- !u!157 &4
+LightmapSettings:
+  m_ObjectHideFlags: 0
+  serializedVersion: 11
+  m_GIWorkflowMode: 1
+  m_GISettings:
+    serializedVersion: 2
+    m_BounceScale: 1
+    m_IndirectOutputScale: 1
+    m_AlbedoBoost: 1
+    m_EnvironmentLightingMode: 0
+    m_EnableBakedLightmaps: 1
+    m_EnableRealtimeLightmaps: 0
+  m_LightmapEditorSettings:
+    serializedVersion: 12
+    m_Resolution: 1
+    m_BakeResolution: 50
+    m_AtlasSize: 1024
+    m_AO: 0
+    m_AOMaxDistance: 1
+    m_CompAOExponent: 0
+    m_CompAOExponentDirect: 0
+    m_ExtractAmbientOcclusion: 0
+    m_Padding: 2
+    m_LightmapParameters: {fileID: 0}
+    m_LightmapsBakeMode: 1
+    m_TextureCompression: 0
+    m_FinalGather: 0
+    m_FinalGatherFiltering: 1
+    m_FinalGatherRayCount: 1024
+    m_ReflectionCompression: 2
+    m_MixedBakeMode: 1
+    m_BakeBackend: 0
+    m_PVRSampling: 1
+    m_PVRDirectSampleCount: 32
+    m_PVRSampleCount: 512
+    m_PVRBounces: 2
+    m_PVREnvironmentSampleCount: 512
+    m_PVREnvironmentReferencePointCount: 2048
+    m_PVRFilteringMode: 0
+    m_PVRDenoiserTypeDirect: 0
+    m_PVRDenoiserTypeIndirect: 0
+    m_PVRDenoiserTypeAO: 0
+    m_PVRFilterTypeDirect: 0
+    m_PVRFilterTypeIndirect: 0
+    m_PVRFilterTypeAO: 0
+    m_PVREnvironmentMIS: 0
+    m_PVRCulling: 1
+    m_PVRFilteringGaussRadiusDirect: 1
+    m_PVRFilteringGaussRadiusIndirect: 5
+    m_PVRFilteringGaussRadiusAO: 2
+    m_PVRFilteringAtrousPositionSigmaDirect: 0.5
+    m_PVRFilteringAtrousPositionSigmaIndirect: 2
+    m_PVRFilteringAtrousPositionSigmaAO: 1
+    m_ExportTrainingData: 0
+    m_TrainingDataDestination: TrainingData
+    m_LightProbeSampleCountMultiplier: 4
+  m_LightingDataAsset: {fileID: 0}
+  m_UseShadowmask: 0
+--- !u!196 &5
+NavMeshSettings:
+  serializedVersion: 2
+  m_ObjectHideFlags: 0
+  m_BuildSettings:
+    serializedVersion: 2
+    agentTypeID: 0
+    agentRadius: 0.5
+    agentHeight: 2
+    agentSlope: 45
+    agentClimb: 0.4
+    ledgeDropHeight: 0
+    maxJumpAcrossDistance: 0
+    minRegionArea: 2
+    manualCellSize: 0
+    cellSize: 0.16666666
+    manualTileSize: 0
+    tileSize: 256
+    accuratePlacement: 0
+    debug:
+      m_Flags: 0
+  m_NavMeshData: {fileID: 0}
+--- !u!4 &90977926 stripped
+Transform:
+  m_CorrespondingSourceObject: {fileID: 400020, guid: 19015a5957bbaa745a61cba005220542,
+    type: 3}
+  m_PrefabInstance: {fileID: 1497342384}
+  m_PrefabAsset: {fileID: 0}
+--- !u!1 &94102368 stripped
+GameObject:
+  m_CorrespondingSourceObject: {fileID: 100072, guid: ba128457d0ea5e3439dbe4a53b9d1273,
+    type: 3}
+  m_PrefabInstance: {fileID: 560668931}
+  m_PrefabAsset: {fileID: 0}
+--- !u!114 &94102370
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 94102368}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: baedd976e12657241bf7ff2d1c685342, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Direction: 1
+  m_Center: {x: 0, y: -0.2, z: 0}
+  m_Bound: 0
+  m_Radius: 0.1
+  m_Height: 0.6
+  m_Radius2: 0
+--- !u!1 &143600401
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 100000, guid: 8a4fd2ea0aec44e449f6dc1271079085,
+    type: 3}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 143600402}
+  - component: {fileID: 143600404}
+  - component: {fileID: 143600406}
+  m_Layer: 0
+  m_Name: Player
+  m_TagString: Player
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &143600402
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 400000, guid: 8a4fd2ea0aec44e449f6dc1271079085,
+    type: 3}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 143600401}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children:
+  - {fileID: 1237224165}
+  m_Father: {fileID: 0}
+  m_RootOrder: 3
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &143600404
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 143600401}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: f9ac8d30c6a0d9642a11e5be4c440740, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Root: {fileID: 0}
+  m_Roots:
+  - {fileID: 1240282084}
+  - {fileID: 1610302986}
+  m_UpdateRate: 60
+  m_UpdateMode: 3
+  m_Damping: 0.2
+  m_DampingDistrib:
+    serializedVersion: 2
+    m_Curve: []
+    m_PreInfinity: 2
+    m_PostInfinity: 2
+    m_RotationOrder: 4
+  m_Elasticity: 0.1
+  m_ElasticityDistrib:
+    serializedVersion: 2
+    m_Curve: []
+    m_PreInfinity: 2
+    m_PostInfinity: 2
+    m_RotationOrder: 4
+  m_Stiffness: 0.8
+  m_StiffnessDistrib:
+    serializedVersion: 2
+    m_Curve: []
+    m_PreInfinity: 2
+    m_PostInfinity: 2
+    m_RotationOrder: 4
+  m_Inert: 0.5
+  m_InertDistrib:
+    serializedVersion: 2
+    m_Curve: []
+    m_PreInfinity: 2
+    m_PostInfinity: 2
+    m_RotationOrder: 4
+  m_Friction: 0
+  m_FrictionDistrib:
+    serializedVersion: 2
+    m_Curve: []
+    m_PreInfinity: 2
+    m_PostInfinity: 2
+    m_RotationOrder: 4
+  m_Radius: 0
+  m_RadiusDistrib:
+    serializedVersion: 2
+    m_Curve: []
+    m_PreInfinity: 2
+    m_PostInfinity: 2
+    m_RotationOrder: 4
+  m_EndLength: 0
+  m_EndOffset: {x: 0, y: -0.1, z: 0.3}
+  m_Gravity: {x: 0, y: 0, z: 0}
+  m_Force: {x: 0, y: 0, z: 0}
+  m_BlendWeight: 1
+  m_Colliders: []
+  m_Exclusions: []
+  m_FreezeAxis: 0
+  m_DistantDisable: 0
+  m_ReferenceObject: {fileID: 0}
+  m_DistanceToObject: 20
+  m_Multithread: 1
+--- !u!114 &143600406
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 143600401}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: f9ac8d30c6a0d9642a11e5be4c440740, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Root: {fileID: 90977926}
+  m_Roots: []
+  m_UpdateRate: 60
+  m_UpdateMode: 3
+  m_Damping: 0.2
+  m_DampingDistrib:
+    serializedVersion: 2
+    m_Curve: []
+    m_PreInfinity: 2
+    m_PostInfinity: 2
+    m_RotationOrder: 4
+  m_Elasticity: 0.05
+  m_ElasticityDistrib:
+    serializedVersion: 2
+    m_Curve: []
+    m_PreInfinity: 2
+    m_PostInfinity: 2
+    m_RotationOrder: 4
+  m_Stiffness: 0.7
+  m_StiffnessDistrib:
+    serializedVersion: 2
+    m_Curve: []
+    m_PreInfinity: 2
+    m_PostInfinity: 2
+    m_RotationOrder: 4
+  m_Inert: 0.5
+  m_InertDistrib:
+    serializedVersion: 2
+    m_Curve: []
+    m_PreInfinity: 2
+    m_PostInfinity: 2
+    m_RotationOrder: 4
+  m_Friction: 0
+  m_FrictionDistrib:
+    serializedVersion: 2
+    m_Curve: []
+    m_PreInfinity: 2
+    m_PostInfinity: 2
+    m_RotationOrder: 4
+  m_Radius: 0.15
+  m_RadiusDistrib:
+    serializedVersion: 2
+    m_Curve:
+    - serializedVersion: 3
+      time: 0.004166667
+      value: 1.0124999
+      inSlope: -0.762605
+      outSlope: -0.762605
+      tangentMode: 34
+      weightedMode: 0
+      inWeight: 0.33333334
+      outWeight: 0.33333334
+    - serializedVersion: 3
+      time: 0.99583334
+      value: 0.25624996
+      inSlope: -0.762605
+      outSlope: -0.762605
+      tangentMode: 34
+      weightedMode: 0
+      inWeight: 0.33333334
+      outWeight: 0.33333334
+    m_PreInfinity: 2
+    m_PostInfinity: 2
+    m_RotationOrder: 4
+  m_EndLength: 0
+  m_EndOffset: {x: 0, y: 0, z: 0}
+  m_Gravity: {x: 0, y: -0.002, z: 0}
+  m_Force: {x: 0, y: 0, z: 0}
+  m_BlendWeight: 1
+  m_Colliders:
+  - {fileID: 94102370}
+  - {fileID: 838898607}
+  m_Exclusions: []
+  m_FreezeAxis: 0
+  m_DistantDisable: 0
+  m_ReferenceObject: {fileID: 0}
+  m_DistanceToObject: 20
+  m_Multithread: 1
+--- !u!1 &249192883
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 249192888}
+  - component: {fileID: 249192887}
+  - component: {fileID: 249192885}
+  - component: {fileID: 249192884}
+  m_Layer: 0
+  m_Name: Main Camera
+  m_TagString: MainCamera
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!81 &249192884
+AudioListener:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 249192883}
+  m_Enabled: 1
+--- !u!124 &249192885
+Behaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 249192883}
+  m_Enabled: 1
+--- !u!20 &249192887
+Camera:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 249192883}
+  m_Enabled: 1
+  serializedVersion: 2
+  m_ClearFlags: 1
+  m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0.019607844}
+  m_projectionMatrixMode: 1
+  m_GateFitMode: 2
+  m_FOVAxisMode: 0
+  m_SensorSize: {x: 36, y: 24}
+  m_LensShift: {x: 0, y: 0}
+  m_FocalLength: 50
+  m_NormalizedViewPortRect:
+    serializedVersion: 2
+    x: 0
+    y: 0
+    width: 1
+    height: 1
+  near clip plane: 0.3
+  far clip plane: 1000
+  field of view: 60
+  orthographic: 0
+  orthographic size: 5
+  m_Depth: -1
+  m_CullingMask:
+    serializedVersion: 2
+    m_Bits: 4294967295
+  m_RenderingPath: -1
+  m_TargetTexture: {fileID: 0}
+  m_TargetDisplay: 0
+  m_TargetEye: 3
+  m_HDR: 0
+  m_AllowMSAA: 1
+  m_AllowDynamicResolution: 0
+  m_ForceIntoRT: 0
+  m_OcclusionCulling: 1
+  m_StereoConvergence: 10
+  m_StereoSeparation: 0.022
+--- !u!4 &249192888
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 249192883}
+  m_LocalRotation: {x: 0, y: 0.94676715, z: 0, w: 0.32191932}
+  m_LocalPosition: {x: -1.0038998, y: 1, z: 2.1806068}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children: []
+  m_Father: {fileID: 0}
+  m_RootOrder: 2
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1001 &560668931
+PrefabInstance:
+  m_ObjectHideFlags: 0
+  serializedVersion: 2
+  m_Modification:
+    m_TransformParent: {fileID: 143600402}
+    m_Modifications:
+    - target: {fileID: 400004, guid: ba128457d0ea5e3439dbe4a53b9d1273, type: 3}
+      propertyPath: m_LocalPosition.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 400004, guid: ba128457d0ea5e3439dbe4a53b9d1273, type: 3}
+      propertyPath: m_LocalPosition.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 400004, guid: ba128457d0ea5e3439dbe4a53b9d1273, type: 3}
+      propertyPath: m_LocalPosition.z
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 400004, guid: ba128457d0ea5e3439dbe4a53b9d1273, type: 3}
+      propertyPath: m_LocalRotation.w
+      value: 1
+      objectReference: {fileID: 0}
+    - target: {fileID: 400004, guid: ba128457d0ea5e3439dbe4a53b9d1273, type: 3}
+      propertyPath: m_LocalRotation.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 400004, guid: ba128457d0ea5e3439dbe4a53b9d1273, type: 3}
+      propertyPath: m_LocalRotation.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 400004, guid: ba128457d0ea5e3439dbe4a53b9d1273, type: 3}
+      propertyPath: m_LocalRotation.z
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 11100000, guid: ba128457d0ea5e3439dbe4a53b9d1273, type: 3}
+      propertyPath: m_Enabled
+      value: 1
+      objectReference: {fileID: 0}
+    m_RemovedComponents: []
+  m_SourcePrefab: {fileID: 100100000, guid: ba128457d0ea5e3439dbe4a53b9d1273, type: 3}
+--- !u!1 &838898605 stripped
+GameObject:
+  m_CorrespondingSourceObject: {fileID: 100140, guid: ba128457d0ea5e3439dbe4a53b9d1273,
+    type: 3}
+  m_PrefabInstance: {fileID: 560668931}
+  m_PrefabAsset: {fileID: 0}
+--- !u!114 &838898607
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 838898605}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: baedd976e12657241bf7ff2d1c685342, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Direction: 1
+  m_Center: {x: 0, y: -0.2, z: 0}
+  m_Bound: 0
+  m_Radius: 0.1
+  m_Height: 0.6
+  m_Radius2: 0
+--- !u!4 &1237224165 stripped
+Transform:
+  m_CorrespondingSourceObject: {fileID: 400004, guid: ba128457d0ea5e3439dbe4a53b9d1273,
+    type: 3}
+  m_PrefabInstance: {fileID: 560668931}
+  m_PrefabAsset: {fileID: 0}
+--- !u!4 &1240282084 stripped
+Transform:
+  m_CorrespondingSourceObject: {fileID: 400046, guid: ba128457d0ea5e3439dbe4a53b9d1273,
+    type: 3}
+  m_PrefabInstance: {fileID: 560668931}
+  m_PrefabAsset: {fileID: 0}
+--- !u!1 &1273446005
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1273446007}
+  - component: {fileID: 1273446006}
+  m_Layer: 0
+  m_Name: Directional light
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!108 &1273446006
+Light:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1273446005}
+  m_Enabled: 1
+  serializedVersion: 10
+  m_Type: 1
+  m_Shape: 0
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_Intensity: 0.6
+  m_Range: 10
+  m_SpotAngle: 30
+  m_InnerSpotAngle: 21.80208
+  m_CookieSize: 10
+  m_Shadows:
+    m_Type: 0
+    m_Resolution: -1
+    m_CustomResolution: -1
+    m_Strength: 1
+    m_Bias: 0.05
+    m_NormalBias: 0.4
+    m_NearPlane: 0.2
+    m_CullingMatrixOverride:
+      e00: 1
+      e01: 0
+      e02: 0
+      e03: 0
+      e10: 0
+      e11: 1
+      e12: 0
+      e13: 0
+      e20: 0
+      e21: 0
+      e22: 1
+      e23: 0
+      e30: 0
+      e31: 0
+      e32: 0
+      e33: 1
+    m_UseCullingMatrixOverride: 0
+  m_Cookie: {fileID: 0}
+  m_DrawHalo: 0
+  m_Flare: {fileID: 0}
+  m_RenderMode: 0
+  m_CullingMask:
+    serializedVersion: 2
+    m_Bits: 4294967295
+  m_RenderingLayerMask: 1
+  m_Lightmapping: 1
+  m_LightShadowCasterMode: 0
+  m_AreaSize: {x: 1, y: 1}
+  m_BounceIntensity: 1
+  m_ColorTemperature: 6570
+  m_UseColorTemperature: 0
+  m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
+  m_UseBoundingSphereOverride: 0
+  m_ShadowRadius: 0
+  m_ShadowAngle: 0
+--- !u!4 &1273446007
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1273446005}
+  m_LocalRotation: {x: -0.1614625, y: -0.9591772, z: 0.16742207, w: -0.16086924}
+  m_LocalPosition: {x: 0, y: 3, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children: []
+  m_Father: {fileID: 0}
+  m_RootOrder: 1
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1001 &1497342384
+PrefabInstance:
+  m_ObjectHideFlags: 0
+  serializedVersion: 2
+  m_Modification:
+    m_TransformParent: {fileID: 2086915445}
+    m_Modifications:
+    - target: {fileID: 400000, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.x
+      value: .000276203005
+      objectReference: {fileID: 0}
+    - target: {fileID: 400000, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.y
+      value: -.00660187891
+      objectReference: {fileID: 0}
+    - target: {fileID: 400000, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.z
+      value: -2.88577301e-10
+      objectReference: {fileID: 0}
+    - target: {fileID: 400000, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.w
+      value: .707106829
+      objectReference: {fileID: 0}
+    - target: {fileID: 400000, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.x
+      value: 2.33569484e-08
+      objectReference: {fileID: 0}
+    - target: {fileID: 400000, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.y
+      value: -2.33569484e-08
+      objectReference: {fileID: 0}
+    - target: {fileID: 400000, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.z
+      value: -.707106829
+      objectReference: {fileID: 0}
+    - target: {fileID: 400002, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.x
+      value: -.237109601
+      objectReference: {fileID: 0}
+    - target: {fileID: 400002, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.y
+      value: -3.86498868e-08
+      objectReference: {fileID: 0}
+    - target: {fileID: 400002, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.z
+      value: 1.03641966e-08
+      objectReference: {fileID: 0}
+    - target: {fileID: 400002, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.w
+      value: .994506896
+      objectReference: {fileID: 0}
+    - target: {fileID: 400002, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.x
+      value: -3.65551231e-14
+      objectReference: {fileID: 0}
+    - target: {fileID: 400002, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.y
+      value: 4.19035161e-15
+      objectReference: {fileID: 0}
+    - target: {fileID: 400002, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.z
+      value: .104671292
+      objectReference: {fileID: 0}
+    - target: {fileID: 400004, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.x
+      value: -.273902506
+      objectReference: {fileID: 0}
+    - target: {fileID: 400004, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.y
+      value: -4.7683713e-08
+      objectReference: {fileID: 0}
+    - target: {fileID: 400004, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.z
+      value: 1.19724319e-08
+      objectReference: {fileID: 0}
+    - target: {fileID: 400004, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.w
+      value: .996187627
+      objectReference: {fileID: 0}
+    - target: {fileID: 400004, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.x
+      value: -3.34032593e-14
+      objectReference: {fileID: 0}
+    - target: {fileID: 400004, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.y
+      value: 1.07828522e-14
+      objectReference: {fileID: 0}
+    - target: {fileID: 400004, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.z
+      value: .0872370228
+      objectReference: {fileID: 0}
+    - target: {fileID: 400006, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.x
+      value: -.233021542
+      objectReference: {fileID: 0}
+    - target: {fileID: 400006, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.y
+      value: -3.81469718e-08
+      objectReference: {fileID: 0}
+    - target: {fileID: 400006, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.z
+      value: 1.01855058e-08
+      objectReference: {fileID: 0}
+    - target: {fileID: 400006, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.w
+      value: .989816129
+      objectReference: {fileID: 0}
+    - target: {fileID: 400006, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.x
+      value: -2.77442271e-14
+      objectReference: {fileID: 0}
+    - target: {fileID: 400006, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.y
+      value: 1.74333594e-14
+      objectReference: {fileID: 0}
+    - target: {fileID: 400006, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.z
+      value: .142351687
+      objectReference: {fileID: 0}
+    - target: {fileID: 400008, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.x
+      value: -.163523868
+      objectReference: {fileID: 0}
+    - target: {fileID: 400008, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 400008, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.z
+      value: 7.1477233e-09
+      objectReference: {fileID: 0}
+    - target: {fileID: 400008, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.w
+      value: .996882558
+      objectReference: {fileID: 0}
+    - target: {fileID: 400008, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.x
+      value: -2.33242567e-14
+      objectReference: {fileID: 0}
+    - target: {fileID: 400008, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.y
+      value: 2.38246363e-14
+      objectReference: {fileID: 0}
+    - target: {fileID: 400008, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.z
+      value: .0788995922
+      objectReference: {fileID: 0}
+    - target: {fileID: 400010, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.x
+      value: -.269845426
+      objectReference: {fileID: 0}
+    - target: {fileID: 400010, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 400010, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.z
+      value: 1.20644108e-08
+      objectReference: {fileID: 0}
+    - target: {fileID: 400010, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.w
+      value: .997745156
+      objectReference: {fileID: 0}
+    - target: {fileID: 400010, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.x
+      value: -1.85772452e-14
+      objectReference: {fileID: 0}
+    - target: {fileID: 400010, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.y
+      value: 2.47326353e-14
+      objectReference: {fileID: 0}
+    - target: {fileID: 400010, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.z
+      value: .067116484
+      objectReference: {fileID: 0}
+    - target: {fileID: 400012, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.x
+      value: -.183964223
+      objectReference: {fileID: 0}
+    - target: {fileID: 400012, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.y
+      value: 3.81469718e-08
+      objectReference: {fileID: 0}
+    - target: {fileID: 400012, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.z
+      value: 8.04060107e-09
+      objectReference: {fileID: 0}
+    - target: {fileID: 400012, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.w
+      value: .984354258
+      objectReference: {fileID: 0}
+    - target: {fileID: 400012, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.x
+      value: -1.29496388e-14
+      objectReference: {fileID: 0}
+    - target: {fileID: 400012, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.y
+      value: 2.88675842e-14
+      objectReference: {fileID: 0}
+    - target: {fileID: 400012, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.z
+      value: .176200867
+      objectReference: {fileID: 0}
+    - target: {fileID: 400014, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.x
+      value: -.159488067
+      objectReference: {fileID: 0}
+    - target: {fileID: 400014, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 400014, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.z
+      value: 6.6989605e-09
+      objectReference: {fileID: 0}
+    - target: {fileID: 400014, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.x
+      value: -7.54951487e-15
+      objectReference: {fileID: 0}
+    - target: {fileID: 400014, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.y
+      value: 3.07254154e-14
+      objectReference: {fileID: 0}
+    - target: {fileID: 400014, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.z
+      value: 7.45057882e-09
+      objectReference: {fileID: 0}
+    - target: {fileID: 400016, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_RootOrder
+      value: 2
+      objectReference: {fileID: 0}
+    - target: {fileID: 400016, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalScale.x
+      value: .800000012
+      objectReference: {fileID: 0}
+    - target: {fileID: 400016, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalScale.y
+      value: .800000012
+      objectReference: {fileID: 0}
+    - target: {fileID: 400016, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalScale.z
+      value: .800000012
+      objectReference: {fileID: 0}
+    - target: {fileID: 400016, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 400016, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 400016, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalPosition.z
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 400016, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.w
+      value: 1.89660824e-07
+      objectReference: {fileID: 0}
+    - target: {fileID: 400016, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.x
+      value: 1.89660824e-07
+      objectReference: {fileID: 0}
+    - target: {fileID: 400016, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.y
+      value: .707106829
+      objectReference: {fileID: 0}
+    - target: {fileID: 400016, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+      propertyPath: m_LocalRotation.z
+      value: -.707106829
+      objectReference: {fileID: 0}
+    m_RemovedComponents: []
+  m_SourcePrefab: {fileID: 100100000, guid: 19015a5957bbaa745a61cba005220542, type: 3}
+--- !u!4 &1610302986 stripped
+Transform:
+  m_CorrespondingSourceObject: {fileID: 400114, guid: ba128457d0ea5e3439dbe4a53b9d1273,
+    type: 3}
+  m_PrefabInstance: {fileID: 560668931}
+  m_PrefabAsset: {fileID: 0}
+--- !u!1 &1749629814
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1749629816}
+  - component: {fileID: 1749629815}
+  m_Layer: 0
+  m_Name: Demo1
+  m_TagString: GameController
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!114 &1749629815
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1749629814}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 178320cedf292cb4f8d6c0b737b35953, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Player: {fileID: 143600401}
+--- !u!4 &1749629816
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1749629814}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0.4343313, y: -0.07096064, z: 0.36408234}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children: []
+  m_Father: {fileID: 0}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!4 &2086915445 stripped
+Transform:
+  m_CorrespondingSourceObject: {fileID: 400014, guid: ba128457d0ea5e3439dbe4a53b9d1273,
+    type: 3}
+  m_PrefabInstance: {fileID: 560668931}
+  m_PrefabAsset: {fileID: 0}

+ 4 - 0
Assets/DynamicBone/Demo/Demo1.unity.meta

@@ -0,0 +1,4 @@
+fileFormatVersion: 2
+guid: 902c84bf971339c459ce4b757e333a55
+DefaultImporter:
+  userData: 

+ 43 - 0
Assets/DynamicBone/Demo/DynamicBoneDemo1.cs

@@ -0,0 +1,43 @@
+using UnityEngine;
+
+public class DynamicBoneDemo1 : MonoBehaviour
+{
+    public GameObject m_Player;
+    float m_weight = 1;
+
+    void Update()
+    {
+        m_Player.transform.Rotate(new Vector3(0, Input.GetAxis("Horizontal") * Time.deltaTime * 200, 0));
+        m_Player.transform.Translate(transform.forward * Input.GetAxis("Vertical") * Time.deltaTime * 4);
+    }
+
+    void OnGUI()
+    {
+        float x = 50;
+        float y = 50;
+        float w1 = 100;
+        float w2 = 200;
+        float h = 24;
+
+        GUI.Label(new Rect(x, y, w2, h), "Press arrow key to move");
+        Animation a = m_Player.GetComponentInChildren<Animation>();
+        y += h;
+        a.enabled = GUI.Toggle(new Rect(x, y, w2, h), a.enabled, "Play animation");
+
+        y += h * 2;
+        DynamicBone[] dbs = m_Player.GetComponents<DynamicBone>();
+        GUI.Label(new Rect(x, y, w2, h), "Choose dynamic bone:");
+        y += h;
+        dbs[0].enabled = GUI.Toggle(new Rect(x, y, w1, h), dbs[0].enabled, "Breasts");
+        y += h;
+        dbs[1].enabled = GUI.Toggle(new Rect(x, y, w1, h), dbs[1].enabled, "Tail");
+
+        y += h;
+        GUI.Label(new Rect(x, y, w2, h), "Weight");
+        m_weight = GUI.HorizontalSlider(new Rect(x + 50, y + 5, w1, h), m_weight, 0, 1);
+        foreach (var db in dbs)
+        {
+            db.SetWeight(m_weight);
+        }
+    }
+}

+ 8 - 0
Assets/DynamicBone/Demo/DynamicBoneDemo1.cs.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 178320cedf292cb4f8d6c0b737b35953
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 

BIN
Assets/DynamicBone/Demo/c1.fbx


+ 421 - 0
Assets/DynamicBone/Demo/c1.fbx.meta

@@ -0,0 +1,421 @@
+fileFormatVersion: 2
+guid: ba128457d0ea5e3439dbe4a53b9d1273
+ModelImporter:
+  serializedVersion: 16
+  fileIDToRecycleName:
+    100000: abdomen
+    100002: abdomen2
+    100004: //RootNode
+    100006: chest
+    100008: Genesis2Female
+    100010: Genesis2Female.Shape
+    100012: head
+    100014: hip
+    100016: lBigToe
+    100018: lCarpal1
+    100020: lCarpal2
+    100022: lCollar
+    100024: lEye
+    100026: lFoot
+    100028: lForeArm
+    100030: lHand
+    100032: lIndex1
+    100034: lIndex2
+    100036: lIndex3
+    100038: lMid1
+    100040: lMid2
+    100042: lMid3
+    100044: lowerJaw
+    100046: lPectoral
+    100048: lPinky1
+    100050: lPinky2
+    100052: lPinky3
+    100054: lRing1
+    100056: lRing2
+    100058: lRing3
+    100060: lShin
+    100062: lShldr
+    100064: lSmallToe1
+    100066: lSmallToe2
+    100068: lSmallToe3
+    100070: lSmallToe4
+    100072: lThigh
+    100074: lThumb1
+    100076: lThumb2
+    100078: lThumb3
+    100080: lToe
+    100082: neck
+    100084: pelvis
+    100086: rBigToe
+    100088: rCarpal1
+    100090: rCarpal2
+    100092: rCollar
+    100094: rEye
+    100096: rFoot
+    100098: rForeArm
+    100100: rHand
+    100102: rIndex1
+    100104: rIndex2
+    100106: rIndex3
+    100108: rMid1
+    100110: rMid2
+    100112: rMid3
+    100114: rPectoral
+    100116: rPinky1
+    100118: rPinky2
+    100120: rPinky3
+    100122: rRing1
+    100124: rRing2
+    100126: rRing3
+    100128: rShin
+    100130: rShldr
+    100132: rSmallToe1
+    100134: rSmallToe2
+    100136: rSmallToe3
+    100138: rSmallToe4
+    100140: rThigh
+    100142: rThumb1
+    100144: rThumb2
+    100146: rThumb3
+    100148: rToe
+    100150: tongue01
+    100152: tongue02
+    100154: tongue03
+    100156: tongue04
+    100158: tongue05
+    100160: tongueBase
+    100162: tongueTip
+    100164: upperJaw
+    400000: abdomen
+    400002: abdomen2
+    400004: //RootNode
+    400006: chest
+    400008: Genesis2Female
+    400010: Genesis2Female.Shape
+    400012: head
+    400014: hip
+    400016: lBigToe
+    400018: lCarpal1
+    400020: lCarpal2
+    400022: lCollar
+    400024: lEye
+    400026: lFoot
+    400028: lForeArm
+    400030: lHand
+    400032: lIndex1
+    400034: lIndex2
+    400036: lIndex3
+    400038: lMid1
+    400040: lMid2
+    400042: lMid3
+    400044: lowerJaw
+    400046: lPectoral
+    400048: lPinky1
+    400050: lPinky2
+    400052: lPinky3
+    400054: lRing1
+    400056: lRing2
+    400058: lRing3
+    400060: lShin
+    400062: lShldr
+    400064: lSmallToe1
+    400066: lSmallToe2
+    400068: lSmallToe3
+    400070: lSmallToe4
+    400072: lThigh
+    400074: lThumb1
+    400076: lThumb2
+    400078: lThumb3
+    400080: lToe
+    400082: neck
+    400084: pelvis
+    400086: rBigToe
+    400088: rCarpal1
+    400090: rCarpal2
+    400092: rCollar
+    400094: rEye
+    400096: rFoot
+    400098: rForeArm
+    400100: rHand
+    400102: rIndex1
+    400104: rIndex2
+    400106: rIndex3
+    400108: rMid1
+    400110: rMid2
+    400112: rMid3
+    400114: rPectoral
+    400116: rPinky1
+    400118: rPinky2
+    400120: rPinky3
+    400122: rRing1
+    400124: rRing2
+    400126: rRing3
+    400128: rShin
+    400130: rShldr
+    400132: rSmallToe1
+    400134: rSmallToe2
+    400136: rSmallToe3
+    400138: rSmallToe4
+    400140: rThigh
+    400142: rThumb1
+    400144: rThumb2
+    400146: rThumb3
+    400148: rToe
+    400150: tongue01
+    400152: tongue02
+    400154: tongue03
+    400156: tongue04
+    400158: tongue05
+    400160: tongueBase
+    400162: tongueTip
+    400164: upperJaw
+    4300000: Genesis2Female.Shape
+    7400000: Animation
+    9500000: //RootNode
+    11100000: //RootNode
+    13700000: Genesis2Female.Shape
+  materials:
+    importMaterials: 0
+    materialName: 0
+    materialSearch: 1
+  animations:
+    legacyGenerateAnimations: 4
+    bakeSimulation: 0
+    optimizeGameObjects: 0
+    animationCompression: 2
+    animationRotationError: .5
+    animationPositionError: .5
+    animationScaleError: .5
+    animationWrapMode: 0
+    extraExposedTransformPaths: []
+    clipAnimations:
+    - serializedVersion: 16
+      name: Animation
+      takeName: Animation
+      firstFrame: 0
+      lastFrame: 206
+      wrapMode: 2
+      orientationOffsetY: 0
+      level: 0
+      cycleOffset: 0
+      loop: 0
+      loopTime: 0
+      loopBlend: 0
+      loopBlendOrientation: 0
+      loopBlendPositionY: 0
+      loopBlendPositionXZ: 0
+      keepOriginalOrientation: 0
+      keepOriginalPositionY: 1
+      keepOriginalPositionXZ: 0
+      heightFromFeet: 0
+      mirror: 0
+      bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
+      curves: []
+      events: []
+      transformMask:
+      - path: 
+        weight: 1
+      - path: Genesis2Female
+        weight: 1
+      - path: Genesis2Female/Genesis2Female.Shape
+        weight: 1
+      - path: Genesis2Female/hip
+        weight: 1
+      - path: Genesis2Female/hip/abdomen
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm/lHand
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm/lHand/lCarpal1
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm/lHand/lCarpal1/lIndex1
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm/lHand/lCarpal1/lIndex1/lIndex2
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm/lHand/lCarpal1/lIndex1/lIndex2/lIndex3
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm/lHand/lCarpal1/lMid1
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm/lHand/lCarpal1/lMid1/lMid2
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm/lHand/lCarpal1/lMid1/lMid2/lMid3
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm/lHand/lCarpal2
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm/lHand/lCarpal2/lPinky1
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm/lHand/lCarpal2/lPinky1/lPinky2
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm/lHand/lCarpal2/lPinky1/lPinky2/lPinky3
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm/lHand/lCarpal2/lRing1
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm/lHand/lCarpal2/lRing1/lRing2
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm/lHand/lCarpal2/lRing1/lRing2/lRing3
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm/lHand/lThumb1
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm/lHand/lThumb1/lThumb2
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lCollar/lShldr/lForeArm/lHand/lThumb1/lThumb2/lThumb3
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/lPectoral
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/neck
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/neck/head
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/neck/head/lEye
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/neck/head/lowerJaw
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/neck/head/lowerJaw/tongueBase
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/neck/head/lowerJaw/tongueBase/tongue01
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/neck/head/lowerJaw/tongueBase/tongue01/tongue02
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/neck/head/lowerJaw/tongueBase/tongue01/tongue02/tongue03
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/neck/head/lowerJaw/tongueBase/tongue01/tongue02/tongue03/tongue04
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/neck/head/lowerJaw/tongueBase/tongue01/tongue02/tongue03/tongue04/tongue05
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/neck/head/lowerJaw/tongueBase/tongue01/tongue02/tongue03/tongue04/tongue05/tongueTip
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/neck/head/rEye
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/neck/head/upperJaw
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand/rCarpal1
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand/rCarpal1/rIndex1
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand/rCarpal1/rIndex1/rIndex2
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand/rCarpal1/rIndex1/rIndex2/rIndex3
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand/rCarpal1/rMid1
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand/rCarpal1/rMid1/rMid2
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand/rCarpal1/rMid1/rMid2/rMid3
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand/rCarpal2
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand/rCarpal2/rPinky1
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand/rCarpal2/rPinky1/rPinky2
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand/rCarpal2/rPinky1/rPinky2/rPinky3
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand/rCarpal2/rRing1
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand/rCarpal2/rRing1/rRing2
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand/rCarpal2/rRing1/rRing2/rRing3
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand/rThumb1
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand/rThumb1/rThumb2
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand/rThumb1/rThumb2/rThumb3
+        weight: 1
+      - path: Genesis2Female/hip/abdomen/abdomen2/chest/rPectoral
+        weight: 1
+      - path: Genesis2Female/hip/pelvis
+        weight: 1
+      - path: Genesis2Female/hip/pelvis/lThigh
+        weight: 1
+      - path: Genesis2Female/hip/pelvis/lThigh/lShin
+        weight: 1
+      - path: Genesis2Female/hip/pelvis/lThigh/lShin/lFoot
+        weight: 1
+      - path: Genesis2Female/hip/pelvis/lThigh/lShin/lFoot/lToe
+        weight: 1
+      - path: Genesis2Female/hip/pelvis/lThigh/lShin/lFoot/lToe/lBigToe
+        weight: 1
+      - path: Genesis2Female/hip/pelvis/lThigh/lShin/lFoot/lToe/lSmallToe1
+        weight: 1
+      - path: Genesis2Female/hip/pelvis/lThigh/lShin/lFoot/lToe/lSmallToe2
+        weight: 1
+      - path: Genesis2Female/hip/pelvis/lThigh/lShin/lFoot/lToe/lSmallToe3
+        weight: 1
+      - path: Genesis2Female/hip/pelvis/lThigh/lShin/lFoot/lToe/lSmallToe4
+        weight: 1
+      - path: Genesis2Female/hip/pelvis/rThigh
+        weight: 1
+      - path: Genesis2Female/hip/pelvis/rThigh/rShin
+        weight: 1
+      - path: Genesis2Female/hip/pelvis/rThigh/rShin/rFoot
+        weight: 1
+      - path: Genesis2Female/hip/pelvis/rThigh/rShin/rFoot/rToe
+        weight: 1
+      - path: Genesis2Female/hip/pelvis/rThigh/rShin/rFoot/rToe/rBigToe
+        weight: 1
+      - path: Genesis2Female/hip/pelvis/rThigh/rShin/rFoot/rToe/rSmallToe1
+        weight: 1
+      - path: Genesis2Female/hip/pelvis/rThigh/rShin/rFoot/rToe/rSmallToe2
+        weight: 1
+      - path: Genesis2Female/hip/pelvis/rThigh/rShin/rFoot/rToe/rSmallToe3
+        weight: 1
+      - path: Genesis2Female/hip/pelvis/rThigh/rShin/rFoot/rToe/rSmallToe4
+        weight: 1
+      maskType: 0
+      maskSource: {instanceID: 0}
+    isReadable: 0
+  meshes:
+    lODScreenPercentages: []
+    globalScale: .00999999978
+    meshCompression: 0
+    addColliders: 0
+    importBlendShapes: 0
+    swapUVChannels: 0
+    generateSecondaryUV: 0
+    useFileUnits: 1
+    optimizeMeshForGPU: 1
+    weldVertices: 1
+    secondaryUVAngleDistortion: 8
+    secondaryUVAreaDistortion: 15.000001
+    secondaryUVHardAngle: 88
+    secondaryUVPackMargin: 4
+  tangentSpace:
+    normalSmoothAngle: 60
+    splitTangentsAcrossUV: 1
+    normalImportMode: 0
+    tangentImportMode: 2
+  importAnimation: 1
+  copyAvatar: 0
+  humanDescription:
+    human: []
+    skeleton: []
+    armTwist: .5
+    foreArmTwist: .5
+    upperLegTwist: .5
+    legTwist: .5
+    armStretch: .0500000007
+    legStretch: .0500000007
+    feetSpacing: 0
+    rootMotionBoneName: 
+  lastHumanDescriptionAvatarSource: {instanceID: 0}
+  animationType: 1
+  additionalBone: 0
+  userData: 

BIN
Assets/DynamicBone/Demo/tail.FBX


+ 98 - 0
Assets/DynamicBone/Demo/tail.FBX.meta

@@ -0,0 +1,98 @@
+fileFormatVersion: 2
+guid: 19015a5957bbaa745a61cba005220542
+ModelImporter:
+  serializedVersion: 16
+  fileIDToRecycleName:
+    100000: Bone01
+    100002: Bone02
+    100004: Bone03
+    100006: Bone04
+    100008: Bone05
+    100010: Bone06
+    100012: Bone07
+    100014: Bone08
+    100016: //RootNode
+    100018: tail
+    100020: tail1
+    100022: tail2
+    100024: tail3
+    100026: tail4
+    100028: tail5
+    100030: tail6
+    100032: tail7
+    100034: tail8
+    400000: Bone01
+    400002: Bone02
+    400004: Bone03
+    400006: Bone04
+    400008: Bone05
+    400010: Bone06
+    400012: Bone07
+    400014: Bone08
+    400016: //RootNode
+    400018: tail
+    400020: tail1
+    400022: tail2
+    400024: tail3
+    400026: tail4
+    400028: tail5
+    400030: tail6
+    400032: tail7
+    400034: tail8
+    4300000: tail
+    9500000: //RootNode
+    11100000: //RootNode
+    13700000: tail
+  materials:
+    importMaterials: 0
+    materialName: 0
+    materialSearch: 1
+  animations:
+    legacyGenerateAnimations: 4
+    bakeSimulation: 0
+    optimizeGameObjects: 0
+    animationCompression: 1
+    animationRotationError: .5
+    animationPositionError: .5
+    animationScaleError: .5
+    animationWrapMode: 0
+    extraExposedTransformPaths: []
+    clipAnimations: []
+    isReadable: 0
+  meshes:
+    lODScreenPercentages: []
+    globalScale: .00999999978
+    meshCompression: 0
+    addColliders: 0
+    importBlendShapes: 0
+    swapUVChannels: 0
+    generateSecondaryUV: 0
+    useFileUnits: 1
+    optimizeMeshForGPU: 1
+    weldVertices: 1
+    secondaryUVAngleDistortion: 8
+    secondaryUVAreaDistortion: 15.000001
+    secondaryUVHardAngle: 88
+    secondaryUVPackMargin: 4
+  tangentSpace:
+    normalSmoothAngle: 60
+    splitTangentsAcrossUV: 1
+    normalImportMode: 0
+    tangentImportMode: 2
+  importAnimation: 0
+  copyAvatar: 0
+  humanDescription:
+    human: []
+    skeleton: []
+    armTwist: .5
+    foreArmTwist: .5
+    upperLegTwist: .5
+    legTwist: .5
+    armStretch: .0500000007
+    legStretch: .0500000007
+    feetSpacing: 0
+    rootMotionBoneName: 
+  lastHumanDescriptionAvatarSource: {instanceID: 0}
+  animationType: 1
+  additionalBone: 0
+  userData: 

+ 160 - 0
Assets/DynamicBone/ReadMe.txt

@@ -0,0 +1,160 @@
+Dynamic Bone apply physics to character's bones or joints.
+With simple setup, your character's hair, cloth, breasts or any part will move realistically.
+
+Open Assets/DynamicBone/Demo/Demo1 to see how it works.
+If you have any questions or suggestions, please contact willhongcom@gmail.com.
+
+
+-------------------------------------------------------------------------
+Basic setup:
+
+1. Prepare a properly setup character, both Mecanim and legacy rigs are supported.
+2. Select the game object you want to apply Dynamic Bone.
+3. In the component menu, select Dynamic Bone -> Dynamic Bone.
+4. In the inspector, select root object.
+5. Adjust dynamic bone parameters (see detail descriptions in the following section).
+
+
+You can add collider objects if required:
+
+1. Select game object the collider will attached.
+2. In the component menu, select Dynamic Bone -> Dynamic Bone Collider.
+3. Adjust position and size of the collider.
+4. In Dynamic Bone component, increase size of colliders and append corresponding object.
+
+
+-------------------------------------------------------------------------
+Dynamic Bone component description:
+
+- Root
+  The root of the transform hierarchy to apply physics.
+
+- Roots
+  Multiple roots are allowed. They all share the same parameters.
+
+- Update Rate
+  Internal physics simulation rate, measures in frames per seconds.
+
+- Update Mode
+  Normal: Update physics in fixed timestamp as specified rate.
+  AnimatePhysics: Updates during the physic loop in order to synchronized with the physics engine.
+  UnscaledTime: Updates independently of Time.timeScale.
+  Default: Update physics every frame instead of specified rate, recommended.
+
+- Damping
+  How much the bones slowed down.
+
+- Elasticity
+  How much the force applied to return each bone to original orientation.
+
+- Stiffness
+  How much bone's original orientation are preserved.
+
+- Inert
+  How much character's position change is ignored in physics simulation.
+
+- Friction
+  How much the bones slowed down when collide.
+
+- Radius
+  Each bone can be a sphere to collide with colliders. Radius describe sphere's size.
+
+- Damping Distrib, Elasticity Distrib, Stiffness Distrib, Inert Distrib, Radius Distrib
+  How parameters change over hierarchy chain. Curve values are multiplied to corresponding parameters. 
+
+- End Length
+  If End Length is not zero, an extra bone is generated at the end of transform hierarchy, 
+  length is multiplied by last two bone's distance.
+
+- End Offset
+  If End Offset is not zero, an extra bone is generated at the end of transform hierarchy, 
+  offset is in character's local space.
+
+- Gravity
+  The force apply to bones, in world space. Partial force apply to character's initial pose is cancelled out.
+
+- Force
+  The force apply to bones, in world space.
+
+- Blend Weight
+  Control how physics blends with existing animation.
+
+- Colliders
+  Collider objects interact with the bones.
+
+- Exclusions
+  Bones exclude from physics simulation.
+     
+- Freeze Axis
+  Constrain bones to move on specified plane.
+
+- Distant Disable, Reference Object, Distance To Object
+  Disable physics simulation automatically if character is far from camera or player.
+  If there is no reference object, default main camera is used.
+
+Dynamic Bone Collider component description:
+
+- Center
+  The center of the sphere or capsule, in the object's local space.
+
+- Radius
+  The radius of the sphere or capsule, will be scaled by the transform's scale.
+
+- Height
+  The height of the capsule, including two half-spheres, will be scaled by the transform's scale.
+
+- Radius 2
+  The other radius of the capsule. 0 means same as Radius.
+
+- Direction
+  The axis of the capsule's height.
+
+- Bound
+  Constrain bones to outside bound or inside bound.
+
+-------------------------------------------------------------------------
+Dynamic Bone script reference:
+
+- public void SetWeight(float w);
+  Control how physics blend with existing animation.
+
+- public void UpdateParameters();
+  Update parameters at runtime, call this funtion after modifing parameters.
+
+- public bool m_Multithread
+  Enable/disable multithread to improve physics simulation performace. Default is true.
+-------------------------------------------------------------------------
+Version History
+
+1.0.1 Initial release.
+1.0.2 Improve inspector UI.
+1.0.3 Fix inert unstable when enabled / disabled.
+1.1.0 Use curve to setup parameters over hierarchy chain.
+      Collider can configured to constrain bones inside bound.
+1.1.1 Add exclusion setting.
+1.1.2 Deal with negative scale problem.
+1.1.3 Fix bug with bones contain scale.
+1.1.4 Add freeze axis.
+      Fix bug when added via script.
+1.1.5 Add distant disable.
+      Reduce GC alloc.
+1.1.6 Fix capsule collider bug.
+1.1.7 Unity 5 support.
+1.1.8 Fix problems caused by negative scale.
+1.1.9 Improve detecting negative scale.
+      Fix bug if collider is set as inside.
+      Add UpdateMode setting.
+1.1.10 Fix problems caused by negative scale after Unity 5.4.
+1.2.0 Add tool tips.
+      Add plane collider.
+      Add function to update parameters at runtime.
+1.2.1 Add friction parameter.
+      Update UNITY_5 to compatible with newer version.
+1.2.2 Add "Default" update mode, fix some jitter issue.
+1.3.0 Add "Roots" parameter to setup multiple root transforms.
+      Add "Blend Weight" parameter to control how physics blends with existing animation.
+      Collider add enable/disable check box.
+      Collider add "Radius 2" to setup capsules of two radii.      
+      Use multithread to improve physics simulation performance.
+      Parameters can be animated with Unity animation system.
+1.3.1 Fix "Gravity" bug in version 1.3.0

+ 4 - 0
Assets/DynamicBone/ReadMe.txt.meta

@@ -0,0 +1,4 @@
+fileFormatVersion: 2
+guid: bdbe6feeda2a62b45ad9a4e311031478
+TextScriptImporter:
+  userData: 

+ 5 - 0
Assets/DynamicBone/Scripts.meta

@@ -0,0 +1,5 @@
+fileFormatVersion: 2
+guid: 993edbffbda2d3e4abd24f1bf074c5f2
+folderAsset: yes
+DefaultImporter:
+  userData: 

Різницю між файлами не показано, бо вона завелика
+ 1137 - 0
Assets/DynamicBone/Scripts/DynamicBone.cs


+ 8 - 0
Assets/DynamicBone/Scripts/DynamicBone.cs.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: f9ac8d30c6a0d9642a11e5be4c440740
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 

+ 460 - 0
Assets/DynamicBone/Scripts/DynamicBoneCollider.cs

@@ -0,0 +1,460 @@
+using UnityEngine;
+
+[AddComponentMenu("Dynamic Bone/Dynamic Bone Collider")]
+public class DynamicBoneCollider : DynamicBoneColliderBase
+{
+#if UNITY_5_3_OR_NEWER
+    [Tooltip("The radius of the sphere or capsule.")]
+#endif	
+    public float m_Radius = 0.5f;
+
+#if UNITY_5_3_OR_NEWER
+    [Tooltip("The height of the capsule.")]
+#endif		
+    public float m_Height = 0;
+
+#if UNITY_5_3_OR_NEWER
+    [Tooltip("The other radius of the capsule.")]
+#endif	
+    public float m_Radius2 = 0;
+
+    // prepare data
+    float m_ScaledRadius;
+    float m_ScaledRadius2;
+    Vector3 m_C0;
+    Vector3 m_C1;
+    float m_C01Distance;
+    int m_CollideType;
+
+    void OnValidate()
+    {
+        m_Radius = Mathf.Max(m_Radius, 0);
+        m_Height = Mathf.Max(m_Height, 0);
+        m_Radius2 = Mathf.Max(m_Radius2, 0);
+    }
+
+    public override void Prepare()
+    {
+        float scale = Mathf.Abs(transform.lossyScale.x);
+        float halfHeight = m_Height * 0.5f;
+
+        if (m_Radius2 <= 0 || Mathf.Abs(m_Radius - m_Radius2) < 0.01f)
+        {
+            m_ScaledRadius = m_Radius * scale;
+
+            float h = halfHeight - m_Radius;
+            if (h <= 0)
+            {
+                m_C0 = transform.TransformPoint(m_Center);
+
+                if (m_Bound == Bound.Outside)
+                {
+                    m_CollideType = 0;
+                }
+                else
+                {
+                    m_CollideType = 1;
+                }
+            }
+            else
+            {
+                Vector3 c0 = m_Center;
+                Vector3 c1 = m_Center;
+
+                switch (m_Direction)
+                {
+                    case Direction.X:
+                        c0.x += h;
+                        c1.x -= h;
+                        break;
+                    case Direction.Y:
+                        c0.y += h;
+                        c1.y -= h;
+                        break;
+                    case Direction.Z:
+                        c0.z += h;
+                        c1.z -= h;
+                        break;
+                }
+
+                m_C0 = transform.TransformPoint(c0);
+                m_C1 = transform.TransformPoint(c1);
+                m_C01Distance = (m_C1 - m_C0).magnitude;
+
+                if (m_Bound == Bound.Outside)
+                {
+                    m_CollideType = 2;
+                }
+                else
+                {
+                    m_CollideType = 3;
+                }
+            }
+        }
+        else
+        {
+            float r = Mathf.Max(m_Radius, m_Radius2);
+            if (halfHeight - r <= 0)
+            {
+                m_ScaledRadius = r * scale;
+                m_C0 = transform.TransformPoint(m_Center);
+
+                if (m_Bound == Bound.Outside)
+                {
+                    m_CollideType = 0;
+                }
+                else
+                {
+                    m_CollideType = 1;
+                }
+            }
+            else
+            {
+                m_ScaledRadius = m_Radius * scale;
+                m_ScaledRadius2 = m_Radius2 * scale;
+
+                float h0 = halfHeight - m_Radius;
+                float h1 = halfHeight - m_Radius2;
+                Vector3 c0 = m_Center;
+                Vector3 c1 = m_Center;
+
+                switch (m_Direction)
+                {
+                    case Direction.X:
+                        c0.x += h0;
+                        c1.x -= h1;
+                        break;
+                    case Direction.Y:
+                        c0.y += h0;
+                        c1.y -= h1;
+                        break;
+                    case Direction.Z:
+                        c0.z += h0;
+                        c1.z -= h1;
+                        break;
+                }
+
+                m_C0 = transform.TransformPoint(c0);
+                m_C1 = transform.TransformPoint(c1);
+                m_C01Distance = (m_C1 - m_C0).magnitude;
+
+                if (m_Bound == Bound.Outside)
+                {
+                    m_CollideType = 4;
+                }
+                else
+                {
+                    m_CollideType = 5;
+                }
+            }
+        }
+    }
+
+    public override bool Collide(ref Vector3 particlePosition, float particleRadius)
+    {
+        switch (m_CollideType)
+        {
+            case 0:
+                return OutsideSphere(ref particlePosition, particleRadius, m_C0, m_ScaledRadius);
+            case 1:
+                return InsideSphere(ref particlePosition, particleRadius, m_C0, m_ScaledRadius);
+            case 2:
+                return OutsideCapsule(ref particlePosition, particleRadius, m_C0, m_C1, m_ScaledRadius, m_C01Distance);
+            case 3:
+                return InsideCapsule(ref particlePosition, particleRadius, m_C0, m_C1, m_ScaledRadius, m_C01Distance);
+            case 4:
+                return OutsideCapsule2(ref particlePosition, particleRadius, m_C0, m_C1, m_ScaledRadius, m_ScaledRadius2, m_C01Distance);
+            case 5:
+                return InsideCapsule2(ref particlePosition, particleRadius, m_C0, m_C1, m_ScaledRadius, m_ScaledRadius2, m_C01Distance);
+        }
+        return false;
+    }
+
+    static bool OutsideSphere(ref Vector3 particlePosition, float particleRadius, Vector3 sphereCenter, float sphereRadius)
+    {
+        float r = sphereRadius + particleRadius;
+        float r2 = r * r;
+        Vector3 d = particlePosition - sphereCenter;
+        float dlen2 = d.sqrMagnitude;
+
+        // if is inside sphere, project onto sphere surface
+        if (dlen2 > 0 && dlen2 < r2)
+        {
+            float dlen = Mathf.Sqrt(dlen2);
+            particlePosition = sphereCenter + d * (r / dlen);
+            return true;
+        }
+        return false;
+    }
+
+    static bool InsideSphere(ref Vector3 particlePosition, float particleRadius, Vector3 sphereCenter, float sphereRadius)
+    {
+        float r = sphereRadius - particleRadius;
+        float r2 = r * r;
+        Vector3 d = particlePosition - sphereCenter;
+        float dlen2 = d.sqrMagnitude;
+
+        // if is outside sphere, project onto sphere surface
+        if (dlen2 > r2)
+        {
+            float dlen = Mathf.Sqrt(dlen2);
+            particlePosition = sphereCenter + d * (r / dlen);
+            return true;
+        }
+        return false;
+    }
+
+    static bool OutsideCapsule(ref Vector3 particlePosition, float particleRadius, Vector3 capsuleP0, Vector3 capsuleP1, float capsuleRadius, float dirlen)
+    {
+        float r = capsuleRadius + particleRadius;
+        float r2 = r * r;
+        Vector3 dir = capsuleP1 - capsuleP0;
+        Vector3 d = particlePosition - capsuleP0;
+        float t = Vector3.Dot(d, dir);
+
+        if (t <= 0)
+        {
+            // check sphere1
+            float dlen2 = d.sqrMagnitude;
+            if (dlen2 > 0 && dlen2 < r2)
+            {
+                float dlen = Mathf.Sqrt(dlen2);
+                particlePosition = capsuleP0 + d * (r / dlen);
+                return true;
+            }
+        }
+        else
+        {
+            float dirlen2 = dirlen * dirlen;
+            if (t >= dirlen2)
+            {
+                // check sphere2
+                d = particlePosition - capsuleP1;
+                float dlen2 = d.sqrMagnitude;
+                if (dlen2 > 0 && dlen2 < r2)
+                {
+                    float dlen = Mathf.Sqrt(dlen2);
+                    particlePosition = capsuleP1 + d * (r / dlen);
+                    return true;
+                }
+            }
+            else
+            {
+                // check cylinder
+                Vector3 q = d - dir * (t / dirlen2);
+                float qlen2 = q.sqrMagnitude;
+                if (qlen2 > 0 && qlen2 < r2)
+                {
+                    float qlen = Mathf.Sqrt(qlen2);
+                    particlePosition += q * ((r - qlen) / qlen);
+                    return true;
+                }
+            }
+        }
+        return false;
+    }
+
+    static bool InsideCapsule(ref Vector3 particlePosition, float particleRadius, Vector3 capsuleP0, Vector3 capsuleP1, float capsuleRadius, float dirlen)
+    {
+        float r = capsuleRadius - particleRadius;
+        float r2 = r * r;
+        Vector3 dir = capsuleP1 - capsuleP0;
+        Vector3 d = particlePosition - capsuleP0;
+        float t = Vector3.Dot(d, dir);
+
+        if (t <= 0)
+        {
+            // check sphere1
+            float dlen2 = d.sqrMagnitude;
+            if (dlen2 > r2)
+            {
+                float dlen = Mathf.Sqrt(dlen2);
+                particlePosition = capsuleP0 + d * (r / dlen);
+                return true;
+            }
+        }
+        else
+        {
+            float dirlen2 = dirlen * dirlen;
+            if (t >= dirlen2)
+            {
+                // check sphere2
+                d = particlePosition - capsuleP1;
+                float dlen2 = d.sqrMagnitude;
+                if (dlen2 > r2)
+                {
+                    float dlen = Mathf.Sqrt(dlen2);
+                    particlePosition = capsuleP1 + d * (r / dlen);
+                    return true;
+                }
+            }
+            else
+            {
+                // check cylinder
+                Vector3 q = d - dir * (t / dirlen2);
+                float qlen2 = q.sqrMagnitude;
+                if (qlen2 > r2)
+                {
+                    float qlen = Mathf.Sqrt(qlen2);
+                    particlePosition += q * ((r - qlen) / qlen);
+                    return true;
+                }
+            }
+        }
+        return false;
+    }
+
+    static bool OutsideCapsule2(ref Vector3 particlePosition, float particleRadius, Vector3 capsuleP0, Vector3 capsuleP1, float capsuleRadius0, float capsuleRadius1, float dirlen)
+    {
+        Vector3 dir = capsuleP1 - capsuleP0;
+        Vector3 d = particlePosition - capsuleP0;
+        float t = Vector3.Dot(d, dir);
+
+        if (t <= 0)
+        {
+            // check sphere1
+            float r = capsuleRadius0 + particleRadius;
+            float r2 = r * r;
+            float dlen2 = d.sqrMagnitude;
+            if (dlen2 > 0 && dlen2 < r2)
+            {
+                float dlen = Mathf.Sqrt(dlen2);
+                particlePosition = capsuleP0 + d * (r / dlen);
+                return true;
+            }
+        }
+        else
+        {
+            float dirlen2 = dirlen * dirlen;
+            if (t >= dirlen2)
+            {
+                // check sphere2
+                float r = capsuleRadius1 + particleRadius;
+                float r2 = r * r;
+                d = particlePosition - capsuleP1;
+                float dlen2 = d.sqrMagnitude;
+                if (dlen2 > 0 && dlen2 < r2)
+                {
+                    float dlen = Mathf.Sqrt(dlen2);
+                    particlePosition = capsuleP1 + d * (r / dlen);
+                    return true;
+                }
+            }
+            else
+            {
+                // check cylinder
+                Vector3 q = d - dir * (t / dirlen2);
+                float qlen2 = q.sqrMagnitude;
+
+                float klen = Vector3.Dot(d, dir / dirlen);
+                float r = Mathf.Lerp(capsuleRadius0, capsuleRadius1, klen / dirlen) + particleRadius;
+                float r2 = r * r;
+
+                if (qlen2 > 0 && qlen2 < r2)
+                {
+                    float qlen = Mathf.Sqrt(qlen2);
+                    particlePosition += q * ((r - qlen) / qlen);
+                    return true;
+                }
+            }
+        }
+        return false;
+    }
+
+    static bool InsideCapsule2(ref Vector3 particlePosition, float particleRadius, Vector3 capsuleP0, Vector3 capsuleP1, float capsuleRadius0, float capsuleRadius1, float dirlen)
+    {
+        Vector3 dir = capsuleP1 - capsuleP0;
+        Vector3 d = particlePosition - capsuleP0;
+        float t = Vector3.Dot(d, dir);
+
+        if (t <= 0)
+        {
+            // check sphere1
+            float r = capsuleRadius0 - particleRadius;
+            float r2 = r * r;
+            float dlen2 = d.sqrMagnitude;
+            if (dlen2 > r2)
+            {
+                float dlen = Mathf.Sqrt(dlen2);
+                particlePosition = capsuleP0 + d * (r / dlen);
+                return true;
+            }
+        }
+        else
+        {
+            float dirlen2 = dirlen * dirlen;
+            if (t >= dirlen2)
+            {
+                // check sphere2
+                float r = capsuleRadius1 - particleRadius;
+                float r2 = r * r;
+                d = particlePosition - capsuleP1;
+                float dlen2 = d.sqrMagnitude;
+                if (dlen2 > r2)
+                {
+                    float dlen = Mathf.Sqrt(dlen2);
+                    particlePosition = capsuleP1 + d * (r / dlen);
+                    return true;
+                }
+            }
+            else
+            {
+                // check cylinder
+                Vector3 q = d - dir * (t / dirlen2);
+                float qlen2 = q.sqrMagnitude;
+
+                float klen = Vector3.Dot(d, dir / dirlen);
+                float r = Mathf.Lerp(capsuleRadius0, capsuleRadius1, klen / dirlen) - particleRadius;
+                float r2 = r * r;
+
+                if (qlen2 > r2)
+                {
+                    float qlen = Mathf.Sqrt(qlen2);
+                    particlePosition += q * ((r - qlen) / qlen);
+                    return true;
+                }
+            }
+        }
+        return false;
+    }
+
+    void OnDrawGizmosSelected()
+    {
+        if (!enabled)
+            return;
+
+        Prepare();
+
+        if (m_Bound == Bound.Outside)
+        {
+            Gizmos.color = Color.yellow;
+        }
+        else
+        {
+            Gizmos.color = Color.magenta;
+        }
+
+        switch (m_CollideType)
+        {
+            case 0:
+            case 1:
+                Gizmos.DrawWireSphere(m_C0, m_ScaledRadius);
+                break;
+            case 2:
+            case 3:
+                DrawCapsule(m_C0, m_C1, m_ScaledRadius, m_ScaledRadius);
+                break;
+            case 4:
+            case 5:
+                DrawCapsule(m_C0, m_C1, m_ScaledRadius, m_ScaledRadius2);
+                break;
+        }
+    }
+
+    static void DrawCapsule(Vector3 c0, Vector3 c1, float radius0, float radius1)
+    {
+        Gizmos.DrawLine(c0, c1);
+        Gizmos.DrawWireSphere(c0, radius0);
+        Gizmos.DrawWireSphere(c1, radius1);
+    }
+}

+ 8 - 0
Assets/DynamicBone/Scripts/DynamicBoneCollider.cs.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: baedd976e12657241bf7ff2d1c685342
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 

+ 45 - 0
Assets/DynamicBone/Scripts/DynamicBoneColliderBase.cs

@@ -0,0 +1,45 @@
+using UnityEngine;
+
+public class DynamicBoneColliderBase : MonoBehaviour
+{
+    public enum Direction
+    {
+        X, Y, Z
+    }
+
+#if UNITY_5_3_OR_NEWER
+    [Tooltip("The axis of the capsule's height.")]
+#endif
+    public Direction m_Direction = Direction.Y;
+
+#if UNITY_5_3_OR_NEWER
+    [Tooltip("The center of the sphere or capsule, in the object's local space.")]
+#endif
+    public Vector3 m_Center = Vector3.zero;
+
+    public enum Bound
+    {
+        Outside,
+        Inside
+    }
+
+#if UNITY_5_3_OR_NEWER
+    [Tooltip("Constrain bones to outside bound or inside bound.")]
+#endif
+    public Bound m_Bound = Bound.Outside;
+
+    public int PrepareFrame { set; get; }
+
+    public virtual void Start()
+    {        
+    }
+
+    public virtual void Prepare()
+    {
+    }
+
+    public virtual bool Collide(ref Vector3 particlePosition, float particleRadius)
+    {
+        return false;
+    }
+}

+ 12 - 0
Assets/DynamicBone/Scripts/DynamicBoneColliderBase.cs.meta

@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: 04878769c08021a41bc2d2375e23ec0b
+timeCreated: 1482666371
+licenseType: Store
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 94 - 0
Assets/DynamicBone/Scripts/DynamicBonePlaneCollider.cs

@@ -0,0 +1,94 @@
+using UnityEngine;
+
+[AddComponentMenu("Dynamic Bone/Dynamic Bone Plane Collider")]
+public class DynamicBonePlaneCollider : DynamicBoneColliderBase
+{
+    // prepare data
+    Plane m_Plane;
+
+    void OnValidate()
+    {
+    }
+
+    public override void Prepare()
+    {
+        Vector3 normal = Vector3.up;
+        switch (m_Direction)
+        {
+            case Direction.X:
+                normal = transform.right;
+                break;
+            case Direction.Y:
+                normal = transform.up;
+                break;
+            case Direction.Z:
+                normal = transform.forward;
+                break;
+        }
+
+        Vector3 p = transform.TransformPoint(m_Center);
+        m_Plane.SetNormalAndPosition(normal, p);
+    }
+
+    public override bool Collide(ref Vector3 particlePosition, float particleRadius)
+    {
+        float d = m_Plane.GetDistanceToPoint(particlePosition);
+
+        if (m_Bound == Bound.Outside)
+        {
+            if (d < 0)
+            {
+                particlePosition -= m_Plane.normal * d;
+                return true;
+            }
+        }
+        else
+        {
+            if (d > 0)
+            {
+                particlePosition -= m_Plane.normal * d;
+                return true;
+            }
+        }
+
+/*        // consider particleRadius
+        if (m_Bound == Bound.Outside)
+        {
+            if (d < particleRadius)
+            {
+                particlePosition += m_Plane.normal * (particleRadius - d);
+                return true;
+            }
+        }
+        else
+        {
+            if (d > -particleRadius)
+            {
+                particlePosition -= m_Plane.normal * (particleRadius + d);
+                return true;
+            }
+        }
+*/
+        return false;
+    }
+
+    void OnDrawGizmosSelected()
+    {
+        if (!enabled)
+            return;
+
+        Prepare();
+
+        if (m_Bound == Bound.Outside)
+        {
+            Gizmos.color = Color.yellow;
+        }
+        else
+        {
+            Gizmos.color = Color.magenta;
+        }
+
+        Vector3 p = transform.TransformPoint(m_Center);
+        Gizmos.DrawLine(p, p + m_Plane.normal);
+    }
+}

+ 12 - 0
Assets/DynamicBone/Scripts/DynamicBonePlaneCollider.cs.meta

@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: 4e535bdf3689369408cc4d078260ef6a
+timeCreated: 1482666461
+licenseType: Store
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 3 - 3
Assets/GameMain/Entities/Player/baseplayer.prefab

@@ -105,7 +105,7 @@ GameObject:
   - component: {fileID: 1933353642202209348}
   - component: {fileID: 5491165786210190910}
   m_Layer: 0
-  m_Name: kuaidiyuan_5
+  m_Name: baseplayer
   m_TagString: Untagged
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
@@ -617,8 +617,8 @@ SkinnedMeshRenderer:
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 5850263771231748207}
   m_Enabled: 1
-  m_CastShadows: 1
-  m_ReceiveShadows: 1
+  m_CastShadows: 0
+  m_ReceiveShadows: 0
   m_DynamicOccludee: 1
   m_MotionVectors: 1
   m_LightProbeUsage: 1

+ 77 - 0
Assets/GameMain/Meshes/Player/Arms.mat

@@ -0,0 +1,77 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: Arms
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: 
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: -1
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 0, g: 0.010702133, b: 1, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/Arms.mat.meta

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

+ 78 - 0
Assets/GameMain/Meshes/Player/Cornea.mat

@@ -0,0 +1,78 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: Cornea
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: _ALPHAPREMULTIPLY_ON
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: 3000
+  stringTagMap:
+    RenderType: Transparent
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 10
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 3
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 0
+    m_Colors:
+    - _Color: {r: 1, g: 0, b: 0, a: 0.995}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/Cornea.mat.meta

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

+ 77 - 0
Assets/GameMain/Meshes/Player/Ears.mat

@@ -0,0 +1,77 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: Ears
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: 
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: -1
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 1, g: 0.5896226, b: 0.5896226, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/Ears.mat.meta

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

+ 78 - 0
Assets/GameMain/Meshes/Player/EyeMoisture.mat

@@ -0,0 +1,78 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: EyeMoisture
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: _ALPHAPREMULTIPLY_ON
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: 3000
+  stringTagMap:
+    RenderType: Transparent
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 10
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 3
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 0
+    m_Colors:
+    - _Color: {r: 0.103773594, g: 0.103773594, b: 0.103773594, a: 0.995}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/EyeMoisture.mat.meta

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

+ 77 - 0
Assets/GameMain/Meshes/Player/EyeSocket.mat

@@ -0,0 +1,77 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: EyeSocket
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: 
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: -1
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 1, g: 0.5423229, b: 0, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/EyeSocket.mat.meta

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

+ 77 - 0
Assets/GameMain/Meshes/Player/Face.mat

@@ -0,0 +1,77 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: Face
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: 
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: -1
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 1, g: 0.8604141, b: 0.7311321, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/Face.mat.meta

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

+ 77 - 0
Assets/GameMain/Meshes/Player/Fingernails.mat

@@ -0,0 +1,77 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: Fingernails
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: 
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: -1
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 0, g: 0.9088969, b: 1, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/Fingernails.mat.meta

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

BIN
Assets/GameMain/Meshes/Player/HOUZI.FBX


+ 990 - 0
Assets/GameMain/Meshes/Player/HOUZI.FBX.meta

@@ -0,0 +1,990 @@
+fileFormatVersion: 2
+guid: b99decc8e5732544788af42a596224fe
+ModelImporter:
+  serializedVersion: 19301
+  internalIDToNameTable:
+  - first:
+      74: 1827226128182048838
+    second: Take 001
+  - first:
+      74: -5405653242291790180
+    second: walk
+  externalObjects: {}
+  materials:
+    materialImportMode: 1
+    materialName: 0
+    materialSearch: 1
+    materialLocation: 1
+  animations:
+    legacyGenerateAnimations: 4
+    bakeSimulation: 0
+    resampleCurves: 1
+    optimizeGameObjects: 0
+    motionNodeName: 
+    rigImportErrors: 
+    rigImportWarnings: "Avatar Rig Configuration mis-match. Bone length in configuration
+      does not match position in animation file:\n\t'thigh_l' : position error =
+      13521.952148 mm\n\t'calf_l' : position error = 40878.097656 mm\n\t'foot_l'
+      : position error = 32925.003906 mm\n\t'ball_l' : position error = 20543.416016
+      mm\n\t'thigh_r' : position error = 14177.408203 mm\n\t'calf_r' : position error
+      = 40878.097656 mm\n\t'foot_r' : position error = 32924.996094 mm\n\t'ball_r'
+      : position error = 20543.414063 mm\n"
+    animationImportErrors: 
+    animationImportWarnings: "\nClip 'Take 001' has import animation warnings that
+      might lower retargeting quality:\nNote: Activate translation DOF on avatar
+      to improve retargeting quality.\n\t'spine_01' has translation animation that
+      will be discarded.\n\t'spine_01' is inbetween humanoid transforms and has rotation
+      animation that will be discarded.\n\t'spine_02' has translation animation that
+      will be discarded.\n\t'spine_03' has translation animation that will be discarded.\n\t'neck_01'
+      has translation animation that will be discarded.\n\t'clavicle_l' has translation
+      animation that will be discarded.\n\t'clavicle_r' has translation animation
+      that will be discarded.\n\t'hand_r' has translation animation that will be
+      discarded.\n\t'thigh_l' has translation animation that will be discarded.\n\t'calf_l'
+      has translation animation that will be discarded.\n\t'foot_l' has translation
+      animation that will be discarded.\n\t'thigh_r' has translation animation that
+      will be discarded.\n\t'calf_r' has translation animation that will be discarded.\n\t'foot_r'
+      has translation animation that will be discarded.\n"
+    animationRetargetingWarnings: 
+    animationDoRetargetingWarnings: 0
+    importAnimatedCustomProperties: 0
+    importConstraints: 0
+    animationCompression: 3
+    animationRotationError: 0.5
+    animationPositionError: 0.5
+    animationScaleError: 0.5
+    animationWrapMode: 0
+    extraExposedTransformPaths: []
+    extraUserProperties: []
+    clipAnimations:
+    - serializedVersion: 16
+      name: Take 001
+      takeName: Take 001
+      internalID: 0
+      firstFrame: 0
+      lastFrame: 720
+      wrapMode: 0
+      orientationOffsetY: 0
+      level: 0
+      cycleOffset: 0
+      loop: 0
+      hasAdditiveReferencePose: 0
+      loopTime: 0
+      loopBlend: 0
+      loopBlendOrientation: 0
+      loopBlendPositionY: 0
+      loopBlendPositionXZ: 0
+      keepOriginalOrientation: 0
+      keepOriginalPositionY: 1
+      keepOriginalPositionXZ: 0
+      heightFromFeet: 0
+      mirror: 0
+      bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
+      curves: []
+      events: []
+      transformMask: []
+      maskType: 3
+      maskSource: {instanceID: 0}
+      additiveReferencePoseFrame: 0
+    - serializedVersion: 16
+      name: walk
+      takeName: Take 001
+      internalID: 0
+      firstFrame: 0
+      lastFrame: 37
+      wrapMode: 0
+      orientationOffsetY: 0
+      level: 0
+      cycleOffset: 0
+      loop: 0
+      hasAdditiveReferencePose: 0
+      loopTime: 1
+      loopBlend: 0
+      loopBlendOrientation: 0
+      loopBlendPositionY: 0
+      loopBlendPositionXZ: 0
+      keepOriginalOrientation: 0
+      keepOriginalPositionY: 1
+      keepOriginalPositionXZ: 0
+      heightFromFeet: 0
+      mirror: 0
+      bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
+      curves: []
+      events: []
+      transformMask: []
+      maskType: 3
+      maskSource: {instanceID: 0}
+      additiveReferencePoseFrame: 0
+    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
+    preserveHierarchy: 0
+    skinWeightsMode: 0
+    maxBonesPerVertex: 4
+    minBoneWeight: 0.001
+    meshOptimizationFlags: -1
+    indexFormat: 0
+    secondaryUVAngleDistortion: 8
+    secondaryUVAreaDistortion: 15.000001
+    secondaryUVHardAngle: 88
+    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:
+    - boneName: pelvis
+      humanName: Hips
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: thigh_l
+      humanName: LeftUpperLeg
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: thigh_r
+      humanName: RightUpperLeg
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: calf_l
+      humanName: LeftLowerLeg
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: calf_r
+      humanName: RightLowerLeg
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: foot_l
+      humanName: LeftFoot
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: foot_r
+      humanName: RightFoot
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: spine_02
+      humanName: Spine
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: spine_03
+      humanName: Chest
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: head
+      humanName: Head
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: clavicle_l
+      humanName: LeftShoulder
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: clavicle_r
+      humanName: RightShoulder
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: upperarm_l
+      humanName: LeftUpperArm
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: upperarm_r
+      humanName: RightUpperArm
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: lowerarm_l
+      humanName: LeftLowerArm
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: lowerarm_r
+      humanName: RightLowerArm
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: hand_l
+      humanName: LeftHand
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: hand_r
+      humanName: RightHand
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: ball_l
+      humanName: LeftToes
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: ball_r
+      humanName: RightToes
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: thumb_01_l
+      humanName: Left Thumb Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: thumb_02_l
+      humanName: Left Thumb Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: thumb_03_l
+      humanName: Left Thumb Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: index_01_l
+      humanName: Left Index Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: index_02_l
+      humanName: Left Index Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: index_03_l
+      humanName: Left Index Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: middle_01_l
+      humanName: Left Middle Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: middle_02_l
+      humanName: Left Middle Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: middle_03_l
+      humanName: Left Middle Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: ring_01_l
+      humanName: Left Ring Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: ring_02_l
+      humanName: Left Ring Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: ring_03_l
+      humanName: Left Ring Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: pinky_01_l
+      humanName: Left Little Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: pinky_02_l
+      humanName: Left Little Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: pinky_03_l
+      humanName: Left Little Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: thumb_01_r
+      humanName: Right Thumb Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: thumb_02_r
+      humanName: Right Thumb Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: thumb_03_r
+      humanName: Right Thumb Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: index_01_r
+      humanName: Right Index Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: index_02_r
+      humanName: Right Index Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: index_03_r
+      humanName: Right Index Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: middle_01_r
+      humanName: Right Middle Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: middle_02_r
+      humanName: Right Middle Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: middle_03_r
+      humanName: Right Middle Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: ring_01_r
+      humanName: Right Ring Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: ring_02_r
+      humanName: Right Ring Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: ring_03_r
+      humanName: Right Ring Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: pinky_01_r
+      humanName: Right Little Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: pinky_02_r
+      humanName: Right Little Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: pinky_03_r
+      humanName: Right Little Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: neck_01
+      humanName: UpperChest
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    skeleton:
+    - name: HOUZI(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: root
+      parentName: HOUZI(Clone)
+      position: {x: -0, y: 0, z: 0}
+      rotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068}
+      scale: {x: 1, y: 1, z: 1}
+    - name: Bip001
+      parentName: root
+      position: {x: -0, y: 0, z: 0.9252285}
+      rotation: {x: 4.6364063e-10, y: 5.8797306e-10, z: 0.70710605, w: 0.7071075}
+      scale: {x: 0.99999994, y: 0.99999994, z: 1}
+    - name: pelvis
+      parentName: Bip001
+      position: {x: -0.000000027014481, y: 0.012728431, z: 0.034821033}
+      rotation: {x: 0.50000054, y: -0.5000002, z: -0.49999982, w: -0.4999995}
+      scale: {x: 1.0000004, y: 1.0000002, z: 1.0000001}
+    - name: Bone001
+      parentName: pelvis
+      position: {x: -0.025153961, y: -0.100037165, z: 0.00000015258789}
+      rotation: {x: 0.70724064, y: 0.70697296, z: 0.0000000736909, w: 0.0000008845891}
+      scale: {x: 1.0000001, y: 1.0000001, z: 1.0000004}
+    - name: Bone003
+      parentName: Bone001
+      position: {x: -0.1420368, y: -0.00000008356292, z: -2.8067826e-16}
+      rotation: {x: -0.000000059938934, y: 0.00000013086127, z: -0.0000002980232,
+        w: 1}
+      scale: {x: 1, y: 1.0000001, z: 1}
+    - name: Bone004
+      parentName: Bone003
+      position: {x: -0.12188358, y: 0.000000076293944, z: 0}
+      rotation: {x: -0.00000021076627, y: -0.00000016854749, z: -0.00000017881402,
+        w: 1}
+      scale: {x: 1, y: 1.0000001, z: 1}
+    - name: Bone005
+      parentName: Bone004
+      position: {x: -0.15795416, y: 0.000000076293944, z: 0}
+      rotation: {x: -0.00000075865125, y: -0.00000004200342, z: -0.000000059604588,
+        w: 1}
+      scale: {x: 1, y: 1, z: 1}
+    - name: Bone006
+      parentName: Bone005
+      position: {x: -0.15667938, y: 0, z: -0.000000076293944}
+      rotation: {x: -0.0000016211197, y: 0.000000059910796, z: -0.00000016214472,
+        w: 1}
+      scale: {x: 0.9999999, y: 0.9999997, z: 0.99999976}
+    - name: Bone007
+      parentName: Bone006
+      position: {x: -0.15947895, y: -0.000000076293944, z: 0.000000009536743}
+      rotation: {x: -0.00000257582, y: -0.00000005911845, z: -0.00000016207949, w: 1}
+      scale: {x: 0.9999999, y: 0.9999998, z: 0.9999999}
+    - name: Bone008
+      parentName: Bone007
+      position: {x: -0.15011504, y: 0, z: -0.000000057220458}
+      rotation: {x: -0.0000033098258, y: 6.2572525e-10, z: -0.00000039629958, w: 1}
+      scale: {x: 1.0000002, y: 1.0000004, z: 1.0000001}
+    - name: Bone009
+      parentName: Bone008
+      position: {x: -0.19012731, y: 0, z: 0.000000009536743}
+      rotation: {x: -0.000002332621, y: 0.00000006004448, z: -0.00000014408525, w: 1}
+      scale: {x: 1.0000001, y: 1.0000007, z: 1.0000002}
+    - name: Bone002
+      parentName: Bone009
+      position: {x: -0.20709297, y: 0.00000030517577, z: -0.0000004673004}
+      rotation: {x: -0.0000020719037, y: -0.00000056031087, z: 0.0000024715769, w: 1}
+      scale: {x: 1, y: 1, z: 1}
+    - name: spine_01
+      parentName: pelvis
+      position: {x: -0.109493785, y: -0.0063857604, z: 0.0052292394}
+      rotation: {x: 0.000002026558, y: 0.0000006556511, z: 0.00039809942, w: -1}
+      scale: {x: 1.0000007, y: 1.0000006, z: 1.000001}
+    - name: thigh_l
+      parentName: spine_01
+      position: {x: 0.1177996, y: 0.022821225, z: 0.07865896}
+      rotation: {x: -0.03575927, y: -0.997928, z: -0.011813818, w: -0.05216808}
+      scale: {x: 0.9999996, y: 1, z: 0.9999997}
+    - name: calf_l
+      parentName: thigh_l
+      position: {x: -0.433735, y: 0.000000038146972, z: 0}
+      rotation: {x: -0.00000012642701, y: -0.000000018626448, z: 0.04486914, w: 0.9989929}
+      scale: {x: 1.0000005, y: 1.0000005, z: 1.0000005}
+    - name: foot_l
+      parentName: calf_l
+      position: {x: -0.34934914, y: 0.000000038146972, z: -0.000000014305114}
+      rotation: {x: -0.10320705, y: 0.060760338, z: -0.074255876, w: 0.99002147}
+      scale: {x: 1.0000004, y: 1.0000002, z: 1.0000005}
+    - name: ball_l
+      parentName: foot_l
+      position: {x: -0.16072856, y: 0.14723918, z: -0.0000000047683715}
+      rotation: {x: 0.0000000372529, y: -0.0000000037252899, z: -0.7071069, w: 0.70710677}
+      scale: {x: 0.9999996, y: 0.9999998, z: 0.99999994}
+    - name: Bip001 L Toe0Nub
+      parentName: ball_l
+      position: {x: -0.1032933, y: 0, z: 0}
+      rotation: {x: -9.313226e-10, y: -0.0000000018626451, z: 1, w: 5.949762e-17}
+      scale: {x: -1, y: -1, z: -1}
+    - name: thigh_r
+      parentName: spine_01
+      position: {x: 0.097460784, y: 0.0016948604, z: -0.11457448}
+      rotation: {x: -0.035758913, y: -0.99792796, z: 0.011811235, w: 0.052168213}
+      scale: {x: 0.99999994, y: 1.0000001, z: 1}
+    - name: calf_r
+      parentName: thigh_r
+      position: {x: -0.433735, y: -0.000000038146972, z: -0.0000000047683715}
+      rotation: {x: -0.000000048661605, y: 0.000000014901161, z: 0.044869374, w: 0.9989929}
+      scale: {x: 1.0000005, y: 1.0000005, z: 1.0000004}
+    - name: foot_r
+      parentName: calf_r
+      position: {x: -0.34934902, y: 0.000000038146972, z: -0.000000009536743}
+      rotation: {x: 0.10320711, y: -0.06076044, z: -0.07425591, w: 0.99002147}
+      scale: {x: 0.9999998, y: 0.99999994, z: 0.99999994}
+    - name: ball_r
+      parentName: foot_r
+      position: {x: -0.16072859, y: 0.14723915, z: -0.000000007152557}
+      rotation: {x: 0.000000007450578, y: 0.000000067055204, z: -0.7071067, w: 0.7071068}
+      scale: {x: 1.0000004, y: 1.0000004, z: 1.0000005}
+    - name: Bip001 R Toe0Nub
+      parentName: ball_r
+      position: {x: -0.10329334, y: 0.0000000023841857, z: 0}
+      rotation: {x: -1.958764e-19, y: -0.0000000033651304, z: -5.820767e-11, w: 1}
+      scale: {x: 0.99999994, y: 1, z: 1}
+    - name: spine_02
+      parentName: spine_01
+      position: {x: -0.11360817, y: -0.00008376122, z: -0.000030937194}
+      rotation: {x: 0.000000029802322, y: 0.00000014901161, z: -0.027475864, w: -0.9996225}
+      scale: {x: 1.0000001, y: 1.0000001, z: 0.9999997}
+    - name: spine_03
+      parentName: spine_02
+      position: {x: -0.11360977, y: -0.00008916855, z: -0.000008416176}
+      rotation: {x: 0.0000000032385503, y: -0.000000030778022, z: 0.027475925, w: 0.99962246}
+      scale: {x: 1.0000002, y: 1.0000004, z: 1.0000005}
+    - name: neck_01
+      parentName: spine_03
+      position: {x: -0.12756966, y: -0.04121912, z: 0}
+      rotation: {x: -0.000000039958852, y: -0.0000004479824, z: 0.16228078, w: -0.9867447}
+      scale: {x: 1.0000004, y: 1.0000007, z: 1.0000002}
+    - name: clavicle_l
+      parentName: neck_01
+      position: {x: -0.008770294, y: 0.04303112, z: 0.051272947}
+      rotation: {x: 0.6051114, y: 0.20118755, z: -0.7682106, w: 0.05671296}
+      scale: {x: 0.99999946, y: 0.99999946, z: 0.9999998}
+    - name: upperarm_l
+      parentName: clavicle_l
+      position: {x: -0.1127711, y: 0, z: 0}
+      rotation: {x: 0.04149208, y: 0.04725752, z: 0.13701524, w: 0.9885707}
+      scale: {x: 1.0000002, y: 1.0000006, z: 1.0000002}
+    - name: lowerarm_l
+      parentName: upperarm_l
+      position: {x: -0.23740226, y: 0, z: 0}
+      rotation: {x: -0.004380487, y: 0.025374653, z: 0.039404698, w: 0.9988915}
+      scale: {x: 0.99999994, y: 1, z: 1}
+    - name: hand_l
+      parentName: lowerarm_l
+      position: {x: -0.25597346, y: 0, z: -0.000000038146972}
+      rotation: {x: 0.62570745, y: 0.00000008484626, z: -0.00000005263411, w: -0.78005785}
+      scale: {x: 1.0000001, y: 1.0000007, z: 1.0000005}
+    - name: pinky_01_l
+      parentName: hand_l
+      position: {x: -0.13692047, y: 0.017335968, z: 0.08791305}
+      rotation: {x: -0.0012398653, y: -0.006987277, z: -0.07996157, w: 0.99677265}
+      scale: {x: 1, y: 0.99999994, z: 0.9999996}
+    - name: pinky_02_l
+      parentName: pinky_01_l
+      position: {x: -0.034776762, y: 0, z: 0}
+      rotation: {x: -0.000000055064408, y: 0.0000014305105, z: -0.034862746, w: 0.99939215}
+      scale: {x: 1.0000001, y: 1.0000001, z: 1.0000005}
+    - name: pinky_03_l
+      parentName: pinky_02_l
+      position: {x: -0.034776762, y: 0.000000019073486, z: -0.000000038146972}
+      rotation: {x: 0.00000010036918, y: -0.0000009936241, z: -0.03486077, w: 0.9993922}
+      scale: {x: 1.0000005, y: 1.0000004, z: 1.0000001}
+    - name: Bip001 L Finger4Nub
+      parentName: pinky_03_l
+      position: {x: -0.034776762, y: 0.000000038146972, z: 0}
+      rotation: {x: 0.000000004656613, y: -0.0000000018626451, z: -0.000000014901161,
+        w: 1}
+      scale: {x: 1, y: 1, z: 1}
+    - name: ring_01_l
+      parentName: hand_l
+      position: {x: -0.14220348, y: -0.006348457, z: 0.041055165}
+      rotation: {x: -0.066292025, y: 0.03680385, z: -0.059636064, w: 0.9953363}
+      scale: {x: 1, y: 0.9999998, z: 0.9999996}
+    - name: ring_02_l
+      parentName: ring_01_l
+      position: {x: -0.04417183, y: 0, z: 0.000000057220458}
+      rotation: {x: 0.00000011920919, y: 0.0000020749849, z: -0.033653367, w: 0.99943364}
+      scale: {x: 1.0000004, y: 1.0000002, z: 1.0000005}
+    - name: ring_03_l
+      parentName: ring_02_l
+      position: {x: -0.04417183, y: 0.000000038146972, z: -0.000000019073486}
+      rotation: {x: -0.00000030436877, y: 0.000000046551765, z: -0.033653952, w: 0.99943364}
+      scale: {x: 1.0000004, y: 1.0000001, z: 1.0000002}
+    - name: Bip001 L Finger3Nub
+      parentName: ring_03_l
+      position: {x: -0.044171903, y: -0.000000038146972, z: -0.000000038146972}
+      rotation: {x: -0.000000014901159, y: -0.000000011175871, z: -0.000000014901161,
+        w: 1}
+      scale: {x: 1, y: 1.0000001, z: 1.0000001}
+    - name: middle_01_l
+      parentName: hand_l
+      position: {x: -0.14116833, y: -0.0000046157834, z: -0.005826721}
+      rotation: {x: 0.0004002451, y: 0.029772261, z: -0.026787933, w: 0.9991976}
+      scale: {x: 1, y: 1.0000001, z: 0.9999998}
+    - name: middle_02_l
+      parentName: middle_01_l
+      position: {x: -0.051533736, y: 0, z: 0.000000019073486}
+      rotation: {x: 0.00000016746333, y: 0.00000020116553, z: -0.036407586, w: 0.9993371}
+      scale: {x: 1.0000002, y: 1.0000001, z: 1.0000002}
+    - name: middle_03_l
+      parentName: middle_02_l
+      position: {x: -0.05153389, y: 0, z: 0.000000019073486}
+      rotation: {x: -0.000000102341275, y: -0.000000011559568, z: -0.03640553, w: 0.9993372}
+      scale: {x: 1.0000001, y: 1.0000006, z: 1.0000005}
+    - name: Bip001 L Finger2Nub
+      parentName: middle_03_l
+      position: {x: -0.05153381, y: -0.000000038146972, z: 0.000000019073486}
+      rotation: {x: 0.000000007450581, y: -2.220446e-16, z: -0.000000029802322, w: 1}
+      scale: {x: 1, y: 1, z: 1}
+    - name: index_01_l
+      parentName: hand_l
+      position: {x: -0.14116828, y: -0.000041923522, z: -0.052703474}
+      rotation: {x: -0.00039821854, y: 0.00000008619807, z: -0.000000083630674, w: 1}
+      scale: {x: 1.0000001, y: 0.99999994, z: 0.9999996}
+    - name: index_02_l
+      parentName: index_01_l
+      position: {x: -0.049074937, y: 0, z: 0}
+      rotation: {x: 0.0000003452002, y: -0.00000035173875, z: -0.037769914, w: 0.9992865}
+      scale: {x: 1.0000007, y: 0.99999994, z: 1.0000007}
+    - name: index_03_l
+      parentName: index_02_l
+      position: {x: -0.049074937, y: 0, z: -0.000000019073486}
+      rotation: {x: -0.000000045831953, y: 0.0000004890244, z: -0.037769962, w: 0.99928653}
+      scale: {x: 1, y: 1.0000002, z: 1.0000005}
+    - name: Bip001 L Finger1Nub
+      parentName: index_03_l
+      position: {x: -0.049074937, y: -0.000000019073486, z: 0}
+      rotation: {x: 0.0000000037252903, y: -0, z: -0, w: 1}
+      scale: {x: 1, y: 1, z: 1}
+    - name: thumb_01_l
+      parentName: hand_l
+      position: {x: -0.07093201, y: 0.034163054, z: -0.07748199}
+      rotation: {x: -0.56818664, y: 0.24616288, z: -0.24821213, w: -0.7449555}
+      scale: {x: 0.99999994, y: 0.9999996, z: 0.99999994}
+    - name: thumb_02_l
+      parentName: thumb_01_l
+      position: {x: -0.037410583, y: 0.000000009536743, z: -0.000000038146972}
+      rotation: {x: -0.000000089406896, y: -0.0000005066391, z: -0.039862808, w: 0.99920523}
+      scale: {x: 1.0000001, y: 1, z: 1}
+    - name: thumb_03_l
+      parentName: thumb_02_l
+      position: {x: -0.037410658, y: -0.000000019073486, z: 0.000000038146972}
+      rotation: {x: 0.000000064047896, y: -0.0000013662761, z: -0.039866358, w: 0.99920505}
+      scale: {x: 1.0000004, y: 1.0000001, z: 1.0000004}
+    - name: Bip001 L Finger0Nub
+      parentName: thumb_03_l
+      position: {x: -0.037410583, y: 0, z: 0}
+      rotation: {x: -0.000000017880668, y: -0.0000000033251133, z: 0.000000029802322,
+        w: 1}
+      scale: {x: 1, y: 0.99999994, z: 1}
+    - name: clavicle_r
+      parentName: neck_01
+      position: {x: -0.0041290284, y: 0.043035123, z: -0.051850423}
+      rotation: {x: -0.60186625, y: -0.21339796, z: -0.76851106, w: 0.040112536}
+      scale: {x: 1.0000011, y: 1.0000002, z: 1.0000004}
+    - name: upperarm_r
+      parentName: clavicle_r
+      position: {x: -0.11277111, y: 0, z: -0.00000015258789}
+      rotation: {x: -0.040861603, y: -0.0887883, z: 0.11165512, w: 0.98892885}
+      scale: {x: 1.0000005, y: 1.0000001, z: 1.0000005}
+    - name: lowerarm_r
+      parentName: upperarm_r
+      position: {x: -0.23740226, y: 0.000000038146972, z: 0}
+      rotation: {x: 0.0042103855, y: -0.024388697, z: 0.034521796, w: 0.99909747}
+      scale: {x: 1.0000001, y: 1, z: 0.9999997}
+    - name: hand_r
+      parentName: lowerarm_r
+      position: {x: -0.25597352, y: -0.000000076293944, z: 0}
+      rotation: {x: 0.6257073, y: -0.000000056714743, z: -0.00000003138844, w: 0.7800579}
+      scale: {x: 1.0000001, y: 1.0000002, z: 1.0000001}
+    - name: thumb_01_r
+      parentName: hand_r
+      position: {x: -0.07093212, y: 0.03416298, z: 0.07748199}
+      rotation: {x: -0.5673103, y: 0.23996483, z: 0.25428626, w: 0.7455967}
+      scale: {x: 1.0000006, y: 1, z: 1.0000002}
+    - name: thumb_02_r
+      parentName: thumb_01_r
+      position: {x: -0.03741062, y: 0, z: 0.000000038146972}
+      rotation: {x: -0.00000017881379, y: 0.00000034272642, z: -0.039868485, w: 0.999205}
+      scale: {x: 1.0000005, y: 1.0000007, z: 1.0000002}
+    - name: thumb_03_r
+      parentName: thumb_02_r
+      position: {x: -0.037410546, y: 0.000000076293944, z: -0.000000028610229}
+      rotation: {x: -0.00000008754967, y: 0.0000011075757, z: 0.03986426, w: -0.9992052}
+      scale: {x: 1.0000002, y: 1.0000002, z: 1.0000004}
+    - name: Bip001 R Finger0Nub
+      parentName: thumb_03_r
+      position: {x: -0.037410583, y: -0.000000038146972, z: -0.000000028610229}
+      rotation: {x: 0, y: 0, z: 1, w: 6.123234e-17}
+      scale: {x: -1, y: -1, z: -1}
+    - name: pinky_01_r
+      parentName: hand_r
+      position: {x: -0.13692047, y: 0.017335968, z: -0.08791305}
+      rotation: {x: 0.0012395673, y: 0.0069861095, z: -0.07996764, w: 0.99677217}
+      scale: {x: 1.0000005, y: 1.0000006, z: 1.0000002}
+    - name: pinky_02_r
+      parentName: pinky_01_r
+      position: {x: -0.034776803, y: -0.000000019073486, z: -0.000000076293944}
+      rotation: {x: 0.0000002824234, y: -0.0000004740429, z: -0.034860794, w: 0.9993922}
+      scale: {x: 0.99999994, y: 0.99999994, z: 0.9999998}
+    - name: pinky_03_r
+      parentName: pinky_02_r
+      position: {x: -0.034776803, y: 0, z: 0}
+      rotation: {x: -0.00000014487061, y: 0.0000014366909, z: -0.034854442, w: 0.9993924}
+      scale: {x: 0.99999994, y: 1, z: 1}
+    - name: Bip001 R Finger4Nub
+      parentName: pinky_03_r
+      position: {x: -0.034776803, y: 0.000000019073486, z: 0}
+      rotation: {x: 0, y: 0, z: 1, w: 6.123234e-17}
+      scale: {x: -1, y: -1.0000001, z: -1}
+    - name: ring_01_r
+      parentName: hand_r
+      position: {x: -0.1422036, y: -0.006348419, z: -0.041055143}
+      rotation: {x: 0.06629222, y: -0.03680427, z: -0.05963629, w: 0.9953363}
+      scale: {x: 1.0000004, y: 1.0000007, z: 1.0000001}
+    - name: ring_02_r
+      parentName: ring_01_r
+      position: {x: -0.04417183, y: 0.000000019073486, z: 0}
+      rotation: {x: -0.00000025331946, y: -0.0000012181687, z: -0.033657264, w: 0.9994335}
+      scale: {x: 0.9999998, y: 1, z: 0.99999994}
+    - name: ring_03_r
+      parentName: ring_02_r
+      position: {x: -0.044171866, y: -0.000000038146972, z: 0}
+      rotation: {x: 0.00000006637595, y: 0.0000010127442, z: -0.033651188, w: 0.99943364}
+      scale: {x: 1, y: 1.0000001, z: 0.99999994}
+    - name: Bip001 R Finger3Nub
+      parentName: ring_03_r
+      position: {x: -0.044171847, y: 0, z: 0}
+      rotation: {x: 0.000000018626453, y: 0.000000029802322, z: 1, w: -6.163439e-16}
+      scale: {x: -1, y: -1, z: -1.0000001}
+    - name: middle_01_r
+      parentName: hand_r
+      position: {x: -0.14116833, y: -0.0000046157834, z: 0.005826721}
+      rotation: {x: -0.00040009603, y: -0.029772175, z: -0.026787885, w: 0.9991976}
+      scale: {x: 1.0000006, y: 1.0000008, z: 1}
+    - name: middle_02_r
+      parentName: middle_01_r
+      position: {x: -0.051533774, y: -0.000000038146972, z: 0}
+      rotation: {x: -0.00000008993077, y: -0.00000060163393, z: -0.03640546, w: 0.99933714}
+      scale: {x: 0.9999996, y: 0.9999998, z: 0.99999994}
+    - name: middle_03_r
+      parentName: middle_02_r
+      position: {x: -0.05153389, y: 0.000000038146972, z: 0}
+      rotation: {x: -0.00000004126602, y: -0.00000023720256, z: -0.036407482, w: 0.9993371}
+      scale: {x: 1.0000001, y: 1.0000002, z: 0.99999994}
+    - name: Bip001 R Finger2Nub
+      parentName: middle_03_r
+      position: {x: -0.051533833, y: 0.000000038146972, z: 0}
+      rotation: {x: -0.0000000037252903, y: -0.000000014901159, z: 1, w: -1.1674348e-16}
+      scale: {x: -1, y: -1.0000001, z: -1.0000001}
+    - name: index_01_r
+      parentName: hand_r
+      position: {x: -0.1411684, y: -0.000041923522, z: 0.0527034}
+      rotation: {x: 0.00039824835, y: -0.00000005932703, z: 0.000000009352722, w: 1}
+      scale: {x: 1.0000005, y: 1.0000004, z: 1.0000002}
+    - name: index_02_r
+      parentName: index_01_r
+      position: {x: -0.049074937, y: -0.000000019073486, z: 0.000000038146972}
+      rotation: {x: -0.00000013550732, y: 0.00000081092594, z: -0.03776842, w: 0.99928653}
+      scale: {x: 1.0000001, y: 1.0000004, z: 1.0000002}
+    - name: index_03_r
+      parentName: index_02_r
+      position: {x: -0.049074937, y: -0.000000019073486, z: -0.000000076293944}
+      rotation: {x: 0.00000012628452, y: -0.0000005478011, z: -0.03777177, w: 0.9992864}
+      scale: {x: 1.0000002, y: 1.0000004, z: 1}
+    - name: Bip001 R Finger1Nub
+      parentName: index_03_r
+      position: {x: -0.049074974, y: 0, z: 0}
+      rotation: {x: 0.0000000037252903, y: 0.0000000074505815, z: 1, w: -8.898792e-17}
+      scale: {x: -1, y: -0.99999994, z: -0.9999999}
+    - name: head
+      parentName: neck_01
+      position: {x: -0.09669799, y: 0, z: 0.000000009536743}
+      rotation: {x: 0.000000119209275, y: -0.00000034272668, z: -0.10822864, w: -0.9941261}
+      scale: {x: 1.0000004, y: 1.0000001, z: 1}
+    - name: Bip001 HeadNub
+      parentName: head
+      position: {x: -0.20385544, y: 0.000000019073486, z: 0}
+      rotation: {x: 0, y: 0.0000000018626451, z: -0, w: 1}
+      scale: {x: 1, y: 1, z: 1}
+    - name: 1676_SunWuKong_High
+      parentName: HOUZI(Clone)
+      position: {x: -0.000000006796945, y: 0.9006838, z: -0.59184647}
+      rotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068}
+      scale: {x: 82.72622, y: 82.72622, z: 82.72622}
+    - name: 1676_SunWuKong_Face_High
+      parentName: HOUZI(Clone)
+      position: {x: -0.000010573509, y: 1.5167569, z: -0.0061087417}
+      rotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068}
+      scale: {x: 78.18743, y: 78.18743, z: 78.18743}
+    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: 3
+  humanoidOversampling: 1
+  avatarSetup: 1
+  additionalBone: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 77 - 0
Assets/GameMain/Meshes/Player/Irises.mat

@@ -0,0 +1,77 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: Irises
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: 
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: -1
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 1, g: 1, b: 1, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/Irises.mat.meta

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

+ 77 - 0
Assets/GameMain/Meshes/Player/Legs.mat

@@ -0,0 +1,77 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: Legs
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: 
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: -1
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 1, g: 0.92791504, b: 0, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/Legs.mat.meta

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

+ 77 - 0
Assets/GameMain/Meshes/Player/Lips.mat

@@ -0,0 +1,77 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: Lips
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: 
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: -1
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 1, g: 0, b: 0.67448425, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/Lips.mat.meta

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

+ 77 - 0
Assets/GameMain/Meshes/Player/Mouth.mat

@@ -0,0 +1,77 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: Mouth
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: 
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: -1
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 1, g: 1, b: 1, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/Mouth.mat.meta

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

+ 77 - 0
Assets/GameMain/Meshes/Player/Pupils.mat

@@ -0,0 +1,77 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: Pupils
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: 
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: -1
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 1, g: 0, b: 0, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/Pupils.mat.meta

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

+ 77 - 0
Assets/GameMain/Meshes/Player/Sclera.mat

@@ -0,0 +1,77 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: Sclera
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: 
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: -1
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 1, g: 0, b: 0, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/Sclera.mat.meta

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

+ 77 - 0
Assets/GameMain/Meshes/Player/Teeth.mat

@@ -0,0 +1,77 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: Teeth
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: 
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: -1
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 1, g: 1, b: 1, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/Teeth.mat.meta

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

+ 77 - 0
Assets/GameMain/Meshes/Player/Toenails.mat

@@ -0,0 +1,77 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: Toenails
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: 
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: -1
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 1, g: 1, b: 1, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/Toenails.mat.meta

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

+ 77 - 0
Assets/GameMain/Meshes/Player/Torso.mat

@@ -0,0 +1,77 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: Torso
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: 
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: -1
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 0, g: 0, b: 0, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/Torso.mat.meta

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

+ 73 - 0
Assets/GameMain/Meshes/Player/baseani.controller

@@ -0,0 +1,73 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!1102 &-5244027479717722202
+AnimatorState:
+  serializedVersion: 5
+  m_ObjectHideFlags: 1
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: walk
+  m_Speed: 1
+  m_CycleOffset: 0
+  m_Transitions: []
+  m_StateMachineBehaviours: []
+  m_Position: {x: 50, y: 50, z: 0}
+  m_IKOnFeet: 0
+  m_WriteDefaultValues: 1
+  m_Mirror: 0
+  m_SpeedParameterActive: 0
+  m_MirrorParameterActive: 0
+  m_CycleOffsetParameterActive: 0
+  m_TimeParameterActive: 0
+  m_Motion: {fileID: -3419257869308726280, guid: 1af50795f5cfada4f88a13671ba266a1,
+    type: 3}
+  m_Tag: 
+  m_SpeedParameter: 
+  m_MirrorParameter: 
+  m_CycleOffsetParameter: 
+  m_TimeParameter: 
+--- !u!91 &9100000
+AnimatorController:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: baseani
+  serializedVersion: 5
+  m_AnimatorParameters: []
+  m_AnimatorLayers:
+  - serializedVersion: 5
+    m_Name: Base Layer
+    m_StateMachine: {fileID: 3767549705516674691}
+    m_Mask: {fileID: 0}
+    m_Motions: []
+    m_Behaviours: []
+    m_BlendingMode: 0
+    m_SyncedLayerIndex: -1
+    m_DefaultWeight: 0
+    m_IKPass: 0
+    m_SyncedLayerAffectsTiming: 0
+    m_Controller: {fileID: 9100000}
+--- !u!1107 &3767549705516674691
+AnimatorStateMachine:
+  serializedVersion: 5
+  m_ObjectHideFlags: 1
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: Base Layer
+  m_ChildStates:
+  - serializedVersion: 1
+    m_State: {fileID: -5244027479717722202}
+    m_Position: {x: 136, y: 306, z: 0}
+  m_ChildStateMachines: []
+  m_AnyStateTransitions: []
+  m_EntryTransitions: []
+  m_StateMachineTransitions: {}
+  m_StateMachineBehaviours: []
+  m_AnyStatePosition: {x: 50, y: 20, z: 0}
+  m_EntryPosition: {x: 50, y: 120, z: 0}
+  m_ExitPosition: {x: 800, y: 120, z: 0}
+  m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
+  m_DefaultState: {fileID: -5244027479717722202}

+ 8 - 0
Assets/GameMain/Meshes/Player/baseani.controller.meta

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

BIN
Assets/GameMain/Meshes/Player/biaozhunnv.FBX


+ 984 - 0
Assets/GameMain/Meshes/Player/biaozhunnv.FBX.meta

@@ -0,0 +1,984 @@
+fileFormatVersion: 2
+guid: 1af50795f5cfada4f88a13671ba266a1
+ModelImporter:
+  serializedVersion: 19301
+  internalIDToNameTable:
+  - first:
+      74: 1827226128182048838
+    second: Take 001
+  - first:
+      74: -3419257869308726280
+    second: walk
+  externalObjects: {}
+  materials:
+    materialImportMode: 1
+    materialName: 0
+    materialSearch: 1
+    materialLocation: 1
+  animations:
+    legacyGenerateAnimations: 4
+    bakeSimulation: 0
+    resampleCurves: 1
+    optimizeGameObjects: 0
+    motionNodeName: 
+    rigImportErrors: 
+    rigImportWarnings: 
+    animationImportErrors: 
+    animationImportWarnings: "\nClip 'Take 001' has import animation warnings that
+      might lower retargeting quality:\nNote: Activate translation DOF on avatar
+      to improve retargeting quality.\n\t'Spine_01' has translation animation that
+      will be discarded.\n\t'Spine_01' is inbetween humanoid transforms and has rotation
+      animation that will be discarded.\n\t'Clavicle_L' has translation animation
+      that will be discarded.\n\t'Clavicle_R' has translation animation that will
+      be discarded.\n\t'Thigh_R' has translation animation that will be discarded.\n\t'Thigh_L'
+      has translation animation that will be discarded.\n"
+    animationRetargetingWarnings: 
+    animationDoRetargetingWarnings: 0
+    importAnimatedCustomProperties: 0
+    importConstraints: 0
+    animationCompression: 3
+    animationRotationError: 0.5
+    animationPositionError: 0.5
+    animationScaleError: 0.5
+    animationWrapMode: 0
+    extraExposedTransformPaths: []
+    extraUserProperties: []
+    clipAnimations:
+    - serializedVersion: 16
+      name: Take 001
+      takeName: Take 001
+      internalID: 0
+      firstFrame: 0
+      lastFrame: 1198
+      wrapMode: 0
+      orientationOffsetY: 0
+      level: 0
+      cycleOffset: 0
+      loop: 0
+      hasAdditiveReferencePose: 0
+      loopTime: 0
+      loopBlend: 0
+      loopBlendOrientation: 0
+      loopBlendPositionY: 0
+      loopBlendPositionXZ: 0
+      keepOriginalOrientation: 0
+      keepOriginalPositionY: 1
+      keepOriginalPositionXZ: 0
+      heightFromFeet: 0
+      mirror: 0
+      bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
+      curves: []
+      events: []
+      transformMask: []
+      maskType: 3
+      maskSource: {instanceID: 0}
+      additiveReferencePoseFrame: 0
+    - serializedVersion: 16
+      name: walk
+      takeName: Take 001
+      internalID: 0
+      firstFrame: 0
+      lastFrame: 37
+      wrapMode: 0
+      orientationOffsetY: 0
+      level: 0
+      cycleOffset: 0
+      loop: 0
+      hasAdditiveReferencePose: 0
+      loopTime: 1
+      loopBlend: 0
+      loopBlendOrientation: 0
+      loopBlendPositionY: 0
+      loopBlendPositionXZ: 0
+      keepOriginalOrientation: 0
+      keepOriginalPositionY: 1
+      keepOriginalPositionXZ: 0
+      heightFromFeet: 0
+      mirror: 0
+      bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
+      curves: []
+      events: []
+      transformMask: []
+      maskType: 3
+      maskSource: {instanceID: 0}
+      additiveReferencePoseFrame: 0
+    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
+    preserveHierarchy: 0
+    skinWeightsMode: 0
+    maxBonesPerVertex: 4
+    minBoneWeight: 0.001
+    meshOptimizationFlags: -1
+    indexFormat: 0
+    secondaryUVAngleDistortion: 8
+    secondaryUVAreaDistortion: 15.000001
+    secondaryUVHardAngle: 88
+    secondaryUVPackMargin: 4
+    useFileScale: 0
+  tangentSpace:
+    normalSmoothAngle: 60
+    normalImportMode: 0
+    tangentImportMode: 3
+    normalCalculationMode: 4
+    legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
+    blendShapeNormalImportMode: 1
+    normalSmoothingSource: 0
+  referencedClips: []
+  importAnimation: 1
+  humanDescription:
+    serializedVersion: 3
+    human:
+    - boneName: Pelvis
+      humanName: Hips
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: Thigh_L
+      humanName: LeftUpperLeg
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: Thigh_R
+      humanName: RightUpperLeg
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: Calf_L
+      humanName: LeftLowerLeg
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: Calf_R
+      humanName: RightLowerLeg
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: Foot_L
+      humanName: LeftFoot
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: Foot_R
+      humanName: RightFoot
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: Spine_02
+      humanName: Spine
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: Spine_03
+      humanName: Chest
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: Head
+      humanName: Head
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: Clavicle_L
+      humanName: LeftShoulder
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: Clavicle_R
+      humanName: RightShoulder
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: UpperArm_L
+      humanName: LeftUpperArm
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: UpperArm_R
+      humanName: RightUpperArm
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: Forearm_L
+      humanName: LeftLowerArm
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: Forearm_R
+      humanName: RightLowerArm
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: Hand_L
+      humanName: LeftHand
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: Hand_R
+      humanName: RightHand
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: Toe_0_L
+      humanName: LeftToes
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: Toe_0_L 1
+      humanName: RightToes
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: L Finger0
+      humanName: Left Thumb Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: L Finger01
+      humanName: Left Thumb Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: L Finger02
+      humanName: Left Thumb Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: L Finger1
+      humanName: Left Index Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: L Finger11
+      humanName: Left Index Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: L Finger12
+      humanName: Left Index Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: L Finger2
+      humanName: Left Middle Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: L Finger21
+      humanName: Left Middle Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: L Finger22
+      humanName: Left Middle Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: L Finger3
+      humanName: Left Ring Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: L Finger31
+      humanName: Left Ring Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: L Finger32
+      humanName: Left Ring Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: L Finger4
+      humanName: Left Little Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: L Finger41
+      humanName: Left Little Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: L Finger42
+      humanName: Left Little Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: R Finger0
+      humanName: Right Thumb Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: R Finger01
+      humanName: Right Thumb Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: R Finger02
+      humanName: Right Thumb Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: R Finger1
+      humanName: Right Index Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: R Finger11
+      humanName: Right Index Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: R Finger12
+      humanName: Right Index Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: R Finger2
+      humanName: Right Middle Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: R Finger21
+      humanName: Right Middle Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: R Finger22
+      humanName: Right Middle Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: R Finger3
+      humanName: Right Ring Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: R Finger31
+      humanName: Right Ring Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: R Finger32
+      humanName: Right Ring Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: R Finger4
+      humanName: Right Little Proximal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: R Finger41
+      humanName: Right Little Intermediate
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: R Finger42
+      humanName: Right Little Distal
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    - boneName: Neck_01
+      humanName: UpperChest
+      limit:
+        min: {x: 0, y: 0, z: 0}
+        max: {x: 0, y: 0, z: 0}
+        value: {x: 0, y: 0, z: 0}
+        length: 0
+        modified: 0
+    skeleton:
+    - name: biaozhunnv(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: model
+      parentName: biaozhunnv(Clone)
+      position: {x: 5.3159943, y: 0, z: 6.6116943}
+      rotation: {x: 0.00000006657903, y: -0, z: -0, w: 1}
+      scale: {x: 1, y: 1, z: 1}
+    - name: Standard__nv
+      parentName: model
+      position: {x: -5.3159943, y: -0.0000010770746, z: -6.6116943}
+      rotation: {x: 0, y: -0, z: -0, w: 1}
+      scale: {x: 1, y: 1, z: 1}
+    - name: Bip_01
+      parentName: biaozhunnv(Clone)
+      position: {x: -0, y: 0.9254533, z: 0}
+      rotation: {x: -0.5000005, y: 0.49999952, z: 0.4999995, w: 0.5000005}
+      scale: {x: 0.9999999, y: 0.9999999, z: 1}
+    - name: Footsteps
+      parentName: Bip_01
+      position: {x: 0.0000000069683046, y: -0.0000000013588695, z: -0.91370654}
+      rotation: {x: 0.0000000021705353, y: -0.0000000032221537, z: -0.70710605, w: 0.7071075}
+      scale: {x: 1, y: 1, z: 1}
+    - name: Pelvis
+      parentName: Bip_01
+      position: {x: -0.000000002299988, y: 0.0000000074505815, z: 0.07717478}
+      rotation: {x: 0.5000002, y: -0.5000006, z: -0.4999995, w: -0.49999985}
+      scale: {x: 1, y: 1, z: 1}
+    - name: Spine_01
+      parentName: Pelvis
+      position: {x: -0.0976547, y: 0.026326489, z: 0.012349796}
+      rotation: {x: 0.0000020116568, y: 0.00000067055225, z: 0.00039818883, w: -1}
+      scale: {x: 1.0000004, y: 1.0000004, z: 1.0000004}
+    - name: Thigh_R
+      parentName: Spine_01
+      position: {x: 0.088261425, y: -0.031222314, z: -0.10769675}
+      rotation: {x: -0.022396037, y: -0.9968377, z: -0.0048352224, w: 0.07609061}
+      scale: {x: 1.0000004, y: 1.0000002, z: 1}
+    - name: Thigh_R_U
+      parentName: Thigh_R
+      position: {x: -0.12434542, y: 0.005353868, z: 0.0182891}
+      rotation: {x: -0.70203096, y: -0.023842584, z: -0.05593458, w: 0.709546}
+      scale: {x: 0.99999994, y: 0.99999994, z: 0.99999994}
+    - name: Calf_R
+      parentName: Thigh_R
+      position: {x: -0.428791, y: -0.000000029802322, z: 0.0000000037252903}
+      rotation: {x: 0.0000000311993, y: 0.000000044703473, z: 0.0057697804, w: 0.9999834}
+      scale: {x: 1, y: 1.0000001, z: 1}
+    - name: Foot_R
+      parentName: Calf_R
+      position: {x: -0.47376847, y: 0, z: 0.0000000037252903}
+      rotation: {x: 0.14000794, y: -0.06559319, z: 0.07068149, w: 0.9854438}
+      scale: {x: 1.0000001, y: 1.0000002, z: 0.99999994}
+    - name: Toe_0_L 1
+      parentName: Foot_R
+      position: {x: -0.07507511, y: 0.07286826, z: 0.0000000041909516}
+      rotation: {x: 0.000000029802319, y: 0.000000059604638, z: -0.7358373, w: 0.6771584}
+      scale: {x: 0.9999997, y: 0.9999997, z: 1.0000001}
+    - name: Bip001 R Toe0Nub
+      parentName: Toe_0_L 1
+      position: {x: -0.102095455, y: 0, z: -2.3283064e-10}
+      rotation: {x: 7.372575e-18, y: 0.0000000019790605, z: -0.0000000037252903, w: 1}
+      scale: {x: 1, y: 1.0000001, z: 1}
+    - name: Calf_L_D 1
+      parentName: Calf_R
+      position: {x: -0.27852947, y: -0.037330538, z: 0.0045932606}
+      rotation: {x: -0.702429, y: -0.0031869845, z: -0.043244977, w: 0.71043175}
+      scale: {x: 1, y: 1.0000001, z: 0.99999994}
+    - name: Calf_L_U 1
+      parentName: Calf_R
+      position: {x: -0.055946052, y: -0.03369659, z: -0.0012570582}
+      rotation: {x: -0.702318, y: 0.012902842, z: -0.026961368, w: 0.71123564}
+      scale: {x: 1.0000002, y: 1.0000004, z: 1}
+    - name: Thigh_R_D
+      parentName: Thigh_R
+      position: {x: -0.2779317, y: 0.007390678, z: -0.0001503788}
+      rotation: {x: -0.70242643, y: 0.0037722471, z: -0.027999725, w: 0.71119547}
+      scale: {x: 1, y: 1, z: 0.99999994}
+    - name: Thigh_L
+      parentName: Spine_01
+      position: {x: 0.10664272, y: -0.012129195, z: 0.06693955}
+      rotation: {x: -0.017161138, y: -0.99664545, z: 0.01195642, w: -0.07912265}
+      scale: {x: 1.0000001, y: 1.0000001, z: 1.0000001}
+    - name: Calf_L
+      parentName: Thigh_L
+      position: {x: -0.42879105, y: 0, z: -0.000000007450581}
+      rotation: {x: -0.000000011990778, y: 0.000000029802322, z: 0.005769672, w: 0.99998343}
+      scale: {x: 1.0000004, y: 1.0000004, z: 1.0000002}
+    - name: Foot_L
+      parentName: Calf_L
+      position: {x: -0.47376853, y: -0.000000059604645, z: -0.000000007450581}
+      rotation: {x: -0.09574654, y: 0.077613495, z: 0.016655838, w: 0.99223554}
+      scale: {x: 1.0000005, y: 1.0000001, z: 1.0000002}
+    - name: Toe_0_L
+      parentName: Foot_L
+      position: {x: -0.07507512, y: 0.07286826, z: 0.0000000037252903}
+      rotation: {x: 0.000000111758695, y: 0.00000014156102, z: -0.6929594, w: 0.7209767}
+      scale: {x: 0.9999998, y: 0.9999998, z: 0.9999998}
+    - name: Bip001 L Toe0Nub
+      parentName: Toe_0_L
+      position: {x: -0.102095455, y: -0.0000000037252903, z: 0}
+      rotation: {x: 0, y: 0, z: 1, w: 6.123234e-17}
+      scale: {x: -1, y: -1, z: -1}
+    - name: Calf_L_D
+      parentName: Calf_L
+      position: {x: -0.2394512, y: -0.032128453, z: 0.019547584}
+      rotation: {x: -0.7158986, y: 0.031611234, z: -0.008182544, w: 0.6974404}
+      scale: {x: 1.0000002, y: 1.0000001, z: 1}
+    - name: Calf_L_U
+      parentName: Calf_L
+      position: {x: -0.043427974, y: -0.03413537, z: 0.0179722}
+      rotation: {x: -0.7165302, y: 0.0097143445, z: -0.029496567, w: 0.69686437}
+      scale: {x: 0.99999994, y: 1.0000004, z: 1.0000004}
+    - name: Thigh_L_D
+      parentName: Thigh_L
+      position: {x: -0.27655143, y: 0.007279992, z: 0.0024030805}
+      rotation: {x: -0.71509886, y: 0.046306565, z: 0.014189903, w: 0.6973436}
+      scale: {x: 1.0000002, y: 1.0000001, z: 1.0000001}
+    - name: Thigh_L_U
+      parentName: Thigh_L
+      position: {x: -0.13912684, y: 0.006055534, z: -0.0053723417}
+      rotation: {x: -0.71598005, y: 0.029699143, z: -0.0019968492, w: 0.69748586}
+      scale: {x: 1.0000005, y: 1.0000005, z: 1.0000002}
+    - name: Spine_02
+      parentName: Spine_01
+      position: {x: -0.12061095, y: -0.00005042553, z: -0.000018626451}
+      rotation: {x: 0.0007062761, y: 0.00049408333, z: -0.033130594, w: -0.9994507}
+      scale: {x: 1.0000004, y: 1.0000002, z: 1.0000001}
+    - name: Spine_03
+      parentName: Spine_02
+      position: {x: -0.068384886, y: -0.0001693368, z: -0.00001597777}
+      rotation: {x: 0.0011173486, y: 0.0006086826, z: 0.14088519, w: 0.9900251}
+      scale: {x: 0.9999998, y: 0.99999994, z: 0.99999994}
+    - name: Neck_01
+      parentName: Spine_03
+      position: {x: -0.28208268, y: 0.0156078935, z: 0.000000059604645}
+      rotation: {x: -0.000000013853424, y: 0.00000085163634, z: -0.30897593, w: 0.9510699}
+      scale: {x: 1.0000002, y: 1.0000005, z: 1.0000004}
+    - name: Head
+      parentName: Neck_01
+      position: {x: -0.06515503, y: 0, z: 0}
+      rotation: {x: -0.0042186975, y: 0.009603456, z: 0.00037920475, w: -0.9999449}
+      scale: {x: 1.0000001, y: 1.0000001, z: 1}
+    - name: Bip001 HeadNub
+      parentName: Head
+      position: {x: -0.21447515, y: 0.000000014901161, z: 0}
+      rotation: {x: -2.3283064e-10, y: 0.0000000018626451, z: 4.3368087e-19, w: 1}
+      scale: {x: 1, y: 1, z: 1}
+    - name: Clavicle_R
+      parentName: Neck_01
+      position: {x: 0.068069816, y: 0.009200454, z: -0.047146007}
+      rotation: {x: 0.56447047, y: 0.22542734, z: 0.76320386, w: -0.21926123}
+      scale: {x: 1.0000005, y: 1.0000007, z: 1.0000001}
+    - name: UpperArm_R
+      parentName: Clavicle_R
+      position: {x: -0.092243135, y: 0.000000029802322, z: 0}
+      rotation: {x: 0.24885638, y: 0.13829304, z: 0.013159745, w: -0.95852613}
+      scale: {x: 1.0000006, y: 1.0000001, z: 1.0000004}
+    - name: Forearm_R
+      parentName: UpperArm_R
+      position: {x: -0.29423475, y: 0, z: 0}
+      rotation: {x: 0.0025171777, y: -0.018433563, z: 0.030652277, w: 0.999357}
+      scale: {x: 0.9999998, y: 1.0000001, z: 1.0000001}
+    - name: Hand_R
+      parentName: Forearm_R
+      position: {x: -0.24826986, y: 0, z: -0.000000029802322}
+      rotation: {x: -0.7426057, y: 0.061817303, z: 0.047265932, w: -0.6651928}
+      scale: {x: 1, y: 1.0000004, z: 0.99999994}
+    - name: R Finger1
+      parentName: Hand_R
+      position: {x: -0.06928593, y: 0.0066126585, z: 0.021980047}
+      rotation: {x: -0.03520636, y: -0.053574666, z: -0.043212138, w: 0.9970071}
+      scale: {x: 1.0000001, y: 1.0000001, z: 1}
+    - name: R Finger11
+      parentName: R Finger1
+      position: {x: -0.019493759, y: 0.000000029802322, z: 0.000000059604645}
+      rotation: {x: 0.013029635, y: 0.024165187, z: 0.016672023, w: 0.9994841}
+      scale: {x: 1.0000002, y: 1, z: 0.9999998}
+    - name: R Finger12
+      parentName: R Finger11
+      position: {x: -0.025734663, y: 0.000000029802322, z: 0.000000059604645}
+      rotation: {x: -0.00000012479718, y: 0.00000008940694, z: -0.0017809205, w: 0.99999845}
+      scale: {x: 1, y: 1.0000002, z: 1.0000002}
+    - name: Bip001 R Finger1Nub
+      parentName: R Finger12
+      position: {x: -0.025136948, y: 0.000000029802322, z: 0}
+      rotation: {x: -0.000000007450581, y: -4.562165e-25, z: 1, w: -6.123234e-17}
+      scale: {x: -1, y: -1, z: -1}
+    - name: R Finger0
+      parentName: Hand_R
+      position: {x: -0.009818733, y: 0.021130174, z: 0.03618306}
+      rotation: {x: -0.34525517, y: 0.3245436, z: 0.13224901, w: 0.8706208}
+      scale: {x: 1.0000002, y: 0.9999997, z: 0.99999994}
+    - name: R Finger01
+      parentName: R Finger0
+      position: {x: -0.019686416, y: -0.000000059604645, z: 0}
+      rotation: {x: -0.000000059604623, y: 0.000000029802312, z: -0.036159877, w: 0.9993461}
+      scale: {x: 1.0000006, y: 1.0000004, z: 1.0000004}
+    - name: R Finger02
+      parentName: R Finger01
+      position: {x: -0.0196864, y: 0, z: 0.000000029802322}
+      rotation: {x: 0.00000003279203, y: -0.00000005653112, z: -0.03203467, w: 0.9994868}
+      scale: {x: 0.99999994, y: 1, z: 1}
+    - name: Bip001 R Finger0Nub
+      parentName: R Finger02
+      position: {x: -0.01968646, y: 0.00000011920929, z: -0.000000059604645}
+      rotation: {x: 0.000000029802326, y: -0.000000022351742, z: 1, w: 6.049016e-16}
+      scale: {x: -0.9999999, y: -1, z: -1}
+    - name: R Finger3
+      parentName: Hand_R
+      position: {x: -0.068743944, y: 0.005196005, z: -0.021653831}
+      rotation: {x: 0.04261382, y: -0.05030694, z: -0.02849071, w: 0.99741745}
+      scale: {x: 1.0000004, y: 1.0000002, z: 1}
+    - name: R Finger31
+      parentName: R Finger3
+      position: {x: -0.019063711, y: -0.000000029802322, z: 0}
+      rotation: {x: -0.00000022724257, y: 0.0000002533196, z: -0.0410886, w: 0.9991555}
+      scale: {x: 1.0000001, y: 1.0000002, z: 1}
+    - name: R Finger32
+      parentName: R Finger31
+      position: {x: -0.025264204, y: -0.000000029802322, z: 0}
+      rotation: {x: -0.00000007532071, y: -0.000000011175871, z: 0.018991932, w: 0.99981964}
+      scale: {x: 1, y: 1, z: 0.99999994}
+    - name: Bip001 R Finger3Nub
+      parentName: R Finger32
+      position: {x: -0.024406672, y: 0.000000029802322, z: 0}
+      rotation: {x: 0, y: 0, z: 1, w: -6.123234e-17}
+      scale: {x: -1.0000001, y: -1.0000001, z: -1.0000001}
+    - name: R Finger2
+      parentName: Hand_R
+      position: {x: -0.07009739, y: -0.0014868975, z: -0.00082850456}
+      rotation: {x: 0.00034427634, y: 0.002548735, z: -0.021166155, w: 0.9997727}
+      scale: {x: 1.0000002, y: 1, z: 0.9999998}
+    - name: R Finger21
+      parentName: R Finger2
+      position: {x: -0.032127023, y: 0.000000029802322, z: 0.000000059604645}
+      rotation: {x: -0.000000075291574, y: 0.0000015522811, z: -0.04036609, w: 0.999185}
+      scale: {x: 1.0000004, y: 1.0000002, z: 0.9999998}
+    - name: R Finger22
+      parentName: R Finger21
+      position: {x: -0.02756095, y: 0, z: -0.000000059604645}
+      rotation: {x: 0.00000010401452, y: -0.0000002709163, z: 0.041164663, w: 0.9991524}
+      scale: {x: 0.9999996, y: 1.0000002, z: 1}
+    - name: Bip001 R Finger2Nub
+      parentName: R Finger22
+      position: {x: -0.022485226, y: 0, z: 0.000000059604645}
+      rotation: {x: 0.0000000037252899, y: 0.000000014901159, z: 1, w: 5.721202e-18}
+      scale: {x: -1.0000001, y: -1.0000001, z: -1.0000001}
+    - name: R Finger4
+      parentName: Hand_R
+      position: {x: -0.061009377, y: 0.017361522, z: -0.039856255}
+      rotation: {x: 0.002519577, y: -0.06792492, z: -0.012835269, w: 0.99760467}
+      scale: {x: 1.0000005, y: 1.0000004, z: 1.0000001}
+    - name: R Finger41
+      parentName: R Finger4
+      position: {x: -0.0196864, y: 0, z: 0}
+      rotation: {x: -0.00000003911553, y: -0.00000014156096, z: -0.04117486, w: 0.99915195}
+      scale: {x: 0.9999998, y: 0.99999994, z: 0.9999998}
+    - name: R Finger42
+      parentName: R Finger41
+      position: {x: -0.01262939, y: 0, z: 0.000000059604645}
+      rotation: {x: -0.00000015557923, y: 0.00000016658934, z: -0.04118182, w: 0.9991517}
+      scale: {x: 0.9999998, y: 1, z: 1.0000001}
+    - name: Bip001 R Finger4Nub
+      parentName: R Finger42
+      position: {x: -0.014070451, y: 0.000000029802322, z: 0}
+      rotation: {x: -4.562165e-25, y: -0.0000000074505815, z: 1, w: 6.123234e-17}
+      scale: {x: -1, y: -0.99999994, z: -0.9999999}
+    - name: Clavicle_L
+      parentName: Neck_01
+      position: {x: 0.06355941, y: 0.00919655, z: 0.053070873}
+      rotation: {x: -0.53168446, y: -0.22057047, z: 0.7868524, w: -0.2225389}
+      scale: {x: 1.0000001, y: 1.0000006, z: 1}
+    - name: UpperArm_L
+      parentName: Clavicle_L
+      position: {x: -0.092243105, y: -0.000000029802322, z: 0}
+      rotation: {x: 0.23951538, y: 0.13135862, z: 0.03441049, w: 0.9613497}
+      scale: {x: 1.0000001, y: 1, z: 1}
+    - name: Forearm_L
+      parentName: UpperArm_L
+      position: {x: -0.29423475, y: 0.000000059604645, z: -0.000000029802322}
+      rotation: {x: -0.0025530152, y: 0.018696245, z: 0.03438447, w: 0.9992305}
+      scale: {x: 1.0000002, y: 1, z: 1.0000006}
+    - name: Hand_L
+      parentName: Forearm_L
+      position: {x: -0.24826986, y: 0, z: 0.000000029802322}
+      rotation: {x: 0.7426058, y: -0.06181736, z: 0.047266033, w: -0.6651926}
+      scale: {x: 1.0000006, y: 1.000001, z: 1.0000008}
+    - name: L Finger0
+      parentName: Hand_L
+      position: {x: -0.009818673, y: 0.021130145, z: -0.036183015}
+      rotation: {x: 0.34954503, y: -0.32881868, z: 0.119323865, w: 0.86917114}
+      scale: {x: 1, y: 1.0000001, z: 1.0000002}
+    - name: L Finger01
+      parentName: L Finger0
+      position: {x: -0.0196864, y: -0.000000029802322, z: -0.000000014901161}
+      rotation: {x: 0.000000029802319, y: -0.000000059604638, z: -0.036160048, w: 0.999346}
+      scale: {x: 1.0000001, y: 0.99999994, z: 0.99999994}
+    - name: L Finger02
+      parentName: L Finger01
+      position: {x: -0.01968646, y: 0.000000014901161, z: -0.000000014901161}
+      rotation: {x: 0.00000011727406, y: 0.000000003257472, z: -0.032034557, w: 0.9994868}
+      scale: {x: 1, y: 0.99999994, z: 1.0000001}
+    - name: Bip001 L Finger0Nub
+      parentName: L Finger02
+      position: {x: -0.0196864, y: -0.000000018626451, z: 0.000000014901161}
+      rotation: {x: -0.000000013737009, y: 5.117435e-17, z: -0.0000000037252907, w: 1}
+      scale: {x: 0.99999994, y: 0.99999994, z: 1}
+    - name: L Finger3
+      parentName: Hand_L
+      position: {x: -0.068743944, y: 0.0051959753, z: 0.021653831}
+      rotation: {x: -0.04261371, y: 0.0503068, z: -0.028490655, w: 0.99741745}
+      scale: {x: 0.99999994, y: 0.99999994, z: 0.99999994}
+    - name: L Finger31
+      parentName: L Finger3
+      position: {x: -0.01906377, y: 0, z: 0.000000029802322}
+      rotation: {x: 0.00000022351736, y: -0.00000011175868, z: -0.04108447, w: 0.9991557}
+      scale: {x: 1.0000001, y: 0.9999998, z: 1.0000005}
+    - name: L Finger32
+      parentName: L Finger31
+      position: {x: -0.025264204, y: 0.000000044703484, z: 0}
+      rotation: {x: 0.0000000745058, y: 0.000000016763805, z: 0.018991916, w: 0.9998197}
+      scale: {x: 1, y: 1, z: 1.0000002}
+    - name: Bip001 L Finger3Nub
+      parentName: L Finger32
+      position: {x: -0.024406672, y: 0.000000029802322, z: 0}
+      rotation: {x: 0.0000000074505815, y: 0.0000000037252907, z: 0.000000014901163,
+        w: 1}
+      scale: {x: 0.99999994, y: 0.9999999, z: 0.99999994}
+    - name: L Finger1
+      parentName: Hand_L
+      position: {x: -0.06928587, y: 0.0066126585, z: -0.021980047}
+      rotation: {x: -0.00039783114, y: -0.022076258, z: 0.000008817761, w: 0.9997563}
+      scale: {x: 1, y: 0.9999997, z: 1}
+    - name: L Finger11
+      parentName: L Finger1
+      position: {x: -0.019493759, y: -0.000000029802322, z: 0}
+      rotation: {x: -0.0000001330917, y: 0.0000001918523, z: -0.040520053, w: 0.9991787}
+      scale: {x: 1.0000004, y: 0.99999994, z: 1.0000005}
+    - name: L Finger12
+      parentName: L Finger11
+      position: {x: -0.025734782, y: -0.000000029802322, z: 0}
+      rotation: {x: -0.00000021611437, y: 0.000000044247713, z: -0.0017809788, w: 0.99999845}
+      scale: {x: 1, y: 1, z: 1.0000002}
+    - name: Bip001 L Finger1Nub
+      parentName: L Finger12
+      position: {x: -0.025137007, y: 0.000000029802322, z: -0.000000029802322}
+      rotation: {x: -0.0000000037252903, y: -0.0000000037252899, z: -1.3877786e-17,
+        w: 1}
+      scale: {x: 1.0000001, y: 1, z: 1}
+    - name: L Finger2
+      parentName: Hand_L
+      position: {x: -0.07009733, y: -0.0014868975, z: 0.00082856417}
+      rotation: {x: -0.00034418693, y: -0.0025488355, z: -0.021166177, w: 0.99977267}
+      scale: {x: 1, y: 0.9999998, z: 0.99999994}
+    - name: L Finger21
+      parentName: L Finger2
+      position: {x: -0.032127023, y: 0, z: 0}
+      rotation: {x: 0.0000002180167, y: 0.00000010151411, z: -0.040364977, w: 0.999185}
+      scale: {x: 1, y: 1, z: 1.0000001}
+    - name: L Finger22
+      parentName: L Finger21
+      position: {x: -0.02756095, y: 0, z: 0}
+      rotation: {x: -0.0000000036575312, y: -0.00000035738736, z: 0.041167054, w: 0.99915236}
+      scale: {x: 1.0000004, y: 1, z: 1.0000005}
+    - name: Bip001 L Finger2Nub
+      parentName: L Finger22
+      position: {x: -0.022485316, y: 0.000000029802322, z: 0.000000029802322}
+      rotation: {x: 0.000000005122274, y: 9.313226e-10, z: -4.77049e-18, w: 1}
+      scale: {x: 1, y: 1, z: 1.0000001}
+    - name: L Finger4
+      parentName: Hand_L
+      position: {x: -0.061009288, y: 0.017361462, z: 0.039856344}
+      rotation: {x: -0.0025191896, y: 0.06792474, z: -0.012835336, w: 0.9976048}
+      scale: {x: 1.0000001, y: 1, z: 1.0000002}
+    - name: L Finger41
+      parentName: L Finger4
+      position: {x: -0.0196864, y: 0.000000029802322, z: 0}
+      rotation: {x: -0.000000079628045, y: -0.00000040233115, z: -0.04118499, w: 0.9991516}
+      scale: {x: 1.0000001, y: 0.9999998, z: 1.0000001}
+    - name: L Finger42
+      parentName: L Finger41
+      position: {x: -0.01262933, y: -0.000000014901161, z: 0.000000059604645}
+      rotation: {x: -0.000000010310232, y: -0.00000017645006, z: -0.04118424, w: 0.9991516}
+      scale: {x: 1.0000002, y: 1.0000004, z: 1.0000005}
+    - name: Bip001 L Finger4Nub
+      parentName: L Finger42
+      position: {x: -0.0140705705, y: 0, z: 0}
+      rotation: {x: -0.000000013038516, y: -0.0000000074505797, z: -9.714451e-17,
+        w: 1}
+      scale: {x: 1.0000001, y: 1, z: 1.0000001}
+    - name: Chest_L
+      parentName: Spine_03
+      position: {x: -0.07969308, y: 0.043155223, z: 0.07982564}
+      rotation: {x: -0.44818467, y: 0.5518917, z: 0.62623435, w: -0.3199637}
+      scale: {x: 0.99999994, y: 1.0000002, z: 1.0000002}
+    - name: Chest_R
+      parentName: Spine_03
+      position: {x: -0.0785054, y: 0.044417083, z: -0.07468629}
+      rotation: {x: -0.29696175, y: 0.63627446, z: 0.5376407, w: -0.46680945}
+      scale: {x: 1, y: 1.0000002, z: 0.99999994}
+    - name: Pelvis_B
+      parentName: Pelvis
+      position: {x: -0.0026147366, y: -0.07784091, z: 0.00000029802322}
+      rotation: {x: 0.85291386, y: 0.5220517, z: -0.00000008940696, w: 0.0000015795229}
+      scale: {x: 1.0616765, y: 1.0616771, z: 1.0616766}
+    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: 3
+  humanoidOversampling: 1
+  avatarSetup: 1
+  additionalBone: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 77 - 0
Assets/GameMain/Meshes/Player/cloth.mat

@@ -0,0 +1,77 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: cloth
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: 
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: -1
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 1, g: 0.048720345, b: 0, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/cloth.mat.meta

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

+ 77 - 0
Assets/GameMain/Meshes/Player/hair.mat

@@ -0,0 +1,77 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: hair
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: 
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: -1
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 0, g: 0, b: 0, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/hair.mat.meta

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

+ 62 - 1
Assets/GameMain/Meshes/Player/kuaidiyuan_5.FBX.meta

@@ -6,6 +6,9 @@ ModelImporter:
   - first:
       74: 1827226128182048838
     second: Take 001
+  - first:
+      74: -5405653242291790180
+    second: walk
   externalObjects:
   - first:
       type: UnityEngine:Material
@@ -38,7 +41,65 @@ ModelImporter:
     animationWrapMode: 0
     extraExposedTransformPaths: []
     extraUserProperties: []
-    clipAnimations: []
+    clipAnimations:
+    - serializedVersion: 16
+      name: Take 001
+      takeName: Take 001
+      internalID: 0
+      firstFrame: 0
+      lastFrame: 322
+      wrapMode: 0
+      orientationOffsetY: 0
+      level: 0
+      cycleOffset: 0
+      loop: 0
+      hasAdditiveReferencePose: 0
+      loopTime: 0
+      loopBlend: 0
+      loopBlendOrientation: 0
+      loopBlendPositionY: 0
+      loopBlendPositionXZ: 0
+      keepOriginalOrientation: 0
+      keepOriginalPositionY: 1
+      keepOriginalPositionXZ: 0
+      heightFromFeet: 0
+      mirror: 0
+      bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
+      curves: []
+      events: []
+      transformMask: []
+      maskType: 3
+      maskSource: {instanceID: 0}
+      additiveReferencePoseFrame: 0
+    - serializedVersion: 16
+      name: walk
+      takeName: Take 001
+      internalID: 0
+      firstFrame: 0
+      lastFrame: 23
+      wrapMode: 0
+      orientationOffsetY: 0
+      level: 0
+      cycleOffset: 0
+      loop: 0
+      hasAdditiveReferencePose: 0
+      loopTime: 1
+      loopBlend: 0
+      loopBlendOrientation: 0
+      loopBlendPositionY: 0
+      loopBlendPositionXZ: 0
+      keepOriginalOrientation: 0
+      keepOriginalPositionY: 1
+      keepOriginalPositionXZ: 0
+      heightFromFeet: 0
+      mirror: 0
+      bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
+      curves: []
+      events: []
+      transformMask: []
+      maskType: 3
+      maskSource: {instanceID: 0}
+      additiveReferencePoseFrame: 0
     isReadable: 0
   meshes:
     lODScreenPercentages: []

+ 77 - 0
Assets/GameMain/Meshes/Player/skin.mat

@@ -0,0 +1,77 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: skin
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ShaderKeywords: 
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: -1
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _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}
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 1, g: 0.9447574, b: 0.8066038, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/GameMain/Meshes/Player/skin.mat.meta

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

BIN
Assets/GameMain/Meshes/Player/女.FBX


Різницю між файлами не показано, бо вона завелика
+ 1376 - 0
Assets/GameMain/Meshes/Player/女.FBX.meta


Різницю між файлами не показано, бо вона завелика
+ 1061 - 5
Assets/GameMain/Scenes/CustomRole.unity


+ 23 - 0
Assets/GameMain/Scripts/Entity/EntityData/RoleCustomBoneData.cs

@@ -0,0 +1,23 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+namespace MetaClient
+{
+    public class RoleCustomData
+    {
+        public Dictionary<int, PartData> bodyList;
+        public Dictionary<int, PartData> faceList;
+    }
+
+    public class PartData
+    {
+        public EditableBodyPart part;
+
+        public ModifyType modifyType;
+
+        public float floatValue;
+
+        public Vector3 vecValue;
+    }
+}

+ 11 - 0
Assets/GameMain/Scripts/Entity/EntityData/RoleCustomBoneData.cs.meta

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

+ 49 - 0
Assets/GameMain/Scripts/Event/CustomRoleBodyEventArgs.cs

@@ -0,0 +1,49 @@
+using GameFramework;
+using GameFramework.Event;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityGameFramework.Runtime;
+
+namespace MetaClient
+{
+    /// <summary>
+    /// 自定义角色面部事件
+    /// </summary>
+    public class CustomRoleBodyEventArgs : GameEventArgs
+    {
+        /// <summary>
+        /// 打开界面成功事件编号。
+        /// </summary>
+        public static readonly int EventId = typeof(CustomRoleBodyEventArgs).GetHashCode();
+
+        /// <summary>
+        /// 获取打开界面成功事件编号。
+        /// </summary>
+        public override int Id
+        {
+            get
+            {
+                return EventId;
+            }
+        }
+
+        public EditableBodyPart Part { get; set; }
+        public Vector3 ChangeValue { get; set; }
+
+        public static CustomRoleBodyEventArgs Create(EditableBodyPart part, Vector3 value)
+        {
+            CustomRoleBodyEventArgs customRoleFaceEvent = ReferencePool.Acquire<CustomRoleBodyEventArgs>();
+            customRoleFaceEvent.Part = part;
+            customRoleFaceEvent.ChangeValue = value;
+            return customRoleFaceEvent;
+        }
+
+        public override void Clear()
+        {
+
+        }
+
+    }
+}
+

+ 11 - 0
Assets/GameMain/Scripts/Event/CustomRoleBodyEventArgs.cs.meta

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

+ 39 - 3
Assets/GameMain/Scripts/Game/CustomRole/CustomManager.cs

@@ -3,6 +3,7 @@ using System.Collections;
 using System.Collections.Generic;
 using GameFramework.Event;
 using UnityEngine;
+using HumanoidEditor;
 
 namespace MetaClient
 {
@@ -10,6 +11,10 @@ namespace MetaClient
     {
         public static CustomManager Instance;
 
+        public RoleCustomData bodyData;
+        public const float valueFloating = 1f;
+        public CustomRoleController testPlayer = null;
+
         private void Awake()
         {
             Instance = this;
@@ -17,17 +22,48 @@ namespace MetaClient
 
         public void Init()
         {
-            GameEntry.Event.Subscribe(CustomRoleFaceEventArgs.EventId, UpdateFace);
+            GameEntry.Event.Subscribe(CustomRoleBodyEventArgs.EventId, UpdateBody);
+
+            //bodyData = new RoleCustomData();
+            //bodyData.bonePos = new int[6];
+            //bodyData.boneScale = new float[6];
+            //for (int i = 0; i < 6; i++)
+            //{
+            //    bodyData.bonePos[i] = i;
+            //    bodyData.boneScale[i] = 1;
+            //}
+
+            //CustomRoleUtility.ShowFile();
+
+            testPlayer = GameObject.Find("biaozhunnv").GetComponent<CustomRoleController>();
         }
 
         public void Clear()
         {
-            GameEntry.Event.Unsubscribe(CustomRoleFaceEventArgs.EventId, UpdateFace);
+            GameEntry.Event.Unsubscribe(CustomRoleBodyEventArgs.EventId, UpdateBody);
         }
 
-        private void UpdateFace(object sender, GameEventArgs e)
+        private void UpdateBody(object sender, GameEventArgs e)
         {
+            CustomRoleBodyEventArgs crf = (CustomRoleBodyEventArgs)e;
+            if (crf != null)
+            {
+                //bodyData.boneScale[(int)crf.Part] = 1 + (crf.ChangeValue.x - 0.5f) * valueFloating;
+                //if (testPlayer == null)
+                //{
+                //    testPlayer = GameObject.Find("mu").GetComponent<CustomRoleController>();
+                //}
+                //if (testPlayer != null)
+                //{
+                //    testPlayer.UpdateBoneScale(crf.Part, bodyData.boneScale[(int)crf.Part]);
+                //}
+            }
+        }
 
+        public float GetBodyBoneValue(EditableBodyPart part)
+        {
+            //return 0.5f + (bodyData.boneScale[(int)part] - 1) / valueFloating;
+            return 0;
         }
     }
 }

+ 53 - 0
Assets/GameMain/Scripts/Game/CustomRole/CustomRoleController.cs

@@ -0,0 +1,53 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class CustomRoleController : MonoBehaviour
+{
+    private Animator ani;
+
+    private void Start()
+    {
+        ani = GetComponent<Animator>();
+        var t1 = ani.GetBoneTransform(HumanBodyBones.LeftHand);
+        var t2 = ani.GetBoneTransform(HumanBodyBones.LeftFoot);
+
+        Debug.Log(t1.name + " " + t1.position);
+        Debug.Log(t2.name + " " + t2.position);
+    }
+
+    public void UpdateBoneScale(EditableBodyPart part,float value)
+    {
+        CustomRoleUtility.UpdateBoneScale(ani, part, value);
+    }
+
+    public List<Transform> GetBonesTrans()
+    {
+        var bonesTrans = new List<Transform>();
+        //foreach (var item in Enum.GetValues(typeof(HumanBodyBones)))
+        //{
+        //    if(item == null)
+        //    {
+        //        continue;
+        //    }
+        //    var trans = ani.GetBoneTransform((HumanBodyBones)item);
+        //    if(trans)
+        //    {
+        //        bonesTrans.Add(trans);
+        //    }
+        //}
+        Debug.Log(Enum.GetValues(typeof(HumanBodyBones)).Length);
+        for (int i = 0; i < Enum.GetValues(typeof(HumanBodyBones)).Length - 1; i++)
+        {
+            Debug.Log((HumanBodyBones)i + "  " + i);
+            var trans = ani.GetBoneTransform((HumanBodyBones)i);
+            if (trans)
+            {
+                bonesTrans.Add(trans);
+            }
+        }
+
+        return bonesTrans;
+    }
+}

+ 11 - 0
Assets/GameMain/Scripts/Game/CustomRole/CustomRoleController.cs.meta

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

+ 2 - 1
Assets/GameMain/Scripts/Procedure/ProcedureCustomRole.cs

@@ -41,7 +41,8 @@ namespace MetaClient
             base.OnEnter(procedureOwner);
             m_SelectComplete = false;
             Log.Info("开始捏角色!");
-            
+            CustomManager.Instance.Init();
+
             GameEntry.Event.Subscribe(OpenUIFormSuccessEventArgs.EventId, OnOpenUIFormSuccess);
             GameEntry.UI.OpenUIForm(UIFormId.CustomRoleForm, this);
         }

+ 68 - 2
Assets/GameMain/Scripts/UI/CustomRoleForm.cs

@@ -5,13 +5,24 @@
 // Feedback: mailto:ellan@gameframework.cn
 //------------------------------------------------------------
 
+using System.Collections.Generic;
 using UnityEngine;
+using UnityEngine.UI;
 using UnityGameFramework.Runtime;
 
 namespace MetaClient
 {
     public class CustomRoleForm : UGuiForm
     {
+        public Text curShow;
+        public Slider curSlider;
+        public Button[] btnList;
+        public GameObject point;
+        private EditableBodyPart curSelect = EditableBodyPart.None;
+
+        private List<Transform> bonesTrans = new List<Transform>();
+        private List<GameObject> pointList = new List<GameObject>();
+
 #if UNITY_2017_3_OR_NEWER
         protected override void OnOpen(object userData)
 #else
@@ -19,6 +30,29 @@ namespace MetaClient
 #endif
         {
             base.OnOpen(userData);
+
+            RefreshBtn();
+
+            bonesTrans = CustomManager.Instance.testPlayer.GetBonesTrans();
+            for (int i = 0; i < bonesTrans.Count; i++)
+            {
+                var newpoint = GameObject.Instantiate(point,transform);
+                pointList.Add(newpoint);
+            }
+        }
+
+        private void Start()
+        {
+            RefreshBtn();
+        }
+
+        private void RefreshBtn()
+        {
+            for (int i = 0; i < btnList.Length; i++)
+            {
+                var btn = btnList[i];
+                btn.GetComponentInChildren<Text>().text = ((EditableBodyPart)i).ToString();
+            }
         }
 
 #if UNITY_2017_3_OR_NEWER
@@ -30,9 +64,41 @@ namespace MetaClient
             base.OnClose(isShutdown, userData);
         }
 
-        public void ClickFaceChangeBtn()
+        public void ClickFaceChangeBtn(int part)
+        {
+            curSelect = (EditableBodyPart)part;
+            RefreshSliderValue();
+        }
+
+        public void Update()
+        {
+            UpdateCustomBodyBoneTransShow();
+        }
+
+        private void RefreshSliderValue()
+        {
+            curShow.text = curSelect.ToString();
+            curSlider.value = CustomManager.Instance.GetBodyBoneValue(curSelect);
+        }
+
+        public void OnSliderValueChange(float value)
+        {
+            if(curSelect == EditableBodyPart.None)
+            {
+                return;
+            }
+            
+            GameEntry.Event.Fire(this, CustomRoleBodyEventArgs.Create(curSelect, new Vector3(value, 0, 0)));
+        }
+
+        private void UpdateCustomBodyBoneTransShow()
         {
-            GameEntry.Event.Fire(this, CustomRoleFaceEventArgs.Create(EditableFacePart.eye, new Vector3(1,0,0)));
+            for (int i = 0; i < bonesTrans.Count; i++)
+            {
+                var point = pointList[i];
+                var pos = Camera.main.WorldToScreenPoint(bonesTrans[i].position);
+                point.transform.position = pos;
+            }
         }
     }
 }

+ 177 - 3
Assets/GameMain/Scripts/Utility/CustomRoleUtility.cs

@@ -1,5 +1,8 @@
-using System.Collections;
+using System;
+using System.Collections;
 using System.Collections.Generic;
+using System.IO;
+using System.Linq;
 using UnityEngine;
 
 /// <summary>
@@ -17,10 +20,181 @@ public enum EditableFacePart
 /// </summary>
 public enum EditableBodyPart
 {
-
+    UpperArm,
+    LowerArm,
+    Hand,
+    UpperLeg,
+    LowerLeg,
+    Foot,
+    None
+}
+/// <summary>
+/// 编辑类型
+/// </summary>
+public enum ModifyType
+{
+    Length,//长
+    Width,//宽
+    Thick,//厚度
+    Angle,//角度
+    Color,//颜色
+    Sprite,//贴图
+    Height,//高度
 }
 
-public class CustomRoleUtility
+public static class CustomRoleUtility
 {
+    public static void UpdateBoneScale(Animator ani,EditableBodyPart part,float value)
+    {
+        Transform transL = null;
+        Transform transR = null;
+        Vector3 beforeScale = Vector3.one;
+        List<Transform> childList = new List<Transform>();
+        bool keepChildWorldScale = false;
+        switch (part)
+        {
+            case EditableBodyPart.UpperArm:
+                transL = ani.GetBoneTransform(HumanBodyBones.LeftUpperArm);
+                transR = ani.GetBoneTransform(HumanBodyBones.RightUpperArm);
+                keepChildWorldScale = true;
+                break;
+            case EditableBodyPart.LowerArm:
+                transL = ani.GetBoneTransform(HumanBodyBones.LeftLowerArm);
+                transR = ani.GetBoneTransform(HumanBodyBones.RightLowerArm);
+                break;
+            case EditableBodyPart.Hand:
+                transL = ani.GetBoneTransform(HumanBodyBones.LeftHand);
+                transR = ani.GetBoneTransform(HumanBodyBones.RightHand);
+                break;
+            case EditableBodyPart.UpperLeg:
+                transL = ani.GetBoneTransform(HumanBodyBones.LeftUpperLeg);
+                transR = ani.GetBoneTransform(HumanBodyBones.RightUpperLeg);
+                keepChildWorldScale = true;
+                break;
+            case EditableBodyPart.LowerLeg:
+                transL = ani.GetBoneTransform(HumanBodyBones.LeftLowerLeg);
+                transR = ani.GetBoneTransform(HumanBodyBones.RightLowerLeg);
+                break;
+            case EditableBodyPart.Foot:
+                transL = ani.GetBoneTransform(HumanBodyBones.LeftFoot);
+                transR = ani.GetBoneTransform(HumanBodyBones.RightFoot);
+                break;
+            case EditableBodyPart.None:
+                break;
+            default:
+                break;
+        }
+
+        if(transL != null)
+        {
+            beforeScale = transL.localScale;
+            var world_l = transL.lossyScale;
+            transL.SetLocalScaleX(transL.localScale.x * value / world_l.x);
+            transL.SetLocalScaleY(transL.localScale.y * value / world_l.y);
+            transL.SetLocalScaleZ(transL.localScale.z * value / world_l.z);
+
+            var lcount = transL.childCount;
+            for (int i = 0; i < lcount; i++)
+            {
+                childList.Add(transL.GetChild(i));
+            }
+        }
+        if(transR != null)
+        {
+            beforeScale = transR.localScale;
+            var world_r = transR.lossyScale;
+            transR.SetLocalScaleX(transR.localScale.x * value / world_r.x);
+            transR.SetLocalScaleY(transR.localScale.y * value / world_r.y);
+            transR.SetLocalScaleZ(transR.localScale.z * value / world_r.z);
+
+            var rcount = transR.childCount;
+            for (int i = 0; i < rcount; i++)
+            {
+                childList.Add(transR.GetChild(i));
+            }
+        }
+        if(!keepChildWorldScale)
+        {
+            return;
+        }
+        for (int i = 0; i < childList.Count; i++)
+        {
+            var childTrans = childList[i];
+            var oldScale = childTrans.localScale;
+            childTrans.SetLocalScaleX(oldScale.x * beforeScale.x / value);
+            childTrans.SetLocalScaleY(oldScale.y * beforeScale.y / value);
+            childTrans.SetLocalScaleZ(oldScale.z * beforeScale.z / value);
+        }
+    }
+
+    public static void ShowFile()
+    {
+        FileStream fs = File.Open("E:/key.key", FileMode.Open);
+        FileStream fsout = File.Open("E:/keyout9.key", FileMode.Create);
+        BinaryReader br = new BinaryReader(fs);
+        BinaryWriter bw = new BinaryWriter(fsout);
+        Byte[] byData = br.ReadBytes((int)fs.Length);
+
+        var t = "NKnFb79Sxk+4Xw284MQleA==";
+        var pid = "1639047545434X1016017";
+        fs.Close();
+        //var iv = new byte[16];
+        //var key = new byte[16];
+        //for (int i = 0; i < byData.Length; i++)
+        //{
+        //    if(i <= 15)
+        //    {
+        //        iv[i] = byData[i];
+        //        var ivx = byData[i].ToString("x");
+        //        Debug.Log(iv[i] + " : " + ivx);
+        //    }
+        //    else
+        //    {
+        //        key[i - 16] = byData[i];
+        //        var keyx = byData[i].ToString("x");
+        //        Debug.Log(key[i - 16] + " : " + keyx);
+        //    }
+        //}
+
+        //var str = DecryptStringFromBytes_Aes(byData, iv, key);
+        //Debug.Log("result" + str);
+
+        Debug.Log(byData.Length);
+
+        IList<byte> bData = new List<byte>();
+        string[] strHexs = new string[16];
+        int[] intData = {
+                245,
+                217,
+                174,
+                210,
+                90,
+                41,
+                167,
+                178,
+                110,
+                47,
+                158,
+                193,
+                35,
+                162,
+                230,
+                97
+            };
+        for (int i = 0; i < 16; i++)
+        {
+            int a = intData[i];
+            strHexs[i] = a.ToString("x");
+            //strHexs[i] = a.ToString();
+            Debug.Log(a + " : " + a.ToString("x"));
+        }
 
+        foreach (var item in strHexs)
+        {
+            Debug.Log(Convert.ToByte(item, 16));
+            bData.Add(Convert.ToByte(item, 16));
+        }
+        bw.Write(bData.ToArray());
+        fsout.Close();
+    }
 }

Різницю між файлами не показано, бо вона завелика
+ 2024 - 14
Assets/GameMain/UI/UIForms/CustomRoleForm.prefab


+ 8 - 0
Assets/HumanoidEditor.meta

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

BIN
Assets/HumanoidEditor/HE_Readme.pdf


+ 9 - 0
Assets/HumanoidEditor/HE_Readme.pdf.meta

@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 33473a67c48bc6140847a4d5fd65ac72
+timeCreated: 1532777384
+licenseType: Store
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
Assets/HumanoidEditor/HumanoidEditor.dll


+ 33 - 0
Assets/HumanoidEditor/HumanoidEditor.dll.meta

@@ -0,0 +1,33 @@
+fileFormatVersion: 2
+guid: a02b0ed082249e74eaf4c6f3b84b6420
+PluginImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  iconMap: {}
+  executionOrder: {}
+  defineConstraints: []
+  isPreloaded: 0
+  isOverridable: 0
+  isExplicitlyReferenced: 0
+  validateReferences: 1
+  platformData:
+  - first:
+      Any: 
+    second:
+      enabled: 1
+      settings: {}
+  - first:
+      Editor: Editor
+    second:
+      enabled: 0
+      settings:
+        DefaultValueInitialized: true
+  - first:
+      Windows Store Apps: WindowsStoreApps
+    second:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 9 - 0
Assets/HumanoidEditor/HumanoidEditorGUI.meta

@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 12f18a7eb32bb1e48b6dedcba4eadc97
+folderAsset: yes
+timeCreated: 1474341635
+licenseType: Store
+DefaultImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
Assets/HumanoidEditor/HumanoidEditorGUI/HumanoidEditorLogo.png


+ 119 - 0
Assets/HumanoidEditor/HumanoidEditorGUI/HumanoidEditorLogo.png.meta

@@ -0,0 +1,119 @@
+fileFormatVersion: 2
+guid: 35570797cc7989f4aaa698c242221386
+TextureImporter:
+  fileIDToRecycleName: {}
+  externalObjects: {}
+  serializedVersion: 6
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 1
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: -1
+    aniso: -1
+    mipBias: -100
+    wrapU: -1
+    wrapV: -1
+    wrapW: -1
+  nPOTScale: 1
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 0
+  spriteTessellationDetail: -1
+  textureType: 0
+  textureShape: 1
+  singleChannelComponent: 0
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  platformSettings:
+  - serializedVersion: 2
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+  - serializedVersion: 2
+    buildTarget: Standalone
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+  - serializedVersion: 2
+    buildTarget: Android
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+  - serializedVersion: 2
+    buildTarget: WebGL
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+  spritePackingTag: 
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

Різницю між файлами не показано, бо вона завелика
+ 1889 - 0
Assets/HumanoidEditor/HumanoidEditorGUI/PolybayEditorSkin.guiskin


+ 8 - 0
Assets/HumanoidEditor/HumanoidEditorGUI/PolybayEditorSkin.guiskin.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 7070054cc1eb1f34cbabfc6f05ad94bd
+timeCreated: 1474299321
+licenseType: Store
+NativeFormatImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
Assets/HumanoidEditor/HumanoidEditorGUI/save_Icon.png


+ 57 - 0
Assets/HumanoidEditor/HumanoidEditorGUI/save_Icon.png.meta

@@ -0,0 +1,57 @@
+fileFormatVersion: 2
+guid: 76617318a8f002f4ab69acbf180b1646
+timeCreated: 1474299342
+licenseType: Store
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  cubemapConvolution: 0
+  cubemapConvolutionSteps: 7
+  cubemapConvolutionExponent: 1.5
+  seamlessCubemap: 0
+  textureFormat: -1
+  maxTextureSize: 2048
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  rGBM: 0
+  compressionQuality: 50
+  allowsAlphaSplitting: 0
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+    outline: []
+  spritePackingTag: 
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
Assets/HumanoidEditor/HumanoidEditorGUI/save_active_Icon.png


+ 57 - 0
Assets/HumanoidEditor/HumanoidEditorGUI/save_active_Icon.png.meta

@@ -0,0 +1,57 @@
+fileFormatVersion: 2
+guid: 2e4559e0e996f7743aeba307a234e807
+timeCreated: 1474299338
+licenseType: Store
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  cubemapConvolution: 0
+  cubemapConvolutionSteps: 7
+  cubemapConvolutionExponent: 1.5
+  seamlessCubemap: 0
+  textureFormat: -1
+  maxTextureSize: 2048
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  rGBM: 0
+  compressionQuality: 50
+  allowsAlphaSplitting: 0
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+    outline: []
+  spritePackingTag: 
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
Assets/HumanoidEditor/HumanoidEditorGUI/xUp_Icon.png


+ 76 - 0
Assets/HumanoidEditor/HumanoidEditorGUI/xUp_Icon.png.meta

@@ -0,0 +1,76 @@
+fileFormatVersion: 2
+guid: 9facef3a8bb75d34eaa6a7d5fab58df8
+timeCreated: 1516846735
+licenseType: Store
+TextureImporter:
+  fileIDToRecycleName: {}
+  externalObjects: {}
+  serializedVersion: 4
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 1
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: -1
+    aniso: -1
+    mipBias: -1
+    wrapU: -1
+    wrapV: -1
+    wrapW: -1
+  nPOTScale: 1
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaUsage: 1
+  alphaIsTransparency: 0
+  spriteTessellationDetail: -1
+  textureType: 0
+  textureShape: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  platformSettings:
+  - buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+  spritePackingTag: 
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
Assets/HumanoidEditor/HumanoidEditorGUI/yUp_Icon.png


+ 68 - 0
Assets/HumanoidEditor/HumanoidEditorGUI/yUp_Icon.png.meta

@@ -0,0 +1,68 @@
+fileFormatVersion: 2
+guid: ab8f3255c3a7ac74782739c254b411ca
+timeCreated: 1505485599
+licenseType: Store
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 4
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 1
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    filterMode: -1
+    aniso: -1
+    mipBias: -1
+    wrapMode: -1
+  nPOTScale: 1
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaUsage: 1
+  alphaIsTransparency: 0
+  spriteTessellationDetail: -1
+  textureType: 0
+  textureShape: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  platformSettings:
+  - buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+  spritePackingTag: 
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 0 - 0
Assets/HumanoidEditor/HumanoidEditorGUI/zUp_Icon.png


Деякі файли не було показано, через те що забагато файлів було змінено