Hardware Abstraction
Most often, 3D engines or the rendering systems in game engines are built upon a graphics application programming interface (API) such as Direct3D or OpenGL which provides a software abstraction of the graphics processing unit (GPU) or video card. Low-level libraries such as DirectX, Simple DirectMedia Layer (SDL), and OpenAL are also commonly used in games as they provide hardware-independent access to other computer hardware such as input devices (mouse, keyboard, and joystick), network cards, and sound cards. Before hardware-accelerated 3D graphics, software renderers had been used. Software rendering is still used in some modeling tools or for still-rendered images when visual accuracy is valued over real-time performance (frames-per-second) or when the computer hardware does not meet needs such as shader support.
With the advent of hardware accelerated physics processing, various physics API such as PAL and the physics extensions of COLLADA (an interchange format for 3D assets) became available to provide a software abstraction of the physics processing unit of different middleware providers and console platforms.
Read more about this topic: Game Engine
Famous quotes containing the words hardware and/or abstraction:
“A friend of mine spoke of books that are dedicated like this: To my wife, by whose helpful criticism ... and so on. He said the dedication should really read: To my wife. If it had not been for her continual criticism and persistent nagging doubt as to my ability, this book would have appeared in Harpers instead of The Hardware Age.”
—Brenda Ueland (18911985)
“Before abstraction everything is one, but one like chaos; after abstraction everything is united again, but this union is a free binding of autonomous, self-determined beings. Out of a mob a society has developed, chaos has been transformed into a manifold world.”
—Novalis [Friedrich Von Hardenberg] (17721801)