Material Manual     Reference     Scripting  
Scripting > Runtime Classes > Material
Material Inherits from Object

The material class.

This class exposes all properties from a material, allowing you to animate them. You can also use it to set custom shader properties that can't be accessed through the inspector (e.g. matrices).

In order to get the material used by an object, use the Renderer.material property: See Also: Materials, ShaderLab documentation.

JavaScript
renderer.material.color = Color.red;

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
void Example() {
renderer.material.color = Color.red;
}
}

import UnityEngine
import System.Collections

class example(MonoBehaviour):

def Example():
renderer.material.color = Color.red

Variables
shader

The shader used by the material.

color

The main material's color.

mainTexture

The main material's texture.

mainTextureOffset

The texture offset of the main texture.

mainTextureScale

The texture scale of the main texture.

passCount

How many passes are in this material (Read Only).

renderQueue

Render queue of this material

Constructors
Material

Create a temporary material from a shader source string.

Functions
SetColor

Set a named color value.

GetColor

Get a named color value.

SetVector

Set a named vector value.

GetVector

Get a named vector value.

SetTexture

Set a named texture.

GetTexture

Get a named texture.

SetTextureOffset

Sets the placement offset of texture propertyName.

GetTextureOffset

Gets the placement offset of texture propertyName.

SetTextureScale

Sets the placement scale of texture propertyName.

GetTextureScale

Gets the placement scale of texture propertyName.

SetMatrix

Set a named matrix for the shader.

GetMatrix

Get a named matrix value from the shader.

SetFloat

Set a named float value.

GetFloat

Get a named float value.

HasProperty

Checks if material's shader has a property of a given name.

GetTag

Get the value of material's shader tag.

Lerp

Interpolate properties between two materials.

SetPass

Activate the given pass for rendering.

CopyPropertiesFromMaterial

Copy properties from other material into this material.

Inherited members
Inherited Variables
name

The name of the object.

hideFlags

Should the object be hidden, saved with the scene or modifiable by the user?

Inherited Functions
GetInstanceID

Returns the instance id of the object.

ToString

Returns the name of the game object.

Inherited Class Functions
operator bool

Does the object exist?

Instantiate

Clones the object original and returns the clone.

Destroy

Removes a gameobject, component or asset.

DestroyImmediate

Destroys the object obj immediately. It is strongly recommended to use Destroy instead.

FindObjectsOfType

Returns a list of all active loaded objects of Type type.

FindObjectOfType

Returns the first active loaded object of Type type.

operator ==

Compares if two objects refer to the same

operator !=

Compares if two objects refer to a different object

DontDestroyOnLoad

Makes the object target not be destroyed automatically when loading a new scene.