今回はレイアウトでモデラーにあるヒートシュリンクのようなことができないかテストしてみました
過去に何かの動画で、レイアウト内で板ポリをオブジェクトの面に沿わせるといった内容を見たことがあります
どれだけ回転させても移動させても面に吸着する
そんな内容だったと思いますが、どんなタイトルだったか忘れてしまいました
なので、再現したくても再現できません
そこでサンプルデータを漁ってみたところ、それっぽいものが見つかったので、今回そのテストをしてみました
完全再現ではないですが、近しいものができたと思います
準備
カプセルとプレートを用意する

まずは準備として
- 板ポリ
- カプセル
を用意しました
それぞれ別レイヤーに入っています
手順
では、さっそく手順に入ります
簡単にですが、このような流れになりました
必要なノードを追加する

必要なノードですが、こんなノードを用意します
- Add:A と B を加算する
- Max:A と B で大きい方を出力
- Scale:向きと大きさを出力に出す
- Scalar:大きさ
- Ray Cast Geometry:レイを飛ばして相手の情報を見る
これがサンプルプロジェクトに入っていたノード群です
Ray Cast Geometry 以外は、サンプルだと Compound ノードに格納されていました

じゃっく
使い方はまだよく分からない
各ノードを接続する

各ノードを画像のように繋げていきます
- World Position
- Ray Origin
- Normal
- Ray Direction
- Scale の Vector
- Distance
- Max の A
- Add の A
- Scale の Scale
- Add の A
- Max の A
- Scaler
- Add の B
- Scale
- Displacement

解釈が合っているかちょっと不明ですが、自分の中ではこんなイメージを持っています

じゃっく
違ったらごめんなさい
- Max:距離感が大きい方を出力
- Add:A と B の結果をを継ぎ足す
- Scalar:張り付かせたい面との距離
- Scale:法線と大きさをかけた結果を出す
ノードの中身を設定する

あとはノードの中身を一部変えます
レイキャストの方は張り付かせたいオブジェクトを有効にします
一つ分かったことがあるのですが、レイ方向をいくら変えても変化がありませんでした
これは Normal(法線) を Ray Direction に繋いでいるためかと思われます

じゃっく
変わらないなら暗転して欲しい気持ちはある
スカラーの方は張り付かせたいオブジェクトとの距離感と認識しているので、サンプルと同じように 0.02 という極小で設定しました
あとは何もいじらなくて OK
結果

結果はこんな感じになりました
ちゃんと張り付いていますね
マイナス値になると裏面の方に張り付いちゃいますが、だいたい出来ているのではないかと思います

じゃっく
回転を加えても張り付いたまま

張り付かせる向きを変えるにはレイアウトではなく、モデラー側で調整する必要があるようです
画像のようにモデラーで板ポリの向きを変えると、レイアウトに反映されるのが分かりました
本当はもっとお手軽に周辺に張り付かせたい考えがありますが、とりあえず一旦テストは完了
まとめ
それでは今回のまとめ
- Ray Cast Geometry ノードが要
- Max ノードは大きい方を出力する
- Add ノードはそれぞれを加算する
- Scale ノードは大きさと向きを出力する
今回は以前からやってみたかったレイアウト内でモデラーにあるようなヒートシュリンクを実現させるテストをやってみました
サンプルプロジェクトがあったから良かったですが、無かったらきっとずっとできなかったと思います
一応それっぽい動きはできることが分かりましたが、まだ昔見たオブジェクト周辺に吸着するといった上位互換版みたいなことをするには、もう少し調べる必要がありそうです

じゃっく
記憶違いじゃなければ
とりあえずは最初の目標は達成できたかなと思うので、今回はこれで良し
サンプルプロジェクト、もっと活用していきます
それではお疲れさまでした~
おまけ
Clipped Ray だけでも同じようなことができる

実は過去記事になりますが、Clipped Ray を直接 Displacement ノードに繋げるだけでも、似たような挙動になることは認識済みです
こちらになります
今回テストに組んだノードと比べてみましたが、挙動としてはすごく似ていて、一体何が違うのかさっぱりでした
同じように貼り付けることができますし、回転しても張り付きが維持されます
たぶん使いどころが違うのかと・・・
こちらもその内、改めて調べてみようと思います
参考資料
使用ツール
- 3DCG
- LightWave3D
- 動画
- Bandicam
- ScreenToGif
- 画像
- CLIP STUDIO PAINT PRO
