Blender Game Engine
Creating a racing game in the Blender Game Engine | |
Developer(s) | Briar Wallace |
---|---|
Stable release |
2.78
/ 30 September 2016[1] |
Written in | C, C++, and Python |
Operating system | Cross-platform |
Type | 3D computer graphics |
License | GNU General Public License v2 or later |
Website |
www |
The Blender Game Engine is a component of Blender, a free and open-source comprehensive 3D production suite, used for making real-time interactive content. 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
Erwin Coumans and Gino van den Bergen developed the Blender Game Engine in 2000. The goal was to create a marketable commercial product to easily create games and other interactive content, in an artist-friendly way. These games could run either as stand-alone applications, or embedded in a webpage using a special plugin that was eventually discontinued, as the inability to sandbox Python aroused security concerns, though there was a later effort to revive it (an updated alpha version for Internet Explorer, and Firefox and COLLADA support was considered). Another plugin has surfaced named Burster, which enables secure embedded gameplay on websites, with sandboxing and encryption support.
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.
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.
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.
Future roadmap
Ton Roosendaal has stated[2] that the future of the Blender Game Engine will integrate the system into Blender as an "Interaction Mode" for game prototypes, architectural walkthroughs and scientific simulators. Blender developer Martijn Berger stated that "The sequencer and game engine are in serious danger of removal, if we cannot come up with a good solution during the 2.8 project."[3]
Gallery
- Blender Game Engine 2.42 screenshot
- Blender Game Engine 2.42 screenshot
- Blender GLSL shader node editor 2.42 screenshot
- Logic Bricks and Python Scripting
Notable games
- Yo Frankie!
- Sintel The Game
- Boro-Toro – a side-scrolling platform puzzle game developed by DarkMatter Designs. It won the 2009 BAFTA "Ones to Watch" award.[4]
- Krum: Edge of Darkness (on Steam) - A hack-n-slash adventure game.
- Speed Racer a whole new world 2 - Currently in progress 2016
- Tomato Jones (on Steam) - a physics-based puzzle/adventure game.
- BuildMoreCubes (on Steam) - an army vs army game, where you need to constantly rebuild and grow your army.
See also
- Bullet (software), Game Blender's Physics engine
- Blender (software)
- Blend4Web, Blender-based engine for online games
- Panda3D
- Pygame
- Crystal Space
References
- ↑ "Download - blender.org". Retrieved 2016-03-11.
- ↑ "Blender roadmap – 2.7, 2.8 and beyond". Blender. Retrieved 2014-03-01.
- ↑ "2.8 project developer kickoff meeting notes". Blender. Retrieved 2015-11-12.
- ↑ "Ones to Watch Award in 2009". BAFTA. Retrieved 2010-03-03.
External links
The Wikibook Blender 3D:_Noob to Pro has a page on the topic of: Game Engine Basics |
- Manual on Blender's Wiki (Also lists tutorials and other resources)
- Blender Artists Forum - Game Engine
- Official Blender website
- UPBGE - An active fork of the blender game engine