- Dec 6, 2009
- 4,419
- 0
- 0
After debating on this board, it's obvious to me that a lot of misconceptions muddy the debate.
So I thought:
What better way than to make a FAQ/informative post to clear out a lot of these misconceptions.
So here we go:
Claim #1
"My multicore CPU will do physics just as good, no need for GPU physics."
This is false.
A GPU is superior to a CPU for physics calculations by a MAJOR factor.
I will let Erwin Coumans(Bullet Physics) provide the documentation:
This is the case wether the physics API is called PhysX, Havok or Bullet Physics.
So NO, you CPU is no match for a GPU in physics.
It would be like saying that your multicore CPU would render graphics just as good and fast as an GPU.
Claim #2
"BF:BC2's use of CPU physics looks just a good (or better) than any GPU physics game."
This is really comparing apple to oranges.
BC:BF2 uses Havok CPU physics and thus is limited in the perfomance is can apply to physics and thus resort to scripted physics.
This means that:
- every single wall explosion looks the same.
- every single wall explosion creates an identical hole in the wall time after time.
- every single wall explosion creates the same dead, inactive debris.
A game utilizing GPU physics does this differently, eg. Warmonger as is can use dynamic physics.
This means that:
- every single wall explosion is different aka dynamic.
- every single wall explosion creates a dynamicly whole, depending on the impact of forces.
- every single wall explosion creates interactive debris.
This applies to all other physics effects in general (scripted vs dynamic)
Games that have been acclaimed with doing the "same" on the CPU are eg. Ghostbusters or Star Wars Force Unleashed.
What people for some reason (choose?) to ignore are that not only are the amount of rigid bodies shown a lot less than other GPU physics games and that the debris for destroyed object not only are dead and static (you cannot interact with them) the debris also dissapear into thin air after 10-15 seconds.
This in in no way comparable to eg. games like Mafia II where not only are the debris interactive, but it also remains on the level and dosn't suddenly fade out and dissaper into thin air.
Claim #3
"You must have a NVIDIA GPU to run Physx"
This is also false.
PhysX run on everything from a Cell CPU to a x86 CPU to AGEIA's PPU to NVIDIA GPU's.
The ONLY difference is the amount of performance available on the different platforms.
This lead to that the developer needs to make some choices.
Run all physics effects at the same level of hardware, resulting in that some configuration will run at 1-2FPS while others will run at +30 FPS.
A game doing this is EVE - Online.
It's Character creator run NVIDIA's APEX.
If you have a NVIDIA GPU, the creator runs fluidly, but if you have an AMD GPU, you are forced to run the APEX PhysX on your CPU and you get 1-2 FPS at max settings.
A game doing it in a different way is Batman - AA.
There they limit the physics features being run (When a NVIDIA CPU isn't present) in order to ensure fluid gameplay.
Claim #4
"OpenCL/DirectCompute is much better than PhysX"
This is a claim based on ignorance.
OpenCL <-> CUDA <-> Directe Compute
Those are API's and can be compared.
PhysX <-> Havok <-> Bullet Physics.
Those are physics middlewares and can be compared.
Let look at PhysX.
It's a physics middleware running on CUDA.
Then lets look at Bullet Physics 3.0
It's a physics middleware running on OpenCL.
OpenCL will never be a physics middleware, so comparing the two is really bad and dosn't contribute with anything but ignorance about the topic.
Claim #5
"PhysX is proprietary and thus bad!"
This is really mindboggling.
DirectX is proprietary.
X86 is proprietary.
Hell, even Windows is proprietary.
Most technologies are infact proprietary and companies licenses proprietary technologies from each other all the time.
AMD licenses proprietary technologies from NVIDIA.
NVIDA licenses proprietary technologies AMD.
AMD licenses proprietary technologies from Intel.
Intel licenses proprietary technologies AMD.
The list goes on and on.
Just because something is proprietary dosn't make it bad.
This claim is often made with a foundation in brand loyality and nothing else.
Claim #6
"PhysX is an aesthetic feature, it doesn't do much for gameplay."
This is another mindboggling claim.
One of the first games that features PhysX was CellFactor.
It featured destructable architechture and that is gameplay altering.
Another game featuring this is Warmonger.
The claim is based on ignorance, either due to a lack of expore to such a games.
Or more mindboggling, as the poster who made this claim prefers "scripted physics" over "interactive physics" thus wanting to stall the development due to brand preferences..and his favourite brand dosn't yet have GPu-physics.
Stagnation is the opposite of progress and a really sad stance to have.
*space for further false claims as they are spotted*
Anyone have something they want added to the list, feel free to PM me or post it in this thread.
I think it would be nice to compile a list of the most comon false claims, so people don't have to use time to debunk the same false claims over and over again.
So I thought:
What better way than to make a FAQ/informative post to clear out a lot of these misconceptions.
So here we go:
Claim #1
"My multicore CPU will do physics just as good, no need for GPU physics."
This is false.
A GPU is superior to a CPU for physics calculations by a MAJOR factor.
I will let Erwin Coumans(Bullet Physics) provide the documentation:
Erwin Coumans said:GPU NVIDIA Geforce 260:
Profiling: Root (total running time: 0.704 ms) ---
0 -- stepSimulation (99.57 %) :: 0.701 ms / frame (1 calls)
Unaccounted: (0.426 %) :: 0.003 ms
...----------------------------------
...Profiling: stepSimulation (total running time: 0.701 ms) ---
...0 -- synchronizeMotionStates (0.00 %) :: 0.000 ms / frame (1 calls)
...1 -- solveSoftConstraints (75.75 %) :: 0.531 ms / frame (1 calls)
...2 -- internalSingleStepSimulation (12.55 %) :: 0.088 ms / frame (1 calls)
...Unaccounted: (11.698 %) :: 0.082 ms
CPU Intel Quadcore Q6800 at 2.93 Ghz:
Profiling: Root (total running time: 12.511 ms) ---
0 -- stepSimulation (99.96 %) :: 12.506 ms / frame (1 calls)
Unaccounted: (0.040 %) :: 0.005 ms
...----------------------------------
...Profiling: stepSimulation (total running time: 12.506 ms) ---
...0 -- synchronizeMotionStates (0.01 %) :: 0.001 ms / frame (1 calls)
...1 -- solveSoftConstraints (68.69 %) :: 8.590 ms / frame (1 calls)
...2 -- internalSingleStepSimulation (15.21 %) :: 1.902 ms / frame (1 calls
This is the case wether the physics API is called PhysX, Havok or Bullet Physics.
So NO, you CPU is no match for a GPU in physics.
It would be like saying that your multicore CPU would render graphics just as good and fast as an GPU.
Claim #2
"BF:BC2's use of CPU physics looks just a good (or better) than any GPU physics game."
This is really comparing apple to oranges.
BC:BF2 uses Havok CPU physics and thus is limited in the perfomance is can apply to physics and thus resort to scripted physics.
This means that:
- every single wall explosion looks the same.
- every single wall explosion creates an identical hole in the wall time after time.
- every single wall explosion creates the same dead, inactive debris.
A game utilizing GPU physics does this differently, eg. Warmonger as is can use dynamic physics.
This means that:
- every single wall explosion is different aka dynamic.
- every single wall explosion creates a dynamicly whole, depending on the impact of forces.
- every single wall explosion creates interactive debris.
This applies to all other physics effects in general (scripted vs dynamic)
Games that have been acclaimed with doing the "same" on the CPU are eg. Ghostbusters or Star Wars Force Unleashed.
What people for some reason (choose?) to ignore are that not only are the amount of rigid bodies shown a lot less than other GPU physics games and that the debris for destroyed object not only are dead and static (you cannot interact with them) the debris also dissapear into thin air after 10-15 seconds.
This in in no way comparable to eg. games like Mafia II where not only are the debris interactive, but it also remains on the level and dosn't suddenly fade out and dissaper into thin air.
Claim #3
"You must have a NVIDIA GPU to run Physx"
This is also false.
PhysX run on everything from a Cell CPU to a x86 CPU to AGEIA's PPU to NVIDIA GPU's.
The ONLY difference is the amount of performance available on the different platforms.
This lead to that the developer needs to make some choices.
Run all physics effects at the same level of hardware, resulting in that some configuration will run at 1-2FPS while others will run at +30 FPS.
A game doing this is EVE - Online.
It's Character creator run NVIDIA's APEX.
If you have a NVIDIA GPU, the creator runs fluidly, but if you have an AMD GPU, you are forced to run the APEX PhysX on your CPU and you get 1-2 FPS at max settings.
A game doing it in a different way is Batman - AA.
There they limit the physics features being run (When a NVIDIA CPU isn't present) in order to ensure fluid gameplay.
Claim #4
"OpenCL/DirectCompute is much better than PhysX"
This is a claim based on ignorance.
OpenCL <-> CUDA <-> Directe Compute
Those are API's and can be compared.
PhysX <-> Havok <-> Bullet Physics.
Those are physics middlewares and can be compared.
Let look at PhysX.
It's a physics middleware running on CUDA.
Then lets look at Bullet Physics 3.0
It's a physics middleware running on OpenCL.
OpenCL will never be a physics middleware, so comparing the two is really bad and dosn't contribute with anything but ignorance about the topic.
Claim #5
"PhysX is proprietary and thus bad!"
This is really mindboggling.
DirectX is proprietary.
X86 is proprietary.
Hell, even Windows is proprietary.
Most technologies are infact proprietary and companies licenses proprietary technologies from each other all the time.
AMD licenses proprietary technologies from NVIDIA.
NVIDA licenses proprietary technologies AMD.
AMD licenses proprietary technologies from Intel.
Intel licenses proprietary technologies AMD.
The list goes on and on.
Just because something is proprietary dosn't make it bad.
This claim is often made with a foundation in brand loyality and nothing else.
Claim #6
"PhysX is an aesthetic feature, it doesn't do much for gameplay."
This is another mindboggling claim.
One of the first games that features PhysX was CellFactor.
It featured destructable architechture and that is gameplay altering.
Another game featuring this is Warmonger.
The claim is based on ignorance, either due to a lack of expore to such a games.
Or more mindboggling, as the poster who made this claim prefers "scripted physics" over "interactive physics" thus wanting to stall the development due to brand preferences..and his favourite brand dosn't yet have GPu-physics.
Stagnation is the opposite of progress and a really sad stance to have.
*space for further false claims as they are spotted*
Anyone have something they want added to the list, feel free to PM me or post it in this thread.
I think it would be nice to compile a list of the most comon false claims, so people don't have to use time to debunk the same false claims over and over again.
Last edited: