透明カットアウトバンプ拡散
自己発光シェーダ ファミリー

透明カットアウトバンプ鏡面

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

このシェーダの考慮点はベースのテクスチャのアルファチャネルが透過の領域および鏡面マップを両方定義することです。

Transparent Cutoutプロパティ

Cutout(切り抜き)シェーダは透明オブジェクトを表現する別の手法です。Cutoutと通常のTransparent シェーダの違いは:

  • このシェーダは部分的に透過の領域を持つことが出来ません。完全に不透明であるか,完全に透過であるかしかありません。
  • このシェーダを用いたオブジェクトは影を投影したり受け取ることが出来ます。
  • 透明シェーダで発生するグラフィックスのソート問題はこのシェーダでは発生しません。

このシェーダはBaseテクスチャに含まれるアルファチャネルを使用して透明な領域の判定を行います。もしアルファチャネルが透明と不透明のブレンドを含んでる場合,どのエリアを表示するかのしきい値を指定できます。この値はAlpha Cutoff(透過しきい値)のスライドバーを調整することで変更できます。

法線マップ プロパティ

Diffuse(拡散)シェーダと同様のシンプル(Lambertian)ライティングを使用します。表面と光がなす角度が小さくなるほどライティングが弱くなります。ライティングは角度のみに依存し,カメラの移動や回転による変更の影響は受けません。

Normal mapping(法線マップ)は細かい表面のディテールを,ポリゴンの量を増やして詳細を削り出すのではなく,テクスチャにより表現します。オブジェクトの形状は変更しないが,Normal Map(法線マップ)と呼ばれる特殊なテクスチャを使用してこのエフェクトを得ます。法線マップでは,各ピクセルのカラー値は表面法線の角度を表します。次にこの値を形状の代りに使用してライティングを行います。オブジェクトのライティングを計算するにあたり,効果的に法線マップによってメッシュの形状の影響をオーバーライドします。

法線マップの作成

通常のグレースケールの画像をインポートし,Unityの中で法線マップへと変換できます。これを行う方法についてはNormal map FAQ を参照下さい。

技術的な詳細

法線マップは接線空間(Tangent Space)を用いた法線マップです。接線空間とはモデル形状の“表面に沿った”空間です。この空間において,Z軸は必ず表面から離れる方向を指します。接線空間による法線マップは他の“オブジェクト空間”を用いた法線マップと比較すると効果ですが,いくつかの長所があります:

  1. モデルの変形に使用出来ます。つまり変形している平面において,バンプは維持され,正しく機能します。
  2. モデルの異なる部分に法線マップのパーツを再利用することが出来ます,あるいは別のモデルに使用できます。

Specular(鏡面)プロパティ

Specular(鏡面)はDiffuse(拡散)と同様のシンプル(Lambertian)ライティングを使用するのに加えてビューア依存の鏡面ハイライトを計算します。Blinn-Phongライティングモデルと呼ばれます。鏡面のハイライトは,表面の角度,ライトの角度,およびビューアングル,に依存します。ハイライトは実際にはリアルタイム表現向きの,光源からブラーのかかった反射のシミュレーションです。ハイライトのブラーの度合いはInspectorShininessスライダで制御されます。

これに加えて,メインのテクスチャのアルファチャネルは鏡面マップ(時々“Gloss Map”とも呼ばれます)として動作し,オブジェクトのどの領域が他の部分より反射するか定義します。アルファの黒い部分は鏡面反射がゼロとなり,白い領域は完全な鏡面反射となります。これはオブジェクトの異なるエリアで鏡面の反射レベルを変更したい場合に便利です。例えば,錆びた金属などは低い鏡面性を使用し,磨かれた金属は高い鏡面性を使用します。口紅は肌よりも鏡面性を高く,肌は綿の服よりも鏡面性を高くします。良く出来た鏡面マップはプレイヤーを関心させるのに大きな違いを生みます。

パフォーマンス

一般的に,このシェーダはレンダリングがやや高価です。詳細についてはShader Peformance を参照下さい。

透明カットアウトバンプ拡散
自己発光シェーダ ファミリー