2011/1/20 木曜日

サーマルマップテクスチャ 実践編

サーマルマップテクスチャを実際に使用してわかったこと
・PixelShaderIDとVertexShaderIDを”Super”にしなければ機能しない
・ambientやdiffuseの上にclass StageTIを置く
・設定してないやつはサーマルで見ると真っ黒になる。

例:
class StageTI
{
texture=”jsdf_man\_data\jgsdf_soldier_ti_ca.paa”;
};
ambient[]={1,1,1,1};
diffuse[]={1,1,1,1};
forcedDiffuse[]={0,0,0,1};
emmisive[]={0,0,0,1};
specular[]={0,0,0,1};
specularPower=1.000000;
PixelShaderID=”Super”;
VertexShaderID=”Super”;
class Stage1
{
blablabla…

今までSuper以外の別のシェーダを使っていたらSuper用に書き換えないといけません。
例えばNormalMapSpecularDIMapを使っていたとしたら、
http://community.bistudio.com/wiki/RVMAT_basics を見てNOHQ+SMを使っていることを確認します。
NOHQ+SMとはstage1がノーマルマップ、stage2がスペキュラという意味です。

SuperはNOHQ+DT+MC+AS+SM+fresnel+Environmental mapの7つのステージです。
NOHQは凸凹を表現します。
DTは近づいたときに細かく見えるキズとかを表現します。
MCはダメージ、例えば血のりです。
ASは光が当たったときに必ず光る部分と陰になる部分を分けます。
SMDIは光加減を調整します。
fresnelは屈折です。よくわかりません。多分水面テクスチャの深度かな?
Environmental mapはテクスチャを使って擬似的に反射を表現します。

実際に書き換える手順:
stage1はそのまま、SMをstage5に書き換えます。
あとはstage2,3,4,6,7を追加します。新しくテクスチャを用意しなくても代理の記述で対処できます。
stage2の例
class Stage2
{
texture=”#(argb,8,8,3)color(0.5,0.5,0.5,1,DT)”;
uvSource=”none”;
};
stage3はtexture=”#(argb,8,8,3)color(0,0,0,0)”;
stage4はtexture=”#(argb,8,8,3)color(0,1,1,1)”;
stage6はtexture=”#(argb,8,8,3)color(1,1,1,1)”;
stage7だけは環境マップのテクスチャをCa\dataから取ってきましょう。
class Stage7
{
texture=”ca\data\env_land_co.paa”;
uvSource=”none”;
};

thermal_test.jpg

コメントはまだありません »

コメントはまだありません。

この投稿へのコメントの RSS フィード TrackBack URL

コメントをどうぞ

HTML convert time: 0.094 sec. Powered by WordPress ME