Variabile de clasă: Variabile cu subvariabile multiple în Unitate
În Unity crearea de variabile este simplă:
public int someValue = 1;
Variabila de mai sus va fi afișată astfel în vizualizarea Inspector:
Dar dacă doriți să aveți mai multe subvariabile într-o singură variabilă? Acest lucru este ușor de realizat cu Variabilele de clasă.
Variabilele de clasă sunt variabile care folosesc o altă clasă ca tip de bază, oferind posibilitatea de a avea mai multe subvariabile într-un grup.
Se realizează prin utilizarea unei clase cu atributul [System.Serializable].
Verificați codul de mai jos:
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;
}
- Scriptul de mai sus definește o clasă numită VariableGroup
- Clasa VariableGroup conține mai multe subvariabile
- Notați [System.Serializable] înainte de clasă. Acest atribut este necesar pentru a putea edita variabilele sale în vizualizarea inspector.
- Și, în sfârșit, este definită variabila variableGroup, care folosește clasa VariableGroup.
Valorile clasei sunt accesate apelând numele variabilei urmat de un punct și apoi numele variabilei copil:
variableGroup.t
variableGroup.someValue
variableGroup.someBool
Clasa de mai sus poate fi folosită și într-o matrice:
public VariableGroup[] variableGroup;