Browse Source

delete sample

“hujiajun” 1 year ago
parent
commit
5cbe6a1a53
100 changed files with 38 additions and 4097 deletions
  1. BIN
      Assets/NRSDK/Demos/Config/SessionConfig_Demo.asset
  2. BIN
      Assets/NRSDK/NRKernalSessionConfig.asset
  3. 1 1
      Runtime/SDK/Modules/Module_Authentication/Scripts/Manager/AuthenticationNetworkManager.cs
  4. 14 14
      Runtime/SDK/Modules/Module_Follower/Scripts/CameraFollower.cs
  5. 21 2
      Runtime/SDK/Modules/Module_Interaction/SCToggle3D/Resources/Prefabs/SCToggleCheckbox3D.prefab
  6. 1 1
      Runtime/SDK/Modules/Module_PlatformAccount/Scripts/Mgr/Manager/WebRequestManager.cs
  7. 1 1
      Runtime/SDK/Modules/Module_Slam/Scripts/GSXRManager.cs
  8. 0 8
      Samples~/SDK.meta
  9. 0 124
      Samples~/SDK/AllMoveEvent.cs
  10. 0 11
      Samples~/SDK/AllMoveEvent.cs.meta
  11. 0 8
      Samples~/SDK/Common.meta
  12. 0 8
      Samples~/SDK/Common/Base.meta
  13. 0 8
      Samples~/SDK/Common/Base/AndroidPlugin.meta
  14. 0 164
      Samples~/SDK/Common/Base/AndroidPlugin/AndroidPluginBase.cs
  15. 0 11
      Samples~/SDK/Common/Base/AndroidPlugin/AndroidPluginBase.cs.meta
  16. 0 8
      Samples~/SDK/Common/Base/Axis.meta
  17. 0 929
      Samples~/SDK/Common/Base/Axis/Axis.prefab
  18. 0 7
      Samples~/SDK/Common/Base/Axis/Axis.prefab.meta
  19. 0 8
      Samples~/SDK/Common/Base/Config.meta
  20. 0 8
      Samples~/SDK/Common/Base/Config/Base.meta
  21. 0 66
      Samples~/SDK/Common/Base/Config/Base/ConfigBase.cs
  22. 0 11
      Samples~/SDK/Common/Base/Config/Base/ConfigBase.cs.meta
  23. 0 8
      Samples~/SDK/Common/Base/Config/Implement.meta
  24. 0 12
      Samples~/SDK/Common/Base/Config/Implement/CommonConfig.cs
  25. 0 11
      Samples~/SDK/Common/Base/Config/Implement/CommonConfig.cs.meta
  26. 0 8
      Samples~/SDK/Common/Base/ConfigFile.meta
  27. 0 293
      Samples~/SDK/Common/Base/ConfigFile/ConfigFile.cs
  28. 0 11
      Samples~/SDK/Common/Base/ConfigFile/ConfigFile.cs.meta
  29. 0 8
      Samples~/SDK/Common/Base/DeviceInfo.meta
  30. 0 8
      Samples~/SDK/Common/Base/DeviceInfo/Scripts.meta
  31. 0 66
      Samples~/SDK/Common/Base/DeviceInfo/Scripts/DeviceInfo.cs
  32. 0 13
      Samples~/SDK/Common/Base/DeviceInfo/Scripts/DeviceInfo.cs.meta
  33. 0 8
      Samples~/SDK/Common/Base/Editor.meta
  34. 0 8
      Samples~/SDK/Common/Base/Editor/Base.meta
  35. 0 22
      Samples~/SDK/Common/Base/Editor/Base/MenuBase.cs
  36. 0 11
      Samples~/SDK/Common/Base/Editor/Base/MenuBase.cs.meta
  37. 0 8
      Samples~/SDK/Common/Base/Editor/BuildSettings.meta
  38. 0 7
      Samples~/SDK/Common/Base/Editor/BuildSettings/ParmScriptableObject.cs
  39. 0 11
      Samples~/SDK/Common/Base/Editor/BuildSettings/ParmScriptableObject.cs.meta
  40. 0 530
      Samples~/SDK/Common/Base/Editor/BuildSettings/SDKSettings.cs
  41. 0 11
      Samples~/SDK/Common/Base/Editor/BuildSettings/SDKSettings.cs.meta
  42. 0 8
      Samples~/SDK/Common/Base/Log.meta
  43. 0 69
      Samples~/SDK/Common/Base/Log/DebugMy.cs
  44. 0 11
      Samples~/SDK/Common/Base/Log/DebugMy.cs.meta
  45. 0 8
      Samples~/SDK/Common/Base/SCLifeCycle.meta
  46. 0 13
      Samples~/SDK/Common/Base/SCLifeCycle/ISCLifeCycle.cs
  47. 0 11
      Samples~/SDK/Common/Base/SCLifeCycle/ISCLifeCycle.cs.meta
  48. 0 46
      Samples~/SDK/Common/Base/SCLifeCycle/SCLifeCycle.cs
  49. 0 11
      Samples~/SDK/Common/Base/SCLifeCycle/SCLifeCycle.cs.meta
  50. 0 39
      Samples~/SDK/Common/Base/SCLifeCycle/SCLifeCycleMono.cs
  51. 0 11
      Samples~/SDK/Common/Base/SCLifeCycle/SCLifeCycleMono.cs.meta
  52. 0 8
      Samples~/SDK/Common/Base/SCModel.meta
  53. 0 52
      Samples~/SDK/Common/Base/SCModel/ISCModule.cs
  54. 0 11
      Samples~/SDK/Common/Base/SCModel/ISCModule.cs.meta
  55. 0 341
      Samples~/SDK/Common/Base/SCModel/SCModule.cs
  56. 0 11
      Samples~/SDK/Common/Base/SCModel/SCModule.cs.meta
  57. 0 354
      Samples~/SDK/Common/Base/SCModel/SCModuleMono.cs
  58. 0 11
      Samples~/SDK/Common/Base/SCModel/SCModuleMono.cs.meta
  59. 0 8
      Samples~/SDK/Common/Base/Singleton.meta
  60. 0 25
      Samples~/SDK/Common/Base/Singleton/Singleton.cs
  61. 0 11
      Samples~/SDK/Common/Base/Singleton/Singleton.cs.meta
  62. 0 42
      Samples~/SDK/Common/Base/Singleton/SingletonMono.cs
  63. 0 11
      Samples~/SDK/Common/Base/Singleton/SingletonMono.cs.meta
  64. 0 8
      Samples~/SDK/Common/Base/SpecificationType.meta
  65. 0 8
      Samples~/SDK/Common/Base/SpecificationType/SpecificationType.cs
  66. 0 11
      Samples~/SDK/Common/Base/SpecificationType/SpecificationType.cs.meta
  67. 0 8
      Samples~/SDK/Common/Base/TrackMode.meta
  68. 0 12
      Samples~/SDK/Common/Base/TrackMode/TrackMode.cs
  69. 0 11
      Samples~/SDK/Common/Base/TrackMode/TrackMode.cs.meta
  70. 0 8
      Samples~/SDK/Common/Base/WebRquest.meta
  71. 0 8
      Samples~/SDK/Common/Base/WebRquest/Base.meta
  72. 0 128
      Samples~/SDK/Common/Base/WebRquest/Base/WebRequestBase.cs
  73. 0 11
      Samples~/SDK/Common/Base/WebRquest/Base/WebRequestBase.cs.meta
  74. 0 40
      Samples~/SDK/Common/Base/WebRquest/Base/WebRequestServerBase.cs
  75. 0 11
      Samples~/SDK/Common/Base/WebRquest/Base/WebRequestServerBase.cs.meta
  76. 0 8
      Samples~/SDK/Common/Base/XRType.meta
  77. 0 14
      Samples~/SDK/Common/Base/XRType/XRType.cs
  78. 0 11
      Samples~/SDK/Common/Base/XRType/XRType.cs.meta
  79. 0 8
      Samples~/SDK/Common/StandardAssets.meta
  80. 0 8
      Samples~/SDK/Common/StandardAssets/Audio.meta
  81. BIN
      Samples~/SDK/Common/StandardAssets/Audio/ButtonPress.wav
  82. 0 22
      Samples~/SDK/Common/StandardAssets/Audio/ButtonPress.wav.meta
  83. BIN
      Samples~/SDK/Common/StandardAssets/Audio/ButtonUnpress.wav
  84. 0 22
      Samples~/SDK/Common/StandardAssets/Audio/ButtonUnpress.wav.meta
  85. BIN
      Samples~/SDK/Common/StandardAssets/Audio/Manipulation_End.wav
  86. 0 22
      Samples~/SDK/Common/StandardAssets/Audio/Manipulation_End.wav.meta
  87. BIN
      Samples~/SDK/Common/StandardAssets/Audio/Manipulation_Start.wav
  88. 0 22
      Samples~/SDK/Common/StandardAssets/Audio/Manipulation_Start.wav.meta
  89. BIN
      Samples~/SDK/Common/StandardAssets/Audio/Move_End.wav
  90. 0 22
      Samples~/SDK/Common/StandardAssets/Audio/Move_End.wav.meta
  91. BIN
      Samples~/SDK/Common/StandardAssets/Audio/Move_Start.wav
  92. 0 22
      Samples~/SDK/Common/StandardAssets/Audio/Move_Start.wav.meta
  93. BIN
      Samples~/SDK/Common/StandardAssets/Audio/Notification.wav
  94. 0 22
      Samples~/SDK/Common/StandardAssets/Audio/Notification.wav.meta
  95. BIN
      Samples~/SDK/Common/StandardAssets/Audio/Rotate_Start.wav
  96. 0 22
      Samples~/SDK/Common/StandardAssets/Audio/Rotate_Start.wav.meta
  97. BIN
      Samples~/SDK/Common/StandardAssets/Audio/Rotate_Stop.wav
  98. 0 22
      Samples~/SDK/Common/StandardAssets/Audio/Rotate_Stop.wav.meta
  99. BIN
      Samples~/SDK/Common/StandardAssets/Audio/Scale_Start.wav
  100. 0 22
      Samples~/SDK/Common/StandardAssets/Audio/Scale_Start.wav.meta

BIN
Assets/NRSDK/Demos/Config/SessionConfig_Demo.asset


BIN
Assets/NRSDK/NRKernalSessionConfig.asset


+ 1 - 1
Runtime/SDK/Modules/Module_Authentication/Scripts/Manager/AuthenticationNetworkManager.cs

@@ -111,7 +111,7 @@ public class AuthenticationNetworkManager : SingletonMono<AuthenticationNetworkM
 
     private IEnumerator PostCoroutine(string url, Dictionary<string, string> header, string encryptData, Action<string> successCallback = null, Action<string> failCallback = null)
     {
-        using (UnityWebRequest web = UnityWebRequest.PostWwwForm(url, ""))
+        using (UnityWebRequest web = UnityWebRequest.Post(url, ""))
         {
             foreach (var key in header.Keys)
             {

+ 14 - 14
Runtime/SDK/Modules/Module_Follower/Scripts/CameraFollower.cs

@@ -24,8 +24,8 @@ namespace SC.XR.Unity
         float journeyLength = 0f;
         void Start()
         {
-            _slamHead = Camera.main.transform;
-            initViewPoint = Camera.main.WorldToViewportPoint(_slamHead.position + (_slamHead.forward * WindowDistance));
+            _slamHead = OpenXRCamera.Instance.head.transform;
+            initViewPoint = OpenXRCamera.Instance.head.GetComponent<Camera>().WorldToViewportPoint(_slamHead.position + (_slamHead.forward * WindowDistance));
             InstantFollow();
         }
 
@@ -36,25 +36,25 @@ namespace SC.XR.Unity
             {
                 return;
             }
-            transform.position = Vector3.Lerp(transform.position, CalculateWindowPosition(Camera.main.transform), WindowFollowSpeed * Time.deltaTime);
-            transform.rotation = Quaternion.Slerp(transform.rotation, CalculateWindowRotation(Camera.main.transform), WindowFollowSpeed * Time.deltaTime);
+            transform.position = Vector3.Lerp(transform.position, CalculateWindowPosition(OpenXRCamera.Instance.head.transform), WindowFollowSpeed * Time.deltaTime);
+            transform.rotation = Quaternion.Slerp(transform.rotation, CalculateWindowRotation(OpenXRCamera.Instance.head.transform), WindowFollowSpeed * Time.deltaTime);
         }
 
         //Following camera without latency
         protected void InstantFollow()
         {
-            transform.position = CalculateWindowPosition(Camera.main.transform);
-            transform.rotation = CalculateWindowRotation(Camera.main.transform);
+            transform.position = CalculateWindowPosition(OpenXRCamera.Instance.head.transform);
+            transform.rotation = CalculateWindowRotation(OpenXRCamera.Instance.head.transform);
         }
 
         //For Linear Following, turn down the WindowFollowSpeed to around 0.5 at distance = 1 for best experience
         protected void LinearFollow()
         {
             originPos = transform.position;
-            desPos = CalculateWindowPosition(Camera.main.transform);
+            desPos = CalculateWindowPosition(OpenXRCamera.Instance.head.transform);
             journeyLength = Vector3.Distance(originPos, desPos);
             transform.position = Vector3.Lerp(originPos, desPos, (Time.fixedDeltaTime) / journeyLength * WindowFollowSpeed);
-            transform.rotation = Quaternion.Slerp(transform.rotation, CalculateWindowRotation(Camera.main.transform), (Time.fixedDeltaTime) / journeyLength * WindowFollowSpeed);
+            transform.rotation = Quaternion.Slerp(transform.rotation, CalculateWindowRotation(OpenXRCamera.Instance.head.transform), (Time.fixedDeltaTime) / journeyLength * WindowFollowSpeed);
         }
 
         protected override void LateUpdate()
@@ -78,16 +78,16 @@ namespace SC.XR.Unity
 
         protected bool IsFollower()
         {
-            if (Camera.main == null || Camera.main == null)
+            if (OpenXRCamera.Instance.head == null || OpenXRCamera.Instance.head == null)
             {
                 return false;
             }
 
-            viewPoint = Camera.main.WorldToViewportPoint(transform.position);// 面板在相机画面上的坐标
-            viewPoint_right = Camera.main.WorldToViewportPoint(transform.TransformPoint(new Vector3(menu_size.x/2, 0, 0)));// 面板边界在相机画面上的坐标
-            viewPoint_left = Camera.main.WorldToViewportPoint(transform.TransformPoint(new Vector3(-menu_size.x/2, 0, 0)));
-            viewPoint_top = Camera.main.WorldToViewportPoint(transform.TransformPoint(new Vector3(0, menu_size.y/2, 0)));
-            viewPoint_bot = Camera.main.WorldToViewportPoint(transform.TransformPoint(new Vector3(0, -menu_size.y/2, 0)));
+            viewPoint = OpenXRCamera.Instance.head.GetComponent<Camera>().WorldToViewportPoint(transform.position);// 面板在相机画面上的坐标
+            viewPoint_right = OpenXRCamera.Instance.head.GetComponent<Camera>().WorldToViewportPoint(transform.TransformPoint(new Vector3(menu_size.x/2, 0, 0)));// 面板边界在相机画面上的坐标
+            viewPoint_left = OpenXRCamera.Instance.head.GetComponent<Camera>().WorldToViewportPoint(transform.TransformPoint(new Vector3(-menu_size.x/2, 0, 0)));
+            viewPoint_top = OpenXRCamera.Instance.head.GetComponent<Camera>().WorldToViewportPoint(transform.TransformPoint(new Vector3(0, menu_size.y/2, 0)));
+            viewPoint_bot = OpenXRCamera.Instance.head.GetComponent<Camera>().WorldToViewportPoint(transform.TransformPoint(new Vector3(0, -menu_size.y/2, 0)));
 
             if (viewPoint_right.x > 1 || viewPoint_left.x < 0 || viewPoint_bot.y < 0 || viewPoint_top.y > 1)//边界判断
             {

+ 21 - 2
Runtime/SDK/Modules/Module_Interaction/SCToggle3D/Resources/Prefabs/SCToggleCheckbox3D.prefab

@@ -28,6 +28,7 @@ Transform:
   m_LocalRotation: {x: 0.27059805, y: -0.6532815, z: -0.6532815, w: 0.27059805}
   m_LocalPosition: {x: 0, y: 0, z: -0.0037831}
   m_LocalScale: {x: 0.2, y: 0.2, z: 0.2}
+  m_ConstrainProportionsScale: 0
   m_Children: []
   m_Father: {fileID: 559160509332700777}
   m_RootOrder: 3
@@ -51,9 +52,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: 4294967295
   m_RendererPriority: 0
   m_Materials:
@@ -78,6 +82,7 @@ MeshRenderer:
   m_SortingLayerID: 0
   m_SortingLayer: 0
   m_SortingOrder: 0
+  m_AdditionalVertexStreams: {fileID: 0}
 --- !u!1 &561553091066769041
 GameObject:
   m_ObjectHideFlags: 0
@@ -106,6 +111,7 @@ Transform:
   m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
   m_LocalPosition: {x: 0, y: 0, z: 0}
   m_LocalScale: {x: 0.5, y: 0.5, z: 0.5}
+  m_ConstrainProportionsScale: 0
   m_Children:
   - {fileID: 566708813334052309}
   - {fileID: 566845064244182193}
@@ -130,8 +136,6 @@ MonoBehaviour:
   onValueChanged:
     m_PersistentCalls:
       m_Calls: []
-    m_TypeName: SC.XR.Unity.SCToggleBase+ToggleEvent, Assembly-CSharp, Version=0.0.0.0,
-      Culture=neutral, PublicKeyToken=null
   m_IsOn: 1
   m_CheckObject: {fileID: 560965035099728173}
 --- !u!114 &5704729513381354558
@@ -175,6 +179,7 @@ Transform:
   m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
   m_LocalPosition: {x: 0.04, y: 0, z: 0}
   m_LocalScale: {x: 0.0040499996, y: 0.0040500048, z: 0.004050004}
+  m_ConstrainProportionsScale: 0
   m_Children: []
   m_Father: {fileID: 559160509332700777}
   m_RootOrder: 0
@@ -190,9 +195,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: 4294967295
   m_RendererPriority: 0
   m_Materials:
@@ -217,6 +225,7 @@ MeshRenderer:
   m_SortingLayerID: 0
   m_SortingLayer: 0
   m_SortingOrder: 0
+  m_AdditionalVertexStreams: {fileID: 0}
 --- !u!102 &477826978142083931
 TextMesh:
   serializedVersion: 3
@@ -268,6 +277,7 @@ Transform:
   m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
   m_LocalPosition: {x: 0, y: 0, z: 0.00021696}
   m_LocalScale: {x: 0.02734375, y: 0.02734375, z: 0.005859375}
+  m_ConstrainProportionsScale: 0
   m_Children: []
   m_Father: {fileID: 559160509332700777}
   m_RootOrder: 2
@@ -291,9 +301,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: 4294967295
   m_RendererPriority: 0
   m_Materials:
@@ -318,6 +331,7 @@ MeshRenderer:
   m_SortingLayerID: 0
   m_SortingLayer: 0
   m_SortingOrder: 0
+  m_AdditionalVertexStreams: {fileID: 0}
 --- !u!65 &515071968361385231
 BoxCollider:
   m_ObjectHideFlags: 0
@@ -360,6 +374,7 @@ Transform:
   m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
   m_LocalPosition: {x: 0, y: 0, z: 0.0042169}
   m_LocalScale: {x: 0.03515625, y: 0.03515625, z: 0.005859375}
+  m_ConstrainProportionsScale: 0
   m_Children: []
   m_Father: {fileID: 559160509332700777}
   m_RootOrder: 1
@@ -383,9 +398,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: 4294967295
   m_RendererPriority: 0
   m_Materials:
@@ -410,6 +428,7 @@ MeshRenderer:
   m_SortingLayerID: 0
   m_SortingLayer: 0
   m_SortingOrder: 0
+  m_AdditionalVertexStreams: {fileID: 0}
 --- !u!65 &516379266916847085
 BoxCollider:
   m_ObjectHideFlags: 0

+ 1 - 1
Runtime/SDK/Modules/Module_PlatformAccount/Scripts/Mgr/Manager/WebRequestManager.cs

@@ -103,7 +103,7 @@ namespace SC.XR.Unity.Module_PlatformAccount
 
         public override IEnumerator PostsDataQueue(string url, JsonData header, JsonData form, Action<string> callback = null,Action<string> error = null)
         {
-            using (UnityWebRequest web = UnityWebRequest.PostWwwForm(url, ""))
+            using (UnityWebRequest web = UnityWebRequest.Post(url, ""))
             {
                 foreach (var key in header.Keys)
                 {

+ 1 - 1
Runtime/SDK/Modules/Module_Slam/Scripts/GSXRManager.cs

@@ -1363,7 +1363,7 @@ public class GSXRManager : MonoBehaviour
 	
     void OnMasterTextureLimitChanged(GSXROverrideSettings.eMasterTextureLimit masterTextureLimit)
     {
-        QualitySettings.globalTextureMipmapLimit = masterTextureLimit == GSXROverrideSettings.eMasterTextureLimit.NoOverride ? 
+        QualitySettings.streamingMipmapsRenderersPerFrame = masterTextureLimit == GSXROverrideSettings.eMasterTextureLimit.NoOverride ? 
             (int)settings.masterTextureLimit : (int)masterTextureLimit;
     }
 	

+ 0 - 8
Samples~/SDK.meta

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

+ 0 - 124
Samples~/SDK/AllMoveEvent.cs

@@ -1,124 +0,0 @@
-using SC.XR.Unity.Module_InputSystem;
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using UnityEngine;
-
-public class AllMoveEvent : MonoBehaviour
-{
-    // Start is called before the first frame update
-    void Start()
-    {
-        DispatcherBase.KeyDownDelegateRegister(downEvent);
-        DispatcherBase.KeyUpDelegateRegister(upEvent);
-
-    }
-
-    InputDevicePartBase NowPart;
-    GameObject pz;
-
-    private void upEvent(InputKeyCode keyCode, InputDevicePartBase part)
-    {
-        if (part.inputDataBase.SCPointEventData.pointerCurrentRaycast.gameObject != null && (part.inputDataBase.SCPointEventData.pointerCurrentRaycast.gameObject.GetComponent<BoxCollider>() == null || part.inputDataBase.SCPointEventData.pointerCurrentRaycast.gameObject.GetComponent<ManipulationHandler>() == null))
-        {
-            checkMoveUp(pz, part);
-        }
-        pz = null;
-        NowPart = null;
-    }
-
-    public void checkMoveUp(GameObject obj, InputDevicePartBase part)
-    {
-        if (obj)
-        {
-            ManipulationHandler m = obj.GetComponent<ManipulationHandler>();
-            if (m != null)
-            {
-                if (!m.enabled)
-                {
-                    return;
-                }
-                if (!m.isParentDrag && !obj.name.Contains("Root") && !obj.name.Contains("BoundingBox"))
-                {
-                    m.OnPointerUp(part.inputDataBase.SCPointEventData);
-
-                }
-            }
-            else
-            {
-                if (obj.transform.parent != null && !obj.name.Contains("Root") && !obj.name.Contains("BoundingBox"))
-                    checkMoveUp(obj.transform.parent.gameObject, part);
-            }
-        }
-    }
-
-    private void downEvent(InputKeyCode keyCode, InputDevicePartBase part)
-    {
-        if (part.inputDataBase.SCPointEventData.pointerCurrentRaycast.gameObject != null && (part.inputDataBase.SCPointEventData.pointerCurrentRaycast.gameObject.GetComponent<BoxCollider>() == null || part.inputDataBase.SCPointEventData.pointerCurrentRaycast.gameObject.GetComponent<ManipulationHandler>() == null))
-        {
-            checkMoveDown(part.inputDataBase.SCPointEventData.pointerCurrentRaycast.gameObject, part);
-        }
-        NowPart = part;
-    }
-
-    public void checkMoveDown(GameObject obj, InputDevicePartBase part)
-    {
-        if (obj)
-        {
-            ManipulationHandler m = obj.GetComponent<ManipulationHandler>();
-                if (m != null)
-            {
-                if (!m.enabled)
-                {
-                    return;
-                }
-                    if (!m.isParentDrag && !obj.name.Contains("Root") && !obj.name.Contains("BoundingBox"))
-                {
-                    m.OnPointerDown(part.inputDataBase.SCPointEventData);
-                    pz = obj;
-                }
-            }
-            else
-            {
-                if (obj.transform.parent != null && !obj.name.Contains("Root") && !obj.name.Contains("BoundingBox"))
-                    checkMoveDown(obj.transform.parent.gameObject, part);
-            }
-        }
-    }
-
-
-    // Update is called once per frame
-    void Update()
-    {
-        if (NowPart != null && pz != null)
-        {
-
-            checkMoveDrag(pz, NowPart);
-        }
-
-    }
-    public void checkMoveDrag(GameObject obj, InputDevicePartBase part)
-    {
-        if (obj)
-        {
-            ManipulationHandler m = obj.GetComponent<ManipulationHandler>();
-            if (m != null && !obj.name.Contains("Root") && !obj.name.Contains("BoundingBox"))
-            {
-                if (!m.enabled)
-                {
-                    return;
-                }
-                if (!m.isParentDrag)
-                    m.OnDrag(part.inputDataBase.SCPointEventData);
-            }
-            else
-            {
-                if (obj.transform.parent != null && !obj.name.Contains("Root") && !obj.name.Contains("BoundingBox"))
-                {
-
-                    checkMoveDrag(obj.transform.parent.gameObject, part);
-                }
-            }
-        }
-    }
-}

+ 0 - 11
Samples~/SDK/AllMoveEvent.cs.meta

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

+ 0 - 8
Samples~/SDK/Common.meta

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

+ 0 - 8
Samples~/SDK/Common/Base.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/AndroidPlugin.meta

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

+ 0 - 164
Samples~/SDK/Common/Base/AndroidPlugin/AndroidPluginBase.cs

@@ -1,164 +0,0 @@
-using System;
-using System.Collections.Generic;
-using UnityEngine;
-
-namespace SC.XR.Unity {
-    public abstract class AndroidPluginBase:  SCModule {
-
-        private static AndroidJavaObject mCurrentActivity = null;
-        private static AndroidJavaClass mUnityPlayerClass = null;
-        private static AndroidJavaObject mContext = null;
-        public static AndroidJavaObject CurrentActivity {
-            get {
-                if(Application.platform == RuntimePlatform.Android) {
-                    if(mCurrentActivity == null && UnityPlayerClass != null) {
-                        mCurrentActivity = UnityPlayerClass.GetStatic<AndroidJavaObject>("currentActivity");
-                    }
-                }
-                return mCurrentActivity;
-            }
-        }
-        public static AndroidJavaClass UnityPlayerClass {
-            get {
-                if(Application.platform == RuntimePlatform.Android) {
-                    if(mUnityPlayerClass == null) {
-                        mUnityPlayerClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
-                    }
-                }
-                return mUnityPlayerClass;
-            }
-        }
-        public static AndroidJavaObject Context {
-            get {
-                if(Application.platform == RuntimePlatform.Android) {
-                    if(mContext == null) {
-                        mContext = CurrentActivityFunctionCall<AndroidJavaObject>("getApplicationContext");
-                    }
-                }
-                return mContext;
-            }
-        }
-
-        protected static List<AndroidJavaProxy> androidListernerList = new List<AndroidJavaProxy>();
-
-        public static void AddListener(string setCallBackFunctionName, AndroidJavaProxy callBack) {
-            if(Application.platform == RuntimePlatform.Android) {
-                CurrentActivity.Call(setCallBackFunctionName, callBack);
-                androidListernerList.Add(callBack);
-            }
-        }
-
-        public static void ObjectAddListener(AndroidJavaObject androidObject,string setCallBackFunctionName, AndroidJavaProxy callBack) {
-            if(Application.platform == RuntimePlatform.Android) {
-                if(androidObject != null) {
-                    androidObject.Call(setCallBackFunctionName, callBack);
-                    androidListernerList.Add(callBack);
-                }
-            }
-        }
-
-        public static AndroidJavaClass GetAndroidJavaClass(string classPatch) {
-            if(Application.platform == RuntimePlatform.Android) {
-                try {
-                    return new AndroidJavaClass(classPatch);
-                } catch(Exception e) {
-                    Debug.LogError(e);
-                }
-            }
-            return null;
-        }
-        /// <summary>
-        /// 实例方法
-        /// </summary>
-        /// <typeparam name="T"></typeparam>
-        /// <param name="androidJavaObject"></param>
-        /// <param name="callName"></param>
-        /// <param name="args"></param>
-        /// <returns></returns>
-        public static T ObjectFunctionCall<T>(AndroidJavaObject androidJavaObject, string callName, params object[] args) {
-            if(androidJavaObject != null) {
-                try {
-                    return androidJavaObject.Call<T>(callName, args);
-                } catch(Exception e) {
-                    Debug.LogError(e);
-                }
-            }
-            return default(T);
-        }
-        public static void ObjectFunctionCall(AndroidJavaObject androidJavaObject, string callName, params object[] args) {
-            if(androidJavaObject != null) {
-                try {
-                    androidJavaObject.Call(callName, args);
-                } catch(Exception e) {
-                    Debug.LogError(e);
-                }
-            }
-        }
-        public static T ObjectFunctionCall2<T>(AndroidJavaObject androidJavaObject, string callName, object args) {
-            if(androidJavaObject != null) {
-                try {
-                    return androidJavaObject.Call<T>(callName, args);
-                } catch(Exception e) {
-                    Debug.LogError(e);
-                }
-            }
-            return default(T);
-        }
-        public static void ObjectFunctionCall2(AndroidJavaObject androidJavaObject, string callName, object args) {
-            if(androidJavaObject != null) {
-                try {
-                    androidJavaObject.Call(callName, args);
-                } catch(Exception e) {
-                    Debug.LogError(e);
-                }
-            }
-        }
-
-        public static T CurrentActivityFunctionCall<T>(string callName, params object[] args) {
-            if(CurrentActivity != null) {
-                try {
-                    return CurrentActivity.Call<T>(callName, args);
-                } catch(Exception e) {
-                    Debug.LogError(e);
-                }
-            }
-            return default(T);
-        }
-        public static void CurrentActivityFunctionCall(string callName, params object[] args) {
-            if(CurrentActivity != null) {
-                try {
-                    CurrentActivity.Call(callName, args);
-                } catch(Exception e) {
-                    Debug.LogError(e);
-                }
-            }
-        }
-
-        /// <summary>
-        /// 类方法
-        /// </summary>
-        /// <param name="androidJavaClass"></param>
-        /// <param name="callName"></param>
-        /// <param name="args"></param>
-        public static void ClassFunctionCallStatic(AndroidJavaClass androidJavaClass, string callName, params object[] args) {
-            if(androidJavaClass != null) {
-                try {
-                    androidJavaClass.CallStatic(callName, args);
-                } catch(Exception e) {
-                    Debug.LogError(e);
-                }
-            }
-        }
-        public static T ClassFunctionCallStatic<T>(AndroidJavaClass androidJavaClass, string callName, params object[] args) {
-            if(androidJavaClass != null) {
-                try {
-                    return androidJavaClass.CallStatic<T>(callName, args);
-                } catch(Exception e) {
-                    Debug.LogError(e);
-                }
-            }
-            return default(T);
-        }
-
-    }
-}

+ 0 - 11
Samples~/SDK/Common/Base/AndroidPlugin/AndroidPluginBase.cs.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/Axis.meta

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

+ 0 - 929
Samples~/SDK/Common/Base/Axis/Axis.prefab

@@ -1,929 +0,0 @@
-%YAML 1.1
-%TAG !u! tag:unity3d.com,2011:
---- !u!1 &4398149315688698726
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 4398149315688698725}
-  - component: {fileID: 4398149315688698729}
-  - component: {fileID: 4398149315688698730}
-  - component: {fileID: 4398149315688698731}
-  - component: {fileID: 4398149315688698724}
-  m_Layer: 0
-  m_Name: Text (TMP) (1)
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!224 &4398149315688698725
-RectTransform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149315688698726}
-  m_LocalRotation: {x: -0, y: 0.7071068, z: -0, w: 0.7071068}
-  m_LocalPosition: {x: 0, y: 0, z: 0}
-  m_LocalScale: {x: 10, y: 0.099999994, z: 10}
-  m_Children: []
-  m_Father: {fileID: 4398149317126291122}
-  m_RootOrder: 0
-  m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0}
-  m_AnchorMin: {x: 0.5, y: 0.5}
-  m_AnchorMax: {x: 0.5, y: 0.5}
-  m_AnchoredPosition: {x: 0, y: 0.659}
-  m_SizeDelta: {x: 20, y: 5}
-  m_Pivot: {x: 0.5, y: 0.5}
---- !u!23 &4398149315688698729
-MeshRenderer:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149315688698726}
-  m_Enabled: 1
-  m_CastShadows: 0
-  m_ReceiveShadows: 0
-  m_DynamicOccludee: 1
-  m_MotionVectors: 1
-  m_LightProbeUsage: 1
-  m_ReflectionProbeUsage: 1
-  m_RenderingLayerMask: 1
-  m_RendererPriority: 0
-  m_Materials:
-  - {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
-  m_StaticBatchInfo:
-    firstSubMesh: 0
-    subMeshCount: 0
-  m_StaticBatchRoot: {fileID: 0}
-  m_ProbeAnchor: {fileID: 0}
-  m_LightProbeVolumeOverride: {fileID: 0}
-  m_ScaleInLightmap: 1
-  m_ReceiveGI: 1
-  m_PreserveUVs: 0
-  m_IgnoreNormalsForChartDetection: 0
-  m_ImportantGI: 0
-  m_StitchLightmapSeams: 1
-  m_SelectedEditorRenderState: 3
-  m_MinimumChartSize: 4
-  m_AutoUVMaxDistance: 0.5
-  m_AutoUVMaxAngle: 89
-  m_LightmapParameters: {fileID: 0}
-  m_SortingLayerID: 0
-  m_SortingLayer: 0
-  m_SortingOrder: 0
---- !u!33 &4398149315688698730
-MeshFilter:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149315688698726}
-  m_Mesh: {fileID: 0}
---- !u!222 &4398149315688698731
-CanvasRenderer:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149315688698726}
-  m_CullTransparentMesh: 0
---- !u!114 &4398149315688698724
-MonoBehaviour:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149315688698726}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: 9541d86e2fd84c1d9990edf0852d74ab, type: 3}
-  m_Name: 
-  m_EditorClassIdentifier: 
-  m_Material: {fileID: 0}
-  m_Color: {r: 1, g: 1, b: 1, a: 1}
-  m_RaycastTarget: 1
-  m_OnCullStateChanged:
-    m_PersistentCalls:
-      m_Calls: []
-    m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
-      Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
-  m_text: Y
-  m_isRightToLeft: 0
-  m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
-  m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
-  m_fontSharedMaterials: []
-  m_fontMaterial: {fileID: 0}
-  m_fontMaterials: []
-  m_fontColor32:
-    serializedVersion: 2
-    rgba: 4294967295
-  m_fontColor: {r: 1, g: 1, b: 1, a: 1}
-  m_enableVertexGradient: 0
-  m_colorMode: 3
-  m_fontColorGradient:
-    topLeft: {r: 1, g: 1, b: 1, a: 1}
-    topRight: {r: 1, g: 1, b: 1, a: 1}
-    bottomLeft: {r: 1, g: 1, b: 1, a: 1}
-    bottomRight: {r: 1, g: 1, b: 1, a: 1}
-  m_fontColorGradientPreset: {fileID: 0}
-  m_spriteAsset: {fileID: 0}
-  m_tintAllSprites: 0
-  m_overrideHtmlColors: 0
-  m_faceColor:
-    serializedVersion: 2
-    rgba: 4294967295
-  m_outlineColor:
-    serializedVersion: 2
-    rgba: 4278190080
-  m_fontSize: 36
-  m_fontSizeBase: 36
-  m_fontWeight: 400
-  m_enableAutoSizing: 0
-  m_fontSizeMin: 18
-  m_fontSizeMax: 72
-  m_fontStyle: 0
-  m_textAlignment: 514
-  m_characterSpacing: 0
-  m_wordSpacing: 0
-  m_lineSpacing: 0
-  m_lineSpacingMax: 0
-  m_paragraphSpacing: 0
-  m_charWidthMaxAdj: 0
-  m_enableWordWrapping: 1
-  m_wordWrappingRatios: 0.4
-  m_overflowMode: 0
-  m_firstOverflowCharacterIndex: -1
-  m_linkedTextComponent: {fileID: 0}
-  m_isLinkedTextComponent: 0
-  m_isTextTruncated: 0
-  m_enableKerning: 1
-  m_enableExtraPadding: 0
-  checkPaddingRequired: 0
-  m_isRichText: 1
-  m_parseCtrlCharacters: 1
-  m_isOrthographic: 0
-  m_isCullingEnabled: 0
-  m_ignoreRectMaskCulling: 0
-  m_ignoreCulling: 1
-  m_horizontalMapping: 0
-  m_verticalMapping: 0
-  m_uvLineOffset: 0
-  m_geometrySortingOrder: 0
-  m_VertexBufferAutoSizeReduction: 1
-  m_firstVisibleCharacter: 0
-  m_useMaxVisibleDescender: 1
-  m_pageToDisplay: 1
-  m_margin: {x: 6.0850434, y: 0, z: 5.834351, w: 0}
-  m_textInfo:
-    textComponent: {fileID: 4398149315688698724}
-    characterCount: 1
-    spriteCount: 0
-    spaceCount: 0
-    wordCount: 1
-    linkCount: 0
-    lineCount: 1
-    pageCount: 1
-    materialCount: 1
-  m_isUsingLegacyAnimationComponent: 0
-  m_isVolumetricText: 0
-  m_spriteAnimator: {fileID: 0}
-  m_hasFontAssetChanged: 0
-  m_renderer: {fileID: 4398149315688698729}
-  m_subTextObjects:
-  - {fileID: 0}
-  - {fileID: 0}
-  - {fileID: 0}
-  - {fileID: 0}
-  - {fileID: 0}
-  - {fileID: 0}
-  - {fileID: 0}
-  - {fileID: 0}
-  m_maskType: 0
---- !u!1 &4398149316041367016
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 4398149316041367023}
-  - component: {fileID: 4398149316041367027}
-  - component: {fileID: 4398149316041367020}
-  - component: {fileID: 4398149316041367021}
-  - component: {fileID: 4398149316041367022}
-  m_Layer: 0
-  m_Name: Text (TMP)
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!224 &4398149316041367023
-RectTransform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149316041367016}
-  m_LocalRotation: {x: -0, y: 0.7071068, z: -0, w: 0.7071068}
-  m_LocalPosition: {x: 0, y: 0, z: 0.32349998}
-  m_LocalScale: {x: 0.100000046, y: 10, z: 10}
-  m_Children: []
-  m_Father: {fileID: 4398149316856413770}
-  m_RootOrder: 0
-  m_LocalEulerAnglesHint: {x: 0, y: 90, 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: 20, y: 5}
-  m_Pivot: {x: 0.5, y: 0.5}
---- !u!23 &4398149316041367027
-MeshRenderer:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149316041367016}
-  m_Enabled: 1
-  m_CastShadows: 0
-  m_ReceiveShadows: 0
-  m_DynamicOccludee: 1
-  m_MotionVectors: 1
-  m_LightProbeUsage: 1
-  m_ReflectionProbeUsage: 1
-  m_RenderingLayerMask: 1
-  m_RendererPriority: 0
-  m_Materials:
-  - {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
-  m_StaticBatchInfo:
-    firstSubMesh: 0
-    subMeshCount: 0
-  m_StaticBatchRoot: {fileID: 0}
-  m_ProbeAnchor: {fileID: 0}
-  m_LightProbeVolumeOverride: {fileID: 0}
-  m_ScaleInLightmap: 1
-  m_ReceiveGI: 1
-  m_PreserveUVs: 0
-  m_IgnoreNormalsForChartDetection: 0
-  m_ImportantGI: 0
-  m_StitchLightmapSeams: 1
-  m_SelectedEditorRenderState: 3
-  m_MinimumChartSize: 4
-  m_AutoUVMaxDistance: 0.5
-  m_AutoUVMaxAngle: 89
-  m_LightmapParameters: {fileID: 0}
-  m_SortingLayerID: 0
-  m_SortingLayer: 0
-  m_SortingOrder: 0
---- !u!33 &4398149316041367020
-MeshFilter:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149316041367016}
-  m_Mesh: {fileID: 0}
---- !u!222 &4398149316041367021
-CanvasRenderer:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149316041367016}
-  m_CullTransparentMesh: 0
---- !u!114 &4398149316041367022
-MonoBehaviour:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149316041367016}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: 9541d86e2fd84c1d9990edf0852d74ab, type: 3}
-  m_Name: 
-  m_EditorClassIdentifier: 
-  m_Material: {fileID: 0}
-  m_Color: {r: 1, g: 1, b: 1, a: 1}
-  m_RaycastTarget: 1
-  m_OnCullStateChanged:
-    m_PersistentCalls:
-      m_Calls: []
-    m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
-      Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
-  m_text: Z
-  m_isRightToLeft: 0
-  m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
-  m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
-  m_fontSharedMaterials: []
-  m_fontMaterial: {fileID: 0}
-  m_fontMaterials: []
-  m_fontColor32:
-    serializedVersion: 2
-    rgba: 4294967295
-  m_fontColor: {r: 1, g: 1, b: 1, a: 1}
-  m_enableVertexGradient: 0
-  m_colorMode: 3
-  m_fontColorGradient:
-    topLeft: {r: 1, g: 1, b: 1, a: 1}
-    topRight: {r: 1, g: 1, b: 1, a: 1}
-    bottomLeft: {r: 1, g: 1, b: 1, a: 1}
-    bottomRight: {r: 1, g: 1, b: 1, a: 1}
-  m_fontColorGradientPreset: {fileID: 0}
-  m_spriteAsset: {fileID: 0}
-  m_tintAllSprites: 0
-  m_overrideHtmlColors: 0
-  m_faceColor:
-    serializedVersion: 2
-    rgba: 4294967295
-  m_outlineColor:
-    serializedVersion: 2
-    rgba: 4278190080
-  m_fontSize: 36
-  m_fontSizeBase: 36
-  m_fontWeight: 400
-  m_enableAutoSizing: 0
-  m_fontSizeMin: 18
-  m_fontSizeMax: 72
-  m_fontStyle: 0
-  m_textAlignment: 514
-  m_characterSpacing: 0
-  m_wordSpacing: 0
-  m_lineSpacing: 0
-  m_lineSpacingMax: 0
-  m_paragraphSpacing: 0
-  m_charWidthMaxAdj: 0
-  m_enableWordWrapping: 1
-  m_wordWrappingRatios: 0.4
-  m_overflowMode: 0
-  m_firstOverflowCharacterIndex: -1
-  m_linkedTextComponent: {fileID: 0}
-  m_isLinkedTextComponent: 0
-  m_isTextTruncated: 0
-  m_enableKerning: 1
-  m_enableExtraPadding: 0
-  checkPaddingRequired: 0
-  m_isRichText: 1
-  m_parseCtrlCharacters: 1
-  m_isOrthographic: 0
-  m_isCullingEnabled: 0
-  m_ignoreRectMaskCulling: 0
-  m_ignoreCulling: 1
-  m_horizontalMapping: 0
-  m_verticalMapping: 0
-  m_uvLineOffset: 0
-  m_geometrySortingOrder: 0
-  m_VertexBufferAutoSizeReduction: 1
-  m_firstVisibleCharacter: 0
-  m_useMaxVisibleDescender: 1
-  m_pageToDisplay: 1
-  m_margin: {x: 6.0850434, y: 0, z: 5.834351, w: 0}
-  m_textInfo:
-    textComponent: {fileID: 4398149316041367022}
-    characterCount: 1
-    spriteCount: 0
-    spaceCount: 0
-    wordCount: 1
-    linkCount: 0
-    lineCount: 1
-    pageCount: 1
-    materialCount: 1
-  m_isUsingLegacyAnimationComponent: 0
-  m_isVolumetricText: 0
-  m_spriteAnimator: {fileID: 0}
-  m_hasFontAssetChanged: 0
-  m_renderer: {fileID: 4398149316041367027}
-  m_subTextObjects:
-  - {fileID: 0}
-  - {fileID: 0}
-  - {fileID: 0}
-  - {fileID: 0}
-  - {fileID: 0}
-  - {fileID: 0}
-  - {fileID: 0}
-  - {fileID: 0}
-  m_maskType: 0
---- !u!1 &4398149316644824652
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 4398149316644824663}
-  - component: {fileID: 4398149316644824656}
-  - component: {fileID: 4398149316644824657}
-  - component: {fileID: 4398149316644824658}
-  - component: {fileID: 4398149316644824659}
-  m_Layer: 0
-  m_Name: Text (TMP) (2)
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!224 &4398149316644824663
-RectTransform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149316644824652}
-  m_LocalRotation: {x: -0, y: -0.7071068, z: -0, w: 0.7071068}
-  m_LocalPosition: {x: 0, y: 0, z: 0}
-  m_LocalScale: {x: 10, y: 10, z: 0.100000046}
-  m_Children: []
-  m_Father: {fileID: 4398149317342872899}
-  m_RootOrder: 0
-  m_LocalEulerAnglesHint: {x: 0, y: -90, z: 0}
-  m_AnchorMin: {x: 0.5, y: 0.5}
-  m_AnchorMax: {x: 0.5, y: 0.5}
-  m_AnchoredPosition: {x: 0.418, y: 0}
-  m_SizeDelta: {x: 20, y: 5}
-  m_Pivot: {x: 0.5, y: 0.5}
---- !u!23 &4398149316644824656
-MeshRenderer:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149316644824652}
-  m_Enabled: 1
-  m_CastShadows: 0
-  m_ReceiveShadows: 0
-  m_DynamicOccludee: 1
-  m_MotionVectors: 1
-  m_LightProbeUsage: 1
-  m_ReflectionProbeUsage: 1
-  m_RenderingLayerMask: 1
-  m_RendererPriority: 0
-  m_Materials:
-  - {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
-  m_StaticBatchInfo:
-    firstSubMesh: 0
-    subMeshCount: 0
-  m_StaticBatchRoot: {fileID: 0}
-  m_ProbeAnchor: {fileID: 0}
-  m_LightProbeVolumeOverride: {fileID: 0}
-  m_ScaleInLightmap: 1
-  m_ReceiveGI: 1
-  m_PreserveUVs: 0
-  m_IgnoreNormalsForChartDetection: 0
-  m_ImportantGI: 0
-  m_StitchLightmapSeams: 1
-  m_SelectedEditorRenderState: 3
-  m_MinimumChartSize: 4
-  m_AutoUVMaxDistance: 0.5
-  m_AutoUVMaxAngle: 89
-  m_LightmapParameters: {fileID: 0}
-  m_SortingLayerID: 0
-  m_SortingLayer: 0
-  m_SortingOrder: 0
---- !u!33 &4398149316644824657
-MeshFilter:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149316644824652}
-  m_Mesh: {fileID: 0}
---- !u!222 &4398149316644824658
-CanvasRenderer:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149316644824652}
-  m_CullTransparentMesh: 0
---- !u!114 &4398149316644824659
-MonoBehaviour:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149316644824652}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: 9541d86e2fd84c1d9990edf0852d74ab, type: 3}
-  m_Name: 
-  m_EditorClassIdentifier: 
-  m_Material: {fileID: 0}
-  m_Color: {r: 1, g: 1, b: 1, a: 1}
-  m_RaycastTarget: 1
-  m_OnCullStateChanged:
-    m_PersistentCalls:
-      m_Calls: []
-    m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
-      Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
-  m_text: X
-  m_isRightToLeft: 0
-  m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
-  m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
-  m_fontSharedMaterials: []
-  m_fontMaterial: {fileID: 0}
-  m_fontMaterials: []
-  m_fontColor32:
-    serializedVersion: 2
-    rgba: 4294967295
-  m_fontColor: {r: 1, g: 1, b: 1, a: 1}
-  m_enableVertexGradient: 0
-  m_colorMode: 3
-  m_fontColorGradient:
-    topLeft: {r: 1, g: 1, b: 1, a: 1}
-    topRight: {r: 1, g: 1, b: 1, a: 1}
-    bottomLeft: {r: 1, g: 1, b: 1, a: 1}
-    bottomRight: {r: 1, g: 1, b: 1, a: 1}
-  m_fontColorGradientPreset: {fileID: 0}
-  m_spriteAsset: {fileID: 0}
-  m_tintAllSprites: 0
-  m_overrideHtmlColors: 0
-  m_faceColor:
-    serializedVersion: 2
-    rgba: 4294967295
-  m_outlineColor:
-    serializedVersion: 2
-    rgba: 4278190080
-  m_fontSize: 36
-  m_fontSizeBase: 36
-  m_fontWeight: 400
-  m_enableAutoSizing: 0
-  m_fontSizeMin: 18
-  m_fontSizeMax: 72
-  m_fontStyle: 0
-  m_textAlignment: 514
-  m_characterSpacing: 0
-  m_wordSpacing: 0
-  m_lineSpacing: 0
-  m_lineSpacingMax: 0
-  m_paragraphSpacing: 0
-  m_charWidthMaxAdj: 0
-  m_enableWordWrapping: 1
-  m_wordWrappingRatios: 0.4
-  m_overflowMode: 0
-  m_firstOverflowCharacterIndex: -1
-  m_linkedTextComponent: {fileID: 0}
-  m_isLinkedTextComponent: 0
-  m_isTextTruncated: 0
-  m_enableKerning: 1
-  m_enableExtraPadding: 0
-  checkPaddingRequired: 0
-  m_isRichText: 1
-  m_parseCtrlCharacters: 1
-  m_isOrthographic: 0
-  m_isCullingEnabled: 0
-  m_ignoreRectMaskCulling: 0
-  m_ignoreCulling: 1
-  m_horizontalMapping: 0
-  m_verticalMapping: 0
-  m_uvLineOffset: 0
-  m_geometrySortingOrder: 0
-  m_VertexBufferAutoSizeReduction: 1
-  m_firstVisibleCharacter: 0
-  m_useMaxVisibleDescender: 1
-  m_pageToDisplay: 1
-  m_margin: {x: 6.0850434, y: 0, z: 5.834351, w: 0}
-  m_textInfo:
-    textComponent: {fileID: 4398149316644824659}
-    characterCount: 1
-    spriteCount: 0
-    spaceCount: 0
-    wordCount: 1
-    linkCount: 0
-    lineCount: 1
-    pageCount: 1
-    materialCount: 1
-  m_isUsingLegacyAnimationComponent: 0
-  m_isVolumetricText: 0
-  m_spriteAnimator: {fileID: 0}
-  m_hasFontAssetChanged: 0
-  m_renderer: {fileID: 4398149316644824656}
-  m_subTextObjects:
-  - {fileID: 0}
-  - {fileID: 0}
-  - {fileID: 0}
-  - {fileID: 0}
-  - {fileID: 0}
-  - {fileID: 0}
-  - {fileID: 0}
-  - {fileID: 0}
-  m_maskType: 0
---- !u!1 &4398149316856413771
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 4398149316856413770}
-  - component: {fileID: 4398149316856413775}
-  - component: {fileID: 4398149316856413768}
-  - component: {fileID: 4398149316856413769}
-  m_Layer: 0
-  m_Name: X
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!4 &4398149316856413770
-Transform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149316856413771}
-  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
-  m_LocalPosition: {x: 0, y: 0, z: 0.496}
-  m_LocalScale: {x: 0.01, y: 0.01, z: 1}
-  m_Children:
-  - {fileID: 4398149316041367023}
-  m_Father: {fileID: 4398149317534903895}
-  m_RootOrder: 1
-  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!33 &4398149316856413775
-MeshFilter:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149316856413771}
-  m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
---- !u!23 &4398149316856413768
-MeshRenderer:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149316856413771}
-  m_Enabled: 1
-  m_CastShadows: 1
-  m_ReceiveShadows: 1
-  m_DynamicOccludee: 1
-  m_MotionVectors: 1
-  m_LightProbeUsage: 1
-  m_ReflectionProbeUsage: 1
-  m_RenderingLayerMask: 1
-  m_RendererPriority: 0
-  m_Materials:
-  - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0}
-  m_StaticBatchInfo:
-    firstSubMesh: 0
-    subMeshCount: 0
-  m_StaticBatchRoot: {fileID: 0}
-  m_ProbeAnchor: {fileID: 0}
-  m_LightProbeVolumeOverride: {fileID: 0}
-  m_ScaleInLightmap: 1
-  m_ReceiveGI: 1
-  m_PreserveUVs: 0
-  m_IgnoreNormalsForChartDetection: 0
-  m_ImportantGI: 0
-  m_StitchLightmapSeams: 1
-  m_SelectedEditorRenderState: 3
-  m_MinimumChartSize: 4
-  m_AutoUVMaxDistance: 0.5
-  m_AutoUVMaxAngle: 89
-  m_LightmapParameters: {fileID: 0}
-  m_SortingLayerID: 0
-  m_SortingLayer: 0
-  m_SortingOrder: 0
---- !u!65 &4398149316856413769
-BoxCollider:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149316856413771}
-  m_Material: {fileID: 0}
-  m_IsTrigger: 0
-  m_Enabled: 1
-  serializedVersion: 2
-  m_Size: {x: 1, y: 1, z: 1}
-  m_Center: {x: 0, y: 0, z: 0}
---- !u!1 &4398149317126291123
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 4398149317126291122}
-  - component: {fileID: 4398149317126291127}
-  - component: {fileID: 4398149317126291120}
-  - component: {fileID: 4398149317126291121}
-  m_Layer: 0
-  m_Name: Y
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!4 &4398149317126291122
-Transform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149317126291123}
-  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
-  m_LocalPosition: {x: 0, y: 0.496, z: 0}
-  m_LocalScale: {x: 0.01, y: 1, z: 0.01}
-  m_Children:
-  - {fileID: 4398149315688698725}
-  m_Father: {fileID: 4398149317534903895}
-  m_RootOrder: 2
-  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!33 &4398149317126291127
-MeshFilter:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149317126291123}
-  m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
---- !u!23 &4398149317126291120
-MeshRenderer:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149317126291123}
-  m_Enabled: 1
-  m_CastShadows: 1
-  m_ReceiveShadows: 1
-  m_DynamicOccludee: 1
-  m_MotionVectors: 1
-  m_LightProbeUsage: 1
-  m_ReflectionProbeUsage: 1
-  m_RenderingLayerMask: 1
-  m_RendererPriority: 0
-  m_Materials:
-  - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0}
-  m_StaticBatchInfo:
-    firstSubMesh: 0
-    subMeshCount: 0
-  m_StaticBatchRoot: {fileID: 0}
-  m_ProbeAnchor: {fileID: 0}
-  m_LightProbeVolumeOverride: {fileID: 0}
-  m_ScaleInLightmap: 1
-  m_ReceiveGI: 1
-  m_PreserveUVs: 0
-  m_IgnoreNormalsForChartDetection: 0
-  m_ImportantGI: 0
-  m_StitchLightmapSeams: 1
-  m_SelectedEditorRenderState: 3
-  m_MinimumChartSize: 4
-  m_AutoUVMaxDistance: 0.5
-  m_AutoUVMaxAngle: 89
-  m_LightmapParameters: {fileID: 0}
-  m_SortingLayerID: 0
-  m_SortingLayer: 0
-  m_SortingOrder: 0
---- !u!65 &4398149317126291121
-BoxCollider:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149317126291123}
-  m_Material: {fileID: 0}
-  m_IsTrigger: 0
-  m_Enabled: 1
-  serializedVersion: 2
-  m_Size: {x: 1, y: 1, z: 1}
-  m_Center: {x: 0, y: 0, z: 0}
---- !u!1 &4398149317342873020
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 4398149317342872899}
-  - component: {fileID: 4398149317342872896}
-  - component: {fileID: 4398149317342872897}
-  - component: {fileID: 4398149317342872898}
-  m_Layer: 0
-  m_Name: Z
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!4 &4398149317342872899
-Transform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149317342873020}
-  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
-  m_LocalPosition: {x: 0.503, y: 0, z: 0}
-  m_LocalScale: {x: 1, y: 0.01, z: 0.01}
-  m_Children:
-  - {fileID: 4398149316644824663}
-  m_Father: {fileID: 4398149317534903895}
-  m_RootOrder: 0
-  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!33 &4398149317342872896
-MeshFilter:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149317342873020}
-  m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
---- !u!23 &4398149317342872897
-MeshRenderer:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149317342873020}
-  m_Enabled: 1
-  m_CastShadows: 1
-  m_ReceiveShadows: 1
-  m_DynamicOccludee: 1
-  m_MotionVectors: 1
-  m_LightProbeUsage: 1
-  m_ReflectionProbeUsage: 1
-  m_RenderingLayerMask: 1
-  m_RendererPriority: 0
-  m_Materials:
-  - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0}
-  m_StaticBatchInfo:
-    firstSubMesh: 0
-    subMeshCount: 0
-  m_StaticBatchRoot: {fileID: 0}
-  m_ProbeAnchor: {fileID: 0}
-  m_LightProbeVolumeOverride: {fileID: 0}
-  m_ScaleInLightmap: 1
-  m_ReceiveGI: 1
-  m_PreserveUVs: 0
-  m_IgnoreNormalsForChartDetection: 0
-  m_ImportantGI: 0
-  m_StitchLightmapSeams: 1
-  m_SelectedEditorRenderState: 3
-  m_MinimumChartSize: 4
-  m_AutoUVMaxDistance: 0.5
-  m_AutoUVMaxAngle: 89
-  m_LightmapParameters: {fileID: 0}
-  m_SortingLayerID: 0
-  m_SortingLayer: 0
-  m_SortingOrder: 0
---- !u!65 &4398149317342872898
-BoxCollider:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149317342873020}
-  m_Material: {fileID: 0}
-  m_IsTrigger: 0
-  m_Enabled: 1
-  serializedVersion: 2
-  m_Size: {x: 1, y: 1, z: 1}
-  m_Center: {x: 0, y: 0, z: 0}
---- !u!1 &4398149317534903888
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 4398149317534903895}
-  m_Layer: 0
-  m_Name: Axis
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!4 &4398149317534903895
-Transform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 4398149317534903888}
-  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_Children:
-  - {fileID: 4398149317342872899}
-  - {fileID: 4398149316856413770}
-  - {fileID: 4398149317126291122}
-  m_Father: {fileID: 0}
-  m_RootOrder: 0
-  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}

+ 0 - 7
Samples~/SDK/Common/Base/Axis/Axis.prefab.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/Config.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/Config/Base.meta

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

+ 0 - 66
Samples~/SDK/Common/Base/Config/Base/ConfigBase.cs

@@ -1,66 +0,0 @@
-
-using System.IO;
-
-namespace SC.XR.Unity {
-    
-    /// <summary>
-    /// 创建一个config文件,并提供操作API
-    /// </summary>
-    public abstract class ConfigBase : SCModule {
-
-        string patch;
-        public ConfigBase(string patch) {
-            this.patch = patch;
-
-            FileStream s2 = new FileStream(patch, FileMode.OpenOrCreate, FileAccess.ReadWrite);
-            s2.Close();
-
-        }
-
-        public virtual void SetLineValue(int line,string value) {
-            if(File.Exists(patch)) {
-
-                string[] lines = File.ReadAllLines(patch);
-                if(lines.Length < line) {
-                    string[] newLines = new string[line];
-                    lines.CopyTo(newLines, 0);
-                    newLines[line-1] = value;
-                    File.WriteAllLines(patch, newLines);
-                } else {
-                    lines[line-1] = value;
-                    File.WriteAllLines(patch, lines);
-                }
-            }
-            
-        }
-
-        /// <summary>
-        /// 读取某行内容
-        /// </summary>
-        /// <param name="line">起始1,1表示第一行</param>
-        /// <returns></returns>
-        public virtual string GetLineValue(int line) {
-            string value = "";
-
-            StreamReader fs = null;
-
-            if(File.Exists(patch)) {
-                fs = new StreamReader(patch);
-
-                for(int i = 1; i < line; i++) {
-                    fs.ReadLine();
-                }
-                value = fs.ReadLine();
-
-                DebugMy.Log("config:" + patch + "  line:"+line +" "+ value,this);
-                fs.Close();
-            }
-
-            return value;
-        }
-
-
-    }
-
-}
-

+ 0 - 11
Samples~/SDK/Common/Base/Config/Base/ConfigBase.cs.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/Config/Implement.meta

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

+ 0 - 12
Samples~/SDK/Common/Base/Config/Implement/CommonConfig.cs

@@ -1,12 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace SC.XR.Unity {
-    public class CommonConfig:ConfigBase {
-
-        public CommonConfig(string path):base(path) { }
-
-
-    }
-}

+ 0 - 11
Samples~/SDK/Common/Base/Config/Implement/CommonConfig.cs.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/ConfigFile.meta

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

+ 0 - 293
Samples~/SDK/Common/Base/ConfigFile/ConfigFile.cs

@@ -1,293 +0,0 @@
-
-using UnityEngine;
-using System.IO;
-using System.Collections.Generic;
-using System;
-
-namespace SC.XR.Unity {
-    public class ConfigFile {
-
-        private static readonly char[] TrimStart = new char[] { ' ', '\t' };
-        private static readonly char[] TrimEnd = new char[] { ' ', '\t', '\r', '\n' };
-
-        private const string DELEMITER = "=";
-
-        private string strFilePath = null;
-
-        private bool IsCaseSensitive = false;
-        public Dictionary<string, Dictionary<string, string>> Configs {
-            get {
-                return ConfigDic;
-            }
-        }
-        private Dictionary<string, Dictionary<string, string>> ConfigDic = new Dictionary<string, Dictionary<string, string>>();
-
-        public ConfigFile(string path, bool isCaseSensitive = false) {
-            strFilePath = path;
-            IsCaseSensitive = isCaseSensitive;
-            PermissionRequest.getInstance.GetPerssion(UnityEngine.Android.Permission.ExternalStorageRead);
-            PermissionRequest.getInstance.GetPerssion(UnityEngine.Android.Permission.ExternalStorageWrite);
-        }
-        public bool ParseConfig() {
-            if (!File.Exists(strFilePath)) {
-                Debug.LogWarning("the Config file's path is error:" + strFilePath);
-                return false;
-            }
-            using (StreamReader reader = new StreamReader(strFilePath)) {
-                string section = null;
-                string key = null;
-                string val = null;
-                Dictionary<string, string> config = null;
-
-                string strLine = null;
-                while ((strLine = reader.ReadLine()) != null) {
-                    strLine = strLine.TrimStart(TrimStart);
-                    strLine = strLine.TrimEnd(TrimEnd);
-
-                    if (strLine.StartsWith("#") || strLine.StartsWith("//")) {
-                        continue;
-                    }
-                    if (strLine.Length <= 2) {
-                        continue;
-                    }
-
-                    if (TryParseSection(strLine, out section)) {
-                        if (!ConfigDic.ContainsKey(section)) {
-                            ConfigDic.Add(section, new Dictionary<string, string>());
-                        }
-                        config = ConfigDic[section];
-                        //Debug.Log("[Section] : " + "[" + section + "]");
-                    } else {
-                        if (config != null) {
-                            if (TryParseConfig(strLine, out key, out val)) {
-                                if (config.ContainsKey(key)) {
-                                    config[key] = val;
-                                   // Debug.LogError("the Key[" + key + "] is appear repeat");
-                                } else {
-                                    config.Add(key, val);
-                                    //Debug.Log("     "+key + ":" + val);
-                                }
-                            }
-                        } else {
-                            Debug.LogWarning("the Config file's format is error,lost [Section]'s information");
-                        }
-                    }
-                }
-                return true;
-            }
-        }
-
-        public void SaveConfig() {
-            if (string.IsNullOrEmpty(strFilePath)) {
-                Debug.LogWarning("Empty file name for SaveConfig.");
-                return;
-            }
-
-            string dirName = Path.GetDirectoryName(strFilePath);
-            if (string.IsNullOrEmpty(dirName)) {
-                Debug.LogWarning(string.Format("Empty directory for SaveConfig:{0}.", strFilePath));
-                return;
-            }
-            if (!Directory.Exists(dirName)) {
-                Directory.CreateDirectory(dirName);
-            }
-
-            using (StreamWriter sw = new StreamWriter(strFilePath)) {
-                foreach (KeyValuePair<string, Dictionary<string, string>> pair in ConfigDic) {
-                    sw.WriteLine("[" + pair.Key + "]");
-                    foreach (KeyValuePair<string, string> cfg in pair.Value) {
-                        sw.WriteLine(cfg.Key + DELEMITER + cfg.Value);
-                    }
-                }
-            }
-        }
-
-        public bool HasKey(string section, string key) {
-            if (!IsCaseSensitive) {
-                section = section.ToUpper();
-                key = key.ToUpper();
-            }
-            Dictionary<string, string> config = null;
-            if (ConfigDic.TryGetValue(section, out config)) {
-                return config.ContainsKey(key);
-            }
-            return false;
-        }
-
-        public string GetString(string section, string key, string defaultVal) {
-            if (!IsCaseSensitive) {
-                section = section.ToUpper();
-                key = key.ToUpper();
-            }
-            Dictionary<string, string> config = null;
-            if (ConfigDic.TryGetValue(section, out config)) {
-                string ret = null;
-                if (config.TryGetValue(key, out ret)) {
-                    return ret;
-                }
-            }
-            return defaultVal;
-        }
-        public float GetFloat(string section, string key, float defaultVal) {
-
-            Dictionary<string, string> config = null;
-            if (ConfigDic.TryGetValue(section, out config)) {
-                string ret = null;
-                if (config.TryGetValue(key, out ret)) {
-                    try {
-                        return float.Parse(ret);
-                    } catch (Exception e) {
-                        Debug.Log(e);
-                    }
-                }
-            }
-            return defaultVal;
-        }
-
-        public int GetInt(string section, string key, int defaultVal) {
-            string val = GetString(section, key, null);
-            if (val != null) {
-                try {
-                    return int.Parse(val);
-                } catch (Exception e) {
-                    Debug.Log(e);
-                }
-            }
-            return defaultVal;
-        }
-
-
-        public void SetString(string section, string key, string val) {
-            if (!string.IsNullOrEmpty(section) && !string.IsNullOrEmpty(key) && !string.IsNullOrEmpty(val)) {
-                if (!IsCaseSensitive) {
-                    section = section.ToUpper();
-                    key = key.ToUpper();
-                }
-                Dictionary<string, string> config = null;
-                if (!ConfigDic.TryGetValue(section, out config)) {
-                    config = new Dictionary<string, string>();
-                    ConfigDic[section] = config;
-                }
-                config[key] = val;
-            }
-        }
-
-        //public void SetInt(string section, string key, int val) {
-        //    SetString(section, key, val.ToString());
-        //}
-
-
-        /// <summary>
-        /// Add String if no have,if have do nothing
-        /// </summary>
-        /// <param name="section"></param>
-        /// <param name="key"></param>
-        /// <param name="val"></param>
-        /// <returns> true : Add success</returns>
-        public bool AddString(string section, string key, string val) {
-            if (!string.IsNullOrEmpty(section) && !string.IsNullOrEmpty(key) && !string.IsNullOrEmpty(val)) {
-                if (!IsCaseSensitive) {
-                    section = section.ToUpper();
-                    key = key.ToUpper();
-                }
-                Dictionary<string, string> config = null;
-                if (!ConfigDic.TryGetValue(section, out config)) {
-                    config = new Dictionary<string, string>();
-                    ConfigDic[section] = config;
-                }
-                if (!config.ContainsKey(key)) {
-                    config.Add(key, val);
-                    return true;
-                }
-                return false;
-            }
-            return false;
-        }
-
-        //public void AddInt(string section, string key, int val) {
-        //    AddString(section, key, val.ToString());
-        //}
-
-        public bool RemoveSection(string section) {
-            if (ConfigDic.ContainsKey(section)) {
-                ConfigDic.Remove(section);
-                return true;
-            }
-            return false;
-        }
-
-        public bool RemoveConfig(string section, string key) {
-            if (!IsCaseSensitive) {
-                section = section.ToUpper();
-                key = key.ToUpper();
-            }
-            Dictionary<string, string> config = null;
-            if (ConfigDic.TryGetValue(section, out config)) {
-                if (config.ContainsKey(key)) {
-                    config.Remove(key);
-                    return true;
-                }
-            }
-            return false;
-        }
-
-        public void RemoveALLConfig() {
-            ConfigDic.Clear();
-        }
-
-        public void RemoveConfigFile() {
-            if (File.Exists(strFilePath)) {
-                File.Delete(strFilePath);
-            }
-        }
-
-        public Dictionary<string, string> GetSectionInfo(string section) {
-            Dictionary<string, string> res = null;
-            if (!IsCaseSensitive) {
-                section = section.ToUpper();
-            }
-            ConfigDic.TryGetValue(section, out res);
-            return res;
-        }
-
-        private bool TryParseSection(string strLine, out string section) {
-            section = null;
-            if (!string.IsNullOrEmpty(strLine)) {
-                int len = strLine.Length;
-                if (strLine[0] == '[' && strLine[len - 1] == ']') {
-                    section = strLine.Substring(1, len - 2);
-                    if (!IsCaseSensitive) {
-                        section = section.ToUpper();
-                    }
-                    return true;
-                }
-            }
-            return false;
-        }
-
-        private bool TryParseConfig(string strLine, out string key, out string val) {
-            if (strLine != null && strLine.Length >= 3) {
-                string[] contents = strLine.Split(DELEMITER.ToCharArray());
-                if (contents.Length == 2) {
-                    key = contents[0].TrimStart(TrimStart);
-                    key = key.TrimEnd(TrimEnd);
-                    val = contents[1].TrimStart(TrimStart);
-                    val = val.TrimEnd(TrimEnd);
-                    if (key.Length > 0 && val.Length > 0) {
-                        if (!IsCaseSensitive) {
-                            key = key.ToUpper();
-                        }
-
-                        return true;
-                    }
-                }
-            }
-
-            key = null;
-            val = null;
-            return false;
-        }
-
-
-    }
-}

+ 0 - 11
Samples~/SDK/Common/Base/ConfigFile/ConfigFile.cs.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/DeviceInfo.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/DeviceInfo/Scripts.meta

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

+ 0 - 66
Samples~/SDK/Common/Base/DeviceInfo/Scripts/DeviceInfo.cs

@@ -1,66 +0,0 @@
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using UnityEngine;
-using UnityEngine.UI;
-
-[Obsolete("Please Use Module_Device")]
-public class DeviceInfo {
-
-    /// <summary>
-    /// 设备型号
-    /// </summary>
-    /// <returns></returns>
-    public static string MODEL {
-        get{
-            if(Application.platform == RuntimePlatform.Android) {
-                AndroidJavaClass os = new AndroidJavaClass("android.os.Build");
-                return os.GetStatic<string>("MODEL");
-            }
-            return "Standalone";
-        }
-    }
-
-    /// <summary>
-    /// SN号
-    /// </summary>
-    public static string SN {
-        get {
-            if(Application.platform == RuntimePlatform.Android) {
-                AndroidJavaClass os = new AndroidJavaClass("android.os.Build");
-                return os.GetStatic<string>("SERIAL");
-            }
-            return "Null";
-        }
-    }
-
-    /// <summary>
-    /// Release_Vesion
-    /// </summary>
-    public static string RELEASE_VERSION {
-        get {
-            if(Application.platform == RuntimePlatform.Android) {
-                AndroidJavaClass os = new AndroidJavaClass("android.os.Build$VERSION");
-                return os.GetStatic<string>("RELEASE");
-            }
-            return "Null";
-        }
-    }
-
-    /// <summary>
-    /// BatteryLevel
-    /// </summary>
-    public static int BatteryLevel {
-        get {
-            if (Application.platform == RuntimePlatform.Android) {
-                try {
-                    string CapacityString = System.IO.File.ReadAllText("/sys/class/power_supply/battery/capacity");
-                    return int.Parse(CapacityString);
-                } catch (Exception e) {
-                    Debug.Log("Failed to read battery power; " + e.Message);
-                }
-            }
-            return 60;
-        }
-    }
-}

+ 0 - 13
Samples~/SDK/Common/Base/DeviceInfo/Scripts/DeviceInfo.cs.meta

@@ -1,13 +0,0 @@
-fileFormatVersion: 2
-guid: 368eb122194ea5a4e8c8bee87aa5a65d
-timeCreated: 1562231822
-licenseType: Free
-MonoImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  defaultReferences: []
-  executionOrder: 0
-  icon: {instanceID: 0}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 8
Samples~/SDK/Common/Base/Editor.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/Editor/Base.meta

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

+ 0 - 22
Samples~/SDK/Common/Base/Editor/Base/MenuBase.cs

@@ -1,22 +0,0 @@
-using UnityEngine;
-using UnityEditor;
-
-namespace SC.Menu {
-    public abstract class MenuBase : MonoBehaviour {
-        protected static void CreatePrefab(string ResourcesPath) {
-            GameObject go = (GameObject)PrefabUtility.InstantiatePrefab(Resources.Load(ResourcesPath));
-
-            if(go) {
-                GameObjectUtility.SetParentAndAlign(go, Selection.activeTransform == null ? null : Selection.activeTransform.gameObject);
-                go.transform.SetParent(Selection.activeTransform);
-                Undo.RegisterCreatedObjectUndo(go, go.name);
-                Selection.activeTransform = go.transform;
-                //Debug.Log("Create Sucess ! Prefab:" + ResourcesPath);
-            } else {
-                //Debug.LogError("Create Failed ! Prefab:" + ResourcesPath);
-            }
-
-        }
-    }
-}
-

+ 0 - 11
Samples~/SDK/Common/Base/Editor/Base/MenuBase.cs.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/Editor/BuildSettings.meta

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

+ 0 - 7
Samples~/SDK/Common/Base/Editor/BuildSettings/ParmScriptableObject.cs

@@ -1,7 +0,0 @@
-using System.Collections;
-using System.Collections.Generic;
-using UnityEngine;
-
-public class ParmScriptableObject : ScriptableObject {
-    public bool IsIgnor;
-}

+ 0 - 11
Samples~/SDK/Common/Base/Editor/BuildSettings/ParmScriptableObject.cs.meta

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

+ 0 - 530
Samples~/SDK/Common/Base/Editor/BuildSettings/SDKSettings.cs

@@ -1,530 +0,0 @@
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.IO;
-using System.Reflection;
-using UnityEditor;
-using UnityEditor.Build;
-using UnityEditor.Build.Reporting;
-using UnityEngine;
-
-public class SDKSettings : EditorWindow {
-
-
-    [InitializeOnLoadMethod]
-    static void CheckSettings() {
-        if(EditorUserBuildSettings.activeBuildTarget == BuildTarget.Android) {
-
-            if(!IsIgnor && IsApply() == false) {
-                Init();  
-            } 
-        } 
-    }
-
-    static EditorWindow window;
-
-   [MenuItem("SDK/ProjectSettings")]
-    static void Init() {
-        if(window == null) {
-          //  window = EditorWindow.GetWindow(typeof(SDKSettings));
-         //   window.autoRepaintOnSceneChange = true;
-          //  window.minSize = new Vector2(720, 420);
-        //    window.maxSize = new Vector2(720, 420);
-        }
-    }
-    static bool isQualityApply = true;
-    static bool isPlayerApply = true; 
-    void OnGUI() {
-        GUILayout.Space(10);
-        NoticWindow();
-        
-        if(EditorUserBuildSettings.activeBuildTarget != BuildTarget.Android) {
-            return;
-        }
-
-        GUILayout.Space(10);
-        isQualityApply = QualityWindow();
-        GUILayout.Space(10);
-        isPlayerApply = PlayerWindow();
-
-
-        if(IsApply() == false) {
-
-            GUILayout.Space(60);
-            ApplyWindow();
-        }
-
-    }
-
-    static bool IsApply() {
-        if(EditorUserBuildSettings.activeBuildTarget != BuildTarget.Android) {
-            return true;
-        }
-
-        if(PlayerCheck() && QualityCheck())
-            return true;
-
-        return false;
-    }
-
-    static bool IsIgnor { get { return GetAssetDataBase(); } }
-    static void Ignor() {
-        SaveAssetDataBase(true);
-    }
-    static string assetPath = "Assets/SDK/Common/Base/Editor/BuildSettings/Parm.asset";
-    static void SaveAssetDataBase(bool isIgnor) {
-        ParmScriptableObject asset;
-        if(File.Exists(assetPath)) {
-            asset = AssetDatabase.LoadAssetAtPath<ParmScriptableObject>(assetPath);
-        } else {
-            asset =(ParmScriptableObject) CreateInstance("ParmScriptableObject"); 
-            AssetDatabase.CreateAsset(asset, assetPath);
-        }
-        asset.IsIgnor = isIgnor;
-        AssetDatabase.SaveAssets();
-        AssetDatabase.Refresh();//must Refresh
-    }
-
-    static bool GetAssetDataBase() {
-        ParmScriptableObject asset;
-        if(File.Exists(assetPath)) {
-            asset = AssetDatabase.LoadAssetAtPath<ParmScriptableObject>(assetPath);
-            return asset.IsIgnor;
-        } 
-        return false;  
-    }
-     
-    static void NoticWindow() {
-        GUILayout.Space(20);
-        EditorGUILayout.BeginHorizontal();
-
-        GUIStyle styleNoticeText = new GUIStyle();
-        styleNoticeText.alignment = TextAnchor.MiddleCenter;
-        styleNoticeText.fontSize = 14;
-        styleNoticeText.fontStyle = FontStyle.Bold;
-
-        if(EditorUserBuildSettings.activeBuildTarget == BuildTarget.Android) {
-            GUILayout.Label("Notice: Recommended Project settings for SDK", styleNoticeText);
-        } else {
-            GUILayout.Label("This Only Effect When Platform Select Android", styleNoticeText);
-        }
-
-        EditorGUILayout.EndHorizontal();
-        GUILayout.Space(20);
-    }
-
-    void ApplyWindow() { 
-        EditorGUILayout.BeginHorizontal();
-        EditorGUILayout.LabelField("", GUILayout.Width(100));
-
-        GUIStyle styleApply = new GUIStyle("LargeButton");
-        styleApply.alignment = TextAnchor.MiddleCenter; 
-        if(GUILayout.Button("Apply", styleApply)) {
-            QualitySet(); 
-            PlayerSet();
-        }
-        
-        EditorGUILayout.LabelField("", GUILayout.Width(100));
-
-        GUIStyle style1Apply = new GUIStyle("LargeButton");
-        styleApply.alignment = TextAnchor.MiddleCenter;
-        if(GUILayout.Button("Ignor", style1Apply)) {
-            Ignor();
-            window.Close();
-            Close();
-        }
-
-        EditorGUILayout.LabelField("", GUILayout.Width(100));
-        //if(GUILayout.Button(strBtnApply[(int)elanguage], styleApply, GUILayout.Width(100), GUILayout.Height(30))) {
-        //    EditorApplication.delayCall += OnClickApply;
-        //}
-        //styleApply = null;
-
-        //EditorGUILayout.LabelField("", GUILayout.Width(200));
-        //if(GUILayout.Button("xxx", GUILayout.Width(100), GUILayout.Height(30))) {
-
-        //}
-        EditorGUILayout.EndHorizontal();
-    }
-
-    #region ProjectSettings->Player
-
-    static bool PlayerWindow() {
-        bool isApply = true;
-
-        GUILayout.Label("PlayerSettings", EditorStyles.boldLabel);
-
-        EditorGUILayout.BeginHorizontal();
-
-        GUILayout.Label("Minimum API Level:API26(or higher)");
-
-        if(PlayerSettings.Android.minSdkVersion < AndroidSdkVersions.AndroidApiLevel26) {
-
-            GUIStyle styleSlide = new GUIStyle();
-            styleSlide.normal.textColor = Color.red;
-            GUILayout.Label("Failed", styleSlide);
-            isApply = false;
-        } else {
-
-            GUIStyle styleApplied = new GUIStyle();
-            styleApplied.normal.textColor = Color.green;
-            GUILayout.Label("Applied", styleApplied);
-        }
-
-        EditorGUILayout.EndHorizontal();
-
-        EditorGUILayout.BeginHorizontal();
-
-        GUILayout.Label("APICompatibilityLevel:.NET4.x");
-
-        if(PlayerSettings.GetApiCompatibilityLevel(BuildTargetGroup.Android) != ApiCompatibilityLevel.NET_4_6) {
-
-            GUIStyle styleSlide = new GUIStyle();
-            styleSlide.normal.textColor = Color.red;
-            GUILayout.Label("Failed", styleSlide);
-            isApply = false;
-        } else {
-
-            GUIStyle styleApplied = new GUIStyle();
-            styleApplied.normal.textColor = Color.green;
-            GUILayout.Label("Applied", styleApplied);
-        }
-
-        EditorGUILayout.EndHorizontal();
-
-
-        EditorGUILayout.BeginHorizontal();
-
-        GUILayout.Label("Multithreaded Rendering:True"); 
-
-        if(PlayerSettings.GetMobileMTRendering(BuildTargetGroup.Android)==false) {
-
-            GUIStyle styleSlide = new GUIStyle();
-            styleSlide.normal.textColor = Color.red;
-            GUILayout.Label("Failed", styleSlide);
-            isApply = false;
-
-        } else {
-
-            GUIStyle styleApplied = new GUIStyle();
-            styleApplied.normal.textColor = Color.green;
-            GUILayout.Label("Applied", styleApplied);
-
-        }
-
-        EditorGUILayout.EndHorizontal();
-
-
-        EditorGUILayout.BeginHorizontal();
-
-        GUILayout.Label("Graphics APIs:Only OpenGLES3");
-        
-        UnityEngine.Rendering.GraphicsDeviceType[] gapi = PlayerSettings.GetGraphicsAPIs(BuildTarget.Android);
-
-        if(gapi.Length != 1 || gapi[0] != UnityEngine.Rendering.GraphicsDeviceType.OpenGLES3) {
-
-            GUIStyle styleSlide = new GUIStyle();
-            styleSlide.normal.textColor = Color.red;
-            GUILayout.Label("Failed", styleSlide);
-            isApply = false;
-        } else {
-
-            GUIStyle styleApplied = new GUIStyle();
-            styleApplied.normal.textColor = Color.green;
-            GUILayout.Label("Applied", styleApplied);
-        }
-
-        EditorGUILayout.EndHorizontal();
-
-
-        EditorGUILayout.BeginHorizontal();
-
-        int staticBatchingValue = 0;
-        int dynamicBatchingValue = 0;
-        Type playerSettingsType = typeof(PlayerSettings);
-        MethodInfo method = playerSettingsType.GetMethod("GetBatchingForPlatform",BindingFlags.NonPublic | BindingFlags.Static);
-        object[] param = new object[] { BuildTarget.Android, staticBatchingValue, dynamicBatchingValue };
-        method.Invoke(null, param);
-
-        GUILayout.Label("Dynamic Batching:Enable");
-        if ((int)param[2] != 1)
-        {
-            GUIStyle styleSlide = new GUIStyle();
-            styleSlide.normal.textColor = Color.red;
-            GUILayout.Label("Failed", styleSlide);
-            isApply = false;
-        }
-        else
-        {
-            GUIStyle styleApplied = new GUIStyle();
-            styleApplied.normal.textColor = Color.green;
-            GUILayout.Label("Applied", styleApplied);
-        }
-
-        EditorGUILayout.EndHorizontal();
-
-
-        EditorGUILayout.BeginHorizontal();
-
-        GUILayout.Label("Asset Serialization:ForceText");
-        if (EditorSettings.serializationMode != SerializationMode.ForceText)
-        {
-            GUIStyle styleSlide = new GUIStyle();
-            styleSlide.normal.textColor = Color.red;
-            GUILayout.Label("Failed", styleSlide);
-            isApply = false;
-        }
-        else
-        {
-
-            GUIStyle styleApplied = new GUIStyle();
-            styleApplied.normal.textColor = Color.green;
-            GUILayout.Label("Applied", styleApplied);
-        }
-        EditorGUILayout.EndHorizontal();
-
-
-        EditorGUILayout.BeginHorizontal();
-
-        GUILayout.Label("Orientation:Landscape Left");
-        if(PlayerSettings.defaultInterfaceOrientation != UIOrientation.LandscapeLeft) {
-
-            GUIStyle styleSlide = new GUIStyle();
-            styleSlide.normal.textColor = Color.red;
-            GUILayout.Label("Failed", styleSlide);
-            isApply = false;
-        } else {
-
-            GUIStyle styleApplied = new GUIStyle();
-            styleApplied.normal.textColor = Color.green;
-            GUILayout.Label("Applied", styleApplied);
-        }
-        EditorGUILayout.EndHorizontal();
-
-        return isApply;
-         
-    }
-    static bool PlayerCheck() {
-        bool isApply = true;
-        if(PlayerSettings.Android.minSdkVersion < AndroidSdkVersions.AndroidApiLevel26) {
-            isApply = false;
-        }
-        if(PlayerSettings.GetApiCompatibilityLevel(BuildTargetGroup.Android) != ApiCompatibilityLevel.NET_4_6) {
-            isApply = false;
-        }
-        if(PlayerSettings.GetMobileMTRendering(BuildTargetGroup.Android) == false) {
-            isApply = false;
-        }
-
-        UnityEngine.Rendering.GraphicsDeviceType[] gapi = PlayerSettings.GetGraphicsAPIs(BuildTarget.Android);
-
-        if(gapi.Length != 1 || gapi[0] != UnityEngine.Rendering.GraphicsDeviceType.OpenGLES3) {
-            isApply = false;
-        }
-
-        if(PlayerSettings.defaultInterfaceOrientation != UIOrientation.LandscapeLeft) {
-            isApply = false;
-        }
-
-        if(EditorSettings.serializationMode != SerializationMode.ForceText) {
-            isApply = false;
-        }
-
-        int staticBatchingValue = 0;
-        int dynamicBatchingValue = 0;
-        Type playerSettingsType = typeof(PlayerSettings);
-        MethodInfo method = playerSettingsType.GetMethod("GetBatchingForPlatform", BindingFlags.NonPublic | BindingFlags.Static);
-        object[] param = new object[] { BuildTarget.Android, staticBatchingValue, dynamicBatchingValue };
-        method.Invoke(null, param);
-        if((int)param[2] != 1) {
-            isApply = false;
-        }
-
-        return isApply;
-    }
-    static void PlayerSet() {
-
-        PlayerSettings.Android.minSdkVersion = AndroidSdkVersions.AndroidApiLevel26;
-        PlayerSettings.Android.targetSdkVersion = AndroidSdkVersions.AndroidApiLevelAuto;
-
-        PlayerSettings.SetApiCompatibilityLevel(BuildTargetGroup.Android, ApiCompatibilityLevel.NET_4_6);
-
-        PlayerSettings.SetMobileMTRendering(BuildTargetGroup.Android, true);
-
-        PlayerSettings.SetUseDefaultGraphicsAPIs(BuildTarget.Android,false);
-        PlayerSettings.SetGraphicsAPIs(BuildTarget.Android,new UnityEngine.Rendering.GraphicsDeviceType[1] { UnityEngine.Rendering.GraphicsDeviceType.OpenGLES3 });
-
-        PlayerSettings.defaultInterfaceOrientation = UIOrientation.LandscapeLeft;
-        EditorSettings.serializationMode = SerializationMode.ForceText;
-        
-        Type playerSettingsType = typeof(PlayerSettings);
-        MethodInfo method = playerSettingsType.GetMethod("SetBatchingForPlatform", BindingFlags.NonPublic | BindingFlags.Static);
-        int staticBatchingValue = 1;
-        int dynamicBatchingValue = 1;
-        object[] param = new object[] { BuildTarget.Android, staticBatchingValue, dynamicBatchingValue };
-        method.Invoke(null, param);
-
-
-    }
-
-    [InitializeOnLoadMethod]
-    static void PlayerSetMust() {
-        if(PlayerSettings.productName == "New Unity Project") {
-            PlayerSettings.productName = "SDK";
-        }
-        if(PlayerSettings.companyName == "DefaultCompany") {
-            PlayerSettings.companyName = "XR";
-        }
-
-    }
-
-    #endregion
-
-    #region ProjectSettings->Tags and Layers
-
-    //[InitializeOnLoadMethod]
-    //static void TagsAndLayerSet() {
-    //    bool isExist = false;
-    //    foreach(var item in UnityEditorInternal.InternalEditorUtility.layers) {
-    //        if(item == "focus") {
-    //            isExist = true;
-    //            break;
-    //        }
-    //    }
-    //    if(isExist == false) {
-    //        AutoAddLayer("focus");
-    //    }
-
-    //    isExist = false;
-    //    foreach(var item in UnityEditorInternal.InternalEditorUtility.layers) {
-    //        if(item == "no light") {
-    //            isExist = true;
-    //            break;
-    //        }
-    //    }
-    //    if(isExist == false) {
-    //        AutoAddLayer("no light"); 
-    //    }
-
-
-    //    isExist = false;
-    //    foreach(var item in UnityEditorInternal.InternalEditorUtility.tags) {
-    //        if(item == "SlamCamera") {
-    //            isExist = true;
-    //            break;
-    //        }
-    //    }
-    //    if(isExist == false) {
-    //        UnityEditorInternal.InternalEditorUtility.AddTag("SlamCamera");
-    //    }
-    //}
-    static void AutoAddLayer(string layer) {
-        SerializedObject tagMagager = new SerializedObject(AssetDatabase.LoadAllAssetsAtPath("ProjectSettings/Tagmanager.asset"));
-        SerializedProperty it = tagMagager.GetIterator();
-        while(it.NextVisible(true)) {
-            if(it.name.Equals("layers")) {
-                for(int i = 0; i < it.arraySize; i++) {
-                    if(i <= 7) {
-                        continue;
-                    }
-                    SerializedProperty sp = it.GetArrayElementAtIndex(i);
-                    if(string.IsNullOrEmpty(sp.stringValue)) {
-                        sp.stringValue = layer;
-                        tagMagager.ApplyModifiedProperties();
-                        return;
-                    }
-                }
-            }
-        }
-    }
-
-    //static void AutoAddLayer(string layer) {
-    //    if(!HasThisLayer(layer)) {
-    //        SerializedObject tagMagager = new SerializedObject(AssetDatabase.LoadAllAssetsAtPath("ProjectSettings/Tagmanager.asset"));
-    //        SerializedProperty it = tagMagager.GetIterator();
-    //        while(it.NextVisible(true)) {
-    //            if(it.name.Equals("layers")) {
-    //                for(int i = 0; i < it.arraySize; i++) {
-    //                    if(i <= 7) {
-    //                        continue;
-    //                    }
-    //                    SerializedProperty sp = it.GetArrayElementAtIndex(i);
-    //                    if(string.IsNullOrEmpty(sp.stringValue)) {
-    //                        sp.stringValue = layer;
-    //                        tagMagager.ApplyModifiedProperties();
-    //                        return;
-    //                    }
-    //                }
-    //            }
-    //        }
-    //    }
-    //}
-    //static bool HasThisLayer(string layer) {
-    //    //先清除已保存的
-    //    SerializedObject tagManager = new SerializedObject(AssetDatabase.LoadAllAssetsAtPath("ProjectSettings/Tagmanager.asset"));
-    //    SerializedProperty it = tagManager.GetIterator();
-    //    while(it.NextVisible(true)) {
-    //        if(it.name.Equals("layers")) {
-    //            for(int i = 0; i < it.arraySize; i++) {
-    //                if(i <= 7) {
-    //                    continue;
-    //                }
-    //                SerializedProperty sp = it.GetArrayElementAtIndex(i);
-    //                if(!string.IsNullOrEmpty(sp.stringValue)) {
-    //                    if(sp.stringValue.Equals(layer)) {
-    //                        sp.stringValue = string.Empty;
-    //                        tagManager.ApplyModifiedProperties();
-    //                    }
-    //                }
-    //            }
-    //        }
-    //    }
-    //    for(int i = 0; i < UnityEditorInternal.InternalEditorUtility.layers.Length; i++) {
-    //        if(UnityEditorInternal.InternalEditorUtility.layers[i].Contains(layer)) {
-    //            return true;
-    //        }
-    //    }
-    //    return false;
-    //}
-    #endregion
-
-    #region ProjectSettings->Quality
-
-    static bool QualityWindow() {
-        bool isApply = true;
-        GUILayout.Label("QulitySettings", EditorStyles.boldLabel);
-
-        EditorGUILayout.BeginHorizontal();
-
-        GUILayout.Label("QulityLevel:Middle");
-
-        if(QualitySettings.GetQualityLevel() != 2) {
-
-            GUIStyle styleSlide = new GUIStyle();
-            styleSlide.normal.textColor = Color.red;
-            GUILayout.Label("Failed", styleSlide);
-            isApply = false;
-        } else {
-
-            GUIStyle styleApplied = new GUIStyle();
-            styleApplied.normal.textColor = Color.green;
-            GUILayout.Label("Applied", styleApplied);
-        }
-
-        EditorGUILayout.EndHorizontal();
-
-        return isApply;
-    }
-    static bool QualityCheck() {
-        bool isApply = true;
-        if(QualitySettings.GetQualityLevel() != 2) {
-            isApply = false;
-        }
-        return isApply;
-    }
-    static void QualitySet() {
-        QualitySettings.SetQualityLevel(2);
-    }
-
-    #endregion
-}

+ 0 - 11
Samples~/SDK/Common/Base/Editor/BuildSettings/SDKSettings.cs.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/Log.meta

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

+ 0 - 69
Samples~/SDK/Common/Base/Log/DebugMy.cs

@@ -1,69 +0,0 @@
-using System;
-using UnityEngine;
-
-namespace SC.XR.Unity {
-    public class DebugMy {
-
-        static string Tag ;
-        public static bool isShowNormalLog = false;
-        public static bool isShowErrorLog = true;
-
-        private static string sdkVersion = "";
-        private static string SdkVersion {
-            get {
-                if (sdkVersion == "") {
-                    sdkVersion = API_Module_SDKVersion.Version;
-                }
-                return sdkVersion;
-            }
-        }
-
-        public static void Log(string msg, object o, bool current = false,bool all = false) {
-         //   return;
-            if(all == true) {
-                isShowNormalLog = true;
-            }
-
-            if(isShowNormalLog == false && current == false)
-                return;
-            
-            Tag = "[ SDK:"+ SdkVersion + " ][ FrameCount:" + Time.frameCount + " ]";
-
-            if(o == null) {
-                if(Application.platform == RuntimePlatform.Android || Application.platform == RuntimePlatform.WindowsEditor) {
-                    Debug.Log(Tag + msg);
-                } else {
-                    Console.WriteLine(Tag + msg);
-                }
-            } else {
-                if(Application.platform == RuntimePlatform.Android || Application.platform == RuntimePlatform.WindowsEditor) {
-                    //Debug.Log(Tag + "[" + o.GetType().ToString() + "]: " + msg);
-                } else {
-                    Console.WriteLine(Tag + "[" + o.GetType().ToString() + "]: " + msg);
-                }
-            }
-
-        }
-
-        public static void LogError(string msg, object o) {
-            if(isShowErrorLog == false)
-                return;
-            Tag = "[ SDK:" + SdkVersion + " ][ FrameCount:" + Time.frameCount + " ]";
-
-            if(o == null) {
-                if(Application.platform == RuntimePlatform.Android || Application.platform == RuntimePlatform.WindowsEditor) {
-                    Debug.Log(Tag + msg);
-                } else {
-                    Console.WriteLine(Tag + msg);
-                }
-            } else {
-                if(Application.platform == RuntimePlatform.Android || Application.platform == RuntimePlatform.WindowsEditor) {
-                    //Debug.Log(Tag + "[" + o.GetType().ToString() + "]: " + msg);
-                } else {
-                    Console.WriteLine(Tag + "[" + o.GetType().ToString() + "]: " + msg);
-                }
-            }
-        }
-    }
-}
-

+ 0 - 11
Samples~/SDK/Common/Base/Log/DebugMy.cs.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/SCLifeCycle.meta

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

+ 0 - 13
Samples~/SDK/Common/Base/SCLifeCycle/ISCLifeCycle.cs

@@ -1,13 +0,0 @@
-
-namespace SC.XR.Unity {
-    public interface ISCLifeCycle {
-        void OnSCAwake();
-        void OnSCEnable();
-        void OnSCStart();
-        void OnSCUpdate();
-        void OnSCLateUpdate();
-        void OnSCFuncitonWaitForEndOfFrame();
-        void OnSCDisable();
-        void OnSCDestroy();
-    }
-}

+ 0 - 11
Samples~/SDK/Common/Base/SCLifeCycle/ISCLifeCycle.cs.meta

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

+ 0 - 46
Samples~/SDK/Common/Base/SCLifeCycle/SCLifeCycle.cs

@@ -1,46 +0,0 @@
-
-namespace SC.XR.Unity {
-
-    public abstract class SCLifeCycle : ISCLifeCycle {
-
-        public SCLifeCycle() {
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "创建 ", this);
-        }
-
-        ~SCLifeCycle() {
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "析构", this);
-        }
-
-        public virtual void OnSCAwake() {
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCAwake", this);
-        }
-
-        public virtual void OnSCEnable() {
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCEnable", this);
-        }
-
-        public virtual void OnSCStart() {
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCStart", this);
-        }
-
-        public virtual void OnSCUpdate() {
-            //DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCUpdate", this);
-        }
-
-        public virtual void OnSCLateUpdate() {
-            //DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCLateUpdate", this);
-        }
-
-        public virtual void OnSCFuncitonWaitForEndOfFrame() {
-            //DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCFuncitonWaitForEndOfFrame", this);
-        }
-
-        public virtual void OnSCDisable() {
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCDisable", this);
-        }
-
-        public virtual void OnSCDestroy() {
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCDestroy", this);
-        }
-    }
-}

+ 0 - 11
Samples~/SDK/Common/Base/SCLifeCycle/SCLifeCycle.cs.meta

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

+ 0 - 39
Samples~/SDK/Common/Base/SCLifeCycle/SCLifeCycleMono.cs

@@ -1,39 +0,0 @@
-using UnityEngine;
-
-namespace SC.XR.Unity {
-    public abstract class SCLifeCycleMono : MonoBehaviour, ISCLifeCycle {
-
-
-        public virtual void OnSCAwake() {
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCAwake", this);
-        }
-
-        public virtual void OnSCEnable() {
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCEnable", this);
-        }
-
-        public virtual void OnSCStart() {
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCStart", this);
-        }
-
-        public virtual void OnSCUpdate() {
-            //DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCUpdate", this);
-        }
-
-        public virtual void OnSCLateUpdate() {
-            //DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCLateUpdate", this);
-        }
-
-        public virtual void OnSCFuncitonWaitForEndOfFrame() {
-            //DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCFuncitonWaitForEndOfFrame", this);
-        }
-
-        public virtual void OnSCDisable() {
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCDisable", this);
-        }
-
-        public virtual void OnSCDestroy() {
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCDestroy", this);
-        }
-    }
-}

+ 0 - 11
Samples~/SDK/Common/Base/SCLifeCycle/SCLifeCycleMono.cs.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/SCModel.meta

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

+ 0 - 52
Samples~/SDK/Common/Base/SCModel/ISCModule.cs

@@ -1,52 +0,0 @@
-
-namespace SC.XR.Unity {
-
-    public enum SCModulePriority { 
-        High,
-        Middle,
-        Low,
-    }
-
-    public interface ISCModule : ISCLifeCycle {
-
-        string ModuleName { get; set; }
-
-        ISCModule FatherModule { get; set; }
-
-        bool IsModuleInit { get; set; }
-        
-        bool IsModuleStarted { get; set; }
-
-        bool IsMono { get; set; }
-
-        bool IsEffectGameObject { get; set; }
-
-        SCModulePriority Priority { get; set; }
-
-        T GetSubModule<T>() where T : ISCModule;
-
-        T GetFatherModule<T>() where T : ISCModule;
-
-        /// <summary>
-        /// 模块初始化
-        /// </summary>
-        void ModuleInit(bool isEffectGameObject = true,SCModulePriority priority = SCModulePriority.Middle);
-        //void ModuleEnable();
-        /// <summary>
-        /// 模块启动,同Mono OnEnable
-        /// </summary>
-        void ModuleStart();
-        void ModuleUpdate();
-        void ModuleLateUpdate();
-        void ModuleEndOfFrame();
-        /// <summary>
-        /// 模块停止,同Mono OnDisable
-        /// </summary>
-        void ModuleStop();
-        /// <summary>
-        /// 模块销毁
-        /// </summary>
-        void ModuleDestroy();
-
-    }
-}

+ 0 - 11
Samples~/SDK/Common/Base/SCModel/ISCModule.cs.meta

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

+ 0 - 341
Samples~/SDK/Common/Base/SCModel/SCModule.cs

@@ -1,341 +0,0 @@
-using System;
-using System.Collections.Generic;
-
-namespace SC.XR.Unity {
-
-    public abstract class SCModule : ISCModule {
-
-        public string ModuleName { get; set; }
-        public bool IsModuleInit { get; set; }
-        public bool IsModuleStarted { get; set; }
-        public ISCModule FatherModule { get; set; }
-
-        List<ISCModule> subModuleList = new List<ISCModule>();
-        public bool IsMono { get; set; }
-        public SCModulePriority Priority { get; set; }
-        public bool IsEffectGameObject { get; set; }
-
-
-        /// <summary>
-        /// Module 初始化 ===================================
-        /// </summary>
-        public void ModuleInit(bool isEffectGameObject = true, SCModulePriority priority = SCModulePriority.Middle) {
-            if(IsModuleInit) {
-                DebugMy.LogError("ModuleInit Had Invoke", this);
-                return;
-            }
-
-            IsModuleInit = true;
-            ModuleName = GetType().ToString();
-            IsMono = false;
-
-            IsEffectGameObject = isEffectGameObject;
-            Priority = priority;
-
-            OnSCAwake();
-        }
-        public virtual void OnSCAwake() {
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCAwake", this);
-        }
-        /// <summary>
-        /// Module 初始化 ===================================
-        /// </summary>
-
-
-
-
-
-        /// <summary>
-        /// ModuleEnable ===================================
-        /// </summary>
-        [Obsolete("Should not use the EventFunction")]
-        public void OnSCEnable() {
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCEnable", this);
-        }
-        /// <summary>
-        /// ModuleEnable ===================================
-        /// </summary>
-
-
-
-
-
-
-
-        /// <summary>
-        /// Module 启动 ===================================
-        /// </summary>
-        public void ModuleStart() {
-            if(!IsModuleInit) {
-                DebugMy.Log("Please Invoke ModuleInit First", this);
-                return;
-            }
-            if(IsModuleStarted) {
-                DebugMy.Log("ModuleStart Had Invoke", this);
-                return;
-            }
-            
-            IsModuleStarted = true;
-
-            OnSCStart();
-        }
-
-        public virtual void OnSCStart() {
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCStart", this);
-        }
-        /// <summary>
-        /// Module 启动 ===================================
-        /// </summary>
-        /// 
-
-
-
-
-
-
-        /// <summary>
-        /// Module Update ===================================
-        /// </summary>
-        public void ModuleUpdate() {
-
-            if(IsModuleInit == false || IsModuleStarted == false) {
-                //DebugMy.Log("Pleaase Invoke ModuleInit First", this);
-                return;
-            }
-
-            OnSCUpdate();
-        }
-        public virtual void OnSCUpdate() {
-
-            lock(subModuleList) {
-                foreach(var Module in subModuleList) {
-                    Module.ModuleUpdate();
-                }
-            }
-
-            //DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCUpdate", this);
-        }
-        /// <summary>
-        /// Module Update ===================================
-        /// </summary>
-
-
-
-
-        /// <summary>
-        /// Module LateUpdate ===================================
-        /// </summary>
-        public void ModuleLateUpdate() {
-            if(IsModuleInit == false || IsModuleStarted == false) {
-                //DebugMy.Log("Please Invoke ModuleInit First", this);
-                return;
-            }
-
-            OnSCLateUpdate();
-        }
-        public virtual void OnSCLateUpdate() {
-
-            lock(subModuleList) {
-                foreach(var Module in subModuleList) {
-                    Module.ModuleLateUpdate();
-                }
-            }
-            //DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCLateUpdate", this);
-        }
-        /// <summary>
-        /// Module LateUpdate ===================================
-        /// </summary>
-
-
-
-
-
-
-        /// <summary>
-        /// ModuleEndOfFrame ===================================
-        /// </summary>
-        public void ModuleEndOfFrame() {
-            if(IsModuleInit == false || IsModuleStarted == false) {
-                //DebugMy.Log("Please Invoke ModuleInit First", this);
-                return;
-            }
-
-            OnSCFuncitonWaitForEndOfFrame();
-        }
-        public virtual void OnSCFuncitonWaitForEndOfFrame() {
-
-            lock(subModuleList) {
-                foreach(var Module in subModuleList) {
-                    Module.ModuleEndOfFrame();
-                }
-            }
-
-            //DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCFuncitonWaitForEndOfFrame", this);
-        }
-        /// <summary>
-        /// ModuleEndOfFrame ===================================
-        /// </summary>
-
-
-
-
-
-        /// <summary>
-        /// ModuleStop ===================================
-        /// </summary>
-        public void ModuleStop() {
-            if(IsModuleInit == false) {
-                DebugMy.Log("ModuleStop: Please Invoke ModuleInit First", this);
-                return;
-            }
-
-            if(IsModuleStarted == false) {
-                DebugMy.Log("ModuleStop: Please Invoke ModuleStart First", this);
-                return;
-            }
-
-            OnSCDisable();
-
-            IsModuleStarted = false;
-        }
-        public virtual void OnSCDisable() {
-
-            lock(subModuleList) {
-                foreach(var Module in subModuleList) {
-                    Module.ModuleStop();
-                }
-            }
-
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCDisable", this);
-        }
-        /// <summary>
-        /// ModuleStop ===================================
-        /// </summary>
-
-
-
-
-        /// <summary>
-        /// ModuleDestroy ===================================
-        /// </summary>
-        public void ModuleDestroy() {
-
-            if(IsModuleInit == false) {
-                DebugMy.Log("ModuleDestroy: Please Invoke ModuleInit First", this);
-                return;
-            }
-
-            OnSCDestroy();
-
-            IsModuleInit = false;
-            IsModuleStarted = false;
-            FatherModule = null;
-            ModuleName = "";
-
-        }
-        public virtual void OnSCDestroy() {
-
-            lock(subModuleList) {
-                foreach(var Module in subModuleList) {
-                    Module.ModuleDestroy();
-                }
-            }
-            subModuleList.Clear();
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCDestroy", this);
-        }
-        /// <summary>
-        /// ModuleDestroy ===================================
-        /// </summary>
-
-
-
-
-
-
-
-
-
-
-
-        public void AddModule(ISCModule Module, bool isEffectGameObject = true, SCModulePriority priority = SCModulePriority.Middle) {
-            if(Module == null)
-                return;
-
-            Module.FatherModule = this;
-            Module.ModuleInit(isEffectGameObject, priority);
-
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "Module '" + Module.GetType() + "' [HashCode: " + Module.GetHashCode() + "] Add To Module '" + GetType(), this);
-            lock(subModuleList) {
-                if (subModuleList.Contains(Module) == false) {
-                    subModuleList.Add(Module);
-                }
-            }
-        }
-
-        public void RemoveModule(ISCModule Module) {
-            if(Module == null)
-                return;
-
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "Module '" + Module.GetType() + "' [HashCode: " + Module.GetHashCode() + "] Remove From Module '" + GetType(), this);
-            lock(subModuleList) {
-                if (subModuleList.Contains(Module) == true) {
-                    subModuleList.Remove(Module);
-                }
-            }
-
-            Module.ModuleDestroy();
-            Module.FatherModule = null;
-        }
-
-        public void RemoveAllModule() {
-            lock(subModuleList) {
-                foreach(var item in subModuleList) {
-                    item.ModuleDestroy();
-                }
-            }
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "Remove All Module '" + GetType(), this);
-            subModuleList.Clear();
-        }
-
-        public virtual T GetSubModule<T>() where T : ISCModule {
-
-            lock(subModuleList) {
-                foreach(var Module in subModuleList) {
-                    if(typeof(T).ToString() == Module.ModuleName) {
-                        DebugMy.Log("[HashCode: " + GetHashCode() + "] Module" + typeof(T).ToString() + " Found ", this);
-                        return (T)Module;
-                    }
-                }
-            }
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] Module" + typeof(T).ToString() + " No Found ", this);
-            return default(T);
-        }
-
-        /// <summary>
-        /// 返回直接父
-        /// </summary>
-        /// <typeparam name="T"></typeparam>
-        /// <returns></returns>
-        public virtual T GetFatherModule<T>() where T : ISCModule {
-            ISCModule father = FatherModule;
-
-            while(father != null) {
-                if(father.ModuleName == typeof(T).ToString()) {
-                    DebugMy.Log("[HashCode: " + GetHashCode() + "] FatherModule" + father.ModuleName + " Found ", this);
-                    return (T)father;
-                }
-                father = father.FatherModule;
-            }
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] FatherModule" + typeof(T).ToString() + " Found ", this);
-            return default(T);
-        }
-
-
-        public T Transition<T>(ISCModule data) where T : class {
-            if((data as T) == null)
-                throw new ArgumentException(String.Format("Invalid type: {0} passed to event expecting {1}", data.GetType(), typeof(T)));
-            return data as T;
-        }
-
-    }
-}

+ 0 - 11
Samples~/SDK/Common/Base/SCModel/SCModule.cs.meta

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

+ 0 - 354
Samples~/SDK/Common/Base/SCModel/SCModuleMono.cs

@@ -1,354 +0,0 @@
-using System;
-using System.Collections.Generic;
-using UnityEngine;
-
-namespace SC.XR.Unity {
-
-    public abstract class SCModuleMono : MonoBehaviour, ISCModule {
-
-        public string ModuleName { get; set; }
-        public bool IsModuleInit { get; set; }
-        public bool IsModuleStarted { get; set; }
-        public ISCModule FatherModule { get; set; }
-
-        List<ISCModule> subModuleList = new List<ISCModule>();
-        public bool IsMono { get; set; }
-        public SCModulePriority Priority { get; set; }
-        public bool IsEffectGameObject { get; set; }
-
-
-        /// <summary>
-        /// Module 初始化 ===================================
-        /// </summary>
-        public void ModuleInit(bool isEffectGameObject = true, SCModulePriority priority = SCModulePriority.Middle) {
-            if(IsModuleInit) {
-                DebugMy.LogError("ModuleInit Had Invoke", this);
-                return;
-            }
-
-            IsModuleInit = true;
-            ModuleName = GetType().ToString();
-            IsMono = true;
-
-            IsEffectGameObject = isEffectGameObject;
-            Priority = priority;
-
-            OnSCAwake();
-
-            if(IsEffectGameObject) {
-                gameObject.SetActive(false);
-            }
-        }
-        public virtual void OnSCAwake() {
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCAwake", this);
-        }
-        /// <summary>
-        /// Module 初始化 ===================================
-        /// </summary>
-
-
-
-
-
-        /// <summary>
-        /// ModuleEnable ===================================
-        /// </summary>
-        [Obsolete("Should not use the EventFunction")]
-        public void OnSCEnable() {
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCEnable", this);
-        }
-        /// <summary>
-        /// ModuleEnable ===================================
-        /// </summary>
-
-
-
-
-
-
-
-        /// <summary>
-        /// Module 启动 ===================================
-        /// </summary>
-        public void ModuleStart() {
-            if(!IsModuleInit) {
-                DebugMy.Log("Please Invoke ModuleInit First", this);
-                return;
-            }
-            if(IsModuleStarted) {
-                DebugMy.Log("ModuleStart Had Invoke", this);
-                return;
-            }
-            
-            IsModuleStarted = true;
-            
-            if(IsEffectGameObject) {
-                gameObject.SetActive(true);
-            }
-
-            OnSCStart();
-        }
-
-        public virtual void OnSCStart() {
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCStart", this);
-        }
-        /// <summary>
-        /// Module 启动 ===================================
-        /// </summary>
-        /// 
-
-
-
-
-
-
-        /// <summary>
-        /// Module Update ===================================
-        /// </summary>
-        public void ModuleUpdate() {
-
-            if(IsModuleInit == false || IsModuleStarted == false) {
-                //DebugMy.Log("Pleaase Invoke ModuleInit First", this);
-                return;
-            }
-
-            OnSCUpdate();
-        }
-        public virtual void OnSCUpdate() {
-
-            lock(subModuleList) {
-                foreach(var Module in subModuleList) {
-                    Module.ModuleUpdate();
-                }
-            }
-
-            //DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCUpdate", this);
-        }
-        /// <summary>
-        /// Module Update ===================================
-        /// </summary>
-
-
-
-
-        /// <summary>
-        /// Module LateUpdate ===================================
-        /// </summary>
-        public void ModuleLateUpdate() {
-            if(IsModuleInit == false || IsModuleStarted == false) {
-                //DebugMy.Log("Please Invoke ModuleInit First", this);
-                return;
-            }
-
-            OnSCLateUpdate();
-        }
-        public virtual void OnSCLateUpdate() {
-
-            lock(subModuleList) {
-                foreach(var Module in subModuleList) {
-                    Module.ModuleLateUpdate();
-                }
-            }
-            //DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCLateUpdate", this);
-        }
-        /// <summary>
-        /// Module LateUpdate ===================================
-        /// </summary>
-
-
-
-
-
-
-        /// <summary>
-        /// ModuleEndOfFrame ===================================
-        /// </summary>
-        public void ModuleEndOfFrame() {
-            if(IsModuleInit == false || IsModuleStarted == false) {
-                //DebugMy.Log("Please Invoke ModuleInit First", this);
-                return;
-            }
-
-            OnSCFuncitonWaitForEndOfFrame();
-        }
-        public virtual void OnSCFuncitonWaitForEndOfFrame() {
-
-            lock(subModuleList) {
-                foreach(var Module in subModuleList) {
-                    Module.ModuleEndOfFrame();
-                }
-            }
-
-            //DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCFuncitonWaitForEndOfFrame", this);
-        }
-        /// <summary>
-        /// ModuleEndOfFrame ===================================
-        /// </summary>
-
-
-
-
-
-        /// <summary>
-        /// ModuleStop ===================================
-        /// </summary>
-        public void ModuleStop() {
-            if(IsModuleInit == false) {
-                DebugMy.Log("ModuleStop: Please Invoke ModuleInit First", this);
-                return;
-            }
-
-            if(IsModuleStarted == false) {
-                DebugMy.Log("ModuleStop: Please Invoke ModuleStart First", this);
-                return;
-            }
-
-            OnSCDisable();
-
-            IsModuleStarted = false;
-
-            if(IsEffectGameObject) {
-                gameObject.SetActive(false);
-            }
-        }
-        public virtual void OnSCDisable() {
-
-            lock(subModuleList) {
-                foreach(var Module in subModuleList) {
-                    Module.ModuleStop();
-                }
-            }
-
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCDisable", this);
-        }
-        /// <summary>
-        /// ModuleStop ===================================
-        /// </summary>
-
-
-
-
-        /// <summary>
-        /// ModuleDestroy ===================================
-        /// </summary>
-        public void ModuleDestroy() {
-
-            if(IsModuleInit == false) {
-                DebugMy.Log("ModuleDestroy: Please Invoke ModuleInit First", this);
-                return;
-            }
-
-            OnSCDestroy();
-
-            IsModuleInit = false;
-            IsModuleStarted = false;
-            FatherModule = null;
-            ModuleName = "";
-
-        }
-        public virtual void OnSCDestroy() {
-
-            lock(subModuleList) {
-                foreach(var Module in subModuleList) {
-                    Module.ModuleDestroy();
-                }
-            }
-            subModuleList.Clear();
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "OnSCDestroy", this);
-        }
-        /// <summary>
-        /// ModuleDestroy ===================================
-        /// </summary>
-
-
-
-
-
-
-
-
-
-
-
-        public void AddModule(ISCModule Module, bool isEffectGameObject = true, SCModulePriority priority = SCModulePriority.Middle) {
-            if(Module == null)
-                return;
-
-            Module.FatherModule = this;
-            Module.ModuleInit(isEffectGameObject, priority);
-
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "Module '" + Module.GetType() + "' [HashCode: " + Module.GetHashCode() + "] Add To Module '" + GetType(), this);
-            lock(subModuleList) {
-                if (subModuleList.Contains(Module) == false) {
-                    subModuleList.Add(Module);
-                }
-            }
-        }
-
-        public void RemoveModule(ISCModule Module) {
-            if(Module == null)
-                return;
-
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "Module '" + Module.GetType() + "' [HashCode: " + Module.GetHashCode() + "] Remove From Module '" + GetType(), this);
-            lock(subModuleList) {
-                if (subModuleList.Contains(Module) == true) {
-                    subModuleList.Remove(Module);
-                }
-            }
-
-            Module.ModuleDestroy();
-            Module.FatherModule = null;
-        }
-
-        public void RemoveAllModule() {
-            lock(subModuleList) {
-                foreach(var item in subModuleList) {
-                    item.ModuleDestroy();
-                }
-            }
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] " + "Remove All Module '" + GetType(), this);
-            subModuleList.Clear();
-        }
-
-        public virtual T GetSubModule<T>() where T : ISCModule {
-
-            lock(subModuleList) {
-                foreach(var Module in subModuleList) {
-                    if(typeof(T).ToString() == Module.ModuleName) {
-                        DebugMy.Log("[HashCode: " + GetHashCode() + "] Module" + typeof(T).ToString() + " Found ", this);
-                        return (T)Module;
-                    }
-                }
-            }
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] Module" + typeof(T).ToString() + " No Found ", this);
-            return default(T);
-        }
-
-        /// <summary>
-        /// 返回直接父
-        /// </summary>
-        /// <typeparam name="T"></typeparam>
-        /// <returns></returns>
-        public virtual T GetFatherModule<T>() where T : ISCModule {
-            ISCModule father = FatherModule;
-
-            while(father != null) {
-                if(father.ModuleName == typeof(T).ToString()) {
-                    DebugMy.Log("[HashCode: " + GetHashCode() + "] FatherModule" + father.ModuleName + " Found ", this);
-                    return (T)father;
-                }
-                father = father.FatherModule;
-            }
-            DebugMy.Log("[HashCode: " + GetHashCode() + "] FatherModule" + typeof(T).ToString() + " Found ", this);
-            return default(T);
-        }
-
-
-        public T Transition<T>(ISCModule data) where T : class {
-            if((data as T) == null)
-                throw new ArgumentException(String.Format("Invalid type: {0} passed to event expecting {1}", data.GetType(), typeof(T)));
-            return data as T;
-        }
-
-    }
-}

+ 0 - 11
Samples~/SDK/Common/Base/SCModel/SCModuleMono.cs.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/Singleton.meta

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

+ 0 - 25
Samples~/SDK/Common/Base/Singleton/Singleton.cs

@@ -1,25 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace SC.XR.Unity
-{ 
-    public abstract class Singleton<T> where T : class, new()
-    {
-        protected Singleton()
-        {
-
-        }
-
-        private readonly static Lazy<T> instance = new Lazy<T>(() => new T());
-        public static T Instance
-        {
-            get
-            {
-                return instance.Value;
-            }
-        }
-    }
-}

+ 0 - 11
Samples~/SDK/Common/Base/Singleton/Singleton.cs.meta

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

+ 0 - 42
Samples~/SDK/Common/Base/Singleton/SingletonMono.cs

@@ -1,42 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using UnityEngine;
-
-namespace SC.XR.Unity
-{
-    public abstract class SingletonMono<T> : MonoBehaviour where T : MonoBehaviour
-    {
-        private static T instance;
-
-        private static object lockObj = new object();
-
-        public static T Instance
-        {
-            get
-            {
-                if (instance == null)
-                {
-                    instance = (T)FindObjectOfType(typeof(T));
-
-                    if (instance == null)
-                    {
-                        lock (lockObj)
-                        {
-                            if (instance == null)
-                            {
-                                GameObject singleton = new GameObject();
-                                instance = singleton.AddComponent<T>();
-                                singleton.name = "(Singleton) " + typeof(T).Name;
-                                DontDestroyOnLoad(singleton);
-                            }
-                        }
-                    }
-                }
-                return instance;
-            }
-        }
-    }
-}

+ 0 - 11
Samples~/SDK/Common/Base/Singleton/SingletonMono.cs.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/SpecificationType.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/SpecificationType/SpecificationType.cs

@@ -1,8 +0,0 @@
-
-
-namespace SC.XR.Unity {
-    public enum SpecificationType {
-        GSXR,
-        Other,
-    }
-}

+ 0 - 11
Samples~/SDK/Common/Base/SpecificationType/SpecificationType.cs.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/TrackMode.meta

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

+ 0 - 12
Samples~/SDK/Common/Base/TrackMode/TrackMode.cs

@@ -1,12 +0,0 @@
-
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using UnityEngine;
-
-namespace SC.XR.Unity {
-    public enum TrackMode {
-        Mode_3Dof,
-        Mode_6Dof,
-    }
-}

+ 0 - 11
Samples~/SDK/Common/Base/TrackMode/TrackMode.cs.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/WebRquest.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/WebRquest/Base.meta

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

+ 0 - 128
Samples~/SDK/Common/Base/WebRquest/Base/WebRequestBase.cs

@@ -1,128 +0,0 @@
-using LitJson;
-using System;
-using System.Collections;
-using UnityEngine;
-using UnityEngine.Networking;
-
-namespace SC.XR.Unity {
-    /// <summary>
-    /// 一个WebRequest的基类
-    /// </summary>
-    public abstract class WebRequestBase {
-        public string url;
-        public WWWForm wwwForm;
-        public WebRequestType webRequestType;
-        protected JsonData responseJsonData;
-
-        protected Action<JsonData> mSuccess;
-        protected Action<JsonData> mFailed;
-        protected Action<JsonData> mErrorCallBack;
-
-
-        public enum WebRequestType {
-            GET,
-            POST,
-            PUT,
-        }
-
-        public string LOGTAG = "[WebRequestBase]:";
-
-        public WebRequestBase(string _url, WWWForm _form, Action<JsonData> success, Action<JsonData> failed, Action<JsonData> errorCallBack = null) {
-            url = _url;
-            wwwForm = _form;
-            mSuccess = success;
-            mFailed = failed;
-            mErrorCallBack = errorCallBack;
-        }
-
-        //public abstract void Success(JsonData responseJson);
-        //public abstract void Failed(JsonData responseJson);
-
-        public virtual void NetWorkError(string errText) {
-            Debug.Log(LOGTAG + "NetWorkError");
-            //try {
-            //    UISystem.Instant.PushUIPanel(UIPanelsType.InfoType1Panel, "ERROR: NetWorkError,Please Open Wifi");
-            //} catch (Exception e) {
-            //    Debug.Log(e);
-            //}
-        }
-
-
-        public virtual IEnumerator SendRequest() {
-
-            if(webRequestType == WebRequestType.GET) {
-                UnityWebRequest www = UnityWebRequest.Get(url);
-                yield return www.SendWebRequest();
-                if(www.isNetworkError || www.isHttpError) {
-                    Debug.Log(www.error);
-                    //responseJsonData = JsonMapper.ToObject(www.error);
-                    NetWorkError(www.error);
-                } else {
-                    Debug.Log(www.downloadHandler.text);
-                    responseJsonData = JsonMapper.ToObject(www.downloadHandler.text);
-                    if(mSuccess != null) {
-                        mSuccess(responseJsonData);
-                    }
-
-                }
-
-            } else if(webRequestType == WebRequestType.POST) {
-                try {
-                    //if (UserSystem.Instant.SysInfo.UserToken != null) {
-                    //    wwwForm.AddField("token", UserSystem.Instant.SysInfo.UserToken);
-                    //    Debug.Log("[" + GetType().ToString() + "]: " + "Form Add UserToken !");
-                    //}
-                } catch(Exception e) {
-                    Debug.Log(e + "\nUserSystem.Instant.SysInfo.UserToken is Null");
-                }
-
-                Debug.Log("[" + GetType().ToString() + "]: " + "SendRequest:" + "URL:" + url + "\nFormData:" + System.Text.Encoding.Default.GetString(wwwForm.data));
-                UnityWebRequest www = UnityWebRequest.Post(url, wwwForm);
-                yield return www.SendWebRequest();
-                if(www.isNetworkError || www.isHttpError) {
-                    Debug.Log(www.error);
-                    //responseJsonData = JsonMapper.ToObject(www.error);
-                    if(mErrorCallBack != null) {
-                        mErrorCallBack(www.error);
-                    }
-                    NetWorkError(www.error);
-                } else {
-                    Debug.Log("[" + GetType().ToString() + "]: \n" + www.downloadHandler.text);
-                    try {
-                        responseJsonData = JsonMapper.ToObject(www.downloadHandler.text);
-                        if("200" == responseJsonData["code"].ToString()) {
-                            if(mSuccess != null) {
-                                mSuccess(responseJsonData);
-                            }
-                        } else if("-1" == responseJsonData["code"].ToString()) {
-
-                            try {
-                                if(responseJsonData["msg"].ToString() == "验证失败,请重新获取系统token") {
-                                    // UserSystem.Instant.SysInfo.ResetUserInfo();
-                                }
-                            } catch(Exception e) {
-                                Debug.Log(e);
-                            }
-
-
-                            if(mFailed != null) {
-                                mFailed(responseJsonData);
-                            }
-                        } else {
-                            if(mFailed != null) {
-                                mFailed(responseJsonData);
-                            }
-                        }
-                    } catch(Exception e) {
-                        Debug.Log(e);
-
-                    }
-
-
-                }
-            }
-        }
-
-    }
-
-}

+ 0 - 11
Samples~/SDK/Common/Base/WebRquest/Base/WebRequestBase.cs.meta

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

+ 0 - 40
Samples~/SDK/Common/Base/WebRquest/Base/WebRequestServerBase.cs

@@ -1,40 +0,0 @@
-using System.Collections;
-using System.Collections.Generic;
-
-namespace SC.XR.Unity {
-    /// <summary>
-    /// 一个WebRequest发送系统的基类
-    /// </summary>
-    public class WebRequestServerBase : SCModuleMono {
-
-        protected List<WebRequestBase> webRequestList = new List<WebRequestBase>();
-        public void AddWebRequest(WebRequestBase webRequest) {
-            webRequestList.Add(webRequest);
-            CheckQueue();
-        }
-
-        void CheckQueue() {
-            if(webRequestList.Count == 0) {
-                return;
-            }
-            StartCoroutine(SendRequest());
-        }
-
-        IEnumerator SendRequest() {
-            ///加yield return null目的是将Web请求延迟到下一帧开始,避免web回复委托还没添加,web已经回复,导致错过信息
-            yield return null;
-
-            WebRequestBase webRequest = webRequestList[0];
-            webRequestList.RemoveAt(0);
-            yield return StartCoroutine(webRequest.SendRequest());
-            CheckQueue();
-        }
-
-        public override void OnSCDestroy() {
-            base.OnSCDestroy();
-            StopAllCoroutines();
-            webRequestList.Clear();
-        }
-
-    }
-}

+ 0 - 11
Samples~/SDK/Common/Base/WebRquest/Base/WebRequestServerBase.cs.meta

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

+ 0 - 8
Samples~/SDK/Common/Base/XRType.meta

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

+ 0 - 14
Samples~/SDK/Common/Base/XRType/XRType.cs

@@ -1,14 +0,0 @@
-
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using UnityEngine;
-
-namespace SC.XR.Unity {
-    public enum XRType {
-        Unknow = 0,
-        AR = 1,
-        VR = 2,
-        MR = 3
-    }
-}

+ 0 - 11
Samples~/SDK/Common/Base/XRType/XRType.cs.meta

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

+ 0 - 8
Samples~/SDK/Common/StandardAssets.meta

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

+ 0 - 8
Samples~/SDK/Common/StandardAssets/Audio.meta

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

BIN
Samples~/SDK/Common/StandardAssets/Audio/ButtonPress.wav


+ 0 - 22
Samples~/SDK/Common/StandardAssets/Audio/ButtonPress.wav.meta

@@ -1,22 +0,0 @@
-fileFormatVersion: 2
-guid: b3e99c3cfc154f448947d69fd8142765
-AudioImporter:
-  externalObjects: {}
-  serializedVersion: 6
-  defaultSettings:
-    loadType: 0
-    sampleRateSetting: 0
-    sampleRateOverride: 44100
-    compressionFormat: 1
-    quality: 1
-    conversionMode: 0
-  platformSettingOverrides: {}
-  forceToMono: 0
-  normalize: 1
-  preloadAudioData: 1
-  loadInBackground: 0
-  ambisonic: 0
-  3D: 1
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

BIN
Samples~/SDK/Common/StandardAssets/Audio/ButtonUnpress.wav


+ 0 - 22
Samples~/SDK/Common/StandardAssets/Audio/ButtonUnpress.wav.meta

@@ -1,22 +0,0 @@
-fileFormatVersion: 2
-guid: 5674b0fa5c3617849b8beac90254458f
-AudioImporter:
-  externalObjects: {}
-  serializedVersion: 6
-  defaultSettings:
-    loadType: 0
-    sampleRateSetting: 0
-    sampleRateOverride: 44100
-    compressionFormat: 1
-    quality: 1
-    conversionMode: 0
-  platformSettingOverrides: {}
-  forceToMono: 0
-  normalize: 1
-  preloadAudioData: 1
-  loadInBackground: 0
-  ambisonic: 0
-  3D: 1
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

BIN
Samples~/SDK/Common/StandardAssets/Audio/Manipulation_End.wav


+ 0 - 22
Samples~/SDK/Common/StandardAssets/Audio/Manipulation_End.wav.meta

@@ -1,22 +0,0 @@
-fileFormatVersion: 2
-guid: 11a9ab7e0c34cca49a6e24aaddfee3e9
-AudioImporter:
-  externalObjects: {}
-  serializedVersion: 6
-  defaultSettings:
-    loadType: 0
-    sampleRateSetting: 0
-    sampleRateOverride: 44100
-    compressionFormat: 1
-    quality: 1
-    conversionMode: 0
-  platformSettingOverrides: {}
-  forceToMono: 0
-  normalize: 1
-  preloadAudioData: 1
-  loadInBackground: 0
-  ambisonic: 0
-  3D: 1
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

BIN
Samples~/SDK/Common/StandardAssets/Audio/Manipulation_Start.wav


+ 0 - 22
Samples~/SDK/Common/StandardAssets/Audio/Manipulation_Start.wav.meta

@@ -1,22 +0,0 @@
-fileFormatVersion: 2
-guid: f2933c7ec5adc69428156ffc83955ef7
-AudioImporter:
-  externalObjects: {}
-  serializedVersion: 6
-  defaultSettings:
-    loadType: 0
-    sampleRateSetting: 0
-    sampleRateOverride: 44100
-    compressionFormat: 1
-    quality: 1
-    conversionMode: 0
-  platformSettingOverrides: {}
-  forceToMono: 0
-  normalize: 1
-  preloadAudioData: 1
-  loadInBackground: 0
-  ambisonic: 0
-  3D: 1
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

BIN
Samples~/SDK/Common/StandardAssets/Audio/Move_End.wav


+ 0 - 22
Samples~/SDK/Common/StandardAssets/Audio/Move_End.wav.meta

@@ -1,22 +0,0 @@
-fileFormatVersion: 2
-guid: 4e29445a335abbc4097dde67ff49cff1
-AudioImporter:
-  externalObjects: {}
-  serializedVersion: 6
-  defaultSettings:
-    loadType: 0
-    sampleRateSetting: 0
-    sampleRateOverride: 44100
-    compressionFormat: 1
-    quality: 1
-    conversionMode: 0
-  platformSettingOverrides: {}
-  forceToMono: 0
-  normalize: 1
-  preloadAudioData: 1
-  loadInBackground: 0
-  ambisonic: 0
-  3D: 1
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

BIN
Samples~/SDK/Common/StandardAssets/Audio/Move_Start.wav


+ 0 - 22
Samples~/SDK/Common/StandardAssets/Audio/Move_Start.wav.meta

@@ -1,22 +0,0 @@
-fileFormatVersion: 2
-guid: 0643f79600b74f247a26d8a6f155669f
-AudioImporter:
-  externalObjects: {}
-  serializedVersion: 6
-  defaultSettings:
-    loadType: 0
-    sampleRateSetting: 0
-    sampleRateOverride: 44100
-    compressionFormat: 1
-    quality: 1
-    conversionMode: 0
-  platformSettingOverrides: {}
-  forceToMono: 0
-  normalize: 1
-  preloadAudioData: 1
-  loadInBackground: 0
-  ambisonic: 0
-  3D: 1
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

BIN
Samples~/SDK/Common/StandardAssets/Audio/Notification.wav


+ 0 - 22
Samples~/SDK/Common/StandardAssets/Audio/Notification.wav.meta

@@ -1,22 +0,0 @@
-fileFormatVersion: 2
-guid: 8ad3909f1241f2f49aebb1c9d0a74d54
-AudioImporter:
-  externalObjects: {}
-  serializedVersion: 6
-  defaultSettings:
-    loadType: 0
-    sampleRateSetting: 0
-    sampleRateOverride: 44100
-    compressionFormat: 1
-    quality: 1
-    conversionMode: 0
-  platformSettingOverrides: {}
-  forceToMono: 0
-  normalize: 1
-  preloadAudioData: 1
-  loadInBackground: 0
-  ambisonic: 0
-  3D: 1
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

BIN
Samples~/SDK/Common/StandardAssets/Audio/Rotate_Start.wav


+ 0 - 22
Samples~/SDK/Common/StandardAssets/Audio/Rotate_Start.wav.meta

@@ -1,22 +0,0 @@
-fileFormatVersion: 2
-guid: 5f3396f116231d347a9aeb8e945bfed3
-AudioImporter:
-  externalObjects: {}
-  serializedVersion: 6
-  defaultSettings:
-    loadType: 0
-    sampleRateSetting: 0
-    sampleRateOverride: 44100
-    compressionFormat: 1
-    quality: 1
-    conversionMode: 0
-  platformSettingOverrides: {}
-  forceToMono: 0
-  normalize: 1
-  preloadAudioData: 1
-  loadInBackground: 0
-  ambisonic: 0
-  3D: 1
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

BIN
Samples~/SDK/Common/StandardAssets/Audio/Rotate_Stop.wav


+ 0 - 22
Samples~/SDK/Common/StandardAssets/Audio/Rotate_Stop.wav.meta

@@ -1,22 +0,0 @@
-fileFormatVersion: 2
-guid: 4376c81e6323a554a88de9a17a130197
-AudioImporter:
-  externalObjects: {}
-  serializedVersion: 6
-  defaultSettings:
-    loadType: 0
-    sampleRateSetting: 0
-    sampleRateOverride: 44100
-    compressionFormat: 1
-    quality: 1
-    conversionMode: 0
-  platformSettingOverrides: {}
-  forceToMono: 0
-  normalize: 1
-  preloadAudioData: 1
-  loadInBackground: 0
-  ambisonic: 0
-  3D: 1
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

BIN
Samples~/SDK/Common/StandardAssets/Audio/Scale_Start.wav


+ 0 - 22
Samples~/SDK/Common/StandardAssets/Audio/Scale_Start.wav.meta

@@ -1,22 +0,0 @@
-fileFormatVersion: 2
-guid: 3b0991ad88c2aa44d867bb0805d52a8b
-AudioImporter:
-  externalObjects: {}
-  serializedVersion: 6
-  defaultSettings:
-    loadType: 0
-    sampleRateSetting: 0
-    sampleRateOverride: 44100
-    compressionFormat: 1
-    quality: 1
-    conversionMode: 0
-  platformSettingOverrides: {}
-  forceToMono: 0
-  normalize: 1
-  preloadAudioData: 1
-  loadInBackground: 0
-  ambisonic: 0
-  3D: 1
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

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