Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

In this example, we want to simulate a big group of dynamic agents attached stick with and move along with the humanoid giant.


Samples Download

https://drive.google.com/drive/folders/0B2PLEY5qC5zkV3JfUFBDTGpqSFk?usp=sharing


Workflow

  • Prepare a humanoid giant model, simple bind skin it and animate it. Notice the scale ratio between the giant and the crowd character.

...

  • Give it the average UV, this is the preparation for the follicle creation.
  • Create the hair on the giant, by selecting the faces of the object and then click create hair, like below method:

Select the faces > modify the option (At selected points/faces) > select the hair > delete hair and leave the follicles



  • Get the number of follicle, and create an arbitrary a default place node and make the agent number the same as follicle (get the follicles number by a simple python script)

  • Parent all of these agents onto separately into the follicles by python script


  • This script is parent all agent onto parents all agents into each of the follicle, and set translate 0 means we put sets each agent translate/rotate to 0, it means clear the local transformation of . This can bring each agent 0 and put them to folliclesto the origin of each follicle.


  • But in above picture, you can see the agents are all standing there and no interesting. We need them lay down and randomized randomize their orientations.
  • You can deplace all agents and re-place them again, and run the script some times again by modifying some of the randomize translate

...

  • Now the result can be more randomize randomly instead of standing man.

  • Repeat above steps, we can even make each follicle contain more than 1 agent, and the result can be higher density.
  • In our test, 3 agents in each follicle can be get the best result and performance.
  • Important Note: please modify the code and make sure there is a distance between each agent has some distance, so that the won't collide each other

...

  • Return back to the 1st frame, and then select all agents, run inverse placement (Miarmy > Placement > Inverse Placement). We will get a new place node from agent positions and orientaionsorientations.

  • Turn off auto avoid option (which we auto enable this option from version 5.1it is enabled by default

  • Go to 1st frame and place agents, you can see below result

...

  • Create a logic which make our gents enable dynamics after 5th frame:
    1. scene Info > current frame
    2. dynamics > enable body dynamics (Or enable dynamics from leg and arm)
  • Important Notice: we need to setup the agent dynamics body very good before running the dynamicsdynamics 5 Steps to Build Perfect Physical Character

  • Find a pose and render it as you with.

  • For more helps, please contact us!Please let us know if there is any questions.