Blender Game Engine

The Blender Game Engine was a free and open-source 3D production suite used for making real-time interactive content. It was previously embedded within Blender, but support for it was dropped in 2019, with the release of Blender 2.8. The game engine was written from scratch in C++ as a mostly independent component, and includes support for features such as Python scripting and OpenAL 3D sound.

History
Blender Game Engine was developed in 2000 with the goal of creating a marketable commercial product to create games and other interactive content, in an artist-friendly way.

Key code in the physics library (SUMO) did not become open-source when the rest of Blender did, which prevented the game engine from functioning until version 2.37a.

Blender 2.41 showcased a version that was almost entirely devoted to the game engine; audio was supported.

Version 2.42 showed several significant new features, including integration of the Bullet rigid-body dynamics library.

Version 2.5 alpha0 was the first version of Blender to have the Logic Editor workspace for coding, which came along with the UI redesign.

A new system for integration of GLSL shaders and soft-body physics was added in the 2.48 release to help bring the game engine back in line with modern game engines. Like Blender, it uses OpenGL, a cross-platform graphics layer, to communicate with graphics hardware.

During the 2010 Google Summer of Code, the open-source navigation mesh construction and pathfinding libraries Recast and Detour were integrated; the work was merged to trunk in 2011. Audaspace was coded as well to provide a Python handle for sound control. This library uses OpenAL or SDL as a backend.

In 2019, with the release of Blender 2.8, the Blender Game Engine was entirely removed from Blender itself. The engine's capabilities and appeal had largely fallen behind other rising game engines of the time, and it was difficult to update both Blender itself alongside the game engine. Users were instead recommended to use other, more powerful open source alternatives, like Godot.

Following its removal from the official version of Blender, an unofficial fork of the game engine source code was created, named UPBGE (Uchronia Project Blender Game Engine). This was done with the aim of maintaining and modernizing the engine. Since then, UPBGE has been updated with support for Blender's new realtime renderer, EEVEE, and runs on top of Blender 3.0 source code.

Features
The Blender Game Engine uses a system of graphical "logic bricks" (a combination of "sensors", "controllers" and "actuators") to control the movement and display of objects. The game engine can also be extended via a set of Python bindings.


 * Graphical logic editor for defining interactive behavior without programming
 * Collision detection and dynamics simulation now support Bullet Physics Library. Bullet is an open-source collision detection and rigid body dynamics library developed for PlayStation 3
 * Shape types: Convex polyhedron, box, sphere, cone, cylinder, capsule, compound, and static triangle mesh with auto deactivation mode
 * Discrete collision detection for rigid body simulation
 * Support for in-game activation of dynamic constraints
 * Full support for vehicle dynamics, including spring reactions, stiffness, damping, tire friction etc.
 * Python scripting API for sophisticated control and AI, fully defined advanced game logic
 * Support all OpenGL lighting modes, including transparencies, Animated and reflection-mapped textures
 * Support for multimaterials, multitexture and texture blending modes, per-pixel lighting, dynamic lighting, mapping modes, GLSL Vertex Paint texture blending, toon shading, animated materials, support for normal and parallax mapping
 * Playback of games and interactive 3D content without compiling or preprocessing
 * Audio, using the SDL toolkit
 * Multi-layering of Scenes for overlay interfaces.

Notable games

 * Yo Frankie!
 * Sintel The Game
 * Garn47