グリースペンシル同士や、ラインアートモディファイアを使った表現を3Dモデルと組み合わせるときに起こりがちな重なりの諸問題について解決法などをまとめています。
ラインアートの線が前面に出てくる
重なってるオブジェクト
- グリースペンシルオブジェクト
- 3Dオブジェクトにつけたラインアート
3Dのモデルにラインアートをつけたとき、2Dのグリースペンシルより後ろに配置していても、線のみが前面に出てくることがあります。
ラインアートモディファイアはデフォルトでオブジェクトプロパティ > Viewport Display > In Frontがオンになっています。
(オブジェクトにShift + Aでラインアートをつけた場合、LineArt用のグリースペンシルオブジェクトが作成されるので、そのオブジェクトプロパティを見てください)
ラインアート同士では、オブジェクトの位置によって線を遮蔽してくれますが、他のグリースペンシルストロークがあったときに、強制的にラインアートが手前にきたりします。
他のストロークとも順番を合わせたい場合はIn Frontをオフにしてください。

グリースペンシル同士の重なり
単純なストロークの重なり
重なってるオブジェクト
- 複数のグリースペンシルオブジェクト(平面のストローク同士)
グリースペンシルオブジェクト同士が重なると、ストロークが前後したり、ストロークの表示がおかしくなる。
グリースペンシルオブジェクトが同じ角度のキャンバスにストロークが描かれていて同位置に重なっている場合は、
右図のように線が前後に重なったり、アニメーション時に線が前後してZ-fighting(ゼットファイティング)状態のようにチラチラすることがあります。
グリースペンシルオブジェクトの前後の位置をずらすことできちんと表示することができるようになります。(例:片方のobjectをY軸上でズラす)
※ストロークの太さによっては、別角度から見るとまだ重なっていることもあります。

複雑なストロークの重なり
重なってるオブジェクト
- 複数のグリースペンシルオブジェクト(立体的に広がるストローク同士)
グリースペンシルオブジェクトの中に平面上ではないストロークがある場合、位置が後ろなのに前に見えたりする
- グリースペンシルオブジェクト1
- 赤いストローク
- オレンジのストローク(レイヤー上)
- グリースペンシルオブジェクト2
- 青いストローク
を右図のように配置した場合、
オブジェクトデータプロパティ > Settings > Stroke Depth Orderの設定によって重なりの見え方が異なります。

Stroke Depth Order
Grease Pencilの線を3D空間内でどの順番で描画するかを決めます。
(※「In Front」が有効なオブジェクトには影響しません)
2D Layers(デフォルト設定)
線の前後関係は、Grease Pencilのレイヤー一覧の順番(上から下)で決まります。
3D空間で実際にどこにあるかは基本的に無視されます。
注意
この設定は、複数のGrease Pencilオブジェクト同士の前後関係にも影響します。
2D Layersを使う場合、Grease Pencilオブジェクトの奥行きは、
オブジェクト全体のバウンディングボックス(囲み枠)の中心点を基準に決められます。
Blenderはその中心点を通る「カメラに正対した仮想の板」を考え、その板の位置をそのオブジェクトの奥行きとして扱います。
ポイント
2D Layersを使う場合は、Grease Pencilオブジェクトをなるべく平面的に保つと、前後関係がおかしくなりにくくなります。
3D Location
線の前後関係を、実際の3D空間での位置に基づいて決定します。
グリースペンシルとメッシュの重なり
重なってるオブジェクト
- 3Dオブジェクト
- グリースペンシルのストローク
メッシュを前に置いているのに、グリースペンシルのストロークが前に描かれる
右図のように、グリースペンシルオブジェクトをCubeに埋もれさせても、前に出しても、
ビューポートでは普通に見えますが、レンダリングするとグリースペンシルオブジェクトが前面に描かれることがあります。
View Layerプロパティ > Passes > Data > Depthにチェックを入れると正常に直ります。
特にNewで2D Animationエディタに移動したときこのチェックが外れているので注意してください。(なお、なぜここにチェックをすることで正常になるのかはよくわかりません…)

まとめ
他にも、レンダーエンジンやマテリアル、Pass Indexなどによって重なりの表示の問題ってたくさんあった気がするので、また解決法など調べて書いていきたいと思います。







コメント