The jump system is available in the new Miarmy 4.5, we can use it to create some monkeys jump in woods.
Workflow
Animation
- Create 2 cylinders,
- their radii should be around the same size of the final rendering model (tree). In below picture.
- The distance between the 2 cylinders should be the average distance of all jump path.
- These 2 cylinders should be all save X axis and just different Z axis
- Then create animation using these 2 cylinders. The animation should start from point A through point B to point C
- The animation is a cycle animation, so pose A should be as the same as the pose C
- When the character landed on the cylinder,it should face to +Z axis (Point A and Point C).
- The jump point “B” can be move slightly, and the animation can be randmized.
- Point A to point B can have multiple and random paths, and our character can play randomize and freely in this path.
- Very Improtant: Rotate animation should only keyframed on the root joint of character only on the Y Axis.
Action
After create animation, we need to setup the action node like follow steps:
- In jump actions, change all the transform channel to "speed" mode and then rebuild it
- Setup the Jump Range.
The jump range should be the frames from the character leaving point B to the landing point C.
Simulation
- Create some cylinders,and named them as <McdAttachMesh*>
- Create some locators, name them as <McdLand*>, and parent them to the cylinders.
- Adjust the locator’s translate in X and Z axises, the locator’s position is the character land point in X and Z axises.
- Select all cylinders, and click the tool Miarmy > Knowledge Perception > Add Mesh Attach ID.
- Select all locators, and click the tool Miarmy > Knowledge Perception > Add Locator Jump Target ID.
- Then we can see there is a custom attribute "attachID" on each cylinder and a custom attribute "landID" on each locator.
- Set attachID and landID like below picture.
- When the characters jump leave from cylinder 0, they will randomly chose a cylinder with attachID is 1.
- Deduce from this, our characters will move forward depend on the attachID and landID increasedly.