|
[Havok, long known for physics, now has a reach that extends into other crucial middleware areas. In this sponsored feature
that's part of the Intel Visual Computing section, the company's Jeff Yates speaks about the present and the future.]
For many gamers and
developers, the name Havok is synonymous with physics. Havok's current physics
SDK has shipped in some 200 games, including popular titles such as the Halo
series, and Guitar Hero III.
For the
past three years, the company has also been developing middleware and tools for
game characters. Havok
calls
these products Havok Animation and Havok Behavior. To help deliver character
assets into the cross-platform
file
formats used by these tools, Havok has also developed the Havok Content Tools,
which are a set of plug-ins and exporters for Autodesk's Maya and 3ds Max,
and XSI.
Using
traditional 3D character animations, along with various procedural and blending
techniques, these tools
improve
the fundamental interactions and low-level decisions that are crucial in
helping bring in-game characters
to life.
Much of the intent behind these tools is to provide a back-end that is not only
powerful but also
comprehensible -- even
to members of development teams who may not have highly technical backgrounds.
Havok's
Jeff Yates has 15 years of experience managing the development of content
creation tools, such as Autodesk's 3ds Max and Maya. As vice president of
product management at Havok, he deals directly with clients who have specific
requirements and serves as the company's public face for high-level product
strategy.
We caught
up with Jeff to discuss Havok's expansion into areas beyond physics, Havok's
underlying goals for
middleware
tools, game development's focus on characters, and what he sees for the future
of animation and
behavior
technology.
Havok is mainly known for its physics, but
your animation and behavior components
have been in development for a few years
now, right?
Jeff: Yes.
We had the coming-out launch of our
animation product, Havok Animation, at Game
Developers Conference (GDC) 2005. Since then we have
continued to mature the product, and it is now in use in
dozens of games. We've developed a complete content
pipeline to help game developers get the animation
assets in the game as effectively as possible.
For
example, to deal with the natural memory limitations
on many
game systems, Havok Content Tools gather
all the
animation tracks in 3ds Max, Maya, and XSI,
and
compress them in a way that can be efficiently
decompressed
on a range of game consoles from the
PS3 to
the Wii. Compressing animation is a bit like
compressing
video: it relies on clever off-line analysis
and
packing that enables fast and relatively high-quality
decompression
in the game.
These compression settings are all controllable and previewable
via
the Havok Content Tools that install directly into popular 3D
modeling
tools. So you can get a sense of how much compression you are
getting up front.
Havok Animation also offers various inverse kinematics (IK)
solvers,
with runtimes appropriate for game engines., We have Foot IK,
which
can adjust and climb over uneven terrain, as well as Hand IK,
which
can dynamically assess specific grab orientations for properly
picking
up objects and holding onto environmental elements.
Then there's what we call ragdoll mapping, which is basically
runtime
motion mapping between a simplified physical representation of the
character, and its traditional "rig" or skeleton. For example, say
you
have a simple ragdoll specification with only a few spine bones
(not
a ton, because you don't need them for the physics), and also the
higher-resolution bone system -- between 50 and 100 bones -- which is
what animators usually work with.
With real-time ragdoll mapping,
we can let the physics drive the animation, the animation drive
the
physics, or some combination of the two. We do this to achieve
full-body IK-like effects -- with the added benefit that limbs do not
pass
through themselves or the body, nor through any other objects they
interact with. It's the best of both worlds.
Are those animation features separable from the
physics component?
Jeff: Yes -- Havok
Animation is very modular and so things like the
compression and decompression can be used by themselves
as desired.
The IK is also independent. It's incorporated into the SDK
structure
in a way that is relevant for games, and it takes advantage of the
underlying physics system to sense the environment and help make
decisions. For example, consider what should happen to a character
when one of its legs steps over a ledge. Should it strike an off
balance
pose, or transition into a falling state where it fl ails and
grabs for
targets, before hitting the ground below?
The Foot and Hand IK systems are equipped with all the bells and
whistles to deal with these situations. And yet these systems can
be
used independent of physics if you like. But the physics gives the
ability
to make more informed decisions that make the animation look that
much more convincing.
So how do you decide what development issues to
move into outside of your core area of physics?
Jeff: That
is a great question. You know, a lot of it is deep
soul-searching. [laughs]
At Havok, we try to extend from our areas of strength, from the
core
competencies that we already have. We would not want to jump into
an adjunct area where we are totally green. We grew into animation
through our demos, because people would say, "Well, you guys say
you can blend animations and physics, but show us."
In our demo creations, we began to notice that what we were
writing
was beginning to look more and more like a product. So we decided
to build and support a full animation system and tool chain that
people could license separately or with Havok Physics -- that's Havok
Animation.
|