![]() |
![]() |
|
![]() |
||||||||||
ProceduralMaterial class.
This class exposes all properties from a Procedural Material, allowing you to modify or animate them. In order to get a Procedural Material used by an object, use the Renderer.material as a ProceduralMaterial. After modifying one or more procedural properties, call RebuildTextures to update the Procedural Material to show the changes.
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
class example(MonoBehaviour):
public floatRangeProperty as string = 'Saturation'
public cycleTime as single = 10
def Update():
substance as ProceduralMaterial = renderer.sharedMaterial
if substance:
lerp as single = Mathf.PingPong(((Time.time * 2) / cycleTime), 1)
substance.SetProceduralFloat(floatRangeProperty, lerp)
substance.RebuildTextures()
| cacheSize |
Set & get the Procedural cache budget. |
| animationUpdateRate |
Set & get the update rate in millisecond of the animated substance |
| isProcessing |
Checks if the Procedural Material is currently in the process of rebuilding the textures. |
| isLoadTimeGenerated |
Should the Procedural Material be generated at load time? |
| ProceduralMaterial |
Default constructor. This should not be used. |
| GetProceduralPropertyDescriptions |
Get an array of descriptions of all the properties this Procedural Material has. |
| HasProceduralProperty |
Checks if the Procedural Material has a property of a given name. |
| GetProceduralBoolean |
Get a named Procedural boolean property. |
| SetProceduralBoolean |
Set a named Procedural boolean property. |
| GetProceduralFloat |
Get a named Procedural float property. |
| SetProceduralFloat |
Set a named Procedural float property. |
| GetProceduralVector |
Get a named Procedural vector property. |
| SetProceduralVector |
Set a named Procedural vector property. |
| GetProceduralColor |
Get a named Procedural color property. |
| SetProceduralColor |
Set a named Procedural color property. |
| GetProceduralEnum |
Get a named Procedural enum property. |
| SetProceduralEnum |
Set a named Procedural enum property. |
| GetProceduralTexture |
Get a named Procedural texture property. |
| SetProceduralTexture |
Set a named Procedural texture property. |
| IsProceduralPropertyCached |
Checks if a named Procedural property is cached for efficient runtime tweaking. |
| CacheProceduralProperty |
Specifies if a named Procedural property should be cached for efficient runtime tweaking. |
| ClearCache |
Clear the Procedural cache. |
| RebuildTextures |
Triggers an asyncronous rebuild of all dirty textures. |
| RebuildTexturesImmediately |
Triggers an immediate (synchronous) rebuild of all dirty textures. |
| isSupported |
Checks if the Procedural Materials are supported on the current platform. |
| substanceProcessorUsage |
Used to specify the Substance engine CPU usage. |
| StopRebuilds |
Remove the current pending rebuilds of the Procedural Material. |
| 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 |
| name |
The name of the object. |
| hideFlags |
Should the object be hidden, saved with the scene or modifiable by the user? |
| Material |
Create a temporary material from a shader source string. |
| 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. |
| GetInstanceID |
Returns the instance id of the object. |
| ToString |
Returns the name of the game object. |
| 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. |