Shader.Find Manual     Reference     Scripting  
Scripting > Runtime Classes > Shader
Shader.Find

static function Find (name : string) : Shader

Description

Finds a shader with the given name.

Shader.Find can be used to switch to another shader without having to keep a reference to the shader. name is the name you can see in the shader popup of any material. Common names are: "Diffuse", "Bumped Diffuse", "VertexLit", "Transparent/Diffuse" etc.

When building a player, a shader will only be included if it is assigned to a material that is used in any scene or if the shader is placed in a "Resources" folder. See Also: Material class.

JavaScripts
// Switch the shader from code

function Start () {
// Switch to the transparent diffuse shader
renderer.material.shader = Shader.Find ("Transparent/Diffuse");
}

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
void Start() {
renderer.material.shader = Shader.Find("Transparent/Diffuse");
}
}

import UnityEngine
import System.Collections

class example(MonoBehaviour):

def Start():
renderer.material.shader = Shader.Find('Transparent/Diffuse')

Another Example:

JavaScripts
// Create a material from code

function Start () {
// Create a material with transparent diffuse shader
var material = new Material (Shader.Find ("Transparent/Diffuse"));
material.color = Color.green;
// assign the material to the renderer
renderer.material = material;
}

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
void Start() {
Material material = new Material(Shader.Find("Transparent/Diffuse"));
material.color = Color.green;
renderer.material = material;
}
}

import UnityEngine
import System.Collections

class example(MonoBehaviour):

def Start():
material as Material = Material(Shader.Find('Transparent/Diffuse'))
material.color = Color.green
renderer.material = material