Why unity uses physx over havok

So, what is the story of physx in unity ? Why physx was chosen over havok ? As from my point of view :

  1. unity is targeting low/midle level games (means it is not for next call of duty game or similiar AAA game);
  2. physx always required powerful computers, and also in 2010-2014, all physx versions used in games were broken performance wise, ans some version were broken in functionality too, so its not really a good idea to integrate broken/very slow physics engine into your game engine, especially for the market that unity is targeting (there will be physx 3.3 in the future, but only time will tell if it has enough improvements to be usable);
  3. all i can see that decision to use physx instead of havok was because of money - am i right ?

I’ve always heard the main advantage of using Nvidia is that they would provide support and tools to help use their stuff as kind of a backdoor investment method aimed at selling their hardware.

AFAIK Havok was very expensive stuff at least at some point so it was probably out of the question to get it licensed and available to both, free and pro users. Also could be that it did not support all target platforms back then.

I’m with Ostwind on this one. Honestly, at the time I don’t think Havok even existed in the licensable form it does today, while Physx not only existed, but was compatible with Unity’s needs. Money likely has nothing to do with it. On the other hand, money is the most likely reason why they wouldn’t switch physics engines now. Not only would they have licensing fees likely, but they would have to rewrite all that code to attach the new engine to Unity as well.

1 Like

probably doesnt matter in Unity’s case since there is no benefit in using nvidia h/w (no accel)

As has been mentioned, Physx was the better option back in the day. The reason for using it now is quite simply because, whether or not there is a better engine out there, the amount of work involved in replacing the system is far too high.

Unity started as a Mac app and there was no Mac version of Havok at the time.

No, it never has. Runs pretty well on old iPhones as long as you don’t go crazy.

You are not right.

It doesn’t sell their hardware since PhysX in Unity is 100% software based and doesn’t use GPU at all, even if you have a nVidia card.

–Eric

1 Like

Why are you guys acting as if havok is actually faster? In Unity 5, Physx is allegedly faster than Havok overall. You choose havok if you require a deterministic solution. In any case the OP doesn’t know what he’s talking about with his list, so I’m not sure why I’m replying. I guess it’s because internet or something.

In any case 2.8 was slower. We’re on 3.3 now.

2 Likes

Yeah, I can’t say that I’ve ever had a problem with the physics being too slow.

in 5, the speed is incredibly good, it’s all threaded shizzle as well. Never hurts.

2 Likes

I ever prefer Bullet over Physx or Havok but Physx is ok.

any good reason since bullet is by far the slowest?

Bullet? Never even heard of that. Physx is definitely amazing IDK why you guys are complaining. Also, Nvidia spends $10 billion each year on research. Im sure thats a lot more than Havok spends… but then again not all the money goes into nvidia’s software. Point is, Nvidia is already becoming much better than Havok. Like Hippo said, it is faster than havok.

I have never seen a large benchmark of this engines, possibly Physx is more fast with Nvidia hardware but Bullet is opensource and this mean that you can modify and adapt the engine to your projects, i used Bullet some years ago with Ogre3D and make ball friction was really easy and realistic.

Well, really Physx is not create by Nvidia, Physx was created by Ageia and then sale to Nvidia, I know detailed this history because the Ageia test game Cell Factor was made in my country.

How often do you need something special though?

When standard features of a engine are not fill the needs of a dev. Today possibly major physics engines how Newton, Havok, Physx or Bullet can make almost any thing but some years ago the features in the engines are not much.

Doesn’t Havok also have its own mobile-oriented game engine?

No Ageia also just bought PhysX, it is from NovodeX and was called NovodeX earlier.

Know it because the guys presented it at a lecture and we students all got free licenses back then (when it still cost a sh#tload of money).

1 Like

Boy, that brings back memories … well, almost, because I don’t remember it all very clearly.

Was it that PhysX for CPU was originally free in order to get game devs to use the physics platform which could then be accelerated on the PhysX processor (if the player had it)?