赞
踩
专门讲解C#序列化还有⼀个原因,就是C#序列化与Unity编辑器之间是有联系的。
⾸先,如果脚本组件的字段或属性是公开的,就会被Unity编辑器识别并出现在界⾯上,从⽽⽅便查看和修改。其次,如果⼀个字段不希望被其他脚本修改,但⼜希望可以在Unity中编辑,那么可以将该字段申明为private(私有的)或protected(受保护的),再加上⼀个[SerializeField]特性即可。从这个特性的名称可以看出,Unity在编辑器中与对象的数据进⾏交换时,⽤到了序列化。
更为特殊的是,如果⼀个脚本组件中有⼀个⾃定义类型的字段,同时希望该字段能在Unity中编辑,那么就把这个类型标记为公开,并加上[Serializable]特性。可序列化的类型会被Unity识别并展⽰在编辑器中。
例如,将前⽂的Seriallize Test脚本挂载到任意物体上,就可以在Unity中看到⼀个Test PD的可编辑属性,如图10-6所⽰。
⽤这种⽅式可以在⼀定程度上扩展编辑器的功能,⽅便填写较复杂的⾃定义数据。
许多游戏的玩法都包含了玩家与计算机⾓⾊之间的对抗或协作,⽽只要有玩家与计算机⾓⾊之间的互动,就⼀定要设计⼀套计算机⾓⾊的⾏为规则和逻辑。⽽计算机⾓⾊的⾏为规则和逻辑都是
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。