博客
关于我
Unity Editor 基础篇(一):Build-In Attribute
阅读量:627 次
发布时间:2019-03-12

本文共 1827 字,大约阅读时间需要 6 分钟。

Unity 内置属性笔记

本文为个人学习笔记,基于 AddComponentMenu 属性进行整理和总结。如需查看原文,请访问指定链接。

1. AddComponentMenu 属性

通过使用 융용ENCH 的内置属性 AddComponentMenu,可以将脚本添加到组件菜单中,方便通过Inspector创建组件。

using UnityEngine;using System.Collections;public class People : MonoBehaviour{	[AddComponentMenu("Learning/People")]    public string name;}

该属性适用于右键点击物体后选择添加组件的场景。

2. RequireComponent 属性

RequireComponent 属性用于强制在物体上添加指定组件,若已存在则不重复。注意,在代码修改后需重新添加该属性。

[RequireComponent(typeof(Rigidbody))]public class People : MonoBehaviour{	// 扩展部分...}

注意事项: 在物体已挂载脚本时,建议避免直接修改脚本属性,否则可能导致该属性失效。

3. ContextMenu 和 ContextMenuItem 属性

用于添加右键菜单选项,前者为菜单项设置回调函数,后者为变量设置额外方法。

public class People : MonoBehaviour{	[ContextMenuItem("OutputInfo")]    public void OutputInfo()    {        Debug.Log(name + "|" + age);    }}

另外,ContextMenuItem 也可用于格式化字符串编辑器输出。

4. HelpURL 属性

定义自定义帮助链接,可供在Inspector中点击查阅详细文档。

[HelpURL("http://www.baidu.com")]public class People : MonoBehaviour{	// 扩展部分...}

注意事项: 助手链接需以 http://https:// 开头。

5. 初始化属性

[InitializeOnLoad] 指示脚本在编辑器启动时执行,适用于需在游戏性运行之外初始化逻辑的场合。

模板示例如下:

public class StartUpScript : MonoBehaviour{	[InitializeOnLoad]	private void Awake() {}}

6. 范围控制和多行为组件属性

高级属性如 RangeMultilineHeader 可以提升开发体验。

示例:

[Header("BaseInfo")][Multiline(5)]public string desc = "通过设置这些属性,便可高度定制游戏交互体验;";[Range(-10, 10)]public int level = 0;[Space(50)][Tooltip("性别选择")]public string gender = "未设置";

说明: Header 为属性添加标题支持、Multiline 实现多行输入,Space 控制属性间距。

7. 位工具属性

TooltipSpace 是现代UI开发中常用的细节优化工具。

[Space(50)][Tooltip("性别设置")]public string gender = "未设置";

可用场景: 在Forbidden设想中,专门处理性别和其他用途属性时非常实用。

8. 可序列化属性

控制变量的可序列化和可视化特性。以下是重点学习内容:

[System.Serializable]public class Student{    public string name;    public int age;}public class Teacher : MonoBehaviour{    public Student student;}

注意事项: 需要系统性学习可序列化类型和属性组合使用方法。

通过对这些属性的深入理解,可以显著提升脚本管理效率和可维护性。

希望这份笔记对您的学习有所帮助!如需进一步讨论,请联系作者。

转载地址:http://gqzxz.baihongyu.com/

你可能感兴趣的文章
POI:POI实现docx文件添加水印
查看>>
POJ 1006
查看>>
Quartz中时间表达式的设置-----corn表达式
查看>>
poj 1035
查看>>
POJ 1061 青蛙的约会 (扩展欧几里得)
查看>>
Quartz2.2.1简单使用
查看>>
POJ 1080 Human Gene Functions(DP:LCS)
查看>>
Quant 开源项目教程
查看>>
POJ 1088 滑雪
查看>>
POJ 1095 Trees Made to Order
查看>>
POJ 1113 Wall(计算几何--凸包的周长)
查看>>
poj 1125Stockbroker Grapevine(最短路)
查看>>
Qualitor processVariavel.php 未授权命令注入漏洞复现(CVE-2023-47253)
查看>>
poj 1151 (未完成) 扫描线 线段树 离散化
查看>>
POJ 1151 / HDU 1542 Atlantis 线段树求矩形面积并
查看>>
poj 1163 数塔
查看>>
POJ 1177 Picture(线段树:扫描线求轮廓周长)
查看>>
Qualitor checkAcesso.php 任意文件上传漏洞复现(CVE-2024-44849)
查看>>
POJ 1182 食物链(并查集拆点)
查看>>
POJ 1185 炮兵阵地 (状态压缩DP)
查看>>