本文详细记录 SmartDataViewer 项目接口细节 并提供说明
为什么要使用 SmartDataViewer ?
SmartDataViewer 节约程序大量编辑器开发时间,在定义完成基础类型的时候,即可同步生成可视化编辑器。
特性
- 秒速生成编辑器
- 支持外联多个类
- 支持针对特定字段进行排序与查询
- 支持数据导出导入(内建UNITY3D Json支持)
- 支持开放式编辑器事件,几乎所有的事件与组件渲染 用户可自定义
- 通过标签定制编辑器字段显示方式,包括宽度,显示别名,显示排序,导出导入位置等
正确的打开姿势 / Tutorial
1.创建容器 / Create Container
Type 1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| [Serializable] public class DemoConfig : ConfigBase<Demo> { }
[Serializable] public class Demo : IModel { public Demo() { strList = new List<string>(); list = new List<int>(); supports = new List<int>(); description = string.Empty; }
public List<string> strList;
public List<int> list;
[ConfigEditorField(outLinkSubClass: "Supports")] public List<int> supports;
public string description;
[ConfigEditorField(outLinkSubClass: "Supports")] public int support; }
|
Type 2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| [Serializable] public class SupportsConfig : ConfigBase<Supports> { }
[Serializable] public class Supports : IModel { public Supports() { boolList = new List<bool>(); description = string.Empty; colorList = new List<Color>(); curveList = new List<AnimationCurve>(); curve = new AnimationCurve(); bounds = new Bounds(); boundsList = new List<Bounds>(); } public Vector2 testPoint;
public List<bool> boolList;
public int testID;
public Bounds bounds;
public Color PointColor;
public AnimationCurve curve;
public List<Color> colorList;
public List<AnimationCurve> curveList;
public List<Bounds> boundsList;
public string description; }
|
2.添加标签 / Add Attribute
ConfigEditorAttribute
容器标签 / Container Attribute
ConfigEditorFieldAttribute
字段标签 / Fields Attribute
点击build按钮 则会在指定路径生成数据编辑器
完成 / Complete
本文标题:SmartDataViewer Project Document
文章作者:Keyle
发布时间:2017-06-21
最后更新:2024-08-20
原始链接:https://vrast.cn/posts/b5b9f139/
版权声明:©Keyle's Blog. 本站采用署名-非商业性使用-相同方式共享 4.0 国际进行许可