s
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Rendering.Universal;
|
||||
|
||||
/// <summary>
|
||||
/// 轮廓渲染资源模块
|
||||
/// </summary>
|
||||
public class AssetsOutline : ModuleAssets<Transform> {
|
||||
public UniversalRendererData rendererData;
|
||||
private OutlineRendererFeature rendererFeature;
|
||||
|
||||
public override int Count => rendererFeature.settings.RenderObjs.Count;
|
||||
public override List<Transform> Datas => rendererFeature.settings.RenderObjs;
|
||||
|
||||
protected override void Awake() {
|
||||
ModuleCore.AssetsOutline = this;
|
||||
rendererFeature = rendererData.rendererFeatures.OfType<OutlineRendererFeature>().FirstOrDefault();
|
||||
}
|
||||
|
||||
public override void Add(Transform data) {
|
||||
if (Datas.Contains(data)) { return; }
|
||||
Datas.Add(data);
|
||||
}
|
||||
public override void Remove(Transform data) {
|
||||
if (!Datas.Contains(data)) { return; }
|
||||
Datas.Remove(data);
|
||||
}
|
||||
public override Transform Find(int index) {
|
||||
return Datas.LoopIndex(index);
|
||||
}
|
||||
public override void ForEach(Action<Transform> action) {
|
||||
Datas.ForEach(action);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: fe3a6923b67b64741aab806825b12c16
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,39 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
/// <summary>
|
||||
/// 板片管理模块
|
||||
/// </summary>
|
||||
public class AssetsPlate : ModuleAssets<DataPlate> {
|
||||
private List<DataPlate> dataPlates = new List<DataPlate>();
|
||||
|
||||
/// <summary> 视图相机模块 </summary>
|
||||
private ModuleViewCamera ViewCameraDesign => ModuleCore.ViewCameraDesign;
|
||||
|
||||
public override int Count => dataPlates.Count;
|
||||
public override List<DataPlate> Datas => dataPlates;
|
||||
|
||||
protected override void Awake() => ModuleCore.AssetsPlate = this;
|
||||
|
||||
public override void Add(DataPlate data) {
|
||||
if (dataPlates.Contains(data)) { return; }
|
||||
dataPlates.Add(data);
|
||||
//初始化参数
|
||||
data.designPosition = ViewCameraDesign.CameraPosition;
|
||||
data.bakingPosition = ViewCameraDesign.CameraPosition;
|
||||
//生成可视化内容
|
||||
data.UpdateVisual();
|
||||
}
|
||||
public override void Remove(DataPlate data) {
|
||||
if (!dataPlates.Contains(data)) { return; }
|
||||
dataPlates.Remove(data);
|
||||
}
|
||||
public override DataPlate Find(int index) {
|
||||
return dataPlates.LoopIndex(index);
|
||||
}
|
||||
public override void ForEach(Action<DataPlate> action) {
|
||||
dataPlates.ForEach(action);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f1f4341af37c4904b8274f65dd58e837
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,18 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class AssetsPlatePresets : ModuleAssets<DataPlatePresets> {
|
||||
[SerializeField] private List<DataPlatePresets> assets;
|
||||
|
||||
public override int Count => assets.Count;
|
||||
public override List<DataPlatePresets> Datas => assets;
|
||||
|
||||
protected override void Awake() => ModuleCore.AssetsPlatePresets = this;
|
||||
|
||||
public override void Add(DataPlatePresets data) => assets.Add(data);
|
||||
public override void Remove(DataPlatePresets data) => assets.Remove(data);
|
||||
public override DataPlatePresets Find(int index) => assets.LoopIndex(index);
|
||||
public override void ForEach(Action<DataPlatePresets> action) => assets.ForEach(action);
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8198c73995924524d985c3beb338f033
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,29 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
/// <summary>
|
||||
/// 资源模块
|
||||
/// </summary>
|
||||
/// <typeparam name="Data">绑定的资源类型</typeparam>
|
||||
public abstract class ModuleAssets<Data> : MonoBehaviour {
|
||||
/// <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,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 424b00686a91cd64989e546f204155a5
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Reference in New Issue
Block a user