Class for ProceduralMaterial handling.
var floatRangeProperty : String = "Saturation"; var cycleTime : float = 10; var rend: Renderer;
function Start() { rend = GetComponent.<Renderer>(); }
function Update () { var substance : ProceduralMaterial = rend.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 ExampleClass : MonoBehaviour { public string floatRangeProperty = "Saturation"; public float cycleTime = 10; public Renderer rend; void Start() { rend = GetComponent<Renderer>(); } void Update() { ProceduralMaterial substance = rend.sharedMaterial as ProceduralMaterial; if (substance) { float lerp = 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. |
isCachedDataAvailable | Indicates whether cached data is available for this ProceduralMaterial's textures (only relevant for Cache and DoNothingAndCache loading behaviors). |
isFrozen | Returns true if FreezeAndReleaseSourceData was called on this ProceduralMaterial. |
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 (setting the preset rebuilds the textures). |
CacheProceduralProperty | Specifies if a named ProceduralProperty should be cached for efficient runtime tweaking. |
ClearCache | Clear the Procedural cache. |
FreezeAndReleaseSourceData | Render a ProceduralMaterial immutable and release the underlying data to decrease the memory footprint. |
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. |
IsProceduralPropertyVisible | Checks if a given ProceduralProperty is visible according to the values of this ProceduralMaterial's other ProceduralProperties and to the ProceduralProperty's visibleIf expression. |
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. |
doubleSidedGI | Gets and sets whether the Double Sided Global Illumination setting is enabled for this material. |
enableInstancing | Gets and sets whether GPU instancing is enabled for this material. |
globalIlluminationFlags | Defines how the material should interact with lightmaps and lightprobes. |
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? |
name | The name of the object. |
CopyPropertiesFromMaterial | Copy properties from other material into this material. |
DisableKeyword | Unset a shader keyword. |
EnableKeyword | Sets a shader keyword that is enabled by this material. |
FindPass | Returns the index of the pass passName. |
GetColor | Get a named color value. |
GetColorArray | Get a named color array. |
GetFloat | Get a named float value. |
GetFloatArray | Get a named float array. |
GetInt | Get a named integer value. |
GetMatrix | Get a named matrix value from the shader. |
GetMatrixArray | Get a named matrix array. |
GetPassName | Returns the name of the shader pass at index pass. |
GetShaderPassEnabled | Checks whether a given Shader pass is enabled on this Material. |
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. |
GetVectorArray | Get a named vector array. |
HasProperty | Checks if material's shader has a property of a given name. |
IsKeywordEnabled | Is the shader keyword enabled on this material? |
Lerp | Interpolate properties between two materials. |
SetBuffer | Sets a named ComputeBuffer value. |
SetColor | Sets a named color value. |
SetColorArray | Sets a color array property. |
SetFloat | Sets a named float value. |
SetFloatArray | Sets a float array property. |
SetInt | Sets a named integer value. |
SetMatrix | Sets a named matrix for the shader. |
SetMatrixArray | Sets a matrix array property. |
SetOverrideTag | Sets an override tag/value on the material. |
SetPass | Activate the given pass for rendering. |
SetShaderPassEnabled | Enables or disables a Shader pass on a per-Material level. |
SetTexture | Sets a named texture. |
SetTextureOffset | Sets the placement offset of texture propertyName. |
SetTextureScale | Sets the placement scale of texture propertyName. |
SetVector | Sets a named vector value. |
SetVectorArray | Sets a vector array property. |
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 two object references to see if they refer to the same object. |