MaterialPropertyBlock.Clear
Declaration
public void Clear();Описание
Ясные значения свойств материала.
Graphics.RenderMesh копирует переданный блок свойств, поэтому наиболее эффективным способом его использования является создание одного блока и повторное использование его для всех вызовов DrawMesh. Используйте Clear для очистки значений блока, и SetFloat, SetVector, SetColor, SetMatrix для добавления значений.
using UnityEngine;
public class Example : MonoBehaviour { Mesh aMesh; Material aMaterial = new Material(Shader.Find("VertexLit"));
void Update() { MaterialPropertyBlock materialProperty = new MaterialPropertyBlock();
// Clear any property and add a red color materialProperty.Clear(); materialProperty.SetColor("_Color", Color.red); Graphics.DrawMesh(aMesh, new Vector3(5, 0, 0), Quaternion.identity, aMaterial, 0, null, 0, materialProperty);
// Clear any property and add a green color materialProperty.Clear(); materialProperty.SetColor("_Color", Color.green); Graphics.DrawMesh(aMesh, new Vector3(-5, 0, 0), Quaternion.identity, aMaterial, 0, null, 0, materialProperty); } }