Unity 经典教程 Editor扩展之SerializeField

2025-11-07 08:16:29

1、SerializeField:Force Unity to serialize a private field.

You will almost never need this. When Unity serializes your scripts, it will only serialize public fields. If in addition to that you also want Unity to serialize one of your private fields you can add the SerializeField attribute to the field.

2、Serializable types are:- All classes inheriting from UnityEngine.Object, for example GameObject, Component, MonoBehaviour, Texture2D, AnimationClip.- All basic data types like int, string, float, bool.- Some built-in types like Vector2, Vector3, Vector4, Quaternion, Matrix4x4, Color, Rect, LayerMask.- Arrays of a serializable type- List of a serializable type)- Enums- Structs

1、打开Unity,新建一个空工程,Unity界面如下图:

Unity 经典教程 Editor扩展之SerializeField

2、在工程中新建一个脚本,脚本可以命名为“SerializeFieldTest”,具体如下图

Unity 经典教程 Editor扩展之SerializeField

3、选中新建的“SerializeFiledTest”脚本,双击脚本或者右键“Open C# Project”,打开脚本,具体如下图

Unity 经典教程 Editor扩展之SerializeField

4、在打开的“SerializeFieldTest”脚本上编辑代码,系列化一个私有参数,代码和代码说明如下图

Unity 经典教程 Editor扩展之SerializeField

5、脚本编译正确后,回到Unity界面,在场景中新建一个“GameObject”,并且把脚本“SerializeFieldTest”赋给“GameObject”,即可看到私有变量显示在“Inspector”上,具体如下图

Unity 经典教程 Editor扩展之SerializeField

6、到此,《Unity 经典教程 Editor扩展之SerializeField的使用》,谢谢

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢