From 1b79ca871dff7a56dad8a9857f151011c1cfd9e3 Mon Sep 17 00:00:00 2001 From: chai Date: Fri, 18 Feb 2022 16:19:48 +0800 Subject: +CustomExecutionOrder --- .../Demo/Scenes/FPSCharacterController.unity | 30 ++++----- .../Scripts/FPSCharacterController.cs | 2 +- .../FPSControllerVelocity/Scripts/GroundChecker.cs | 2 +- .../Scripts/MainCameraFollow.cs | 2 +- .../FPSControllerVelocity/Scripts/Player.cs | 2 +- .../FPSControllerVelocity/Scripts/WallChecker.cs | 2 +- .../JamUtils/Scripts/Character/CameraFollow.cs | 2 +- .../Input/LiteInputManager/LiteInputManager.cs | 2 +- .../Assets/JamUtils/Scripts/Math/MathUtils.cs | 2 +- .../Assets/JamUtils/Scripts/UI/UIPanelBase.cs | 2 +- .../JamUtils/Scripts/Utils/ColliderUtility.cs | 2 +- .../JamUtils/Scripts/Utils/CustomExecutionOrder.cs | 72 ++++++++++++++++++++++ .../Scripts/Utils/CustomExecutionOrder.cs.meta | 11 ++++ .../Assets/JamUtils/Scripts/Utils/GizmosHandle.cs | 2 +- .../JamUtils/Smoothing/Scripts/SmoothUtil.cs | 2 +- 15 files changed, 110 insertions(+), 27 deletions(-) create mode 100644 JamHelper/Assets/JamUtils/Scripts/Utils/CustomExecutionOrder.cs create mode 100644 JamHelper/Assets/JamUtils/Scripts/Utils/CustomExecutionOrder.cs.meta (limited to 'JamHelper/Assets/JamUtils') diff --git a/JamHelper/Assets/JamUtils/FPSControllerVelocity/Demo/Scenes/FPSCharacterController.unity b/JamHelper/Assets/JamUtils/FPSControllerVelocity/Demo/Scenes/FPSCharacterController.unity index c8da4c6..4bcf0e9 100644 --- a/JamHelper/Assets/JamUtils/FPSControllerVelocity/Demo/Scenes/FPSCharacterController.unity +++ b/JamHelper/Assets/JamUtils/FPSControllerVelocity/Demo/Scenes/FPSCharacterController.unity @@ -749,7 +749,7 @@ Mesh: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: pb_Mesh35256 + m_Name: pb_Mesh32706 serializedVersion: 10 m_SubMeshes: - serializedVersion: 2 @@ -1726,7 +1726,7 @@ Mesh: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: pb_Mesh35268 + m_Name: pb_Mesh32718 serializedVersion: 10 m_SubMeshes: - serializedVersion: 2 @@ -2019,7 +2019,7 @@ Rigidbody: m_AngularDrag: 0.05 m_UseGravity: 0 m_IsKinematic: 0 - m_Interpolate: 0 + m_Interpolate: 1 m_Constraints: 0 m_CollisionDetection: 0 --- !u!135 &498490757 @@ -2140,7 +2140,7 @@ Mesh: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: pb_Mesh35188 + m_Name: pb_Mesh32626 serializedVersion: 10 m_SubMeshes: - serializedVersion: 2 @@ -7070,7 +7070,7 @@ Mesh: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: pb_Mesh34970 + m_Name: pb_Mesh32358 serializedVersion: 10 m_SubMeshes: - serializedVersion: 2 @@ -7234,7 +7234,7 @@ Mesh: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: pb_Mesh35352 + m_Name: pb_Mesh32822 serializedVersion: 10 m_SubMeshes: - serializedVersion: 2 @@ -7459,7 +7459,7 @@ Rigidbody: m_AngularDrag: 0.05 m_UseGravity: 1 m_IsKinematic: 0 - m_Interpolate: 0 + m_Interpolate: 1 m_Constraints: 0 m_CollisionDetection: 0 --- !u!59 &961102763 @@ -7580,7 +7580,7 @@ Mesh: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: pb_Mesh35090 + m_Name: pb_Mesh32500 serializedVersion: 10 m_SubMeshes: - serializedVersion: 2 @@ -7775,7 +7775,7 @@ Mesh: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: pb_Mesh35318 + m_Name: pb_Mesh32788 serializedVersion: 10 m_SubMeshes: - serializedVersion: 2 @@ -7939,7 +7939,7 @@ Mesh: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: pb_Mesh35102 + m_Name: pb_Mesh32536 serializedVersion: 10 m_SubMeshes: - serializedVersion: 2 @@ -8784,7 +8784,7 @@ Mesh: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: pb_Mesh35232 + m_Name: pb_Mesh32674 serializedVersion: 10 m_SubMeshes: - serializedVersion: 2 @@ -9026,7 +9026,7 @@ Rigidbody: m_AngularDrag: 0.05 m_UseGravity: 1 m_IsKinematic: 0 - m_Interpolate: 0 + m_Interpolate: 1 m_Constraints: 0 m_CollisionDetection: 0 --- !u!135 &1213064844 @@ -14086,7 +14086,7 @@ Mesh: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: pb_Mesh35062 + m_Name: pb_Mesh32472 serializedVersion: 10 m_SubMeshes: - serializedVersion: 2 @@ -14362,7 +14362,7 @@ Mesh: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: pb_Mesh35002 + m_Name: pb_Mesh32412 serializedVersion: 10 m_SubMeshes: - serializedVersion: 2 @@ -14526,7 +14526,7 @@ Mesh: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: pb_Mesh35244 + m_Name: pb_Mesh32686 serializedVersion: 10 m_SubMeshes: - serializedVersion: 2 diff --git a/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/FPSCharacterController.cs b/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/FPSCharacterController.cs index 3884a26..cf8928d 100644 --- a/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/FPSCharacterController.cs +++ b/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/FPSCharacterController.cs @@ -3,7 +3,7 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; -namespace JamTools +namespace JamUtils { // 第一人称角色控制 diff --git a/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/GroundChecker.cs b/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/GroundChecker.cs index a0bd4eb..5e27a02 100644 --- a/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/GroundChecker.cs +++ b/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/GroundChecker.cs @@ -2,7 +2,7 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; -namespace JamTools +namespace JamUtils { public class GroundChecker : MonoBehaviour diff --git a/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/MainCameraFollow.cs b/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/MainCameraFollow.cs index 87d1fe5..e310715 100644 --- a/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/MainCameraFollow.cs +++ b/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/MainCameraFollow.cs @@ -2,7 +2,7 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; -namespace JamTools +namespace JamUtils { [RequireComponent(typeof(Camera))] diff --git a/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/Player.cs b/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/Player.cs index f26d6ce..83454d1 100644 --- a/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/Player.cs +++ b/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/Player.cs @@ -2,7 +2,7 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; -namespace JamTools +namespace JamUtils { public class Player : MonoBehaviour diff --git a/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/WallChecker.cs b/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/WallChecker.cs index 8137670..423dcf6 100644 --- a/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/WallChecker.cs +++ b/JamHelper/Assets/JamUtils/FPSControllerVelocity/Scripts/WallChecker.cs @@ -2,7 +2,7 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; -namespace JamTools +namespace JamUtils { diff --git a/JamHelper/Assets/JamUtils/Scripts/Character/CameraFollow.cs b/JamHelper/Assets/JamUtils/Scripts/Character/CameraFollow.cs index c711f87..7a82857 100644 --- a/JamHelper/Assets/JamUtils/Scripts/Character/CameraFollow.cs +++ b/JamHelper/Assets/JamUtils/Scripts/Character/CameraFollow.cs @@ -2,7 +2,7 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; -namespace JamTools +namespace JamUtils { } \ No newline at end of file diff --git a/JamHelper/Assets/JamUtils/Scripts/Input/LiteInputManager/LiteInputManager.cs b/JamHelper/Assets/JamUtils/Scripts/Input/LiteInputManager/LiteInputManager.cs index b1b41ad..c2f6c26 100644 --- a/JamHelper/Assets/JamUtils/Scripts/Input/LiteInputManager/LiteInputManager.cs +++ b/JamHelper/Assets/JamUtils/Scripts/Input/LiteInputManager/LiteInputManager.cs @@ -2,7 +2,7 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; -namespace JamTools +namespace JamUtils { public class LiteInputManager : MonoBehaviour diff --git a/JamHelper/Assets/JamUtils/Scripts/Math/MathUtils.cs b/JamHelper/Assets/JamUtils/Scripts/Math/MathUtils.cs index fb2378e..befb5d7 100644 --- a/JamHelper/Assets/JamUtils/Scripts/Math/MathUtils.cs +++ b/JamHelper/Assets/JamUtils/Scripts/Math/MathUtils.cs @@ -2,7 +2,7 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; -namespace JamTools +namespace JamUtils { public class MathUtils diff --git a/JamHelper/Assets/JamUtils/Scripts/UI/UIPanelBase.cs b/JamHelper/Assets/JamUtils/Scripts/UI/UIPanelBase.cs index b3dee94..5df7587 100644 --- a/JamHelper/Assets/JamUtils/Scripts/UI/UIPanelBase.cs +++ b/JamHelper/Assets/JamUtils/Scripts/UI/UIPanelBase.cs @@ -2,7 +2,7 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; -namespace JamTools +namespace JamUtils { // diff --git a/JamHelper/Assets/JamUtils/Scripts/Utils/ColliderUtility.cs b/JamHelper/Assets/JamUtils/Scripts/Utils/ColliderUtility.cs index 3efe155..8c8225c 100644 --- a/JamHelper/Assets/JamUtils/Scripts/Utils/ColliderUtility.cs +++ b/JamHelper/Assets/JamUtils/Scripts/Utils/ColliderUtility.cs @@ -2,7 +2,7 @@ using System; using System.Collections.Generic; using UnityEngine; -namespace JamTools +namespace JamUtils { public static class ColliderUtility diff --git a/JamHelper/Assets/JamUtils/Scripts/Utils/CustomExecutionOrder.cs b/JamHelper/Assets/JamUtils/Scripts/Utils/CustomExecutionOrder.cs new file mode 100644 index 0000000..acef40f --- /dev/null +++ b/JamHelper/Assets/JamUtils/Scripts/Utils/CustomExecutionOrder.cs @@ -0,0 +1,72 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +namespace JamUtils +{ + [DefaultExecutionOrder(ORDER_EXECUTION)] + public class CustomExecutionOrder : MonoBehaviour + { + private const int ORDER_EXECUTION = -98; + + static CustomExecutionOrder _instance; + + public static CustomExecutionOrder Instance + { + get + { + if (_instance == null) + { + GameObject inst = new GameObject("CustomExecutionOrder"); + inst.hideFlags = HideFlags.DontSave; + DontDestroyOnLoad(inst); + + _instance = inst.AddComponent(); + } + return _instance; + } + } + + public event Action beforeFixedUpdate; + public event Action afterFixedUpdate; + + public event Action beforeUpdate; + public event Action afterUpdate; + + private void Awake() + { + StartCoroutine(WaitForEndOfFrame()); + StartCoroutine(WaitForFixedUpdate()); + } + + private IEnumerator WaitForEndOfFrame() + { + while (true) + { + yield return new WaitForEndOfFrame(); + if (afterUpdate != null) + afterUpdate(); + if (beforeFixedUpdate != null) + beforeFixedUpdate(); + } + } + + private IEnumerator WaitForFixedUpdate() + { + while (true) + { + yield return new WaitForFixedUpdate(); + if (afterFixedUpdate != null) + afterFixedUpdate(); + } + } + + private void Update() + { + if (beforeUpdate != null) + beforeUpdate(); + } + + } +} \ No newline at end of file diff --git a/JamHelper/Assets/JamUtils/Scripts/Utils/CustomExecutionOrder.cs.meta b/JamHelper/Assets/JamUtils/Scripts/Utils/CustomExecutionOrder.cs.meta new file mode 100644 index 0000000..a8e4dfc --- /dev/null +++ b/JamHelper/Assets/JamUtils/Scripts/Utils/CustomExecutionOrder.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fbaff1c60f455164fbaf0b027c216022 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: -98 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/JamHelper/Assets/JamUtils/Scripts/Utils/GizmosHandle.cs b/JamHelper/Assets/JamUtils/Scripts/Utils/GizmosHandle.cs index 360eecd..1c4c205 100644 --- a/JamHelper/Assets/JamUtils/Scripts/Utils/GizmosHandle.cs +++ b/JamHelper/Assets/JamUtils/Scripts/Utils/GizmosHandle.cs @@ -3,7 +3,7 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; -namespace JamTools +namespace JamUtils { public class GizmosHandle : MonoBehaviour diff --git a/JamHelper/Assets/JamUtils/Smoothing/Scripts/SmoothUtil.cs b/JamHelper/Assets/JamUtils/Smoothing/Scripts/SmoothUtil.cs index 606ff60..61fa0da 100644 --- a/JamHelper/Assets/JamUtils/Smoothing/Scripts/SmoothUtil.cs +++ b/JamHelper/Assets/JamUtils/Smoothing/Scripts/SmoothUtil.cs @@ -2,7 +2,7 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; -namespace JamTools +namespace JamUtils { public class SmoothUtil -- cgit v1.1-26-g67d0