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. |
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 | 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. |
IsKeywordEnabled | Is the shader keyword enabled on this material? |
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.When setting values on materials using the Standard Shader, you should be aware that you may need to use EnableKeyword to enable features of the shader that were not previously in use. For more detail, read Accessing Materials via Script. |
SetMatrix | Set a named matrix for the shader. |
SetOverrideTag | Sets an override tag/value on the material. |
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. |
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. |