Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Yes. That's a very fair point. Most engines I've seen try to implement a general physics model that can handle every genre of games, and there's a lot to be gained by not using that and building something more focused on what you actually need.


Further to that very few engines are developing their own general purpose physics solver and are using middleware. Bullet, PhysX and Box2D are the most popular.

Roblox is the only really big engine company I can think of that actually develops their own physics tech (because they started off doing it).


NVIDIA completely bungled PhysX because they chased accuracy for ML/robotics reasons in the newer releases, and the latest PhysX is slower and deprecated useful games tech like cloth.

So both Unreal and Unity now have their own physics tech.


Aren't Unity still using PhysX?

A lot of engines are still using PhysX (albeit stuck on version 3.x). Upgrading a physics engine is often a pain point, either because it is so tightly integrated in the code base or because game assets have been tuned for the current physics implementation and even a small accuracy or behavior change will require assets to be re-tuned.


What do you mean by slower? Is it the new TGS solver you’re talking about (which is optional and really doesn’t need to be on for games)?

You’re right that it seems like Unreal and Unity are ditching PhysX for something else (Unreal for the new Chaos engine, Unity for their new DOTS engine in collaboration with Havok). I’m just surprised that PhysX‘s performance problems had something to do with the move.


Unity started their physics engine as a test of the job system. When they got the latest PhysX drop, and it was slower, they made it into a full team. Unreal had been annoyed with PhysX for a while, and entertained the idea of writing their own, but never actually did it. When Unity engineers told them about the latest PhysX updates, they launched the Chaos project.

NVIDIA's incompetence is what kicked both of them off, basically. Both engines will continue to support PhysX 3.6 for existing customers.


Both Unity and Unreal are still using older versions of PhysX.

Unity has an ECS physics module they made in collaboration with Havok called Unity Physics which is in development.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: