Scripting API

MaterialPropertyBlock

class in UnityEngine · UnityEngine.CoreModule

29 of 38 of Unity's membersUnity's documentation
In Tassix

Per-renderer material property overrides. A renderer copies the block when it is set; it then draws with its materials and the block's values on top (see Renderer.SetPropertyBlock), leaving the materials themselves unchanged.

Properties 1

bool isEmpty { get; }

Methods 27

void Clear()
Color GetColor(string name)
Color GetColor(int nameID)
float GetFloat(string name)
float GetFloat(int nameID)
float[]? GetFloatArray(string name)
float[]? GetFloatArray(int nameID)
void GetFloatArray(string name, List<float> values)
void GetFloatArray(int nameID, List<float> values)
int GetInt(string name)
int GetInt(int nameID)
int GetInteger(string name)
int GetInteger(int nameID)
Matrix4x4 GetMatrix(string name)
Matrix4x4 GetMatrix(int nameID)
Texture? GetTexture(string name)
Texture? GetTexture(int nameID)
Vector4 GetVector(string name)
Vector4 GetVector(int nameID)
Vector4[]? GetVectorArray(string name)
Vector4[]? GetVectorArray(int nameID)
void GetVectorArray(string name, List<Vector4> values)
void GetVectorArray(int nameID, List<Vector4> values)
bool HasColor(string name)
bool HasColor(int nameID)
bool HasFloat(string name)
bool HasFloat(int nameID)
bool HasInt(string name)
bool HasInt(int nameID)
bool HasInteger(string name)
bool HasInteger(int nameID)
bool HasMatrix(string name)
bool HasMatrix(int nameID)
bool HasProperty(string name)
bool HasProperty(int nameID)
bool HasTexture(string name)
bool HasTexture(int nameID)
bool HasVector(string name)
bool HasVector(int nameID)
void SetColor(string name, Color value)
void SetColor(int nameID, Color value)

Colors are stored as vectors, made linear (the engine renders in linear space, as Unity's linear projects).

void SetFloat(string name, float value)
void SetFloat(int nameID, float value)
void SetFloatArray(string name, float[] values)
void SetFloatArray(int nameID, float[] values)
void SetFloatArray(string name, List<float> values)
void SetFloatArray(int nameID, List<float> values)
void SetInt(string name, int value)
void SetInt(int nameID, int value)
void SetInteger(string name, int value)
void SetInteger(int nameID, int value)
void SetMatrix(string name, Matrix4x4 value)
void SetMatrix(int nameID, Matrix4x4 value)
void SetTexture(string name, Texture value)
void SetTexture(int nameID, Texture value)
void SetVector(string name, Vector4 value)
void SetVector(int nameID, Vector4 value)
void SetVectorArray(string name, Vector4[] values)
void SetVectorArray(int nameID, Vector4[] values)
void SetVectorArray(string name, List<Vector4> values)
void SetVectorArray(int nameID, List<Vector4> values)

Not in Tassix yet 9

CopyProbeOcclusionArrayFrom CopySHCoefficientArraysFrom Finalize GetMatrixArray HasBuffer HasConstantBuffer SetBuffer SetConstantBuffer SetMatrixArray

Checked against Unity

Conformance scenarios that exercise it, recorded in Unity and compared event by event.