合并代码
This commit is contained in:
@@ -2,9 +2,24 @@ using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public abstract class ModuleAlgorithm<Data> {
|
||||
/// <summary>
|
||||
/// 算法模块
|
||||
/// </summary>
|
||||
/// <typeparam name="Data"></typeparam>
|
||||
public abstract class ModuleAlgorithm<Data> : MonoBehaviour {
|
||||
/// <summary> 必须要初始化 </summary>
|
||||
protected abstract void Awake();
|
||||
/// <summary> 核心模块 </summary>
|
||||
protected virtual ModuleCore ModuleCore => ModuleCore.I;
|
||||
|
||||
/// <summary> 执行算法 </summary>
|
||||
public abstract void Compute(Data data);
|
||||
}
|
||||
/// <summary>
|
||||
/// 单个算法函数
|
||||
/// </summary>
|
||||
/// <typeparam name="Data"></typeparam>
|
||||
public abstract class ModuleAlgorithmFunction<Data> {
|
||||
/// <summary> 执行算法 </summary>
|
||||
public abstract void Compute(Data data);
|
||||
}
|
||||
@@ -3,14 +3,27 @@ using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
/// <summary>
|
||||
/// 资源模块
|
||||
/// </summary>
|
||||
/// <typeparam name="Data">绑定的资源类型</typeparam>
|
||||
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 int Count { get; }
|
||||
/// <summary> 数据列表 </summary>
|
||||
public abstract List<Data> Datas { get; }
|
||||
|
||||
/// <summary> 添加数据 </summary>
|
||||
public abstract void Add(Data data);
|
||||
/// <summary> 删除数据 </summary>
|
||||
public abstract void Remove(Data data);
|
||||
/// <summary> 查询数据 </summary>
|
||||
public abstract Data Find(int index);
|
||||
/// <summary> 循环列表 </summary>
|
||||
public abstract void ForEach(Action<Data> action);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
/// <summary>
|
||||
/// 构造器
|
||||
/// 根据原型构造数据
|
||||
/// </summary>
|
||||
/// <typeparam name="Origin"></typeparam>
|
||||
/// <typeparam name="Data"></typeparam>
|
||||
public abstract class ModuleBuilder<Origin, Data> : MonoBehaviour {
|
||||
/// <summary> 必须要初始化 </summary>
|
||||
protected abstract void Awake();
|
||||
/// <summary> 核心模块 </summary>
|
||||
protected virtual ModuleCore ModuleCore => ModuleCore.I;
|
||||
|
||||
/// <summary> 根据原型构造数据 </summary>
|
||||
public abstract Data To(Origin origin);
|
||||
}
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c5b9eb7c85f467e42a3632003cc5c1c7
|
||||
guid: 37fd3673cacd6294f8a1de0ddc48768a
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
@@ -4,11 +4,16 @@ using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using MuHua;
|
||||
|
||||
/// <summary>
|
||||
/// 核心模块,实现业务逻辑
|
||||
/// </summary>
|
||||
public class ModuleCore : Module<ModuleCore> {
|
||||
|
||||
#region 资产模块
|
||||
/// <summary> 预设模板资产 </summary>
|
||||
public ModuleAssets<DataPresetsPlate> PresetsPlateAssets;
|
||||
/// <summary> 板片资产 </summary>
|
||||
public ModuleAssets<DataPlate> AssetsPlate;
|
||||
/// <summary> 预设板片资产 </summary>
|
||||
public ModuleAssets<DataPlatePresets> AssetsPlatePresets;
|
||||
#endregion
|
||||
|
||||
#region 页面模块
|
||||
@@ -20,27 +25,57 @@ public class ModuleCore : Module<ModuleCore> {
|
||||
public ModuleUIWindow<Action> PresetsPlateWindow;
|
||||
#endregion
|
||||
|
||||
#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;
|
||||
#region 视图模块
|
||||
/// <summary> 设计视图相机模块 </summary>
|
||||
public ModuleViewCamera ViewCameraDesign;
|
||||
/// <summary> 板片烘焙相机视图 </summary>
|
||||
public ModuleViewCamera PlateBakingViewCamera;
|
||||
public ModuleViewCamera ViewCameraBaking;
|
||||
#endregion
|
||||
|
||||
#region 控制模块
|
||||
/// <summary> 板片设计输入模块 </summary>
|
||||
public ModuleViewInput PlateDesignViewInput;
|
||||
/// <summary> 板片烘焙输入模块 </summary>
|
||||
public ModuleViewInput PlateBakingViewInput;
|
||||
#region 广播模块
|
||||
/// <summary> 广播板片数据模块 </summary>
|
||||
public ModuleSending<DataPlate> SendingPlate;
|
||||
/// <summary> 广播板片数据点模块 </summary>
|
||||
public ModuleSending<DataPoint> SendingPoint;
|
||||
/// <summary> 广播查询数据模块 </summary>
|
||||
public ModuleSending<DataFindPoint> SendingFindPoint;
|
||||
#endregion
|
||||
|
||||
#region 输入模块
|
||||
/// <summary> 设计UI输入模块 </summary>
|
||||
public ModuleUIInput<UIInputDesignUnit> UIInputDesign;
|
||||
#endregion
|
||||
|
||||
#region 转换模块
|
||||
/// <summary> 预设板片转换板片 </summary>
|
||||
public ModuleBuilder<DataPlatePresets, DataPlate> PlatePresetsToPlate;
|
||||
/// <summary> 插入点数据转换板片上的点 </summary>
|
||||
public ModuleBuilder<DataInsertPoint, DataPoint> InsertPointToPoint;
|
||||
#endregion
|
||||
|
||||
#region 可视模块
|
||||
/// <summary> 板片可视化内容生成模块 </summary>
|
||||
public ModuleVisual<DataPlate> VisualPlate;
|
||||
/// <summary> 点可视化内容生成模块 </summary>
|
||||
public ModuleVisual<DataPoint> VisualPoint;
|
||||
/// <summary> 多边形可视化内容生成模块 </summary>
|
||||
public ModuleVisual<DataPolygon> VisualPolygon;
|
||||
#endregion
|
||||
|
||||
#region 算法模块
|
||||
|
||||
/// <summary> 查询点算法模块 </summary>
|
||||
public ModuleAlgorithm<DataFindPoint> AlgorithmFindPoint;
|
||||
/// <summary> 查询贝塞尔点算法模块 </summary>
|
||||
public ModuleAlgorithm<DataFindBezier> AlgorithmFindBezier;
|
||||
|
||||
/// <summary> 插入点算法模块 </summary>
|
||||
public ModuleAlgorithm<DataInsertPoint> AlgorithmInsertPoint;
|
||||
|
||||
/// <summary> 多边形算法模块 </summary>
|
||||
public ModuleAlgorithm<DataPlate> AlgorithmPolygon;
|
||||
///// <summary> 边缘排序算法模块 </summary>
|
||||
//public ModuleAlgorithm<DataPlate> EdgeSort = new AlgorithmEdge();
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 25f8d980388c4434381edd852a47ff9a
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,18 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class ModuleInput : MonoBehaviour
|
||||
{
|
||||
// Start is called before the first frame update
|
||||
void Start()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
// Update is called once per frame
|
||||
void Update()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f56f94c154ec7d84eb464a1509810d78
|
||||
guid: 890a3e1c641efcb418cc76bfb893d22e
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
@@ -0,0 +1,26 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UIElements;
|
||||
|
||||
/// <summary>
|
||||
/// UI输入模块
|
||||
/// </summary>
|
||||
/// <typeparam name="T"></typeparam>
|
||||
public abstract class ModuleUIInput<T> : MonoBehaviour {
|
||||
/// <summary> 必须要初始化 </summary>
|
||||
protected abstract void Awake();
|
||||
/// <summary> 核心模块 </summary>
|
||||
protected virtual ModuleCore ModuleCore => ModuleCore.I;
|
||||
|
||||
/// <summary> 当前输入单元 </summary>
|
||||
public abstract T Current { get; }
|
||||
/// <summary> 改变输入单元时触发 </summary>
|
||||
public abstract event Action<T> OnChangeInput;
|
||||
/// <summary> 改变输入单元 </summary>
|
||||
public abstract void ChangeInput(T input);
|
||||
|
||||
/// <summary> 绑定UI </summary>
|
||||
public abstract void Binding(VisualElement element);
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 41107ff888d44274e9593642528ccdd6
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,61 +0,0 @@
|
||||
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,21 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
/// <summary>
|
||||
/// 发送模块 广播数据
|
||||
/// </summary>
|
||||
public abstract class ModuleSending<T> : MonoBehaviour {
|
||||
/// <summary> 必须要初始化 </summary>
|
||||
protected abstract void Awake();
|
||||
/// <summary> 核心模块 </summary>
|
||||
protected virtual ModuleCore ModuleCore => ModuleCore.I;
|
||||
|
||||
/// <summary> 当前输入单元 </summary>
|
||||
public abstract T Current { get; }
|
||||
/// <summary> 改变输入单元时触发 </summary>
|
||||
public abstract event Action<T> OnChange;
|
||||
/// <summary> 改变输入单元 </summary>
|
||||
public abstract void Change(T obj);
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: eaecf945c01ab084aaa6cdb6ebcd7e0f
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8d093e4c9062c4044bcb09ee5f5abb8b
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,15 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UIElements;
|
||||
|
||||
public abstract class ModuleUIPanel : MonoBehaviour {
|
||||
/// <summary> 绑定的页面 </summary>
|
||||
public ModuleUIPage ModuleUIPage;
|
||||
/// <summary> 必须初始化 </summary>
|
||||
public abstract void Awake();
|
||||
/// <summary> 核心模块 </summary>
|
||||
protected virtual ModuleCore ModuleCore => ModuleCore.I;
|
||||
|
||||
public abstract VisualElement Element { get; }
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d4ba0921b8d30f548ba33b96c76f2c48
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -3,6 +3,9 @@ using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UIElements;
|
||||
|
||||
/// <summary>
|
||||
/// UI页面
|
||||
/// </summary>
|
||||
public abstract class ModuleUIPage : MonoBehaviour {
|
||||
public UIDocument document;
|
||||
/// <summary> 根目录文档 </summary>
|
||||
|
||||
@@ -2,6 +2,10 @@ using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
/// <summary>
|
||||
/// UI窗口
|
||||
/// </summary>
|
||||
/// <typeparam name="Data">窗口需要的数据类型</typeparam>
|
||||
public abstract class ModuleUIWindow<Data> : MonoBehaviour {
|
||||
/// <summary> 绑定的页面 </summary>
|
||||
public ModuleUIPage ModuleUIPage;
|
||||
|
||||
@@ -2,32 +2,36 @@ using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
/// <summary>
|
||||
/// 视图相机,把内容渲染到渲染纹理上
|
||||
/// </summary>
|
||||
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>
|
||||
protected abstract void Awake();
|
||||
/// <summary> 核心模块 </summary>
|
||||
protected virtual ModuleCore ModuleCore => ModuleCore.I;
|
||||
|
||||
/// <summary> 视图位置 </summary>
|
||||
public abstract Vector3 position { get; set; }
|
||||
/// <summary> 视图旋转 </summary>
|
||||
public abstract Vector3 eulerAngles { get; set; }
|
||||
/// <summary> 视图缩放 </summary>
|
||||
public abstract float scale { get; set; }
|
||||
/// <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> 屏幕坐标转换视图坐标(0-1) </summary>
|
||||
public abstract Vector3 ScreenToViewPosition(Vector3 screenPosition);
|
||||
/// <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);
|
||||
public abstract Vector3 ScreenToWorldPosition(Vector3 screenPosition);
|
||||
/// <summary> 视图坐标(0-1)转换屏幕坐标 </summary>
|
||||
public abstract Vector3 ViewToScreenPosition(Vector3 screenPosition);
|
||||
/// <summary> 视图坐标(0-1)转换世界坐标 </summary>
|
||||
public abstract Vector3 ViewToWorldPosition(Vector3 screenPosition);
|
||||
/// <summary> 世界坐标转换屏幕坐标 </summary>
|
||||
public abstract Vector3 WorldToScreenPosition(Vector3 screenPosition);
|
||||
/// <summary> 世界坐标转换视图坐标(0-1) </summary>
|
||||
public abstract Vector3 WorldToViewPosition(Vector3 screenPosition);
|
||||
}
|
||||
|
||||
@@ -1,45 +0,0 @@
|
||||
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,16 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
/// <summary>
|
||||
/// 生成可视化内容模块
|
||||
/// </summary>
|
||||
public abstract class ModuleVisual<Data> : MonoBehaviour {
|
||||
/// <summary> 必须要初始化 </summary>
|
||||
protected abstract void Awake();
|
||||
/// <summary> 核心模块 </summary>
|
||||
protected virtual ModuleCore ModuleCore => ModuleCore.I;
|
||||
|
||||
/// <summary> 更新可视化 </summary>
|
||||
public abstract void UpdateVisual(Data data);
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 32a3e92bdd9f12a4dbaeadda30a66075
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Reference in New Issue
Block a user