Commit Graph

233 Commits

Author SHA1 Message Date
Erwin Coumans
abcaa19bc8 make the compiler happy with Collision example 2015-10-19 18:21:45 -07:00
Erwin Coumans
3d3830962a add a few collision examples to test a C API with various back-ends 2015-10-17 13:44:00 -07:00
erwin coumans
4a29986662 initial support for multiple robots in shared memory API 2015-10-13 11:32:25 -07:00
=
5e4badc099 make PhysicsClient an interface class, and move shared memory implementation
of physics client into PhysicsClientSharedMemory class/file.
This will allow implementation of UDP and other transport protocols to a physics server.
2015-09-24 22:50:34 -07:00
=
003a42478b another step closer to useable shared memory C API
(force/torque sensor needs new API)
in a nutshell, users of shared memory physics API should not
directly poke into shared memory, not fill 'SharedMemorCommand'
nor read SharedMemoryStatus directly. The C-API declares 'handles' for those,
to avoid it from happening.
2015-09-16 23:09:10 -07:00
Erwin Coumans
2e7949bb3e fix some warnings 2015-08-26 15:26:53 -07:00
erwin coumans
faab737738 add a robot joint sensor example, reading joint reaction forces/torques using the shared memory API 2015-08-24 15:26:29 -07:00
Erwin Coumans
74fda9ff85 simple multi threading test 2015-08-21 15:18:18 -07:00
erwincoumans
081a40d254 initial implementation to send debug lines from physics server to client,
need to add streaming because memory is too small to store all lines
initial test of PD control in physics server, need to switch to PD control for motor constraint, instead of using external forces.
2015-08-19 22:51:16 -07:00
Erwin Coumans
f89d587a02 update tutorial for SIGGRAPH course
allow multiple graphing windows at the same time
2015-08-10 14:30:00 -07:00
Erwin Coumans
edaa92c286 fix retina API 2015-08-07 16:21:33 -07:00
Erwin Coumans
3c0e67298a add command-line option --disable_retina for Mac
improve TimeSeries and Dof6ConstaintTutorial
2015-08-07 16:05:03 -07:00
erwincoumans
de4dcdbb18 more tutorial work
add fixed_timestep command-line parameter, 0 means disabled (variable timestep)
2015-08-07 14:18:57 -07:00
erwincoumans
89c2a729ce Improved simple TimeSeriesCanvas
Fixes in RobotControlExample
Disable gravity by default in PhysicsServer
2015-08-07 13:17:33 -07:00
Erwin Coumans
03d991c92b add command-line argument for example browser and shared memory app, --shared_memory_key=<int>
fix some shared memory issues, client uses attach/detach, server uses create/remove shared memory
implement CMD_RESET_SIMULATION
2015-08-07 00:13:26 -07:00
=
46fae61c69 fixes in shared memory:
only allow server to create and initialize shared memory,
client will report failure
intercept signals to cleanup shared memory in standalone app, thanks to
Roland Philippsen.
2015-08-06 11:59:31 -07:00
Erwin Coumans
dcab0e2b1f use multibody by default when using FILE/Open URDF (instead of maximal coordinate rigid body+typed constraints) 2015-08-06 00:35:03 -07:00
erwin coumans
6d8ad72d68 add Tutorial.cpp files
load textured sphere8.obj by default as a test
tiny_obj_loader don't crash when mtl is not found
fix camera perspectives for some examples
2015-08-05 19:22:48 -07:00
erwin coumans
a5669d2ffd add a textured sphere8.obj test with obj loader
fix shaders, so that shadowed and non-shadowed are matching
fix registerGraphicsUnitSphereShape API (level of detail), support textured sphere too
add support for textured cube
add start for a Tutorial.cpp
2015-08-05 19:03:27 -07:00
Erwin Coumans
250068d5eb re-enable enter key in example browser 2015-08-04 22:03:53 -07:00
erwincoumans
b316f30040 improve usability of ExampleBrowser
store command-line arguments in bulletDemo.txt
save/load of configuration, save demo name instead of index
add setBackgroundColor as example (background_color_red) and
mouse move/wheel speed config (mouse_wheel_multiplier and mouse_move_multiplier)
(saved after changing the demo)
default btIDebugDraw colors can be changed
b3CommandLineArgs::GetCmdLineArgument returns bool, and b3CommandLineArgs::addArgs added
fix copy/paste
2015-08-04 18:24:30 -07:00
=
eb6663ed4b further work on shared memory API
fix dependency of BulletDynamics to Bullet3Common (b3Printf)
2015-08-02 14:00:43 -07:00
Erwin Coumans
26531f3fbc fix some warnings, disable gimpact by default in world importer,
use DIRECTLY_UPDATE_VELOCITY_DURING_SOLVER_ITERATIONS by default for now,
until we find the issue with some failing test cases in btMultiBody
fix a crashing issue in MyMultiBodyCreator.cpp (uninitialized variable)
disable excessive debug printf in URDF2Bullet
2015-07-27 13:28:47 -07:00
=
3fe9138e8c minor refactoring 2015-07-23 11:51:25 -07:00
erwincoumans
68b53feb9c add Inverted Pendulum example with PD control 2015-07-16 23:58:36 -07:00
erwin coumans
b563c7c8ce add additional example using server and client for future simple robot control of simulated robot
(load urdf, get state, set desired state, step simulation)
Create SharedMemoryCommand and put that into the queue
move arrays for Q, Qdot etc into the command
2015-07-15 15:23:40 -07:00
erwin coumans
80f8f940b3 add Time Series example to cmake build file. 2015-07-15 13:02:20 -07:00
erwin coumans
259bcb1989 mix physics client/server into a single example for easier/faster development of shared memory experiment
add premake option to choose targetdir for binaries/libraries
add simple hinge.urdf file
2015-07-15 12:57:45 -07:00
Erwin Coumans
a6fa717dac add very simple (rudimentary) time series graphing example
tweak camera near plane distance, less sensitive mouse wheel
2015-07-15 09:07:47 -07:00
erwin coumans
54a76f6e0c Refactor of PhysicsClient/PhysicsServer, to separate from the example browser code.
(as usual, work-in-progress)
2015-07-14 15:30:17 -07:00
=
a7fc45410b enable addition of examples at run-time 2015-07-12 14:58:31 -07:00
=
de9329ce0a Add --demo-name=NAME option to start specific demo. (public github commit)
For example,

  $ App_ExampleBrowser_gmake_x64_release --demo-name="Physics Server"

this command starts Physics Server demo regardless of bulletDemo.txt.
2015-07-12 14:51:08 -07:00
=
3431773800 expose btMultiBodyConstraint applied impulse (force) on its degree of freedom(s),
only tested for btMultiBodyJointMotor for now.
See also MultiBody/MultiBodyConstraintFeedback example
2015-07-06 23:00:46 -07:00
Erwin Coumans (Google)
8517e85b21 fix various warning
add b3ResourcePath utility, to locate resources relative to executable
2015-07-03 18:17:14 -07:00
erwincoumans
e7bafbc71c make Bullet URDF parser more similar to the ROS URDF parser. There is still a difference in ordering of links,
due to the use of different hash-map implementations, with a difference in iterator order
(btHashMap versus std::hashmap)
2015-06-29 21:30:44 -07:00
Erwin Coumans
5d44d596ed fix build system (case sensitive filename) 2015-06-28 22:00:03 -07:00
Erwin Coumans
f8add8bba0 fixes in build system for URDF parser 2015-06-28 21:21:57 -07:00
Erwin Coumans
4688540a98 minor update for shared memory interface 2015-06-21 13:24:36 -07:00
=
41aa58560b add TestHingeTorque example using btRigidBody and btHingeConstraint, setup is similar to TestJointTorque using btMultiBody and a revolute joint. 2015-06-15 23:12:29 -07:00
erwin coumans
2c3db1c631 Add a "add button" option in the CommonParameterInterface and implement it for Gwen.
Add some buttons for shared memory requests in the PhysicsClient
2015-06-09 16:51:55 -07:00
erwin coumans
a94ac6300a add Windows version of shared memory, very basic implementation (only allows one single allocation) 2015-06-04 15:37:18 -07:00
=
fcb5dac567 fix cmake build and travis/CI 2015-05-29 15:10:52 -07:00
=
bc806ab68c exit gracefully and call destructor of the current active example
fflush after printf
implemented stepForward and Shutdown for the SharedMemory client/server
2015-05-29 15:04:05 -07:00
=
82576d0bee added preliminary shared memory physics client/server
fix a bug in CommonMultiBodyBase: don't use data if it hasn't been allocated
2015-05-28 16:05:24 -07:00
Erwin Coumans
91252db59a fix Lua example 2015-05-13 16:27:58 -07:00
Erwin Coumans
dbae21ae5a prepare for some basic lua scripting example 2015-05-13 09:17:59 -07:00
Erwin Coumans
82f81e16f3 fix Yosemite build 2015-05-07 11:44:16 -07:00
Erwin Coumans
0da584a42d allow to compile and run the ExampleBrowser on older Mac OSX versions (without OpenGL3)
using the 'NO_OPENGL3' preprocessor definition
both premake/cmake has support for this now
needs some testing
2015-05-06 10:35:14 -07:00
Erwin Coumans
3da8dbce1c disable memmove in btDbvt
forgot to reset clock
2015-05-04 17:03:37 -07:00
Erwin Coumans
633ea613ab tweak gui description window size
use system clock for delta time
fix urdf file name
2015-05-04 16:52:43 -07:00
Erwin Coumans
184a0013b4 add RollingFrictionDemo
tweak benchmark demo camera
2015-05-03 11:45:30 -07:00
Erwin Coumans
d90578ec98 fix premake 2015-05-03 10:59:35 -07:00
Erwin Coumans
8ee491abfa converted DynamicControlDemo/MotorDemo
set default camera position for benchmarks, fracturedemo
2015-05-03 10:46:22 -07:00
Erwin Coumans
7288313970 converted FractureDemo 2015-05-03 10:01:30 -07:00
Erwin Coumans
7a0288bf56 fix issue with btDbvt::collideOCL, related to memmove (needs further testing)
only enable OpenCL demo if flag --enable_experimental_opencl is passed to ExampleBrowser
2015-05-02 22:33:33 -07:00
erwincoumans
1215d4b01c fix build issue 2015-05-02 11:42:43 -07:00
erwincoumans
551709a74b more example browser tweaks, mostly related to (debug) rendering 2015-05-02 11:40:06 -07:00
erwincoumans
01d14f538a fix some out-of-bounds error in the OpenCL rigid body pipeline
re-enable an OpenCL/gpu rigid body example (box-box stack)
2015-05-01 21:34:27 -07:00
erwincoumans
d50242fc27 add starting point for btGeneric6DofSpring2ConstraintData import, not all parameters are deserialized though
restore activation state after picking
add .bullet file import (only tested/available on Windows)
2015-05-01 16:27:09 -07:00
erwincoumans
d7c7fdf517 fix build issue when OpenCL (B3_USE_CLEW) is not enabled 2015-05-01 14:32:39 -07:00
erwincoumans
218e9f9bf9 enable URDF loading throught the 'File/Open' menu
set a default camera targets for each demo. note that it is only reset when switching to a different demo, so you can restart at your chosen location.
no OpenCL pairbench drawing in OpenGL2 (there is no VBO available etc)
2015-05-01 11:42:14 -07:00
erwincoumans
aad9a5a396 add OpenCL PairBench (missing GUI, so not really useful) 2015-05-01 00:18:49 -07:00
Erwin Coumans
aec360f158 add Raycast demo 2015-04-30 15:31:44 -07:00
Erwin Coumans
c95fe654ad add example to import and export a binary .bullet file 2015-04-30 14:03:50 -07:00
Erwin Coumans
9d3f8803b8 add Stan Melax' ImplicitCloth demo 2015-04-30 13:36:39 -07:00
Erwin Coumans
fcb841018a remove 'Custom' multi body demo, it has no point on its own 2015-04-29 15:02:12 -07:00
erwin coumans
40375983d6 rename ExampleInterface -> CommonExampleInterface to be a little bit more consistent in 'CommonInterfaces' naming 2015-04-29 13:33:26 -07:00
erwin coumans
4ed666a72a fix double-precision compile problem
fix profile window (See View/Profiler in ExampleBrowser)
2015-04-29 13:21:26 -07:00
erwin coumans
d1ff63dd49 add missing files to CMakeLists.txt 2015-04-29 10:54:40 -07:00
erwin coumans
f4b0cc85cd add Vehicles/Hinge2Vehicle demo, based on the ForkLift demo, using btHinge2Constraint with rigid body wheels
change btHinge2Constraint to derive from new btGeneric6DofSpring2Constraint
2015-04-28 18:12:49 -07:00
Erwin Coumans
df86a69a71 fix Mac OSX build, minor addition in example descriptions 2015-04-27 20:58:01 -07:00
erwin coumans
27227e5e4a add SoftDemo examples
add example description for all examples (with word-wrap)
add the VoronoiFractureDemo, note that the collision are disabled after breaking constraints.
add optional GwenOpenGLTest, to make it easier to see Gwen user interface features.
2015-04-27 18:35:07 -07:00
erwin coumans
05bf86d95f added LICENSE.txt and AUTHORS.txt file
add MultiBody Custom Creation example, to show how to import data from a URDF file and fill up your own data structures.
add btMultiBody::setBaseWorldTransform method
todo: fix cmake build, this patch is premake only
2015-04-23 15:41:17 -07:00
erwin coumans
51938d642e prepare for 'custom' multi body creation. 2015-04-22 18:09:00 -07:00
erwin coumans
f2aef6b73e add additional demos/examples for MultiBody and Constraints 2015-04-22 13:02:27 -07:00
erwin coumans
13396d32bf add basic legacy OpenGL2 rendering 2015-04-20 15:28:52 -07:00
erwincoumans
60593f41ed make OpenGL2 version work (still very rudimentary, no filled rendering, only debug wireframe) 2015-04-16 23:46:01 -07:00
erwincoumans
ad8f705bcb more cmake support for examples 2015-04-16 22:14:27 -07:00
Erwin Coumans
889cbdc0ef fixes in Mac modifier keys, remove enet/lua tests 2015-04-16 17:35:34 -07:00
Erwin Coumans
b2ba615874 fixed for Mac in examples 2015-04-16 15:52:30 -07:00
erwincoumans
b33d17f91c rename GL/glew to CustomGL/glew.h to avoid clashes with system glew 2015-04-16 15:29:39 -07:00
erwincoumans
57d8567ca3 more example refactoring 2015-04-16 15:16:13 -07:00
erwincoumans
a1bf9c5556 add initial examples, replacing the 'Demos/Demos3'. Will make it work cross-platform, OpenGL3/OpenGL2 and add more examples to it. 2015-04-16 09:55:32 -07:00