Version: 5.4 (switch to 5.5b)
言語English
  • C#
  • JS

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

MaterialPropertyBlock

class in UnityEngine

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Sumbission failed

For some reason your suggested change could not be submitted. Please try again in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

マニュアルに切り替える

Description

マテリアル情報を適用するブロック要素を作成します。

MaterialPropertyBlock は Graphics.DrawMeshRenderer.SetPropertyBlock に使用されます。 同じマテリアルを使用してオブジェクトを描画するとき、 わずかに異なる性質を持たせたいときなどに使用します。 例えば描画する各メッシュの色をわずかに変えたい場合などがあります。

Unity の地形( Terrain )エンジンは MaterialPropertyBlock を使用して樹木( Tree )を描画します。 すべてが同じマテリアルを使用しますが、おのおのの樹木はカラー、スケール、風( Wind )要素を変えています。

Graphics.DrawMesh や Renderer.SetPropertyBlock に渡されたプロパティーブロックは複製されるため、もっとも効率的な使用方法は ひとつのブロックを作成してすべての DrawMesh の呼び出しでそれを再利用することです。 SetFloat, SetVector, SetColor, SetMatrix, SetTexture, SetBuffer を使用することで値を加えるか、置換えすることができます。

See Also: Graphics.DrawMesh, Material.

Variables

isEmptyMaterialPropertyBlock が空かどうか (読み込み専用)

Public Functions

Clear設定したマテリアルプロパティーをすべて削除します。
GetFloatプロパティーブロックから float を取得します
GetMatrixプロパティーブロックから matrix を取得します
GetTextureプロパティーブロックから texture を取得します
GetVectorプロパティーブロックから vector を取得します。
SetBuffer ComputeBuffer プロパティーを設定します。
SetColorcolor 型のプロパティーを設定します
SetFloatfloat 型のプロパティーを設定します
SetFloatArrayfloat 型の配列プロパティーを設定します。
SetMatrixMatrix4x4 型のプロパティーを設定します
SetMatrixArrayMatrix 配列プロパティーを設定します。
SetTextureTexture 型のプロパティーを設定します
SetVectorvector 型のプロパティーを設定します
SetVectorArrayVector 型の配列プロパティーを設定します。