Browse Source

Merge branch 'master' of https://gogs.ghz-tech.com:8843/GHzGlass/GHZMRNavigatorProXR into F/0710_2.1+2.0

胡佳骏 1 year ago
parent
commit
01ec1546a7
46 changed files with 2397 additions and 287 deletions
  1. 555 252
      Assets/MRNavigatorPro.unity
  2. 1 1
      Assets/Plugins/IngameDebugConsole/IngameDebugConsole.prefab
  3. 262 1
      Assets/Prefab/BluePrefabs/BlueRoot.prefab
  4. 697 0
      Assets/Prefab/BluePrefabs/MoveScenePanel.prefab
  5. 7 0
      Assets/Prefab/BluePrefabs/MoveScenePanel.prefab.meta
  6. 80 0
      Assets/Resources/Materials/button.mat
  7. 8 0
      Assets/Resources/Materials/button.mat.meta
  8. 77 9
      Assets/Resources/Template/Prefab/Video.prefab
  9. 19 0
      Assets/Scripts/Blue/Command/DownloadCommand.cs
  10. 11 0
      Assets/Scripts/Blue/Command/DownloadCommand.cs.meta
  11. 19 0
      Assets/Scripts/Blue/Command/UploadCommand.cs
  12. 11 0
      Assets/Scripts/Blue/Command/UploadCommand.cs.meta
  13. 30 0
      Assets/Scripts/Blue/Controller/GetScenePosRot.cs
  14. 11 0
      Assets/Scripts/Blue/Controller/GetScenePosRot.cs.meta
  15. 81 0
      Assets/Scripts/Blue/Controller/SavePanel.cs
  16. 11 0
      Assets/Scripts/Blue/Controller/SavePanel.cs.meta
  17. 8 0
      Assets/Scripts/Blue/Controller/SetPos.meta
  18. 14 0
      Assets/Scripts/Blue/Controller/SetPos/MinMapPos.cs
  19. 11 0
      Assets/Scripts/Blue/Controller/SetPos/MinMapPos.cs.meta
  20. 14 0
      Assets/Scripts/Blue/Controller/SetPos/SetBtnPos.cs
  21. 11 0
      Assets/Scripts/Blue/Controller/SetPos/SetBtnPos.cs.meta
  22. 8 0
      Assets/Scripts/Blue/Editor.meta
  23. 24 0
      Assets/Scripts/Blue/Editor/EditorInit.cs
  24. 11 0
      Assets/Scripts/Blue/Editor/EditorInit.cs.meta
  25. 7 0
      Assets/Scripts/Blue/Event/GetScenePosRotEvent.cs
  26. 11 0
      Assets/Scripts/Blue/Event/GetScenePosRotEvent.cs.meta
  27. 1 0
      Assets/Scripts/Blue/MRNavigatorPro.cs
  28. 4 0
      Assets/Scripts/Blue/Model/SetSceneActive.cs
  29. 11 0
      Assets/Scripts/Blue/Model/SetSceneActive.cs.meta
  30. 6 0
      Assets/Scripts/Blue/Other/ScenePosRotInfo.cs
  31. 11 0
      Assets/Scripts/Blue/Other/ScenePosRotInfo.cs.meta
  32. 1 0
      Assets/Scripts/Blue/ScriptableObject/BlueObject.cs
  33. 1 0
      Assets/Scripts/Blue/ScriptableObject/PrefabsAsset.asset
  34. 130 0
      Assets/Scripts/Blue/Service/IUpOrDownloadService.cs
  35. 11 0
      Assets/Scripts/Blue/Service/IUpOrDownloadService.cs.meta
  36. 73 0
      Assets/Scripts/Blue/Temp/MoveChange.cs
  37. 11 0
      Assets/Scripts/Blue/Temp/MoveChange.cs.meta
  38. 28 0
      Assets/Scripts/Blue/Test/BlueTest.cs
  39. 11 0
      Assets/Scripts/Blue/Test/BlueTest.cs.meta
  40. 1 1
      Assets/Scripts/CalMap.cs
  41. 33 0
      Assets/Scripts/ChangeHeight.cs
  42. 11 0
      Assets/Scripts/ChangeHeight.cs.meta
  43. 27 1
      Assets/Scripts/PlayerTrigger.cs
  44. 15 21
      Assets/Scripts/UI/GameManager.cs
  45. 2 0
      Assets/Scripts/UI/LoginPanel.cs
  46. 10 1
      Assets/Scripts/UI/SceneChoose.cs

File diff suppressed because it is too large
+ 555 - 252
Assets/MRNavigatorPro.unity


+ 1 - 1
Assets/Plugins/IngameDebugConsole/IngameDebugConsole.prefab

@@ -872,7 +872,7 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 1bd692d7393e9254d958929f5da94187, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
-  eventsToReceive: 1
+  eventsToReceive: 0
   NormalType: 5
   center: {fileID: 0}
   debounceThreshold: 0.01

+ 262 - 1
Assets/Prefab/BluePrefabs/BlueRoot.prefab

@@ -74,7 +74,7 @@ Transform:
   m_ConstrainProportionsScale: 0
   m_Children: []
   m_Father: {fileID: 5886227751517987777}
-  m_RootOrder: 2
+  m_RootOrder: 3
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
 --- !u!114 &4085329947062313590
 MonoBehaviour:
@@ -90,6 +90,98 @@ MonoBehaviour:
   m_EditorClassIdentifier: 
   XRLocalizer: {fileID: 0}
   rateTime: 2
+--- !u!1 &327283109765934804
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 3490034733957922214}
+  - component: {fileID: 5122960243441828857}
+  m_Layer: 0
+  m_Name: MoveChange
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &3490034733957922214
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 327283109765934804}
+  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: 5886227751517987777}
+  m_RootOrder: 4
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &5122960243441828857
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 327283109765934804}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 17ee6c5630c36954aa04b75d7a903889, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  moveGame: {fileID: 0}
+  parent: {fileID: 0}
+--- !u!1 &3255320335503680843
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1263283691747613010}
+  - component: {fileID: 1850852233735434126}
+  m_Layer: 0
+  m_Name: GetScenePosRot
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &1263283691747613010
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3255320335503680843}
+  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: 5886227751517987777}
+  m_RootOrder: 2
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &1850852233735434126
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3255320335503680843}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3e5a86f83b8582144a4929f62a385b91, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  meshTest: {fileID: 0}
+  meshTestParent: {fileID: 0}
 --- !u!1 &4965398655029255260
 GameObject:
   m_ObjectHideFlags: 0
@@ -123,7 +215,11 @@ Transform:
   m_Children:
   - {fileID: 5192568582079240754}
   - {fileID: 1004673916}
+  - {fileID: 1263283691747613010}
   - {fileID: 1691766442}
+  - {fileID: 3490034733957922214}
+  - {fileID: 8294022177412783077}
+  - {fileID: 3420359310440475008}
   m_Father: {fileID: 0}
   m_RootOrder: 0
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@@ -164,6 +260,171 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 7edfff1461ac83640bd4012b59d97201, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
+--- !u!1 &7037846102355914218
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 252912846317535761}
+  - component: {fileID: 4321928791570272483}
+  m_Layer: 0
+  m_Name: MinMap
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &252912846317535761
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7037846102355914218}
+  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: 3420359310440475008}
+  m_RootOrder: 1
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &4321928791570272483
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7037846102355914218}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: adb4de7180662d949af04a42fcab6f67, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+--- !u!1 &7412898482642897146
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 4142298729973525203}
+  - component: {fileID: 3537885630970845585}
+  m_Layer: 0
+  m_Name: SetButton
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &4142298729973525203
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7412898482642897146}
+  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: 3420359310440475008}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &3537885630970845585
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7412898482642897146}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 5e0751fcd7df98244a7c6a74f2074965, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+--- !u!1 &8366907603109842081
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 8294022177412783077}
+  - component: {fileID: 6071567358264610956}
+  m_Layer: 0
+  m_Name: Test
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!4 &8294022177412783077
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8366907603109842081}
+  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: 5886227751517987777}
+  m_RootOrder: 5
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &6071567358264610956
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8366907603109842081}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 2e742d2054384974caba689da07cf01f, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+--- !u!1 &8595459607624423563
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 3420359310440475008}
+  m_Layer: 0
+  m_Name: MovePos
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &3420359310440475008
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8595459607624423563}
+  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: 4142298729973525203}
+  - {fileID: 252912846317535761}
+  m_Father: {fileID: 5886227751517987777}
+  m_RootOrder: 6
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
 --- !u!1 &8893702449747549102
 GameObject:
   m_ObjectHideFlags: 0

+ 697 - 0
Assets/Prefab/BluePrefabs/MoveScenePanel.prefab

@@ -0,0 +1,697 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!1 &926056208860273435
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 4475867107447169696}
+  - component: {fileID: 6170225109369971495}
+  - component: {fileID: 7003804316802991887}
+  m_Layer: 5
+  m_Name: Tatle
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &4475867107447169696
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 926056208860273435}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0.0000015378746}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 9059506357934594476}
+  m_RootOrder: 0
+  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: -25.980804}
+  m_SizeDelta: {x: 0, y: 54.1}
+  m_Pivot: {x: 0, y: 1}
+--- !u!222 &6170225109369971495
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 926056208860273435}
+  m_CullTransparentMesh: 1
+--- !u!114 &7003804316802991887
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 926056208860273435}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_FontData:
+    m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
+    m_FontSize: 30
+    m_FontStyle: 0
+    m_BestFit: 0
+    m_MinSize: 3
+    m_MaxSize: 40
+    m_Alignment: 4
+    m_AlignByGeometry: 0
+    m_RichText: 1
+    m_HorizontalOverflow: 0
+    m_VerticalOverflow: 0
+    m_LineSpacing: 1
+  m_Text: "\u573A\u666F\u4FEE\u6539"
+--- !u!1 &9059506357934594475
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 9059506357934594476}
+  - component: {fileID: 9059506357934594478}
+  - component: {fileID: 9059506357934594477}
+  m_Layer: 5
+  m_Name: BtnImage
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &9059506357934594476
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506357934594475}
+  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 51}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children:
+  - {fileID: 4475867107447169696}
+  - {fileID: 9059506358877159105}
+  - {fileID: 9059506358599153448}
+  m_Father: {fileID: 9059506359216945883}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 0, y: 0}
+  m_AnchoredPosition: {x: -288, y: -518}
+  m_SizeDelta: {x: 600, y: 200}
+  m_Pivot: {x: 0, y: 0}
+--- !u!222 &9059506357934594478
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506357934594475}
+  m_CullTransparentMesh: 0
+--- !u!114 &9059506357934594477
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506357934594475}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 0.46666667, g: 0.81960785, b: 0.90588236, 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
+--- !u!1 &9059506358050386896
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 9059506358050386897}
+  - component: {fileID: 9059506358050386899}
+  - component: {fileID: 9059506358050386898}
+  m_Layer: 5
+  m_Name: Text
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &9059506358050386897
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506358050386896}
+  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: 9059506358599153448}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 1, y: 1}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 0, y: 0}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &9059506358050386899
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506358050386896}
+  m_CullTransparentMesh: 0
+--- !u!114 &9059506358050386898
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506358050386896}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_RaycastTarget: 0
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_FontData:
+    m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
+    m_FontSize: 40
+    m_FontStyle: 0
+    m_BestFit: 0
+    m_MinSize: 2
+    m_MaxSize: 40
+    m_Alignment: 4
+    m_AlignByGeometry: 0
+    m_RichText: 1
+    m_HorizontalOverflow: 0
+    m_VerticalOverflow: 0
+    m_LineSpacing: 1
+  m_Text: "\u64A4\u9500"
+--- !u!1 &9059506358599153447
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 9059506358599153448}
+  - component: {fileID: 9059506358599153451}
+  - component: {fileID: 9059506358599153450}
+  - component: {fileID: 9059506358599153449}
+  m_Layer: 5
+  m_Name: RevocationBtn
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &9059506358599153448
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506358599153447}
+  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0.0000015378746}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children:
+  - {fileID: 9059506358050386897}
+  m_Father: {fileID: 9059506357934594476}
+  m_RootOrder: 2
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 0.5}
+  m_AnchorMax: {x: 0.5, y: 0.5}
+  m_AnchoredPosition: {x: -113, y: -25.980797}
+  m_SizeDelta: {x: 188, y: 60}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &9059506358599153451
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506358599153447}
+  m_CullTransparentMesh: 0
+--- !u!114 &9059506358599153450
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506358599153447}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 0.38431376, g: 0.38431376, b: 0.38431376, 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
+--- !u!114 &9059506358599153449
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506358599153447}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Navigation:
+    m_Mode: 3
+    m_WrapAround: 0
+    m_SelectOnUp: {fileID: 0}
+    m_SelectOnDown: {fileID: 0}
+    m_SelectOnLeft: {fileID: 0}
+    m_SelectOnRight: {fileID: 0}
+  m_Transition: 1
+  m_Colors:
+    m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+    m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+    m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+    m_ColorMultiplier: 1
+    m_FadeDuration: 0.1
+  m_SpriteState:
+    m_HighlightedSprite: {fileID: 0}
+    m_PressedSprite: {fileID: 0}
+    m_SelectedSprite: {fileID: 0}
+    m_DisabledSprite: {fileID: 0}
+  m_AnimationTriggers:
+    m_NormalTrigger: Normal
+    m_HighlightedTrigger: Highlighted
+    m_PressedTrigger: Pressed
+    m_SelectedTrigger: Selected
+    m_DisabledTrigger: Disabled
+  m_Interactable: 1
+  m_TargetGraphic: {fileID: 9059506358599153450}
+  m_OnClick:
+    m_PersistentCalls:
+      m_Calls: []
+--- !u!1 &9059506358877159104
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 9059506358877159105}
+  - component: {fileID: 9059506358877159108}
+  - component: {fileID: 9059506358877159107}
+  - component: {fileID: 9059506358877159106}
+  m_Layer: 5
+  m_Name: SaveBtn
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &9059506358877159105
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506358877159104}
+  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: 9059506359133896322}
+  m_Father: {fileID: 9059506357934594476}
+  m_RootOrder: 1
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 1}
+  m_AnchorMax: {x: 1, y: 1}
+  m_AnchoredPosition: {x: 125, y: -131}
+  m_SizeDelta: {x: -412, y: 60}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &9059506358877159108
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506358877159104}
+  m_CullTransparentMesh: 0
+--- !u!114 &9059506358877159107
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506358877159104}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 0.14117648, g: 0.5529412, b: 1, 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
+--- !u!114 &9059506358877159106
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506358877159104}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Navigation:
+    m_Mode: 3
+    m_WrapAround: 0
+    m_SelectOnUp: {fileID: 0}
+    m_SelectOnDown: {fileID: 0}
+    m_SelectOnLeft: {fileID: 0}
+    m_SelectOnRight: {fileID: 0}
+  m_Transition: 1
+  m_Colors:
+    m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+    m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+    m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+    m_ColorMultiplier: 1
+    m_FadeDuration: 0.1
+  m_SpriteState:
+    m_HighlightedSprite: {fileID: 0}
+    m_PressedSprite: {fileID: 0}
+    m_SelectedSprite: {fileID: 0}
+    m_DisabledSprite: {fileID: 0}
+  m_AnimationTriggers:
+    m_NormalTrigger: Normal
+    m_HighlightedTrigger: Highlighted
+    m_PressedTrigger: Pressed
+    m_SelectedTrigger: Selected
+    m_DisabledTrigger: Disabled
+  m_Interactable: 1
+  m_TargetGraphic: {fileID: 9059506358877159107}
+  m_OnClick:
+    m_PersistentCalls:
+      m_Calls: []
+--- !u!1 &9059506359133896321
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 9059506359133896322}
+  - component: {fileID: 9059506359133896324}
+  - component: {fileID: 9059506359133896323}
+  m_Layer: 5
+  m_Name: Text
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &9059506359133896322
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506359133896321}
+  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: 9059506358877159105}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 1, y: 1}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 0, y: 0}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &9059506359133896324
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506359133896321}
+  m_CullTransparentMesh: 0
+--- !u!114 &9059506359133896323
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506359133896321}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_RaycastTarget: 0
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_FontData:
+    m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
+    m_FontSize: 40
+    m_FontStyle: 0
+    m_BestFit: 0
+    m_MinSize: 2
+    m_MaxSize: 40
+    m_Alignment: 4
+    m_AlignByGeometry: 0
+    m_RichText: 1
+    m_HorizontalOverflow: 0
+    m_VerticalOverflow: 0
+    m_LineSpacing: 1
+  m_Text: "\u4FDD\u5B58"
+--- !u!1 &9059506359216945882
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 9059506359216945883}
+  - component: {fileID: 9059506359216945886}
+  - component: {fileID: 9059506359216945885}
+  - component: {fileID: 9059506359216945884}
+  - component: {fileID: 9059506359216945887}
+  - component: {fileID: 9059506359216945952}
+  m_Layer: 5
+  m_Name: MoveScenePanel
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!224 &9059506359216945883
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506359216945882}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 0.0003333334, y: 0.0003333334, z: 0.00004333334}
+  m_ConstrainProportionsScale: 0
+  m_Children:
+  - {fileID: 9059506357934594476}
+  m_Father: {fileID: 0}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 0.5}
+  m_AnchorMax: {x: 0.5, y: 0.5}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 100, y: 100}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!223 &9059506359216945886
+Canvas:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506359216945882}
+  m_Enabled: 1
+  serializedVersion: 3
+  m_RenderMode: 2
+  m_Camera: {fileID: 0}
+  m_PlaneDistance: 100
+  m_PixelPerfect: 0
+  m_ReceivesEvents: 1
+  m_OverrideSorting: 0
+  m_OverridePixelPerfect: 0
+  m_SortingBucketNormalizedSize: 0
+  m_AdditionalShaderChannelsFlag: 0
+  m_SortingLayerID: 0
+  m_SortingOrder: 0
+  m_TargetDisplay: 0
+--- !u!114 &9059506359216945885
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506359216945882}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_UiScaleMode: 0
+  m_ReferencePixelsPerUnit: 100
+  m_ScaleFactor: 1
+  m_ReferenceResolution: {x: 800, y: 600}
+  m_ScreenMatchMode: 0
+  m_MatchWidthOrHeight: 0
+  m_PhysicalUnit: 3
+  m_FallbackScreenDPI: 96
+  m_DefaultSpriteDPI: 96
+  m_DynamicPixelsPerUnit: 1
+  m_PresetInfoIsWorld: 1
+--- !u!114 &9059506359216945884
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506359216945882}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_IgnoreReversedGraphics: 1
+  m_BlockingObjects: 0
+  m_BlockingMask:
+    serializedVersion: 2
+    m_Bits: 4294967295
+--- !u!114 &9059506359216945887
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506359216945882}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 896c84f95d0d80c49b852e5165e1410e, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  saveBtn: {fileID: 9059506358877159106}
+  cancleBtn: {fileID: 9059506358599153449}
+  meshTest: {fileID: 0}
+  parent: {fileID: 0}
+  sCToggleSwitch3D: {fileID: 0}
+--- !u!114 &9059506359216945952
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 9059506359216945882}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 948b9ab040508dc48a294230f85b39e2, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 

+ 7 - 0
Assets/Prefab/BluePrefabs/MoveScenePanel.prefab.meta

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

+ 80 - 0
Assets/Resources/Materials/button.mat

@@ -0,0 +1,80 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 8
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: button
+  m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+  m_ValidKeywords: []
+  m_InvalidKeywords: []
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: -1
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _BumpMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _DetailAlbedoMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _DetailMask:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _DetailNormalMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _EmissionMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _MainTex:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _MetallicGlossMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _OcclusionMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _ParallaxMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    m_Ints: []
+    m_Floats:
+    - _BumpScale: 1
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0.5
+    - _GlossyReflections: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SrcBlend: 1
+    - _UVSec: 0
+    - _ZWrite: 1
+    m_Colors:
+    - _Color: {r: 1, g: 1, b: 1, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
+  m_BuildTextureStacks: []

+ 8 - 0
Assets/Resources/Materials/button.mat.meta

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

+ 77 - 9
Assets/Resources/Template/Prefab/Video.prefab

@@ -28,6 +28,7 @@ Transform:
   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: 7783334409209170372}
   m_RootOrder: 0
@@ -43,10 +44,12 @@ MeshRenderer:
   m_CastShadows: 1
   m_ReceiveShadows: 1
   m_DynamicOccludee: 1
+  m_StaticShadowCaster: 0
   m_MotionVectors: 1
   m_LightProbeUsage: 1
   m_ReflectionProbeUsage: 1
   m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
   m_RenderingLayerMask: 1
   m_RendererPriority: 0
   m_Materials:
@@ -71,6 +74,7 @@ MeshRenderer:
   m_SortingLayerID: 0
   m_SortingLayer: 0
   m_SortingOrder: 0
+  m_AdditionalVertexStreams: {fileID: 0}
 --- !u!33 &1856638059971383832
 MeshFilter:
   m_ObjectHideFlags: 0
@@ -107,12 +111,13 @@ RectTransform:
   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: 1856638061127853969}
   m_RootOrder: 0
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0, y: 0}
-  m_AnchorMax: {x: 0, y: 1}
+  m_AnchorMax: {x: 0, y: 0}
   m_AnchoredPosition: {x: 0, y: 0}
   m_SizeDelta: {x: 20, y: 0}
   m_Pivot: {x: 0.5, y: 0.5}
@@ -139,6 +144,7 @@ MonoBehaviour:
   m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
   m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
   m_Maskable: 1
   m_OnCullStateChanged:
     m_PersistentCalls:
@@ -181,6 +187,7 @@ RectTransform:
   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: 1856638061154403308}
   m_RootOrder: 0
@@ -213,6 +220,7 @@ MonoBehaviour:
   m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
   m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
   m_Maskable: 1
   m_OnCullStateChanged:
     m_PersistentCalls:
@@ -253,6 +261,7 @@ RectTransform:
   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: 1856638061595842862}
   m_Father: {fileID: 1856638061154403308}
@@ -294,6 +303,7 @@ Transform:
   m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
   m_LocalPosition: {x: -0.000898, y: 0.000355, z: 0.00001}
   m_LocalScale: {x: 0.11955964, y: 0.123689465, z: 0.1186889}
+  m_ConstrainProportionsScale: 0
   m_Children: []
   m_Father: {fileID: 1856638061838950076}
   m_RootOrder: 2
@@ -309,10 +319,12 @@ SpriteRenderer:
   m_CastShadows: 0
   m_ReceiveShadows: 0
   m_DynamicOccludee: 1
+  m_StaticShadowCaster: 0
   m_MotionVectors: 1
   m_LightProbeUsage: 1
   m_ReflectionProbeUsage: 1
   m_RayTracingMode: 0
+  m_RayTraceProcedural: 0
   m_RenderingLayerMask: 1
   m_RendererPriority: 0
   m_Materials:
@@ -382,6 +394,7 @@ VideoPlayer:
   m_Looping: 0
   m_WaitForFirstFrame: 1
   m_FrameReadyEventEnabled: 0
+  m_VideoShaders: []
 --- !u!65 &1856638060621969659
 BoxCollider:
   m_ObjectHideFlags: 0
@@ -431,6 +444,7 @@ MonoBehaviour:
       m_PersistentCalls:
         m_Calls:
         - m_Target: {fileID: 1665794951619934101}
+          m_TargetAssemblyTypeName: 
           m_MethodName: PlayVideo
           m_Mode: 1
           m_Arguments:
@@ -464,6 +478,7 @@ MonoBehaviour:
   VideoPage: {fileID: 0}
   FengMian: {fileID: 0}
   m_VideoURL: 
+  m_IsPlaying: 0
 --- !u!1 &1856638061127853968
 GameObject:
   m_ObjectHideFlags: 0
@@ -490,6 +505,7 @@ RectTransform:
   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: 1856638060210221059}
   m_Father: {fileID: 1856638061154403308}
@@ -530,6 +546,7 @@ RectTransform:
   m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
   m_LocalPosition: {x: 0, y: 0, z: -0.007}
   m_LocalScale: {x: 0.002614, y: 0.0072046802, z: 0.002614}
+  m_ConstrainProportionsScale: 0
   m_Children:
   - {fileID: 1856638060251146797}
   - {fileID: 1856638060388970404}
@@ -557,6 +574,7 @@ MonoBehaviour:
   m_EditorClassIdentifier: 
   m_Navigation:
     m_Mode: 3
+    m_WrapAround: 0
     m_SelectOnUp: {fileID: 0}
     m_SelectOnDown: {fileID: 0}
     m_SelectOnLeft: {fileID: 0}
@@ -708,6 +726,7 @@ MonoBehaviour:
     m_PersistentCalls:
       m_Calls:
       - m_Target: {fileID: 1856638061154403307}
+        m_TargetAssemblyTypeName: 
         m_MethodName: PlayOneShot
         m_Mode: 2
         m_Arguments:
@@ -726,6 +745,7 @@ MonoBehaviour:
     m_PersistentCalls:
       m_Calls:
       - m_Target: {fileID: 1856638061154403307}
+        m_TargetAssemblyTypeName: 
         m_MethodName: PlayOneShot
         m_Mode: 2
         m_Arguments:
@@ -803,12 +823,13 @@ RectTransform:
   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: 1856638060388970404}
   m_RootOrder: 0
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0, y: 0}
-  m_AnchorMax: {x: 0, y: 1}
+  m_AnchorMax: {x: 0, y: 0}
   m_AnchoredPosition: {x: 0, y: 0}
   m_SizeDelta: {x: 10, y: 0}
   m_Pivot: {x: 0.5, y: 0.5}
@@ -835,6 +856,7 @@ MonoBehaviour:
   m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
   m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
   m_Maskable: 1
   m_OnCullStateChanged:
     m_PersistentCalls:
@@ -877,6 +899,7 @@ RectTransform:
   m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
   m_LocalPosition: {x: 0, y: 0, z: 0.8598305}
   m_LocalScale: {x: 0.19999999, y: 0.19999999, z: 0.19999999}
+  m_ConstrainProportionsScale: 0
   m_Children: []
   m_Father: {fileID: 1856638061154403308}
   m_RootOrder: 3
@@ -909,6 +932,7 @@ MonoBehaviour:
   m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
   m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
   m_Maskable: 1
   m_OnCullStateChanged:
     m_PersistentCalls:
@@ -958,6 +982,7 @@ RectTransform:
   m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
   m_LocalPosition: {x: 0, y: 0, z: -0.001}
   m_LocalScale: {x: 0.2630543, y: 0.45, z: 2.6}
+  m_ConstrainProportionsScale: 0
   m_Children:
   - {fileID: 7230691857059115727}
   - {fileID: 5251240012425196325}
@@ -1015,6 +1040,7 @@ MonoBehaviour:
   m_FallbackScreenDPI: 96
   m_DefaultSpriteDPI: 96
   m_DynamicPixelsPerUnit: 1
+  m_PresetInfoIsWorld: 1
 --- !u!114 &1856638061838950077
 MonoBehaviour:
   m_ObjectHideFlags: 0
@@ -1079,7 +1105,7 @@ GameObject:
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
   m_StaticEditorFlags: 0
-  m_IsActive: 0
+  m_IsActive: 1
 --- !u!4 &6205437353741617074
 Transform:
   m_ObjectHideFlags: 0
@@ -1090,6 +1116,7 @@ Transform:
   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: 8554676594980255613}
   - {fileID: 8554676593696482102}
@@ -1130,6 +1157,7 @@ MonoBehaviour:
   scaleMinimum: 0.05
   activeScaleMaxRestrict: 0
   scaleMaximum: 2
+  BoundBoxCollider: {fileID: 0}
   showRotationHandleForX: 1
   showRotationHandleForY: 1
   showRotationHandleForZ: 1
@@ -1150,6 +1178,12 @@ MonoBehaviour:
   ScaleStopped:
     m_PersistentCalls:
       m_Calls: []
+  Rotating:
+    m_PersistentCalls:
+      m_Calls: []
+  Scaling:
+    m_PersistentCalls:
+      m_Calls: []
 --- !u!114 &5579340848617264414
 MonoBehaviour:
   m_ObjectHideFlags: 0
@@ -1231,6 +1265,7 @@ RectTransform:
   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: 1856638061838950076}
   m_RootOrder: 1
@@ -1263,6 +1298,7 @@ MonoBehaviour:
   m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
   m_RaycastTarget: 0
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
   m_Maskable: 1
   m_OnCullStateChanged:
     m_PersistentCalls:
@@ -1300,6 +1336,7 @@ Transform:
   m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
   m_LocalPosition: {x: 0, y: 0, z: -0.008100023}
   m_LocalScale: {x: 20.607916, y: 20.607916, z: 20.607916}
+  m_ConstrainProportionsScale: 0
   m_Children:
   - {fileID: 7783334409209170372}
   - {fileID: 7783334409971989512}
@@ -1338,6 +1375,7 @@ RectTransform:
   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: 7783334408191734235}
   m_RootOrder: 2
@@ -1358,10 +1396,12 @@ MeshRenderer:
   m_CastShadows: 0
   m_ReceiveShadows: 0
   m_DynamicOccludee: 1
+  m_StaticShadowCaster: 0
   m_MotionVectors: 1
   m_LightProbeUsage: 0
   m_ReflectionProbeUsage: 0
   m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
   m_RenderingLayerMask: 4294967295
   m_RendererPriority: 0
   m_Materials:
@@ -1386,6 +1426,7 @@ MeshRenderer:
   m_SortingLayerID: 0
   m_SortingLayer: 0
   m_SortingOrder: 0
+  m_AdditionalVertexStreams: {fileID: 0}
 --- !u!33 &7783334408527155292
 MeshFilter:
   m_ObjectHideFlags: 0
@@ -1417,6 +1458,7 @@ MonoBehaviour:
   m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
   m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
   m_Maskable: 1
   m_OnCullStateChanged:
     m_PersistentCalls:
@@ -1487,12 +1529,12 @@ MonoBehaviour:
   m_margin: {x: 0, y: 0, z: 0, w: 0}
   m_isUsingLegacyAnimationComponent: 0
   m_isVolumetricText: 0
-  m_hasFontAssetChanged: 0
-  m_renderer: {fileID: 7783334408527155293}
-  m_maskType: 0
   _SortingLayer: 0
   _SortingLayerID: 0
   _SortingOrder: 0
+  m_hasFontAssetChanged: 0
+  m_renderer: {fileID: 7783334408527155293}
+  m_maskType: 0
 --- !u!1 &7783334408536695769
 GameObject:
   m_ObjectHideFlags: 0
@@ -1520,6 +1562,7 @@ Transform:
   m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
   m_LocalPosition: {x: 0, y: 0, z: 0}
   m_LocalScale: {x: 0.0025, y: 0.0025, z: 0.0025}
+  m_ConstrainProportionsScale: 0
   m_Children: []
   m_Father: {fileID: 7783334408191734235}
   m_RootOrder: 3
@@ -1535,10 +1578,12 @@ SpriteRenderer:
   m_CastShadows: 0
   m_ReceiveShadows: 0
   m_DynamicOccludee: 1
+  m_StaticShadowCaster: 0
   m_MotionVectors: 1
   m_LightProbeUsage: 1
   m_ReflectionProbeUsage: 1
   m_RayTracingMode: 0
+  m_RayTraceProcedural: 0
   m_RenderingLayerMask: 1
   m_RendererPriority: 0
   m_Materials:
@@ -1603,6 +1648,7 @@ RectTransform:
   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: 1856638059971383834}
   m_Father: {fileID: 7783334408191734235}
@@ -1624,10 +1670,12 @@ MeshRenderer:
   m_CastShadows: 0
   m_ReceiveShadows: 0
   m_DynamicOccludee: 1
+  m_StaticShadowCaster: 0
   m_MotionVectors: 1
   m_LightProbeUsage: 0
   m_ReflectionProbeUsage: 0
   m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
   m_RenderingLayerMask: 4294967295
   m_RendererPriority: 0
   m_Materials:
@@ -1652,6 +1700,7 @@ MeshRenderer:
   m_SortingLayerID: 0
   m_SortingLayer: 0
   m_SortingOrder: 0
+  m_AdditionalVertexStreams: {fileID: 0}
 --- !u!222 &7783334409209170374
 CanvasRenderer:
   m_ObjectHideFlags: 0
@@ -1675,6 +1724,7 @@ MonoBehaviour:
   m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
   m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
   m_Maskable: 1
   m_OnCullStateChanged:
     m_PersistentCalls:
@@ -1745,12 +1795,12 @@ MonoBehaviour:
   m_margin: {x: 0, y: -0.0022691963, z: 0, w: 0}
   m_isUsingLegacyAnimationComponent: 0
   m_isVolumetricText: 0
-  m_hasFontAssetChanged: 0
-  m_renderer: {fileID: 7783334409209170376}
-  m_maskType: 0
   _SortingLayer: 0
   _SortingLayerID: 0
   _SortingOrder: 0
+  m_hasFontAssetChanged: 0
+  m_renderer: {fileID: 7783334409209170376}
+  m_maskType: 0
 --- !u!1 &7783334409971989511
 GameObject:
   m_ObjectHideFlags: 0
@@ -1779,6 +1829,7 @@ Transform:
   m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
   m_LocalPosition: {x: 0, y: 0, z: 0}
   m_LocalScale: {x: 0.32, y: 0.32, z: 0.32}
+  m_ConstrainProportionsScale: 0
   m_Children: []
   m_Father: {fileID: 7783334408191734235}
   m_RootOrder: 1
@@ -1802,10 +1853,12 @@ MeshRenderer:
   m_CastShadows: 0
   m_ReceiveShadows: 0
   m_DynamicOccludee: 1
+  m_StaticShadowCaster: 0
   m_MotionVectors: 1
   m_LightProbeUsage: 0
   m_ReflectionProbeUsage: 0
   m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
   m_RenderingLayerMask: 4294967295
   m_RendererPriority: 0
   m_Materials:
@@ -1830,6 +1883,7 @@ MeshRenderer:
   m_SortingLayerID: 0
   m_SortingLayer: 0
   m_SortingOrder: 0
+  m_AdditionalVertexStreams: {fileID: 0}
 --- !u!1 &8554676593696482103
 GameObject:
   m_ObjectHideFlags: 0
@@ -1858,6 +1912,7 @@ Transform:
   m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
   m_LocalPosition: {x: 0, y: 0, z: 0}
   m_LocalScale: {x: 0.5218513, y: 0.5218513, z: 0.5218513}
+  m_ConstrainProportionsScale: 0
   m_Children: []
   m_Father: {fileID: 6205437353741617074}
   m_RootOrder: 1
@@ -1881,10 +1936,12 @@ MeshRenderer:
   m_CastShadows: 0
   m_ReceiveShadows: 0
   m_DynamicOccludee: 1
+  m_StaticShadowCaster: 0
   m_MotionVectors: 2
   m_LightProbeUsage: 0
   m_ReflectionProbeUsage: 0
   m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
   m_RenderingLayerMask: 1
   m_RendererPriority: 0
   m_Materials:
@@ -1909,6 +1966,7 @@ MeshRenderer:
   m_SortingLayerID: 0
   m_SortingLayer: 0
   m_SortingOrder: 0
+  m_AdditionalVertexStreams: {fileID: 0}
 --- !u!1 &8554676594980255614
 GameObject:
   m_ObjectHideFlags: 0
@@ -1937,6 +1995,7 @@ Transform:
   m_LocalRotation: {x: -0.7071068, y: -0, z: -0, w: 0.7071068}
   m_LocalPosition: {x: 0, y: 0, z: 0}
   m_LocalScale: {x: 0.9057573, y: 1.9166911, z: 0.9069173}
+  m_ConstrainProportionsScale: 0
   m_Children: []
   m_Father: {fileID: 6205437353741617074}
   m_RootOrder: 0
@@ -1960,10 +2019,12 @@ MeshRenderer:
   m_CastShadows: 0
   m_ReceiveShadows: 1
   m_DynamicOccludee: 1
+  m_StaticShadowCaster: 0
   m_MotionVectors: 1
   m_LightProbeUsage: 0
   m_ReflectionProbeUsage: 1
   m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
   m_RenderingLayerMask: 1
   m_RendererPriority: 0
   m_Materials:
@@ -1988,6 +2049,7 @@ MeshRenderer:
   m_SortingLayerID: 0
   m_SortingLayer: 0
   m_SortingOrder: 0
+  m_AdditionalVertexStreams: {fileID: 0}
 --- !u!1 &8654540562372780374
 GameObject:
   m_ObjectHideFlags: 0
@@ -2019,6 +2081,7 @@ RectTransform:
   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: 1856638061838950076}
   m_RootOrder: 0
@@ -2051,6 +2114,7 @@ MonoBehaviour:
   m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
   m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
   m_Maskable: 1
   m_OnCullStateChanged:
     m_PersistentCalls:
@@ -2096,6 +2160,7 @@ VideoPlayer:
   m_Looping: 0
   m_WaitForFirstFrame: 1
   m_FrameReadyEventEnabled: 0
+  m_VideoShaders: []
 --- !u!114 &3512519517725256639
 MonoBehaviour:
   m_ObjectHideFlags: 0
@@ -2114,6 +2179,7 @@ MonoBehaviour:
   VideoPage: {fileID: 939118683876271891}
   FengMian: {fileID: 6472403792870324785}
   m_VideoURL: 
+  m_IsPlaying: 0
 --- !u!114 &1116663417015624178
 MonoBehaviour:
   m_ObjectHideFlags: 0
@@ -2128,6 +2194,7 @@ MonoBehaviour:
   m_EditorClassIdentifier: 
   m_Navigation:
     m_Mode: 3
+    m_WrapAround: 0
     m_SelectOnUp: {fileID: 0}
     m_SelectOnDown: {fileID: 0}
     m_SelectOnLeft: {fileID: 0}
@@ -2158,6 +2225,7 @@ MonoBehaviour:
     m_PersistentCalls:
       m_Calls:
       - m_Target: {fileID: 3512519517725256639}
+        m_TargetAssemblyTypeName: 
         m_MethodName: PlayVideo
         m_Mode: 1
         m_Arguments:

+ 19 - 0
Assets/Scripts/Blue/Command/DownloadCommand.cs

@@ -0,0 +1,19 @@
+using Blue;
+using System;
+using System.Collections.Generic;
+
+/// <summary>
+/// ÏÂÔØÒÆ¶¯³¡¾°µÄPostion¡¢Rotatiuon
+/// </summary>
+public class DownloadCommand : ICommand
+{
+    private string Url;
+    public DownloadCommand(string Url )
+    {
+        this.Url = Url;
+    }
+    public void OnExcute()
+    {
+        this.GetService<IUpOrDownloadService>().GetScenePosRot(Url);
+    }
+}

+ 11 - 0
Assets/Scripts/Blue/Command/DownloadCommand.cs.meta

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

+ 19 - 0
Assets/Scripts/Blue/Command/UploadCommand.cs

@@ -0,0 +1,19 @@
+using Blue;
+
+/// <summary>
+/// ÉÏ´«Òƶ¯³¡¾°µÄPostion¡¢Rotatiuon
+/// </summary>
+public class UploadCommand : ICommand
+{
+    private string Url;
+    private string JsonString;
+    public UploadCommand(string Url, string JsonString)
+    {
+        this.Url = Url;
+        this.JsonString = JsonString;
+    }
+    public void OnExcute()
+    {
+        this.GetService<IUpOrDownloadService>().UploadScenePosRot(Url,JsonString);
+    }
+}

+ 11 - 0
Assets/Scripts/Blue/Command/UploadCommand.cs.meta

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

+ 30 - 0
Assets/Scripts/Blue/Controller/GetScenePosRot.cs

@@ -0,0 +1,30 @@
+using Blue;
+using UnityEngine;
+
+public class GetScenePosRot : AbstractController
+{
+    public Transform meshTest;
+    public Transform meshTestParent;
+    private void Awake()
+    {
+        meshTestParent = GameObject.Find("ARSpaceForAll").transform;
+        meshTest = GameObject.Find("ARSpaceForAll/mesh_test").gameObject.transform;
+        this.SubscribeEvent<GetScenePosRotEvent>(GetScenePosRotSuccess).UnSubScribeWhenGameObjectDestroyed(gameObject);
+    }
+
+    private void GetScenePosRotSuccess(GetScenePosRotEvent e)
+    {
+        Vector3 pos = new Vector3(e.PosRot[0].x, e.PosRot[0].y, e.PosRot[0].z);
+        Vector3 rot = new Vector3(e.PosRot[1].x, e.PosRot[1].y, e.PosRot[1].z);
+        SetPosRot(pos,rot);
+    }
+
+    private void SetPosRot(Vector3 pos,Vector3 rot)
+    {
+        meshTest.transform.parent = meshTestParent;
+
+        meshTest.transform.localPosition = pos;
+
+        meshTest.transform.localEulerAngles = rot;
+    }
+}

+ 11 - 0
Assets/Scripts/Blue/Controller/GetScenePosRot.cs.meta

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

+ 81 - 0
Assets/Scripts/Blue/Controller/SavePanel.cs

@@ -0,0 +1,81 @@
+using Blue;
+using Newtonsoft.Json;
+using SC.XR.Unity;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.UI;
+
+public class SavePanel : AbstractController
+{
+    public Button saveBtn;
+    public Button cancleBtn;
+    public Transform meshTest;
+    public Transform parent;
+    public SCToggleSwitch3D sCToggleSwitch3D;
+    [SerializeField] private GameObject ARMap;
+
+    private List<ScenePosRotInfo> posRotlist = new List<ScenePosRotInfo>();
+    private ScenePosRotInfo pos = new ScenePosRotInfo();
+    private ScenePosRotInfo rot = new ScenePosRotInfo();
+    private void Start()
+    {
+        posRotlist.Add(pos); posRotlist.Add(rot);
+        meshTest = GameObject.Find("ARSpaceForAll/mesh_test").gameObject.transform;
+        parent = GameObject.Find("ARSpaceForAll").transform;
+        ARMap = GameObject.Find("ARSpaceForAll/AR_Map");
+        ARMap.SetActive(false);
+        sCToggleSwitch3D = transform.parent.GetComponent<SCToggleSwitch3D>();
+
+        saveBtn.onClick.AddListener(Save);
+        cancleBtn.onClick.AddListener(Cancle);
+    }
+
+    private void Save()
+    {
+        meshTest.transform.parent = parent;
+
+        posRotlist[0].x = meshTest.localPosition.x;
+        posRotlist[0].y = meshTest.localPosition.y;
+        posRotlist[0].z = meshTest.localPosition.z;
+        posRotlist[1].x = meshTest.localEulerAngles.x;
+        posRotlist[1].y = meshTest.localEulerAngles.y;
+        posRotlist[1].z = meshTest.localEulerAngles.z;
+        string jsonString = JsonConvert.SerializeObject(posRotlist);
+        this.SendCommand(new UploadCommand(this.GetService<IUpOrDownloadService>().URL, jsonString));
+        sCToggleSwitch3D.isOn = false;
+        gameObject.SetActive(false);
+    }
+    private void Cancle()
+    {
+        meshTest.transform.parent = parent;
+        List<ScenePosRotInfo> TempPosRotlist = this.GetService<IUpOrDownloadService>().PosRot;
+
+        float posX = TempPosRotlist[0].x;
+        float posY = TempPosRotlist[0].y;
+        float posZ = TempPosRotlist[0].z;
+
+        Vector3 pos = new Vector3(posX, posY, posZ);
+        meshTest.localPosition = pos;
+
+        float rotX = TempPosRotlist[1].x;
+        float rotY = TempPosRotlist[1].y;
+        float rotZ = TempPosRotlist[1].z;
+        meshTest.localEulerAngles = new Vector3(rotX, rotY, rotZ);
+
+        sCToggleSwitch3D.isOn = false;
+        gameObject.SetActive(false);
+    }
+
+    private void OnEnable()
+    {
+        if(ARMap!=null)
+            ARMap.SetActive(false);
+        SetSceneActive.active = true;
+    }
+    private void OnDisable()
+    {
+        if(ARMap!=null)
+            ARMap.SetActive(true);
+        SetSceneActive.active = false;
+    }
+}

+ 11 - 0
Assets/Scripts/Blue/Controller/SavePanel.cs.meta

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

+ 8 - 0
Assets/Scripts/Blue/Controller/SetPos.meta

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

+ 14 - 0
Assets/Scripts/Blue/Controller/SetPos/MinMapPos.cs

@@ -0,0 +1,14 @@
+using UnityEngine;
+
+public class MinMapPos : MonoBehaviour
+{
+    [SerializeField] private GameObject MinMapCanvas;
+    void Awake()
+    {
+        MinMapCanvas = GameObject.Find("MinMapCanvas");
+        if (MinMapCanvas != null)
+        {
+            MinMapCanvas.transform.parent = OpenXRCamera.Instance.head;
+        }
+    }
+}

+ 11 - 0
Assets/Scripts/Blue/Controller/SetPos/MinMapPos.cs.meta

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

+ 14 - 0
Assets/Scripts/Blue/Controller/SetPos/SetBtnPos.cs

@@ -0,0 +1,14 @@
+using UnityEngine;
+
+public class SetBtnPos : MonoBehaviour
+{
+    [SerializeField] private GameObject SetBtn;
+    void Awake()
+    {
+        SetBtn = GameObject.Find("SetBtn");
+        if (SetBtn != null)
+        {
+           // SetBtn.transform.parent = OpenXRCamera.Instance.head;
+        }
+    }
+}

+ 11 - 0
Assets/Scripts/Blue/Controller/SetPos/SetBtnPos.cs.meta

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

+ 8 - 0
Assets/Scripts/Blue/Editor.meta

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

+ 24 - 0
Assets/Scripts/Blue/Editor/EditorInit.cs

@@ -0,0 +1,24 @@
+using UnityEditor;
+using UnityEngine;
+
+public static class EditorInit
+{
+    /*
+    [MenuItem("EditorExtensions/ProjectInit")]
+    static void Init()
+    {
+        // SetBtn 设置父子关系
+        Transform CenterCamera = GameObject.Find("SDKSystem/NRCameraRig/CenterCamera").gameObject.transform;
+        Transform SetBtn = GameObject.Find("SetBtn").gameObject.transform;
+        SetBtn.SetParent(CenterCamera);
+        Debug.LogError("SetBtn 设置父子关系");
+
+        // MoveScenePanel 设置父子关系
+        GameObject MoveScenePanel = GameObject.Find("EditorCanvas/MoveScenePanel");
+        MoveScenePanel.SetActive(false);
+        Transform AnchorBtn = SetBtn.Find("AnchorBtn");
+        MoveScenePanel.transform.SetParent(AnchorBtn);
+        Debug.LogError("MoveScenePanel 设置父子关系");
+    }
+    */
+}

+ 11 - 0
Assets/Scripts/Blue/Editor/EditorInit.cs.meta

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

+ 7 - 0
Assets/Scripts/Blue/Event/GetScenePosRotEvent.cs

@@ -0,0 +1,7 @@
+using Blue;
+using System.Collections.Generic;
+
+public class GetScenePosRotEvent : IEvent
+{
+    public List<ScenePosRotInfo> PosRot;
+}

+ 11 - 0
Assets/Scripts/Blue/Event/GetScenePosRotEvent.cs.meta

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

+ 1 - 0
Assets/Scripts/Blue/MRNavigatorPro.cs

@@ -17,6 +17,7 @@ public class MRNavigatorPro : AbstractArchitecture<MRNavigatorPro>
     private void RegisterService()
     {
         this.RegisterService<ISendLogService>(new SendLogService());
+        this.RegisterService<IUpOrDownloadService>(new UpOrDownloadService());
     }
 
     private void RegisterUtility()

+ 4 - 0
Assets/Scripts/Blue/Model/SetSceneActive.cs

@@ -0,0 +1,4 @@
+public static class SetSceneActive
+{
+    public static bool active = false;
+}

+ 11 - 0
Assets/Scripts/Blue/Model/SetSceneActive.cs.meta

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

+ 6 - 0
Assets/Scripts/Blue/Other/ScenePosRotInfo.cs

@@ -0,0 +1,6 @@
+public class ScenePosRotInfo
+{
+    public float x { get; set; }
+    public float y { get; set; }
+    public float z { get; set; }
+}

+ 11 - 0
Assets/Scripts/Blue/Other/ScenePosRotInfo.cs.meta

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

+ 1 - 0
Assets/Scripts/Blue/ScriptableObject/BlueObject.cs

@@ -6,4 +6,5 @@ public class BlueObject : ScriptableObject
     //可以包含更多的数据,信息
     public GameObject WarningPopUp;
     public string NetErrorText;
+    public string SuccessText;
 }

+ 1 - 0
Assets/Scripts/Blue/ScriptableObject/PrefabsAsset.asset

@@ -15,3 +15,4 @@ MonoBehaviour:
   WarningPopUp: {fileID: 2160148988178575977, guid: 725f0ac354735774cbc2e7c450ccb350,
     type: 3}
   NetErrorText: "\u4FDD\u5B58\u5931\u8D25\\n\u670D\u52A1\u5668\u5F02\u5E38,\u8BF7\u7A0D\u540E\u91CD\u8BD5"
+  SuccessText: "\u4FDD\u5B58\u6210\u529F"

+ 130 - 0
Assets/Scripts/Blue/Service/IUpOrDownloadService.cs

@@ -0,0 +1,130 @@
+using Blue;
+using LitJson;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Text;
+using UnityEngine;
+using UnityEngine.Networking;
+
+public interface IUpOrDownloadService : IService
+{
+    List<ScenePosRotInfo> PosRot { get; }
+    string URL { get; }
+    void GetScenePosRot(string Url);
+    void UploadScenePosRot(string Url, string JsonString);
+}
+
+public class UpOrDownloadService : IUpOrDownloadService
+{
+    public List<ScenePosRotInfo> PosRot { get; private set; }
+    public string URL { get; private set; }
+
+    public void OnInit()
+    {
+
+    }
+
+    void IUpOrDownloadService.GetScenePosRot(string Url)
+    {
+        RootSystem.Instance.StartCoroutine(GetScenePosRotRequest(Url));
+    }
+
+    void IUpOrDownloadService.UploadScenePosRot(string Url, string JsonString)
+    {
+        RootSystem.Instance.StartCoroutine(RequestUpload(Url,JsonString));
+    }
+
+    private IEnumerator GetScenePosRotRequest(string Url)
+    {
+        using (UnityWebRequest webRequest = UnityWebRequest.Get(Url))
+        {
+            webRequest.SetRequestHeader("authorization", HttpTool.Instance.Token);
+
+            //??header
+            foreach (var v in HttpTool.Instance.RequestHeader)
+            {
+                webRequest.SetRequestHeader(v.Key, v.Value);
+            }
+            yield return webRequest.SendWebRequest();
+
+            if (webRequest.result== UnityWebRequest.Result.ProtocolError || webRequest.result == UnityWebRequest.Result.ConnectionError)
+                Debug.LogError("UnityWebRequest Error");
+            else
+            {
+                if (!string.IsNullOrWhiteSpace(webRequest.downloadHandler.text))
+                {
+                    string message = webRequest.downloadHandler.text;
+                    JObject jobject = JObject.Parse(message);
+                    if (jobject["code"].ToString() == "200")
+                    {
+                        message = jobject["data"].ToString();
+                        if (!string.IsNullOrWhiteSpace(message))
+                        {
+                            List<ScenePosRotInfo> ScenePosRotInfoList = JsonConvert.DeserializeObject<List<ScenePosRotInfo>>(message);
+                            PosRot = ScenePosRotInfoList;
+                            URL = Url;
+                            this.TriggerEvent(new GetScenePosRotEvent() { PosRot = PosRot });
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    public IEnumerator RequestUpload(string Url, string jsonString)
+    {
+        using (UnityWebRequest webRequest = new UnityWebRequest(Url, "POST"))
+        {
+            JsonData data = JsonMapper.ToObject(jsonString);
+            JsonData d2 = new JsonData();
+            d2["position"] = data;
+            byte[] bodyRaw = Encoding.UTF8.GetBytes(d2.ToJson());
+
+            webRequest.uploadHandler = (UploadHandler)new UploadHandlerRaw(bodyRaw);
+            webRequest.downloadHandler = new DownloadHandlerBuffer();
+
+            webRequest.SetRequestHeader("Content-Type", "application/json;charset=utf-8");
+            webRequest.SetRequestHeader("authorization", HttpTool.Instance.Token);
+            foreach (var v in HttpTool.Instance.RequestHeader)
+            {
+                webRequest.SetRequestHeader(v.Key, v.Value);
+            }
+
+            yield return webRequest.SendWebRequest();
+
+            if (webRequest.result == UnityWebRequest.Result.ProtocolError || webRequest.result == UnityWebRequest.Result.ConnectionError)
+            {
+                Debug.LogError(webRequest.downloadHandler.error);
+                InstantiateCommand Command = new InstantiateCommand(
+                    InstantiateSystem.Instance.BlueObject.WarningPopUp,
+                    InstantiateSystem.Instance.BlueObject.NetErrorText);
+                CommandExtensionSystem.Instance.Send(Command);
+            }
+            else
+            {
+                Debug.LogError(webRequest.downloadHandler.text);
+                if (!string.IsNullOrWhiteSpace(webRequest.downloadHandler.text))
+                {
+                    string message = webRequest.downloadHandler.text;
+                    JObject jobject = JObject.Parse(message);
+                    if (jobject["code"].ToString() == "200")
+                    {
+                        message = jobject["data"].ToString();
+                        if (!string.IsNullOrWhiteSpace(message))
+                        {
+                            List<ScenePosRotInfo> ScenePosRotInfoList = JsonConvert.DeserializeObject<List<ScenePosRotInfo>>(message);
+                            PosRot = ScenePosRotInfoList;
+                        }
+                    }
+                }
+                InstantiateCommand Command = new InstantiateCommand(
+                    InstantiateSystem.Instance.BlueObject.WarningPopUp,
+                    InstantiateSystem.Instance.BlueObject.SuccessText);
+                CommandExtensionSystem.Instance.Send(Command);
+            }
+        }
+    }
+}

+ 11 - 0
Assets/Scripts/Blue/Service/IUpOrDownloadService.cs.meta

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

+ 73 - 0
Assets/Scripts/Blue/Temp/MoveChange.cs

@@ -0,0 +1,73 @@
+using SC.XR.Unity.Module_InputSystem;
+using UnityEngine;
+
+public class MoveChange : MonoBehaviour
+{
+    [SerializeField] private GameObject moveGame;
+    [SerializeField] private Transform parent;
+
+    private bool isDown;
+    private float y;
+    void Start()
+    {
+        moveGame = GameObject.Find("ARSpaceForAll/mesh_test");
+        parent = GameObject.Find("ARSpaceForAll").transform;
+        y = moveGame.transform.position.y;
+
+        DispatcherBase.KeyDownDelegateRegister(keyDownEventDelegate);
+        DispatcherBase.KeyUpDelegateRegister(keyUpEventDelegate);
+    }
+    private void keyUpEventDelegate(InputKeyCode keyCode, InputDevicePartBase part)
+    {
+        if (keyCode != InputKeyCode.Enter)
+        {
+            return;
+        }
+        Debug.Log("keyDownEventDelegate===>" + keyCode);
+        moveGame.transform.parent = parent;
+        isDown = false;
+    }
+
+    private void keyDownEventDelegate(InputKeyCode keyCode, InputDevicePartBase part)
+    {
+        if(keyCode != InputKeyCode.Enter)
+        {
+            return;
+        }
+        if (!SetSceneActive.active)
+            return;
+        Debug.Log("keyUpEventDelegate===>" + keyCode);
+#if UNITY_EDITOR
+       moveGame.transform.parent = OpenXRCamera.Instance.head;
+#else
+        switch (DeviceType.type)
+        {
+            case "Nreal":
+        moveGame.transform.parent = API_GSXR_Module_InputSystem_KS.GSXR_KSRight.transform;// OpenXRCamera.Instance.head;
+                break;
+            case "A01":
+                moveGame.transform.parent = OpenXRCamera.Instance.head;
+                break;
+            case "Phone":
+                moveGame.transform.parent = OpenXRCamera.Instance.head;
+                break;
+            case "Rhinox":
+        moveGame.transform.parent = API_GSXR_Module_InputSystem_KS.GSXR_KSRight.inputDeviceKSPartUI.transform;
+                break;
+            default:
+        moveGame.transform.parent = API_GSXR_Module_InputSystem_KS.GSXR_KSRight.transform;// OpenXRCamera.Instance.head;
+                break;
+        }
+#endif
+        isDown = true;
+    }
+
+    void Update()
+    {
+        if (isDown && SetSceneActive.active)
+        {
+            moveGame.transform.eulerAngles = new Vector3(0, moveGame.transform.eulerAngles.y, 0);
+            moveGame.transform.position = new Vector3(moveGame.transform.position.x, y, moveGame.transform.position.z);
+        }
+    }
+}

+ 11 - 0
Assets/Scripts/Blue/Temp/MoveChange.cs.meta

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

+ 28 - 0
Assets/Scripts/Blue/Test/BlueTest.cs

@@ -0,0 +1,28 @@
+using System.Collections.Generic;
+using Blue;
+using Newtonsoft.Json;
+using UnityEngine;
+
+public class BlueTest : AbstractController
+{
+    void Update()
+    {
+        if(Input.GetKeyDown(KeyCode.L))
+        {
+            List<ScenePosRotInfo> list = new List<ScenePosRotInfo>();
+            ScenePosRotInfo pos = new ScenePosRotInfo();
+            ScenePosRotInfo rot = new ScenePosRotInfo();
+            pos.x = 1;pos.y = 1;pos.z = 1;
+            rot.x = 2;rot.y = 2;;rot.z = 2;
+            list.Add(pos);list.Add(rot);
+            string jsonString = JsonConvert.SerializeObject(list);
+            string url = "https://api-fat1.ghz-tech.com/mr-navigator/v1/project/position/396";
+            //HttpTool.Instance.UploadScenePosRot(url,jsonString,CallBack);
+            //this.SendCommand(new UploadCommand(url, HttpTool.Instance.RequestHeader, HttpTool.Instance.Token, jsonString));
+        }
+    }
+    private void CallBack(string e)
+    {
+        Debug.LogError(e);
+    }
+}

+ 11 - 0
Assets/Scripts/Blue/Test/BlueTest.cs.meta

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

+ 1 - 1
Assets/Scripts/CalMap.cs

@@ -25,7 +25,7 @@ public class CalMap : MonoBehaviour
 
     private void LateUpdate()
     {
-        if (API_GSXR_Slam.GSXR_Get_Head() != null)
+        if (OpenXRCamera.Instance.head != null)
         {
             if (player != null && GameManager.Instance.isStart)
             {

+ 33 - 0
Assets/Scripts/ChangeHeight.cs

@@ -0,0 +1,33 @@
+using SC.XR.Unity.Module_SDKSystem;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class ChangeHeight : MonoBehaviour
+{
+  //  public Transform MinMap;
+    public Transform ARSpaceforAll;
+    // Start is called before the first frame update
+    void Start()
+    {
+        switch(DeviceType.type)
+        {
+            case "Rhinox":
+                this.transform.localPosition = new Vector3(this.transform.localPosition.x, this.transform.localPosition.y + 1, this.transform.localPosition.z);
+              //  MinMap.transform.localPosition = new Vector3(MinMap.transform.localPosition.x, MinMap.transform.localPosition.y + 1, MinMap.transform.localPosition.z);
+                ARSpaceforAll.transform.localPosition = new Vector3(ARSpaceforAll.transform.localPosition.x, ARSpaceforAll.transform.localPosition.y + 1, ARSpaceforAll.transform.localPosition.z);
+#if UNITY_EDITOR
+                Module_SDKSystem.Instance.transform.position = new Vector3(0, 1, 0);
+#endif
+                break;
+            default:
+                break;
+        }
+    }
+
+    // Update is called once per frame
+    void Update()
+    {
+        
+    }
+}

+ 11 - 0
Assets/Scripts/ChangeHeight.cs.meta

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

+ 27 - 1
Assets/Scripts/PlayerTrigger.cs

@@ -30,7 +30,8 @@ public class PlayerTrigger : MonoBehaviour
 
 
     private void LateUpdate()
-    {
+    {
+        /*
         if (API_GSXR_Slam.GSXR_Get_Head() != null)
         {
             transform.position = new Vector3(API_GSXR_Slam.GSXR_Get_Head().position.x, transform.position.y, API_GSXR_Slam.GSXR_Get_Head().position.z);
@@ -49,6 +50,31 @@ public class PlayerTrigger : MonoBehaviour
                 float y = transform.localPosition.z / GameManager.Instance.MapSize.y * GameManager.Instance.WebMapSize.y;
                 var pos = new Vector3(x, -y, 0);
 
+                HttpSocket.Instance.SendIpToPointPos(pos, (message) =>
+                {
+                    //Debug.Log(message);
+                });
+            }
+        }
+        */
+        if (OpenXRCamera.Instance.head != null)
+        {
+            transform.position = new Vector3(OpenXRCamera.Instance.head.position.x, OpenXRCamera.Instance.head.position.y, OpenXRCamera.Instance.head.position.z);
+            transform.eulerAngles = new Vector3(0, OpenXRCamera.Instance.head.eulerAngles.y, 0);
+            if (GameManager.Instance.IsRuning)
+            {
+                //MovePanel.SetActive(true);
+                //MovePanel.transform.localEulerAngles = new Vector3(0, transform.localEulerAngles.y, 0);
+                //MovePanel.transform.localPosition = transform.localPosition + transform.forward * 0.8f + new Vector3(0, -1f, 0);
+                if (Vector3.Distance(m_LastPos, transform.position) < 0.1f)
+                {
+                    return;
+                }
+                m_LastPos = transform.position;
+                float x = transform.localPosition.x / GameManager.Instance.MapSize.x * GameManager.Instance.WebMapSize.x;
+                float y = transform.localPosition.z / GameManager.Instance.MapSize.y * GameManager.Instance.WebMapSize.y;
+                var pos = new Vector3(x, -y, 0);
+
                 HttpSocket.Instance.SendIpToPointPos(pos, (message) =>
                 {
                     //Debug.Log(message);

+ 15 - 21
Assets/Scripts/UI/GameManager.cs

@@ -250,13 +250,14 @@ public class GameManager : MonoSingleton<GameManager>
 
     private void LateUpdate()
     {
-        if (API_GSXR_Slam.GSXR_Get_Head() != null && m_IsRuning)
-        {
-            m_SetBtn.transform.localEulerAngles = new Vector3(0, API_GSXR_Slam.GSXR_Get_Head().localEulerAngles.y, 0);
+        // if (API_GSXR_Slam.GSXR_Get_Head() != null && m_IsRuning)
+        //  {
+        m_SetBtn.transform.LookAt(OpenXRCamera.Instance.head);
+        m_SetBtn.transform.localEulerAngles = new Vector3(0, m_SetBtn.transform.localEulerAngles.y+180, 0);
             //m_SetBtn.transform.position = API_GSXR_Slam.GSXR_Get_Head().localPosition + Player.transform.forward * 1.3f+ new Vector3(0, 1f, 0);
             //m_SetBtn.transform.localPosition = API_GSXR_Slam.GSXR_Get_Head().localPosition + Player.transform.forward * 1.3f + new Vector3(0, 1f, 0);
-            m_SetBtn.transform.position = API_GSXR_Slam.GSXR_Get_Head().position + Player.transform.forward * 1.3f + new Vector3(-0.2f, 1f, 0);
-        }
+            m_SetBtn.transform.position = OpenXRCamera.Instance.head.position + Player.transform.forward * 1.3f + new Vector3(-0.2f, 1f, 0);
+      //  }
     }
 
     public void Init()
@@ -422,14 +423,14 @@ public class GameManager : MonoSingleton<GameManager>
 
         if (ison)
         {
-            m_EditorCanvas.position = API_GSXR_Slam.GSXR_Get_Head().position + Player.transform.forward + new Vector3(0, 0.5f, 0);
-            m_EditorCanvas.eulerAngles = new Vector3(0, API_GSXR_Slam.GSXR_Get_Head().eulerAngles.y, 0);
+            m_EditorCanvas.position = OpenXRCamera.Instance.head.position + Player.transform.forward + new Vector3(0, 0.5f, 0);
+            m_EditorCanvas.eulerAngles = new Vector3(0, OpenXRCamera.Instance.head.eulerAngles.y, 0);
 
            
         }
         else
         {
-            m_EditorCanvas.position = API_GSXR_Slam.GSXR_Get_Head().position + new Vector3(0, 100, 0);
+            m_EditorCanvas.position = OpenXRCamera.Instance.head.position + new Vector3(0, 100, 0);
 
             if (SpoitIndex >= 0 && !IsTriggerExiting)
             {
@@ -449,9 +450,9 @@ public class GameManager : MonoSingleton<GameManager>
         m_SettingPanel.gameObject.SetActive(ison);
         if (ison)
         {
-            Debug.Log(API_GSXR_Slam.GSXR_Get_Head().forward);
-            m_SettingPanel.transform.position = API_GSXR_Slam.GSXR_Get_Head().position + Player.transform.forward;
-            m_SettingPanel.transform.eulerAngles = new Vector3(0, API_GSXR_Slam.GSXR_Get_Head().eulerAngles.y, 0);
+            Debug.Log(OpenXRCamera.Instance.head.forward);
+            m_SettingPanel.transform.position = OpenXRCamera.Instance.head.position + Player.transform.forward;
+            m_SettingPanel.transform.eulerAngles = new Vector3(0, OpenXRCamera.Instance.head.eulerAngles.y, 0);
         }
     }
 
@@ -469,12 +470,12 @@ public class GameManager : MonoSingleton<GameManager>
 
         if(ison)
         {
-            m_UIAnchorsPanel.transform.position = API_GSXR_Slam.GSXR_Get_Head().position + Player.transform.forward + new Vector3(0, 0.5f, 0);
-            m_UIAnchorsPanel.transform.eulerAngles = new Vector3(0, API_GSXR_Slam.GSXR_Get_Head().eulerAngles.y, 0);
+            m_UIAnchorsPanel.transform.position = OpenXRCamera.Instance.head.position + Player.transform.forward + new Vector3(0, 0.5f, 0);
+            m_UIAnchorsPanel.transform.eulerAngles = new Vector3(0, OpenXRCamera.Instance.head.eulerAngles.y, 0);
         }
         else
         {
-            m_UIAnchorsPanel.transform.position = API_GSXR_Slam.GSXR_Get_Head().position + new Vector3(0, 100, 0);
+            m_UIAnchorsPanel.transform.position = OpenXRCamera.Instance.head.position + new Vector3(0, 100, 0);
         }
 
     }
@@ -671,18 +672,11 @@ public class GameManager : MonoSingleton<GameManager>
         DataManager.Instance.Spoits = SpoitValues;
     }
 
-    private void SetPos(float x1,float y1, float x2, float y2)
-    {
-        Vector3 Pos1 = new Vector3(x1 / WebMapSize.x * MapSize.x, 0f, -y1 / WebMapSize.y * MapSize.y);
-        Vector3 Pos2 = new Vector3(x2 / WebMapSize.x * MapSize.x, 0f, -y2 / WebMapSize.y * MapSize.y);
-        point.SetPos(Pos1, Pos2);
-    }
     /// <summary>
     /// 创建水晶点和触发器
     /// </summary>
     private void CreateCrystalAndTrigger(SpoitValue spoit)
     {
-        SetPos(point.pos1.x, point.pos1.y, point.pos2.x, point.pos2.x);
         var spoitPos = Vector3.zero;
         if (spoit.SpoitTransform.Count > 0)
         {

+ 2 - 0
Assets/Scripts/UI/LoginPanel.cs

@@ -251,6 +251,8 @@ public class LoginPanel : BaseUI
     {
 
 #if UNITY_EDITOR
+       // m_AccountStr = "ghztest2@ghz-tech.com";
+       // m_PasswordStr = "123456Aa";
         m_AccountStr = "Blue@163.com";
         m_PasswordStr = "123456Aa";
 #endif

+ 10 - 1
Assets/Scripts/UI/SceneChoose.cs

@@ -1,4 +1,4 @@
-using LitJson;
+using LitJson;
 using Newtonsoft.Json.Linq;
 using SC.XR.Unity;
 using System;
@@ -100,6 +100,7 @@ public class SceneChoose : BaseUI
 
             DownLoadFile(detail.id,"json");
             DownLoadFile(detail.id,"bytes");
+            GetScenePosRot(detail.id,"bytes");
 
             HttpTool.Instance.PostTest("/project/detail", str, (mes) =>
             {
@@ -153,6 +154,14 @@ public class SceneChoose : BaseUI
                 }
         });
     }
+
+    private void GetScenePosRot(int projectId,string fileType)
+    {
+        string url = "https://api-fat1.ghz-tech.com/mr-navigator/v1/project/position/"+ projectId.ToString();
+
+        this.SendCommand(new DownloadCommand(url));
+    }
+
     private void GetSNInit()
     {
         // 选择场景

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