类变量:Unity中具有多个子变量的变量
在 Unity 中创建变量很简单:
public int someValue = 1;
上面的变量将在 Inspector 视图中显示如下:
但是,如果您想在一个变量中包含多个子变量怎么办?使用类变量可以轻松实现这一点。
类变量是变量,它们使用另一个类作为基类型,从而能够在一组中拥有多个子变量。
这是通过使用具有 [System.Serialized] 属性的类来完成的。
检查下面的代码:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SC_ClassVariables : MonoBehaviour
{
[System.Serializable]
public class VariableGroup
{
public Transform t;
public int someValue = 1;
public bool someBool = false;
}
public VariableGroup variableGroup;
}
- 上面的脚本定义了一个名为 VariableGroup 的类
- 类 VariableGroup 包含多个子变量
- 请注意类之前的 [System.Serialized]。需要此属性才能在检查器视图中编辑其变量。
- 最后,定义变量 variableGroup,它使用 VariableGroup 类。
通过调用变量名称后跟一个点,然后调用子变量名称来访问类值:
variableGroup.t
variableGroup.someValue
variableGroup.someBool
上面的类也可以在数组中使用:
public VariableGroup[] variableGroup;