9/07/2015

RGBAイメージのAlphaチャンネルとテクスチャレイヤーのAlphaブレンディングモード

Alphaチャンネル付きのイメージファイル(RGBA)を読み込むと、Image EditorでAlphaチャンネルの有効/無効及び、Alphaのみの指定が出来ます(図左端)。
Alphaチャンネルが抜き型となりRGBチャンネルをくり抜きます。黒部は下レイヤーを透過し、白部は下レイヤーが不透過となります。くり抜かれた透過部はその下のレイヤーと合成されます。図例のTexture Editorでは、Logo.tgaレイヤーの下にレイヤーが存在しない為、最下層レイヤーであるBase Color(図例だと水色)が透過部での合成対象となります。(レンダリング画像外周部の緑色は背景設定色(Back Ground Color)です)
前述で"透過"と書きましたが、Colorパラメータに適用するRGBA画像のAlphaチャンネルはテクスチャを抜く透過であり、ポリゴンを抜く透過では無いので注意です。ポリゴン抜きはサーフェイスの透過パラメータ(Transparency)に対して設定します。

上記を踏まえ、アルファ付き画像(Logo.tga)のアルファ有効により、上図のようなレイヤー設定でレンダリングすると、右側のレンダリング画像が出力されます。Logo.tgaのAlphaチャンネルでRGBチャンネルをくり抜き、くり抜かれた画像透過部が真下のレイヤー(赤画像)と合成されます。各レイヤーのブレンディングはNormalモードなので、赤の画像がくり抜かれることはありません。よって、最下層のべースカラー(水色)は赤画像に隠れる為、レンダリング画像には現れません。

次は、Logo.tgaレイヤーのブレンディングをAlphaモードに変えてみます。他の設定は上図と同じ。
Alphaモードに設定されたレイヤーはAlphaチャンネルは無視し、そのレイヤーのRGBチャンネルの輝度値で真下のレイヤーを透過します。RGBチャンネルの輝度値で抜かれた赤画像レイヤーの下にはレイヤーが存在しないので、赤画像の透過部は最下層レイヤーであるベースカラー(水色)と合成されます。よって右図のレンダリング画像が出力されます。

最後に、意味の無い設定例を上げてみます。
図のように、Logo.tgaレイヤーの下にはレイヤーがありません(空です)。そしてLogo.tgaのレイヤーブレンディングがAlphaモードに設定されています。このような設定には意味がありません。何故なら、レイヤーのAlphaブレンディングモードはその下のレイヤーを抜く(透過させる)機能であるのに、その真下のレイヤーは空だからです。最下層レイヤーとなるベースカラーはその名の通り最下層なので、これを抜くことは出来ません。では、Alphaモードは何を抜いてるのかと言うと、レンダリング結果から紐解くと、空部分を黒(0)とみなして抜いてるような気がします。


上図例をノードで組むと左図のネットワークになります。











余談ですが、MayaでAlphaチャンル付きRGBAイメージファイルを1つのfileノードだけで、画像抜き(ポリゴン抜きではなく)を行うにはステンシルやレイヤテクスチャに接続します。

________________________________________


プロシージャルテクスチャ

 Color
図のようにTurbulenceプロシージャルのテクスチャカラーを赤色に設定した場合、その概念はグレイスケール値のプロシージャル模様で赤色プレーンを抜く(透過する)イメージなります。で、プロシージャルの抜き部は下層レイヤー(この例だとベースカラーの水色)と合成されます。

余談ですがプロシージャルのサムネイルウィンドゥを右クリックすると背景色を変更出来ますが(図例では青に変更してます)、これはあくまでサムネイルの背景色なので、レイヤー内の色やレンダリングには影響しません。尚、この背景色を一度変更してしまうとシーンを開いてる間はその変更色がデフォルト色となります。初期設定の背景色は黒です。

Diffuse

Specularity
Glossiness
グロシネスを有効にするにはスペキュラに値が必要です。(図例ではスペキュラを70%に固定してます。)グロシネスのテクスチャは少し難解です。グロス強度をホットスポットの大きさへと変換する思考が必要です。グロスの値が高いとホットスポットは狭くなり、値が低いとホットスポットは広がります。
図例ではGridプロシージャルのTexture Value値は100%でレイヤー不透明度も100%です。よって、Gridの格子部分のグロス値は100%となるので、格子部分のホットスポットは小さくなります(右から2列目図の中央の明るい点)。図例ではグロスのベース値を0%、30%、100%に変更してます。このベース値に対してGrid格子部を合成すると、右から3列目のようなテクスチャとなり、そのテクスチャ値をホットスポットの大きさに置き換えると、右から2列目の図になります。この図例のようにベースのグロシネスの値だけを0→100%にアニメーションさせると、以下のような動画となります。
次に、グロシネスのベース値は30%に固定し、GridのTexture Valueの値を100%→0%へアニメーションさせると下の動画になります。但し、テクスチャエディタ側のTexture Valueパラメータはアニメーションさせることが出来ない(Eボタンが無い)ので、下図のようにノード側でTexture Valueに相当するパラメータでアニメーションさせています。










________________________________________

バーバンクにあったLW3DGの開発オフィスが今年の5月には空室(for sale)になってます。
何処言ったんでしょ?(苦笑。近くへ引っ越したのか、それとも本社へ戻ったのか。
前向きな移転であれば良いのですが。。

2014年6月
https://goo.gl/maps/QnAIn
2015年5月
https://goo.gl/maps/5MH8a

0 件のコメント:

コメントを投稿