lunarborの備忘録

CGソフトの使い方を記録しておけば自分とどこかの誰かに役立つだろう

(補足記事)3D-COATの"焼き込みのスキャン設定"にある"スキャン深度変更ツール"の使い方を調べてみる話

使用ソフト

  • 3D-COAT2022

この記事は3D-COATの"焼き込みのスキャン設定"にある"スキャン深度設定ツール"について使い方を調べた記事です。

こちらはこの記事の補足記事です。

lunarbor.hatenablog.com

リンク

Happy baking guide

以下の説明は"焼き込みのスキャン設定"にある"使い方"を選択すると表示されるオンライン上のPDFドキュメントをGoogle翻訳で日本語に翻訳したものの抜粋です。(画像1枚にまとめるために少し編集してあります。)文中の図に"A""B""C""D"の形状が示されています。そのうち"D"に対応するのが"オブジェクト内側のスキャン深度"で、"A""B"に対応するのが"オブジェクト外側のスキャン深度"です。そして"C"のような形状を上手くスキャンするために"スキャン深度ツール"を使用するとあります。

引用元:Happy baking guide.

https://3dcoat.com/files/Happy_baking_guide2.pdf

 

この説明にある図を参考に再現したオブジェクトを作成しました。これらを使って説明文を追うことで使い方を理解しようという試みです。

 

Highポリモデル(ベイクするオブジェクト)※Cは浮いていて下のオブジェクトと繋がっていません。

Lowポリモデル(ベイクされるオブジェクト)※図にある赤のリトポメッシュに合わせてA,Bは造形してありますがC,Dはありません。AとBの間は凹型ではなくV型になっています。

1)法線に沿って最も近いものにスナップ(Snap to Closest Along Nomal)

これは、単純なケースでうまく機能する最も単純なアプローチです。この場合、リトポメッシュに最も近いポイントがベイクされます。この方法ではより大きなスキャン深度を設定できますが、それでも機能します。この例では、それを2倍長く設定すると、詳細A,B,Dが正しくキャプチャされます。ただし、Cはまったくキャプチャされませんこれはグレーのサーフェスがリトポメッシュに最も近いためです。

まずはこの説明にあるように"法線に沿って近い位置へスナップ"を使ってベイクを行ってみます。

ベイク結果はこの様になりました。説明の通りA,B,Dはベイクされましたが、Cはベイクされていません。

2)外面にスナップ(Snap to Outer Surface)

この方法は、複雑なケースで、むしろプロのユーサーを対象としています。法線方向で最も遠くの洋細をキャプチャします。例を見てみましょう。外側のスキャン距離を2倍長く設定すると、Cは正しくべイクされますが、AとBは正しくべイクされません。これは、ほとんどの外側が隣接スパイクになり、法線マップが混乱するためです。したがって、この方法てはスキャン距離を大きく設定しないでください。ただし、AとBがキャプチャされるように小さく設定しすきると、Cはキャプチャされません。

この目的のために、「スキャン深度変更ツール」が導入されました。ツールを使用して、スキャン深度の外側シェルと内側シェルを個別にスキャン深度を変更します。フィールドを拡大、縮小、平滑化、または消去します。CTRLを使用してアクションを反転し、SHIFTを使用してフィールドを滑らかにします。

次に"外側の表面へスナップ"を使用してベイクをしてみます。スキャン範囲はそのまま使います。

ベイク結果はこのようになりました。今度はA,B,Dに加えてCもベイクされています。

外側のスキャン距離を2倍長く設定すると、Cは正しくべイクされますが、AとBは正しくべイクされません。

次にこの部分をやってみます。スキャン距離を2倍とありますが、わかりやすく極端に大きくしてみます。

ベイク結果はこの様になりました。説明にあるような結果にはならず、スキャン距離を変えなかった時と同様にA,B,C,D全てベイクされています。(説明通りの2倍でも結果は同じでした)

AとBがキャプチャされるように小さく設定しすきると、Cはキャプチャされません。

これはおそらく、このようにボクセルメッシュギリギリまで接近させるという事だろうと思います。Cがわかりやすくスキャン範囲から出ているので、ベイク結果は予想が付きます。

結果はA,B,DがベイクされてCはベイクされません。

この目的のために、「スキャン深度変更ツール」が導入されました。

これはおそらくスキャン範囲から出ている"C""スキャン深度変更ツール"を使っスキャン範囲内に入れる。と、言う意味だと解釈したので実行してみます。

Cの周りだけケージを変形させて盛り上げることでスキャン範囲に入れます。

こんな感じにCが収まりました。

ベイク結果はこのようになりました。追加でCがベイクできています。

以上で"Happy baking guide"に書かれている内容の再現は終了です。一部再現出来なかった部分がありますが、オブジェクトの形状によるのかもしれません。

"スキャン深度変更ツール"の各設定の解説

これを選んでスキャン範囲ゲージの任意の場所をブラシ操作するとスキャリングの深度が増加して範囲が拡張されます。外側のスキャン深度だと凸に内側だと凹に変形します。

これを選んでスキャン範囲ゲージの任意の場所をブラシ操作するとスキャリングの深度が減少して範囲が縮小されます。外側のスキャン深度だと凹に内側だと凸に変形します。

これを選んでスキャン範囲ゲージの変形させた場所をブラシ操作するとスキャリングの深度を緩和します。スムージングをかける感じになります。

これを選んでスキャン範囲ゲージの変形させた場所をブラシ操作するとオリジナルのスキャン深度が復元されます。徐々に変形前の形状に戻ります。

値が大きいほどスキャン深度変更ツールの変化が大きくなります。値は0~1です。

スキャン深度変更ツールで行った変形がリセットされます。

現在のスキャン範囲ケージの状態をファイルとして保存できます。

保存したスキャン範囲ケージの状態を読み込みます。

"スキャン深度変更ツール"の操作のコツ

自分がこのツールで引っかかった部分を紹介しておきます。

別のツールの効果が出てしまう

スキャン深度変更ツールは"焼き込みのスキャン設定"を呼び出す直前まで使っていたツール(UI左側にある"ベーシック"や"調整"などにあるツール)に上乗せする形で機能が付加されるようです。基本的にはスキャン深度変更ツールが優先されるようですが、たまに意図せず元のツールの効果が出ることがあります。"焼き込みのスキャン設定"を呼び出す前に"追加/分割"や"選択/編集"ツールを選んでおけば意図しないツールの効果は"Esc"キーでリセットできます。

ツールの効果が現れない

初めてスキャン深度変更ツールを使うときに、スキャン範囲ゲージ上でブラシ操作しても変形しないと思う事があると思います。それは"オブジェクト外側のスキャン深度"または"オブジェクト内側のスキャン深度"の値が小さすぎてボクセルメッシュに近すぎるせいです。値を大きめにするとスキャン深度変更ツールの効果が出るようになります。

変形が思い通りにならない

スキャン深度変更ツールの効果で起きる変形はビューの向きに依存するようです。変形させたい方向とビューの向きを合わせると綺麗に変形できます。(例えば、上方に変形させたいときは上面ビューにする。)

ツールの効果範囲が大きすぎる。または小さすぎる。

スキャン深度変更ツールはブラシとして機能するので右クリックでブラシの大きさを変ることで効果を与える範囲を調整出来ます。またCtrlキーを押しながら操作を行うと効果が反転します。