I’ve been describing methods of dynamic simulation using mass and spring systems for the past couple of months. These techniques dramatically increase the realism in your real-time graphic simulation. One of dynamic simulation’s key benefits is that it creates a scaleable game experience.
Users with more powerful systems get a more realistic experience, while users with less powerful systems are still provided with a complete experience. It’s a situation analogous to the use of levels of detail in your 3D models. Particularly in the PC market, where target systems can vary widely, these techniques have become a crucial weapon in the developer’s arsenal.
For a current project, I decided to maximize the use of dynamics to increase realism wherever possible. The project focuses on characters in moody interior environments. It occurred to me that the use of cloth animation in my scenes would be crucial to creating the mood I was trying to establish.
Traditional Cloth Animation in Games
The devil wears an animated-cloth blue dress.
Cloth animation is tricky. Even in the world of high-end computer graphics, it’s difficult to get right. Most of the time, it’s wise to avoid the whole issue. Anyone who has ever created a female character in a skirt is familiar with the problem of the legs poking through the cloth mesh during animation. This is pretty difficult to fix, especially if animation requires a variety of motions. It’s particularly tricky if you are applying motion capture data to a character. Unfortunately, it’s also a really obvious animation problem that any end user can spot. These cloth animation problems are the reason why most digital characters are clothed in tight-fitting gear, such as skin hugging stretch pants.
Most loose clothing doesn’t look natural in digital art because it’s static. It doesn’t move along with the body. It’s possible to morph the shape of the skirt to match the motion of the character, but this requires quite a bit of detailed animation work. Likewise, deforming the skirt with a bone system can be effective, but not necessarily realistic.
For my work, I wanted to create realistic cloth in the environments and on the characters. My hardware accelerated graphics rasterization freed the processor power necessary to make this possible. So, I set about creating a real-time cloth simulation.