RBDシミュレーションでオブジェクトがjitterを起こします。

   588   1   1
User Avatar
Member
16 posts
Joined: Dec. 2018
Offline
題名の通り、RBDシミュレーションで破片がじたばたする動きをなんとか修正したいです。
geometryWrangleなどを用いてvelocityを0.9倍したらvの値は問題なくなるものの、wについて回転の動きがどうにもなりません。

hipを添付いたしますので、ご確認いただければ幸いです。

Attachments:
energy_burst_200525_01.hipnc (1.1 MB)

User Avatar
Member
43 posts
Joined: July 2005
Offline
あまり”バシッ”っとした答えじゃないのですが僕がよく使う方法です。

1. Bounceを下げる。

2. Massをclampする。
小さいmassがあると不安定になり、暴れやすいです。あと、DragとかでNaNsを起こす原因にもなります。

3. RBD Packed ObjectのCollision Paddingを下げる。
細いもしくは小さい破片でCollisioDataが裏返ると不安定になりやすいです。

4. Sleepingを早める。
RBD Packed ObjectのLinear ThresholdとAngular Thresholdを上げる。
Bullet SolverのSleeping Timeを下げる。
早く固まるので破壊系に有効です。あまりThresholdを上げると空中で止まってしまうのでシーンに合わせて調整する必要があります。

あと、このシーンではあまり関係無いかもしれませんが、nameポイントアトリビュートが無いよってBulletSolverが警告しています。
これだとSolverが勝手にnameを作るので、複雑なシーンになった時にランダムにnameがついてハマります。
nameポイントアトリビュートはあった方が良いと思います。

Attachments:
energy_burst_200525_01_SHO.hipnc (1.1 MB)

  • Quick Links