For developers working with game engines, physics engines provide an accompanying way of simulating real-world responses for objects in games. In Unity, the game engine uses Nvidia's PhysX engine, a popular and highly accurate commercial physics engine.
In game engines, there is no assumption that an object should be affected by physics, firstly, because it requires additional processing power, and secondly because there is simply no need to do so. For example, in a 3D driving game, it makes sense for the cars to be under the influence of the physics engine, but not the track or surrounding objects, such as trees, walls, and so on, they will remain static for the duration of the game. For this reason, when making games in Unity, a Rigidbody component is given to any object that you wish to be under the control of the physics engine.
Physics engines for games uses the Rigidbody dynamics system of creating realistic motion. This simply means that instead of objects being static in the 3D world, they can have properties such as mass, gravity, velocity, and friction.
As the power of hardware and software increases, Rigidbody physics is becoming more widely applied in games, as it offers the potential for more varied and realistic simulation. We'll be utilizing Rigidbody dynamics as part of our prototype in Chapter 1, Enter to the Third Dimension, and as part of the main game of the book in Chapter 10, Instantiation and Rigidbodies.