Prechádzať zdrojové kódy

人物换装信息本地读写

DESKTOP-5BUCSUT\LSR 1 rok pred
rodič
commit
8929d34e62

+ 7 - 7
SFGgouhuo/Assets/GameResources/Player/PlayerArmature.prefab

@@ -152,7 +152,7 @@ Transform:
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 8762427900362077118}
-  m_LocalRotation: {x: 0.6066471, y: 0.05249239, z: 0.006869742, w: 0.79320663}
+  m_LocalRotation: {x: 0.6067716, y: 0.05248835, z: 0.0068505565, w: 0.79311186}
   m_LocalPosition: {x: 0.000004911422, y: 0.3789641, z: 0.0000036811825}
   m_LocalScale: {x: 0.9999998, y: 1.0000001, z: 0.99999994}
   m_Children:
@@ -494,7 +494,7 @@ Transform:
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 8762427900721381661}
-  m_LocalRotation: {x: -0.00010196164, y: 0.10904452, z: 0.9932993, w: 0.038287476}
+  m_LocalRotation: {x: -0.00008327045, y: 0.10925094, z: 0.9932752, w: 0.038322512}
   m_LocalPosition: {x: -0.06875992, y: -0.042298637, z: 0.022966716}
   m_LocalScale: {x: 0.99999994, y: 1, z: 1.0000001}
   m_Children:
@@ -526,7 +526,7 @@ Transform:
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 8762427900724448093}
-  m_LocalRotation: {x: -0.0005880058, y: 0.10917187, z: 0.99328387, w: -0.03831982}
+  m_LocalRotation: {x: -0.00060594396, y: 0.109324425, z: 0.9932661, w: -0.038345672}
   m_LocalPosition: {x: 0.06875992, y: -0.042298645, z: 0.022966715}
   m_LocalScale: {x: 1, y: 1.0000001, z: 1.0000001}
   m_Children:
@@ -1014,7 +1014,7 @@ Transform:
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 8762427900818529073}
-  m_LocalRotation: {x: 0.6067412, y: -0.05305401, z: -0.006486139, w: 0.79310054}
+  m_LocalRotation: {x: 0.6068329, y: -0.05305453, z: -0.0064697885, w: 0.7930303}
   m_LocalPosition: {x: -0.000004854202, y: 0.37896448, z: 0.0000036954875}
   m_LocalScale: {x: 0.99999976, y: 1, z: 0.9999999}
   m_Children:
@@ -1939,7 +1939,7 @@ Transform:
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 8762427901331142559}
-  m_LocalRotation: {x: -0.08467426, y: -0.0011558824, z: 0.013945349, w: 0.9963105}
+  m_LocalRotation: {x: -0.0850364, y: -0.0011557972, z: 0.014004868, w: 0.9962788}
   m_LocalPosition: {x: -0.000014133454, y: 0.28059646, z: -0.0000091815}
   m_LocalScale: {x: 0.99999994, y: 0.9999998, z: 1.0000001}
   m_Children:
@@ -4320,7 +4320,7 @@ Transform:
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 8762427902218368406}
   m_LocalRotation: {x: 0.6983415, y: 0.00000003342844, z: -0.00000003777715, w: 0.71576476}
-  m_LocalPosition: {x: 0, y: 0.0000076293945, z: -75.03008}
+  m_LocalPosition: {x: 0, y: 0.0000076293945, z: -75.36346}
   m_LocalScale: {x: 1, y: 1, z: 1}
   m_Children:
   - {fileID: 8762427901970835926}
@@ -4412,7 +4412,7 @@ Transform:
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 8762427902295418926}
-  m_LocalRotation: {x: -0.08492363, y: 0.0011545363, z: -0.01398694, w: 0.99628866}
+  m_LocalRotation: {x: -0.08519115, y: 0.0011544924, z: -0.014030898, w: 0.99626523}
   m_LocalPosition: {x: 0.000014123917, y: 0.28059638, z: -0.000009194316}
   m_LocalScale: {x: 1, y: 0.9999998, z: 1.0000001}
   m_Children:

+ 94 - 26
SFGgouhuo/Assets/MyShaderVariants.json

@@ -1,6 +1,6 @@
 {
-    "ShaderTotalCount": 33,
-    "VariantTotalCount": 97,
+    "ShaderTotalCount": 36,
+    "VariantTotalCount": 104,
     "ShaderVariantInfos": [
         {
             "AssetPath": "Resources/unity_builtin_extra",
@@ -36,7 +36,7 @@
         {
             "AssetPath": "Resources/unity_builtin_extra",
             "ShaderName": "Skybox/Procedural",
-            "ShaderVariantCount": 2,
+            "ShaderVariantCount": 3,
             "ShaderVariantElements": [
                 {
                     "PassType": 0,
@@ -46,6 +46,15 @@
                         "_SUNDISK_SIMPLE"
                     ]
                 },
+                {
+                    "PassType": 0,
+                    "Keywords": [
+                        "BILLBOARD_FACE_CAMERA_POS",
+                        "UNITY_HDR_ON",
+                        "_DEPTH_NO_MSAA",
+                        "_SUNDISK_SIMPLE"
+                    ]
+                },
                 {
                     "PassType": 0,
                     "Keywords": [
@@ -153,7 +162,7 @@
         {
             "AssetPath": "Resources/unity_builtin_extra",
             "ShaderName": "Hidden/UIElements/EditorUIE",
-            "ShaderVariantCount": 1,
+            "ShaderVariantCount": 3,
             "ShaderVariantElements": [
                 {
                     "PassType": 0,
@@ -161,13 +170,29 @@
                         "BILLBOARD_FACE_CAMERA_POS",
                         "_DEPTH_NO_MSAA"
                     ]
+                },
+                {
+                    "PassType": 0,
+                    "Keywords": [
+                        "BILLBOARD_FACE_CAMERA_POS",
+                        "UNITY_HDR_ON",
+                        "_DEPTH_NO_MSAA"
+                    ]
+                },
+                {
+                    "PassType": 0,
+                    "Keywords": [
+                        "BILLBOARD_FACE_CAMERA_POS",
+                        "_DEPTH_NO_MSAA",
+                        "_SHADOWS_SOFT"
+                    ]
                 }
             ]
         },
         {
             "AssetPath": "Packages/com.unity.render-pipelines.universal/Shaders/Utils/Blit.shader",
             "ShaderName": "Hidden/Universal Render Pipeline/Blit",
-            "ShaderVariantCount": 3,
+            "ShaderVariantCount": 4,
             "ShaderVariantElements": [
                 {
                     "PassType": 0,
@@ -176,6 +201,14 @@
                         "_DEPTH_NO_MSAA"
                     ]
                 },
+                {
+                    "PassType": 0,
+                    "Keywords": [
+                        "BILLBOARD_FACE_CAMERA_POS",
+                        "UNITY_HDR_ON",
+                        "_DEPTH_NO_MSAA"
+                    ]
+                },
                 {
                     "PassType": 0,
                     "Keywords": [
@@ -196,6 +229,52 @@
                 }
             ]
         },
+        {
+            "AssetPath": "Packages/com.unity.render-pipelines.universal/Shaders/Utils/CopyDepth.shader",
+            "ShaderName": "Hidden/Universal Render Pipeline/CopyDepth",
+            "ShaderVariantCount": 1,
+            "ShaderVariantElements": [
+                {
+                    "PassType": 0,
+                    "Keywords": [
+                        "BILLBOARD_FACE_CAMERA_POS",
+                        "UNITY_HDR_ON",
+                        "_DEPTH_NO_MSAA"
+                    ]
+                }
+            ]
+        },
+        {
+            "AssetPath": "Packages/com.unity.render-pipelines.universal/Shaders/PostProcessing/LutBuilderHdr.shader",
+            "ShaderName": "Hidden/Universal Render Pipeline/LutBuilderHdr",
+            "ShaderVariantCount": 1,
+            "ShaderVariantElements": [
+                {
+                    "PassType": 0,
+                    "Keywords": [
+                        "BILLBOARD_FACE_CAMERA_POS",
+                        "UNITY_HDR_ON",
+                        "_DEPTH_NO_MSAA"
+                    ]
+                }
+            ]
+        },
+        {
+            "AssetPath": "Packages/com.unity.render-pipelines.universal/Shaders/PostProcessing/UberPost.shader",
+            "ShaderName": "Hidden/Universal Render Pipeline/UberPost",
+            "ShaderVariantCount": 1,
+            "ShaderVariantElements": [
+                {
+                    "PassType": 0,
+                    "Keywords": [
+                        "BILLBOARD_FACE_CAMERA_POS",
+                        "UNITY_HDR_ON",
+                        "_DEPTH_NO_MSAA",
+                        "_HDR_GRADING"
+                    ]
+                }
+            ]
+        },
         {
             "AssetPath": "Packages/com.unity.render-pipelines.universal/Shaders/Lit.shader",
             "ShaderName": "Universal Render Pipeline/Lit",
@@ -303,9 +382,6 @@
                 {
                     "PassType": 13,
                     "Keywords": [
-                        "BILLBOARD_FACE_CAMERA_POS",
-                        "LIGHTPROBE_SH",
-                        "_DEPTH_NO_MSAA",
                         "_MAIN_LIGHT_SHADOWS",
                         "_MAIN_LIGHT_SHADOWS_CASCADE",
                         "_SHADOWS_SOFT"
@@ -322,9 +398,6 @@
                 {
                     "PassType": 13,
                     "Keywords": [
-                        "BILLBOARD_FACE_CAMERA_POS",
-                        "LIGHTPROBE_SH",
-                        "_DEPTH_NO_MSAA",
                         "_MAIN_LIGHT_SHADOWS",
                         "_MAIN_LIGHT_SHADOWS_CASCADE",
                         "_NORMALMAP",
@@ -334,20 +407,18 @@
                 {
                     "PassType": 13,
                     "Keywords": [
-                        "BILLBOARD_FACE_CAMERA_POS",
-                        "_DEPTH_NO_MSAA",
                         "_MAIN_LIGHT_SHADOWS",
                         "_MAIN_LIGHT_SHADOWS_CASCADE",
-                        "_PARALLAXMAP",
-                        "_SHADOWS_SOFT"
+                        "_PARALLAXMAP"
                     ]
                 },
                 {
                     "PassType": 13,
                     "Keywords": [
-                        "_DETAIL_MULX2",
                         "_MAIN_LIGHT_SHADOWS",
-                        "_MAIN_LIGHT_SHADOWS_CASCADE"
+                        "_MAIN_LIGHT_SHADOWS_CASCADE",
+                        "_PARALLAXMAP",
+                        "_SHADOWS_SOFT"
                     ]
                 },
                 {
@@ -355,15 +426,12 @@
                     "Keywords": [
                         "_DETAIL_MULX2",
                         "_MAIN_LIGHT_SHADOWS",
-                        "_MAIN_LIGHT_SHADOWS_CASCADE",
-                        "_SHADOWS_SOFT"
+                        "_MAIN_LIGHT_SHADOWS_CASCADE"
                     ]
                 },
                 {
                     "PassType": 13,
                     "Keywords": [
-                        "BILLBOARD_FACE_CAMERA_POS",
-                        "_DEPTH_NO_MSAA",
                         "_DETAIL_MULX2",
                         "_MAIN_LIGHT_SHADOWS",
                         "_MAIN_LIGHT_SHADOWS_CASCADE",
@@ -413,8 +481,6 @@
                 {
                     "PassType": 13,
                     "Keywords": [
-                        "BILLBOARD_FACE_CAMERA_POS",
-                        "_DEPTH_NO_MSAA",
                         "_EMISSION",
                         "_SHADOWS_SOFT"
                     ]
@@ -451,9 +517,6 @@
                 {
                     "PassType": 13,
                     "Keywords": [
-                        "BILLBOARD_FACE_CAMERA_POS",
-                        "LIGHTPROBE_SH",
-                        "_DEPTH_NO_MSAA",
                         "_MAIN_LIGHT_SHADOWS",
                         "_MAIN_LIGHT_SHADOWS_CASCADE",
                         "_METALLICSPECGLOSSMAP",
@@ -672,6 +735,7 @@
                     "PassType": 8,
                     "Keywords": [
                         "BILLBOARD_FACE_CAMERA_POS",
+                        "UNITY_HDR_ON",
                         "_DEPTH_NO_MSAA"
                     ]
                 },
@@ -686,6 +750,7 @@
                     "PassType": 8,
                     "Keywords": [
                         "BILLBOARD_FACE_CAMERA_POS",
+                        "UNITY_HDR_ON",
                         "_DEPTH_NO_MSAA",
                         "_SHOWTHUNDER_ON"
                     ]
@@ -839,6 +904,7 @@
                     "PassType": 8,
                     "Keywords": [
                         "BILLBOARD_FACE_CAMERA_POS",
+                        "UNITY_HDR_ON",
                         "_DEPTH_NO_MSAA"
                     ]
                 },
@@ -910,6 +976,7 @@
                     "PassType": 8,
                     "Keywords": [
                         "BILLBOARD_FACE_CAMERA_POS",
+                        "UNITY_HDR_ON",
                         "_DEPTH_NO_MSAA",
                         "_NORMALMAP"
                     ]
@@ -954,6 +1021,7 @@
                     "PassType": 8,
                     "Keywords": [
                         "BILLBOARD_FACE_CAMERA_POS",
+                        "UNITY_HDR_ON",
                         "_DEPTH_NO_MSAA"
                     ]
                 }

+ 36 - 17
SFGgouhuo/Assets/MyShaderVariants.shadervariants

@@ -24,6 +24,8 @@ ShaderVariantCollection:
       variants:
       - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA _SUNDISK_SIMPLE
         passType: 0
+      - keywords: BILLBOARD_FACE_CAMERA_POS UNITY_HDR_ON _DEPTH_NO_MSAA _SUNDISK_SIMPLE
+        passType: 0
       - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE
           _SHADOWS_SOFT _SUNDISK_SIMPLE
         passType: 0
@@ -67,16 +69,37 @@ ShaderVariantCollection:
       variants:
       - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA
         passType: 0
+      - keywords: BILLBOARD_FACE_CAMERA_POS UNITY_HDR_ON _DEPTH_NO_MSAA
+        passType: 0
+      - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA _SHADOWS_SOFT
+        passType: 0
   - first: {fileID: 4800000, guid: c17132b1f77d20942aa75f8429c0f8bc, type: 3}
     second:
       variants:
       - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA
         passType: 0
+      - keywords: BILLBOARD_FACE_CAMERA_POS UNITY_HDR_ON _DEPTH_NO_MSAA
+        passType: 0
       - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA _SHADOWS_SOFT
         passType: 0
       - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE
           _SHADOWS_SOFT
         passType: 0
+  - first: {fileID: 4800000, guid: d6dae50ee9e1bfa4db75f19f99355220, type: 3}
+    second:
+      variants:
+      - keywords: BILLBOARD_FACE_CAMERA_POS UNITY_HDR_ON _DEPTH_NO_MSAA
+        passType: 0
+  - first: {fileID: 4800000, guid: ec9fec698a3456d4fb18cf8bacb7a2bc, type: 3}
+    second:
+      variants:
+      - keywords: BILLBOARD_FACE_CAMERA_POS UNITY_HDR_ON _DEPTH_NO_MSAA
+        passType: 0
+  - first: {fileID: 4800000, guid: e7857e9d0c934dc4f83f270f8447b006, type: 3}
+    second:
+      variants:
+      - keywords: BILLBOARD_FACE_CAMERA_POS UNITY_HDR_ON _DEPTH_NO_MSAA _HDR_GRADING
+        passType: 0
   - first: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
     second:
       variants:
@@ -108,24 +131,20 @@ ShaderVariantCollection:
         passType: 13
       - keywords: _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE
         passType: 13
-      - keywords: BILLBOARD_FACE_CAMERA_POS LIGHTPROBE_SH _DEPTH_NO_MSAA _MAIN_LIGHT_SHADOWS
-          _MAIN_LIGHT_SHADOWS_CASCADE _SHADOWS_SOFT
+      - keywords: _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _SHADOWS_SOFT
         passType: 13
       - keywords: _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _NORMALMAP
         passType: 13
-      - keywords: BILLBOARD_FACE_CAMERA_POS LIGHTPROBE_SH _DEPTH_NO_MSAA _MAIN_LIGHT_SHADOWS
-          _MAIN_LIGHT_SHADOWS_CASCADE _NORMALMAP _SHADOWS_SOFT
+      - keywords: _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _NORMALMAP _SHADOWS_SOFT
         passType: 13
-      - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE
-          _PARALLAXMAP _SHADOWS_SOFT
+      - keywords: _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _PARALLAXMAP
+        passType: 13
+      - keywords: _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _PARALLAXMAP _SHADOWS_SOFT
         passType: 13
       - keywords: _DETAIL_MULX2 _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE
         passType: 13
       - keywords: _DETAIL_MULX2 _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _SHADOWS_SOFT
         passType: 13
-      - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA _DETAIL_MULX2 _MAIN_LIGHT_SHADOWS
-          _MAIN_LIGHT_SHADOWS_CASCADE _SHADOWS_SOFT
-        passType: 13
       - keywords: _RECEIVE_SHADOWS_OFF
         passType: 13
       - keywords: _RECEIVE_SHADOWS_OFF _SHADOWS_SOFT
@@ -137,7 +156,7 @@ ShaderVariantCollection:
       - keywords: _ALPHATEST_ON _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _NORMALMAP
           _SHADOWS_SOFT
         passType: 13
-      - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA _EMISSION _SHADOWS_SOFT
+      - keywords: _EMISSION _SHADOWS_SOFT
         passType: 13
       - keywords: _EMISSION _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _SHADOWS_SOFT
         passType: 13
@@ -147,8 +166,8 @@ ShaderVariantCollection:
       - keywords: _EMISSION _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _RECEIVE_SHADOWS_OFF
           _SHADOWS_SOFT
         passType: 13
-      - keywords: BILLBOARD_FACE_CAMERA_POS LIGHTPROBE_SH _DEPTH_NO_MSAA _MAIN_LIGHT_SHADOWS
-          _MAIN_LIGHT_SHADOWS_CASCADE _METALLICSPECGLOSSMAP _NORMALMAP _SHADOWS_SOFT
+      - keywords: _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _METALLICSPECGLOSSMAP
+          _NORMALMAP _SHADOWS_SOFT
         passType: 13
       - keywords: _ALPHATEST_ON _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _METALLICSPECGLOSSMAP
           _NORMALMAP _SHADOWS_SOFT
@@ -213,11 +232,11 @@ ShaderVariantCollection:
       variants:
       - keywords: INSTANCING_ON
         passType: 8
-      - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA
+      - keywords: BILLBOARD_FACE_CAMERA_POS UNITY_HDR_ON _DEPTH_NO_MSAA
         passType: 8
       - keywords: INSTANCING_ON _SHOWTHUNDER_ON
         passType: 8
-      - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA _SHOWTHUNDER_ON
+      - keywords: BILLBOARD_FACE_CAMERA_POS UNITY_HDR_ON _DEPTH_NO_MSAA _SHOWTHUNDER_ON
         passType: 8
       - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA _SHADOWS_SOFT
         passType: 13
@@ -265,7 +284,7 @@ ShaderVariantCollection:
       variants:
       - keywords: INSTANCING_ON
         passType: 8
-      - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA
+      - keywords: BILLBOARD_FACE_CAMERA_POS UNITY_HDR_ON _DEPTH_NO_MSAA
         passType: 8
       - keywords: BILLBOARD_FACE_CAMERA_POS LIGHTPROBE_SH _DEPTH_NO_MSAA _MAIN_LIGHT_SHADOWS
           _MAIN_LIGHT_SHADOWS_CASCADE _SHADOWS_SOFT
@@ -288,7 +307,7 @@ ShaderVariantCollection:
       variants:
       - keywords: _NORMALMAP
         passType: 8
-      - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA _NORMALMAP
+      - keywords: BILLBOARD_FACE_CAMERA_POS UNITY_HDR_ON _DEPTH_NO_MSAA _NORMALMAP
         passType: 8
       - keywords: BILLBOARD_FACE_CAMERA_POS LIGHTPROBE_SH _DEPTH_NO_MSAA _MAIN_LIGHT_SHADOWS
           _MAIN_LIGHT_SHADOWS_CASCADE _NORMALMAP _SHADOWS_SOFT
@@ -301,7 +320,7 @@ ShaderVariantCollection:
         passType: 0
       - keywords: INSTANCING_ON
         passType: 8
-      - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA
+      - keywords: BILLBOARD_FACE_CAMERA_POS UNITY_HDR_ON _DEPTH_NO_MSAA
         passType: 8
   - first: {fileID: -6465566751694194690, guid: b59f111e98592c44bbf4c06a9af258bc, type: 3}
     second:

+ 12 - 0
SFGgouhuo/Assets/Scripts/Manager/StepManager.cs

@@ -1,6 +1,8 @@
 
+using RootMotion.FinalIK;
 using System.Collections;
 using System.Collections.Generic;
+using System.Threading;
 using UnityEditor;
 using UnityEngine;
 
@@ -45,6 +47,7 @@ public class StepManager : MonoBehaviour
         initRot = player_dress.transform.rotation;
         CharacterManager.Inst.MatchCharacterRender(player_dress.GetComponent<CharacterRender>());
         faceBuildLight = GameObject.Find("FaceBuild Light").GetComponent<Light>();
+        CharacterManager.Inst.GoodsReadFromFile(player_dress.GetComponent<CharacterRender>());
         //Debug.Log(faceBuildLight);
     }
 
@@ -74,6 +77,15 @@ public class StepManager : MonoBehaviour
     {
         if (player) 
         {
+            CharacterManager.Inst.MatchCharacterRender(player_dress.GetComponent<CharacterRender>());
+
+            List<string> strs=new List<string>(player.transform.GetChild(0).GetComponent<CharacterRender>().dressRenders.Keys);
+            for (int i = 0; i < strs.Count; i++) 
+            {
+                string key = strs[i];
+                player.transform.GetChild(0).GetComponent<CharacterRender>().dressRenders[key].Dispose();
+            }
+            player.transform.GetChild(0).GetComponent<CharacterRender>().dressRenders.Clear();
             player_dress.transform.rotation= initRot;
             CharacterManager.Inst.CharacterClothReMatch(player.transform.GetChild(0).GetComponent<CharacterRender>());
         }

+ 1 - 1
SFGgouhuo/Assets/Scripts/UI/Component/FaceBuildPanel.cs

@@ -49,7 +49,7 @@ public class FaceBuildPanel : BasePanel
         StepManager.isFaceBuidling = false;
         StepManager.faceBuildLight.enabled = false;
         StepManager.Instance.CharacterDataReMatch();
-        
+        CharacterManager.Inst.GoodsSaveToFile();
     }
 
 }

+ 31 - 0
SFGgouhuo/Assets/Scripts/UI/FaceBuild/CharacterManager.cs

@@ -1,6 +1,8 @@
 using Cysharp.Threading.Tasks;
+using LitJson;
 using System.Collections;
 using System.Collections.Generic;
+using System.IO;
 using System.Threading.Tasks;
 using UnityEngine;
 
@@ -43,9 +45,38 @@ public class CharacterManager : MonoBehaviour
             foreach (var item in selfRender.dressRenders)
             {
                 await ChangePlayerTex(cr, item.Value.good);
+                //Debug.Log(cr.gameObject.name+"/"+item.Value.good.name);
             }
         }
     }
+
+    /// <summary>
+    /// 将玩家换装数据保存到本地Json
+    /// </summary>
+    public void GoodsSaveToFile()
+    {
+        List<Good> goods = new List<Good>();
+        foreach(var item in selfRender.dressRenders)
+        {
+            goods.Add(item.Value.good);
+        }
+        string jsonStr=JsonMapper.ToJson(goods);
+        File.WriteAllText(Application.persistentDataPath + "/PlayerGoods.json", jsonStr);
+    }
+
+    /// <summary>
+    /// 将玩家换装数据从本地Json读取
+    /// </summary>
+    /// <param name="cr"></param>
+    public async void GoodsReadFromFile(CharacterRender cr)
+    {
+        string jsonStr = File.ReadAllText(Application.persistentDataPath + "/PlayerGoods.json");
+        List<Good> goods = JsonMapper.ToObject<List<Good>>(jsonStr);
+        foreach(var item in goods)
+        {
+            await ChangePlayerTex(cr, item);
+        }
+    }
     public async UniTask ChangePlayerTex (CharacterRender cr, Good config)
     {
         //Debug.Log(config.id);

+ 15 - 3
SFGgouhuo/Assets/Scripts/UI/FaceBuild/CharacterRender.cs

@@ -116,10 +116,8 @@ public class CharacterRender : MonoBehaviour
             if (type == 17)
             {
                 isShowFoot = false;
-                defaultTop.SetActive(false);
-                defaultBottom.SetActive(false);
             }
-            if(type == 12)
+            if (type == 12)
             {
                 for (int i = 0;i < shoesShow.Count;i++)
                 {
@@ -186,6 +184,20 @@ public class CharacterRender : MonoBehaviour
             transform.Find("body").GetComponent<Renderer>().materials = faceMaterial;
         }
 
+
+        List<int> goodID = new List<int>();
+        foreach (var item in dressRenders)
+        {
+            int type = item.Value.good.id / 10000;
+            goodID.Add(type);
+        }
+        if(!goodID.Contains(10)) defaultTop.SetActive(true);
+        if (!goodID.Contains(11)) defaultBottom.SetActive(true);
+        if (goodID.Contains(17))
+        {
+            defaultTop.SetActive(false);
+            defaultBottom.SetActive(false);
+        } 
         //if (CharacterManager.Inst.selfRender == self)
         //{
         //    //UI

+ 3 - 2
SFGgouhuo/ProjectSettings/ProjectSettings.asset

@@ -134,8 +134,9 @@ PlayerSettings:
     16:10: 1
     16:9: 1
     Others: 1
-  bundleVersion: 0.1
-  preloadedAssets: []
+  bundleVersion: 1.3
+  preloadedAssets:
+  - {fileID: 11400000, guid: 4b8185399a4cfc5428357ac6a5795f11, type: 2}
   metroInputSource: 0
   wsaTransparentSwapchain: 0
   m_HolographicPauseOnTrackingLoss: 1