重要: このページは、2019.1 ベータサイクルで変更される可能性があります。
Particles Simple Lit シェーダー
Universal Render Pipeline (ユニバーサルレンダーパイプライン、URP) では、フォトリアリズムよりパフォーマンスが重要な場合に、パーティクルにこのシェーダーを使用します。このシェーダーは、ライティングに単純な近似を使用します。このシェーダーは 物理的な正確さやエネルギー保存を計算しない ため、迅速にレンダリングできます。
エディターで Particles Simple Lit シェーダーを使用する
このシェーダーを選択して使用するには:
- プロジェクト内でシェーダーを使用するマテリアルを作成または特定します。Material を選択します。マテリアルの Inspector ウィンドウが開きます。
- Shader をクリックして、Universal Render Pipeline > Particles > Simple Lit の順に選択します。
UI の概要
このシェーダーの Inspector ウィンドウには次の要素が含まれています。
Surface Options
Surface Options では、URP が画面上でマテリアルをレンダリングする方法を管理できます。
プロパティ | 説明 |
---|---|
Surface Type | このドロップダウンを使用して、マテリアルに Opaque または Transparent サーフェスタイプを適用します。これにより URP がマテリアルをレンダリングするレンダーパスが決定されます。Opaque サーフェスタイプは、背景に何があっても常に全体が表示されます。URP は不透明なマテリアルを最初にレンダリングします。Transparent サーフェスタイプは背景の影響を受け、選択した透明なサーフェスタイプの種類に応じて異なる場合があります。URP は不透明なオブジェクトの後に、透明なマテリアルを個別のパスでレンダリングします。Transparent を選択すると、Blending Mode のドロップダウンが表示されます。 |
Blending Mode | このドロップダウンを使用して、URP が透明なマテリアルを背景のピクセルとブレンドする際にそのマテリアルの各ピクセルの色を計算する方法を決定します。 Alpha を選択した場合は、マテリアルのアルファ値を使用してオブジェクトの透明度を変更します。0 は完全に透明になります。1 は完全に不透明になりますが、マテリアルは透明なレンダーパス中は引き続きレンダリングされます。これは、雲のように完全に表示されつつも時間とともにフェードするビジュアルに便利です。 Premultiply を選択すると、マテリアルに Alpha と似たようなエフェクトが適用されますが、サーフェスが透明な場合もリフレクションやハイライトが維持されます。これは反射した光のみが表示されることを意味します。例えば、透明なガラスを想像してください。 Additive を選択すると、マテリアルの別のサーフェスの上に追加のレイヤーが重ねられます。これはホログラムに適しています。 Multiply を選択すると、マテリアルの色とサーフェスの背後の色が乗算されます。これには画像を暗くする効果があり、色付きのガラスを通したように見えます。 |
Render Face | このドロップダウンを使用して、ジオメトリのどちらの側面をレンダリングするかを決定します。 Front Face を選択すると、ジオメトリの正面がレンダリングされ、背面が カリング されます。これがデフォルトの設定です。 Back Face を選択すると、ジオメトリの背面がレンダリングされ、正面がカリングされます。 Both を選択すると、ジオメトリの両面がレンダリングされます。これは葉っぱなど、両方の面が表示される、小さくてフラットなオブジェクトに適しています。 |
Alpha Clipping | マテリアルを カットアウト シェーダーのように動作させます。この機能を使用して、不透明な領域と透明な領域をはっきり分ける透明効果を作成できます。例えば、一面に草を生やすために使用できます。このエフェクトを完成させるため、URP は指定された Threshold (Alpha Clipping を有効にした場合に表示される) 未満のアルファ値をレンダリングしません。Threshold はスライダーを 0 - 1 の間で動かすことで設定できます。しきい値を超えるすべての値は完全に不透明になり、しきい値未満のすべての値は透明になります。例えば、しきい値が 0.1 の場合は、URP が 0.1 未満のアルファ値をレンダリングしないことを意味します。初期値は 0.5 です。 |
Color Mode | このドロップダウンを使用して、パーティクルとマテリアルの色をどのようにブレンドするかを決定します。 Multiply を選択すると、2 つの色が乗算され、最終的な色は暗くなります。 Additive を選択すると、2 つの色が加算され、最終的な色は明るくなります。 Subtractive を選択すると、マテリアルの通常色からパーティクルカラーが減算されます。これにより、明度が低くなり、ピクセル自体に全体的に暗いエフェクトが作成されます。 Overlay を選択すると、マテリアルの通常色上にパーティクルカラーがブレンドされます。これにより、0.5 を超える値では明るい色が作成され、0.5 未満の値では暗い色が作成されます。 Color を選択すると、マテリアルの通常色の値と彩度を維持しながら、パーティクルカラーを使用して、マテリアルカラーが色付けされます。これは、モノクロのシーンにカラースプラッシュを追加するのに適しています。 Difference を選択すると、両方の色の値の差が返されます。これは、互いに似ているパーティクルカラーとマテリアルカラーをブレンドするのに適しています。 |
Surface Inputs
Surface Inputs は、サーフェスそのものの設定です。例えば、これらのプロパティを使用して、濡れた面、乾いた面、粗い面、滑らかな面を表現できます。
プロパティ | 説明 |
---|---|
Base Map | サーフェスに色を追加します。Base Map 設定にテクスチャを指定するには、横にあるオブジェクトピッカーをクリックします。これによりアセットブラウザーが開き、そこでプロジェクトのテクスチャから選択できます。または、カラーピッカー を使用できます。設定の横にある色は、指定したテクスチャ上の色合いを示しています。別の色合いを指定するには、このカラースウォッチをクリックします。Surface Options で Transparent または Alpha Clipping を選択すると、マテリアルでテクスチャのアルファチャンネルまたは色が使用されます。ベースマップはディフューズマップとも呼ばれます。 |
Specular Map | ディレクショナルライト、ポイントライト、スポットライト などの直接光のスペキュラーハイライトの色を制御します。Specular Map 設定にテクスチャを指定するには、横にあるオブジェクトピッカーをクリックします。これによりアセットブラウザーが開き、そこでプロジェクトのテクスチャから選択できます。または、カラーピッカー を使用できます。 Source では、スムースネスのソースとして機能する、プロジェクト内のテクスチャを選択できます。デフォルトでは、ソースはこのテクスチャのアルファチャンネルです。 Smoothness スライダーを使用してサーフェス上のハイライトの広がりを制御できます。0 の場合は、広範囲で粗いハイライトになります。1 の場合は、ガラスのように小さく鋭いハイライトになります。0 と 1 の間の値の場合は、やや光沢のある質感になります。例えば、0.5 に設定するとプラスチックのような光沢になります。 ノート: この設定がグレー表示されている場合、Advanced 設定の Specular Highlights が有効になっているかどうかを確認してください。 |
Normal Map | サーフェスに法線マップを追加します。法線マップ を使用すると、凹凸、傷、溝などのサーフェスのディテールを追加できます。マップを追加するには、横にあるオブジェクトピッカーをクリックします。法線マップは環境内のアンビエントライトを検出します。 |
Emission | 表面が発光しているように見せます。有効にすると、Emission Map と Emission Color の設定が表示されます。 Emission Map を指定するには、横にあるオブジェクトの画像をクリックします。これによりアセットブラウザーが開き、そこでプロジェクト内のテクスチャから選択できます。 Emission Color の場合は、カラーピッカー を使用して色に重ねる色合いを指定できます。これは 100% の白を超えることができ、他の色でありながら白よりもまぶしく光る溶岩などの効果において便利です。 Emission Map を指定していない場合は、Emission 設定では Emission Color で指定した色合いのみが使用されます。 Emission を有効にしない場合は、URP は放出を黒に設定し、放出を計算しません。 |
Advanced
Advanced 設定は背後でのレンダリングに影響します。サーフェス上に目に見える効果はありませんが、パフォーマンスに影響する基礎の計算に影響を与えます。
プロパティ | 説明 |
---|---|
Flip-Book Blending | このボックスをチェックすると、フリップブックフレームがブレンドされます。これによりアニメーションが滑らかになるため、フレームが限られたテクスチャシートアニメーションで有用です。パフォーマンスの問題が生じた場合は、これをオフにしてみてください。 |
Specular Highlights | 有効にすると、ディレクショナルライト、ポイントライト、スポットライト などの直接光のスペキュラーハイライトがパーティクルに適用されます。つまり各パーティクルがこれらの光源からの光を反射するようになります。無効にすると、シェーダーではハイライトの計算が行われなくなり、シェーダーのレンダリングが速くなります。この機能はデフォルトで有効になっています。 |
Vertex Streams | このリストには、このマテリアルが正しく機能するために必要な頂点ストリームが表示されます。頂点ストリームが正しく割り当てられていない場合は、Fix Now ボタンが表示されます。このボタンをクリックして、このマテリアルが割り当てられているパーティクルシステムに正しい頂点ストリームの設定を適用します。 |
Sorting Priority | このスライダーを使用して、マテリアルの時間的なレンダリング順序を決定します。URP は、値が小さいマテリアルを先にレンダリングします。これを使用すると、パイプラインが他のマテリアルの前にあるマテリアルを先にレンダリングするため、重なってる部分を 2 回レンダリングしなくて済み、デバイスのオーバードローを減らすことができます。これは Unity のビルトインレンダーパイプライン内の レンダーキュー と同じように動作します。 |
Transparent サーフェスタイプ
Surface Options で Transparent サーフェスタイプを選択した場合、以下のオプションが表示されます。
プロパティ | 説明 |
---|---|
Soft Particles | このボックスをチェックすると、深度バッファ に書き込まれた他のジオメトリのサーフェスとの交差に近づいたときにパーティクルがフェードアウトします。 この機能を有効にした場合、Surface Fade 設定が表示されます。 Near では、パーティクルが完全に透明になる、他方のサーフェスからの距離を設定します。パーティクルは、この位置で完全にフェードアウトしているように見えます。 Far では、パーティクルが完全に不透明になる、他方のサーフェスからの距離を設定します。パーティクルはこの位置で完全に不透明に見えます。 距離はワールド単位で指定します。Transparent サーフェスタイプでのみ使用可能です。 ノート: この設定は、URP によって作成された CameraDepthTexture を使用します。この設定を使用するには、URP アセット またはパーティクルをレンダリングする カメラ の Depth Texture を有効にします。 |
Camera Fading | このボックスをチェックすると、カメラに近づいたときにパーティクルがフェードアウトします。 この機能を有効にした場合、Distance 設定が表示されます。 Near では、パーティクルが完全に透明になる、カメラからの距離を設定します。パーティクルは、この位置で完全にフェードアウトしているように見えます。 Far では、パーティクルが完全に不透明になる、カメラからの距離を設定します。パーティクルはこの位置で完全に不透明に見えます。 距離はワールド単位で指定します。 ノート: これは URP によって作成された CameraDepthTexture を使用します。この設定を使用するには、URP アセット またはパーティクルをレンダリングする カメラ の Depth Texture を有効にします。 |
Distortion | パーティクルを、その前に描画されているオブジェクトで屈折させることで歪み効果を作成します。これは、熱波の効果を作成したり、パーティクルの背後にあるオブジェクトをワープさせたりするのに有用です。 この機能を有効にした場合、以下の設定が表示されます。 Strength はパーティクルが背景をどの程度歪めるかを制御します。負の値は、正の値とは逆の効果を生成します。つまり、正の値で右にオフセットされた場合、その正の値と同じ数字の負の値では左にオフセットされます。 Blend は歪みがどの程度見えるかを制御します。0 では、歪みは目に見えません。1 では、歪み効果だけが表示されます。 ノート: これは URP によって作成された CameraOpaqueTexture を使用します。この設定を使用するには、URP アセット またはパーティクルをレンダリングする カメラ の Opaque Texture を有効にします。 |