function SetMatrix (propertyName : string, matrix : Matrix4x4) : void
Description
Set a named matrix for the shader.
This is mostly used with custom shaders that need extra matrix
parameters. Matrix parameters are not exposed in the material inspector,
but can be set and queried with SetMatrix and GetMatrix from scripts.
See Also: GetMatrix, Materials, ShaderLab documentation.
var rotateSpeed = 30;
var texture :
Texture;
function Start() {
var m : Material =
new Material (
"Shader \"Rotating
Texture\
" {" +
"Properties { _MainTex (\"Base\
", 2D) = \"white\
" {} }" +
"SubShader {" +
" Pass {" +
" Material { Diffuse (1,1,1,0) Ambient (1,1,1,0) }" +
" Lighting On" +
" SetTexture [_MainTex] {" +
" matrix [_Rotation]" +
" combine texture * primary double, texture" +
" }" +
" }" +
"}" +
"}" );
m.mainTexture = texture;
renderer.material = m;
}
function Update() {
var rot =
Quaternion.Euler (0, 0,
Time.time * rotateSpeed);
var m =
Matrix4x4.TRS (
Vector3.zero, rot,
Vector3(1,1,1) );
renderer.material.SetMatrix (
"_Rotation", m);
}