Unity3D Game Engine – Materials Array
Array of Materials
Create a scene with:
– Main Camera
– 3 Materials blue-green-red
– Cube, assign the script SwitchMaterials.js:
#pragma strict var materials : Material[]; var materials_counter : int = 0; // 1. Setup this in Inspector! It setup the array lenght! // 2. DRAG AND DROP materials inside slots function Update() { if(Input.GetKeyDown("f")) // press f key to switch materials { renderer.material = materials[GetNextMaterialIndex()]; // richiama l'indice del materiale da visualizzare // risulta -> render.material = materials[0] } } function GetNextMaterialIndex() : int { materials_counter++; // incrementa di 1 l'indice if (materials_counter==materials.Length) { materials_counter = 0; // se l'indice è già uguale alla lunghezza massima riporta il valore a 0 } return materials_counter; // ritorna l'indice dell'array }
Cube> Inspector> SwitchMaterials.js>
1. Dare un valore a Materials Size (è la lunghezza dell’indice)
2. DRAG AND DROP i materiali sugli slot Element 0-1-2 etc…
Play> press f to switch materials.