Please people, NVIDIA hasn't locked AMD from supporting the PhysX API, AMD has simply refused to support it themselves.
And I'm tired of people saying "The CPU can run Physics fine". All current physics implementations STINK! Physics should determine if a bullet passes through an object, how much force it has when it hits a person, whether or not is passes through armor, and finally, how much damage it does. Nope, instead we get X damage for one size bullet, and y for another.
I want the power to use Physics to play the way I want to play; I want to create avalanches on the fly, destroy key enemy positions dynamically, etc. Not determined by what scenereos the devs though of, but done entirly through the API itself.
A true implementation of physics will be an even more demanding task then Rasterization, which currently requires discrete cards to take the load off the CPU.
Also, NVIDIA is right; like most API's (DirectX, etc), implementation is left up for the developer. The API itself is still parallel in nature, and can be scaled properly with minimal effort. I'm chalking that batman AA numbers on sloppy coding on the devs part.