Game Engine A software development environment providing the framework and tools to enable the development of video games. Game engines vary in their feature set and may provide rendering services or more comprehensive frameworks providing services such as networking, audio, physics and scene composition. The term may also incorporate software tools used to create content compatible with the...
Middleware does not have a consistent, clear definition. Generally, it refers to software that provides services to software beyond what is available at the hardware or operating system level.
In game development, this typically includes specialised software modules, handling aspects such as physics or audio; frameworks and game engines.
Application Programming Interface (API)
A set of reusable functions and procedures allowing the creation of applications. An API specifies how software components interact.