MaterialPropertyBlock.Clear 清除

function Clear () : void

Description描述

Clear material property values.

清除材质属性值。

Graphics.DrawMesh copies the passed property block, so the most efficient way of using it is to create one block and reuse it for all DrawMesh calls. Use Clear to clear block's values, and AddFloat, AddVector, AddColor, AddMatrix to add values.

Graphics.DrawMesh 拷贝传递属性块,因此最有效的方式是使用它来创建一个块并为所有DrawMesh调用使用它。使用Clear来清除块的值,ADDFloat,AddVector,AddColor,AddMatrix来添加值.

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
	public Mesh aMesh;
	public Material aMaterial = new Material(Shader.Find("VertexLit"));
	void Update() {
		MaterialPropertyBlock materialProperty = new MaterialPropertyBlock();
		materialProperty.Clear();
		materialProperty.AddColor("_Color", Color.red);
		Graphics.DrawMesh(aMesh, new Vector3(5, 0, 0), Quaternion.identity, aMaterial, 0, null, 0, materialProperty);
		materialProperty.Clear();
		materialProperty.AddColor("_Color", Color.green);
		Graphics.DrawMesh(aMesh, new Vector3(-5, 0, 0), Quaternion.identity, aMaterial, 0, null, 0, materialProperty);
	}
}
var aMesh : Mesh;
var aMaterial : Material = new Material(Shader.Find("VertexLit"));

function Update() {
	var materialProperty : MaterialPropertyBlock = new MaterialPropertyBlock();

	// Clear any property and add a red color
	//清除任何属性并添加一个红色
	materialProperty.Clear();
	materialProperty.AddColor("_Color", Color.red);
	Graphics.DrawMesh(aMesh, Vector3(5,0,0), Quaternion.identity,
	aMaterial, 0, null, 0, materialProperty);
	// Clear any property and add a green color
	//清除任何属性并添加一个绿色
	materialProperty.Clear();
	materialProperty.AddColor("_Color", Color.green);
	Graphics.DrawMesh(aMesh, Vector3(-5,0,0), Quaternion.identity,
	aMaterial, 0, null, 0, materialProperty);
}
最后修改:2011年3月1日 Tuesday 22:34

本脚本参考基于Unity 3.4.1f5

英文部分版权属©Unity公司所有,中文部分© Unity圣典 版权所有,未经许可,严禁转载 。