Modders Get Nvidia's PhysX To Run On ATI Cards
stress_life writes "Following controversial allegations that Nvidia is cheating in 3DMark Vantage and Unreal Tournament 3 benchmarks, executives from Futuremark and Epic moved forward to clean any confusion.
However, the game was not over — enthusiasts from Israel ported PhysX middleware to run on ATI Radeon cards, achieving remarkable performance. Owners of ATI Radeon cards will be able to play PhysX games as well, such as Ghost Recon 2 and already mentioned Unreal Tournament 3."
Also the 48XX series ships with linux drivers.
Viral software licensing is not freedom, it is in fact GNU/Socialism.
Well, the amazing part of the whole deal here is that benchmarks show almost no decrease in framerate with PhysX turned on. So yeah, it's kind of a big deal.
There is no -1 Disagree mod. Slashdot.org/faq defines mod options. USE IT.
The interface is a freely available SDK (for some uses). The physics is basically Newtonian mechanics (more in a moment). Physics for games are, first and foremost, an exercise in collision detection. The physics is simple. Determining collisions in a series of finite-length steps is the hard part.
Why I say that the physics is basically Newtonian mechanics, there is spring technology, although all spring technology in finite step simulations has errors (if you are not carefully, the springs increase in oscillation over time, instead of damping.) Chemical dynamics and quantum force fields are out. Classical force fields are included. The force fields operate based on propogation (distance, distance-squared, etc.) and other parameters.
The fluid/solid interaction is still being worked on, and fluids and cloth benefit most from hardware acceleration. Fluids use a number of points with mutual attraction/repulsion properties.
No sound properties.
Rope is emulated as a series of sticks with ball joints at the end, a flag as a series of springs with forces at points (cloth simulation is esentially a thing of springs), and the ball and spring, yes.
You left out an important question, which is the rigidity of objects other than cloth/fluids. The ball that deforms as it bounces. Currently, that's in the SDK, but I've not played with it yet.
Your ad here. Ask me how!
Um... it IS CUDA. Or rather, its an extension for CUDA.
From what I understand, nVidia took the PhysX engine they bought from Ageia and ported it to their own language (CUDA) so that it would run on their graphics cards, so people didn't have to shell out for a second $300 "Physics Processing Unit", thus boosting nVidia's GPU sales.
And now someones ported it to ATI.
*Nelson Laugh*
Close, but off...
AMD/ATI vs. Intel/Havok vs. nVidia/PhysX. At least, Intel licensed code from Havok. Intel wants physics on the CPU, nVidia on the GPU, and AMD/ATI just wants to be able to use both.
Your ad here. Ask me how!
Is it real physics? Would it be good for say simmulating chemical dynamics with quantum or classical force fields? COuld I use it to model the hydrodynamics of a sail boat cutting through the water?
No. Most physics middleware provide a simplified model (collision detection, rigid body physics, etc...) which is great for visual gimmicks in games, but is too much an approximation to be used in research. You would need other engines which are optimized to do accurate physics modelling - Gromacs comes as an example.
Now about the hardware behind this : Ageia's PPU could in theory be used to accelerate research calculation. The problem is the lack of a proper API. This processor has only PhysX as available API which is specialized for gaming oriented physics. The SieveC compiler is supposed to be able to generate parallel programs for the PPU but hasn't been released publicly.
Whereas, even if the GPU port of PhysX is only oriented for gaming-specific applications, ATI Radeon card also expose the much more general purpose API "Brook+" (the usage of which is already demonstrated in Folding@Home) and nVidia card have CUDA that you know.
Unlike PhysX, those API expose generic numerical methods and can be used to calculate applications as diverse as you mention. Including calculating the game-specific Ageia PhysX.
PhysX is to CUDA what, for example, Gromacs could be compared to Fortan. The first is a specific engine which is optimised to solve some very specific problems, the second is a general purpose language that can be used to crunch numbers.
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
Maybe the amount of physics that would overwhelm the CPU (which can also kill framerate, BTW) is hardly lifting a finger for the GPU. It's certainly not impossible; GPUs do blow away CPUs for some calculations, which is why we have GPUs in the first place.