ビルトインレンダーパイプラインでゲームオブジェクトからライトを放出する
ビルトインレンダーパイプラインでのシェーダーによるライトマップデータの提供方法のカスタマイズ
ビルトインレンダーパイプラインのクッキーの作成
ビルトインレンダーパイプラインで使用する クッキー を作成する最も便利な方法は、グレースケールのテクスチャを作成し、そのテクスチャを Unity にインポートしてから、Unity によってテクスチャの明度をアルファに変換することです。
なお、ビルトインレンダーパイプラインでは、クッキーはアルファチャンネルのデータのみを使用します。つまり、クッキーの形状を定義することはできても、色を定義することはできないということです。
窓からのライトのためのシンプルなグレースケールのクッキー
窓からのライトをシミュレートする同じクッキー
手順は以下のとおりです。
- 任意の画像エディターでグレースケールのテクスチャを作成します。ポイントライトで使用するクッキーを作成する場合は、テクスチャをキューブマップとしてレイアウトします。スポットライトやディレクショナルライトで使用するクッキーを作成する場合は、テクスチャを通常の 2D テクスチャとしてレイアウトします。
- テクスチャを Unity にインポートするために、プロジェクトの Assets フォルダーに配置します。
- Project ウィンドウで、テクスチャを表すテクスチャアセットを選択します。Inspector に テクスチャのインポート設定 が表示されます。
- Inspector で以下の値を設定します。
-
Texture Type を Cookie に設定します。
- クッキーを作成するライトのタイプに合わせて Light Type を設定します。
-
Alpha Source を From Gray Scale に設定します。
- Inspector の下端で、Apply をクリックします。Unity は、更新されたインポート設定をテクスチャアセットに適用します。
なお、クッキーのピクセルは、完全に透明または不透明である必要はなく、その中間のどんな値を組み合わせることも可能です。中間の値を使って、ライトの通り道にあるほこりや汚れをシミュレートしたり、車のヘッドライトの隆起した部分が生み出すようなコースティクス効果をシミュレートできます。
ビルトインレンダーパイプラインでクッキーのインポート設定を行う方法については、Texture Type ページの Cookie を参照してください。
制限
ビルトインレンダーパイプラインでは、VertexLit シェーダーはクッキーまたは影を表示できません。
フォワードレンダリングが使用されている場合、クッキーを使用したディレクショナルライトの影は無効になります。この場合、カスタムシェーダーを記述して影を有効にすることが可能です。詳細については、サーフェスシェーダーの記述 に関するドキュメントを参照してください。
追加リソース
ビルトインレンダーパイプラインでゲームオブジェクトからライトを放出する
ビルトインレンダーパイプラインでのシェーダーによるライトマップデータの提供方法のカスタマイズ