2009/06/28 記事修正。赤字が追加部分です。GLSLと合わせることで、
テクスチャペイントで透明な部分を透明で表示してみました。

以前に書いたテクスチャペイントの操作メモは
こちらです。
UVマップのFaceにイメージを作成&セット。
(イメージを作成する際にAlphaの項目で下地の透明度を設定できます)

このイメージをマテリアルでテクスチャとして貼り付けます。
まず、マテリアルの設定はZTranspをオン。A(アルファ)は0にします。

テクスチャチャンネルはカラー用とアルファ用と分けて用意します。
テクスチャブロックは共有してかまいません。
Map Inputは必ずUVに。アルファ用の合成モードはAddにします。

そして、テクスチャの設定は、
UVマップにセットしてあるイメージを読み込み、UseAlphaをオン。

これで設定は終わりです。
あとは、3DViewの表示をGLSLにします。

GLSL表示なので、描きやすいようにライティングを調整するか、
マテリアルの設定でShadelessをオンにする必要がありますが。
なお、ペイントする際は、
EraseAlphaを消しゴム代わりに使用。

ただし、これはアルファ情報のみを書き換えているだけで、
カラーとしては消えていないから少し注意が必要です。
最後に、UV/Image Editorで作成したアルファ付の画像を、
UV/Image Editorで保存する際の注意点ですが、
このような場合でも、アルファ付で画像を保存するには、
Scene(F10)のRGBAをオンにしておく必要があるみたいです。

あと、UV/Image EditorでのSaveやSave Asでの保存形式は、
ファイルブラウザのSave Imageという項目で変更できます。

アルファ付で保存できる画像ファイル形式は、
PNGとTarga(今回はTarga Rawの方が良いかも)の二つが有名だと思います。
これで透明な部分を透明で表示したままペイントできます。
ただ、GLSLのアルファチャンネルの処理が少し雑な感じなのが残念です。

- 2009/06/28(日) 22:47:33|
- 試しCG その他
-
| トラックバック:0
-
| コメント:0