【Blender】boxの中に物を落とす【リジッドボディ】【解決方法紹介】【Blender 2.90】
最近の出来事として、YouTubeでコップを作る動画を見ながら自分でも作ってみて、何とか作ることができたから、その中に物を落としてみたけれど、上手くいかなかったから何とかする方法の話。
Contents
箱の作成
コップは少し面倒なので今回は箱で説明
- 編集モード(Edit Mode)で面選択に変更
- オブジェクトの上面を選択して、削除する

取り敢えず、箱の完成!(雑)
落下するオブジェクトの作成
- 「追加(Add)」→「メッシュ(Mesh)」からUV球とか適当なオブジェクトを追加
- 「sキー」→「0.7」とかの箱に入る適当な大きさにリサイズして、上に持ち上げる

落下オブジェクトの完成!(こっちも適当)
リジッドボディの適用
- 球体を選択して、物理演算プロパティ(青い丸いやつ)のリジッドボディ(Rigid Body)を選択
- 箱も同じようにリジッドボディを選択
- 箱は動かないようにタイプ(Type)をパッシブ(Passive)に変更


リジッドボディを適用したので、重力による落下や衝突などのシミュレーションができる。
上手くいかないとこ ー箱の中に入らないー
この状態でアニメーションを実行してみると、球体は無いはずの箱の上面で止まってしまう。

何もないように見えるけれど、何かあるらしい…(よくわからん!)
解決法 ー箱の中に入るようにするー
解決できた方法をいくつか紹介
方法1
リジットボディの設定内のコリジョン(Collisions)のシェイプ(Shape)をメッシュ(Mesh)に変更する方法

ちゃんと中に入ってる
ワイヤーフレーム表示にするとわかりやすい↓

方法2
平面を5枚使ってボックスを作る方法

1枚目はそのままでいいけれど、あとの4枚は位置と角度を設定しないといけないし、5枚すべてにリジッドボディを適用するのも面倒くさい!(この程度ならプログラムを書いてやるという方法もあるけど、どちらにせよ面倒くさい)
そもそも、今回はシンプルな形だから大丈夫だけれど、コップみたいな複雑な形だとかなり厳しい!というか無理!


↑上が方法1、下が方法2
方法1だと底面との間に隙間ができるけれど、方法2だとそれが無くなるというメリットは一応あるっぽい(?)
方法3
編集モードで面選択にして、周囲の面を1つずつ選択して、「右マウスクリック」→「分離(Separate)」→「選択(Selection)」で面を分離して、方法2みたいに5枚の平面にしてしまう方法
分割するごとに「立方体.001」、「立方体.002」・・・と増えていく

こっちも元の形が複雑になると分割するのが大変になるし、上手くいかない(中に入らなかったり、箱の途中で止まったりする)こともある(自分のやり方が悪いだけかも)から、そんなにおすすめはできないかも…
まとめ
リジッドボディ設定をメッシュに変える方法がたぶん一番楽
Blender1年ちょっとのほぼ初心者なので、思いつく解決方法はこれくらい…
他にも方法があれば追記するかも(?)