Переменные класса: переменные с несколькими подпеременными в Unity
В Unity создавать переменные просто:
public int someValue = 1;
Переменная, указанная выше, будет отображаться в представлении инспектора следующим образом:
Но что, если вы хотите иметь несколько подпеременных в одной переменной? Этого легко достичь с помощью переменных класса.
Переменные класса — это переменные, которые используют другой класс в качестве базового типа, что дает возможность иметь несколько подпеременных в одной группе.
Это делается с помощью класса с атрибутом [System.Serializable].
Проверьте код ниже:
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.Serializable] перед классом. Этот атрибут необходим для возможности редактирования его переменных в представлении инспектора.
- И, наконец, определяется переменная variableGroup, которая использует класс VariableGroup.
Доступ к значениям класса осуществляется путем вызова имени переменной, за которым следует точка, а затем имя дочерней переменной:
variableGroup.t
variableGroup.someValue
variableGroup.someBool
Приведенный выше класс также можно использовать в массиве:
public VariableGroup[] variableGroup;