using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Sirenix.OdinInspector;
#if UNITY_EDITOR
using UnityEditor;
#endif
///
/// 存储场景中物件渲染所需的基本数据,每个场景笔刷都会绑定一份该对象,可以用于在场景中标识某个笔刷刷上的游戏物体
///
public class SceneObjectRenderInfo : ScriptableObject
{
[ReadOnly]
[LabelText("不透明材质")]
public List opaqueMaterial = new();
[ReadOnly]
[LabelText("半透明材质")]
public List transparentMaterial = new();
[ReadOnly]
[LabelText("网格")]
public List meshes = new();
#if UNITY_EDITOR
public void RecordUndo(string undoName)
{
foreach (var mat in opaqueMaterial)
{
Undo.RecordObject(mat, undoName);
}
foreach (var mat in transparentMaterial)
{
Undo.RecordObject(mat, undoName);
}
foreach (var mesh in meshes)
{
Undo.RecordObject(mesh, undoName);
}
}
#endif
}