diff --git a/Assets/ModuleCore/ModuleData/ModuleAnalysis.meta b/Assets/ModuleCore/Module.meta similarity index 77% rename from Assets/ModuleCore/ModuleData/ModuleAnalysis.meta rename to Assets/ModuleCore/Module.meta index 6433c4f..99fcdf5 100644 --- a/Assets/ModuleCore/ModuleData/ModuleAnalysis.meta +++ b/Assets/ModuleCore/Module.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 0ad7c1a3ba27b1144b06e3242a1a64fa +guid: 82d391f556304004096b011bbd27de11 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Assets/ModuleCore/Module/ModuleConst.meta b/Assets/ModuleCore/Module/ModuleConst.meta new file mode 100644 index 0000000..0b086a8 --- /dev/null +++ b/Assets/ModuleCore/Module/ModuleConst.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a44844ae79b98fd42a13d84fa3b87f63 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ModuleCore/ModuleData.meta b/Assets/ModuleCore/Module/ModuleData.meta similarity index 77% rename from Assets/ModuleCore/ModuleData.meta rename to Assets/ModuleCore/Module/ModuleData.meta index 1e11b92..730497b 100644 --- a/Assets/ModuleCore/ModuleData.meta +++ b/Assets/ModuleCore/Module/ModuleData.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 6e9a7362d41d8614c910df28f693c782 +guid: 3da2a5e816dc8054c8c154faf463f46f folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Assets/ModuleCore/Module/ModuleEnum.meta b/Assets/ModuleCore/Module/ModuleEnum.meta new file mode 100644 index 0000000..340a14d --- /dev/null +++ b/Assets/ModuleCore/Module/ModuleEnum.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 08087e76abe4f1a44b1b02c9a716ba1f +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ModuleCore/Module/ModuleEnum/EnumCameraMode.cs b/Assets/ModuleCore/Module/ModuleEnum/EnumCameraMode.cs new file mode 100644 index 0000000..0eac8b3 --- /dev/null +++ b/Assets/ModuleCore/Module/ModuleEnum/EnumCameraMode.cs @@ -0,0 +1,16 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +/// +/// 相机模式 +/// +public enum EnumCameraMode { + None,// 无 + + // FixedEdit,// 固定编辑 + + // FreeEdit,// 自由编辑 + + MoveAxis,// 移轴 +} diff --git a/Assets/ModuleCore/Module/ModuleEnum/EnumCameraMode.cs.meta b/Assets/ModuleCore/Module/ModuleEnum/EnumCameraMode.cs.meta new file mode 100644 index 0000000..bd6abdd --- /dev/null +++ b/Assets/ModuleCore/Module/ModuleEnum/EnumCameraMode.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0e190b0f10e563546bd18df3605da42f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ModuleCore/Module/ModuleEnum/EnumInputMode.cs b/Assets/ModuleCore/Module/ModuleEnum/EnumInputMode.cs new file mode 100644 index 0000000..e34d60a --- /dev/null +++ b/Assets/ModuleCore/Module/ModuleEnum/EnumInputMode.cs @@ -0,0 +1,18 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +/// +/// 输入模式 +/// +public enum EnumInputMode { + None,// 无 + + // FixedEdit,// 固定编辑 + + // FixedPreview,// 固定编辑 + + // FreeEdit,// 自由编辑 + + Standard,// 第三人称 +} diff --git a/Assets/ModuleCore/Module/ModuleEnum/EnumInputMode.cs.meta b/Assets/ModuleCore/Module/ModuleEnum/EnumInputMode.cs.meta new file mode 100644 index 0000000..c19e33f --- /dev/null +++ b/Assets/ModuleCore/Module/ModuleEnum/EnumInputMode.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4fc2f524dbb594a40a4a13d3d253c53e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ModuleCore/Module/ModuleEnum/EnumPage.cs b/Assets/ModuleCore/Module/ModuleEnum/EnumPage.cs new file mode 100644 index 0000000..efcf6df --- /dev/null +++ b/Assets/ModuleCore/Module/ModuleEnum/EnumPage.cs @@ -0,0 +1,18 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +/// +/// 页面类型 +/// +public enum EnumPage { + None, + + Menu,// 主菜单 + Scene,// 场景选择 + Prepare,// 准备游戏 + Battle,// 战斗页面 + Settlement,// 结算页面 + + Settings,// 游戏设置 +} diff --git a/Assets/ModuleCore/Module/ModuleEnum/EnumPage.cs.meta b/Assets/ModuleCore/Module/ModuleEnum/EnumPage.cs.meta new file mode 100644 index 0000000..2ddde5b --- /dev/null +++ b/Assets/ModuleCore/Module/ModuleEnum/EnumPage.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 398ffa613e85ac24b9a554499e7d6784 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ModuleCore/Module/ModuleEnum/EnumRunningMode.cs b/Assets/ModuleCore/Module/ModuleEnum/EnumRunningMode.cs new file mode 100644 index 0000000..e310546 --- /dev/null +++ b/Assets/ModuleCore/Module/ModuleEnum/EnumRunningMode.cs @@ -0,0 +1,12 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +/// +/// 运行模式 +/// +public enum EnumRunningMode { + None,// 无模式 + + Standard,// 标准模式 +} diff --git a/Assets/ModuleCore/Module/ModuleEnum/EnumRunningMode.cs.meta b/Assets/ModuleCore/Module/ModuleEnum/EnumRunningMode.cs.meta new file mode 100644 index 0000000..cd45cd0 --- /dev/null +++ b/Assets/ModuleCore/Module/ModuleEnum/EnumRunningMode.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 043dda22a291d664fa2124109ddc8dd6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ModuleCore/ModuleData/ModuleAnalysis/DataAnalysis.cs b/Assets/ModuleCore/ModuleAnalysis/DataAnalysis.cs similarity index 100% rename from Assets/ModuleCore/ModuleData/ModuleAnalysis/DataAnalysis.cs rename to Assets/ModuleCore/ModuleAnalysis/DataAnalysis.cs diff --git a/Assets/ModuleCore/ModuleData/ModuleAnalysis/DataAnalysis.cs.meta b/Assets/ModuleCore/ModuleAnalysis/DataAnalysis.cs.meta similarity index 100% rename from Assets/ModuleCore/ModuleData/ModuleAnalysis/DataAnalysis.cs.meta rename to Assets/ModuleCore/ModuleAnalysis/DataAnalysis.cs.meta diff --git a/Assets/ModuleCore/ModuleData/ModuleAnalysis/DataStock.cs b/Assets/ModuleCore/ModuleAnalysis/DataStock.cs similarity index 100% rename from Assets/ModuleCore/ModuleData/ModuleAnalysis/DataStock.cs rename to Assets/ModuleCore/ModuleAnalysis/DataStock.cs diff --git a/Assets/ModuleCore/ModuleData/ModuleAnalysis/DataStock.cs.meta b/Assets/ModuleCore/ModuleAnalysis/DataStock.cs.meta similarity index 100% rename from Assets/ModuleCore/ModuleData/ModuleAnalysis/DataStock.cs.meta rename to Assets/ModuleCore/ModuleAnalysis/DataStock.cs.meta diff --git a/Assets/ModuleCore/ModuleSingle.meta b/Assets/ModuleCore/ModuleSingle.meta new file mode 100644 index 0000000..26fb8d0 --- /dev/null +++ b/Assets/ModuleCore/ModuleSingle.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3d43d8ee099053249a2aba58d719bf26 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ModuleCore/ModuleSingle/SingleManager.cs b/Assets/ModuleCore/ModuleSingle/SingleManager.cs new file mode 100644 index 0000000..3d00b48 --- /dev/null +++ b/Assets/ModuleCore/ModuleSingle/SingleManager.cs @@ -0,0 +1,49 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using MuHua; + +/// +/// 游戏管理 +/// +public class SingleManager : ModuleSingle { + + /// 运行模式 + public static EnumRunningMode runningMode; + + /// 设置运行模式 + public static void SetRunningMode(EnumRunningMode runningMode) { + SingleManager.runningMode = runningMode; + } + + protected override void Awake() { + NoReplace(); + // ManagerScene.OnComplete += ManagerScene_OnComplete; + } + private void Start() { + // ModuleUI.Jump(EnumPage.Menu); + // ModuleInput.Mode(EnumInputMode.None); + // ModuleCamera.Mode(EnumCameraMode.None); + // SceneManager.LoadScene("MenuScene"); + } + + private void ManagerScene_OnComplete() { + // if (runningMode == EnumRunningMode.None) { + // ModuleUI.Jump(EnumPage.Menu); + // ModuleInput.Mode(EnumInputMode.None); + // ModuleCamera.Mode(EnumCameraMode.None); + // } + // if (runningMode == EnumRunningMode.Standard) { + // ModuleUI.Jump(EnumPage.Battle); + // // ModuleInput.Mode(EnumInputMode.ThirdPerson); + // // ModuleCamera.Mode(EnumCameraMode.ThirdPerson); + // } + } + + public void StartGame() { + // ManagerScene.LoadScene(null); + // ModuleUI.Jump(EnumPage.Battle); + // ModuleInput.Mode(EnumInputMode.Standard); + // ModuleCamera.Mode(EnumCameraMode.MoveAxis); + } +} diff --git a/Assets/ModuleCore/ModuleSingle/SingleManager.cs.meta b/Assets/ModuleCore/ModuleSingle/SingleManager.cs.meta new file mode 100644 index 0000000..01d438d --- /dev/null +++ b/Assets/ModuleCore/ModuleSingle/SingleManager.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 583ea9bd27e0e034d89711b923d7f4a1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ModuleCore/ModuleTools.meta b/Assets/ModuleCore/ModuleTools.meta new file mode 100644 index 0000000..8951f9d --- /dev/null +++ b/Assets/ModuleCore/ModuleTools.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 50b48c8fb325a394db1ead28dc81b13f +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ModuleCore/ModuleTools/GameViewConsole.cs b/Assets/ModuleCore/ModuleTools/GameViewConsole.cs new file mode 100644 index 0000000..2acdc31 --- /dev/null +++ b/Assets/ModuleCore/ModuleTools/GameViewConsole.cs @@ -0,0 +1,125 @@ +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.InputSystem; + +/// +/// 可视控制台 +/// +public class GameViewConsole : MonoBehaviour { + + private struct Log { + public string Message; + public string StackTrace; + public LogType LogType; + } + + + #region Inspector 面板属性 + + [Tooltip("摇动开启控制台?")] public bool ShakeToOpen = true; + [Tooltip("窗口打开加速度")] public float shakeAcceleration = 3f; + [Tooltip("是否保持一定数量的日志")] public bool restrictLogCount = false; + [Tooltip("最大日志数")] public int maxLogs = 1000; + + #endregion + + private readonly List logs = new List(); + private Log log; + private Vector2 scrollPosition; + private bool visible; + public bool collapse; + + private static readonly Dictionary logTypeColors = new Dictionary + { + {LogType.Assert, Color.white}, + {LogType.Error, Color.red}, + {LogType.Exception, Color.red}, + {LogType.Log, Color.white}, + {LogType.Warning, Color.yellow}, + }; + + private const string ChinarWindowTitle = "服务器-控制台"; + private const int Edge = 20; + private readonly GUIContent clearLabel = new GUIContent("清空", "清空控制台内容"); + private readonly GUIContent hiddenLabel = new GUIContent("合并信息", "隐藏重复信息"); + + private readonly Rect titleBarRect = new Rect(0, 0, 10000, 20); + private Rect windowRect = new Rect(Edge, Edge, Screen.width - (Edge * 2), Screen.height * 0.5f - (Edge * 2)); + + + private void OnEnable() { + Application.logMessageReceived += HandleLog; + } + + + private void OnDisable() { + Application.logMessageReceived -= HandleLog; + } + + + private void Update() { + if (ShakeToOpen && Input.acceleration.sqrMagnitude > shakeAcceleration) visible = true; + } + + + private void OnGUI() { + if (!visible) return; + windowRect = GUILayout.Window(666, windowRect, DrawConsoleWindow, ChinarWindowTitle); + } + + public void OnSwitchView(InputValue inputValue) { + visible = !visible; + } + + private void DrawConsoleWindow(int windowid) { + DrawLogsList(); + DrawToolbar(); + GUI.DragWindow(titleBarRect); + } + + + private void DrawLogsList() { + scrollPosition = GUILayout.BeginScrollView(scrollPosition); + for (var i = 0; i < logs.Count; i++) { + if (collapse && i > 0) if (logs[i].Message != logs[i - 1].Message) continue; + GUI.contentColor = logTypeColors[logs[i].LogType]; + GUILayout.Label(logs[i].Message); + } + GUILayout.EndScrollView(); + GUI.contentColor = Color.white; + } + + + private void DrawToolbar() { + GUILayout.BeginHorizontal(); + if (GUILayout.Button(clearLabel)) { + logs.Clear(); + } + + collapse = GUILayout.Toggle(collapse, hiddenLabel, GUILayout.ExpandWidth(false)); + GUILayout.EndHorizontal(); + } + + + private void HandleLog(string message, string stackTrace, LogType type) { + logs.Add(new Log { + Message = message, + StackTrace = stackTrace, + LogType = type, + }); + DeleteExcessLogs(); + } + + + private void DeleteExcessLogs() { + if (!restrictLogCount) return; + var amountToRemove = Mathf.Max(logs.Count - maxLogs, 0); + print(amountToRemove); + if (amountToRemove == 0) { + return; + } + + logs.RemoveRange(0, amountToRemove); + } + +} diff --git a/Assets/ModuleCore/ModuleTools/GameViewConsole.cs.meta b/Assets/ModuleCore/ModuleTools/GameViewConsole.cs.meta new file mode 100644 index 0000000..914ed07 --- /dev/null +++ b/Assets/ModuleCore/ModuleTools/GameViewConsole.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 17521a3fbf0da654cb1743fe94350289 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ModuleCore/ModuleUI/ModuleUI.cs b/Assets/ModuleCore/ModuleUI/ModuleUI.cs index 6a430e9..6c5d423 100644 --- a/Assets/ModuleCore/ModuleUI/ModuleUI.cs +++ b/Assets/ModuleCore/ModuleUI/ModuleUI.cs @@ -1,14 +1,24 @@ +using System; using System.Collections; using System.Collections.Generic; using UnityEngine; +using UnityEngine.UIElements; using MuHua; /// /// UI模块 /// public class ModuleUI : ModuleSingle { + public static EnumPage page; + public static event Action OnJumpPage; + public UIDocument document;// 绑定文档 + + /// 根目录文档 + public VisualElement root => document.rootVisualElement; protected override void Awake() => NoReplace(); + /// 跳转页面 + public static void Jump(EnumPage pageType) => OnJumpPage?.Invoke(pageType); } diff --git a/Assets/ModuleCore/ModuleUIPage.meta b/Assets/ModuleCore/ModuleUI/ModuleUIPage.meta similarity index 100% rename from Assets/ModuleCore/ModuleUIPage.meta rename to Assets/ModuleCore/ModuleUI/ModuleUIPage.meta diff --git a/Assets/ModuleCore/ModuleUIPage/UITestPage.cs b/Assets/ModuleCore/ModuleUI/ModuleUIPage/UITestPage.cs similarity index 100% rename from Assets/ModuleCore/ModuleUIPage/UITestPage.cs rename to Assets/ModuleCore/ModuleUI/ModuleUIPage/UITestPage.cs diff --git a/Assets/ModuleCore/ModuleUIPage/UITestPage.cs.meta b/Assets/ModuleCore/ModuleUI/ModuleUIPage/UITestPage.cs.meta similarity index 100% rename from Assets/ModuleCore/ModuleUIPage/UITestPage.cs.meta rename to Assets/ModuleCore/ModuleUI/ModuleUIPage/UITestPage.cs.meta diff --git a/Assets/ModuleCore/ModuleUI/ModuleUIPanel.meta b/Assets/ModuleCore/ModuleUI/ModuleUIPanel.meta new file mode 100644 index 0000000..99fe413 --- /dev/null +++ b/Assets/ModuleCore/ModuleUI/ModuleUIPanel.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 217b5fdf76c9e1e4abbb9bd77f28883e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ModuleCore/ModuleVisual.meta b/Assets/ModuleCore/ModuleVisual.meta new file mode 100644 index 0000000..31c7231 --- /dev/null +++ b/Assets/ModuleCore/ModuleVisual.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c6367a8584682b4448e1412bc5492272 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ModuleCore/ModuleVisual/ModuleVisual.cs b/Assets/ModuleCore/ModuleVisual/ModuleVisual.cs new file mode 100644 index 0000000..c20c62d --- /dev/null +++ b/Assets/ModuleCore/ModuleVisual/ModuleVisual.cs @@ -0,0 +1,15 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using MuHua; + +/// +/// 可视化模块 +/// +public class ModuleVisual : ModuleSingle { + + // public VisualController KinesisController; + + protected override void Awake() => NoReplace(); + +} diff --git a/Packages/Tools/Runtime/ModuleCore/ModuleVisual.cs.meta b/Assets/ModuleCore/ModuleVisual/ModuleVisual.cs.meta similarity index 83% rename from Packages/Tools/Runtime/ModuleCore/ModuleVisual.cs.meta rename to Assets/ModuleCore/ModuleVisual/ModuleVisual.cs.meta index bb8fb63..cff430d 100644 --- a/Packages/Tools/Runtime/ModuleCore/ModuleVisual.cs.meta +++ b/Assets/ModuleCore/ModuleVisual/ModuleVisual.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: aff4fda1c9fd8164384489f6750e34f4 +guid: 925869fcfe1fe4c4fa159c8cbf3314b3 MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Assets/ModuleCore/ModuleVisual/VisualController.cs b/Assets/ModuleCore/ModuleVisual/VisualController.cs new file mode 100644 index 0000000..63d6bc3 --- /dev/null +++ b/Assets/ModuleCore/ModuleVisual/VisualController.cs @@ -0,0 +1,21 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +/// +/// 可视化控制器 +/// +public abstract class VisualController : MonoBehaviour { + /// 更新可视化内容 + public abstract void UpdateVisual(ref T visual); + /// 释放可视化内容 + public abstract void ReleaseVisual(T visual); + + /// 创建可视化内容 + public static void Create(ref Type value, Transform original, Transform parent) { + if (value != null) { return; } + Transform temp = Instantiate(original, parent); + temp.gameObject.SetActive(true); + value = temp.GetComponent(); + } +} diff --git a/Assets/ModuleCore/ModuleVisual/VisualController.cs.meta b/Assets/ModuleCore/ModuleVisual/VisualController.cs.meta new file mode 100644 index 0000000..36cc5f2 --- /dev/null +++ b/Assets/ModuleCore/ModuleVisual/VisualController.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2f5703f8ca1d43d479d541a0a08552e1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/Tools/Runtime/ModuleCore/ModuleVisual.cs b/Packages/Tools/Runtime/ModuleCore/ModuleVisual.cs deleted file mode 100644 index 156ad30..0000000 --- a/Packages/Tools/Runtime/ModuleCore/ModuleVisual.cs +++ /dev/null @@ -1,27 +0,0 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; - -namespace MuHua { - /// - /// 数据可视化 - /// - public class ModuleVisual { - /// 创建可视化内容 - public static void Create(ref Type value, Transform original, Transform parent) { - if (value != null) { return; } - Transform temp = CreateTransform(original, parent); - value = temp.GetComponent(); - } - /// 创建Transform - public static Transform CreateTransform(Transform original, Transform parent) { - Transform temp = Transform.Instantiate(original, parent); - temp.gameObject.SetActive(true); - return temp; - } - /// 删除可视化内容 - public static void Remove(Type visual) where Type : Component { - if (visual != null) { GameObject.Destroy(visual.gameObject); } - } - } -} \ No newline at end of file diff --git a/Packages/URPExtend/Runtime/RenderPass/SRFOutlinePass.cs b/Packages/URPExtend/Runtime/RenderPass/SRFOutlinePass.cs index 57ea228..b6d9bf2 100644 --- a/Packages/URPExtend/Runtime/RenderPass/SRFOutlinePass.cs +++ b/Packages/URPExtend/Runtime/RenderPass/SRFOutlinePass.cs @@ -4,13 +4,11 @@ using UnityEngine; using UnityEngine.Rendering; using UnityEngine.Rendering.Universal; -namespace MuHua -{ +namespace MuHua { /// /// 轮廓渲染设置 /// - public class SRFOutlineSettings - { + public class SRFOutlineSettings { /// 辅助材质 public Material unlit; /// 轮廓材质 @@ -25,8 +23,7 @@ namespace MuHua /// /// 轮廓渲染通道 /// - public class SRFOutlinePass : ScriptableRenderPass - { + public class SRFOutlinePass : ScriptableRenderPass { public const string ProfilerTag = "Outline"; /// 渲染设置 @@ -38,8 +35,7 @@ namespace MuHua public RTHandle outlineRTHandle; /// 渲染前设置 - public void Setup(SRFOutlineSettings settings, in RenderingData renderingData) - { + public void Setup(SRFOutlineSettings settings, in RenderingData renderingData) { this.settings = settings; renderPassEvent = settings.renderPassEvent; RenderTextureDescriptor descriptor = renderingData.cameraData.cameraTargetDescriptor; @@ -48,8 +44,7 @@ namespace MuHua RenderingUtils.ReAllocateIfNeeded(ref tempRTHandle, descriptor, name: "TempRT"); } - public override void Execute(ScriptableRenderContext context, ref RenderingData renderingData) - { + public override void Execute(ScriptableRenderContext context, ref RenderingData renderingData) { if (renderingData.cameraData.cameraType == CameraType.SceneView || renderingData.cameraData.cameraType == CameraType.Preview) return; CommandBuffer command = CommandBufferPool.Get(ProfilerTag); @@ -78,16 +73,13 @@ namespace MuHua outlineRTHandle?.Release(); } - public void DrawRenderer(CommandBuffer command, Material material) - { - for (int i = 0; i < settings.renderObjs.Length; i++) - { + public void DrawRenderer(CommandBuffer command, Material material) { + for (int i = 0; i < settings.renderObjs.Length; i++) { Renderer renderer = settings.renderObjs[i]; if (renderer == null) { continue; } // 遍历所有的子网格 - for (int subMeshIndex = 0; subMeshIndex < renderer.sharedMaterials.Length; subMeshIndex++) - { + for (int subMeshIndex = 0; subMeshIndex < renderer.sharedMaterials.Length; subMeshIndex++) { command.DrawRenderer(renderer, material, subMeshIndex, 0); } }