Open MineCake147E opened 7 months ago
slop値を下げれば解決するけど今度はfrictionを高くしても摩擦力がほとんど発生しなくなるのと不安定になる
slop
のデフォルト値は0.05
のようですが、1.0
というとても大きな値を採用している理由は何ですか?
https://brm.io/matter-js/docs/classes/Body.html#property_slop
https://github.com/misskey-dev/misskey/blob/d92aaf81c42dc91a915d38168996536d19d36cf8/packages/frontend/src/scripts/drop-and-fusion-engine.ts#L1139
slopが1であることにより、このpositionImpulse
が負になり、結果として衝突物体間に引力が働くように考えられます。
positionImpulse = pair.separation - pair.slop * slopDampen;
今度はfrictionを高くしても摩擦力がほとんど発生しなくなるのと不安定になる
のが理由ですね
💡 Summary
下の5円硬貨は、どう考えても100円硬貨を支えられるとは思えませんが、100円硬貨は落下しません。 1000円紙幣の角に500円硬貨が半分以上乗り出した状態で安定しています。 100円硬貨の下にある1円硬貨がヤモリのように天井や壁に張り付いています。 ヤモリは高密度の剛毛と壁面の分子との間にファンデルワールス力を発生させることで天井に接着しています。 上記の現象はおそらく物理エンジンの不具合によるものと思われますが、この現象を「ファンデルワールス力」と呼ぶことにします。
その他にもファンデルワールス力に関連する様々な現象を確認しています。
本家🍉ゲームでは同様の現象は滅多に発生しません。 一定確率で発生しない事があり、挙動が予測しづらいので、修正していただけますと幸いです。
🥰 Expected Behavior
物体間のファンデルワールス力は無視できる程度に抑えられている。 (バブルゲームの物体や壁にヤモリのような微細な剛毛は生えていないので...)
🤬 Actual Behavior
上記のように物体同士が過剰に引き寄せ合う事がある。
📝 Steps to Reproduce
💻 Frontend Environment
🛰 Backend Environment (for server admin)
No response
Do you want to address this bug yourself?