2008/8/18 月曜日

車を作ろう? 窓、ミラー

Filed under: Armaアドオン製作支援,  ─車編 — gachopin @ 14:20:12

窓やミラーの表現で、ARMAから導入されたRVMATを使用すると「反射しているように見える」エフェクトを使用することが出来ます。
窓は既にポリゴンで用意したので、ミラーの面を作ります。
ミラーの面は前面のポリゴンをコピペ、0.9倍にして作成しました。テクスチャはまだ必要ありません。
car36.JPG

反射に使うテクスチャはコレ。ARMAで使っているファイルを抜き出してきたものです。
car37.JPG

拡張子rvmatで以下のようなファイルを作ります。

ambient[]={1,1,1,1};
diffuse[]={1,1,1,1};
forcedDiffuse[]={0,0,0,0};
emmisive[]={0,0,0,1};
specular[]={1,1,1,1};
specularPower=32;
renderFlags[]={“NoAlphaWrite”};
PixelShaderID=”Glass”;
VertexShaderID=”Glass”;
class Stage1
{
texture=”#(argb,8,8,3)color(0,0,0,1)”;
uvSource=”none”;
};
class Stage2
{
texture=”mycar\env_co_pac.paa”;
uvSource=”none”;
};

Stage2でミラー用テクスチャを指定。

ミラーの面を選んで面のプロパティでrvmatファイルを指定します。
ここでテクスチャの指定は「無」になっていますが、例えば青色のテクスチャだと青っぽく反射します。
car38.JPG

これで視点によって見え方が違うテクスチャができます!
car39.JPG

窓は半透明のテクスチャ(paa形式)を貼り、
上記のRVMATのstage1のアルファ部分を0.3にします。
texture=”#(argb,8,8,3)color(0,0,0,0.3)”;

ここでいくつか注意。
半透明テクスチャはpaaのみです。pacでは透明度が0か1しかありません。窓には使えません。
また、paaには優先度があります。優先度が低い物は表示されません。
car40.JPG
この画像では後ろの窓が前の窓から見えます。
これ、優先度を上げる前は後ろの窓は見えませんでした。
窓の外側の面はfaces→move to topで優先度を最大にする必要があります。

ノーマルマップとスペキュラマップを作成。以前のチュートリアルで解説しています。
car41.JPG

これで9割方はモデル完成。

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

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

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

コメントをどうぞ

HTML convert time: 0.133 sec. Powered by WordPress ME