Heim >Backend-Entwicklung >C++ >Wie kann ich in Unity3D über verschiedene Skripte hinweg auf Variablen zugreifen?
Inter-Script-Variablenzugriff in Unity3D beherrschen
Der Zugriff auf Variablen über verschiedene Skripte hinweg ist eine häufige Hürde bei der Unity3D-Entwicklung. Dieser Leitfaden bietet eine klare Schritt-für-Schritt-Lösung.
1. Kommunikation herstellen:
Das Kernprinzip besteht darin, Kommunikationswege zwischen Skripten einzurichten. Dabei wird ein Verweis auf die entsprechende Skriptkomponente eingeholt.
2. Skriptreferenzen erhalten:
Betrachten wir zwei Skripte, „ScriptA“ und „ScriptB“. „ScriptB“ benötigt Zugriff auf die Variable „X“ in „ScriptA“. „ScriptB“ muss zunächst einen Verweis auf „ScriptA“ erhalten. Wenn sich beide Skripte auf demselben GameObject befinden, kann „ScriptB“ direkt auf „ScriptA“ zugreifen mit:
public ScriptA scriptA;
3. Referenzierung über GameObjects hinweg:
Wenn „ScriptA“ an ein anderes GameObject angehängt ist, benötigt „ScriptB“ die Referenz des GameObjects. Deklarieren Sie eine öffentliche Variable in „ScriptB“:
public GameObject objectA;
Ziehen Sie im Unity-Editor das GameObject, das „ScriptA“ enthält, per Drag & Drop in dieses Feld im Inspektor.
4. Abrufen der Skriptkomponente:
Jetzt kann „ScriptB“ mithilfe der GameObject-Referenz „ScriptA“ mithilfe von GetComponent()
:
ScriptA scriptA = objectA.GetComponent<ScriptA>();
5. Auf Variablen zugreifen und diese ändern:
Mit der Referenz „ScriptA“ kann „ScriptB“ auf die Variable „X“ zugreifen:
bool x = scriptA.X;
Außerdem kann 'ScriptB' 'X' innerhalb seiner Update()
-Funktion ändern:
scriptA.X = true;
Das obige ist der detaillierte Inhalt vonWie kann ich in Unity3D über verschiedene Skripte hinweg auf Variablen zugreifen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!