-
-
Notifications
You must be signed in to change notification settings - Fork 6
Basic Usage HOWTO
Jakob Flierl edited this page Jun 20, 2016
·
18 revisions
A simple Bullet Physics Playground scene consists of a Lua script that defines the basic objects in the physics world. See demo/basic/00-hello-cmdline.lua to get started:
p = Plane(0,1,0,0,100) -- <x,y,z> up vector, mass, dim (for OpenGL preview)
p.col = "#fff" -- white color
v:add(p) -- add it to the bpp view
s = Sphere(1,10) -- 2 diameter, 10 mass
s.col = "red"
s.pos = btVector3(0,10,0) -- position the sphere 10 units above the plane
v:add(s)
v.cam.pos = btVector3(100,100,100) -- cam position
v.cam.look = btVector3(0,5,0) -- cam location
- You can run bpp from the command-line and forward the output of the Lua script to gnuplot:
$ 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"
10 **-----+------+------+------+------+------+------+------+------+-----++
+ ** + + + + + + + + Y ****** +
9 ++ * ++
| * |
8 ++ ** ++
| * |
7 ++ * ++
| * |
6 ++ * ++
5 ++ * ****** ++
| * ** ** |
4 ++ * * ** ++
| ** ** * |
3 ++ * * * ***** ++
| * * ** ** ** |
2 ++ * ** * ** ** ***** ++
| * * ** ** * ** ** |
1 ++ ** ** *** ** ** ++
+ + * + + +** + ** + ** ***************
0 ++-----+------+------+------+------+------+------+------+------+-----++
0 20 40 60 80 100 120 140 160 180 200
- To export, render and display a 200 frames animation of the above scene with POV-Ray, run:
$ bpp -f demo/basic/00-hello-cmdline.lua -n 200 -e
$ cd export/00-hello-cmdline
$ povray +d 00-hello-cmdline.ini[720p] # see 00-hello-cmdline.ini for other presets
Create and display 00-hello-cmdline.mkv
with FFmpeg and MPlayer:
$ ffmpeg -y -framerate 25 -pattern_type glob -i '*.png' -c:v libx264 -preset veryslow -qp 0 -r 25 -pix_fmt yuv420p 'anim.mkv'
$ mplayer -fs -loop 0 anim.mkv
Or, create 00-hello-cmdline.gif
with ImageMagick®:
$ convert -delay 1 -limit memory 1GiB -loop 0 -layers optimize *.png 00-hello-cmdline.gif
- For more demos, see bpp/demo. Read the LUA-Bindings-Reference for all Lua classes, properties and functions available inside bpp. Learn Lua in 15 minutes.