AO UTIL
インストール
- Windows環境の場合は、
「C:\Users\ユーザ名\Documents\Shade3D ver.16\plugins」フォルダに
「AOUtil.dll (64bit版はAOUtil64.dll)」を複製後、Shade3Dを起動します。
Mac環境の場合は、
「/Users/ユーザ名/Documents/Shade3D ver.16/plugins」フォルダーに
「AOUtil.shdplugin」を複製後、Shade3Dを起動します。
使用法
- ここでは、ポリゴンメッシュの頂点AOと、AO Mapを反映する手順を説明します。
AOUtilに同梱されている「samples/ao_trees2.shd」を題材にします。
このシーンは木と地面を配置した例で、木の表現は幹や葉など頂点AOを使用する箇所として適しています。
また、地面のように比較的ポリゴン数を抑えたモデリングの場合は、AO Mapの使用が適しています。
AOを使用する前のレイトレーシングでのレンダリングは以下のようになっています。
この右の木と地面に対してAOを割り当てます。 - 環境光を調整します。
頂点AOやAO Mapは、遮蔽された影になる部分を黒、影にならない部分を白とした表現になっています。
これを、既存の拡散反射に対して乗算することで陰影を表現します。AOは、環境光を擬似的に再現する手段ともいえます。
そのため、そのままでは効果が分かりにくいです。
まずはじめに、無限遠光源の明るさを小さくし、環境光を0にします。
また、環境光オブジェクトをシーンに配置し、形状情報ウィンドウで環境光の値を0.8として大きくします。
レンダリングすると、ほとんどが環境光の影響になるため光による陰影は少なくなり、テクスチャの色がそのまま出ています。
この状態から、頂点AOやAO Mapのテクスチャを乗算していきます。 - AO計算対象のポリゴンメッシュを指定します。
ブラウザでAO計算対象のポリゴンメッシュを複数選択して、「情報」より「AO : AO計算対象」を選択します。
「AO計算対象」ダイアログボックスで「AO計算対象」チェックボックスをOnにしてOKボタンを押します。
これで、ブラウザの形状名の右に [AO Target] というラベルが付きます。
ここで指定したポリゴンメッシュがAO計算時の衝突形状として使用されます。 - 頂点AOを計算します。
木の幹のポリゴンメッシュをブラウザで選択し、「情報」より「AO : 頂点AOの計算」を選択します。
「頂点AOの計算」ダイアログボックスで「サンプリング」などパラメータを調整してOKボタンを押してください。
この後、AO計算が行われます。
同様に木の葉のポリゴンメッシュをブラウザで選択し、「情報」より「AO : 頂点AOの計算」を選択します。
木の葉の場合は裏面も考慮する必要があるため、「頂点AOの計算」ダイアログボックスで「裏面を考慮」チェックボックスをOnにしてOKボタンを押してください。
まだこのままでは、頂点AOはレンダリング時に反映されません。
シェーダーとして「頂点カラー」を割り当てる必要があります。 - 頂点カラーシェーダーを割り当てます。
木の幹と葉のポリゴンメッシュそれぞれの表面材質で、マッピングレイヤの「頂点カラー」を指定し、
種類で「拡散反射」を選択、合成で「乗算」を選択します。
また、頂点カラーの「その他」を選択して、頂点カラーのガンマ値を調整できます。
レンダリングすると、右の木の幹と葉に頂点AOの結果が反映されました。 - 地面のAO Mapを計算/作成します。
地面のポリゴンメッシュをブラウザで選択し、「情報」より「AO : AO Mapの作成」を選択します。
「AO Mapの作成」ダイアログボックスで、参照するUVと生成するテクスチャサイズを指定します。
UV上では、それぞれの面が重ならないように配置されている必要があります。
別途パラメータとして、粗さ0.2、バイアス20.0と指定しました。
OKボタンを押すと、AO Mapのテクスチャが生成されます。 - 表面材質のマッピングレイヤにAO Mapを割り当てます。
生成されたAO Mapは単なる1枚のテクスチャになります。
地面のポリゴンメッシュの表面材質のマッピングレイヤとして、AO Mapを拡散反射として配置しました。
参照するUVは、AO Mapで参照したUVレイヤを指定するようにしてください。
これでレンダリングすると、地面にAO Mapの濃淡が反映されているのが分かります。
その他、パラメータの詳細や詳しい説明については、ドキュメントをご参照ください。