Repository navigation
v0.5.0
[0.5.0] - 2026-07-10
Added
MMDBulletPhysics.SetConfig(in NativeConfig)and the corresponding nativeMMDBulletPhysicsSetConfigentry point.NativeConfigexposes tunable context parameters (ground plane, MMD unit scale, convex collision margin, Spring6DOF translation/rotation spring damping, locked-translation reinforcement); native defaults reproduce the previous hardcoded behavior, andMMDPhysicsManagernow applies the configuration to every context it creates.
Fixed
- Kinematic (bone-driven) rigid bodies now move along an interpolated path from their previous-frame targets across fixed substeps, pushed without clearing velocity so Bullet derives proper kinematic velocities, replacing the once-per-frame teleport with zeroed velocity. Variable frame times are carried in a time accumulator so they map onto whole substeps without drifting. This gives the constraint solver continuously-moving anchors it can track at MMD's 4 solver iterations, so translation-locked spring-less chains (long hair) no longer blow apart during fast motion.
- Spring6DOF rotation springs now reproduce MMD's unit-scale reference at Unity's meter scale via spring damping compensation (
solverIterations / (referenceIterations * scale^2)). Bullet's motor-based spring target velocity carries no inertia and is not invariant under uniform length scaling, so the meter-scale rotation springs were previously much softer than in MMD. - Joints whose translation limits are fully locked get redundant point-to-point constraint copies (2 by default) that re-solve those equality rows once more per solver iteration, so locked chains converge at MMD's 4 iterations without changing the converged pose.
Unity Intergration
Download package through Package Manager ▸ + ▸ Install package from git URL...
Fill the URL https://github.com/CandidumGames/UnityMMDTools.git#0.5.0