Legacy Documentation: Version 4.6(go to latest)
Language: English
  • C#
  • JS
  • Boo

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.


Namespace: UnityEngine


Inherits from: Object

Suggest a change


Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.


Sumbission failed

For some reason your suggested change could not be submitted. Please try again in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.




Shader scripts used for all rendering.

Most of the advanced rendering is controlled via Material class. Shader class is mostly used just to check whether a shader can run on the user's hardware (isSupported property) and to find shaders by name (Find method).

See Also: Material class, Materials, ShaderLab documentation.

Static Variables

globalMaximumLOD Shader LOD level for all shaders.


isSupported Can this shader run on the end-users graphics card? (Read Only)
maximumLOD Shader LOD level for this shader.
renderQueue Render queue of this shader. (Read Only)

Static Functions

Find Finds a shader with the given name.
PropertyToID Gets unique identifier for a shader property name.
SetGlobalBuffer Sets a global compute buffer property for all shaders.
SetGlobalColor Sets a global color property for all shaders.
SetGlobalFloat Sets a global float property for all shaders.
SetGlobalInt Sets a global int property for all shaders.
SetGlobalMatrix Sets a global matrix property for all shaders.
SetGlobalTexture Sets a global texture property for all shaders.
SetGlobalVector Sets a global vector property for all shaders.
WarmupAllShaders Fully load all shaders to prevent future performance hiccups.

Inherited members


hideFlags Should the object be hidden, saved with the scene or modifiable by the user?
name The name of the object.


GetInstanceID Returns the instance id of the object.
ToString Returns the name of the game object.

Static Functions

Destroy Removes a gameobject, component or asset.
DestroyImmediate Destroys the object obj immediately. You are strongly recommended to use Destroy instead.
DontDestroyOnLoad Makes the object target not be destroyed automatically when loading a new scene.
FindObjectOfType Returns the first active loaded object of Type type.
FindObjectsOfType Returns a list of all active loaded objects of Type type.
Instantiate Clones the object original and returns the clone.


bool Does the object exist?
operator != Compares if two objects refer to a different object.
operator == Compares if two objects refer to the same.