Material File

.mtl(マテリアルファイル)

OBJファイルに関連付けられたマテリアルの定義が格納されたファイル。
テキストエディタなどで編集が可能です。
OBJファイルのインポートの際、関連付けられたファイルが「Default shader」に反映されない場合、
この.mtlファイルを開いて手動で設定する必要があります。
トークン 説明
newmtl node(マテリアル)名
Ka アンビエント(Luminosity[光度])色:R G B
Kd ディフューズ(Diffuse[拡散])色:R G B
Ks スペキュラ(反射)色:R G B
Ni 屈折率(Index of refraction)
Ns 反射角度
Tr 透明度(透過率)。
D 非透過率(Opacity)。"D"と"Tr"は互いに反対であり、透明度または不透明度を指定することは単にユーザの利便性の問題です。
Ns スペキュラ係数(光沢率)
illum 照明モデル:スペキュラを有効の場合は 1、無効の場合は 2でスペキュラハイライトの存在を示すので、Ksの指定が必要です。
map_Kd Colour image(ディフューズマップ)ファイル名
ディフューズマップは、サーフェスからの光の拡散反射であるアルベド(天体の外部からの入射光に対する、反射光の比)を作成するために使用されます。
map_refl Reflectivity image(リフレクション)ファイル名
map_Bump Displacement image(バンプマッップ)ファイル名
バンプマップは、ジオメトリの陰影を変更する2次元グレースケールマップです。通常、サーフェスのディテールに使用されます。
法線マップは、より詳細なジオメトリを表示するために頂点法線を変更する3Dバンプマップです。TGでは法線マップに未対応で異なる数値としてエンコードしてしまうため、ディスプレースメントの代わりとして使用しないで下さい。
ディスプレースメントマップはバンプと似ていますが、高度情報を格納し、レンダリング時にジオメトリを変更し、シェーディングと陰影の両方の外観を変更します。
ハイトマップは、通常、頂点を上下に移動する地形メッシュの変形に使用されます。

補足:法線マップとバンプマップはほとんど同じもので、両者共レンダリングされたサーフェスのピクセルごとの法線を定義します。違いは法線マップではマップのRGB値にエンコードされたfloat3値を明示的に定義している事に比べ、バンプマップは暗黙的に法線を各軸上のあるピクセルから次のスカラーの高さにおけるデルタのベクトル結果として定義している事です。
map_D Opacity image(ディゾルブテクスチャ)ファイル名。不透明度とも呼ばれる透明度マップは、通常2つの画像を係数(アルファ値)により合成するために、サーフェスの一部を切り取るために使用されます。火、草、髪、煙、水、窓など。
map_Tr Translucency image(透明度テクスチャ)ファイル名。ディフューズカラーの内部で散乱する光をコントロールするための画像で、ディフューズカラーのハイライト画像が適用されている事が多いです。
map_Ks Specular image(スペキュラーマップ)ファイル名
スペキュラーマップは、サーフェスがどのように反射するかをコントロールし、反射の形状を調整する事が出来ます。鏡面反射は通常、シーン内の最も明るい光源の反射だけをシミュレーションします。スペキュラマップを使用して、サーフェス上に表示される環境マップの量を制御する事も出来ます。
グロスマップは、鏡面ハイライトがどのように表示されるかを制御します。グロスマップ画像を取り扱う場合、"Roughness image"として読込み、"Invert specular roughness image"にチェックを入れます。グロー(光沢)はラフネス(粗さ)を逆転したものです。
map_Ns Roughness imageスペキュラハイライト成分
ラフネスマップは、サーフェスがどれほど滑らかで粗いかを表す物理ベースレンダリングシステムの光沢マップです。Microsurfaceとも呼ばれます。
map_Ka Luminosity image(アンビエントテクスチャ)ファイル名
Ambient occlusion image(アンビエント・オクルージョン、AOと略される事が多い)
環境光が遮られている部分に光陰の効果を与え、あたかもオブジェクトそのものが輝いているように見せる事で、特に白っぽく明るい場面での柔らかな陰影をシミュレートする非現実的な光沢マップです。発光テクスチャとしての"Emission map(エミッションマップ)"もこれに当たります。
各テクスチャ画像については『Default shader』のページで詳しく解説します。

現時点で、Terragenは「Ambient occlusion(アンビエントオクルージョン)」に対応しておらず、レンダリング時にGI設定で環境光のアンビエントオクルージョン効果には対応しています。テクスチャ画像でアンビエントオクルージョン画像を使用する場合は、ディフューズ画像にアンビエントオクルージョン画像を乗算処理する事で陰影領域を際立たせる必要があります。下図がその処理の流れです。サンプルファイルをダウンロードして、設定を確認して下さい。
  1. 『Image map shader -01』で「Image filename」でディフューズ画像を読み込み、「Projection type」に"Object UV"を設定します。
  2. 『Image map shader -02』で「Image filename」でアンビエントオクルージョン画像を読み込み、「Projection type」に"Object UV"を設定します。
  3. その他、スケーリングや配置、繰り返し処理の設定が必要なので、サンプルファイルにて確認して下さい。
  4. 『Color adjust shader』を使用する事で、白から黒までの範囲を効果的に1.5倍にすると、元の色範囲から3分の1になります。つまり、-1の黒レベルは元の黒色から50%の灰色になります。
  5. Functionの『Multiply colour 01』で2つの画像を乗算し、結果を『Default shader』の「Colour function」に関連付けます。

Planetside公式フォーラムのトピック: Texture questions からの転用です。