Browse Source

Merge branch 'master' of http://git.xwxgame.com/qianzhuqing/metaClient

Jidongchen 3 years ago
parent
commit
6faa6440fd
100 changed files with 394978 additions and 11406 deletions
  1. BIN
      Assets/GameMain/DataTables/Clothing.txt
  2. BIN
      Assets/GameMain/Meshes/Shangyi/diertaoyifu(3).FBX
  3. 100 0
      Assets/GameMain/Meshes/Shangyi/diertaoyifu(3).FBX.meta
  4. 0 0
      Assets/GameMain/Meshes/Shangyi/shangyi.FBX
  5. 1 1
      Assets/GameMain/Model/cloth/shangyi.FBX.meta
  6. 2716 0
      Assets/GameMain/Meshes/Shangyi/shangyi_3.prefab
  7. 7 0
      Assets/GameMain/Meshes/Shangyi/shangyi_3.prefab.meta
  8. BIN
      Assets/GameMain/Meshes/Xiazhuang/diertaokuzi(1).FBX
  9. 100 0
      Assets/GameMain/Meshes/Xiazhuang/diertaokuzi(1).FBX.meta
  10. 0 0
      Assets/GameMain/Meshes/Xiazhuang/kuzi.FBX
  11. 0 0
      Assets/GameMain/Meshes/Xiazhuang/kuzi.FBX.meta
  12. 2202 0
      Assets/GameMain/Meshes/Xiazhuang/xiazhuang_3.prefab
  13. 7 0
      Assets/GameMain/Meshes/Xiazhuang/xiazhuang_3.prefab.meta
  14. BIN
      Assets/GameMain/Meshes/Xiezi/diertaoxiezi.FBX
  15. 100 0
      Assets/GameMain/Meshes/Xiezi/diertaoxiezi.FBX.meta
  16. 1 1
      Assets/GameMain/Model/8.controller
  17. BIN
      Assets/GameMain/Model/cloth/T_biaonv_body_D.png
  18. 90422 11381
      Assets/GameMain/Scenes/CustomRole.unity
  19. 31 1
      Assets/GameMain/Scripts/Game/CustomRole/CustomManager.cs
  20. 5 0
      Assets/GameMain/Scripts/Utility/AssetUtility.cs
  21. 42 9
      Assets/GameMain/Scripts/Utility/CombineSkinMesh.cs
  22. 24 13
      Assets/GameMain/Scripts/Utility/CustomRoleUtility.cs
  23. 8 0
      Assets/GameMain/Scripts/Web.meta
  24. 253 0
      Assets/GameMain/Scripts/Web/CfgManager.cs
  25. 11 0
      Assets/GameMain/Scripts/Web/CfgManager.cs.meta
  26. 23 0
      Assets/GameMain/Scripts/Web/DataController.cs
  27. 11 0
      Assets/GameMain/Scripts/Web/DataController.cs.meta
  28. 189 0
      Assets/GameMain/Scripts/Web/MainAccountData.cs
  29. 11 0
      Assets/GameMain/Scripts/Web/MainAccountData.cs.meta
  30. 42 0
      Assets/GameMain/Scripts/Web/PROTOCOLS.cs
  31. 11 0
      Assets/GameMain/Scripts/Web/PROTOCOLS.cs.meta
  32. 60 0
      Assets/GameMain/Scripts/Web/WebController.cs
  33. 11 0
      Assets/GameMain/Scripts/Web/WebController.cs.meta
  34. 250 0
      Assets/GameMain/Scripts/Web/WebManager.cs
  35. 11 0
      Assets/GameMain/Scripts/Web/WebManager.cs.meta
  36. 13 0
      Assets/Launcher.unity
  37. 8 0
      Assets/MagicaCloth.meta
  38. 8 0
      Assets/MagicaCloth/Example (Can be deleted).meta
  39. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/Material.meta
  40. 77 0
      Assets/MagicaCloth/Example (Can be deleted)/Material/Floor.mat
  41. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/Material/Floor.mat.meta
  42. 77 0
      Assets/MagicaCloth/Example (Can be deleted)/Material/Red.mat
  43. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/Material/Red.mat.meta
  44. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/Model.meta
  45. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/Model/Arrow.meta
  46. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/Model/Arrow/Materials.meta
  47. 77 0
      Assets/MagicaCloth/Example (Can be deleted)/Model/Arrow/Materials/Arrow.mat
  48. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/Model/Arrow/Materials/Arrow.mat.meta
  49. BIN
      Assets/MagicaCloth/Example (Can be deleted)/Model/Arrow/arrow_a.fbx
  50. 97 0
      Assets/MagicaCloth/Example (Can be deleted)/Model/Arrow/arrow_a.fbx.meta
  51. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/Model/Sphere.meta
  52. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/Model/Sphere/Materials.meta
  53. 77 0
      Assets/MagicaCloth/Example (Can be deleted)/Model/Sphere/Materials/mat.mat
  54. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/Model/Sphere/Materials/mat.mat.meta
  55. BIN
      Assets/MagicaCloth/Example (Can be deleted)/Model/Sphere/sphere.fbx
  56. 102 0
      Assets/MagicaCloth/Example (Can be deleted)/Model/Sphere/sphere.fbx.meta
  57. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/Model/plane.meta
  58. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/Model/plane/Materials.meta
  59. 77 0
      Assets/MagicaCloth/Example (Can be deleted)/Model/plane/Materials/mat.mat
  60. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/Model/plane/Materials/mat.mat.meta
  61. BIN
      Assets/MagicaCloth/Example (Can be deleted)/Model/plane/plane.fbx
  62. 102 0
      Assets/MagicaCloth/Example (Can be deleted)/Model/plane/plane.fbx.meta
  63. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/Prefabs.meta
  64. 157 0
      Assets/MagicaCloth/Example (Can be deleted)/Prefabs/BlastWave.prefab
  65. 7 0
      Assets/MagicaCloth/Example (Can be deleted)/Prefabs/BlastWave.prefab.meta
  66. 488 0
      Assets/MagicaCloth/Example (Can be deleted)/Prefabs/Env.prefab
  67. 7 0
      Assets/MagicaCloth/Example (Can be deleted)/Prefabs/Env.prefab.meta
  68. 575 0
      Assets/MagicaCloth/Example (Can be deleted)/Prefabs/PartsItemUI.prefab
  69. 7 0
      Assets/MagicaCloth/Example (Can be deleted)/Prefabs/PartsItemUI.prefab.meta
  70. 4700 0
      Assets/MagicaCloth/Example (Can be deleted)/Prefabs/WindParticle.prefab
  71. 7 0
      Assets/MagicaCloth/Example (Can be deleted)/Prefabs/WindParticle.prefab.meta
  72. 119247 0
      Assets/MagicaCloth/Example (Can be deleted)/Prefabs/unitychan.prefab
  73. 7 0
      Assets/MagicaCloth/Example (Can be deleted)/Prefabs/unitychan.prefab.meta
  74. 9 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz.meta
  75. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/Avatar.meta
  76. 2100 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/Avatar/BodyAvatar.prefab
  77. 7 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/Avatar/BodyAvatar.prefab.meta
  78. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts.meta
  79. 4956 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Misaki_face.prefab
  80. 7 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Misaki_face.prefab.meta
  81. 8364 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Misaki_hair.prefab
  82. 7 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Misaki_hair.prefab.meta
  83. 67146 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Summer.prefab
  84. 7 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Summer.prefab.meta
  85. 3826 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Utc_face.prefab
  86. 7 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Utc_face.prefab.meta
  87. 6501 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Utc_hair.prefab
  88. 7 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Utc_hair.prefab.meta
  89. 71073 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Winter.prefab
  90. 7 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Winter.prefab.meta
  91. 3390 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Yuko_face.prefab
  92. 7 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Yuko_face.prefab.meta
  93. 4678 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Yuko_hair.prefab
  94. 7 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Yuko_hair.prefab.meta
  95. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/Model2.meta
  96. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/Model2/Materials.meta
  97. 77 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/Model2/Materials/Mi_hair_mat.mat
  98. 8 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/Model2/Materials/Mi_hair_mat.mat.meta
  99. 77 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/Model2/Materials/Mi_mouth_mat.mat
  100. 0 0
      Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/Model2/Materials/Mi_mouth_mat.mat.meta

BIN
Assets/GameMain/DataTables/Clothing.txt


BIN
Assets/GameMain/Meshes/Shangyi/diertaoyifu(3).FBX


+ 100 - 0
Assets/GameMain/Meshes/Shangyi/diertaoyifu(3).FBX.meta

@@ -0,0 +1,100 @@
+fileFormatVersion: 2
+guid: 6a77fde2068ad254a99bbe0b2dfe3730
+ModelImporter:
+  serializedVersion: 19301
+  internalIDToNameTable:
+  - first:
+      74: 1827226128182048838
+    second: Take 001
+  externalObjects: {}
+  materials:
+    materialImportMode: 1
+    materialName: 0
+    materialSearch: 1
+    materialLocation: 1
+  animations:
+    legacyGenerateAnimations: 4
+    bakeSimulation: 0
+    resampleCurves: 1
+    optimizeGameObjects: 0
+    motionNodeName: 
+    rigImportErrors: 
+    rigImportWarnings: 
+    animationImportErrors: 
+    animationImportWarnings: 
+    animationRetargetingWarnings: 
+    animationDoRetargetingWarnings: 0
+    importAnimatedCustomProperties: 0
+    importConstraints: 0
+    animationCompression: 1
+    animationRotationError: 0.5
+    animationPositionError: 0.5
+    animationScaleError: 0.5
+    animationWrapMode: 0
+    extraExposedTransformPaths: []
+    extraUserProperties: []
+    clipAnimations: []
+    isReadable: 0
+  meshes:
+    lODScreenPercentages: []
+    globalScale: 1
+    meshCompression: 0
+    addColliders: 0
+    useSRGBMaterialColor: 1
+    sortHierarchyByName: 1
+    importVisibility: 1
+    importBlendShapes: 1
+    importCameras: 1
+    importLights: 1
+    fileIdsGeneration: 2
+    swapUVChannels: 0
+    generateSecondaryUV: 0
+    useFileUnits: 1
+    keepQuads: 0
+    weldVertices: 1
+    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: []
+    skeleton: []
+    armTwist: 0.5
+    foreArmTwist: 0.5
+    upperLegTwist: 0.5
+    legTwist: 0.5
+    armStretch: 0.05
+    legStretch: 0.05
+    feetSpacing: 0
+    globalScale: 1
+    rootMotionBoneName: 
+    hasTranslationDoF: 0
+    hasExtraRoot: 0
+    skeletonHasParents: 1
+  lastHumanDescriptionAvatarSource: {instanceID: 0}
+  autoGenerateAvatarMappingIfUnspecified: 1
+  animationType: 2
+  humanoidOversampling: 1
+  avatarSetup: 0
+  additionalBone: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

Assets/GameMain/Model/cloth/shangyi.FBX → Assets/GameMain/Meshes/Shangyi/shangyi.FBX


+ 1 - 1
Assets/GameMain/Model/cloth/shangyi.FBX.meta

@@ -34,7 +34,7 @@ ModelImporter:
     extraExposedTransformPaths: []
     extraUserProperties: []
     clipAnimations: []
-    isReadable: 0
+    isReadable: 1
   meshes:
     lODScreenPercentages: []
     globalScale: 1

File diff suppressed because it is too large
+ 2716 - 0
Assets/GameMain/Meshes/Shangyi/shangyi_3.prefab


+ 7 - 0
Assets/GameMain/Meshes/Shangyi/shangyi_3.prefab.meta

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

BIN
Assets/GameMain/Meshes/Xiazhuang/diertaokuzi(1).FBX


+ 100 - 0
Assets/GameMain/Meshes/Xiazhuang/diertaokuzi(1).FBX.meta

@@ -0,0 +1,100 @@
+fileFormatVersion: 2
+guid: f550b1139acf35e43971d7fb0b13e8f2
+ModelImporter:
+  serializedVersion: 19301
+  internalIDToNameTable:
+  - first:
+      74: 1827226128182048838
+    second: Take 001
+  externalObjects: {}
+  materials:
+    materialImportMode: 1
+    materialName: 0
+    materialSearch: 1
+    materialLocation: 1
+  animations:
+    legacyGenerateAnimations: 4
+    bakeSimulation: 0
+    resampleCurves: 1
+    optimizeGameObjects: 0
+    motionNodeName: 
+    rigImportErrors: 
+    rigImportWarnings: 
+    animationImportErrors: 
+    animationImportWarnings: 
+    animationRetargetingWarnings: 
+    animationDoRetargetingWarnings: 0
+    importAnimatedCustomProperties: 0
+    importConstraints: 0
+    animationCompression: 1
+    animationRotationError: 0.5
+    animationPositionError: 0.5
+    animationScaleError: 0.5
+    animationWrapMode: 0
+    extraExposedTransformPaths: []
+    extraUserProperties: []
+    clipAnimations: []
+    isReadable: 0
+  meshes:
+    lODScreenPercentages: []
+    globalScale: 1
+    meshCompression: 0
+    addColliders: 0
+    useSRGBMaterialColor: 1
+    sortHierarchyByName: 1
+    importVisibility: 1
+    importBlendShapes: 1
+    importCameras: 1
+    importLights: 1
+    fileIdsGeneration: 2
+    swapUVChannels: 0
+    generateSecondaryUV: 0
+    useFileUnits: 1
+    keepQuads: 0
+    weldVertices: 1
+    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: []
+    skeleton: []
+    armTwist: 0.5
+    foreArmTwist: 0.5
+    upperLegTwist: 0.5
+    legTwist: 0.5
+    armStretch: 0.05
+    legStretch: 0.05
+    feetSpacing: 0
+    globalScale: 1
+    rootMotionBoneName: 
+    hasTranslationDoF: 0
+    hasExtraRoot: 0
+    skeletonHasParents: 1
+  lastHumanDescriptionAvatarSource: {instanceID: 0}
+  autoGenerateAvatarMappingIfUnspecified: 1
+  animationType: 2
+  humanoidOversampling: 1
+  avatarSetup: 0
+  additionalBone: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

Assets/GameMain/Model/cloth/kuzi.FBX → Assets/GameMain/Meshes/Xiazhuang/kuzi.FBX


Assets/GameMain/Model/cloth/kuzi.FBX.meta → Assets/GameMain/Meshes/Xiazhuang/kuzi.FBX.meta


File diff suppressed because it is too large
+ 2202 - 0
Assets/GameMain/Meshes/Xiazhuang/xiazhuang_3.prefab


+ 7 - 0
Assets/GameMain/Meshes/Xiazhuang/xiazhuang_3.prefab.meta

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

BIN
Assets/GameMain/Meshes/Xiezi/diertaoxiezi.FBX


+ 100 - 0
Assets/GameMain/Meshes/Xiezi/diertaoxiezi.FBX.meta

@@ -0,0 +1,100 @@
+fileFormatVersion: 2
+guid: 131d0b2fb6a431a40a6fe64b04aa2e36
+ModelImporter:
+  serializedVersion: 19301
+  internalIDToNameTable:
+  - first:
+      74: 1827226128182048838
+    second: Take 001
+  externalObjects: {}
+  materials:
+    materialImportMode: 1
+    materialName: 0
+    materialSearch: 1
+    materialLocation: 1
+  animations:
+    legacyGenerateAnimations: 4
+    bakeSimulation: 0
+    resampleCurves: 1
+    optimizeGameObjects: 0
+    motionNodeName: 
+    rigImportErrors: 
+    rigImportWarnings: 
+    animationImportErrors: 
+    animationImportWarnings: 
+    animationRetargetingWarnings: 
+    animationDoRetargetingWarnings: 0
+    importAnimatedCustomProperties: 0
+    importConstraints: 0
+    animationCompression: 1
+    animationRotationError: 0.5
+    animationPositionError: 0.5
+    animationScaleError: 0.5
+    animationWrapMode: 0
+    extraExposedTransformPaths: []
+    extraUserProperties: []
+    clipAnimations: []
+    isReadable: 0
+  meshes:
+    lODScreenPercentages: []
+    globalScale: 1
+    meshCompression: 0
+    addColliders: 0
+    useSRGBMaterialColor: 1
+    sortHierarchyByName: 1
+    importVisibility: 1
+    importBlendShapes: 1
+    importCameras: 1
+    importLights: 1
+    fileIdsGeneration: 2
+    swapUVChannels: 0
+    generateSecondaryUV: 0
+    useFileUnits: 1
+    keepQuads: 0
+    weldVertices: 1
+    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: []
+    skeleton: []
+    armTwist: 0.5
+    foreArmTwist: 0.5
+    upperLegTwist: 0.5
+    legTwist: 0.5
+    armStretch: 0.05
+    legStretch: 0.05
+    feetSpacing: 0
+    globalScale: 1
+    rootMotionBoneName: 
+    hasTranslationDoF: 0
+    hasExtraRoot: 0
+    skeletonHasParents: 1
+  lastHumanDescriptionAvatarSource: {instanceID: 0}
+  autoGenerateAvatarMappingIfUnspecified: 1
+  animationType: 2
+  humanoidOversampling: 1
+  avatarSetup: 0
+  additionalBone: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 1 - 1
Assets/GameMain/Model/8.controller

@@ -49,7 +49,7 @@ AnimatorStateMachine:
   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: 4321239445375086989}
+  m_DefaultState: {fileID: 4312635860885776039}
 --- !u!1102 &4312635860885776039
 AnimatorState:
   serializedVersion: 5

BIN
Assets/GameMain/Model/cloth/T_biaonv_body_D.png


File diff suppressed because it is too large
+ 90422 - 11381
Assets/GameMain/Scenes/CustomRole.unity


+ 31 - 1
Assets/GameMain/Scripts/Game/CustomRole/CustomManager.cs

@@ -619,7 +619,37 @@ namespace MetaClient
 
         public void ChangeClothing(int id)
         {
-            Debug.Log("换衣服咯");
+            Debug.Log("换衣服咯 : " + id);
+            IDataTable<DRClothing> drCloth = GameEntry.DataTable.GetDataTable<DRClothing>();
+            DRClothing clothdata = drCloth.GetDataRow(id);
+            if(clothdata == null)
+            {
+                Debug.LogError("cloth " + id + "不存在");
+                return;
+            }
+
+            var path = clothdata.Prefab;
+            GameEntry.Resource.LoadAsset(AssetUtility.GetMeshAsset(path), new GameFramework.Resource.LoadAssetCallbacks(
+                (assetName, asset, duration, userData) =>
+                {
+                    GameObject go = GameObject.Instantiate((GameObject)asset, testPlayer.transform);
+                    var component = testPlayer.GetComponent<CombineSkinMesh>();
+                    component.ChangeCloth((ClothType)clothdata.ParentStyple, go);
+                }
+                ));
+        }
+        /// <summary>
+        /// 保存
+        /// </summary>
+        public void Save()
+        {
+
+        }
+        /// <summary>
+        /// 加载
+        /// </summary>
+        public void Reload()
+        {
 
         }
     }

+ 5 - 0
Assets/GameMain/Scripts/Utility/AssetUtility.cs

@@ -65,5 +65,10 @@ namespace MetaClient
             Debug.Log("Assets/GameMain/UI/UISprites/"+assetName+".png");
             return Utility.Text.Format("Assets/GameMain/UI/UISprites/{0}.png", assetName);
         }
+
+        public static string GetMeshAsset(string assetName)
+        {
+            return Utility.Text.Format("Assets/GameMain/Meshes/{0}.prefab", assetName);
+        }
     }
 }

+ 42 - 9
Assets/GameMain/Scripts/Utility/CombineSkinMesh.cs

@@ -6,31 +6,64 @@ using UnityEngine.SceneManagement;
 public class CombineSkinMesh : MonoBehaviour
 {
     public SkinnedMeshRenderer Body;
-
+    private Transform[] childTransforms = null;
     public SkinnedMeshRenderer[] OldClothes = new SkinnedMeshRenderer[3];
     public SkinnedMeshRenderer[] Clothes = new SkinnedMeshRenderer[3];
 
-    // Start is called before the first frame update
+    private Dictionary<ClothType, GameObject> BeforeClothDic = new Dictionary<ClothType, GameObject>();
+    private Dictionary<ClothType, GameObject> EquipClothDic = new Dictionary<ClothType, GameObject>();
+    
     void Start()
     {
-        //StartCombine();
-    }
+        childTransforms = gameObject.GetComponentsInChildren<Transform>(false);
+        Debug.Log("childTransforms : " + childTransforms.Length);
 
-    // Update is called once per frame
+        //Transform shangyi = transform.Find("FE_Top001");
+        //Transform xiazhuang = transform.Find("FE_BTM001");
+        //OrginClothDic.Add(ClothType.Shangyi, shangyi.GetComponent<SkinnedMeshRenderer>());
+        //OrginClothDic.Add(ClothType.Xiazhuang, xiazhuang.GetComponent<SkinnedMeshRenderer>());
+    }
+    
     void Update()
     {
         
     }
 
+    public void ChangeCloth(ClothType _type, GameObject _skin)
+    {
+        if(EquipClothDic.TryGetValue(_type, out var value))
+        {
+            BeforeClothDic[_type] = value;
+        }
+        else
+        {
+            BeforeClothDic[_type] = null;
+        }
+        ;
+        EquipClothDic[_type] = _skin;
+        CustomRoleUtility.ChangeCloth(BeforeClothDic[_type], EquipClothDic[_type],childTransforms);
+
+        //StopAllCoroutines();
+        //var wrap = _skin.transform.GetChild(0).gameObject.GetOrAddComponent<MegaWrap>();
+        var wrap = _skin.GetComponentInChildren<SkinnedMeshRenderer>().gameObject.GetOrAddComponent<MegaWrap>();
+        wrap.target = Body.GetComponent<MegaModifyObject>();
+        StartCoroutine(WrapModel(wrap));
+    }
+
+    public IEnumerator WrapModel(MegaWrap _wrap)
+    {
+        yield return new WaitForSeconds(0.5f);
+        //_wrap.Attach(_wrap.target);
+        //_wrap.Attach();
+    }
+
     public void StartCombine()
     {
         Debug.Log("Combine");
-        //SkinnedMeshRenderer[] meshes = new SkinnedMeshRenderer[] {  Shangyi };
-        //CombineObject(Body.rootBone.gameObject, Clothes);
-        Transform[] transforms = gameObject.GetComponentsInChildren<Transform>(false);
+        childTransforms = gameObject.GetComponentsInChildren<Transform>(false);
         for (int i = 0; i < 3; i++)
         {
-            CustomRoleUtility.ChangeCloth(OldClothes[i], Clothes[i], transforms);
+            //CustomRoleUtility.ChangeCloth(OldClothes[i], Clothes[i], childTransforms);
         }
     }
 

+ 24 - 13
Assets/GameMain/Scripts/Utility/CustomRoleUtility.cs

@@ -64,6 +64,18 @@ public enum ModifyType
     ForwardBehind = 7,//前后
 }
 
+public enum ClothType
+{
+    Lianyiqun = 1,
+    Shangyi = 2,
+    Xiazhuang = 3,
+    Changtongwa = 4,
+    Xiezi = 5,
+    Shipin = 6,
+    Taozhuang = 7,
+    Dingzhi = 8
+}
+
 public static class CustomRoleUtility
 {
     public static void UpdateBoneScale(Animator ani,EditableBodyPart part, Vector3 scale,bool keepChildWorldScale, float value)
@@ -237,12 +249,8 @@ public static class CustomRoleUtility
         return null;
     }
 
-    public static void ChangeCloth(SkinnedMeshRenderer before,SkinnedMeshRenderer now,Transform[] transforms)
+    public static void ChangeCloth(GameObject before, GameObject now,Transform[] transforms)
     {
-        if (before == null && now == null)
-        {
-            return;
-        }
         if(now == null)
         {
             if(before)
@@ -251,20 +259,22 @@ public static class CustomRoleUtility
             }
             return;
         }
-
-        //Transform[] transforms = skeleton.GetComponentsInChildren<Transform>(false);
+        
         List<Transform> boneList = new List<Transform>();
 
         SkinnedMeshRenderer smr = null;
         if(before)
         {
-            smr = before;
-            before.gameObject.SetActive(true);
+            smr = now.GetComponentInChildren<SkinnedMeshRenderer>();
+            //before.gameObject.SetActive(true);
+            GameObject.Destroy(before);
+            before = null;
         }else
         {
-            smr = now;
+            smr = now.GetComponentInChildren<SkinnedMeshRenderer>();
         }
 
+        int index = 0;
         foreach (Transform bone in smr.bones)
         {
             foreach (Transform item in transforms)
@@ -272,13 +282,14 @@ public static class CustomRoleUtility
                 if (item.name != bone.name)
                     continue;
                 boneList.Add(item);
+                index++;
                 break;
             }
         }
-
-        smr.sharedMesh = now.sharedMesh;
+        Debug.Log("ChangeCloth BonesCount : " + index);
+        smr.sharedMesh = now.GetComponentInChildren<SkinnedMeshRenderer>().sharedMesh;
         smr.bones = boneList.ToArray();
-        smr.materials = now.sharedMaterials;
+        smr.materials = now.GetComponentInChildren<SkinnedMeshRenderer>().sharedMaterials;
         smr.rootBone = smr.rootBone;
     }
 

+ 8 - 0
Assets/GameMain/Scripts/Web.meta

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

+ 253 - 0
Assets/GameMain/Scripts/Web/CfgManager.cs

@@ -0,0 +1,253 @@
+using LitJson;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class CFG_Metaverse_Area
+{
+    public string area_block_id;//大区块ID
+    public JsonData area_block_export;//大区的系统数据 json
+
+    public string[] area_block_nears; //大区块临近的大区块id序列
+    //public IList area_block_bornpos;//大区块内的出生点位
+    public string[] area_block_builds;//大区块上默认的build
+    public CFG_Metaverse_Area(JsonData jsonData)
+    {
+        this.area_block_id = jsonData["area_block_id"].ToString();
+
+        this.area_block_export = JsonMapper.ToObject(jsonData["area_block_export"].ToString());
+
+        string str = jsonData["area_block_nears"].ToString();
+        this.area_block_nears = str.Split(',');
+
+        //this.area_block_bornpos = jsonData["area_block_bornpos"];
+
+        string str1 = jsonData["area_block_builds"].ToString();
+        this.area_block_builds = str1.Split(',');
+
+    }
+}
+public class CFG_Metaverse_resource
+{
+    //public string id;// 自增ID
+    public string model_id;// 模型ID
+    public string model_name;// 模型名称
+    public string mode_pkg_name;// 模型包名
+    public string model_icon;// 模型icon
+    public string model_prefab;// 模型对应文件
+    public CFG_Metaverse_resource(JsonData jsonData)
+    {
+        this.model_id = jsonData["model_id"].ToString();
+        this.model_name = jsonData["model_name"].ToString();
+        this.mode_pkg_name = jsonData["mode_pkg_name"].ToString();
+        this.model_icon = jsonData["model_icon"].ToString();
+        this.model_prefab = jsonData["model_prefab"].ToString();
+    }
+}
+public class CFG_Metaverse_Ground
+{
+    public string ground_id;// 地块ID
+    public string area_block_id;// 属大区块ID
+    public string ground_name;// 地块名称
+    public string ground_area;// 地块面积
+    public IList ground_location;//  地块位置
+    public IList ground_rotate;// 地块旋转
+    public IList ground_zoom;// 地块缩放
+    public string ground_price;// 地块现价
+    public string ground_price_origin;// 地块原价
+    public string ground_sell_flag;// 0:不可出售 1:可出售
+    public string ground_sell_sdate;// 开售日期
+    public string ground_sell_edate;// 停售日期
+    public string ground_room_large;// 挂载室内场景大小比例
+    public string ground_scene_out;// 挂载的室外场景
+    public string ground_scene_inner;// 挂载的室内场景
+    public CFG_Metaverse_Ground(JsonData jsonData)
+    {
+        this.ground_id = jsonData["ground_id"].ToString();
+        this.area_block_id = jsonData["area_block_id"].ToString();
+        this.ground_name = jsonData["ground_name"].ToString();
+        this.ground_area = jsonData["ground_area"].ToString();
+        this.ground_location = JsonMapper.ToObject(jsonData["ground_location"].ToString());
+        this.ground_rotate = JsonMapper.ToObject(jsonData["ground_rotate"].ToString());
+        this.ground_zoom = JsonMapper.ToObject(jsonData["ground_zoom"].ToString());
+        this.ground_price = jsonData["ground_price"].ToString();
+        this.ground_price_origin = jsonData["ground_price_origin"].ToString();
+        this.ground_sell_flag = jsonData["ground_sell_flag"].ToString();
+        this.ground_sell_sdate = jsonData["ground_sell_sdate"].ToString();
+        this.ground_sell_edate = jsonData["ground_sell_edate"].ToString();
+        this.ground_room_large = jsonData["ground_room_large"].ToString();
+        this.ground_scene_out = jsonData["ground_scene_out"].ToString();
+        this.ground_scene_inner = jsonData["ground_scene_inner"].ToString();
+    }
+}
+public class CFG_Metaverse_Build
+{
+    public string build_id;// 建筑ID
+    public string area_block_id;// 所属区块ID
+    public string build_type;// 建筑类型
+    public string build_name;// 建筑名称
+    public JsonData build_indoor_pos;//  建筑入口位置
+    public IList build_location;// 建筑位置
+    public IList build_rotate;// 建筑旋转
+    public IList build_zoom;// 建筑缩放
+    public string build_outdoor_change;// 0:不可改变 1:可改变
+    public string model_id;// 模型ID
+    public string build_price;// 建筑现价
+    public string build_price_origin;//  建筑原价
+    public string build_sell_flag;// 0:不可出售 1:可出售
+    //public string build_sell_sdate;//  NULL开售时间
+    //public string build_sell_edate;//  NULL停售日期
+    public CFG_Metaverse_Build(JsonData jsonData)
+    {
+        this.build_id = jsonData["build_id"].ToString();
+        this.area_block_id = jsonData["area_block_id"].ToString();
+        this.build_type = jsonData["build_type"].ToString();
+        this.build_name = jsonData["build_name"].ToString();
+        this.build_indoor_pos = JsonMapper.ToObject(jsonData["build_indoor_pos"].ToString());
+        this.build_location = JsonMapper.ToObject(jsonData["build_location"].ToString());
+        this.build_rotate = JsonMapper.ToObject(jsonData["build_rotate"].ToString());
+        this.build_zoom = JsonMapper.ToObject(jsonData["build_zoom"].ToString());
+        this.build_outdoor_change = jsonData["build_outdoor_change"].ToString();
+        this.model_id = jsonData["model_id"].ToString();
+        this.build_price = jsonData["build_price"].ToString();
+        this.build_price_origin = jsonData["build_price_origin"].ToString();
+        this.build_sell_flag = jsonData["build_sell_flag"].ToString();
+        //this.build_sell_sdate = jsonData["build_sell_sdate"].ToString();
+        //this.build_sell_edate = jsonData["build_sell_edate"].ToString();
+    }
+}
+public class CfgManager
+{
+    private static CfgManager _Instance;
+    public static CfgManager Instance
+    {
+        get
+        {
+            if (CfgManager._Instance == null) CfgManager._Instance = new CfgManager();
+            return CfgManager._Instance;
+        }
+    }
+
+    private JsonData metaverse_area_block;
+    private Dictionary<string, CFG_Metaverse_Area> dicArea;
+    private JsonData metaverse_build;
+    private Dictionary<string, CFG_Metaverse_Build> dicBuild;
+    private JsonData metaverse_resource;
+    private Dictionary<string, CFG_Metaverse_resource> dicmodel;
+    private JsonData metaverse_ground;
+    private Dictionary<string, CFG_Metaverse_Ground> dicGround;
+    public void InitCfg(JsonData cfg)
+    {
+        this.metaverse_area_block = cfg["metaverse_area_block"];
+        this.dicArea = new Dictionary<string, CFG_Metaverse_Area>();
+        IList listArea = this.metaverse_area_block;
+        for (int i = 0, n = listArea.Count; i < n; i++)
+        {
+            //Debug.Log(listArea[i]);
+            var cFG_Metaverse_Area = new CFG_Metaverse_Area(listArea[i] as JsonData);
+            this.dicArea.Add(cFG_Metaverse_Area.area_block_id, cFG_Metaverse_Area);
+        }
+
+        this.metaverse_build = cfg["metaverse_build"];
+        this.dicBuild = new Dictionary<string, CFG_Metaverse_Build>();
+        IList listBuild = this.metaverse_build;
+        for (int i = 0, n = listBuild.Count; i < n; i++)
+        {
+            var cFG_Metaverse_Build = new CFG_Metaverse_Build(listBuild[i] as JsonData);
+            this.dicBuild.Add(cFG_Metaverse_Build.build_id, cFG_Metaverse_Build);
+        }
+
+        this.metaverse_resource = cfg["metaverse_resource"];
+        this.dicmodel = new Dictionary<string, CFG_Metaverse_resource>();
+        IList listmodel = this.metaverse_resource;
+        for (int i = 0, n = listmodel.Count; i < n; i++)
+        {
+            CFG_Metaverse_resource cFG_Metaverse_resource = new CFG_Metaverse_resource(listmodel[i] as JsonData);
+            this.dicmodel.Add(cFG_Metaverse_resource.model_id, cFG_Metaverse_resource);
+        }
+
+
+        this.metaverse_ground = cfg["metaverse_ground"];
+        this.dicGround = new Dictionary<string, CFG_Metaverse_Ground>();
+        IList listGround = this.metaverse_ground;
+        for (int i = 0, n = listGround.Count; i < n; i++)
+        {
+            CFG_Metaverse_Ground cFG_Metaverse_Ground = new CFG_Metaverse_Ground(listGround[i] as JsonData);
+            this.dicGround.Add(cFG_Metaverse_Ground.ground_id, cFG_Metaverse_Ground);
+        }
+        //TODO
+    }
+
+    /// <summary>
+    /// 获取模型配置
+    /// </summary>
+    /// <param name="model_id"></param>
+    /// <returns></returns>
+    public CFG_Metaverse_resource GetModel(string model_id)
+    {
+
+        if (this.dicmodel.ContainsKey(model_id))
+        {
+            return this.dicmodel[model_id];
+        }
+        else
+        {
+            Debug.LogError("CFG_Metaverse_resource NOT EXIST :" + model_id);
+            return null;
+        }
+    }
+    /// <summary>
+    /// 获取大区块配置
+    /// </summary>
+    /// <param name="id"></param>
+    /// <returns></returns>
+    public CFG_Metaverse_Area GetArea(string id)
+    {
+        if (this.dicArea.ContainsKey(id))
+        {
+            return this.dicArea[id];
+        }
+        else
+        {
+            Debug.LogError("CFG_Metaverse_Area NOT EXIST :" + id);
+            return null;
+        }
+
+    }
+    /// <summary>
+    /// 获取建筑配置
+    /// </summary>
+    /// <param name="id"></param>
+    /// <returns></returns>
+    public CFG_Metaverse_Build GetBuild(string id)
+    {
+        if (this.dicBuild.ContainsKey(id))
+        {
+            return this.dicBuild[id];
+        }
+        else
+        {
+            Debug.LogError("CFG_Metaverse_Build NOT EXIST :" + id);
+            return null;
+        }
+    }
+    /// <summary>
+    /// 获取ground
+    /// </summary>
+    /// <param name="id"></param>
+    /// <returns></returns>
+    public CFG_Metaverse_Ground GetGround(string id)
+    {
+        if (this.dicGround.ContainsKey(id))
+        {
+            return this.dicGround[id];
+        }
+        else
+        {
+            Debug.LogError("CFG_Metaverse_Ground NOT EXIST :" + id);
+            return null;
+        }
+    }
+
+
+}

+ 11 - 0
Assets/GameMain/Scripts/Web/CfgManager.cs.meta

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

+ 23 - 0
Assets/GameMain/Scripts/Web/DataController.cs

@@ -0,0 +1,23 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class DataController
+{
+    /// <summary>
+    /// 初始化游戏参数
+    /// </summary>
+    public static void GameInfo()
+    {
+        //PlayerManager.Instance.InitPlayerAtt();
+    }
+    /// <summary>
+    /// 设置配置数据
+    /// </summary>
+    public static void SetCfg(LitJson.JsonData jsonData)
+    {
+        CfgManager.Instance.InitCfg(jsonData);
+        //this.otherarg = (cfg.otherarg);
+        //this.SetOtherArg()
+    }
+}

+ 11 - 0
Assets/GameMain/Scripts/Web/DataController.cs.meta

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

+ 189 - 0
Assets/GameMain/Scripts/Web/MainAccountData.cs

@@ -0,0 +1,189 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using LitJson;
+using System;
+using MetaClient;
+
+public class MainAccountData
+{
+    public static MainAccountData Instance = null;
+
+    public static string ver = "1.0.1";
+
+    public static string code = "";
+    public static string NickName = "";
+    public static string Avatar = "";
+    public static string Gender = null;
+    public static string Country = "中国";
+    public static string Province = "";
+    public static string City = "";
+    public static string Device = "";
+    public static string ShareId = "";
+    public static string Scene = "";
+
+
+    public MainAccountData(JsonData _data)
+    {
+        Instance = this;
+
+
+        this.servertime = float.Parse(_data["t"].ToString());
+        this.curtime = Time.realtimeSinceStartup;
+
+
+        this.table_version = _data["table_version"].ToString();
+
+        this.token = _data["token"].ToString();
+
+        this.app_setting = _data["app_setting"];
+        this.cdn_url = this.app_setting["cdn_url"].ToString();
+        this.user = _data["user"];
+        this.user_base = _data["user_base"];
+        //this.user_sign = _data["user_sign"];
+        //this.user_lottery = _data["user_lottery"];
+        //this.userId = this.user["user_id"].ToString();
+        //this.openid = this.user_base["openid"].ToString();
+        //Debug.Log("user_id:" + userId);
+        //Debug.Log("ver:" + ver);
+
+        this.day_first = _data["day_first"].ToString() == "1";
+        //this.is_new = ((IDictionary)_data).Contains("is_new") ? true : false;
+
+    }
+
+
+    public string cdn_url;
+    public bool day_first;
+    public string token;
+    public JsonData app_setting;
+    public string table_version;
+    //public bool is_new;
+    public JsonData user;
+    public JsonData user_base;
+    //public JsonData user_sign;
+    //public JsonData user_lottery;
+    //public JsonData user_share;
+    //public JsonData user_video;
+    //public JsonData user_client;
+    //public JsonData user_deny;
+    //public string message;
+    //public string userId;
+    //public string openid;
+
+    public float servertime;
+    public float curtime;
+
+    public float ServerTime
+    {
+        get
+        {
+            var time = Time.realtimeSinceStartup;
+
+            return this.servertime + Mathf.Ceil((time - this.curtime) * 0.001f);
+        }
+
+    }
+
+
+    public static void OnUpdateAccount(string _data)
+    {
+
+    }
+
+    public void OnGetAccountConfig(JsonData _config)
+    {
+
+    }
+
+
+    public void JundgCfg(string ver, Action configokcallback)
+    {
+
+        WebManager.GetInstance.HttpPostRequest_Send(PROTOCOLS.Config, null, (jsonData) =>
+        {
+            DataController.SetCfg(jsonData["configs"]);
+            if (configokcallback != null) configokcallback();
+        }, (value) =>
+        {
+            Debug.Log("未加载到配置表");
+        });
+    }
+
+
+    public void CheckConfig(System.Action getconfigcb)
+    {
+        //mgetconfigcb = getconfigcb;
+        //var curconfig = PlayerPrefs.GetString("accountconfigkey");
+        //var curconfigver = PlayerPrefs.GetString("accountconfigver", "");
+        //curconfig = test ? null : curconfig;
+        //if (curconfig != "")
+        //{
+        //    if (curconfigver == this.table_version && !test)
+        //    {
+        //        Debug.Log("sever配置是最新的..." + this.table_version);
+        //        this.configs = curconfig;
+        //        this.OnGetAccountConfig(this.configs);
+        //        if (getconfigcb != null) getconfigcb();
+        //    }
+        //    else
+        //    {
+        //        Dictionary<string, string> agsdic = new Dictionary<string, string>();
+        //        agsdic.Add("version", table_version);
+        //        agsdic.Add("v", table_version);
+        //        WebManager.GetInstance.HttpPostRequest_Send(PROTOCOLS.Config, agsdic, this.CheckLocalConfig_completecb, this.CheckLocalConfig_errorcb);
+        //    }
+        //}
+        //else
+        //{
+        //    Dictionary<string, string> agsdic = new Dictionary<string, string>();
+        //    agsdic.Add("version", table_version);
+        //    agsdic.Add("v", table_version);
+        //    WebManager.GetInstance.HttpPostRequest_Send(PROTOCOLS.Config, agsdic, this.CheckLocalConfig_completecb, this.CheckLocalConfig_errorcb);
+        //}
+    }
+
+    private void CheckLocalConfig_completecb(object _objtext)
+    {
+        //string _text = _objtext as string;
+
+        //JsonData hashtable = JsonMapper.ToObject(_text);
+        //JsonData _config = hashtable["configs"];
+
+        //this.OnGetAccountConfig(_config);
+
+        //PlayerPrefs.SetString("accountconfigkey", _text);
+        //PlayerPrefs.SetString("accountconfigver", table_version);
+
+        //if (mgetconfigcb != null) mgetconfigcb();
+    }
+
+    private void CheckLocalConfig_errorcb(object _objtext)
+    {
+        //Debug.Log("未加载到配置表");
+    }
+
+    public static string LocalCode
+    {
+        get
+        {
+            var code = GameEntry.Setting.GetString("localcode");
+            if (code == "")
+            {
+                System.DateTime _time = System.DateTime.Now;
+                System.DateTime startTime = System.TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1));
+                var _rimeStr = (long)(_time - startTime).TotalSeconds;
+                var _rang = UnityEngine.Random.Range(10000, 99999);
+                code = "xj_" + _rimeStr + _rang;
+                GameEntry.Setting.SetString("localcode", code);
+                Debug.Log("新用户" + code);
+            }
+            else
+            {
+                Debug.Log("老用户" + code);
+            }
+            return code;
+        }
+
+    }
+}

+ 11 - 0
Assets/GameMain/Scripts/Web/MainAccountData.cs.meta

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

+ 42 - 0
Assets/GameMain/Scripts/Web/PROTOCOLS.cs

@@ -0,0 +1,42 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class PROTOCOLS
+{
+    public static string URL = "https://metaverseapi.xwxgame.com/";
+    public static string Login = "user/login";
+    public static string Config = "config/table";
+
+    public static string worldAreaBlock = "world/worldAreaBlock";//进入大世界
+    public static string worldSceneData = "world/worldSceneData";//进入室内
+
+    public static string game = "game/start";
+    public static string end = "game/play";
+    public static string Sign = "sign/sign";
+    public static string SignAhead = "sign/ahead";
+    public static string entertreasure = "treasure/enter";
+    public static string opentreasure = "treasure/open";
+    public static string upgrade = "attr/upgrade";
+    public static string Buy = "theme/buy";
+    public static string Equip = "theme/equip";
+    public static string share = "fission/share";
+    public static string vd = "fission/vd";
+    public static string revival = "game/revival";
+    public static string fission = "theme/fission";
+    public static string themefission = "theme/fission";
+    public static string treasure = "treasure/click";
+
+    public static string Lottery = "lottery/lottery";
+    public static string skillup = "skill/upgrade";
+
+    public static string kunbuy = "kun/buy";
+    public static string kunmove = "kun/move";
+    public static string kunequip = "kun/equip";
+    public static string kundiscard = "kun/discard";
+    public static string dmaward = "dmission/getrewards";
+    public static string cqgaward = "fission/cqg";
+    public static string sall = "mall/buy";
+    public static string getdata = "client/get";
+    public static string savedata = "client/set";
+}

+ 11 - 0
Assets/GameMain/Scripts/Web/PROTOCOLS.cs.meta

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

+ 60 - 0
Assets/GameMain/Scripts/Web/WebController.cs

@@ -0,0 +1,60 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using LitJson;
+public class WebController
+{
+    private static WebController _Instance;
+    public static WebController Instance
+    {
+        get
+        {
+            if (WebController._Instance == null) WebController._Instance = new WebController();
+            return WebController._Instance;
+        }
+    }
+
+    public void Login()
+    {
+        MainAccountData.code = MainAccountData.LocalCode;
+        WebManager.GetInstance.Login(() =>
+        {
+            //DownLoadController.GetInstance.DownUrl = GameDefine.CdnPath(MainAccountData.Instance.cdn_url);
+            //WorldSceneManager.GetInstance.PreStart(false);
+        });
+    }
+
+
+    public void GetWorldInfo(Action<JsonData> action)
+    {
+        WebManager.GetInstance.HttpPostRequest_Send(PROTOCOLS.worldAreaBlock, null, (jsondata) =>
+         {
+             if (action != null) action(jsondata);
+         }, (jsdata) =>
+         {
+
+         });
+    }
+
+    public void ChangeScene()
+    {
+        var dic = new Dictionary<string, string>()
+        {
+            {"ground_id", "1"},{"scene_id", "USC165805685261f3add03a283"},{"source","1"}
+        };
+        WebManager.GetInstance.HttpPostRequest_Send(PROTOCOLS.worldSceneData, dic, (jsondata) =>
+        {
+            //Debug.Log(",,,,,,,,");
+            //InDoorControoler.GetInstance.GoToInDoor
+            //InDoorControoler.GetInstance.PreDoor("1", "USC165805685261f3add03a283", jsondata);
+        }, (jsdata) =>
+        {
+
+        });
+    }
+
+    //"ground_id": "1",
+    //               "ground_scene_out": "USC112339683061f1072e2ba28",
+    // 2
+}

+ 11 - 0
Assets/GameMain/Scripts/Web/WebController.cs.meta

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

+ 250 - 0
Assets/GameMain/Scripts/Web/WebManager.cs

@@ -0,0 +1,250 @@
+using System.Collections;
+using System.Collections.Generic;
+using System.Text;
+using UnityEngine.Networking;
+using System;
+using LitJson;
+using UnityEngine;
+using Newtonsoft.Json;
+
+public class WebManager : MonoBehaviour
+{
+    public static WebManager GetInstance;
+
+    public void Awake()
+    {
+        GetInstance = this;
+    }
+
+    Action mlogincomplete;
+    public void Login(Action logincomplete)
+    {
+        mlogincomplete = logincomplete;
+        var url = PROTOCOLS.URL + PROTOCOLS.Login;
+        var code = MainAccountData.code;
+        var nickname = MainAccountData.NickName;
+        var avatar = MainAccountData.Avatar;
+        var gender = MainAccountData.Gender;
+        var country = MainAccountData.Country;
+        var province = MainAccountData.Province;
+        var city = MainAccountData.City;
+        var device = MainAccountData.Device;
+        var share_id = MainAccountData.ShareId;
+        var scene = MainAccountData.Scene;
+        var v = MainAccountData.ver;
+
+        var args =
+        "code=" + code + "&" +
+        "nickname=" + nickname + "&" +
+        "avatar=" + avatar + "&" +
+        "gender=" + gender + "&" +
+        "country=" + country + "&" +
+        "province=" + province + "&" +
+        "city=" + city + "&" +
+        "device=" + device + "&" +
+        "share_id=" + share_id + "&" +
+        "scene=" + scene + "&" +
+        "v=" + v;
+
+        Debug.Log("--->>µÇ½¿ªÊ¼" + code);
+        StartCoroutine(PostRequest(PROTOCOLS.Login, args, LoginCallback, null));
+    }
+
+    private void LoginCallback(JsonData jsonData)
+    {
+        //Debug.Log("LoadXJ_Completecb");
+        //Debug.Log(_text);
+
+        new MainAccountData(jsonData);
+
+        MainAccountData.Instance.JundgCfg(jsonData["table_version"].ToString(), () =>
+         {
+             if (mlogincomplete != null) mlogincomplete();
+         });
+
+
+    }
+
+
+    public void HttpPostRequest_Send(string protocol, Dictionary<string, string> param, System.Action<JsonData> completecb, System.Action<JsonData> errorcb, bool hasToken = true)
+    {
+        var jsonString = "";
+
+        if (hasToken)
+        {
+            jsonString = "token=" + MainAccountData.Instance.token + "&";
+        }
+
+
+        if (protocol == PROTOCOLS.game || protocol == PROTOCOLS.end || protocol == PROTOCOLS.fission || protocol == PROTOCOLS.vd || protocol == PROTOCOLS.themefission || protocol == PROTOCOLS.revival || protocol == PROTOCOLS.Sign || protocol == PROTOCOLS.Buy)
+        {
+            string _newStr = "abcdefghijkimnopqrstuvwxyz0123456789";
+            string _code = "{";
+            string _mask = "";
+
+            for (int i = 0; i < 4; i++)
+            {
+                _mask += _newStr[UnityEngine.Random.Range(0, 100) % _newStr.Length];
+            }
+
+            int _newIndex = 0;
+
+            if (param != null)
+            {
+                foreach (var item in param)
+                {
+                    _newIndex++;
+                    string key = item.Key;
+                    string value = item.Value;
+
+                    _code += "\"" + key + "\":\"" + value + "\"";
+
+                    if (_newIndex < param.Count)
+                    {
+                        _code += ",";
+                    }
+                    else
+                    {
+                        _code += "}";
+                    }
+                }
+            }
+
+            jsonString += "_r=" + _mask + this.base64Encode(_code);
+        }
+        else
+        {
+            if (param != null)
+            {
+                var _index = 0;
+                foreach (var item in param)
+                {
+                    _index++;
+                    string key = item.Key;
+                    string value = item.Value;
+
+                    jsonString += key + "=" + value;
+                    if (_index < param.Count)
+                    {
+                        jsonString += "&";
+                    }
+                }
+            }
+
+        }
+
+        StartCoroutine(this.PostRequest(protocol, jsonString, completecb, errorcb)); ;
+    }
+
+    private IEnumerator PostRequest(string protocol, string jsonString, Action<JsonData> completecb, Action<JsonData> errorcb)
+    {
+        byte[] bodyRaw = Encoding.UTF8.GetBytes(jsonString);
+        string url = PROTOCOLS.URL + protocol + "?" + jsonString;
+        Debug.Log("PostRequest--->>>url-->" + url);
+        using (UnityWebRequest webRequest = new UnityWebRequest(url, "POST", new DownloadHandlerBuffer(), new UploadHandlerRaw(bodyRaw)))
+        {
+            webRequest.SetRequestHeader("Content-Type", "application/json");
+
+            yield return webRequest.SendWebRequest();
+
+            if (webRequest.isHttpError || webRequest.isNetworkError)
+            {
+                Debug.LogError(webRequest.error + "\n" + webRequest.downloadHandler.text);
+                if (errorcb != null)
+                {
+                    this.onHttpRequestErrorcb(webRequest.downloadHandler.text, errorcb);
+                }
+            }
+            else
+            {
+
+                if (completecb != null)
+                {
+                    this.onHttpRequestComplete(webRequest.downloadHandler.text, completecb, errorcb);
+                }
+            }
+        }
+    }
+
+    private void onHttpRequestComplete(string _text, Action<JsonData> completecb, Action<JsonData> errorcb)
+    {
+
+        //JObject obj = JsonConvert.DeserializeObject(_text);
+
+        JsonData valuePairs = JsonMapper.ToObject(_text);
+
+
+
+        if (valuePairs["code"].ToString() != "0")
+        {
+            Debug.Log("Error! Http request complete error" + valuePairs["message"]);
+            if (errorcb != null)
+            {
+                errorcb(valuePairs);
+            }
+            return;
+        }
+        if (completecb != null)
+        {
+            Debug.Log(_text);
+            completecb(valuePairs);
+        }
+    }
+
+    private void onHttpRequestErrorcb(string _text, Action<JsonData> errorcb)
+    {
+        JsonData valuePairs = JsonMapper.ToObject(_text);
+        Debug.Log("Error! Http request error..." + valuePairs["message"]);
+
+        if (errorcb != null)
+        {
+            errorcb(valuePairs);
+        }
+    }
+
+    private string base64Encode(string str)
+    {
+
+        Debug.Log("base64Encode-->>" + str);
+        int c1, c2, c3;
+        string _base64Encode = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
+        char[] base64EncodeChars = _base64Encode.ToCharArray();
+        char[] strChars = str.ToCharArray();
+        int i = 0;
+        int len = str.Length;
+        string stringStr = "";
+        while (i < len)
+        {
+            c1 = strChars[i++] & 0xff;
+
+            if (i == len)
+            {
+                stringStr += base64EncodeChars[c1 >> 2];
+                stringStr += base64EncodeChars[(c1 & 0x3) << 4];
+                stringStr += "==";
+                break;
+            }
+            c2 = str[i++];
+            if (i == len)
+            {
+                stringStr += base64EncodeChars[c1 >> 2];
+                stringStr += base64EncodeChars[((c1 & 0x3) << 4) | ((c2 & 0xF0) >> 4)];
+                stringStr += base64EncodeChars[(c2 & 0xF) << 2];
+                stringStr += "=";
+                break;
+            }
+            c3 = str[i++];
+            stringStr += base64EncodeChars[c1 >> 2];
+            stringStr += base64EncodeChars[((c1 & 0x3) << 4) | ((c2 & 0xF0) >> 4)];
+            stringStr += base64EncodeChars[((c2 & 0xF) << 2) | ((c3 & 0xC0) >> 6)];
+            stringStr += base64EncodeChars[c3 & 0x3F];
+        }
+        Debug.Log(stringStr.Length + "  " + stringStr);
+        return stringStr;
+    }
+
+    void OnHpptError()
+    {
+
+    }
+}

+ 11 - 0
Assets/GameMain/Scripts/Web/WebManager.cs.meta

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

+ 13 - 0
Assets/Launcher.unity

@@ -962,6 +962,7 @@ GameObject:
   m_Component:
   - component: {fileID: 1726499046}
   - component: {fileID: 1726499047}
+  - component: {fileID: 1726499048}
   m_Layer: 0
   m_Name: Manager
   m_TagString: Untagged
@@ -996,6 +997,18 @@ MonoBehaviour:
   m_Name: 
   m_EditorClassIdentifier: 
   testPlayer: {fileID: 0}
+--- !u!114 &1726499048
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1726499045}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 7034778e5ef600047a570fd769b1061a, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
 --- !u!1 &1852670052
 GameObject:
   m_ObjectHideFlags: 0

+ 8 - 0
Assets/MagicaCloth.meta

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

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted).meta

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

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted)/Material.meta

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

+ 77 - 0
Assets/MagicaCloth/Example (Can be deleted)/Material/Floor.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: Floor
+  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.5
+    - _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.21726185, g: 0.13216448, b: 0.2830189, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted)/Material/Floor.mat.meta

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

+ 77 - 0
Assets/MagicaCloth/Example (Can be deleted)/Material/Red.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: Red
+  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.5
+    - _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/MagicaCloth/Example (Can be deleted)/Material/Red.mat.meta

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

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted)/Model.meta

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

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted)/Model/Arrow.meta

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

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted)/Model/Arrow/Materials.meta

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

+ 77 - 0
Assets/MagicaCloth/Example (Can be deleted)/Model/Arrow/Materials/Arrow.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: Arrow
+  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.237
+    - _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: 1, b: 0.032362938, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 0}

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted)/Model/Arrow/Materials/Arrow.mat.meta

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

BIN
Assets/MagicaCloth/Example (Can be deleted)/Model/Arrow/arrow_a.fbx


+ 97 - 0
Assets/MagicaCloth/Example (Can be deleted)/Model/Arrow/arrow_a.fbx.meta

@@ -0,0 +1,97 @@
+fileFormatVersion: 2
+guid: dcf3c9ecf4480a04aab79464827ff937
+ModelImporter:
+  serializedVersion: 23
+  fileIDToRecycleName:
+    100000: //RootNode
+    400000: //RootNode
+    2100000: Arrow
+    2300000: //RootNode
+    3300000: //RootNode
+    4300000: Arrow
+  externalObjects: {}
+  materials:
+    importMaterials: 1
+    materialName: 0
+    materialSearch: 1
+    materialLocation: 0
+  animations:
+    legacyGenerateAnimations: 4
+    bakeSimulation: 0
+    resampleCurves: 1
+    optimizeGameObjects: 0
+    motionNodeName: 
+    rigImportErrors: 
+    rigImportWarnings: 
+    animationImportErrors: 
+    animationImportWarnings: 
+    animationRetargetingWarnings: 
+    animationDoRetargetingWarnings: 0
+    importAnimatedCustomProperties: 0
+    importConstraints: 0
+    animationCompression: 1
+    animationRotationError: 0.5
+    animationPositionError: 0.5
+    animationScaleError: 0.5
+    animationWrapMode: 0
+    extraExposedTransformPaths: []
+    extraUserProperties: []
+    clipAnimations: []
+    isReadable: 1
+  meshes:
+    lODScreenPercentages: []
+    globalScale: 1
+    meshCompression: 0
+    addColliders: 0
+    useSRGBMaterialColor: 1
+    importVisibility: 1
+    importBlendShapes: 1
+    importCameras: 1
+    importLights: 1
+    swapUVChannels: 0
+    generateSecondaryUV: 0
+    useFileUnits: 1
+    optimizeMeshForGPU: 1
+    keepQuads: 0
+    weldVertices: 1
+    preserveHierarchy: 0
+    indexFormat: 0
+    secondaryUVAngleDistortion: 8
+    secondaryUVAreaDistortion: 15.000001
+    secondaryUVHardAngle: 88
+    secondaryUVPackMargin: 4
+    useFileScale: 1
+    previousCalculatedGlobalScale: 1
+    hasPreviousCalculatedGlobalScale: 0
+  tangentSpace:
+    normalSmoothAngle: 60
+    normalImportMode: 0
+    tangentImportMode: 3
+    normalCalculationMode: 4
+    legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
+    blendShapeNormalImportMode: 1
+    normalSmoothingSource: 0
+  importAnimation: 1
+  copyAvatar: 0
+  humanDescription:
+    serializedVersion: 2
+    human: []
+    skeleton: []
+    armTwist: 0.5
+    foreArmTwist: 0.5
+    upperLegTwist: 0.5
+    legTwist: 0.5
+    armStretch: 0.05
+    legStretch: 0.05
+    feetSpacing: 0
+    rootMotionBoneName: 
+    hasTranslationDoF: 0
+    hasExtraRoot: 0
+    skeletonHasParents: 1
+  lastHumanDescriptionAvatarSource: {instanceID: 0}
+  animationType: 0
+  humanoidOversampling: 1
+  additionalBone: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted)/Model/Sphere.meta

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

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted)/Model/Sphere/Materials.meta

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

+ 77 - 0
Assets/MagicaCloth/Example (Can be deleted)/Model/Sphere/Materials/mat.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: mat
+  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.475
+    - _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.8, g: 0.8, b: 0.8, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 0}

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted)/Model/Sphere/Materials/mat.mat.meta

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

BIN
Assets/MagicaCloth/Example (Can be deleted)/Model/Sphere/sphere.fbx


+ 102 - 0
Assets/MagicaCloth/Example (Can be deleted)/Model/Sphere/sphere.fbx.meta

@@ -0,0 +1,102 @@
+fileFormatVersion: 2
+guid: c5f363c1d4eb0b24d870b6a90b93d3a9
+ModelImporter:
+  serializedVersion: 23
+  fileIDToRecycleName:
+    100000: //RootNode
+    400000: //RootNode
+    2100000: mat
+    2300000: //RootNode
+    3300000: //RootNode
+    4300000: sphere
+  externalObjects:
+  - first:
+      type: UnityEngine:Material
+      assembly: UnityEngine.CoreModule
+      name: mat
+    second: {fileID: 2100000, guid: 482c8605a0c81a8448eebd237ac3de8c, type: 2}
+  materials:
+    importMaterials: 1
+    materialName: 0
+    materialSearch: 1
+    materialLocation: 0
+  animations:
+    legacyGenerateAnimations: 4
+    bakeSimulation: 0
+    resampleCurves: 1
+    optimizeGameObjects: 0
+    motionNodeName: 
+    rigImportErrors: 
+    rigImportWarnings: 
+    animationImportErrors: 
+    animationImportWarnings: 
+    animationRetargetingWarnings: 
+    animationDoRetargetingWarnings: 0
+    importAnimatedCustomProperties: 0
+    importConstraints: 0
+    animationCompression: 1
+    animationRotationError: 0.5
+    animationPositionError: 0.5
+    animationScaleError: 0.5
+    animationWrapMode: 0
+    extraExposedTransformPaths: []
+    extraUserProperties: []
+    clipAnimations: []
+    isReadable: 1
+  meshes:
+    lODScreenPercentages: []
+    globalScale: 1
+    meshCompression: 0
+    addColliders: 0
+    useSRGBMaterialColor: 1
+    importVisibility: 1
+    importBlendShapes: 1
+    importCameras: 1
+    importLights: 1
+    swapUVChannels: 0
+    generateSecondaryUV: 0
+    useFileUnits: 1
+    optimizeMeshForGPU: 0
+    keepQuads: 0
+    weldVertices: 1
+    preserveHierarchy: 0
+    indexFormat: 0
+    secondaryUVAngleDistortion: 8
+    secondaryUVAreaDistortion: 15.000001
+    secondaryUVHardAngle: 88
+    secondaryUVPackMargin: 4
+    useFileScale: 1
+    previousCalculatedGlobalScale: 1
+    hasPreviousCalculatedGlobalScale: 0
+  tangentSpace:
+    normalSmoothAngle: 60
+    normalImportMode: 0
+    tangentImportMode: 3
+    normalCalculationMode: 4
+    legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
+    blendShapeNormalImportMode: 1
+    normalSmoothingSource: 0
+  importAnimation: 1
+  copyAvatar: 0
+  humanDescription:
+    serializedVersion: 2
+    human: []
+    skeleton: []
+    armTwist: 0.5
+    foreArmTwist: 0.5
+    upperLegTwist: 0.5
+    legTwist: 0.5
+    armStretch: 0.05
+    legStretch: 0.05
+    feetSpacing: 0
+    rootMotionBoneName: 
+    hasTranslationDoF: 0
+    hasExtraRoot: 0
+    skeletonHasParents: 1
+  lastHumanDescriptionAvatarSource: {instanceID: 0}
+  animationType: 0
+  humanoidOversampling: 1
+  additionalBone: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted)/Model/plane.meta

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

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted)/Model/plane/Materials.meta

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

+ 77 - 0
Assets/MagicaCloth/Example (Can be deleted)/Model/plane/Materials/mat.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: mat
+  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.5
+    - _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.8, g: 0.8, b: 0.8, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 0}

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted)/Model/plane/Materials/mat.mat.meta

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

BIN
Assets/MagicaCloth/Example (Can be deleted)/Model/plane/plane.fbx


+ 102 - 0
Assets/MagicaCloth/Example (Can be deleted)/Model/plane/plane.fbx.meta

@@ -0,0 +1,102 @@
+fileFormatVersion: 2
+guid: aea19eb42b755c14abd7f8a0ccf17397
+ModelImporter:
+  serializedVersion: 23
+  fileIDToRecycleName:
+    100000: //RootNode
+    400000: //RootNode
+    2100000: mat
+    2300000: //RootNode
+    3300000: //RootNode
+    4300000: grid
+  externalObjects:
+  - first:
+      type: UnityEngine:Material
+      assembly: UnityEngine.CoreModule
+      name: mat
+    second: {fileID: 2100000, guid: b8ffcce7bb5973c4a9272b352ce935aa, type: 2}
+  materials:
+    importMaterials: 1
+    materialName: 0
+    materialSearch: 1
+    materialLocation: 0
+  animations:
+    legacyGenerateAnimations: 4
+    bakeSimulation: 0
+    resampleCurves: 1
+    optimizeGameObjects: 0
+    motionNodeName: 
+    rigImportErrors: 
+    rigImportWarnings: 
+    animationImportErrors: 
+    animationImportWarnings: 
+    animationRetargetingWarnings: 
+    animationDoRetargetingWarnings: 0
+    importAnimatedCustomProperties: 0
+    importConstraints: 0
+    animationCompression: 1
+    animationRotationError: 0.5
+    animationPositionError: 0.5
+    animationScaleError: 0.5
+    animationWrapMode: 0
+    extraExposedTransformPaths: []
+    extraUserProperties: []
+    clipAnimations: []
+    isReadable: 1
+  meshes:
+    lODScreenPercentages: []
+    globalScale: 1
+    meshCompression: 0
+    addColliders: 0
+    useSRGBMaterialColor: 1
+    importVisibility: 1
+    importBlendShapes: 1
+    importCameras: 1
+    importLights: 1
+    swapUVChannels: 0
+    generateSecondaryUV: 0
+    useFileUnits: 1
+    optimizeMeshForGPU: 0
+    keepQuads: 0
+    weldVertices: 1
+    preserveHierarchy: 0
+    indexFormat: 0
+    secondaryUVAngleDistortion: 8
+    secondaryUVAreaDistortion: 15.000001
+    secondaryUVHardAngle: 88
+    secondaryUVPackMargin: 4
+    useFileScale: 1
+    previousCalculatedGlobalScale: 1
+    hasPreviousCalculatedGlobalScale: 0
+  tangentSpace:
+    normalSmoothAngle: 60
+    normalImportMode: 0
+    tangentImportMode: 3
+    normalCalculationMode: 4
+    legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
+    blendShapeNormalImportMode: 1
+    normalSmoothingSource: 0
+  importAnimation: 1
+  copyAvatar: 0
+  humanDescription:
+    serializedVersion: 2
+    human: []
+    skeleton: []
+    armTwist: 0.5
+    foreArmTwist: 0.5
+    upperLegTwist: 0.5
+    legTwist: 0.5
+    armStretch: 0.05
+    legStretch: 0.05
+    feetSpacing: 0
+    rootMotionBoneName: 
+    hasTranslationDoF: 0
+    hasExtraRoot: 0
+    skeletonHasParents: 1
+  lastHumanDescriptionAvatarSource: {instanceID: 0}
+  animationType: 0
+  humanoidOversampling: 1
+  additionalBone: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted)/Prefabs.meta

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

+ 157 - 0
Assets/MagicaCloth/Example (Can be deleted)/Prefabs/BlastWave.prefab

@@ -0,0 +1,157 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!1 &186113566323453769
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 186113566323453775}
+  - component: {fileID: 186113566323453774}
+  - component: {fileID: 6054638483838839346}
+  m_Layer: 0
+  m_Name: BlastWave
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &186113566323453775
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 186113566323453769}
+  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: 186113566517219699}
+  m_Father: {fileID: 0}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &186113566323453774
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 186113566323453769}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 58d4ec1b165e6d749b004c18febd33fa, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  main: 100
+  turbulence: 1
+  frequency: 1
+  areaSize: {x: 5, y: 5, z: 5}
+  areaRadius: 6
+  directionAngleX: 0
+  directionAngleY: 0
+  directionType: 1
+  attenuation:
+    startValue: 1
+    endValue: 0
+    useEndValue: 1
+    curveValue: 0.5
+    useCurveValue: 1
+  shapeType: 1
+  isAddition: 1
+--- !u!114 &6054638483838839346
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 186113566323453769}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 81500dce05b6f204499c2cd22db45555, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  wind: {fileID: 186113566323453774}
+  attenuationStartTime: 1
+  attenuationTime: 0.5
+--- !u!1 &186113566517219698
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 186113566517219699}
+  - component: {fileID: 186113566517219697}
+  - component: {fileID: 186113566517219696}
+  m_Layer: 0
+  m_Name: Sphere
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &186113566517219699
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 186113566517219698}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 0.5, y: 0.5, z: 0.5}
+  m_Children: []
+  m_Father: {fileID: 186113566323453775}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &186113566517219697
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 186113566517219698}
+  m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
+--- !u!23 &186113566517219696
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 186113566517219698}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: 2100000, guid: 19b83aa29c2a79e4aa1503faf643fc14, type: 2}
+  m_StaticBatchInfo:
+    firstSubMesh: 0
+    subMeshCount: 0
+  m_StaticBatchRoot: {fileID: 0}
+  m_ProbeAnchor: {fileID: 0}
+  m_LightProbeVolumeOverride: {fileID: 0}
+  m_ScaleInLightmap: 1
+  m_ReceiveGI: 1
+  m_PreserveUVs: 0
+  m_IgnoreNormalsForChartDetection: 0
+  m_ImportantGI: 0
+  m_StitchLightmapSeams: 1
+  m_SelectedEditorRenderState: 3
+  m_MinimumChartSize: 4
+  m_AutoUVMaxDistance: 0.5
+  m_AutoUVMaxAngle: 89
+  m_LightmapParameters: {fileID: 0}
+  m_SortingLayerID: 0
+  m_SortingLayer: 0
+  m_SortingOrder: 0

+ 7 - 0
Assets/MagicaCloth/Example (Can be deleted)/Prefabs/BlastWave.prefab.meta

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

+ 488 - 0
Assets/MagicaCloth/Example (Can be deleted)/Prefabs/Env.prefab

@@ -0,0 +1,488 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!1 &260505448
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 260505449}
+  - component: {fileID: 260505450}
+  m_Layer: 0
+  m_Name: Directional light (1)
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!4 &260505449
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 260505448}
+  m_LocalRotation: {x: -0.27041885, y: 0.2748853, z: -0.898982, w: 0.20770945}
+  m_LocalPosition: {x: -0.9961195, y: 2.05728, z: -0.18584895}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children: []
+  m_Father: {fileID: 2547635730325289800}
+  m_RootOrder: 4
+  m_LocalEulerAnglesHint: {x: 157.549, y: -139.486, z: 34.397995}
+--- !u!108 &260505450
+Light:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 260505448}
+  m_Enabled: 1
+  serializedVersion: 9
+  m_Type: 1
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_Intensity: 0.5
+  m_Range: 10
+  m_SpotAngle: 30
+  m_InnerSpotAngle: 21.80208
+  m_CookieSize: 10
+  m_Shadows:
+    m_Type: 2
+    m_Resolution: -1
+    m_CustomResolution: -1
+    m_Strength: 1
+    m_Bias: 0.05
+    m_NormalBias: 0.4
+    m_NearPlane: 0.2
+    m_CullingMatrixOverride:
+      e00: 1
+      e01: 0
+      e02: 0
+      e03: 0
+      e10: 0
+      e11: 1
+      e12: 0
+      e13: 0
+      e20: 0
+      e21: 0
+      e22: 1
+      e23: 0
+      e30: 0
+      e31: 0
+      e32: 0
+      e33: 1
+    m_UseCullingMatrixOverride: 0
+  m_Cookie: {fileID: 0}
+  m_DrawHalo: 0
+  m_Flare: {fileID: 0}
+  m_RenderMode: 0
+  m_CullingMask:
+    serializedVersion: 2
+    m_Bits: 4294967295
+  m_RenderingLayerMask: 1
+  m_Lightmapping: 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!1 &2547635728972018405
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 2547635728972018425}
+  - component: {fileID: 2547635728972018424}
+  - component: {fileID: 2547635728972018427}
+  - component: {fileID: 2547635728972018426}
+  m_Layer: 0
+  m_Name: Plane
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &2547635728972018425
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2547635728972018405}
+  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children: []
+  m_Father: {fileID: 2547635730325289800}
+  m_RootOrder: 1
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &2547635728972018424
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2547635728972018405}
+  m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
+--- !u!64 &2547635728972018427
+MeshCollider:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2547635728972018405}
+  m_Material: {fileID: 0}
+  m_IsTrigger: 0
+  m_Enabled: 1
+  serializedVersion: 3
+  m_Convex: 0
+  m_CookingOptions: 14
+  m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
+--- !u!23 &2547635728972018426
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2547635728972018405}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_MotionVectors: 1
+  m_LightProbeUsage: 0
+  m_ReflectionProbeUsage: 1
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: 2100000, guid: 0fabbaa20a36d468a84e4925db02ecc5, type: 2}
+  m_StaticBatchInfo:
+    firstSubMesh: 0
+    subMeshCount: 0
+  m_StaticBatchRoot: {fileID: 0}
+  m_ProbeAnchor: {fileID: 0}
+  m_LightProbeVolumeOverride: {fileID: 0}
+  m_ScaleInLightmap: 1
+  m_ReceiveGI: 1
+  m_PreserveUVs: 0
+  m_IgnoreNormalsForChartDetection: 0
+  m_ImportantGI: 0
+  m_StitchLightmapSeams: 1
+  m_SelectedEditorRenderState: 3
+  m_MinimumChartSize: 4
+  m_AutoUVMaxDistance: 0.5
+  m_AutoUVMaxAngle: 89
+  m_LightmapParameters: {fileID: 0}
+  m_SortingLayerID: 0
+  m_SortingLayer: 0
+  m_SortingOrder: 0
+--- !u!1 &2547635729507789579
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 2547635729507789576}
+  m_Layer: 0
+  m_Name: CameraTarget
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &2547635729507789576
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2547635729507789579}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0.851, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children: []
+  m_Father: {fileID: 2547635730600927010}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &2547635729528414492
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 2547635729528414481}
+  - component: {fileID: 2547635729528414480}
+  - component: {fileID: 2547635729528414493}
+  m_Layer: 0
+  m_Name: Main Camera
+  m_TagString: MainCamera
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &2547635729528414481
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2547635729528414492}
+  m_LocalRotation: {x: -0, y: 1, z: -0, w: -0.00000016292068}
+  m_LocalPosition: {x: 0, y: 0.8, z: 2.5925958}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children: []
+  m_Father: {fileID: 2547635730325289800}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!20 &2547635729528414480
+Camera:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2547635729528414492}
+  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.01
+  far clip plane: 20
+  field of view: 35.8
+  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!81 &2547635729528414493
+AudioListener:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2547635729528414492}
+  m_Enabled: 1
+--- !u!1 &2547635729871334578
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 2547635729871499410}
+  - component: {fileID: 2547635729882128786}
+  m_Layer: 0
+  m_Name: Directional light
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &2547635729871499410
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2547635729871334578}
+  m_LocalRotation: {x: -0.8567529, y: 0.3769421, z: -0.24336958, w: -0.25428426}
+  m_LocalPosition: {x: -0.9961195, y: 2.05728, z: -0.18584895}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children: []
+  m_Father: {fileID: 2547635730325289800}
+  m_RootOrder: 3
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!108 &2547635729882128786
+Light:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2547635729871334578}
+  m_Enabled: 1
+  serializedVersion: 9
+  m_Type: 1
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_Intensity: 1
+  m_Range: 10
+  m_SpotAngle: 30
+  m_InnerSpotAngle: 21.80208
+  m_CookieSize: 10
+  m_Shadows:
+    m_Type: 2
+    m_Resolution: -1
+    m_CustomResolution: -1
+    m_Strength: 1
+    m_Bias: 0.05
+    m_NormalBias: 0.4
+    m_NearPlane: 0.2
+    m_CullingMatrixOverride:
+      e00: 1
+      e01: 0
+      e02: 0
+      e03: 0
+      e10: 0
+      e11: 1
+      e12: 0
+      e13: 0
+      e20: 0
+      e21: 0
+      e22: 1
+      e23: 0
+      e30: 0
+      e31: 0
+      e32: 0
+      e33: 1
+    m_UseCullingMatrixOverride: 0
+  m_Cookie: {fileID: 0}
+  m_DrawHalo: 0
+  m_Flare: {fileID: 0}
+  m_RenderMode: 0
+  m_CullingMask:
+    serializedVersion: 2
+    m_Bits: 4294967295
+  m_RenderingLayerMask: 1
+  m_Lightmapping: 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!1 &2547635730325289803
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 2547635730325289800}
+  m_Layer: 0
+  m_Name: Env
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &2547635730325289800
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2547635730325289803}
+  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: 2547635729528414481}
+  - {fileID: 2547635728972018425}
+  - {fileID: 2547635730600927010}
+  - {fileID: 2547635729871499410}
+  - {fileID: 260505449}
+  m_Father: {fileID: 0}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &2547635730600927020
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 2547635730600927010}
+  - component: {fileID: 2547635730600927021}
+  m_Layer: 0
+  m_Name: CameraControl
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &2547635730600927010
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2547635730600927020}
+  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: 2547635729507789576}
+  m_Father: {fileID: 2547635730325289800}
+  m_RootOrder: 2
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &2547635730600927021
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2547635730600927020}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 6e1bd0d2f898e814aac9eb6ac6b1a2b9, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  cameraTransform: {fileID: 2547635729528414481}
+  cameraTarget: {fileID: 2547635729507789576}
+  cameraTargetPos: {x: 0, y: 0, z: 0}
+  cameraTargetOffset: {x: 0, y: 0, z: 0}
+  cameraDist: 2.6
+  cameraPitch: 14
+  cameraYaw: 180
+  cameraDistHokanTime: 0.1
+  cameraAngleHokanTime: 0.1
+  cameraDistSpeed: 0.02
+  cameraDistMax: 8
+  cameraDistMin: 0.7
+  cameraYawSpeed: 5
+  cameraPitchSpeed: 5
+  cameraMaxAngleSpeed: 10
+  cameraPitchMax: 50
+  cameraPitchMin: -50
+  moveMode: 1
+  moveSpeed: 0.03

+ 7 - 0
Assets/MagicaCloth/Example (Can be deleted)/Prefabs/Env.prefab.meta

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

+ 575 - 0
Assets/MagicaCloth/Example (Can be deleted)/Prefabs/PartsItemUI.prefab

@@ -0,0 +1,575 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!1 &2299107066275762350
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 2299107066275762349}
+  - component: {fileID: 2299107066275762338}
+  - component: {fileID: 2299107066275762339}
+  - component: {fileID: 2299107066275762348}
+  m_Layer: 5
+  m_Name: ButtonPrev
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &2299107066275762349
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107066275762350}
+  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: 2299107066475326074}
+  m_Father: {fileID: 2299107066895776516}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 0, y: 0}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 70, y: 40}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &2299107066275762338
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107066275762350}
+  m_CullTransparentMesh: 0
+--- !u!114 &2299107066275762339
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107066275762350}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_RaycastTarget: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
+  m_Type: 1
+  m_PreserveAspect: 0
+  m_FillCenter: 1
+  m_FillMethod: 4
+  m_FillAmount: 1
+  m_FillClockwise: 1
+  m_FillOrigin: 0
+  m_UseSpriteMesh: 0
+--- !u!114 &2299107066275762348
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107066275762350}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Navigation:
+    m_Mode: 3
+    m_SelectOnUp: {fileID: 0}
+    m_SelectOnDown: {fileID: 0}
+    m_SelectOnLeft: {fileID: 0}
+    m_SelectOnRight: {fileID: 0}
+  m_Transition: 1
+  m_Colors:
+    m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+    m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+    m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+    m_ColorMultiplier: 1
+    m_FadeDuration: 0.1
+  m_SpriteState:
+    m_HighlightedSprite: {fileID: 0}
+    m_PressedSprite: {fileID: 0}
+    m_DisabledSprite: {fileID: 0}
+  m_AnimationTriggers:
+    m_NormalTrigger: Normal
+    m_HighlightedTrigger: Highlighted
+    m_PressedTrigger: Pressed
+    m_DisabledTrigger: Disabled
+  m_Interactable: 1
+  m_TargetGraphic: {fileID: 2299107066275762339}
+  m_OnClick:
+    m_PersistentCalls:
+      m_Calls: []
+--- !u!1 &2299107066475326075
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 2299107066475326074}
+  - component: {fileID: 2299107066475326072}
+  - component: {fileID: 2299107066475326073}
+  m_Layer: 5
+  m_Name: Text
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &2299107066475326074
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107066475326075}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children: []
+  m_Father: {fileID: 2299107066275762349}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 1, y: 1}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 0, y: 0}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &2299107066475326072
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107066475326075}
+  m_CullTransparentMesh: 0
+--- !u!114 &2299107066475326073
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107066475326075}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
+  m_RaycastTarget: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_FontData:
+    m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
+    m_FontSize: 25
+    m_FontStyle: 0
+    m_BestFit: 0
+    m_MinSize: 2
+    m_MaxSize: 40
+    m_Alignment: 4
+    m_AlignByGeometry: 0
+    m_RichText: 1
+    m_HorizontalOverflow: 0
+    m_VerticalOverflow: 0
+    m_LineSpacing: 1
+  m_Text: <
+--- !u!1 &2299107066895776517
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 2299107066895776516}
+  - component: {fileID: 2299107066895776571}
+  m_Layer: 5
+  m_Name: Horizon
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &2299107066895776516
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107066895776517}
+  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: 2299107066275762349}
+  - {fileID: 2299107067163271223}
+  m_Father: {fileID: 2299107067942980262}
+  m_RootOrder: 1
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 1}
+  m_AnchorMax: {x: 0, y: 1}
+  m_AnchoredPosition: {x: 50, y: -76.3}
+  m_SizeDelta: {x: 100, y: 100}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &2299107066895776571
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107066895776517}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: -405508275, guid: f70555f144d8491a825f0804e09c671c, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Padding:
+    m_Left: 0
+    m_Right: 0
+    m_Top: 0
+    m_Bottom: 0
+  m_ChildAlignment: 0
+  m_Spacing: 10
+  m_ChildForceExpandWidth: 1
+  m_ChildForceExpandHeight: 1
+  m_ChildControlWidth: 0
+  m_ChildControlHeight: 0
+--- !u!1 &2299107067163271216
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 2299107067163271223}
+  - component: {fileID: 2299107067163271220}
+  - component: {fileID: 2299107067163271221}
+  - component: {fileID: 2299107067163271222}
+  m_Layer: 5
+  m_Name: ButtonNext
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &2299107067163271223
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107067163271216}
+  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: 2299107068086209504}
+  m_Father: {fileID: 2299107066895776516}
+  m_RootOrder: 1
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 0, y: 0}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 70, y: 40}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &2299107067163271220
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107067163271216}
+  m_CullTransparentMesh: 0
+--- !u!114 &2299107067163271221
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107067163271216}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_RaycastTarget: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
+  m_Type: 1
+  m_PreserveAspect: 0
+  m_FillCenter: 1
+  m_FillMethod: 4
+  m_FillAmount: 1
+  m_FillClockwise: 1
+  m_FillOrigin: 0
+  m_UseSpriteMesh: 0
+--- !u!114 &2299107067163271222
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107067163271216}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Navigation:
+    m_Mode: 3
+    m_SelectOnUp: {fileID: 0}
+    m_SelectOnDown: {fileID: 0}
+    m_SelectOnLeft: {fileID: 0}
+    m_SelectOnRight: {fileID: 0}
+  m_Transition: 1
+  m_Colors:
+    m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+    m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+    m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+    m_ColorMultiplier: 1
+    m_FadeDuration: 0.1
+  m_SpriteState:
+    m_HighlightedSprite: {fileID: 0}
+    m_PressedSprite: {fileID: 0}
+    m_DisabledSprite: {fileID: 0}
+  m_AnimationTriggers:
+    m_NormalTrigger: Normal
+    m_HighlightedTrigger: Highlighted
+    m_PressedTrigger: Pressed
+    m_DisabledTrigger: Disabled
+  m_Interactable: 1
+  m_TargetGraphic: {fileID: 2299107067163271221}
+  m_OnClick:
+    m_PersistentCalls:
+      m_Calls: []
+--- !u!1 &2299107067253525139
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 2299107067253525138}
+  - component: {fileID: 2299107067253525136}
+  - component: {fileID: 2299107067253525137}
+  m_Layer: 5
+  m_Name: Text
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &2299107067253525138
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107067253525139}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children: []
+  m_Father: {fileID: 2299107067942980262}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 1}
+  m_AnchorMax: {x: 0, y: 1}
+  m_AnchoredPosition: {x: -0.000091552734, y: 0}
+  m_SizeDelta: {x: 160, y: 30}
+  m_Pivot: {x: 0, y: 1}
+--- !u!222 &2299107067253525136
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107067253525139}
+  m_CullTransparentMesh: 0
+--- !u!114 &2299107067253525137
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107067253525139}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_RaycastTarget: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_FontData:
+    m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
+    m_FontSize: 20
+    m_FontStyle: 0
+    m_BestFit: 0
+    m_MinSize: 0
+    m_MaxSize: 40
+    m_Alignment: 0
+    m_AlignByGeometry: 0
+    m_RichText: 1
+    m_HorizontalOverflow: 1
+    m_VerticalOverflow: 0
+    m_LineSpacing: 1
+  m_Text: New Text
+--- !u!1 &2299107067942980263
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 2299107067942980262}
+  - component: {fileID: 2299107067942980261}
+  m_Layer: 5
+  m_Name: PartsItemUI
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &2299107067942980262
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107067942980263}
+  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: 2299107067253525138}
+  - {fileID: 2299107066895776516}
+  m_Father: {fileID: 0}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 0, y: 0}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 100, y: 80}
+  m_Pivot: {x: 0.5, y: 1}
+--- !u!114 &2299107067942980261
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107067942980263}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 5947a6f25912d084cbe6f7a509e61811, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  text: {fileID: 2299107067253525137}
+  prefButton: {fileID: 2299107066275762348}
+  nextButton: {fileID: 2299107067163271222}
+--- !u!1 &2299107068086209505
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 2299107068086209504}
+  - component: {fileID: 2299107068086209510}
+  - component: {fileID: 2299107068086209511}
+  m_Layer: 5
+  m_Name: Text
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &2299107068086209504
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107068086209505}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children: []
+  m_Father: {fileID: 2299107067163271223}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 1, y: 1}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 0, y: 0}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &2299107068086209510
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107068086209505}
+  m_CullTransparentMesh: 0
+--- !u!114 &2299107068086209511
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2299107068086209505}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
+  m_RaycastTarget: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_FontData:
+    m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
+    m_FontSize: 25
+    m_FontStyle: 0
+    m_BestFit: 0
+    m_MinSize: 2
+    m_MaxSize: 40
+    m_Alignment: 4
+    m_AlignByGeometry: 0
+    m_RichText: 1
+    m_HorizontalOverflow: 0
+    m_VerticalOverflow: 0
+    m_LineSpacing: 1
+  m_Text: '>'

+ 7 - 0
Assets/MagicaCloth/Example (Can be deleted)/Prefabs/PartsItemUI.prefab.meta

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

File diff suppressed because it is too large
+ 4700 - 0
Assets/MagicaCloth/Example (Can be deleted)/Prefabs/WindParticle.prefab


+ 7 - 0
Assets/MagicaCloth/Example (Can be deleted)/Prefabs/WindParticle.prefab.meta

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

File diff suppressed because it is too large
+ 119247 - 0
Assets/MagicaCloth/Example (Can be deleted)/Prefabs/unitychan.prefab


+ 7 - 0
Assets/MagicaCloth/Example (Can be deleted)/Prefabs/unitychan.prefab.meta

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

+ 9 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz.meta

@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 67566b1fb6db905458b9cf2e053360b3
+folderAsset: yes
+timeCreated: 1450714924
+licenseType: Store
+DefaultImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/Avatar.meta

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

File diff suppressed because it is too large
+ 2100 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/Avatar/BodyAvatar.prefab


+ 7 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/Avatar/BodyAvatar.prefab.meta

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

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts.meta

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

File diff suppressed because it is too large
+ 4956 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Misaki_face.prefab


+ 7 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Misaki_face.prefab.meta

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

File diff suppressed because it is too large
+ 8364 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Misaki_hair.prefab


+ 7 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Misaki_hair.prefab.meta

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

File diff suppressed because it is too large
+ 67146 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Summer.prefab


+ 7 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Summer.prefab.meta

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

File diff suppressed because it is too large
+ 3826 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Utc_face.prefab


+ 7 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Utc_face.prefab.meta

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

File diff suppressed because it is too large
+ 6501 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Utc_hair.prefab


+ 7 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Utc_hair.prefab.meta

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

File diff suppressed because it is too large
+ 71073 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Winter.prefab


+ 7 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Winter.prefab.meta

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

File diff suppressed because it is too large
+ 3390 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Yuko_face.prefab


+ 7 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Yuko_face.prefab.meta

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

File diff suppressed because it is too large
+ 4678 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Yuko_hair.prefab


+ 7 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/AvatarParts/Yuko_hair.prefab.meta

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

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/Model2.meta

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

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/Model2/Materials.meta

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

+ 77 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/Model2/Materials/Mi_hair_mat.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: Mi_hair_mat
+  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: 2800000, guid: c9bfff4d4e1f78043a857ca499535aac, type: 3}
+        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.115
+    - _GlossyReflections: 1
+    - _Metallic: 0.107
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 0.6792453, g: 0.43894625, b: 0.43894625, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 0}

+ 8 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/Model2/Materials/Mi_hair_mat.mat.meta

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

+ 77 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/Model2/Materials/Mi_mouth_mat.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: Mi_mouth_mat
+  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: 2800000, guid: c9bfff4d4e1f78043a857ca499535aac, type: 3}
+        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: 0}

+ 0 - 0
Assets/MagicaCloth/Example (Can be deleted)/SD_Kohaku_chanz/Model2/Materials/Mi_mouth_mat.mat.meta


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