Browse Source

增加退出场景功能

“hujiajun” 1 year ago
parent
commit
6e00ef5b65
30 changed files with 1857 additions and 1333 deletions
  1. 1 0
      Assets/HotUpdate/DownLoadItem.cs
  2. 1 1
      Assets/HotUpdate/GameInit.cs
  3. 86 4
      Assets/HotUpdate/GameManager.cs
  4. 1 1
      Assets/HotUpdate/GameScene.cs
  5. 8 2
      Assets/HotUpdate/GongShi2.cs
  6. 62 8
      Assets/HotUpdate/LoadManager.cs
  7. 4 1
      Assets/HotUpdate/LoadReference.cs
  8. 95 49
      Assets/HotUpdate/ModelItem.cs
  9. 65 35
      Assets/HotUpdate/ModelList.cs
  10. 2 2
      Assets/HotUpdate/ModelManager.cs
  11. 1 1
      Assets/HotUpdate/MoveChange.cs
  12. 3 2
      Assets/HotUpdate/PointFileGetUrlCommand.cs
  13. 7 1
      Assets/HotUpdate/SChooseItem.cs
  14. 6 2
      Assets/HotUpdate/SRTitleLayout.cs
  15. 26 11
      Assets/HotUpdate/SpotsItem.cs
  16. 13 1
      Assets/HotUpdate/UserSceneItem.cs
  17. 1 0
      Assets/HotUpdate/UserSceneManager.cs
  18. 1 1
      Assets/HotUpdate/UserSceneUI.cs
  19. 15 3
      Assets/HotUpdate/VufroiaTrigger.cs
  20. 4 0
      Assets/HybridCLRGenerate/link.xml
  21. 0 174
      Assets/MRNavigatorPro.unity
  22. 377 477
      Assets/MRNavigatorStart/MRNavigatorStart.prefab
  23. 454 468
      Assets/Resources/SceneChoose2.prefab
  24. 15 18
      Assets/Resources/Warning/WarningPopUp.prefab
  25. 102 11
      Assets/TextMesh Pro/Examples & Extras/Resources/Fonts & Materials/Anton SDF.asset
  26. 94 11
      Assets/TextMesh Pro/Examples & Extras/Resources/Fonts & Materials/Bangers SDF.asset
  27. 75 11
      Assets/TextMesh Pro/Examples & Extras/Resources/Fonts & Materials/Electronic Highway Sign SDF.asset
  28. 105 14
      Assets/TextMesh Pro/Examples & Extras/Resources/Fonts & Materials/Oswald Bold SDF.asset
  29. 102 11
      Assets/TextMesh Pro/Examples & Extras/Resources/Fonts & Materials/Roboto-Bold SDF.asset
  30. 131 13
      Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset

+ 1 - 0
Assets/HotUpdate/DownLoadItem.cs

@@ -58,6 +58,7 @@ public class DownLoadItem : MonoBehaviour
         this.id = id;
         this.type = type;
         this.updateTime = updateTime;
+        Debug.Log("UnityWebRequest webRequest"+ downLoadPath);
         LoadManager.Instance.downloadQueueList.Enqueue(this);
     }
 

+ 1 - 1
Assets/HotUpdate/GameInit.cs

@@ -60,7 +60,7 @@ public class GameInit : MonoBehaviour
             StartCoroutine(DownLoadAssets(false));
 
         }
-        TestDownloadObject("");
+     //   TestDownloadObject("");
     }
 
 

+ 86 - 4
Assets/HotUpdate/GameManager.cs

@@ -36,6 +36,8 @@ using XRTool.Util;
  */
 public class GameManager : MonoSingleton<GameManager>
 {
+    public LoadReference loadref;
+    public GameObject armapObj;
     public ARMap armap;
     public Text text;
     public GameObject Map;
@@ -296,15 +298,79 @@ public class GameManager : MonoSingleton<GameManager>
             }
         }
     }
+
+    public Text t;
+
+    public void foundmap()
+    {
+        t.text = "发现地图";
+    }
+
+    public void lostmap()
+    {
+
+        t.text = "地图丢失";
+    }
+
+    public void destroyGo(UnityEngine.Object go)
+    {
+        if(go)
+        {
+
+            Debug.Log("destroyGo===>" + go.name);
+            Destroy(go);
+        }
+    }
+    public GameObject go20exit;
+    public GameObject go21exit;
+    public void show20exitpop(bool isshow)
+    {
+        go20exit.SetActive(isshow);
+    }
+    public void show21exitpop(bool isshow)
+    {
+        go21exit.SetActive(isshow);
+    }
+
+    public void exitscene2()
+    {
+        GameScene.Instance.o20.SetActive(false);
+        //m_SetBtn.gameObject.SetActive(false);
+        destroyGo(LoadManager.Instance.datFileObj);
+        destroyGo(LoadManager.Instance.xmlFileDownObj);
+        MsgHandler.ClearAllListeners();
+        UserSceneManager.Instance.SceneList[UserSceneManager.Instance.nowId].Clear();
+        GameScene.Instance.ShowScenes();
+        UserSceneUI.Instance.obj.GetComponent<UserChooseScene>().st.SetActive(false);
+        UserSceneUI.Instance.obj.GetComponent<UserChooseScene>().cs.SetActive(true);
+    }
     public List<SceneValue> sucessvalues;
     public void exitscene()
-    { 
+    {
+        Destroy(loadref.goRefrence);
+        loadref.goRefrence = null;
+        armapObj.transform.parent.position = Vector3.zero;
+        armapObj.transform.parent.eulerAngles = Vector3.zero;
+        t.text = "退出场景后";
+        MoveChange.isCx = false;
+        SetLocalTime.isFind = true;
         ARSpace.isFind=false;
         allobjs.Clear();
+        ARSpace.transformToSpace.Clear();
+        ARSpace.spaceToTransform.Clear();
+        ARSpace.mapIdToOffset.Clear();
+        ARSpace.mapIdToMap.Clear();
+        
+        armap.FreeMap();
+        Destroy(armap);
+        armap = armapObj.AddComponent<ARMap>();
+        armap.OnFirstLocalization = new MapLocalizedEvent();
+        armap.OnFirstLocalization.AddListener(firstfound);
+        XRLocalizer.Instance.Reset();
         m_IroBot.gameObject.SetActive(false);
         RouteCtr.CurrentPoints.Clear();
        m_SetBtn.gameObject.SetActive(false);
-        armap.FreeMap();
+      //  armap.FreeMap();
         m_MinMap.gameObject.SetActive(false);
         for (int i = 0; i < RouteCtr.list_route.Count; i++)
         {
@@ -369,9 +435,25 @@ public class GameManager : MonoSingleton<GameManager>
 
 }
 
+    public void firstfound(int arg0)
+    {
+
+       t.text = "第一次发现_"+ arg0;
+    }
+
     public bool isShowDownTip;
     private void Start()
     {
+        ARSpace.transformToSpace.Clear();
+        ARSpace.spaceToTransform.Clear();
+        ARSpace.mapIdToOffset.Clear();
+        ARSpace.mapIdToMap.Clear();
+        armap = armapObj.AddComponent<ARMap>();
+        armap.OnFirstLocalization = new MapLocalizedEvent();
+        armap.OnFirstLocalization.AddListener(firstfound);
+        armapObj.transform.parent.position = Vector3.zero;
+        armapObj.transform.parent.eulerAngles = Vector3.zero;
+        //  XRLocalizer.Instance.Reset();
 #if UNITY_EDITOR
         ArchitectureInitiator.Initiate();
 #endif
@@ -865,8 +947,8 @@ public class GameManager : MonoSingleton<GameManager>
         }
         else
         {
-            sc3D20zuJD.isOn = false;
-            sc3Dopen20zu.isOn = false;
+          //  sc3D20zuJD.isOn = false;
+          //  sc3Dopen20zu.isOn = false;
         }
         SaveButton.SetActive(ison);
 

+ 1 - 1
Assets/HotUpdate/GameScene.cs

@@ -20,7 +20,7 @@ public class GameScene : MonoSingleton<GameScene>
         (UserSceneUI.Instance).show();
         UIManager.Instance.HideUI(UINameConfig.LoadingPanel);
         UIManager.Instance.HideUI(UINameConfig.LoginPanel);
-        o20.SetActive(true);
+        o20.SetActive(false);
         o21.SetActive(false);
         o20.transform.parent.gameObject.SetActive(true);
     }

+ 8 - 2
Assets/HotUpdate/GongShi2.cs

@@ -21,17 +21,23 @@ public class GongShi2 : MonoBehaviour
     public static GameObject WebPosObj2;
     static IEnumerator startjisuan(float x2, float y2, float th, float tw, float x22, float y22, float sceneLength, float sceneWidth)
     {
+        Debug.Log("startjisuanstartjisuanstartjisuanstartjisuan");
         Transform parent = (SceneIOCContainer.Instance.Pull("mesh_test") as GameObject).transform;
 
         parent.transform.localPosition = Vector3.zero;
-        parent.transform.eulerAngles = Vector3.zero;
+        parent.transform.localEulerAngles = Vector3.zero;
 
         if (WebPosObj == null)
             WebPosObj = new GameObject();
 
         if (WebPosObj2 == null)
             WebPosObj2 = new GameObject();
-
+        WebPosObj.name = "WebPosObj";
+        WebPosObj2.name = "WebPosObj2";
+        WebPosObj.transform.position = Vector3.zero;
+        WebPosObj.transform.eulerAngles = Vector3.zero;
+        WebPosObj2.transform.position = Vector3.zero;
+        WebPosObj2.transform.eulerAngles = Vector3.zero;
         //  Transform meshTestParent =(SceneIOCContainer.Instance.Pull("ARSpaceForAll") as GameObject).transform;
         //创建空锚点GameObject
         GameObject go = WebPosObj;

+ 62 - 8
Assets/HotUpdate/LoadManager.cs

@@ -45,8 +45,39 @@ public class LoadManager : Singleton<LoadManager>
 
     }
 
+
+    public Dictionary<string, List<Action<float>>> onProgresslist = new Dictionary<string, List<Action<float>>>();
+
+    public Dictionary<string, List<Action<byte[]>>> callbacklist = new Dictionary<string, List<Action<byte[]>>>();
+
+    public void setaction(string id,Action<float> onProgress, Action<byte[]> callback)
+    {
+        if(onProgresslist.ContainsKey(id))
+        {
+            onProgresslist[id].Add(onProgress);
+        }
+        else
+        {
+            List<Action<float>> f = new List<Action<float>>();
+            f.Add(onProgress);
+            onProgresslist.Add(id, f);
+        }
+
+
+        if (callbacklist.ContainsKey(id))
+        {
+            callbacklist[id].Add(callback);
+        }
+        else
+        {
+            List < Action <byte[]>> c = new List<Action<byte[]>>();
+            c.Add(callback);
+            callbacklist.Add(id, c);
+        }
+    }
+
     public Dictionary<string, DownLoadItem> downList = new Dictionary<string, DownLoadItem>();
-    public void load(ModelItem model, Action<float> onProgress, Action<GameObject> callback)
+    public void load(ModelItem model, Action<float> onProgress, Action<byte[]> callback)
     {
         string dName = getLoadName(model.url, model.Version);
         Debug.Log("dName ======>   " + dName+ "   model.url==>"+ model.url);
@@ -57,16 +88,20 @@ public class LoadManager : Singleton<LoadManager>
             dli.Init(model.url, model.uid ,model.modelType,model.updateTime);
             downList.Add(dName, dli);
         }
-        
+        setaction(dName, onProgress, callback);
 
         downList[dName].onProgress += (float f) => {
 
-            onProgress.Invoke(f);
+            for (int i = 0; i < onProgresslist[dName].Count; i++)
+            {
+
+                onProgresslist[dName][i].Invoke(f);
+            }
         };
 
         downList[dName].callback += (bool b) => {
 
-            if(b)
+            if (b)
             {
                 if (!downList[dName].isAction)
                 {
@@ -93,7 +128,11 @@ public class LoadManager : Singleton<LoadManager>
 
                       //  model.initFrist();
                     }
-                    callback.Invoke(model.prefabModel);
+
+                    for (int i = 0; i < callbacklist[dName].Count; i++)
+                    {
+                        callbacklist[dName][i].Invoke(downList[dName].downLoadData);
+                    }
                 }
 
             }
@@ -103,7 +142,8 @@ public class LoadManager : Singleton<LoadManager>
             }
         };
     }
-
+   public GameObject datFileObj;
+    public GameObject xmlFileDownObj;
     public void loadVuforia(string xmlFile, string datFile, Action<bool> xmlcallback, Action<bool> datcallback)
     {
         if (!Directory.Exists(Application.persistentDataPath + "/StreamingAssets"))
@@ -115,7 +155,7 @@ public class LoadManager : Singleton<LoadManager>
             }
         }
 
-        GameObject xmlFileDownObj = new GameObject("VufroiaTriggerDownLoad_xmlFile");
+        xmlFileDownObj = new GameObject("VufroiaTriggerDownLoad_xmlFile");
         DownLoadItem xmlFileItem = xmlFileDownObj.AddComponent<DownLoadItem>();
         xmlFileItem.Init(xmlFile, "VufroiaTriggerDownLoad_xmlFile",ModelType.vuforial, long.Parse(GameManager.Instance.m_scene.updateTime));
 
@@ -135,7 +175,7 @@ public class LoadManager : Singleton<LoadManager>
         };
 
 
-        GameObject datFileObj = new GameObject("VufroiaTriggerDownLoad_datFile");
+        datFileObj = new GameObject("VufroiaTriggerDownLoad_datFile");
         DownLoadItem datFileItem = datFileObj.AddComponent<DownLoadItem>();
         datFileItem.Init(datFile, "VufroiaTriggerDownLoad_xmlFile",ModelType.vuforial, long.Parse(GameManager.Instance.m_scene.updateTime));
 
@@ -161,6 +201,20 @@ public class LoadManager : Singleton<LoadManager>
         return url + "_" + version;
     }
 
+    public DownLoadItem getdownloaditem(ModelItem mi)
+    {
+        if(downList.ContainsKey(getLoadName(mi.url, mi.Version)))
+        {
+
+            DownLoadItem dii = downList[getLoadName(mi.url, mi.Version)];
+            return dii;
+        }
+        else
+        {
+            return null;
+        }
+        
+    }
 
     public Queue<DownLoadItem> downloadQueueList = new Queue<DownLoadItem>();
 }

+ 4 - 1
Assets/HotUpdate/LoadReference.cs

@@ -3,6 +3,7 @@ using Blue;
 
 public class LoadReference : AbstractController
 {
+    public GameObject goRefrenceprefb;
     public GameObject goRefrence;
     private Transform meshTest=>(SceneIOCContainer.Instance.Pull("mesh_test")as GameObject).transform;
     private Transform meshTestParent=>(SceneIOCContainer.Instance.Pull("ARSpaceForAll")as GameObject).transform;
@@ -40,7 +41,9 @@ public class LoadReference : AbstractController
 
     private void SetPosRot(Vector3 pos)
     {
-        goRefrence = Instantiate(goRefrence,meshTest);
+        if(goRefrence)
+        Destroy(goRefrence);
+        goRefrence = Instantiate(goRefrenceprefb, meshTest);
         goRefrence.name = "goRefrence";
         SceneIOCContainer.Instance.Push("goRefrence",goRefrence);
         goRefrence.transform.localPosition = pos;

+ 95 - 49
Assets/HotUpdate/ModelItem.cs

@@ -1,4 +1,5 @@
 using SC.XR.Unity.Module_InputSystem;
+using System;
 using System.Collections;
 using System.Collections.Generic;
 using System.IO;
@@ -60,13 +61,8 @@ public class ModelItem : System.ICloneable
                 //显示加载
 
 
-            }, (GameObject obj) =>
+            }, (byte[] obj) =>
             {
-                _model = prefabModel;
-                obj.name = "加载出来的模型-----" + obj.name;
-                // obj.transform.parent = _model.transform;
-                //   obj.transform.localPosition = getInfoPos(); 
-                //  obj.transform.localEulerAngles = getInfoEul(); 
 
 
             });
@@ -224,6 +220,7 @@ public class ModelItem : System.ICloneable
         return clonedObject;
     }
     public byte[] abByte;
+    public DownLoadMaterial dmdown;
     public static bool isLoad;
     public static Queue<ModelItem> loadAB = new Queue<ModelItem>();
     public void SetData(byte[] data, DownLoadMaterial dm)
@@ -233,69 +230,118 @@ public class ModelItem : System.ICloneable
             Debug.LogError(name + " 未下载完成  !!!!!");
         }
 
+        abByte = data;
 
-        Debug.Log("HJJTEST  ModelType   " + modelType);
-        switch (modelType)
+    }
+
+    bool isload=false;
+    public IEnumerator loadmodel()
+    {
+        DownLoadItem dloadi = LoadManager.Instance.getdownloaditem(this);
+        if (dloadi&& !isload)
         {
-            case ModelType.Image:
-                Texture2D texture = new Texture2D(1, 1);
-                OpenCVForUnity.CoreModule.Mat _mat = null;
-                GameManager.Instance.AddThead(() =>
-                {
-                    Debug.Log("加載完成222222222222222222");
-                    _mat = GameManager.zoomByteByOpenCV(data);
+            isload = true;
+            while (dloadi.downLoadData== null)
+            {
+                yield return null;
+            }
 
-                }, () =>
-                {
-                    Debug.Log("加載完成111111111111");
-                    texture = GameManager.TextureByMat(_mat);
 
-                    Debug.Log(" LoadManager  " + texture.width + "_" + texture.height);
-                    Sprite sprite = Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), Vector2.one * 0.5f);
-                    TemplateImage tlimg = prefabModel.GetComponent<TemplateImage>();
-                    Texture2D tex = texture;
-                    if (tex.height > tex.width)
+            abByte = dloadi.downLoadData;
+            dmdown = dloadi.data;
+
+            Debug.Log("HJJTEST  ModelType   " + modelType);
+            switch (modelType)
+            {
+                case ModelType.Image:
+                    Texture2D texture = new Texture2D(1, 1);
+                    OpenCVForUnity.CoreModule.Mat _mat = null;
+                    GameManager.Instance.AddThead(() =>
                     {
-                        float bl = ((float)tex.height / (float)tex.width);
-                        tlimg.transform.Find("Canvas").GetComponent<RectTransform>().sizeDelta = new Vector2(500 / bl, 500);
-                    }
-                    else
+                        Debug.Log("加載完成222222222222222222");
+                        _mat = GameManager.zoomByteByOpenCV(abByte);
+
+                    }, () =>
                     {
-                        float bl = ((float)tex.width / (float)tex.height);
-                        tlimg.transform.Find("Canvas").GetComponent<RectTransform>().sizeDelta = new Vector2(500, 500 / bl);
-                    }
-                    tlimg.M_Image.sprite = sprite;
-                });
+                        Debug.Log("加載完成111111111111");
+                        texture = GameManager.TextureByMat(_mat);
+
+                        Debug.Log(" LoadManager  " + texture.width + "_" + texture.height);
+                        Sprite sprite = Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), Vector2.one * 0.5f);
+                        TemplateImage tlimg = prefabModel.GetComponent<TemplateImage>();
+                        Texture2D tex = texture;
+                        if (tex.height > tex.width)
+                        {
+                            float bl = ((float)tex.height / (float)tex.width);
+                            tlimg.transform.Find("Canvas").GetComponent<RectTransform>().sizeDelta = new Vector2(500 / bl, 500);
+                        }
+                        else
+                        {
+                            float bl = ((float)tex.width / (float)tex.height);
+                            tlimg.transform.Find("Canvas").GetComponent<RectTransform>().sizeDelta = new Vector2(500, 500 / bl);
+                        }
+                        tlimg.M_Image.sprite = sprite;
+                    });
+
+                    break;
+                case ModelType.Video:
+                    Debug.Log("  DownloadPath video  " );
+                    Debug.Log("  DownloadPath video  " + prefabModel.name);
+                    Debug.Log("  DownloadPath video  " + Application.persistentDataPath + "/Material/" + Path.GetFileName(DownloadPath));
+
+                    // prefabModel.GetComponent<TemplateVideo>().SetData(HttpAction.baseurvideo + DownloadPath);
+                    prefabModel.GetComponent<TemplateVideo>().SetData(Application.persistentDataPath + "/Material/" + Path.GetFileName(DownloadPath));
+                    break;
+                case ModelType.ABModel:
+                    prefabModel.GetComponent<TemplateModel>().Data = dmdown;
+                    loadAB.Enqueue(this);
+                    /*
+                    AssetBundle assetBundle = AssetBundle.LoadFromMemory(data);
+                    Debug.Log(data.Length);
+                    prefabModel.GetComponent<TemplateModel>().LoadModel(assetBundle);*/
+                    break;
+                case ModelType.Text:
+                    Debug.Log("HJJTEST  ModelType.Text   " + DownloadPath);
+                    prefabModel.GetComponent<TemplateText>().SetData(textContent, TextBJ);
+                    break;
+                default:
+                    break;
+            }
+        }
+
+    }
 
+    public void Clear()
+    {
+        switch (modelType)
+        {
+            case ModelType.Image:
+                if(prefabModel)
+                {
+                    Debug.Log("Clear SpotsList modelitem prefabModel" + prefabModel.name);
+                    TemplateImage tlimg = prefabModel.GetComponent<TemplateImage>();
+                    GameManager.Instance.destroyGo(tlimg.M_Image.sprite.texture);
+                    Debug.Log("Clear SpotsList modelitem prefabModel"+ prefabModel.name);
+                }
                 break;
             case ModelType.Video:
-                Debug.Log("  DownloadPath   " + DownloadPath);
-                // prefabModel.GetComponent<TemplateVideo>().SetData(HttpAction.baseurvideo + DownloadPath);
-                prefabModel.GetComponent<TemplateVideo>().SetData(Application.persistentDataPath+"/Material/"+Path.GetFileName(DownloadPath));
                 break;
             case ModelType.ABModel:
-                    prefabModel.GetComponent<TemplateModel>().Data = dm;
-                    abByte = data;
-                    loadAB.Enqueue(this);
-                /*
-                AssetBundle assetBundle = AssetBundle.LoadFromMemory(data);
-                Debug.Log(data.Length);
-                prefabModel.GetComponent<TemplateModel>().LoadModel(assetBundle);*/
                 break;
             case ModelType.Text:
-                Debug.Log("HJJTEST  ModelType.Text   " + DownloadPath);
-                prefabModel.GetComponent<TemplateText>().SetData(textContent, TextBJ);
                 break;
             default:
                 break;
         }
-
-      
+        GameManager.Instance.destroyGo(prefabModel);
+        prefabModel = null;
+        isload = false;
+        Debug.Log("Clear SpotsList modelitem[i]");
     }
 
-
     public void initModelObj()
     {
+        GameManager.Instance.StartCoroutine(loadmodel());
         if (getInfoPos() != Vector3.zero)
         {
             prefabModel.transform.localPosition = getInfoPos();
@@ -313,7 +359,7 @@ public class ModelItem : System.ICloneable
         switch (modelType)
         {
             case ModelType.Text:
-            prefabModel.GetComponent<TemplateText>().SetData(textContent, TextBJ);
+                prefabModel.GetComponent<TemplateText>().SetData(textContent, TextBJ);
                 YangShiTextItem ysi = prefabModel.GetComponent<YangShiTextItem>();
                 float topf = 0.4f;
                 float buttomf = -0.4f;

+ 65 - 35
Assets/HotUpdate/ModelList.cs

@@ -1,4 +1,5 @@
 using SC.XR.Unity.Module_InputSystem;
+using System;
 using System.Collections;
 using System.Collections.Generic;
 using System.IO;
@@ -52,7 +53,7 @@ public class ModelList: System.ICloneable
             _model = new GameObject(name);
             _model.transform.parent = materalLibrary;
 
-            InitObjectTransform();
+           // InitObjectTransform();
             _model.SetActive(false);
             //   initModelObj();
         }
@@ -124,10 +125,16 @@ public class ModelList: System.ICloneable
         else
             return objectTransform.nowScale;
     }
-
-    private void InitObjectTransform()
+    bool iscreate = false;
+    private void InitObjectTransform(Action callback)
     {
-        if(objectTransform==null)
+        if(iscreate)
+        {
+            callback.Invoke();
+            return;
+        }
+        iscreate = true;
+        if (objectTransform==null)
         {
             objectTransform = new ObjectTransform();
            
@@ -149,13 +156,13 @@ public class ModelList: System.ICloneable
             case (int)MaterialType.Model:
             case (int)MaterialType.Text:
             case (int)MaterialType.LocaImage:
-                 GameManager.Instance.StartCoroutine( CreateSuCaiObj(this, Model));
+                 GameManager.Instance.StartCoroutine(CreateSuCaiObj(this, Model,  callback));
                 break;
             case (int)MaterialType.Image_Video_Text:
-                GameManager.Instance.StartCoroutine(CreateImage_Video_Text(this, Model));
+                GameManager.Instance.StartCoroutine(CreateImage_Video_Text(this, Model,callback));
                 break;
             case (int)MaterialType.Model_Text:
-                GameManager.Instance.StartCoroutine(CreateModel_Text(this, Model));
+                GameManager.Instance.StartCoroutine(CreateModel_Text(this, Model,  callback));
                 break;
             default:
                 break;
@@ -168,7 +175,7 @@ public class ModelList: System.ICloneable
     /// <param name="material">素材数据</param>
     /// <param name="spoit">景点</param>
     /// <returns></returns>
-    private IEnumerator CreateSuCaiObj(ModelList material, GameObject spoit)
+    private IEnumerator CreateSuCaiObj(ModelList material, GameObject spoit, Action callback)
     {
         List<ObjectValue> objects = new List<ObjectValue>();
         List<ModelItem> objs = material.materialList;
@@ -181,7 +188,7 @@ public class ModelList: System.ICloneable
                 case (int)MaterialType.None:
                     break;
                 case (int)MaterialType.Image:
-                    var pImage = ResMgr.Instance.LoadAsync<GameObject>("Template/Prefab/Image");
+                    var pImage = ResMgr.Instance.LoadAsync<GameObject>("Image");
                     yield return pImage;
                     go = GameObject.Instantiate(pImage.asset as GameObject, spoit.transform);               
                     go.SetActive(true);
@@ -190,7 +197,7 @@ public class ModelList: System.ICloneable
                     //imageitem.SetData(mat, material.updateTime);
                     break;
                 case (int)MaterialType.Video:
-                    var pVideo = ResMgr.Instance.LoadAsync<GameObject>("Template/Prefab/Video");
+                    var pVideo = ResMgr.Instance.LoadAsync<GameObject>("Video");
                     yield return pVideo;
                     go = GameObject.Instantiate(pVideo.asset as GameObject, spoit.transform);                   
                     go.SetActive(true);
@@ -201,7 +208,7 @@ public class ModelList: System.ICloneable
                     //videoitem.SetData(mat, material.updateTime);
                     break;
                 case (int)MaterialType.Model:
-                    var pModel = ResMgr.Instance.LoadAsync<GameObject>("Template/Prefab/Model");
+                    var pModel = ResMgr.Instance.LoadAsync<GameObject>("Model");
                     yield return pModel;
                     go = GameObject.Instantiate(pModel.asset as GameObject, spoit.transform);                 
                     go.SetActive(true);
@@ -211,7 +218,7 @@ public class ModelList: System.ICloneable
                     //Debug.Log(modelitem.Data.localSavePath);
                     break;
                 case (int)MaterialType.Text:
-                    var pText = ResMgr.Instance.LoadAsync<GameObject>("Template/Prefab/Text");
+                    var pText = ResMgr.Instance.LoadAsync<GameObject>("Text");
                     yield return pText;
                     go = GameObject.Instantiate(pText.asset as GameObject, spoit.transform);              
                     go.SetActive(true);
@@ -220,7 +227,7 @@ public class ModelList: System.ICloneable
                     //textitem.SetData(mat, material.updateTime);
                     break;
                 case (int)MaterialType.LocaImage:
-                    var pLocaImage = ResMgr.Instance.LoadAsync<GameObject>("Template/Prefab/Image");
+                    var pLocaImage = ResMgr.Instance.LoadAsync<GameObject>("Image");
                     yield return pLocaImage;
                     go = GameObject.Instantiate(pLocaImage.asset as GameObject, spoit.transform);          
                     go.SetActive(true);
@@ -269,7 +276,7 @@ public class ModelList: System.ICloneable
                  
                 }
                 mat.prefabModel = go;
-
+                callback.Invoke();
                // mat.initFrist();
             }           
         }
@@ -281,7 +288,7 @@ public class ModelList: System.ICloneable
     /// <param name="material"></param>
     /// <param name="spoit"></param>
     /// <returns></returns>
-    private IEnumerator CreateModel_Text(ModelList material, GameObject spoit)
+    private IEnumerator CreateModel_Text(ModelList material, GameObject spoit,Action callback)
     {
         List<ObjectValue> objects = new List<ObjectValue>();
         List<ModelItem> objs = material.materialList;
@@ -295,7 +302,7 @@ public class ModelList: System.ICloneable
                 case (int)MaterialType.None:
                     break;
                 case (int)MaterialType.Model:
-                    var pModel = ResMgr.Instance.LoadAsync<GameObject>("Template/Prefab/Model");
+                    var pModel = ResMgr.Instance.LoadAsync<GameObject>("Model");
                     yield return pModel;
                     go = GameObject.Instantiate(pModel.asset as GameObject, spoit.transform);        
                     go.SetActive(true);
@@ -304,7 +311,7 @@ public class ModelList: System.ICloneable
                     //modelitem.SetData(mat, material.updateTime);
                     break;
                 case (int)MaterialType.Text:
-                    var pText = ResMgr.Instance.LoadAsync<GameObject>("Template/Prefab/Text");
+                    var pText = ResMgr.Instance.LoadAsync<GameObject>("Text");
                     yield return pText;
                     go = GameObject.Instantiate(pText.asset as GameObject, spoit.transform);                  
                     go.SetActive(true);
@@ -360,7 +367,7 @@ public class ModelList: System.ICloneable
                 ObjectValue objectValue = CreateMatObjectValue(i, material.id, go, mat);
                 objects.Add(objectValue);
                 mat.prefabModel = go;
-
+                callback.Invoke();
              //   mat.initFrist();
             }
            
@@ -373,9 +380,9 @@ public class ModelList: System.ICloneable
     /// <summary>
     /// 创建 5图片+文字/视频+文字
     /// </summary>
-    private IEnumerator CreateImage_Video_Text(ModelList material, GameObject spoit)
+    private IEnumerator CreateImage_Video_Text(ModelList material, GameObject spoit, Action callback)
     {
-        yield return GameManager.Instance.StartCoroutine(SRTitleLayout.CalLayout(material, spoit));
+        yield return GameManager.Instance.StartCoroutine(SRTitleLayout.CalLayout(material, spoit,  callback));
         /*
         List<ObjectValue> objects = new List<ObjectValue>();
         //switch (material.typesetting)
@@ -469,27 +476,50 @@ public class ModelList: System.ICloneable
         return clonedObject;
     }
 
-    public void initModelObj()
+    public void Clear()
     {
-        if (getInfoPos() != Vector3.zero)
-        {
-            _model.transform.localPosition = getInfoPos();
-        }
-        if (getInfoEul() != Vector3.zero)
-        {
-            _model.transform.localEulerAngles = getInfoEul();
-        }
-        if (getInfoScale() != Vector3.zero)
-        {
-            _model.transform.localScale = getInfoScale();
-        }
-        if(materialList!=null)
+        iscreate = false;
+        if (materialList != null)
         {
             for (int i = 0; i < materialList.Count; i++)
             {
-                materialList[i].initModelObj();
+                materialList[i].Clear();
+                Debug.Log("Clear SpotsList materialList[i]" + i);
             }
         }
+        //GameManager.Instance.destroyGo(_model);
+        //_model = null;
+        Debug.Log("Clear SpotsList materialList[i] Clear");
+    }
+
+    public void initModelObj()
+    {
+        InitObjectTransform(()=> {
+
+
+            if (getInfoPos() != Vector3.zero)
+            {
+                _model.transform.localPosition = getInfoPos();
+            }
+            if (getInfoEul() != Vector3.zero)
+            {
+                _model.transform.localEulerAngles = getInfoEul();
+            }
+            if (getInfoScale() != Vector3.zero)
+            {
+                _model.transform.localScale = getInfoScale();
+            }
+            if (materialList != null)
+            {
+                for (int i = 0; i < materialList.Count; i++)
+                {
+                    Debug.Log("initModelObj===> " + materialList[i].id);
+                    materialList[i].initModelObj();
+                }
+            }
+
+
+        });
         // _model.transform.localPosition = getInfoPos();
         //  _model.transform.localEulerAngles = getInfoEul();
     }

+ 2 - 2
Assets/HotUpdate/ModelManager.cs

@@ -10,7 +10,7 @@ public class ModelManager : Singleton<ModelManager>
     public Dictionary<int, ModelList> modellist = new Dictionary<int, ModelList>();
     
     public GameObject materialLibrary;
-    private List<ModelList> Models;
+    public List<ModelList> Models;
     public void init(string message)
     {
         GameManager.Instance.text.text = " 获取素材列表";
@@ -39,7 +39,7 @@ public class ModelManager : Singleton<ModelManager>
 
     private void AddDicModelList(string message)
     {
-       // Debug.Log(message);
+       Debug.Log("AddDicModelList===>"+message);
      if (!string.IsNullOrWhiteSpace(message))
         {
             Models = JsonConvert.DeserializeObject<List<ModelList>>(message);

+ 1 - 1
Assets/HotUpdate/MoveChange.cs

@@ -88,7 +88,7 @@ public class MoveChange : MonoBehaviour
         isDown = true;
     }
 
-    bool isCx;
+   public static bool isCx;
     void Update()
     {
         if (ARSpace.isFind)

+ 3 - 2
Assets/HotUpdate/PointFileGetUrlCommand.cs

@@ -94,10 +94,11 @@ public class PointFileGetUrlCommand : ICommand
           //  this.SendEvent(new LoadMapFileEvent() { fileName = PointName ,bytes = (byte[])msg.Value});
     }
 
-
+    public static int mapct = 1000;
     public IEnumerator loadmapend(byte[] bytes)
     {
-        yield return GameManager.Instance.armap.LoadMap(bytes);
+        mapct++;
+        yield return GameManager.Instance.armap.LoadMap(bytes, mapct);
         GameManager.Instance.armap.enabled = true;
         this.SendCommand(new StartImmersalLocalizerCommand());
     }

+ 7 - 1
Assets/HotUpdate/SChooseItem.cs

@@ -13,7 +13,11 @@ public class SChooseItem : MonoBehaviour,IPointerClickHandler
     public SceneValue SceneData
     {
         get { return m_SceneData; }
-        set { m_SceneData = value; }
+        set {
+
+            Debug.Log("valuevaluevalue==>");
+            Debug.Log("valuevaluevalue==>"+value.name);
+            m_SceneData = value; }
     }
 
     public GameObject sceneChoose_go;
@@ -21,6 +25,8 @@ public class SChooseItem : MonoBehaviour,IPointerClickHandler
 
     public void OnPointerClick(PointerEventData eventData)
     {
+        Debug.Log("valuevaluevalue==>");
+        Debug.Log("valuevaluevalue==>" + m_SceneData.name);
         mSceneChoose = sceneChoose_go.GetComponent<SceneChoose>();
         OnSelectScene?.Invoke(m_SceneData, true);
         mSceneChoose.OnClickOKBtn(m_SceneData);

+ 6 - 2
Assets/HotUpdate/SRTitleLayout.cs

@@ -1,4 +1,5 @@
 using SC.XR.Unity;
+using System;
 using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
@@ -17,6 +18,7 @@ public class SRTitleLayout : MonoBehaviour
     /// <returns></returns>
     public static List<ObjectValue> CalLayout(SpoitValue spoitjd, MaterialObl materialObls, GameObject par, out MaterialObl newmaterial,string type ="1")
     {
+        Debug.Log("CalLayoutCalLayoutCalLayoutCalLayout");
         var yangshi = ResMgr.Instance.Load<GameObject>("yangshi" + materialObls.typesetting);
         GameObject ys = Instantiate((yangshi as GameObject), par.transform);
         YangShiManager ysm = ys.GetComponent<YangShiManager>();
@@ -152,9 +154,10 @@ public class SRTitleLayout : MonoBehaviour
     /// <param name="materialObls">素材</param>
     /// <param name="par">素材父物体,景点</param>
     /// <returns></returns>
-    public static IEnumerator CalLayout(ModelList materialObls, GameObject par)
+    public static IEnumerator CalLayout(ModelList materialObls, GameObject par,Action callback)
     {
-        var yangshi = ResMgr.Instance.LoadAsync<GameObject>("Template/Prefab/yangshi" + materialObls.typesetting);
+        Debug.Log("CalLayoutCalLayoutCalLayoutCalLayoutCalLayoutCalLayoutCalLayout");
+        var yangshi = ResMgr.Instance.LoadAsync<GameObject>("yangshi" + materialObls.typesetting);
         yield return yangshi;
         GameObject ys = Instantiate((yangshi.asset as GameObject), par.transform);
         YangShiManager ysm = ys.GetComponent<YangShiManager>();
@@ -250,6 +253,7 @@ public class SRTitleLayout : MonoBehaviour
         {
             text.gameObject.SetActive(true);
         }
+        callback.Invoke();
         #endregion
     }
 

+ 26 - 11
Assets/HotUpdate/SpotsItem.cs

@@ -53,7 +53,23 @@ public class SpotsItem
     }
     public ObserverBehaviour obVuforia;
 
-   public bool isInitModel;
+    public bool isInitModel;
+
+    public void Clear()
+    {
+        Debug.Log("Clear SpotsList modelList");
+        foreach (var i in modelList.Values)
+        {
+            i.Clear();
+        }
+       // Debug.Log("Clear SpotsList obVuforia");
+       // GameManager.Instance.destroyGo(this.obVuforia.gameObject);
+        //GameManager.Instance.destroyGo(_spotsObj);
+       // _spotsObj = null;
+        //Debug.Log("Clear SpotsList obVuforia VuforiaItem");
+        //GameManager.Instance.destroyGo(VuforiaItem);
+    }
+
 
     public void setObVuforia(ObserverBehaviour obVuforia)
     {
@@ -73,15 +89,7 @@ public class SpotsItem
         obj.transform.parent = imageaction.transform;
         obj.transform.localEulerAngles = new Vector3(90, 0, 0);
         obj.transform.localPosition = Vector3.zero;
-        foreach (var mlkeys in modelList.Keys)
-        {
-            ModelList ml = modelList[mlkeys];
-            for (int i = 0; i < ml.materialList.Count; i++)
-            {
-                Debug.Log("DGJ2   ====> ml.materialList[i]." + ml.materialList[i].name);
-                Debug.Log("DGJ2   ====> ml.materialList[i]." + obVuforia.TargetName);
-            }
-        }
+
     }
     GameObject obj;
 
@@ -119,6 +127,13 @@ public class SpotsItem
                     VuforiaItem.transform.eulerAngles = new Vector3(0, VuforiaItem.transform.eulerAngles.y, 0);
                     Debug.Log("OnTargetStatusChanged 发现 " + obj.transform.position + "status ==>" + obj.transform.eulerAngles);
                 }, 0.1f,10);
+                foreach (var i in modelList.Values)
+                {
+                    Debug.Log("initModelObj===> " + i.id);
+                    i._model = SpotsObj;
+                    i.initModelObj();
+                }
+                /*
                 if (!isInitModel)
                 {
                     Dictionary<string, ModelList> NewmodelList = new Dictionary<string, ModelList>();
@@ -232,7 +247,7 @@ public class SpotsItem
                     }
                     modelList = NewmodelList;
                     isInitModel = true;
-                }
+                }*/
             }
 
             UserSceneUI.Instance.obj.GetComponent<UserChooseScene>().st.SetActive(false);

+ 13 - 1
Assets/HotUpdate/UserSceneItem.cs

@@ -26,7 +26,7 @@ public class UserSceneItem
             if (_sceneModel == null)
             {
                 _sceneModel = new GameObject(name);
-                _sceneModel.transform.parent = GameScene.Instance.transform;
+                _sceneModel.transform.parent = null;//GameScene.Instance.transform;
                 _sceneModel.transform.localPosition = Vector3.zero;
                 _sceneModel.transform.localEulerAngles = Vector3.zero;
             }
@@ -47,6 +47,18 @@ public class UserSceneItem
      
     }
 
+    public void Clear()
+    {
+        Debug.Log("Clear SpotsList");
+        foreach (var v in SpotsList.Values)
+        {
+            v.Clear();
+            // v.show();
+        }
+      //  SpotsList.Clear();
+        vufroiaTrigger.Clear();
+    }
+
     //场景原始信息
     public string info;
 

+ 1 - 0
Assets/HotUpdate/UserSceneManager.cs

@@ -217,6 +217,7 @@ public class UserSceneManager : XRTool.Util.Singleton<UserSceneManager>
         JsonData msg = UserSceneManager.smsg;
 
         smsg = msglist[id];
+        GameScene.Instance.o20.SetActive(true);
     }
 
         public Dictionary<string, UserSceneItem> GetScenes()

+ 1 - 1
Assets/HotUpdate/UserSceneUI.cs

@@ -22,7 +22,7 @@ public class UserSceneUI : UserBaseUI<UserSceneUI>
         //加载预制体
         Debug.Log("UI   LoadResources===>");
         // GameScene.Instance.gotoScenes("147");
-        obj = GameObject.Instantiate(Resources.Load<GameObject>("UI/SceneChoose2"));
+        obj = GameObject.Instantiate(Resources.Load<GameObject>("SceneChoose2"));
         obj.transform.parent = GameScene.Instance.Canvas.transform;
         obj.transform.localPosition = Vector3.zero;
         obj.transform.localEulerAngles = Vector3.zero;

+ 15 - 3
Assets/HotUpdate/VufroiaTrigger.cs

@@ -42,16 +42,28 @@ public class VufroiaTrigger
         });
     }
 
+    public void Clear()
+    {
+        isData = false;
+        isXML = false;
+        if (observer != null)
+        {
 
+            foreach (ObserverBehaviour item in observer)
+            {
+                GameManager.Instance.destroyGo(item.gameObject);
+            }
+        }
+    }
+
+    IEnumerable<ObserverBehaviour> observer = null;
     IEnumerator loadVuforia()
     {
         Debug.Log("DGJ ===> 加载Database  " + LoaclxmlFile);
-        IEnumerable<ObserverBehaviour> observer = null;
         observer = VuforiaBehaviour.Instance.ObserverFactory.CreateBehavioursFromDatabase(LoaclxmlFile);
         try
         {
-        
-         
+
 
         }
         catch (System.Exception e)

+ 4 - 0
Assets/HybridCLRGenerate/link.xml

@@ -404,7 +404,11 @@
     <type fullname="Immersal.AR.ARMap" preserve="all" />
     <type fullname="Immersal.AR.ARSpace" preserve="all" />
     <type fullname="Immersal.AR.LocalizerBase" preserve="all" />
+    <type fullname="Immersal.AR.MapLocalizedEvent" preserve="all" />
+    <type fullname="Immersal.AR.MapOffset" preserve="all" />
+    <type fullname="Immersal.AR.SpaceContainer" preserve="all" />
     <type fullname="Immersal.AR.XRLocalizer" preserve="all" />
+    <type fullname="SetLocalTime" preserve="all" />
   </assembly>
   <assembly fullname="mscorlib">
     <type fullname="System.Action" preserve="all" />

+ 0 - 174
Assets/MRNavigatorPro.unity

@@ -265,16 +265,6 @@ PrefabInstance:
       propertyPath: m_AnchoredPosition.y
       value: -101.5
       objectReference: {fileID: 0}
-    - target: {fileID: 4002528869247440488, guid: 9aa3328b080774e6a968fc5910820dbf,
-        type: 3}
-      propertyPath: m_Mesh
-      value: 
-      objectReference: {fileID: 1841186154}
-    - target: {fileID: 4002528869247440495, guid: 9aa3328b080774e6a968fc5910820dbf,
-        type: 3}
-      propertyPath: m_Materials.Array.data[0]
-      value: 
-      objectReference: {fileID: 0}
     - target: {fileID: 4002528869314084846, guid: 9aa3328b080774e6a968fc5910820dbf,
         type: 3}
       propertyPath: m_SizeDelta.y
@@ -450,170 +440,6 @@ LightingSettings:
   m_PVRFilteringAtrousPositionSigmaIndirect: 2
   m_PVRFilteringAtrousPositionSigmaAO: 1
   m_PVRTiledBaking: 0
---- !u!43 &1841186154
-Mesh:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_Name: 
-  serializedVersion: 10
-  m_SubMeshes:
-  - serializedVersion: 2
-    firstByte: 0
-    indexCount: 0
-    topology: 5
-    baseVertex: 0
-    firstVertex: 0
-    vertexCount: 0
-    localAABB:
-      m_Center: {x: 0, y: 0, z: 0}
-      m_Extent: {x: 0, y: 0, z: 0}
-  m_Shapes:
-    vertices: []
-    shapes: []
-    channels: []
-    fullWeights: []
-  m_BindPose: []
-  m_BoneNameHashes: 
-  m_RootBoneNameHash: 0
-  m_BonesAABB: []
-  m_VariableBoneCountWeights:
-    m_Data: 
-  m_MeshCompression: 0
-  m_IsReadable: 1
-  m_KeepVertices: 0
-  m_KeepIndices: 0
-  m_IndexFormat: 1
-  m_IndexBuffer: 
-  m_VertexData:
-    serializedVersion: 3
-    m_VertexCount: 0
-    m_Channels:
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 3
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    m_DataSize: 0
-    _typelessdata: 
-  m_CompressedMesh:
-    m_Vertices:
-      m_NumItems: 0
-      m_Range: 0
-      m_Start: 0
-      m_Data: 
-      m_BitSize: 0
-    m_UV:
-      m_NumItems: 0
-      m_Range: 0
-      m_Start: 0
-      m_Data: 
-      m_BitSize: 0
-    m_Normals:
-      m_NumItems: 0
-      m_Range: 0
-      m_Start: 0
-      m_Data: 
-      m_BitSize: 0
-    m_Tangents:
-      m_NumItems: 0
-      m_Range: 0
-      m_Start: 0
-      m_Data: 
-      m_BitSize: 0
-    m_Weights:
-      m_NumItems: 0
-      m_Data: 
-      m_BitSize: 0
-    m_NormalSigns:
-      m_NumItems: 0
-      m_Data: 
-      m_BitSize: 0
-    m_TangentSigns:
-      m_NumItems: 0
-      m_Data: 
-      m_BitSize: 0
-    m_FloatColors:
-      m_NumItems: 0
-      m_Range: 0
-      m_Start: 0
-      m_Data: 
-      m_BitSize: 0
-    m_BoneIndices:
-      m_NumItems: 0
-      m_Data: 
-      m_BitSize: 0
-    m_Triangles:
-      m_NumItems: 0
-      m_Data: 
-      m_BitSize: 0
-    m_UVInfo: 0
-  m_LocalAABB:
-    m_Center: {x: 0, y: 0, z: 0}
-    m_Extent: {x: 1.7014117e+38, y: 1.7014117e+38, z: 1.7014117e+38}
-  m_MeshUsageFlags: 0
-  m_BakedConvexCollisionMesh: 
-  m_BakedTriangleCollisionMesh: 
-  m_MeshMetrics[0]: 1
-  m_MeshMetrics[1]: 1
-  m_MeshOptimizationFlags: 1
-  m_StreamData:
-    serializedVersion: 2
-    offset: 0
-    size: 0
-    path: 
 --- !u!1001 &1997991780
 PrefabInstance:
   m_ObjectHideFlags: 0

File diff suppressed because it is too large
+ 377 - 477
Assets/MRNavigatorStart/MRNavigatorStart.prefab


File diff suppressed because it is too large
+ 454 - 468
Assets/Resources/SceneChoose2.prefab


+ 15 - 18
Assets/Resources/Warning/WarningPopUp.prefab

@@ -171,7 +171,7 @@ GameObject:
   m_Component:
   - component: {fileID: 2160148988694440984}
   - component: {fileID: 2160148988694440986}
-  - component: {fileID: 2160148988694440985}
+  - component: {fileID: 5494568963327359586}
   m_Layer: 5
   m_Name: BG
   m_TagString: Untagged
@@ -207,7 +207,7 @@ CanvasRenderer:
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 2160148988694440991}
   m_CullTransparentMesh: 0
---- !u!114 &2160148988694440985
+--- !u!114 &5494568963327359586
 MonoBehaviour:
   m_ObjectHideFlags: 0
   m_CorrespondingSourceObject: {fileID: 0}
@@ -216,27 +216,25 @@ MonoBehaviour:
   m_GameObject: {fileID: 2160148988694440991}
   m_Enabled: 1
   m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+  m_Script: {fileID: 11500000, guid: 05841a9ad3fccc44da9d0e4653f05e2a, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
   m_Material: {fileID: 0}
-  m_Color: {r: 0.14150941, g: 0.14150941, b: 0.14150941, a: 1}
+  m_Color: {r: 0.5471698, g: 0.5471698, b: 0.5471698, a: 0.39215687}
   m_RaycastTarget: 1
   m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
   m_Maskable: 1
   m_OnCullStateChanged:
     m_PersistentCalls:
       m_Calls: []
-  m_Sprite: {fileID: 21300000, guid: c7520f785578faf41a482b5153f2fd88, type: 3}
-  m_Type: 1
-  m_PreserveAspect: 0
-  m_FillCenter: 1
-  m_FillMethod: 4
-  m_FillAmount: 1
-  m_FillClockwise: 1
-  m_FillOrigin: 0
-  m_UseSpriteMesh: 0
-  m_PixelsPerUnitMultiplier: 1
+  m_Texture: {fileID: 0}
+  m_UVRect:
+    serializedVersion: 2
+    x: 0
+    y: 0
+    width: 1
+    height: 1
+  Radius: 10
 --- !u!1 &6683293567407465727
 GameObject:
   m_ObjectHideFlags: 0
@@ -380,11 +378,10 @@ MonoBehaviour:
   m_OnCullStateChanged:
     m_PersistentCalls:
       m_Calls: []
-  m_text: "\u8BF7\u5148\u9009\u62E9\u573A\u666F"
+  m_text: Save Fail
   m_isRightToLeft: 0
-  m_fontAsset: {fileID: 11400000, guid: fb2cd06170cbccb45aeb2aa643b0e4d4, type: 2}
-  m_sharedMaterial: {fileID: 8874737445518861689, guid: fb2cd06170cbccb45aeb2aa643b0e4d4,
-    type: 2}
+  m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
+  m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
   m_fontSharedMaterials: []
   m_fontMaterial: {fileID: 0}
   m_fontMaterials: []

File diff suppressed because it is too large
+ 102 - 11
Assets/TextMesh Pro/Examples & Extras/Resources/Fonts & Materials/Anton SDF.asset


File diff suppressed because it is too large
+ 94 - 11
Assets/TextMesh Pro/Examples & Extras/Resources/Fonts & Materials/Bangers SDF.asset


File diff suppressed because it is too large
+ 75 - 11
Assets/TextMesh Pro/Examples & Extras/Resources/Fonts & Materials/Electronic Highway Sign SDF.asset


File diff suppressed because it is too large
+ 105 - 14
Assets/TextMesh Pro/Examples & Extras/Resources/Fonts & Materials/Oswald Bold SDF.asset


File diff suppressed because it is too large
+ 102 - 11
Assets/TextMesh Pro/Examples & Extras/Resources/Fonts & Materials/Roboto-Bold SDF.asset


File diff suppressed because it is too large
+ 131 - 13
Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset


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