Software development environment designed for building video games
A game engine is a software framework primarily designed for the development of video games and generally includes relevant libraries and support programs such as a level editor.[1] The "engine" terminology is akin to the term "software engine" used more widely in the software industry.
Game engine can also refer to the development software supporting this framework, typically a suite of tools and features for developing games.[2][3]
Developers can use game engines to construct games for video game consoles and other types of computers. The core functionality typically provided by a game engine may include a rendering engine ("renderer") for 2D or 3D graphics, a physics engine or collision detection (and collision response), sound, scripting, animation, artificial intelligence, networking, streaming, memory management, threading, localization support, scene graph, and video support for cinematics. Game engine implementers often economize on the process of game development by reusing/adapting, in large part, the same game engine to produce different games[4] or to aid in porting games to multiple platforms.