bullet-physics-playground / bpp

Licence: other
The Bullet Physics Playground – Bullet Real-Time Physics Simulation.

Programming Languages

POV-Ray SDL
72 projects
C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language
shell
77523 projects
QMake
1090 projects
Makefile
30231 projects

Projects that are alternatives of or similar to bpp

gopem
GUI for OPEM library
Stars: ✭ 20 (-35.48%)
Mutual labels:  qt5, physics-simulation
SpinMC.jl
Classical Monte Carlo simulations for lattice spin systems
Stars: ✭ 18 (-41.94%)
Mutual labels:  physics-simulation
qt-ribbon
A ribbon bar implementation for Qt widgets applications
Stars: ✭ 43 (+38.71%)
Mutual labels:  qt5
Torque
2d 纯计算高性能刚体物理引擎
Stars: ✭ 62 (+100%)
Mutual labels:  physics-simulation
cyan
Cyan Color Converter
Stars: ✭ 68 (+119.35%)
Mutual labels:  qt5
Screensaver
Just a funny screensaver.
Stars: ✭ 27 (-12.9%)
Mutual labels:  qt5
vatsinator-legacy
An open-source Vatsim monitor
Stars: ✭ 12 (-61.29%)
Mutual labels:  qt5
apic2d
Affine Particle-in-Cell Water Simulation in 2D
Stars: ✭ 79 (+154.84%)
Mutual labels:  physics-simulation
NewBreeze
NewBreeze File Manager based on Qt
Stars: ✭ 59 (+90.32%)
Mutual labels:  qt5
CMlyst
CMlyst is a Content Management application built upon Cutelyst with support for Menus, Pages, Blogs and Feeds
Stars: ✭ 22 (-29.03%)
Mutual labels:  qt5
Qt-Advanced-Docking-System
Advanced Docking System for Qt
Stars: ✭ 909 (+2832.26%)
Mutual labels:  qt5
RaiSimUnity
A visualizer for RaiSim based on Unity
Stars: ✭ 31 (+0%)
Mutual labels:  physics-simulation
hive-desktop
🐝 A small LAN chat app
Stars: ✭ 69 (+122.58%)
Mutual labels:  qt5
klatexformula
Generate images from LaTeX equations that you can drag and drop, copy and paste or save to disk.
Stars: ✭ 70 (+125.81%)
Mutual labels:  qt5
qgis3d
3D map view - proof of concept using Qt 3D
Stars: ✭ 39 (+25.81%)
Mutual labels:  qt5
Qt OpenCV
Qt/QtQuick apps using OpenCV
Stars: ✭ 19 (-38.71%)
Mutual labels:  qt5
ipc-toolkit
A set of reusable functions to integrate IPC into an existing simulation.
Stars: ✭ 84 (+170.97%)
Mutual labels:  physics-simulation
RepRaptor
A Qt RepRap gcode sender/host controller
Stars: ✭ 37 (+19.35%)
Mutual labels:  qt5
QSharp
Q# is a C# to C++ compiler using the Qt library for the classlib
Stars: ✭ 16 (-48.39%)
Mutual labels:  qt5
d3-force-surface
A multi-surface elastic collision force type for the d3-force simulation engine
Stars: ✭ 19 (-38.71%)
Mutual labels:  physics-simulation

The Bullet Physics Playground

A very simple physics simulation software.

Features

  • Lua scripting (experimental, sometimes segfaults)
  • OpenGL-2 GUI (experimental, no OpenCL features)
  • OpenSCAD import (experimental, sometimes crashes)
  • POV-Ray / Lightsys export (stable)

Screenshot

Screenshot as of b9331bf2.png

Videos on YouTube

Bullet Physics Playground

Build

Select your operating system:

Run

Start with GUI:

$ release/bpp

Start without GUI and render a 400 frames animation with POV-Ray from the command-line:

$ echo "render = 1" | release/bpp -f demo/basic/00-hello-pov.lua -n 400 -i

Pipe bpp simulation data into gnuplot:

$ release/bpp -n 200 -f demo/basic/00-hello-cmdline.lua | gnuplot -e "set terminal dumb; plot for[col=3:3] '/dev/stdin' using 1:col title columnheader(col) with lines"

to see a bouncing sphere:

  10 +---------------------------------------------------------------------+   
     | AA   +      +      +      +      +      +      +      +      +      |   
   9 |-+AA                                                       Y    A  +-|   
     |   AA               AAAA                                             |   
   8 |-+  AA            AA   AAA                                         +-|   
     |     A           AA      AA                                          |   
   7 |-+   AA          A        A                                        +-|   
     |      A         A          A                                         |   
   6 |-+    AA       A           AA                                      +-|   
     |       A      AA            A                                        |   
   5 |-+     A      A             AA                                     +-|   
     |        A    AA              A        AAA                            |   
   4 |-+      A    A               AA     AAA  AA                        +-|   
     |         A   A                A    AA     AA                         |   
   3 |-+       A  A                  A  AA        A                      +-|   
     |          A A                  A  A          A   AAAAAA              |   
   2 |-+        AA                   A A           AA AA    AA           +-|   
     |          AA                    AA            AAA      AAAAAAAA      |   
   1 |-+         A                    A              A        AA     AAAAAA|   
     |      +      +      +      +      +      +      +      +      +      |   
   0 +---------------------------------------------------------------------+   
     0      20     40     60     80    100    120    140    160    180    200  

For more demos, see demo/.

For a list of Lua-accessible classes, functions and properties, run:

$ release/bpp -f demo/basic/00-luabind.lua

Basic Usage HOWTO

Viewer

Keyboard shortcuts

  • S starts/stops the physics simulation
  • P toggles the POV-Ray export mode
  • G toggles the PNG screenshot saving mode
  • A toggles display of world axis
  • F toggles FPS display
  • ⏎ Enter starts/stops the animation
  • Space toggles between fly/revolve camera modes
  • Use arrow keys to move the camera
  • Hs hows QGLViewer help window: note the above shortcuts overwrite the QGLViewer ones under the "Keyboard" tab.

Mouse usage

  • Press H to show QGLViewer help window, and click on the "Mouse" tab to see all the possible mouse actions.

Editor

The editor has a few known problems:

  • It will crash if you try to use a non-existant file for a Mesh object. It will crash too if you try to edit the file name. The workaround is to comment out the Mesh and v:add() lines before editing them.

  • With scripts which load many objects, or big meshes, the typing can be very slow.

Wiki

Chat

Gitter

Author

  • Jakob Flierlkoppi – Initial release.

Contributors

License

The Bullet Physics Playground is licensed under the GNU Lesser General Public License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].