押され、回され、坂を滑らされる Stanford Bunny
particle-based rigid-body simulationの評価例。出典: A. Abderezaei et al., “Physically Accurate Rigid-Body Dynamics in Particle-Based Simulation”, Figure 2, arXiv:2603.14634v3.
今回のStanford bunny
Stanford bunnyは、複雑な剛体形状を2,175個のsphere particleで近似し、forceやtorqueに対して正しいrigid-body motionを再現できるかを調べる評価に使われています。particle radiusは0.005です。
実験では10 Nのforceを加えたり、0.01 Nmのtorqueで回したり、傾斜角π/8のplane上を滑らせたりします。
今回は形そのものは剛体のままですが、押され、回され、最後は坂まで滑らされます。
今回の扱い:2,175 sphereへ離散化され、force・torque・inclined planeで運動評価される
状態:移動・回転(変形なし)
論文の内容
PBD-Rでrigid bodyを扱う
提案手法PBD-Rは、Position-Based Dynamics(PBD)を基に、particleで表したrigid bodyの運動精度を改善します。各particleのforceから速度と位置を予測した後、ground contact、particle同士のcontact、shape matchingによる位置補正を反復します。
shape matchingは、rest poseから現在のparticle配置への最適な変換を求め、各particleを目標位置へ近づけることで剛体形状を保ちます。ただし有限精度の計算では、velocity updateやshape matchingに伴う数値誤差が長時間の運動に蓄積します。
Velocity updateの修正
従来のPBDでは、更新後とstep開始時の位置の差を時間幅で割ってvelocityを求めます。PBD-Rでは、予測velocityに位置補正量を時間幅で割った増分を加える形で更新します。大きな位置座標同士の差を取る際の丸め誤差を抑えるための修正です。
Momentum conservation constraint
shape matching前後でlinear momentumとangular momentumを比較し、その差を打ち消す追加constraintを導入します。linear momentumには全particleへ共通の速度補正を加え、angular momentumにはcenter of massまわりのinertia tensorから求めた角速度補正を適用します。positionにも対応する補正を加え、shape matchingによるmomentumの数値的なdriftを抑えます。
Force / torque test
既知のforceやtorqueを与え、analyticなrigid-body motionと比較します。linear accelerationだけでなくangular accelerationがinertia tensorに従うかを確認します。
Contactとinclined plane
plane contactとgravityを組み合わせ、傾斜面上でのmotionを評価します。particle representationはcollision detectionにも利用できるため、複雑shapeのcontactを統一的に扱えます。
制約
sphere discretizationのresolutionが低いとsurface geometryとcontact位置に誤差が出ます。高解像度にするとparticle数が増え、contact search costも増えます。
またrigid body内部までsphereを配置する方法とsurfaceだけをsamplingする方法ではmass propertyの扱いが異なります。
論文情報
Physically Accurate Rigid-Body Dynamics in Particle-Based Simulation
- arXiv: https://arxiv.org/abs/2603.14634
- v3: 2026年4月14日
- 分野: Physics Simulation / Particle Methods / Rigid Body
- 使用モデル: Stanford bunny
- 使用箇所: Figure 2ほか
- particles: 2,175 spheres
- sphere radius: 0.005
- force test: 10 N
- torque test: 0.01 Nm
- slope: π/8
- 用途: particle-based rigid-body dynamicsの物理精度評価