Version: 2017.2

ProceduralMaterial

class in UnityEngine

/

继承自:Material

切换到手册

描述

Class for ProceduralMaterial handling.

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(); } } }

静态变量

isSupportedCheck if ProceduralMaterials are supported on the current platform.
substanceProcessorUsageUsed to specify the Substance engine CPU usage.

变量

animationUpdateRateSet or get the update rate in millisecond of the animated substance.
cacheSizeSet or get the Procedural cache budget.
isCachedDataAvailableIndicates whether cached data is available for this ProceduralMaterial's textures (only relevant for Cache and DoNothingAndCache loading behaviors).
isFrozenReturns true if FreezeAndReleaseSourceData was called on this ProceduralMaterial.
isLoadTimeGeneratedShould the ProceduralMaterial be generated at load time?
isProcessingCheck if the ProceduralTextures from this ProceduralMaterial are currently being rebuilt.
isReadableSet or get the "Readable" flag for a ProceduralMaterial.
loadingBehaviorGet ProceduralMaterial loading behavior.
presetSet or get an XML string of "input/value" pairs (setting the preset rebuilds the textures).

公共函数

CacheProceduralPropertySpecifies if a named ProceduralProperty should be cached for efficient runtime tweaking.
ClearCacheClear the Procedural cache.
FreezeAndReleaseSourceDataRender a ProceduralMaterial immutable and release the underlying data to decrease the memory footprint.
GetGeneratedTextureThis allows to get a reference to a ProceduralTexture generated by a ProceduralMaterial using its name.
GetGeneratedTexturesGet generated textures.
GetProceduralBooleanGet a named Procedural boolean property.
GetProceduralColorGet a named Procedural color property.
GetProceduralEnumGet a named Procedural enum property.
GetProceduralFloatGet a named Procedural float property.
GetProceduralPropertyDescriptionsGet an array of descriptions of all the ProceduralProperties this ProceduralMaterial has.
GetProceduralStringGet a named Procedural string property.
GetProceduralTextureGet a named Procedural texture property.
GetProceduralVectorGet a named Procedural vector property.
HasProceduralPropertyChecks if the ProceduralMaterial has a ProceduralProperty of a given name.
IsProceduralPropertyCachedChecks if a named ProceduralProperty is cached for efficient runtime tweaking.
IsProceduralPropertyVisibleChecks if a given ProceduralProperty is visible according to the values of this ProceduralMaterial's other ProceduralProperties and to the ProceduralProperty's visibleIf expression.
RebuildTexturesTriggers an asynchronous rebuild of this ProceduralMaterial's dirty textures.
RebuildTexturesImmediately触发此 ProceduralMaterial 的脏纹理的立即(同步)重新构建。
SetProceduralBooleanSet a named Procedural boolean property.
SetProceduralColorSet a named Procedural color property.
SetProceduralEnumSet a named Procedural enum property.
SetProceduralFloatSet a named Procedural float property.
SetProceduralStringSet a named Procedural string property.
SetProceduralTextureSet a named Procedural texture property.
SetProceduralVectorSet a named Procedural vector property.

静态函数

StopRebuildsDiscard all the queued ProceduralMaterial rendering operations that have not started yet.

继承的成员

变量

color主材质的颜色。
doubleSidedGI获取和设置是否为此材质启用双面全局光照设置。
enableInstancing获取和设置是否为此材质启用 GPU 实例化。
globalIlluminationFlags定义材质应如何与光照贴图和光照探针交互。
mainTexture材质的纹理。
mainTextureOffset主纹理的纹理偏移。
mainTextureScale主纹理的纹理缩放。
passCount此材质中的通道数(只读)。
renderQueue此材质的渲染队列。
shader材质使用的着色器。
shaderKeywords此材质设置的附加着色器关键字。
hideFlags该对象应该隐藏、随场景一起保存还是由用户修改?
name对象的名称。

公共函数

CopyPropertiesFromMaterial将属性从其他材质复制到此材质中。
DisableKeyword取消设置着色器关键字。
EnableKeyword设置此材质启用的着色器关键字。
FindPass返回通道 passName 的索引。
GetColor获取指定的颜色值。
GetColorArray获取指定的颜色数组。
GetFloat获取指定的浮点值。
GetFloatArray获取指定的浮点数组。
GetInt获取指定的整数值。
GetMatrix从着色器获取指定的矩阵值。
GetMatrixArray获取指定的矩阵数组。
GetPassName返回索引 pass 处的着色器通道的名称。
GetShaderPassEnabled检查此材质上是否启用了给定的着色器通道。
GetTag获取材质着色器标记的值。
GetTexture获取指定的纹理。
GetTextureOffset获取纹理 propertyName 的位置偏移。
GetTextureScale获取纹理 propertyName 的位置缩放。
GetVector获取指定的向量值。
GetVectorArray获取指定的向量数组。
HasProperty检查材质的着色器是否具有给定名称的属性。
IsKeywordEnabled此材质上是否启用了着色器关键字?
Lerp在两个材质之间对属性进行插值。
SetBuffer设置指定的 ComputeBuffer 值。
SetColor设置指定的颜色值。
SetColorArray设置颜色数组属性。
SetFloat设置指定的浮点值。
SetFloatArray设置浮点数组属性。
SetInt设置指定的整数值。
SetMatrix为着色器设置指定的矩阵。
SetMatrixArray设置矩阵数组属性。
SetOverrideTag对材质设置重写标记/值。
SetPass激活给定的 pass 以进行渲染。
SetShaderPassEnabled在每个材质级别上启用或禁用着色器通道。
SetTexture设置指定的纹理。
SetTextureOffset设置纹理 propertyName 的位置偏移。
SetTextureScale设置纹理 propertyName 的位置缩放。
SetVector设置指定的向量值。
SetVectorArray设置向量数组属性。
GetInstanceID返回对象的实例 ID。
ToStringReturns the name of the game object.

静态函数

Destroy删除 GameObject、组件或资源。
DestroyImmediate立即销毁对象 /obj/。强烈建议您改用 Destroy。
DontDestroyOnLoad加载新场景时,不自动销毁对象 /target/。
FindObjectOfType返回第一个类型为 type 的已加载的激活对象。
FindObjectsOfType返回所有类型为 type 的已加载的激活对象的列表。
Instantiate克隆 original 对象并返回克隆对象。

运算符

bool该对象是否存在?
operator !=比较两个对象是否引用不同的对象。
operator ==比较两个对象引用,判断它们是否引用同一个对象。