Make games that matter
Unity’s physics solution for Entity-Component-System (ECS)-based projects consists of two offerings: Unity Physics and Havok Physics for Unity. Both are based on Unity’s ECS framework, sharing the same data protocol.
Using the same protocol allows you to transition your projects between these two physics systems without having to rebuild your content or game code. Whether you’re using Unity Physics or Havok Physics, the unified data protocol allows you to author once and simulate using any ECS-based physics engine.
Fast. Light. Stateless. Customizable. These are the qualities that drive our new Unity Physics solution.
Built on top of Unity’s ECS framework, it’s network-ready, completely customizable, and built for performance out of the box. Whether you’re building a mobile game or a new networked multiplayer console experience, Unity Physics leverages the Burst compiler and Job system to scale across a range of hardware.
Unity Physics is available with Unity 2022.2 Tech Stream and accessible via the Package Manager.
Havok Physics for Unity
Havok Physics for Unity raises the bar of your physics implementation with seamless integration for ECS-based projects. While Unity Physics is optimized for most real-time 3D use cases, Havok Physics for Unity can elevate the stability and performance of physics in spacious open worlds or in scenes with a massive number of rigid bodies. The Havok Physics for Unity simulation backend can be swapped with the Unity Physics backend easily at any time without needing to change existing physics assets or code.
Havok Physics for Unity is available with Unity 2022.2 Tech Stream.
If you’re working on an object-oriented project, there are two built-in physics engines to consider that cover both 3D and 2D game development.
Built-in 3D physics: NVIDIA PhysX integration
Unity’s built-in 3D physics engine is an integration of the PhysX engine in close partnership with NVIDIA. PhysX is available directly through the Editor.
NVIDIA PhysX SDK is an open source, scalable real-time physics engine that enables advanced simulations for more immersive game play with true-to-life simulations and real-time dynamic effects. PhysX is a library for representing 3D worlds that lets you create and destroy actors and tracks their explicit or proximity-based interactions.
PhysX SDK’s dynamics simulation capability includes support for collision, joints, and actuation using maximal and/or reduced coordinates. You can also query the world using a number of different tools, ranging from simple ray casts to sweep and overlap tests.
Built-in physics for 2D games
Unity comes with dedicated and optimized 2D physics, with many more features and optimizations to power your game.
Objects anchored to another object also can benefit from physics with 2D Joints, adding realism to a sliding platform, chain, spring, or car. To simulate buoyancy or magnets, 2D Effectors can add non-contact physics effects.