Bullet (software)
![]() | |
![]() | |
Developer(s) | Erwin Coumans, et al.[1][2] |
---|---|
Stable release | 2.88[3]
/ January 1, 2019 |
Repository | |
Written in | C, C++ |
Operating system | Microsoft Windows, OS X, Linux, iOS, Android, PlayStation 3, Xbox 360, Wii |
Type | Physics engine |
License | zlib License |
Website | pybullet![]() |
Bullet is a physics engine which simulates collision detection, soft and rigid body dynamics. It has been used in video games as well as for visual effects in movies. Erwin Coumans, its main author, won a Scientific and Technical Academy Award[4] for his work on Bullet. He worked for Sony Computer Entertainment US R&D from 2003 until 2010, for AMD until 2014, and he now works for Google.
The Bullet physics library is free and open-source software subject to the terms of the zlib License. The source code is hosted on GitHub, before 2014 it was hosted on Google Code.[5]
Features
- Rigid body and soft body simulation with discrete and continuous collision detection
- Collision shapes include: sphere, box, cylinder, cone, convex hull using GJK, non-convex and triangle mesh
- Soft body support: cloth, rope and deformable objects
- A rich set of rigid body and soft body constraints with constraint limits and motors
- Plugins for Maya, Softimage, integrated into Houdini, Cinema 4D, LightWave 3D and Blender and import of COLLADA 1.4 physics content
- Optional optimizations for PlayStation 3 Cell SPU, CUDA and OpenCL[6]
The Bullet website also hosts a Physics Forum for general discussion around Physics Simulation for Games and Animation.
At AMD Developer Summit (APU) in November 2013 Erwin Coumans presented the Bullet 3 OpenCL Rigid Body Simulation.[7][8]
Projects using the engine
Commercial games
Games using Bullet created by professional game developers for video game consoles or other platforms include:
- Toy Story 3: The Video Game published by Disney Interactive Studios.[9]
- Grand Theft Auto IV, Grand Theft Auto V and Midnight Club: Los Angeles by Rockstar Games.[10]
- Trials HD by RedLynx.[11]
- Free Realms by Sony Online Entertainment.[12]
- Hot Wheels Battle Force 5.[13]
- Gravitronix.[14]
- Madagascar Kartz published by Activision.[15]
- Regnum Online by ngd Studios. An MMORPG which in its latest major update its physics engine was replaced by Bullet.
- Blood Drive published by Activision.[16]
- Hydro Thunder Hurricane.[17]
- DiRT[citation needed] series
- Rocket League.[18]
- Persona 5 by Atlus.
- Asphalt 9: Legends by Gameloft Studio Barcelona.
Movies
Several Hollywood movie studios are using Bullet rigid body simulation for special effects in commercial films. Movies using the Bullet engine include:
- 2012 by Digital Domain.[19][20]
- Hancock by Sony Pictures Imageworks.[21]
- Bolt by Walt Disney Animation Studios used Bullet in their Dynamica Maya plugin.[22]
- The A-Team by Weta Digital[23]
- Sherlock Holmes by Framestore[24]
- Megamind and Shrek 4 by PDI/DreamWorks[25]
3D Authoring tools
- Blender—A free 3D production suite that uses Bullet physics for animations and its internal game engine, the Blender Game Engine.
- btosg, a free visual simulation engine and API, integrating OpenSceneGraph and Bullet.
- Carrara added Bullet Physics in Pro version 8 .[26]
- Cheetah3D, a 3D modeling, rendering and animation software for Apple Mac OS X uses the Bullet physics engine to simulate rigid body and soft body dynamics. (As of version 6.0.)
- Cinema 4D version 11.5 uses Bullet as part of MoDynamics.[27]
- Godot - A free and open-source 2D and 3D game engine integrated Bullet 2 physics with the release of Godot 3.0.
- Golaem Crowd plugin for Maya developed by Golaem[28]
- Houdini has native Bullet Physics support in the dynamics context as of version 12[permanent dead link]. Available as a community supported open source plugin for previous versions.
- LightWave 3D CORE.[29] LightWave 11 also uses Bullet Dynamics for its physics.
- MikuMikuDance a freeware 3D animation program, added the use of Bullet Physics Engine in version 5
- Modo Recoil Allows users to simulate dynamic rigid body interactions based upon the popular Open Source Bullet Physics Library
- Poser versions 10 and Pro 2014 introduced a Bullet Physics-based 'Live mode' for simulating rigid and soft body dynamics while editing the scene
- Softimage plugin Momentum developed by Helge Mathee and distributed by Exocortex
- Verge3D allows physics simulations to be created and controlled without coding via Puzzles, the visual programming system based on Google Blockly.
Open source and other
- Any game developed on Blender Game Engine.
- BDX - a 3D Game Engine integrated with Blender and based on LibGDX, making use of the jBullet port of Bullet.
- 3DMark and 3DMark 11 by Futuremark.[30]
- Panda3D integration.
- Blend4Web includes physics system - a fork of Bullet ported to JavaScript.[31]
- GameKit, a game engine with Bullet integration
- OGRE integration through the OgreBullet and BtOgre add-ons.
- Irrlicht Engine has several integrations with Bullet including the Bullet Physics Wrapper, irrBP and GameKit.
- OpenSceneGraph through the osgBullet plugin.[32]
- OpenMW makes use of OpenSceneGraph and Bullet.
- Crystal Space—Game engine supporting bullet for physics and switching to it as the main physics plugin.
- Cafu Engine—Game engine with bullet physics engine.
- Physics Abstraction Layer
- C4 Engine—A proprietary game engine developed by Terathon Software into which JamesH has integrated the Bullet physics engine.[33]
- jMonkeyEngine—A game engine made in Java.[34]
- Blitz3D integration through the BlitzBullet wrapper.
- Maratis3D a game engine with Bullet integration www.maratis3d.org
- DFPGE Open source graphics engine using DirectX10/11 and Bullet.
- OpenSimulator—Bullet is the default game engine for this platform, Other engines are ODE and ubODE.[35].
- OpenTomb - a cross-platform reimplementation of classic Tomb Raider 1—5 engines
- V-REP—An open source robot simulator that supports 3 physics engines: Bullet, ODE and Vortex.
- ENIGMA Development Environment the free and open-source game maker.
- LibGDX java game development framework which includes a Java Native Interface for Bullet.
- Torque 3D - 3D Game Engine with bullet physics engine.
- Xenko - An open source game engine by Silicon Studio where its physics uses Bullet.
- Godot - Open source 2D and 3D game engine [36]
References
- ^ "GitHub: Bullet Physics". GitHub.
- ^ "Google Code: Bullet Physics".
- ^ "GitHub: bulletphysics/bullet3 releases".
- ^ cgchannel:Bullet and Naiad creators win Academy Awards (January 14th, 2015)
- ^ Bullet moves to github and Erwin Coumans joins Google! (May 16th, 2014)
- ^ "GPU physics: OpenCL separate branch".
- ^ "Bullet 3 OpenCL Rigid Body Simulation". 2013-11-21.
- ^ "bullet3 on GitHub".
- ^ erwincoumans (2011-01-27). "Bullet in SIGGRAPH collision detection course, Toy Story 3 game, Sherlock Holmes and A-Team movie". Erwin Coumans. Retrieved 2011-01-27.
Disney Avalanche just shipped their Toy Story 3 game for PlayStation 3, XBox 360, Wii and PSP, and it uses Bullet physics.
- ^ Frik85 (2009-01-05). "AAA Titles using Bullet". Erwin Coumans. Retrieved 2009-01-05.
There are some AAA games released by Sony Computer Entertainment, Disney and Rockstar and others. [...] We are allowed to mention that some parts of Bullet have been co-developed and optimized with Rockstar and merged into their Rage game engine, used on Xbox 360, PC and PLAYSTATION 3 in Midnight Club: Los Angeles and Grand Theft Auto 4.
{{cite web}}
: CS1 maint: numeric names: authors list (link) - ^ Aaltonen, Sebastian (2009-08-06). "Trials HD Developer Interview". Dale Nardozzi. Archived from the original on 2012-03-15. Retrieved 2009-11-14.
We are also using a modified version of an open source physics engine called Bullet Physics Library to calculate our physics simulation and collision inside the game.
{{cite web}}
: Unknown parameter|deadurl=
ignored (|url-status=
suggested) (help) - ^ reltham (2009-04-15). "FreeRealms uses Bullet". Roy Eltham. Retrieved 2009-04-20.
We're using Bullet collision & dynamics. We use it for our character controller (our own custom one), line of sight checks, and so forth as well as for vehicle physics in the Racing and Demolition Derby instances. Check out the beta here. Go sign up, we are letting people into the beta in waves over the next week or so. Roy Eltham, Senior Engine Programmer, Sony Online Entertainment, http://www.freerealms.com/
{{cite web}}
: External link in
(help)|quote=
- ^ Maddock, Kester (2009-11-13). "HotWheels: Battle Force 5 for Wii uses Bullet". Kester Maddock. Retrieved 2009-11-14.
HotWheels: Battle Force 5 for Wii uses Bullet for collision detection, dynamics, and vehicle simulation..
- ^ Wavesonics (2009-10-12). "Gravitronix releases on WiiWare, uses Bullet". Wavesonics. Retrieved 2009-11-14.
The engine was developed 100% from scratch, and makes extensive use of Bullet for all physics, collision detection, and more.
- ^ reltham (2009-10-14). "Madagascar Kartz uses Bullet". Kester Maddock. Retrieved 2009-11-14.
Madagascar Kartz for Wii, PS3 & Xbox360 uses Bullet. http://nzgamer.com/all/news/3515/madagascar-kartz-announced-dated.html Madagascar Kartz is a 4 player kart racer. Its vehicle simulation is based on Bullet's btRaycastVehicle.
{{cite web}}
: External link in
(help)|quote=
- ^ kester (2009-10-14). "Blood Drive uses Bullet". Kester Maddock. Retrieved 2011-01-27.
Blood Drive for PS3 and Xbox 360 uses Bullet. Blood Drive is a car combat, zombie running-over kind of game.
- ^ Small, Matt. "Postmortem: Vector Unit's Hydro Thunder Hurricane". Gamasutra. Retrieved 5 October 2015.
- ^ Morrison, Angus (2015-09-02). "The Making Of Rocket League". Rock, Paper, Shotgun. Retrieved 2016-10-18.
- ^ Wolff, Ellen (2009-11-13). "2012 Step by Step". digitalcontentproducer.com. Archived from the original on 2011-08-10. Retrieved 2010-02-21.
Our software team built it around a fast, open-source engine called Bullet.
- ^ Dunlop, Renee (2009-11-26). "2012". cgsociety.org. CGSociety. Archived from the original on 2011-07-02. Retrieved 2010-02-21.
We took Bullet as our core solver and built a proprietary system around it that allowed us to build our own constraint system that assembled big objects out of lots of small objects, then choreographed how they broke apart, where their weaknesses were, and how they were affected by forces.
- ^ Coumans, Erwin (2009-11-12). "OpenCL Game Physics" (PDF). Erwin Coumans. Retrieved 2010-02-21.
Some movies using Bullet Physics are Bolt, Hancock and 2012
- ^ Shek, Arthur (2008-09-26). "Disney's Dynamica plugin for Bullet Physics". cgsociety.org. Retrieved 2010-02-21.
I'm the software manager at Walt Disney Animation Studios who kicked off this project and cleared the open source release.
- ^ "A-Team uses bullet - Physics Simulation Forum".
- ^ "Sherlock Holmes - Physics Simulation Forum".
- ^ "PDI Dreamworks Megamind, Shrek 4 and 'How to train your dragon' are using Bullet".
- ^ Hellard, Paul (2010-05-19). "DAZ 3D-Gizmoz Carrara 8 Pro offers Bullet Physics Library, 64-bit support and FBX Export to Unity game engine". Archived from the original on 2012-03-15. Retrieved 2010-07-02.
Professional artists using the Carrara 8 Pro toolset will gain access to […] the Bullet Physics Library.
{{cite web}}
: Unknown parameter|deadurl=
ignored (|url-status=
suggested) (help) - ^ Maxon (2009-09-03). "New Dynamics System for Stunning, Realistic Motion". Maxon. Archived from the original on 2009-12-16. Retrieved 2009-11-14.
MoDynamics is based on the proven Bullet physics library
{{cite web}}
: Unknown parameter|deadurl=
ignored (|url-status=
suggested) (help) - ^ "Golaem Crowd".
- ^ Soth (2009-12-08). "Letter to the NewTek LightWave 3D Community about LightWave 3D with CORE Technology". Jay Roth President, 3D Product Division at NewTek. Archived from the original on 2010-01-17. Retrieved 2009-12-08.
DYNAMICS: Functionality based on the popular Open Source Bullet Physics Library, one of the best physics libraries on the market today.
{{cite web}}
: Unknown parameter|deadurl=
ignored (|url-status=
suggested) (help) - ^ "Happy 2011: 3DMark 11 uses Bullet Physics, FXGuide Interview".
- ^ "Blend4Web User Manual - Physics". Blend4Web.com. Retrieved 2017-03-15.
- ^ Martz, Paul (2009-11-11). "Announcing osgBullet". Paul Martz. Retrieved 2009-11-14.
I'm pleased to announce osgBullet, a new open source Bullet-based project.
- ^ JamesH (2008-11-29). "C4 Engine Bullet Integration". JamesH. Retrieved 2009-11-14.
This is an integration of Bullet into the C4 Engine. The demo isn't anything fancy graphics-wise but is just a series of test worlds.
- ^ "Source Code of jMonkeyEngine's PhysicsCharacter". Retrieved 2011-02-24.
- ^ OpenSimulator Physics Engines
- ^ "Godot 3.0 switches to Bullet for physics". Retrieved 10 December 2018.
External links
- Official website
- bullet3 on GitHub
- Pybullet Python bindings for Bullet, with support for Reinforcement Learning and Robotics Simulation