Hi, is this he correct way to change a shader and texture of a model from one to another in runtime, or is there a more efficient way of doing it?
var shader1 : Shader;
var shader2 : Shader;
var material1 : Material;
var material2 : Material;
var material3 : Material;
var testbot : GameObject;
var testGun : GameObject;
function Start () {
shader1 = Shader.Find("Mobile/VertexLit");
shader2 = Shader.Find("Mobile/Diffuse");
}
function Update () {
if (Input.GetButtonDown("Jump")) {
if( testbot.renderer.material.shader == shader1 ){
testbot.renderer.material.shader = shader2;
testbot.renderer.material = material2;
testGun.renderer.material.shader = shader2;
testGun.renderer.material = material2;
}else{
testbot.renderer.material.shader = shader1;
testbot.renderer.material = material1;
testGun.renderer.material.shader = shader1;
testGun.renderer.material = material3;
}
}
}