You may recall that the major focus of Release 10.0 was Character Animation and the Timeline. The focus continues in 10.5 with more enhancements to the Character Animation Tool set in both the core CINEMA 4D application as well as the MOCCA module. In 10.5 MOCCA has had a .1 upgrade with the addition of a few new things. We'll cover the more important additions to both Mocca and to the core below. Some of the new enhancements are demonstrated on the tutorial DVD that accompanies 10.5.
As many people are aware, Squash and Stretch is one of the fundamental principles in animation where characters and or objects are made to deform which make the animation much more interesting. Often in animations the squash and stretch is exaggerated. To assist with this, Maxon have provided 2 new things in 10.5. The first is the Squash and Stretch deformer covered here and then later on squash and stretch properties for IK tags. There is nothing you can't really do just by animating points with either PLA (Point level animation), Morph targets, Posemixer poses or other deformers but using the squash and stretch deformer is a whole lot quicker not to mention more fun than other methods. Below is the same animation. The animation on the left has no squash and stretch whereas the animation on the right has it. Like other deformers you can make the deformer a child of the object that you want to deform or put under a null object at the same hierarchy level as one or more mesh objects. If the object to be deformed is animated moving around in most cases you will want to make the squash and stretch deformer a child object of the mesh or link it with XPresso or a constraint so that it moves around with the mesh. If you don't do this then as the object moves around the deformation will be different (which in some cases may be what you want). To achieve the result like in my animation on the right you have to animate properties of the deformer. (I have deliberately made the sphere on the right deform as it falls down. I wanted it to behave as though the sphere was filled with a liquid).
No squash and stretch |
With squash and stretch deformer |
The animation on right obviously has a much more cartoon like animation feel to it than the plain animation on the left. Using the deformer is quite straight forward although initially you need to play around with it a lot to see what the parameters all do. As mentioned to make the animation on the right I had to animate the various properties of the deformer. There are a few of them and there isn't a Record all button like the Posemixer tag has but you can select all properties and then just Ctrl click on one to record a keyframe for all of them with the properties remaining selected or you can create a Selection Object and add the squash and stretch deformer to it. You will also need to right click the selected properties and select Animation->Add Keyframe Selection. You then select the selection object in the animation controls and select the selection object. So long as you have Parameter recording enabling, now when you press the record button a keyframe will be recorded for all of the squash and stretch properties that you set up.
All I can say is you're going to love this deformer. The Jiggle Deformer adds secondary motion much like using Soft IK does. Just a matter of adding a jiggle deformer, creating a selection set of some points, dropping the selection tag into the selection field, press play and then tweak a few settings. Here is what I came up with before reading the documentation. (Model by Andy Kay)
![]() |
|
Jiggle deformer in action |
Jiggle deformer basic settings |
Pretty cool eh!! The Jiggle Deformer is very easy to use. There's a number of sliders and settings. There is a fall off tab and the fall off works exactly the same as fall off on MoGraph Effectors do. The motion can be cached which allows the animation to be rendered across a network plus allows for faster viewport playback speed.
The Cluster Deformer links a point selection or vertex map on an another object so a null can be used to transform the points. As the documentation says there is nothing you can't do with joints, skins or morphs but it allows you to add an extra layer of control / extra transformation on top of what you may already have. I think the idea is that you can add extra morph type animation without having to edit your rig. Like the jiggle deformer the cluster deformer uses MoGraph type falloff settings.
And don't think you're limited to using cluster deformers on characters. They can be used to create some charming visual effects. Here's a fun animation using a Disc object. The cluster deformer has spherical fall off and the cluster target null is animated to rotate and move up and down.
Fun with the cluster deformer |
I've probably made the rotation too much but I like the effect of the tear drop being created.
To support the new Cluster Deformer there is also a new Create Cluster command. The documentation describes it very well as "This command transforms the current mesh selection (points, polygons or edges) into a cluster. In the process, a vertex map will be created, based on the selection. A Cluster Deformer will be created simultaneously and made a Child object of the selected object. The vertex map that was created will automatically be linked to this object and a Null-Object will be created to serve as a target for the cluster." This is how I created the animation above just by selecting a few points on the disc object and running the command.
The Point Cache Deformer has one purpose only. That is to transfer animation recorded with the Point Cache Tag to another object via a Deformer instead of transferring the animation directly. This is a bit like using an XRef where you reference the point animation from a source object but in this case you are referencing the animation.
The Point Cache Tag allows you to store point level animation of your object in a tag. The tag will store animation from deformers and expressions. This then allows you to transfer this animation to duplicates of the object but without the need for the rigging, expressions or deformers using the Point Cache Deformer. You can think of this as baking the animation of an object. You could then if you wish delete all of the rigging, expressions, deformers etc and the object would do what it did before. The other thing that storing the animation in a tag is that you can render your animation with Net Render over a network and or with scene motion blur.
I have to say this works brilliantly and it is very fast to calculate. As a practical example I loaded the Release 10.0 Whimpy_Sneakwalk.c4d scene file from the Mocca section of the Content Browser. I then found the character's polygon object in the Object Manager and applied a Point Cache Tag. It's then just a matter of clicking the Store State button and then Calculate button. CINEMA 4D then whizzes through and plays the animation and stores the point animation in the tag which in turn gets saved in the scene file. In the parameters for the tag the amount of memory / file size used for the cache is given. One thing to be aware of is that if your character is made up of multiple objects e.g. eyes, teeth etc then you will need to apply a point cache tag to each mesh object if their points are deformed / morphed etc. You can then multi select each tag and CINEMA 4D will loop through each object and cache the animation. This can take a little while if your character is made up of lots of sub objects. The other thing to be aware of is if the character has position, scale and rotation tracks for the entire character or for sub objects then you will need to copy over this animation otherwise things like separate eyes will get left behind and or the character will just walk on the spot.
Generator objects can be collision objects What this means for example is that child objects of a MoGraph Cloner object can interact with cloth. All you have to do is assign a Collider tag to the Cloner object. There is no need to make the cloner object ( a generator) editable. This works for all generators i.e. parametric primitives, instances, array objects etc.
![]() |
Clothilde collider tag applied to a MoGraph cloner object |
When Release 10 came out in 2006 we saw that the new joint based rigging system was part of the core version. 10.5 adds a few enhancements to the core version as well as what you saw above in the Mocca module.
IK Tags have new options for Squash and Stretch. Incredibly this super cool enhancement comes in the core version so everyone will be able to do Elastogirl type stretching animations. Awesome!!
Briefly, to use Squash and Stretch on characters you have to make the bones between joints change their length. This in turn drives the scaling of the mesh. You can apply squash and stretch either to individual IK chains by using the squash and stretch options on IK tags or to the entire character by using the squash and stretch options on the skin object. More on the skin object shortly. To make the bones change length you increase the strength of the Stretch and or Squash slider. As you increase the strength the joints increasingly stretch out thus stretching out the bones to reach the goal object. At 100% strength the chain will always reach the goal object. There's a Clamp and Distance setting to set up a maximum distance that the chain will stretch to. Lastly you can have only squash or only stretch or both when using IK tags. Then there are 4 types of squash and stretch as shown in the animations below.
Stretch with position |
Stretch with uniform scale |
Stretch with bone scale |
Stretch with volume |
Pretty clever eh!! Things look better on a complete character like below where the points at the shoulder or pelvis are better fixed into position by overlapping weighting. Squash is more or less the opposite so in the case of the volume mode, as the goal object goes back towards the shoulder, the length of the arm decreases and it gets fatter. I have used the rigging technique described next to deform the arm only and not the hand. The rabbit character used on the rigging tutorial DVD has squash and stretch via the skin object. Here are 2 examples of the rabbit showing this.
Uniform squash and stretch via skin object |
Volume squash and stretch via skin object |
Obviously the rabbit on the left works out in the gym!!
When you are playing around with squash and stretch you need to ensure your character is rigged correctly. If the IK tag is applied to a Null object and you set the squash and stretch type to Volume on the IK tag your mesh will likely vanish. This is because a Null object has a scale of zero. Either have your IK tag on a joint or use the squash and stretch settings in the skin parameters. The other thing and it is really important is that if you use squash and stretch on arms and legs then unless you rig your character right the hands and feet will also get stretched and usually in very undesirable ways. The solution is to rig the foot and hand as a separate IK chains like in this very simple arm rig here. Only the IK tag on the shoulder has squash and stretch enabled.
![]() |
Simple arm rig for squash and stretch |
There could well be other alternative ways to rig your characters to avoid problems. I am still getting to grips with using squash and stretch however I did look at a tutorial for rigging a leg for squash and stretch in Maya. I can tell you, things look to be much easier in CINEMA 4D. Talking of Maya, everyone knows it's the darling of the big studios for Character Animation in movies. I get the feeling that MAXON is picking off all the things that people say they need Maya for but going one better in CINEMA 4D. If not superior then way easier to use.
The Skin Object has some new settings as per the image below (radio button layout mode). The Transform option looks to be for backwards compatibility with Release 10 should there be skin problems. In most cases the option should remain on the default Object setting. The Length option is a global setting for the entire skin to define what happens when bones (bones between joints) are squashed and stretched. This setting if set to anything else except None will override the Squash and Stretch IK tag parameter Type.
![]() |
Various new settings for the skin object |
10.5 has a new Joint Align Tool. Release 10 only had a Joint Align Command which is still there. This just lined up the Y axes of joints. Now with the Joint Align Tool you can do that (default mode) plus align your joints in different axes and with a range options if the default is not what you want.
![]() |
Joint align tool options (Radio button layout mode) |
Another new tool is the Paint Tool. This tool functions very similar to the Weight Tool except it edits vertex maps. If no vertex map is selected a new one will be automatically created. This tool works better than creating vertex maps with the Live Selection Tool (in vertex painting mode) as it has more options like symmetry and fall off. With the live selection tool, it pretty much only allowed you paint specific points at one particular weight or add to the weight. With the paint tool you can create vertex maps without having to go into point mode. To simulate fall off before it was quite a tedious process to keep changing the weight setting on the live selection tool. Things are much quicker now and your vertex maps will work better with smoother falloff. Here is an example. The image on the left is one click with the paint tool with 100% weight but with hardness and fall off at 0%. The image on the right is one click with the live selection tool in vertex painting mode at 100%
![]() |
![]() |
New paint tool |
Live selection tool |
The Weight Tool now has a symmetry tab and you can now edit the weighting on both sides of your character at once. Previously you had to do this separately on each side or edit one side and mirror things over with the mirror tool. Doing things live and visible on both sides at once is a great time saver. The tutorial DVD demonstrates this in chapter 3.
There are a few other enhancements but these are the main ones.
The Mocca / Character Animation enhancement in 10.5 are superb. When you look at the list of enhancements in the "What's new in 10.5" list in the documentation it doesn't look like all that much. However once you start working through them you soon realize some of these enhancements are pretty sophisticated. There is still a way to go with developing the Character Animation tools in CINEMA 4D but I doubt people will be saying that "Character Animation in CINEMA 4D sucks" as they were saying not that long ago. They should be starting to say "Character Animation in CINEMA 4D rocks!!"