Physics Optimization in a Ragdoll-Based Battle Simulator (Qt 6, Mobile)
-
Hi everyone,
I'm currently working on a small hobby project inspired by "Totally Accurate Battle Simulator" but adapted for mobile devices using Qt 6 and QML.
The working title is TABS Pocket Edition — it's just a fun prototype to test ragdoll physics, AI pathfinding, and multiplayer sync in a mobile context.
One challenge I'm facing right now is optimizing the physics simulation when multiple ragdoll entities are colliding in close proximity. On some devices, the frame rate drops significantly once there are more than ~20 active units.
So far, I've tried:
Reducing the physics tick rate from 60Hz to 30Hz.
Switching from per-bone collision to simplified capsule colliders.
Disabling physics for off-screen units.
These help a bit, but large battles still cause spikes.My questions:
Has anyone implemented ragdoll physics efficiently in Qt/QML for mobile?
Is there a way to offload part of the simulation or use a hybrid approach between keyframe animation and real physics?
If anyone wants to see the current prototype in action, I've uploaded a playable build here:
https://modhello.com/tabs-pocket-edition
Thanks in advance for any tips! -
This post is deleted!