代码合并
This commit is contained in:
@@ -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,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 84e24d973daa9564db536bd009ec11cc
|
||||
guid: 7922d1530e2c0f94f9ef1bdff77aa89b
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 080083324a409f24788f08ea7c670304
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -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);
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 424b00686a91cd64989e546f204155a5
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -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,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 98eb035eb7e5cc14694ed78d4215f579
|
||||
guid: 8b523f207d584d649bb29f4a06b5428d
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
|
||||
@@ -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:
|
||||
@@ -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));
|
||||
|
||||
@@ -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,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 56be1d651140a1d4fb90c3fb34136a4b
|
||||
guid: a81cd0646bee3624b941f3d0b2c272f4
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 928a5dbb2497f0145b1da8645720ac89
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -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:
|
||||
@@ -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);
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f56f94c154ec7d84eb464a1509810d78
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Reference in New Issue
Block a user