Unity 常用 Attributes 分类及用法
Unity中常用的Attributes,这些属性主要用于编辑器扩展
1. 数值范围控制
[Range(min, max)] 创建滑动条限制数值范围 [Range(0, 100)] public int health;
[Min(min)] 设置最小值限制 [Min(0)] public float speed;
2. 序列化控制
[SerializeField] 强制显示私有字段 [SerializeField] private int _ammo;
[NonSerialized] 阻止字段被序列化 [NonSerialized] public float tempValue;
[HideInInspector] 隐藏公有字段 [HideInInspector] public Vector3 debugPos;
3. UI 布局优化
[Header("标题")] 添加分组标题 [Header("Combat Settings")]
[Space(像素值)] 添加垂直间距 [Space(20)] public float damage;
[Tooltip("提示文本")] 鼠标悬停时显示提示 [Tooltip("玩家移动速度")] public float moveSpeed;
4. 依赖关系管理
[RequireComponent(type)] 自动添加必需组件 [RequireComponent(typeof(Rigidbody))]
[DisallowMultipleComponent] 防止重复添加组件 [DisallowMultipleComponent] public class PlayerController : MonoBehaviour
5. 输入验证
[ContextMenuItem("选项名", 方法名)] 右键添加功能菜单 [ContextMenuItem("Reset", "ResetCount")] public int enemyCount;
6. 高级工作流
[ExecuteInEditMode] 在编辑模式运行脚本 [ExecuteInEditMode] public class MapGenerator : MonoBehaviour
[SelectionBase] 使对象成为场景选择的基础 [SelectionBase] public class Tile : MonoBehaviour
[FormerlySerializedAs("旧名")] 重命名字段时保留序列化值 [FormerlySerializedAs("hp"))] public int health;
浙公网安备 33010602011771号