World's First Physics Processing Unit
Duane writes "Gamers Depot has an exclusive interview with the team behind Ageia - the maker of the world's first Physics Processing Unit (PPU) - which was just announced today.
"Sure we've all heard about the CPU and GPU - that's old hat by now and as most hardware reviewers will tell you, it's about time we got something that's truly revolutionary. Yeah, Pixel shaders are cool, and can do a lot of really nice things; however, pale in comparison in scope to what the PhysX chip from Ageia has the potential to bring to gaming.""
I just finished reading the article, and this actually has some potential.
The biggest problem they're going to have to deal with, and granted, I'm not a game developer so someone can feel free to fill in the details, is that I would believe that most developers have their own method for dealing with physics - from simple collision to ragdoll and the like. The idea is "How do I tell the computer these things are touching each other' (like bullets - these are "instant shot", so the developer just says "if there's a straight line between the direction the Player A is facing, and if that line would intersect Player B, then it's a hit. If not, then miss." And algorithms like that are done by matrixes, if I'm not mistaken. Other "hits" deal with actual objects (rockets moving, goops from the goop gun, etc).
But the difference between Quake III and Unreal Tournament is more than just 'draw the graphics", it's also in how each engine deals with how those collisions are managed.
So with a PPU, you have to decide on a common library of collisions. Good news: more objects you can play with and let the PPU decide what's getting hit. Bad news: everybody's game will react basically the same and they'll have to decide if that's a good idea.
Either way, I'll wait a year or so and see what happens. Best of luck to the developers - looks like they're at least shooting for something unique.
52 Weeks, 52 Religions with John Hummel
If you have a game like Unreal Tournament 2004, it is the physics processing that really kills your framerate, no matter how good your GPU. You can see this by simply swapping between the Deathmatch and Onslaught gametypes. The Onslaught world is filled with vehicles which run off the Karma physics engine, and they KILL your framerate, so that the game effectively becomes CPU-throttled, instead of GPU-throttled (which is what we are used to). A PPU is a genuinely brilliant idea, and relatively easy to implement. It will be interesting to see what the programming interface is... and whether the board runs an engine like Karma or something they've invented all for themselves. Prepare to be amazed, I think.
I'm not wrong. You haven't thought about it hard enough.
Pictures of boards are all well and good, and the martketing hype is fun, but we need to know.
Stick Men
I'm not a professional developer... that said I'm developing both a robotic simulation API/framework and a game, both in my free time, both *heavily* use the open dynamics engine for physics.
The Open Dynamics Engine is free, & open source. It's not the best physics engine, by any margin. However, being open source I can afford it... and most importantly I can use it on my Mac ( hell, I actually provided some patches to get it to correctly use single-precision trig when OS X.3 came out ). Plus, I want to release my game and robot simulator under an open source license... can't expect people to *buy* novodex or havok just to build the apps.
This PPU looks like a *wonderful* thing, but reading their site, and the interview, it sounds like to use it you've got to use Novodex. That said, Novodex is awesome -- and many games use Novodex already for physics.
(Perhaps I missed something, maybe Novodex is just an API wrapper. Maybe they'll have a low-level API which you can bind to as you want. )
But the thing is, I'd like to be able to buy one of these boards and *not* have to shell out for a developer license for an API which isn't even available on Mac ( maybe it is ). Also, both my simulator and game are intended to be released under an open source license at some point. So, no novodex for me. So, no PPU for me.
Perhaps we're just a little short on data at the moment.
lorem ipsum, dolor sit amet
1) Games do not use Real Physics, they fake it. If they didn't fake it, you wouldn't want to play it.
Games also do not use Real Graphics (whatever that would be. Raytracing, presumably) - instead they fake it. And yet they still benefit a hell of a lot from GPU cards.
This card does not force physics to be realistic - there's nothing stopping a developer making cars that go at 600 MPH, or having characters leap a tall building in a single bound. It just enables things like that to be done much easier, and more convincingly.
2) Processors are currently faster then what programs can use(If programmed correctly). It is going to take a few years before games keep up with Processors.
Only because of your GPU. Go on, take that baby out of there and fire up Doom 3. Whoops! Where'd your framerate go?
The reason most games fly on current hardware is because they offload most of the work to the GPU. The major tasks outside of graphics are physics and AI - and the physics are getting increasingly more complex as games become more realistic.
Those lovely flying ragdoll bodies have to be calculated somewhere, y'know.
3) Why not just have two general purpose processors. Multithreading is getting pretty common. What would the added advantage between having a seperate processor just for Physics,then having two general usage processors?
Again, the same could be said about a GPU. This does bring up an interesting point, however. If this takes off it won't be long before you have a GPU, soundcard (with hardware 3D audio), PPU, probably some kind of AI hardware card...
how long before someone goes "Hey! I know! Why don't we combine all these things into a generic processor.. I know.. we could call it a.. uh.. CPU!"
Curiosity was framed. Ignorance killed the cat.
We've already pushed off sound, graphics, and now physics onto seperate processors. Why not just craft an entire game console onto a single card and be done with it? Jeesh.
I'll echo this question. The PPU sounds like another form of coprocessor - vector processor, graphics processor, etc. I can understand why you'd want one in general, but if you were desigining one, I don't know why you'd limit it to (game) physics.