代码合并

This commit is contained in:
MuHua-123
2024-11-08 18:15:06 +08:00
parent 5f169b90bb
commit 497b43a446
146 changed files with 2858 additions and 110 deletions
+3 -4
View File
@@ -1,10 +1,9 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary> 代理模块 </summary>
public abstract class ModuleAgent : MonoBehaviour {
public abstract void AgentNetwork(DataNetwork data);
public abstract void AgentLoadingNetwork(DataNetwork data);
protected abstract void Awake();
protected virtual ModuleCore ModuleCore => ModuleCore.I;
}
+1 -1
View File
@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 84e24d973daa9564db536bd009ec11cc
guid: 7922d1530e2c0f94f9ef1bdff77aa89b
MonoImporter:
externalObjects: {}
serializedVersion: 2
+10
View File
@@ -0,0 +1,10 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public abstract class ModuleAlgorithm<Data> {
/// <summary> 核心模块 </summary>
protected virtual ModuleCore ModuleCore => ModuleCore.I;
/// <summary> 执行算法 </summary>
public abstract void Compute(Data data);
}
+11
View File
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 080083324a409f24788f08ea7c670304
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+16
View File
@@ -0,0 +1,16 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public abstract class ModuleAssets<Data> : MonoBehaviour {
[SerializeField] protected List<Data> assets;
/// <summary> 资产列表 </summary>
public virtual List<Data> Assets => assets;
/// <summary> 必须要初始化 </summary>
protected abstract void Awake();
/// <summary> 核心模块 </summary>
protected virtual ModuleCore ModuleCore => ModuleCore.I;
/// <summary> 循环列表 </summary>
public abstract void ForEach(Action<Data> action);
}
+11
View File
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 424b00686a91cd64989e546f204155a5
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+35 -28
View File
@@ -4,36 +4,43 @@ using System.Collections.Generic;
using UnityEngine;
using MuHua;
/// <summary>
/// 核心模块,提供全部的抽象接口
/// </summary>
public class ModuleCore : Module<ModuleCore> {
/*---------------------------------------------功能模块--------------------------------------------------------*/
/// <summary> 视频模块 </summary>
public ModuleVideo ModuleVideo;
/// <summary> 场景模块 </summary>
public ModuleScene ModuleScene;
/// <summary> 代理模块 </summary>
public ModuleAgent ModuleAgent;
/*---------------------------------------------页面模块--------------------------------------------------------*/
/// <summary> 当前的主要页面模块 (UIDocument) </summary>
public ModuleUIPage CurrentPage;
#region
/// <summary> 预设模板资产 </summary>
public ModuleAssets<DataPresetsPlate> PresetsPlateAssets;
#endregion
#region
/// <summary> 不会被销毁的全局唯一页面模块 (UIDocument) </summary>
public ModuleUIPage GlobalPage;
/*---------------------------------------------页面模块--------------------------------------------------------*/
/// <summary> 加载页面模块 (回调Action) </summary>
public ModuleUIPanel<Action> LoadingPanel;
/// <summary> 弹出提示模块 </summary>
public ModuleUIPanel<string> PopupPromptPanel;
/// <summary> 弹出窗口模块 </summary>
public ModuleUIPanel<DataPopup> PopupWindowPanel;
/// <summary> 当前的主要页面模块 (UIDocument) </summary>
public ModuleUIPage CurrentPage;
/// <summary> 预设模板窗口 (回调Action) </summary>
public ModuleUIWindow<Action> PresetsPlateWindow;
#endregion
/// <summary> 设备视频交互模块 </summary>
public ModuleUIPanel<DataVideo> VideoPanel;
/// <summary> 设备视频图文交互模块 </summary>
public ModuleUIPanel<DataVideoImage> VideoImagePanel;
/// <summary> 学习视频模块 (回调Action) </summary>
public ModuleUIPanel<Action> LearningVideoPanel;
/// <summary> 全屏播放视频模块 (回调Action) </summary>
public ModuleUIPanel<Action> FullScreenVideoPanel;
#region
/// <summary> 代理模块 </summary>
public ModuleAgent ModuleAgent;
/// <summary> 根据设计点生成边缘算法模块 </summary>
public ModuleAlgorithm<DataPlate> GenerateEdge = new AlgorithmGenerateEdge();
/// <summary> 边缘排序算法模块 </summary>
public ModuleAlgorithm<DataPlate> EdgeSort = new AlgorithmEdge();
/// <summary> 多边形算法模块 </summary>
public ModuleAlgorithm<DataPlate> Polygon = new AlgorithmPolygon();
/// <summary> 板片设计模块 </summary>
public ModulePlateDesign PlateDesign;
/// <summary> 板片设计相机视图 </summary>
public ModuleViewCamera PlateDesignViewCamera;
/// <summary> 板片烘焙相机视图 </summary>
public ModuleViewCamera PlateBakingViewCamera;
#endregion
#region
/// <summary> 板片设计输入模块 </summary>
public ModuleViewInput PlateDesignViewInput;
/// <summary> 板片烘焙输入模块 </summary>
public ModuleViewInput PlateBakingViewInput;
#endregion
}
+1 -1
View File
@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 98eb035eb7e5cc14694ed78d4215f579
guid: 8b523f207d584d649bb29f4a06b5428d
MonoImporter:
externalObjects: {}
serializedVersion: 2
+61
View File
@@ -0,0 +1,61 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public abstract class ModulePlateDesign : MonoBehaviour {
/// <summary> 必须初始化 </summary>
protected virtual void Awake() {
ModuleCore.PlateDesign = this;
}
/// <summary> 核心模块 </summary>
protected virtual ModuleCore ModuleCore => ModuleCore.I;
/// <summary> 视图相机模块 </summary>
protected virtual ModuleViewCamera ViewCamera => ModuleCore.PlateDesignViewCamera;
/// <summary> 添加一个板片数据 </summary>
public abstract void AddData(DataPlate data);
#region
/// <summary> 是否有效的边缘点 </summary>
public abstract bool IsValidEdgePoint { get; }
/// <summary> 返回当前边缘点位置 </summary>
public abstract Vector3 EdgePointPosition { get; }
/// <summary> 选中一个边缘点 </summary>
public abstract void SelectEdgePoint(Vector3 screenPosition);
/// <summary> 改变边缘点位置 </summary>
public abstract void ChangeEdgePoint(Vector3 localPosition);
/// <summary> 插入一个边缘点 </summary>
public abstract void InsertEdgePoint(Vector3 screenPosition);
/// <summary> 释放边缘点 </summary>
public abstract void ReleaseEdgePoint();
#endregion
#region
/// <summary> 是否有效的设计点 </summary>
public abstract bool IsValidDesignPoint { get; }
/// <summary> 返回当前设计点位置 </summary>
public abstract Vector3 DesignPointPosition { get; }
/// <summary> 选中一个设计点 </summary>
public abstract void SelectDesignPoint(Vector3 screenPosition);
/// <summary> 改变设计点位置 </summary>
public abstract void ChangeDesignPoint(Vector3 localPosition);
/// <summary> 插入一个设计点 </summary>
public abstract void InsertDesignPoint(Vector3 screenPosition);
/// <summary> 释放设计点 </summary>
public abstract void ReleaseDesignPoint();
#endregion
#region 线
/// <summary> 是否有效的贝塞尔点 </summary>
public abstract bool IsValidBezierPoint { get; }
/// <summary> 返回当前贝塞尔点位置 </summary>
public abstract Vector3 BezierPointPosition { get; }
/// <summary> 选中一个贝塞尔点 </summary>
public abstract void SelectBezierPoint(Vector3 screenPosition);
/// <summary> 改变贝塞尔点位置 </summary>
public abstract void ChangeBezierPoint(Vector3 localPosition);
/// <summary> 释放贝塞尔点 </summary>
public abstract void ReleaseBezierPoint();
#endregion
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: c5b9eb7c85f467e42a3632003cc5c1c7
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+3 -3
View File
@@ -5,9 +5,9 @@ using UnityEngine;
public abstract class ModuleScene : MonoBehaviour {
protected virtual ModuleCore ModuleCore => ModuleCore.I;
protected virtual void Awake() {
if (ModuleCore.ModuleScene != null) { Destroy(gameObject); return; }
ModuleCore.ModuleScene = this;
DontDestroyOnLoad(gameObject);
//if (ModuleCore.ModuleScene != null) { Destroy(gameObject); return; }
//ModuleCore.ModuleScene = this;
//DontDestroyOnLoad(gameObject);
}
public virtual void LoadSceneAsync(string scene) {
StartCoroutine(ILoadSceneAsync(scene));
+8 -9
View File
@@ -5,15 +5,14 @@ using UnityEngine.UIElements;
public abstract class ModuleUIPage : MonoBehaviour {
public UIDocument document;
/// <summary> 根目录文档 </summary>
public VisualElement root => document.rootVisualElement;
/// <summary> 必须初始化 </summary>
protected abstract void Awake();
/// <summary> 核心模块 </summary>
protected virtual ModuleCore ModuleCore => ModuleCore.I;
protected virtual void Awake() => ModuleCore.FunctionRegister(this);
public void Add(VisualElement child) {
root.Add(child);
}
public T Q<T>(string name = null, string className = null) where T : VisualElement {
return root.Q<T>(name, className);
}
/// <summary> 添加UI元素 </summary>
public void Add(VisualElement child) => root.Add(child);
/// <summary> 查询UI元素 </summary>
public T Q<T>(string name = null, string className = null) where T : VisualElement => root.Q<T>(name, className);
}
+1 -1
View File
@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 56be1d651140a1d4fb90c3fb34136a4b
guid: a81cd0646bee3624b941f3d0b2c272f4
MonoImporter:
externalObjects: {}
serializedVersion: 2
+16
View File
@@ -0,0 +1,16 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public abstract class ModuleUIWindow<Data> : MonoBehaviour {
/// <summary> 绑定的页面 </summary>
public ModuleUIPage ModuleUIPage;
/// <summary> 必须初始化 </summary>
public abstract void Awake();
/// <summary> 核心模块 </summary>
protected virtual ModuleCore ModuleCore => ModuleCore.I;
/// <summary> 打开模块,并且传进参数 </summary>
public abstract void Open(Data data);
/// <summary> 关闭模块 </summary>
public abstract void Close();
}
+11
View File
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 928a5dbb2497f0145b1da8645720ac89
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+33
View File
@@ -0,0 +1,33 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public abstract class ModuleViewCamera : MonoBehaviour {
/// <summary> 视图空间位置 </summary>
public abstract Vector3 Position { get; set; }
/// <summary> 视图空间旋转 </summary>
public abstract Vector3 EulerAngles { get; set; }
/// <summary> 视图空间缩放 </summary>
public abstract Vector3 LocalScale { get; set; }
/// <summary> 相机正交大小 </summary>
public abstract float OrthographicSize { get; set; }
/// <summary> 当前视图空间的中心点 </summary>
public abstract Vector3 CurrentViewSpaceCenter { get; }
/// <summary> 相机的世界位置 </summary>
public abstract Vector3 CameraWorldPosition { get; }
/// <summary> 渲染纹理 </summary>
public abstract RenderTexture RenderTexture { get; }
protected abstract void Awake();
protected virtual ModuleCore ModuleCore => ModuleCore.I;
/// <summary> 更新渲染纹理 </summary>
public abstract void UpdateRenderTexture(int x, int y);
/// <summary> 屏幕坐标转换世界坐标 </summary>
public abstract Vector2 ScreenToWorldPosition(Vector2 screenPosition);
/// <summary> 屏幕坐标转换世界坐标 (0-1) </summary>
public abstract Vector2 ScreenToViewPosition(Vector2 screenPosition);
/// <summary> 从屏幕坐标发射一条射线 </summary>
public abstract Ray ScreenPointToRay(Vector2 screenPosition);
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 93bd8c351a140654da540f55d0d7091f
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+45
View File
@@ -0,0 +1,45 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public abstract class ModuleViewInput : MonoBehaviour {
/// <summary> 主键输入模块类型 </summary>
public abstract event Action<Type> OnInputType;
/// <summary> 必须要初始化 </summary>
protected abstract void Awake();
/// <summary> 核心模块 </summary>
protected virtual ModuleCore ModuleCore => ModuleCore.I;
public abstract void SetPrimaryKeyInput<T>(T inputUnit) where T : ModuleViewInputUnit;
/// <summary> 按下鼠标左键 </summary>
public abstract void DownLeftMouse(DataMouseInput data);
/// <summary> 拖拽鼠标左键 </summary>
public abstract void DragLeftMouse(DataMouseInput data);
/// <summary> 移动鼠标左键 </summary>
public abstract void MoveLeftMouse(DataMouseInput data);
/// <summary> 释放鼠标左键 </summary>
public abstract void ReleaseLeftMouse(DataMouseInput data);
/// <summary> 按下鼠标右键 </summary>
public abstract void DownRightMouse(DataMouseInput data);
/// <summary> 拖拽鼠标右键 </summary>
public abstract void DragRightMouse(DataMouseInput data);
/// <summary> 移动鼠标右键 </summary>
public abstract void MoveRightMouse(DataMouseInput data);
/// <summary> 释放鼠标右键 </summary>
public abstract void ReleaseRightMouse(DataMouseInput data);
/// <summary> 按下鼠标中键 </summary>
public abstract void DownMiddleMouse(DataMouseInput data);
/// <summary> 拖拽鼠标中键 </summary>
public abstract void DragMiddleMouse(DataMouseInput data);
/// <summary> 移动鼠标中键 </summary>
public abstract void MoveMiddleMouse(DataMouseInput data);
/// <summary> 释放鼠标中键 </summary>
public abstract void ReleaseMiddleMouse(DataMouseInput data);
/// <summary> 鼠标滚轮 </summary>
public abstract void ScrollWheel(DataMouseInput data);
}
+11
View File
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: f56f94c154ec7d84eb464a1509810d78
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant: