From A Scientist's Point Of View
Science is about solving problems, and when doing so with computers, it's all about math. For example, to give a brick wall a nice surface and correct lighting, the GPU uses units called shaders. The principle is to apply a finely-tuned algorithm that performs exact calculations correctly every time, and shaders today make excellent use of the hardware that they are programmed to use.
Kenny Erleben, assistant professor at the Datalogical Institute in Copenhagen, Denmark.
Kenny Erleben, assistant professor at the Datalogical Institute in Copenhagen, Denmark, is working on physics-based animation and simulation modeling. He says that from a researcher's theoretical viewpoint, and from what he's heard so far, the PhysX card doesn't look promising, for two main reasons. First, the physics algorithms are locked into the hardware, which prevents programmers from changing the algorithms if they find better ones. Second, as we mentioned earlier, the factors that influence physics cannot be simplified into an equation in a satisfying way. This basically means that you're stuck with what you have and cannot go forward.
Erleben explains: "[the solutions] tend to be iterative in nature and the animation quality is limited by the linear convergence rate of these types of solvers. In layman terms, this means that the algorithms are often okay for blow-'em-up physics, like driving a car into a wall or knocking down a castle with a catapult. There are, however, many subtle effects that these types of algorithms cannot produce."
The subtle effects that Erleben means are, for example, how tall buildings in games could become elastic and collapse under their own weight if damaged. Water seems more like jelly - it moves more slowly and is more easily compressed. Cloth appears to behave and look more elastic than in the real world. All of these issues, he says, are good examples of how physics effects in games quite often are controlled by scripting: like a brick wall "coming alive" just prior to the tank crashing into it, otherwise the wall would have collapsed long before the vehicle reached it. He says that this partly is because of the programmer's intent to have better control over the computational resources, but the main reason is that implementing the laws of physics into fast and reliable algorithms just isn't that easy to do.
Erleben actually prefers the GPU solution, because GPUs are quite flexible to program now. "With the GPU, one has full control over the GPU hardware. The GPU offers two other interesting aspects: it is a streaming architecture, and it is inherently parallel." He also, however, talks about some of the issues connected to working with graphics accelerators, like the nearly impossible task of debugging code and vendor-specific issues. We guess that part of the reason he prefers working on the GPU is that these devices have been around a lot longer; in a few years we may hear the same thing about the PPU, too...
According to Lacoursière, there is one main problem with the iterative (GPU, PPU) solutions that are used instead of the direct, more accurate ones. Since they all work by making rough approximations, they don't take into account any long-term effects at all, which would require too much computing power. This, says Lacoursière, is the reason why both the PPU and GPU fail in being a sufficient platform. This job should instead be handled by the master of solving direct matrix operations: the CPU. The raw processing power of dual multi-core CPUs with large caches should mean that there is no problem in improving performance a great deal. Still, as Erleben points out, to really make good use of this multithreading architecture, you need to redesign all the algorithms involved, which will take some time to do.
Soon we will have the possible combined power of dual multi-core CPUs, GPU-driven physics, and Ageia's PhysX card. So the future looks very interesting both for science and gaming. As scientists continue trying out their simulations on this new hardware, we will no doubt also see games more and more packed with features that make use of the new technology, driven by both software and hardware. And as long as the games feel good, we probably won't mind that gaming physics doesn't work exactly as it does in the real world.