| Hi
everyone. This little overview sheet is designed to let you know of the new tools
(and some old ones too) that r4 has for character animators. So, let's get to
it. 
BONE OBJECTS
R4
has a new bone object design. Basically, what this means is that bones in r4 are
standard geometric primitives. The bone object ias a parametric object with automatic
hierarchical assignement implemented. It means that when you create several bone
objects, they are already linked and ready for FK manipulation. This design also
allows you to use ANY geometric object as a bone object. This means that you can
use a linked character's limbs as bones and apply IK solvers directly to them
(no more auto-boning or linkig geometry to bones!). Also, bone objects now have
squash and stretch, and scaling built into them. If you need a cartooney character
to stretch its arms, you can do it just by assigning a sqush property to the affected
bones. I'll work into some tutorials to explain this more clearly as my schedule
permits.
IK SOLVERS
These
are new 'controllers' that allow you to use IK in your bones (I'll referr to any
bone object/hierarchy as 'bones' from now on). With R4 we have three IK solvers:
HISTORY
DEPENDANT IK SOLVER:
This is the solver used in previous versions of max. What it does is calculate
limb rotations through the solver's history. This means each time you animate
the IK end effector, it looks back into previous keyframes and calculates the
limbs rotations based on that. This causes that the futher you go in time, the
longer the solver takes to get an IK solution. Therefore, animating becomes a
slower process over time. HISTORY
INDEPENDENT IK SOLVER: This
is a new solver included in R4. This solver doesn't depend on history, it solves
rotations as it goes over time. Animating remains a very fast task. This is the
best solver to use when animating characters. It also has a rotate plane helper,
which helps us define the orientation of the plane used to place the bones when
solving IK. More on this later.
LIMB SOLVER: This solver is primarly geared towards
game development. It can only be used on two-bone chains. I haven't really used
it, so I can't really comment on it.
WEIGHTED
CONSTRAINTS
Constraints
are very powerful tools to establish certain relationships between objects. They
allow animators to easily animate objects based on other objects transformations.
max4 includes the following constraints (from the help file):
- Attachment
constraint attaches an object's position to a face on another object.
- Surface
constraint restricts an objects position along the surface of another
object.
- Path
constraint restricts an objects movement along a path.
- Position
constraint causes the constrained object to follow the position of
another object.
- Link
constraint
links the constrained object from one object to another.
- Look-At
constraint constrains an object's orientation so that it's always looking
at another object.
- Orientation
constraint causes the rotation of the constrained object to follow
the rotation of another object .
Most
of these constraints were available in previous versions as controllers. The main
difference (and a huge one, for that matter), is that constraints are weighted.
That is, they allow more than one object to influence the constrained object,
and each 'controlling' object has a certain weight (the amount of influence it
has) that influences the constrained object. Therefore, any object can react to
the influence of several objects. WIRING
Wiring
is a very user-friendly to a kinda expression-wizard interface. However, it goes
beyond expressions. How? First, wiring controllers support bi-directional control,
as opposed to expression controllers's uni-directional control. Also, they fully
support the whole expression syntax, functions and operators, so they allow complex
operations to be set. The workflow is pretty easy to set up. Just select one of
the objects, bring up the wiring parameters dialogue (or the wire parameters command,
either in the animation menu or your quad menu), select the controller to wire
"from", select the second object, select the controller to wire "to",
select a wiring direction ("to" and "from" becom relative),
and hit the "connect" button. There you are. You can alter the expression
in the expression window, and hit "update" when you're done. We'll be
using a lot of wiring throughout this tutorial.
3DTotal
Advertisement - We need your support!
|
REACTOR CONTROLLERS
Reactor
controllers have been available since R3, but I decided to include them here because
we'll also be using them a lot. Basically, a reactor controller is a controller
that will generate certain pre-set motion when something else happens in the scene.
ADD CUSTOM ATTRIBUTES
This
is one of the features I've enjoyed the most with R4's arrival. The ability to
add any kind of attribute to an object. This, combined with wiring, provides a
combo of unlimited power (ok,ok. To much Locomotion last week...). We'll add lotsa
custom attributes to our characters to be able to control them more efficiently.
SKINNING
Skin
has been enhanced a lot in R4. Envelopes provide better initial deformation, shaded
views display bone fallofs, and we have new deformers. There are three types of
deformers. Joint angle deformers (for areas such as elbows, hips and shoulders),
bulge angle deformers (for areas like biceps), and morph angle deformers (a new
in-skin morphing system). |