透過画像を重ねあわせたときに正しく透過できない場合には
https://www.youtube.com/watch?v=J1yD-W9nKCc
今回はMODOの中でたくさんの透過画像を重ねあわせたときに、画像の縁が出てしまうなど、正しく透過できない時の解決法をご紹介します。
サンプルとしていたポリゴンを一枚用意し、その上に透過画像をマッピングします。画像を読み込み、マッピングしたら、エフェクトをディフューズの量から基本チャンネル > 透過量へと変更します。これで指定した画像で透過するようになります。透過させるためにはエフェクトをステンシルへと変更する方法もありますが、ステンシルの場合、黒と白という二つの値でのみ透過処理を行いますので、計算時間は早くなる分、半透明の透過処理などを行うことができません。詳しくはビデオ「透過とディゾルブとステンシルの違い」をご覧ください。
アイテムモードでモデルパレットの複製タブ > スキャッタレプリカで、この羽根を表す板ポリゴンをランダムに複製します。このスキャッタレプリカのプロパティで配置をコントロールすることができますが、ツールを解除しても、後から調整することも可能です。
スキャッタレプリカで複製される場合、リプリケータで複製をコントロールします。リプリケータのポイントソースには、Point Cloudというポイント情報だけを管理するメッシュレイヤーが新たに作成されますので、スキャッタレプリカのツールを解除しても、ポイントソースのメッシュレイヤーをコンポーネントモードで編集することで、配置のコントロールが可能です。またリプリケータのばらつきに関するプロパティにより、複製した羽根のばらつき具合をコントロールすることができます。
このように配置した羽根の透過画像ですが、複製する前にはキレイに表示されていた透過画像が、複数重なり合うことで正しく透過できないという個所が出てくる場合があります。これは透過の処理を行うために、透過を行うメッシュにぶつかった際に、さらに先に進むのか、そこで処理を終えるのかをコントロールするための屈折深度の値が低い場合に起こってしまう現象です。
屈折深度の値を調整するには、シェーダツリーからRenderを選択し、設定サブタブ > シェーディング品質の中にある屈折深度の値を調整します。試しにこの値を1に設定してみましょう。重なり合っていない個所の羽はきちんと透過されていますが、重なり合っている箇所では正しく透過されていません。屈折深度の値は、透過を行ったメッシュにぶつかる際に、何回先に進むのかを指定する値です。デフォルトではこの値が8になっていますが、今回のように透過画像が多数シーンに存在する場合には、それだけだと十分ではない場合があります。その場合には、値を高くすれば、正しく処理されるようになります。ただし、この値を高くするということは、それだけ処理が重ねられることになりますので、全体のレンダリング時間は長くなってしまいますので、ちょうど良い値を見つけるよう注意するようにしてください。