- Home /
Simple, Using a script to assign a shader
I have a special shader I have created. It seems you can't assign non default shaders to an object dynamically. So I put my shader in a Resources folder. This is my code, what am I doing wrong?
var s1 : Shader = Resources.Load("mySpecialShader");
renderer.material.shader = s1;
$$anonymous$$aybe I don't need to use the Resources folder. I just want to assign a shader I've made.
Answer by Eric5h5 · Aug 04, 2010 at 09:12 PM
Use Shader.Find, or make a material that includes your shader, and assign the material.
function Start () {
renderer.material.shader = Shader.Find("MySpecialShader");
}
Or:
var myMaterial : Material;
function Start () { renderer.material = myMaterial; }
Ah ok. I'll make a material. Something like this?
mat = $$anonymous$$aterial.Find("my$$anonymous$$at1"); s1.renderer.material = mat;
can't find an example in the scripting reference of how to assign a material. $$anonymous$$aterial.Find doesn't work.