博客
关于我
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/

你可能感兴趣的文章
Nginx + Spring Boot 实现负载均衡
查看>>
Nginx + uWSGI + Flask + Vhost
查看>>
Nginx - Header详解
查看>>
Nginx - 反向代理、负载均衡、动静分离、底层原理(案例实战分析)
查看>>
nginx 1.24.0 安装nginx最新稳定版
查看>>
nginx 301 永久重定向
查看>>
nginx css,js合并插件,淘宝nginx合并js,css插件
查看>>
Nginx gateway集群和动态网关
查看>>
Nginx Location配置总结
查看>>
Nginx log文件写入失败?log文件权限设置问题
查看>>
Nginx Lua install
查看>>
nginx net::ERR_ABORTED 403 (Forbidden)
查看>>
Nginx SSL私有证书自签,且反代80端口
查看>>
Nginx upstream性能优化
查看>>
Nginx 中解决跨域问题
查看>>
nginx 代理解决跨域
查看>>
Nginx 动静分离与负载均衡的实现
查看>>
Nginx 反向代理 MinIO 及 ruoyi-vue-pro 配置 MinIO 详解
查看>>
nginx 反向代理 转发请求时,有时好有时没反应,产生原因及解决
查看>>
Nginx 反向代理解决跨域问题
查看>>