Browse Source

优化定位代码

蓝色星空 1 year ago
parent
commit
a8d420ae04

+ 41 - 41
Assets/Prefabs/BluePrefabs/BlueRoot.prefab

@@ -1,6 +1,6 @@
 %YAML 1.1
 %TAG !u! tag:unity3d.com,2011:
---- !u!1 &1691766441
+--- !u!1 &4520612451748474568
 GameObject:
   m_ObjectHideFlags: 0
   m_CorrespondingSourceObject: {fileID: 0}
@@ -8,45 +8,45 @@ GameObject:
   m_PrefabAsset: {fileID: 0}
   serializedVersion: 6
   m_Component:
-  - component: {fileID: 1691766442}
-  - component: {fileID: 1691766443}
+  - component: {fileID: 8671475187487430762}
+  - component: {fileID: 4456192713818240891}
   m_Layer: 0
-  m_Name: ControlLocalizer
+  m_Name: BlueRoot
   m_TagString: Untagged
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
   m_StaticEditorFlags: 0
   m_IsActive: 1
---- !u!4 &1691766442
+--- !u!4 &8671475187487430762
 Transform:
   m_ObjectHideFlags: 0
   m_CorrespondingSourceObject: {fileID: 0}
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 1691766441}
-  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+  m_GameObject: {fileID: 4520612451748474568}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
   m_LocalPosition: {x: 0, y: 0, z: 0}
   m_LocalScale: {x: 1, y: 1, z: 1}
   m_ConstrainProportionsScale: 0
-  m_Children: []
-  m_Father: {fileID: 8671475187487430762}
+  m_Children:
+  - {fileID: 3852353237422719028}
+  - {fileID: 8313308714142303026}
+  m_Father: {fileID: 0}
   m_RootOrder: 0
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!114 &1691766443
+--- !u!114 &4456192713818240891
 MonoBehaviour:
   m_ObjectHideFlags: 0
   m_CorrespondingSourceObject: {fileID: 0}
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 1691766441}
+  m_GameObject: {fileID: 4520612451748474568}
   m_Enabled: 1
   m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: ee7e6d4fe3022624dbedb3cea308fd58, type: 3}
+  m_Script: {fileID: 11500000, guid: 4632509381976ba4c9f1e18039e130cd, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
-  XRLocalizer: {fileID: 0}
-  irobot: {fileID: 0}
---- !u!1 &4520612451748474568
+--- !u!1 &7326868924308516955
 GameObject:
   m_ObjectHideFlags: 0
   m_CorrespondingSourceObject: {fileID: 0}
@@ -54,45 +54,30 @@ GameObject:
   m_PrefabAsset: {fileID: 0}
   serializedVersion: 6
   m_Component:
-  - component: {fileID: 8671475187487430762}
-  - component: {fileID: 4456192713818240891}
+  - component: {fileID: 3852353237422719028}
   m_Layer: 0
-  m_Name: BlueRoot
+  m_Name: SendLog
   m_TagString: Untagged
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
   m_StaticEditorFlags: 0
   m_IsActive: 1
---- !u!4 &8671475187487430762
+--- !u!4 &3852353237422719028
 Transform:
   m_ObjectHideFlags: 0
   m_CorrespondingSourceObject: {fileID: 0}
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4520612451748474568}
+  m_GameObject: {fileID: 7326868924308516955}
   m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
   m_LocalPosition: {x: 0, y: 0, z: 0}
   m_LocalScale: {x: 1, y: 1, z: 1}
   m_ConstrainProportionsScale: 0
-  m_Children:
-  - {fileID: 1691766442}
-  - {fileID: 3852353237422719028}
-  m_Father: {fileID: 0}
+  m_Children: []
+  m_Father: {fileID: 8671475187487430762}
   m_RootOrder: 0
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!114 &4456192713818240891
-MonoBehaviour:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4520612451748474568}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: 4632509381976ba4c9f1e18039e130cd, type: 3}
-  m_Name: 
-  m_EditorClassIdentifier: 
---- !u!1 &7326868924308516955
+--- !u!1 &8677475605673516878
 GameObject:
   m_ObjectHideFlags: 0
   m_CorrespondingSourceObject: {fileID: 0}
@@ -100,21 +85,22 @@ GameObject:
   m_PrefabAsset: {fileID: 0}
   serializedVersion: 6
   m_Component:
-  - component: {fileID: 3852353237422719028}
+  - component: {fileID: 8313308714142303026}
+  - component: {fileID: 5970753659194848811}
   m_Layer: 0
-  m_Name: SendLog
+  m_Name: ImmersalLocalizerController
   m_TagString: Untagged
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
   m_StaticEditorFlags: 0
   m_IsActive: 1
---- !u!4 &3852353237422719028
+--- !u!4 &8313308714142303026
 Transform:
   m_ObjectHideFlags: 0
   m_CorrespondingSourceObject: {fileID: 0}
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 7326868924308516955}
+  m_GameObject: {fileID: 8677475605673516878}
   m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
   m_LocalPosition: {x: 0, y: 0, z: 0}
   m_LocalScale: {x: 1, y: 1, z: 1}
@@ -123,3 +109,17 @@ Transform:
   m_Father: {fileID: 8671475187487430762}
   m_RootOrder: 1
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &5970753659194848811
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8677475605673516878}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: a9c34e33224fe894eb17fb42e89185f6, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  XRLocalizer: {fileID: 0}
+  rateTime: 2

+ 0 - 30
Assets/Script/ControlLocalizer.cs

@@ -1,30 +0,0 @@
-using Immersal.AR;
-using UnityEngine;
-using Blue;
-
-public class ControlLocalizer: AbstractController
-{
-    [SerializeField] private XRLocalizer XRLocalizer;
-    [SerializeField] private float rateTime = 2f;
-
-    private float time = 0f;
-    private bool startLocalizer=false;
-
-    private void Awake()
-    {
-        this.SubscribeEvent<SelectEnterSceneEvent>(e=>
-        {
-            startLocalizer = true;
-        });
-    }
-    void Update()
-    {
-        time += Time.deltaTime;
-
-        if(time > rateTime  && startLocalizer)
-        {
-            XRLocalizer.Localize();
-            time= 0;
-        }
-    }
-}

+ 34 - 0
Assets/Scripts/Blue/Controller/ImmersalLocalizerController.cs

@@ -0,0 +1,34 @@
+using Immersal.AR;
+using UnityEngine;
+using Blue;
+
+/// <summary>
+/// 控制Immersal定位
+/// </summary>
+public class ImmersalLocalizerController : AbstractController
+{
+    [SerializeField] private XRLocalizer XRLocalizer;
+    [SerializeField] private float rateTime = 2f;
+    private float time = 0f;
+    private bool startLocalizer = false;
+
+    private void Awake()
+    {
+        this.SubscribeEvent<SelectEnterSceneEvent>(e =>
+        {
+            XRLocalizer = GameObject.Find("ImmersalSDK").GetComponent<XRLocalizer>(); // 获取XRLocalizer
+            this.enabled = true; // 开启脚本
+            startLocalizer = true; // 开始定位
+        }).UnSubScribeWhenGameObjectDestroyed(gameObject);
+    }
+    void Update()
+    {
+        time += Time.deltaTime;
+
+        if (time > rateTime && startLocalizer)
+        {
+            XRLocalizer.Localize();
+            time = 0;
+        }
+    }
+}

+ 1 - 1
Assets/Script/ControlLocalizer.cs.meta → Assets/Scripts/Blue/Controller/ImmersalLocalizerController.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: ee7e6d4fe3022624dbedb3cea308fd58
+guid: a9c34e33224fe894eb17fb42e89185f6
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2