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

スクリプト言語

好きな言語を選択してください。選択した言語でスクリプトコードが表示されます。

ShaderVariantCollection

class in UnityEngine

/

継承:Object

フィードバック

ありがとうございます

この度はドキュメントの品質向上のためにご意見・ご要望をお寄せいただき、誠にありがとうございます。頂いた内容をドキュメントチームで確認し、必要に応じて修正を致します。

閉じる

送信に失敗しました

なんらかのエラーが発生したため送信が出来ませんでした。しばらく経ってから<a>もう一度送信</a>してください。ドキュメントの品質向上のために時間を割いて頂き誠にありがとうございます。

閉じる

キャンセル

マニュアルに切り替える

説明

ShaderVariantCollection はどのシェーダーバリアントが各シェーダーで実際に使用されているかを記録します。

これはシェーダーをプリロードするために使います ( "ウオームアップ" ) 。だから、ゲームは "実際に必要" と確認することができ、ゲーム後半でのシェーダーのコンパイルに関連するちらつきを避けるためにシェーダーバリアントは起動時 (あるいはレベルの読み込み時) に読み込まれます。

Unity 内には、Different light モード、ライトマップ、シャドウなどのために多くのシェーダー内部に複数の "バリアント" があります。これらのバリアントはシェーダーパスタイプとシェーダーキーワードのセットによって識別されます。 ShaderVariant を参照してください。

ShaderVariantCollection は一般的に ( Graphics Settings で) エディターからプレイ セッションで使用されるシェーダーバリアントを記録し、アセットとしてそれらを保存し、(再度 Graphics Settings で) プリロードシェーダーのリストに追加することに使われます。さらに、手動で ShaderVariantCollection オブジェクトの WarmUp を呼び出すことができます。

一般的に ShaderVariantCollection は古い Shader.WarmupAllShaders 関数を置き換えます。

変数

isWarmedUpこれはすでにウォームアップした ShaderVariantCollection かどうか (読み取り専用)
shaderCountこのコレクションでのシェーダーの数 (読み取り専用)
variantCountこのコレクションでのバリアントの合計 (読み取り専用)

コンストラクタ

ShaderVariantCollection新しい空のシェーダーバリアントのコレクションを作成します。

Public 関数

Add新しいシェーダーバリアントをコレクションに追加します。
Clearコレクションからすべてのシェーダーバリアントを削除します。
Containsシェーダーバリアントがコレクション内にあるかどうかを確認します。
Removeコレクションからシェーダーバリエーションを追加します。
WarmUpShaderVariantCollection のシェーダーを全部読み込みます。

継承メンバー

変数

hideFlagsオブジェクトは非表示、シーンに保存、ユーザーが編集可能、などを設定する。
nameオブジェクト名

Public 関数

GetInstanceIDオブジェクトのインスタンス ID を返します
ToStringゲームオブジェクトの名前を返します

Static 関数

Destroyゲームオブジェクトやコンポーネント、アセットを削除します
DestroyImmediate直ちにオブジェクトを破壊する (Destroy 関数の方を使うことを推奨します)
DontDestroyOnLoad新しいシーンを読み込んでもオブジェクトが自動で破壊されないように設定します
FindObjectOfTypeタイプ type から最初に見つけたアクティブのオブジェクトを返します
FindObjectsOfTypeタイプから見つけたすべてのアクティブのオブジェクト配列を返します
Instantiateオブジェクト original のコピーを返します

Operator

boolオブジェクトが存在するかどうか
operator !=二つのオブジェクトが異なるオブジェクトを参照しているか比較します
operator ==2つのオブジェクト参照が同じオブジェクトを参照しているか比較します。