总结1_2:常见Unity特性
来源:互联网 发布:apache 访问权限 编辑:程序博客网 时间:2024/06/06 01:14
- Unity特性是一系列辅助性的功能,在编辑器扩展、检视面板提示、防止某些错误操作方面非常有用。
- 大致有几个功能块:菜单编辑、检视面板编辑、脚本相关
(主要参考:http://www.360doc.com/content/15/1205/14/25502502_518083734.shtml 利用unity3d属性来设置Inspector面板的特殊行为)
- 序列化与反序列化
①原理:
– 序列化(串行化): 将数据结构或对象转换成二进制串的过程
–反序列化:将在序列化过程中所生成的二进制串转换成数据结构或者对象的过程
②关键词:
1)SerializeField(序列化):将私有非静态的类成员变量显示在Inspector面板上,能轻松赋值的同时不破坏其封装性。
namespace XJH{ public class Test : MonoBehaviour { [SerializeField] private string xiaoMaoMi; //测试输出 private void Start() { Debug.Log("小猫咪 @_@ :" + xiaoMaoMi); } }}
直接在检视面板赋值:
测试结果
2)HideInInspector:有了这个特性以后,类的成员变量就不会在检视面板上显示。可以和SerializeField一起使用。大意是:序列化,但不妨碍不在面板上显示。
[HideInInspector]public string xiaoMaoMi = "miao wu!";
3)System.Serializable:序列化,对象是类、枚举、结构、委托,将其转化为二进制数据存储起来
(具体请参考雨松大神 http://www.xuanyusong.com/wp-content/uploads/2017/04/Snip20170419_4.png)
4)System.NonSerialized:反序列化,可以在序列化的类或者其他容器中将不需要被序列化的成员分离出来,不做序列化处理。
- 其他特性
1)Multiline:允许其标记下的string变量有多行输出
[Multiline]public string xiaoMaoMi;
2)Header:提示信息
[Header("小猫咪")]public string xiaoMaoMi = "miao wu!";
3)RequireComponent:挂脚本的时候添加所需组件,相当于自己在Reset方法里调用AddComponent
[RequireComponent(typeof(AudioSource))] public class Test : MonoBehaviour { }
4)DisallowMultipleComponent:当前游戏对象不能多次添加该脚本
5)ContextMenu:组件管理里(直接在组件上右键也行)增加一个方法
[ContextMenu("Start")] private void Start() { Debug.Log("小猫咪 @_@ :" + xiaoMaoMi); }
6)AddComponentMenu:在unity的Component菜单里增加选项
[AddComponentMenu("小猫咪/喵呜")] public class Test : MonoBehaviour { }
7) ExecuteInEditMode:编辑器模式下,非运行状态选中就能运行
[ExecuteInEditMode] public class Test : MonoBehaviour { void Start() { Debug.Log("小猫咪"); } }
8)Tooltip:光标提示。鼠标停留在该变量上面时,会有提示。
[Tooltip("小猫咪")] public string xiaoMaoMi;
9)DllImprot:导入C++的程序集
//伪代码[DllImport("a")] static extern void SSS() { }
- 总结1_2:常见Unity特性
- java高级特性_2
- JavaSE_jdk新特性_2
- .net 控件开发常见的特性总结
- .net 控件开发常见的特性总结
- .net 控件开发常见的特性总结
- 总结常见的ES6新语法特性
- HP_UNIX 安装总结_2
- 一致性测试--总结_2
- javascript初学总结_2
- unity遮罩_2(对罩子做处理)
- unity --项目总结-1
- Java 实验4_2总结
- Perl正则表达式总结_2
- 数据结构特性总结(1)
- 17 _2.1
- 1_2、第一章 引言
- 1/29_2
- Android面试问题Activity
- python basemap 画出经纬度并标定
- 【Angular】table假分页
- 正则表达式
- leetcode 538. Convert BST to Greater Tree(反向中序遍历)
- 总结1_2:常见Unity特性
- IBM MQ两个队列管理器之间的通信
- I.MX RT1050 EVK开发板代码下载和调试
- win上模拟负载均衡
- POJ3525 Most Distant Point from the Sea 半平面交+二分答案+直线平移
- Android 四大组件Service
- 数据结构实验之图论五:从起始点到目标点的最短步数(BFS)
- 根据坐标抠图
- 【bzoj3714: [PA2014]Kuglarz】转化 ---最小生成树