Miarmy Crowd Simulation Documentation (English)

5 Steps to Build Perfect Physical Character

Many clients asked about how to setup the perfect dynamic characters.
Here we included all the steps and tips for building best physical characters simulation.


Setup Steps:
  1. Make Bone Shape Even Size
  2. Avoid Initial Penetration
  3. Select and Adjust Correct Dynamic Joints
  4. Combine Tiny Joints
  5. Skip Useless Joints

Fine-tune Tips

  1. Avoid High Speed Collide
  2. Avoid Initial Intersection
  3. Setup Parameters Correctly

Special Tips for Apart Bone Chain Problem

  • Agent Cache without Translate Data
  • Make Always Link by Bone Flag

Step 1 of 5 Make Bone Shape Even

Bone shape should be very even and thick enough, please treat them like the real physical boxes, and make character more reasonable like a Rag-Doll.

Like below pictures, please make it like the left picture and NOT the right one.

And if a chain contain the below "heavy-light-heavy" scheme will cause big problem, please also make it even.

Step 2 of 5 Avoid Initial Penetration

Due to any two rigid bodies will check collide each other, so please avoid collide before them enable dynamics, otherwise, the repel force will push them away, sometimes this force will be very big.

Only The neighborhood bones never check collide in physical engine. like the below pictures. So that they can initial intersection FREE.

Avoid the below situation, any bone cannot intersect the bone non-neighbour, once it happen, it will unstable.

Step 3 of 5 Select and Adjust Correct Dynamic Joints

The dynamical joint is crutial for simulation stable, please setup them very well based on our document (Physical Joint TypePhysical Joint Direction and Physical Joint Limits) and the Video Tutorial ( 037 Dynamic Joint Setup at Video Tutorials)

Notice Important: small rotate limit like -30 to 30 will be more UNSTABLE than bigger rotate limit like -60 to 60. In another words, make -60 to 60 will be more stable than -30 to 30. 

Therefore, if situation allow, please make the limit bigger !


Step 4 of 5 Combine Tiny Joints

Sometimes the fingers, tentacles, or very complex bone chains need to combine into a single bone chain, this can make simulation much easier and more realistic,

Please refer the document Compound RBD Bones

Like below pictures:

finger like this need combine all fingers into hand and make it a entire rigid body

Left (compound on) | Right (compound off)

For example like this agent, if we simulate dynamic for this agent directly, there are a lot of penetrations and non-natural joints. It even cannot simulate.

If we select the bones in below picture and combine them into upper bone, the simulation will be perfect.

dynamic simulation in process

Step 5 of 5 Skip Useless Joints

If the tiny complex bones are not very noticeable and can be ignore, we have tool can bypass the simulation of them, please check the below picture, once we setup hand "disable dyn sub tree" all the fingers will not simulation at all. And when we run simulation, the hand will disappear.

When run simulation, the hand disappear:

the hand will not join the physical simulation

Tip 1 of 3 Avoid High Speed Collide

Especially when kinematic primitive hit agent, please don't make the kinematic primitive too fast, or that would cause unstable when kinematic primitive hit agents.

Also you can limit the maximum speed of agent by following parameter

Tip 2 of 3 Avoid Initial Penetration

If the 2 rigid bodies penetrate before they enable dynamics, and when enable dynamics, the repel force will push them out. It will cause agent "jump" out sometimes

So please avoid the below situation before enabling dynamics

avoid above initial penetration situation

Tip 3 of 3

Please keep the parameter like below setup, if anything unstable or error, please try to debug by logic channel and scene setup, instead of change the parameter too much.

Also, if need any help, you can also contact us or post your question on our forum

Basefount Technology