Maison >développement back-end >C++ >Comment puis-je accéder aux variables de différents scripts dans Unity3D ?
Maîtriser l'accès aux variables inter-script dans Unity3D
L'accès aux variables dans différents scripts est un obstacle fréquent dans le développement d'Unity3D. Ce guide fournit une solution claire, étape par étape.
1. Établir la communication :
Le principe de base est d'établir des voies de communication entre les scripts. Cela implique d'obtenir une référence au composant de script concerné.
2. Obtention de références de script :
Considérons deux scripts, 'ScriptA' et 'ScriptB'. 'ScriptB' doit accéder à la variable 'X' dans 'ScriptA'. 'ScriptB' doit d'abord acquérir une référence à 'ScriptA'. Si les deux scripts résident sur le même GameObject, 'ScriptB' peut accéder directement à 'ScriptA' en utilisant :
public ScriptA scriptA;
3. Référencement à travers GameObjects :
Si 'ScriptA' est attaché à un autre GameObject, 'ScriptB' nécessite la référence du GameObject. Déclarez une variable publique dans 'ScriptB' :
public GameObject objectA;
Dans l'éditeur Unity, faites glisser et déposez le GameObject contenant 'ScriptA' dans ce champ de l'inspecteur.
4. Récupération du composant de script :
Maintenant, en utilisant la référence GameObject, 'ScriptB' peut obtenir 'ScriptA' en utilisant GetComponent()
:
ScriptA scriptA = objectA.GetComponent<ScriptA>();
5. Accès et modification des variables :
Avec la référence 'ScriptA', 'ScriptB' peut accéder à la variable 'X' :
bool x = scriptA.X;
De plus, 'ScriptB' peut modifier 'X' dans sa Update()
fonction :
scriptA.X = true;
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!