Browse Source

修复锚点错误

胡佳骏 1 year ago
parent
commit
8a4eb98416

+ 20 - 8
Assets/2.0/User/Model/ModelItem.cs

@@ -29,7 +29,7 @@ public class ModelItem
 
     public GameObject prefabModel;
 
-    private GameObject _model;
+    public GameObject _model;
 
     //模型数据
     public GameObject Model
@@ -88,6 +88,11 @@ public class ModelItem
 
     Vector3 getInfoPos()
     {
+        if (prefabModel.transform.localPosition != Vector3.zero)
+        {
+            return prefabModel.transform.localPosition;
+        }
+
         if (prefabModel == null || objectTransform.nowPos==null)
             return Vector3.zero;
 
@@ -100,6 +105,10 @@ public class ModelItem
     }
     Vector3 getInfoEul()
     {
+        if (prefabModel.transform.localEulerAngles != Vector3.zero)
+        {
+            return prefabModel.transform.localEulerAngles;
+        }
         if (prefabModel == null || objectTransform.nowPos == null)
             return Vector3.zero;
 
@@ -112,6 +121,10 @@ public class ModelItem
 
     Vector3 getInfoScale()
     {
+        if (prefabModel.transform.localScale != Vector3.zero&& prefabModel.transform.localScale != Vector3.one)
+        {
+            return prefabModel.transform.localScale;
+        }
         if ( objectTransform.nowPos == null)
             return Vector3.one;
 
@@ -193,11 +206,6 @@ public class ModelItem
             bb.ActiveHandle = BoundingBox.HandleType.Rotation | BoundingBox.HandleType.Scale;
             modelList.AddComponent<NearInterationGrabbable>();
             modelList.AddComponent<ManipulationHandler>();
-            GameObject ob = GameObject.Instantiate(Resources.Load<GameObject>("Template/Prefab/TipJD"), modelList.transform);
-            ob.transform.localPosition = new Vector3(0, -0.3f, 0);// Vector3.zero;
-            ob.transform.localEulerAngles = Vector3.zero;
-            ob.transform.localScale = Vector3.one;
-            ob.SetActive(false);
         }
 
         if (itemI==null)
@@ -279,11 +287,15 @@ public class ModelItem
         }
         if (getInfoEul() != Vector3.zero)
         {
-            prefabModel.transform.localEulerAngles = getInfoPos();
+            prefabModel.transform.localEulerAngles = getInfoEul();
+        }
+        if (getInfoEul() != Vector3.zero)
+        {
+            prefabModel.transform.localScale = getInfoScale();
         }
         // prefabModel.transform.localPosition = getInfoPos();
         //  prefabModel.transform.localEulerAngles = getInfoEul();
-         switch (modelType)
+        switch (modelType)
         {
             case ModelType.Text:
             prefabModel.GetComponent<TemplateText>().SetData(textContent, TextBJ);

+ 21 - 16
Assets/2.0/User/Model/ModelList.cs

@@ -28,7 +28,7 @@ public class ModelList: System.ICloneable
 
     public SpotsItem spotsItem;
 
-    private GameObject _model;
+    public GameObject _model;
 
 
     //组合模型数据
@@ -53,22 +53,23 @@ public class ModelList: System.ICloneable
             _model.transform.parent = materalLibrary;
 
             InitObjectTransform();
-            initModelObj();
+            _model.SetActive(false);
+            //   initModelObj();
         }
-
+        /*
         if (!isAdd&& spotsItem!=null)
         {
             //_model = new GameObject("进入场景----" + name);
             _model.transform.parent = spotsItem.SpotsObj.transform;
 
             //InitObjectTransform();
-            initModelObj();
-        }
-        _model.SetActive(isAdd);
+          //  initModelObj();
+        }*/
         //for (int i = 0; i < materialList.Count; i++)
         //{
         //    materialList[i].init();
         //}
+        /*
         if (isAdd)
         {
             for (int i = 0; i < materialList.Count; i++)
@@ -76,15 +77,8 @@ public class ModelList: System.ICloneable
                materialList[i].init();
             }
             _model.transform.parent = spotsItem.SpotsObj.transform;
-            if (getInfoPos() != Vector3.zero)
-            {
-                _model.transform.localPosition = getInfoPos();
-            }
-            if (getInfoEul() != Vector3.zero)
-            {
-                _model.transform.localEulerAngles = getInfoPos();
-            }
-        }
+            //initModelObj();
+        }*/
     }
 
     //public void Init()
@@ -480,7 +474,18 @@ public class ModelList: System.ICloneable
         }
         if (getInfoEul() != Vector3.zero)
         {
-            _model.transform.localEulerAngles = getInfoPos();
+            _model.transform.localEulerAngles = getInfoEul();
+        }
+        if (getInfoScale() != Vector3.zero)
+        {
+            _model.transform.localScale = getInfoScale();
+        }
+        if(materialList!=null)
+        {
+            for (int i = 0; i < materialList.Count; i++)
+            {
+                materialList[i].initModelObj();
+            }
         }
         // _model.transform.localPosition = getInfoPos();
         //  _model.transform.localEulerAngles = getInfoEul();

+ 5 - 2
Assets/2.0/User/Model/ModelManager.cs

@@ -88,9 +88,12 @@ public class ModelManager : Singleton<ModelManager>
     /// <returns></returns>
     public ModelList GetModelList(int id)
     {
-        
+        ModelList ml = (ModelList)modellist[id].Clone();
+
+       
+
         if (modellist.ContainsKey(id))
-            return (ModelList)modellist[id].Clone();
+            return ml;
         else
             return null;
     }

+ 21 - 18
Assets/2.0/User/Spots/SpotsItem.cs

@@ -46,29 +46,13 @@ public class SpotsItem
                 _spotsObj.transform.parent = VuforiaItem.transform;
 
 
-                if (!_spotsObj.GetComponent<BoundingBox>())
-                {
-                    BoundingBox bb = _spotsObj.AddComponent<BoundingBox>();
-                    bb.FlattenAxis = BoundingBox.FlattenModeType.FlattenZ;
-                    bb.ActiveHandle = BoundingBox.HandleType.Rotation| BoundingBox.HandleType.Scale;
-                    _spotsObj.AddComponent<NearInterationGrabbable>();
-                    _spotsObj.AddComponent<ManipulationHandler>();
-                    GameObject ob = GameObject.Instantiate(Resources.Load<GameObject>("Template/Prefab/TipJD"), _spotsObj.transform);
-                    ob.transform.localPosition = new Vector3(0, -0.3f, 0);// Vector3.zero;
-                    ob.transform.localEulerAngles = Vector3.zero;
-                    ob.transform.localScale = Vector3.one;
-                    ob.SetActive(false);
-                    TimerMgr.Instance.CreateTimer(() => {
-                        ob.SetActive(GameManager.m_IsStartEditorJD);
-                        bb.enabled = GameManager.m_IsStartEditorJD;
-                    }, 1, -1);
-                }
             }
             return _spotsObj;
         }
     }
     public ObserverBehaviour obVuforia;
 
+   public bool isInitModel;
 
     public void setObVuforia(ObserverBehaviour obVuforia)
     {
@@ -107,6 +91,26 @@ public class SpotsItem
                     VuforiaItem.transform.eulerAngles = obj.transform.eulerAngles;
                     Debug.Log("OnTargetStatusChanged ·¢ÏÖ " + obj.transform.position + "status ==>" + obj.transform.eulerAngles);
                 }, 0.1f,10);
+                if(!isInitModel)
+                {
+                    foreach(var ml in modelList.Values)
+                    {
+                        ml._model = GameObject.Instantiate<GameObject>(ml.Model);
+                        for (int i = 0; i < ml.materialList.Count; i++)
+                        {
+                            if (ml.materialList[i]._model)
+                            {
+                                ml.materialList[i]._model = ml._model.transform.GetChild(i).gameObject;
+                                ml.materialList[i].prefabModel = ml.materialList[i]._model;
+                                ml.materialList[i]._model.SetActive(true);
+                            }
+                        }
+                        ml.Model.SetActive(true);
+                        ml.Model.transform.parent = _spotsObj.transform;
+                        ml.initModelObj();
+                    }
+                    isInitModel = true;
+                }
             }
 
             UserSceneUI.Instance.obj.GetComponent<UserChooseScene>().st.SetActive(false);
@@ -135,7 +139,6 @@ public class SpotsItem
 
     public void initSpoitTfInfo(JsonData data)
     {
-
         if (data["nowScale"] != null && (data["nowScale"]["x"].ToString() != "0" || data["nowScale"]["y"].ToString() != "0" || data["nowScale"]["z"].ToString() != "0"))
         {
 

+ 1 - 1
Assets/2.0/User/UserScene/UserSceneItem.cs

@@ -41,7 +41,7 @@ public class UserSceneItem
         foreach (var v in SpotsList.Values)
         {
             v.VuforiaItem.SetActive(false);
-            v.show();
+           // v.show();
         }
 
      

+ 3 - 3
Assets/2.0/User/UserScene/UserSceneManager.cs

@@ -133,7 +133,7 @@ public class UserSceneManager : XRTool.Util.Singleton<UserSceneManager>
                                 ModelList modellist = ModelManager.Instance.GetModelList(int.Parse(msg["listSpoit"][i]["material"][j]["id"].ToString()));
                                 Debug.Log("DGJ   ====> " +(msg["listSpoit"][i]["material"][j]["objectTransform"].ToJson()));
                                 modellist.objectTransform = JsonConvert.DeserializeObject<ObjectTransform>(msg["listSpoit"][i]["material"][j]["objectTransform"].ToJson());
-                           
+                               // modellist._model.transform.parent = si.SpotsObj.transform;
                                 modellist.spotsItem = si;
                                 modellist.init(false); 
                                 for (int l = 0; l < modellist.materialList.Count; l++)
@@ -147,7 +147,7 @@ public class UserSceneManager : XRTool.Util.Singleton<UserSceneManager>
                                     for (int z = 0; z < msg["listSpoit"][i]["material"][j]["materialList"].Count; z++)
                                     {
                                         modellist.materialList[z].objectTransform = JsonConvert.DeserializeObject<ObjectTransform>(msg["listSpoit"][i]["material"][j]["materialList"][z]["objectTransform"].ToJson());
-                                        modellist.materialList[z].initModelObj();
+                                        //modellist.materialList[z].initModelObj();
                                     }
                                 }
                                 si.init();
@@ -180,7 +180,7 @@ public class UserSceneManager : XRTool.Util.Singleton<UserSceneManager>
         if (SceneList.ContainsKey(id))
         SceneList[id].load();
         DataManager.Instance.ProjectID = int.Parse(id);
-    
+
     }
 
     public Dictionary<string, UserSceneItem> GetScenes()

+ 169 - 169
Assets/MRNavigatorPro.unity

@@ -2247,7 +2247,7 @@ MeshFilter:
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 375338274}
-  m_Mesh: {fileID: 439122559}
+  m_Mesh: {fileID: 1053928561}
 --- !u!114 &375338278
 MonoBehaviour:
   m_ObjectHideFlags: 0
@@ -2318,170 +2318,6 @@ Transform:
   m_Father: {fileID: 210725851}
   m_RootOrder: 5
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!43 &439122559
-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!114 &493550942 stripped
 MonoBehaviour:
   m_CorrespondingSourceObject: {fileID: 3134174762876500542, guid: 697420e71aa8bea4b938e2f3986965a6,
@@ -4730,6 +4566,170 @@ Transform:
     type: 3}
   m_PrefabInstance: {fileID: 1048479801}
   m_PrefabAsset: {fileID: 0}
+--- !u!43 &1053928561
+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!114 &1065976460 stripped
 MonoBehaviour:
   m_CorrespondingSourceObject: {fileID: 7931960824797962037, guid: 73594541ba5ecf84680e516628f9f8a8,
@@ -6813,7 +6813,7 @@ PrefabInstance:
     - target: {fileID: 2656584712679981451, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_AnchoredPosition.y
-      value: -0.005145443
+      value: -0.0051041385
       objectReference: {fileID: 0}
     - target: {fileID: 2656584712838976906, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
@@ -6943,7 +6943,7 @@ PrefabInstance:
     - target: {fileID: 2656584713474595953, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_AnchoredPosition.y
-      value: -0.0018900792
+      value: -0.0019273536
       objectReference: {fileID: 0}
     - target: {fileID: 2656584713571100915, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
@@ -10405,7 +10405,7 @@ PrefabInstance:
     - target: {fileID: 486518953982833418, guid: 6693e68f506a6c944b1783fb7e52a498,
         type: 3}
       propertyPath: m_AnchoredPosition.y
-      value: -0.0012788516
+      value: 0.0018398619
       objectReference: {fileID: 0}
     - target: {fileID: 486518953989235048, guid: 6693e68f506a6c944b1783fb7e52a498,
         type: 3}
@@ -14251,7 +14251,7 @@ RectTransform:
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0, y: 1}
   m_AnchorMax: {x: 1, y: 1}
-  m_AnchoredPosition: {x: 0, y: -0.0051639667}
+  m_AnchoredPosition: {x: 0, y: -0.005119532}
   m_SizeDelta: {x: 0, y: 0}
   m_Pivot: {x: 0, y: 1}
 --- !u!114 &1180406930876628118

+ 2 - 2
Assets/Scripts/Net/HttpSocket.cs

@@ -48,7 +48,7 @@ public class HttpSocket : MonoSingleton<HttpSocket>
         while (true)
         {
             CalElectric();
-            yield return new WaitForSeconds(60f);
+            yield return new WaitForSeconds(6f);
         }
     }
     private void CalElectric()
@@ -87,7 +87,7 @@ public class HttpSocket : MonoSingleton<HttpSocket>
         sendNet.electricity = electricity;
         sendNet.status = state;
         string jsonData = JsonMapper.ToJson(sendNet);
-        Debug.Log(jsonData);
+        Debug.Log("电量===》"+jsonData);
         HttpTool.Instance.Post(HttpAction.sn_electricity, jsonData, CallBack);
     }
 

+ 22 - 7
Assets/Scripts/UI/GameManager.cs

@@ -657,9 +657,16 @@ public class GameManager : MonoSingleton<GameManager>
                 foreach (var z in sp.modelList.Keys)
                 {
                     ObjectTransform objt2 = new ObjectTransform();
-                    objt2.nowPos = sp.modelList[z].Model.transform.localPosition;
-                    objt2.nowRot = sp.modelList[z].Model.transform.localEulerAngles;
-                    objt2.nowScale = sp.modelList[z].Model.transform.localScale;
+                    if(sp.isInitModel)
+                    {
+                        objt2.nowPos = sp.modelList[z].Model.transform.localPosition;
+                        objt2.nowRot = sp.modelList[z].Model.transform.localEulerAngles;
+                        objt2.nowScale = sp.modelList[z].Model.transform.localScale;
+
+                    }else
+                    {
+                        objt2 = sp.modelList[z].objectTransform;
+                    }
                     sp.modelList[z].objectTransform = objt2;
 
 
@@ -667,9 +674,16 @@ public class GameManager : MonoSingleton<GameManager>
                     for (int j = 0; j < sp.modelList[z].materialList.Count; j++)
                     {
                         ObjectTransform objt3 = new ObjectTransform();
-                        objt3.nowPos = sp.modelList[z].materialList[j].prefabModel.transform.localPosition;
-                        objt3.nowRot = sp.modelList[z].materialList[j].prefabModel.transform.localEulerAngles;
-                        objt3.nowScale = sp.modelList[z].materialList[j].prefabModel.transform.localScale;
+                        if (sp.isInitModel)
+                        {
+                            objt3.nowPos = sp.modelList[z].materialList[j].prefabModel.transform.localPosition;
+                            objt3.nowRot = sp.modelList[z].materialList[j].prefabModel.transform.localEulerAngles;
+                            objt3.nowScale = sp.modelList[z].materialList[j].prefabModel.transform.localScale;
+                        }
+                        else
+                        {
+                            objt3 = sp.modelList[z].materialList[j].objectTransform;
+                        }
                         sp.modelList[z].materialList[j].objectTransform = objt3;
 
                         MaterialObjValueNew mov = new MaterialObjValueNew();
@@ -1042,7 +1056,8 @@ public class GameManager : MonoSingleton<GameManager>
         {
             Debug.LogFormat("{0}{1}", spoit.name, " DGJ ===>  景点存在");
             SpoitPos trans = spoit.SpoitTransform[0];
-            spoitPos = new Vector3((float)trans.pointRelativeX / WebMapSize.x * MapSize.x, -1f, -(float)trans.pointRelativeY / WebMapSize.y * MapSize.y);
+            
+            spoitPos = new Vector3((float)trans.pointRelativeX / WebMapSize.x * MapSize.x, -1f, MapSize.y - ((float)trans.pointRelativeY) / WebMapSize.y * MapSize.y);
             //创建水晶点
             var obj = Instantiate(CrystalItem, CrystalsParent);
             CommandSystem.Instance.Send(