J'essaie de changer le Material
du mur lors de l'exécution. J'importe le modèle de maison de Google Sketchup, qui a différents matériaux dans un seul objet (ceci est montré dans l'inspecteur). Chaque fois que je clique sur le bouton suivant (>>
), il change le premier matériau de l'objet. Comment puis-je obtenir les références aux autres éléments? Voilà ce que j'ai jusqu'à présent:Unité 3D - Sélection du matériau pour le rendu
public class Material_GUI : MonoBehaviour {
public Material[] mats;
public GameObject go;
private int index = 0;
// Use this for initialization
void Start() {
go.renderer.material= mats[index];
}
// Update is called once per frame
void Update() {
}
void OnGUI(){
GUILayout.BeginArea(new Rect(Screen.width/2-100,Screen.height-60,200,50));
GUI.Box (new Rect(10,10,190,40),"");
GUI.Label(new Rect(62,20,100,20),"Wall Testing"+(index +1));
if(GUI.Button (new Rect(15,15,30,30),"<<")){
index--;
if(index<0){
index = mats.Length - 1;
}
go.renderer.material = mats[index];
}
if(GUI.Button (new Rect(165,15,30,30),">>")){
index++;
if(index > mats.Length -1){
index = 0;
}
go.renderer.material = mats[index];
}
GUILayout.EndArea();
}
}