Class for ProceduralMaterial handling.
var floatRangeProperty : String = "Saturation"; var cycleTime : float = 10;function Update () { var substance : ProceduralMaterial = renderer.sharedMaterial as ProceduralMaterial; if (substance) { // Make the property go up and down over time var lerp = Mathf.PingPong (Time.time * 2 / cycleTime, 1); substance.SetProceduralFloat (floatRangeProperty, lerp); substance.RebuildTextures (); } }
using UnityEngine; using System.Collections; public class Example : MonoBehaviour { public string floatRangeProperty = "Saturation"; public float cycleTime = 10; void Update() { ProceduralMaterial substance = renderer.sharedMaterial as ProceduralMaterial; if (substance) { float lerp = Mathf.PingPong(Time.time * 2 / cycleTime, 1); substance.SetProceduralFloat(floatRangeProperty, lerp); substance.RebuildTextures(); } } }
import UnityEngine import System.Collections public class Example(MonoBehaviour): public floatRangeProperty as string = 'Saturation' public cycleTime as float = 10 def Update() as void: substance as ProceduralMaterial = (renderer.sharedMaterial as ProceduralMaterial) if substance: lerp as float = Mathf.PingPong(((Time.time * 2) / cycleTime), 1) substance.SetProceduralFloat(floatRangeProperty, lerp) substance.RebuildTextures()
| isSupported | Check if ProceduralMaterials are supported on the current platform. | 
|---|---|
| substanceProcessorUsage | Used to specify the Substance engine CPU usage. | 
| animationUpdateRate | Set or get the update rate in millisecond of the animated substance. | 
|---|---|
| cacheSize | Set or get the Procedural cache budget. | 
| isLoadTimeGenerated | Should the ProceduralMaterial be generated at load time? | 
| isProcessing | Check if the ProceduralTextures from this ProceduralMaterial are currently being rebuilt. | 
| isReadable | Set or get the "Readable" flag for a ProceduralMaterial. | 
| loadingBehavior | Get ProceduralMaterial loading behavior. | 
| preset | Set or get an XML string of "input/value" pairs (settings the preset rebuilds the textures). | 
| CacheProceduralProperty | Specifies if a named ProceduralProperty should be cached for efficient runtime tweaking. | 
|---|---|
| ClearCache | Clear the Procedural cache. | 
| GetGeneratedTexture | This allows to get a reference to a ProceduralTexture generated by a ProceduralMaterial using its name. | 
| GetGeneratedTextures | Get generated textures. | 
| GetProceduralBoolean | Get a named Procedural boolean property. | 
| GetProceduralColor | Get a named Procedural color property. | 
| GetProceduralEnum | Get a named Procedural enum property. | 
| GetProceduralFloat | Get a named Procedural float property. | 
| GetProceduralPropertyDescriptions | Get an array of descriptions of all the ProceduralProperties this ProceduralMaterial has. | 
| GetProceduralTexture | Get a named Procedural texture property. | 
| GetProceduralVector | Get a named Procedural vector property. | 
| HasProceduralProperty | Checks if the ProceduralMaterial has a ProceduralProperty of a given name. | 
| IsProceduralPropertyCached | Checks if a named ProceduralProperty is cached for efficient runtime tweaking. | 
| RebuildTextures | Triggers an asynchronous rebuild of this ProceduralMaterial's dirty textures. | 
| RebuildTexturesImmediately | Triggers an immediate (synchronous) rebuild of this ProceduralMaterial's dirty textures. | 
| SetProceduralBoolean | Set a named Procedural boolean property. | 
| SetProceduralColor | Set a named Procedural color property. | 
| SetProceduralEnum | Set a named Procedural enum property. | 
| SetProceduralFloat | Set a named Procedural float property. | 
| SetProceduralTexture | Set a named Procedural texture property. | 
| SetProceduralVector | Set a named Procedural vector property. | 
| StopRebuilds | Discard all the queued ProceduralMaterial rendering operations that have not started yet. | 
|---|
| color | The main material's color. | 
|---|---|
| mainTexture | The 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. | 
| shader | The shader used by the material. | 
| shaderKeywords | Additional shader keywords set by this material. | 
| hideFlags | Should the object be hidden, saved with the scene or modifiable by the user? | 
| m_CachedPtr | |
| m_InstanceID | |
| name | The name of the object. | 
| CopyPropertiesFromMaterial | Copy properties from other material into this material. | 
|---|---|
| DisableKeyword | Unset a shader keyword. | 
| EnableKeyword | Set a shader keyword that is enabled by this material. | 
| GetColor | Get a named color value. | 
| GetFloat | Get a named float value. | 
| GetInt | Get a named integer value. | 
| GetMatrix | Get a named matrix value from the shader. | 
| GetTag | Get the value of material's shader tag. | 
| GetTexture | Get a named texture. | 
| GetTextureOffset | Gets the placement offset of texture propertyName. | 
| GetTextureScale | Gets the placement scale of texture propertyName. | 
| GetVector | Get a named vector value. | 
| HasProperty | Checks if material's shader has a property of a given name. | 
| Lerp | Interpolate properties between two materials. | 
| SetBuffer | Set a ComputeBuffer value. | 
| SetColor | Set a named color value. | 
| SetFloat | Set a named float value. | 
| SetInt | Set a named integer value. | 
| SetMatrix | Set a named matrix for the shader. | 
| SetPass | Activate the given pass for rendering. | 
| SetTexture | Set a named texture. | 
| SetTextureOffset | Sets the placement offset of texture propertyName. | 
| SetTextureScale | Sets the placement scale of texture propertyName. | 
| SetVector | Set a named vector value. | 
| GetHashCode | |
| GetInstanceID | Returns the instance id of the object. | 
| ToString | Returns the name of the game object. | 
| 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. |