Commit Graph

3565 Commits

Author SHA1 Message Date
Erwin Coumans
f99d1c45aa expose multibody link world transform in the shared memory API 2016-04-23 17:29:46 -07:00
Erwin Coumans
16cbc191bd Merge branch 'master' of https://github.com/erwincoumans/bullet3 2016-04-23 11:06:49 -07:00
Erwin Coumans
d8da00aa35 re-enable Wavefront .obj loader 2016-04-23 11:06:34 -07:00
Erwin Coumans (Google)
67426ecee9 add missing stubs for the obsolete SimpleOpenGL2Renderer 2016-04-21 14:10:45 -07:00
Erwin Coumans
4e61f0cab9 add function to CommonRenderInterface to update/activate a texture
add example how to render a texture 2d quad in SimpleOpenGL3
2016-04-20 12:55:21 -07:00
Erwin Coumans
da948a0729 fix text rendering (uninitialized uniforms) 2016-04-19 18:21:53 -07:00
yunfeibai
cbeddfc897 Modify shared memory client example to test joint motor torque measurement. 2016-04-19 16:52:47 -07:00
yunfeibai
c384383250 Merge branch 'master' of https://github.com/bulletphysics/bullet3
Update measured torque name.
2016-04-19 14:20:28 -07:00
yunfeibai
c3afbf7689 set desired position target 2016-04-19 14:19:18 -07:00
Erwin Coumans
0f5ee7a0a9 rename m_jointForce -> m_jointMotorForce to separate the name from m_jointForceTorque (which should have been called m_jointReactionForce) 2016-04-19 12:22:38 -07:00
erwincoumans
05845d7df9 Merge pull request #602 from erwincoumans/master
handle window closing in InProcessPhysicsClientSharedMemoryMainThread
2016-04-19 10:58:13 -07:00
yunfeibai
f9719e2405 Add measured joint motor force to joint sensor state. 2016-04-19 10:44:59 -07:00
Erwin Coumans
bebe9a728b handle window closing in InProcessPhysicsClientSharedMemoryMainThread 2016-04-19 08:29:20 -07:00
Erwin Coumans (Google)
3a8ffebc28 fix possible division-by-zero if the profiler gui is called before stepSimulation is proceeding. 2016-04-18 21:43:42 -07:00
Erwin Coumans
476eb342ab fix scaling in URDF importer 2016-04-18 17:41:54 -07:00
Erwin Coumans
59e0bef988 remove compile errors and some debug code in ExampleBrowser. 2016-04-14 12:19:55 -07:00
Erwin Coumans
2cbfeb9590 run GUI on main thread for Mac OSX/__APPLE__, due to OS limitation
add b3CreateInProcessPhysicsServerAndConnectMainThread to test.c
2016-04-14 08:51:20 -07:00
Erwin Coumans
0ca56e756f add joint damping in PhysicsServerCommandProcessor 2016-04-13 17:21:43 -07:00
Erwin Coumans
4df7257250 more comments in SharedMemory C API 2016-04-13 17:09:48 -07:00
Erwin Coumans
34e6eb4a18 add a few lines of documentation and some error checks in SharedMemory API 2016-04-13 13:06:15 -07:00
Erwin Coumans
f3c7f30684 fix some memory leaks in ImportURDF / PhysicsServerCommandProcessor 2016-04-11 16:42:02 -07:00
Erwin Coumans
59b32b7af1 re-enable command log and playback in physics server
report applied motor torque in physics server
2016-04-08 18:17:17 -07:00
Erwin Coumans
d2793ec5c0 fix char -> int, to allow check with -1, some build systems fail
to make char a signed char
fix unused variable
removed duplicate header files in Gwen/Controls/Layout
2016-03-31 12:52:04 -07:00
Erwin Coumans
6c0ef7e597 fix resize issue on Linux, using i3 window manager on Linux
fix uninitialize modified key (ALT etc) on Linux/X11
2016-03-30 21:45:20 -07:00
Erwin Coumans
5c1eb2ec07 support 'world' tag for fixed objects in URDF 2016-03-30 14:43:59 -07:00
Erwin Coumans
84a136534a add preliminary Android build files for Bullet
add SimpleOpenGL3 example and show how to override
keyboard, mouse, wheel, resize callbacks
2016-03-27 10:21:05 -07:00
Erwin Coumans
643cf5ab1d Merge branch 'master' of https://github.com/erwincoumans/bullet3 2016-03-17 16:12:48 -07:00
Erwin Coumans
7e4dfb7207 remove SimpleOpenGL3 demo, it breaks some builds
reset callback to 0 after exiting a demo to avoid issues
2016-03-17 16:11:53 -07:00
erwincoumans
fe92de3e50 add infrastructure float btMultiBodyLink m_jointDamping, m_jointFriction (actual damping/friction is in a separate commit)
add door.urdf for testing damping/friction
2016-03-17 14:54:46 -07:00
Erwin Coumans
937b6d84e5 re-enable --enable_experimental_opencl flag for
premake build of App_BulletExampleBrowser
(not enabled when using cmake!)
(not enabled when using cmake!)
(not enabled when using cmake!)
(not enabled when using cmake!)
(not enabled when using cmake!)
(not enabled when using cmake!)
(not enabled when using cmake!)
(not enabled when using cmake!)
(not enabled when using cmake!)
2016-03-16 09:02:39 -07:00
Erwin Coumans
6c9815c8f9 fix axis in r2d2.urdf
enable SimpleOpenGL3 demo for CMake
2016-03-16 08:13:53 -07:00
Erwin Coumans
aa3daaa8c6 turn test/SharedMemory/test.c into a gtest for CI unit testing in github
remove overly verbose printfs in importers
fix axis in r2d2.urdf
2016-03-15 22:47:53 -07:00
Erwin Coumans
005ef9d2f1 fixes in SharedMemory unit test, premake build issue on Linux 2016-03-15 18:29:32 -07:00
Erwin Coumans
c69524be9e fix Lua example 2016-03-10 21:15:23 -08:00
erwincoumans
efbb1edecc Allow InProcessExampleBrowser to use a malloc allocated memory block, instead of system shared memory.
Make shared memory client/server a bit more robust, in case the server is terminated early.
2016-03-10 14:36:46 -08:00
erwincoumans
40a9b8cea0 fix relative include path 2016-03-07 15:12:33 -08:00
erwincoumans
9be978337f quick draft implementation for SharedMemoryInProcessPhysicsC_API 2016-03-07 14:56:16 -08:00
Erwin Coumans
b130be46f7 add InProcessExampleBrowser to make it easy to instantiate the ExampleBrowser in its own thread
example usage:

int main(int argc, char* argv[])
{

btInProcessExampleBrowserInternalData* data = btCreateInProcessExampleBrowser(argc,argv);

while (!(btIsExampleBrowserTerminated(data)))
{
}

btShutDownExampleBrowser(data);

        return 0;
}
2016-03-02 18:01:33 -08:00
Erwin Coumans
d70132a901 only enable Wavefront obj support for URDF when ENABLE_URDF_OBJ is defined.
add destructor for SampleJob1
2016-03-01 09:15:55 -08:00
Erwin Coumans
f90ba2eff9 fix issue, CrossSplitter.cpp cannot be disabled using #ifdef _WIN32 2016-03-01 09:10:16 -08:00
Erwin Coumans
4a70df2dfb fix some warnings 2016-02-29 15:37:03 -08:00
erwincoumans
d196cec51f Update RigidBodySoftContact.cpp
fix typo
2016-02-23 08:02:28 -08:00
erwin coumans
6c9bfce975 Support btMultiBody soft contact using ERP and CFM. Also support custom relaxation parameter to allow successive over relaxation.
Added demos for rigid and multi body soft (compliant) contact.
Will also add simplified Hertz compliant contact, by dynamically modifying the ERP/CFM to mimic a non-linear spring.
Note that btManifoldPoint is growing too big, we need to implement proper contact constraints derived from btTypedConstraint.
2016-02-22 18:40:00 -08:00
Erwin Coumans
a3154f7a56 use b3ConnectSharedMemory in PhysicsClient example, instead of b3ConnectPhysicsLoopback 2016-01-27 13:36:33 -08:00
Erwin Coumans
6bc3f94f52 add a Pendulum example that is also used as unit test.
Gold data is created by numerically solving a second-order non-linear differential equation.
(see examples/MultiBody/pendulum_gold.h)
2016-01-06 18:08:49 -08:00
Erwin Coumans
52f074bcb2 Merge remote-tracking branch 'bp/master'
Conflicts:
	examples/ExampleBrowser/CMakeLists.txt
	examples/OpenGLWindow/CMakeLists.txt
2015-12-07 16:42:45 -08:00
Erwin Coumans
13f314f401 allow CMake to build on Linux without X11/OpenGL system headers (use local one) 2015-12-07 16:38:43 -08:00
erwincoumans
ab283251d3 Merge pull request #546 from erwincoumans/master
typo fixes in InverseDynamicsExample
2015-12-07 15:07:24 -08:00
Andrew Meadows
c0c1691c25 fix whitespace formatting in cmake files 2015-12-07 14:08:04 -08:00
Erwin Coumans
acbf60ddfd typo fixes in InverseDynamicsExample 2015-12-05 09:02:02 -08:00
erwincoumans
aaf4e1acfa Merge pull request #491 from nicokruithof/master
Fixed missing include directories
2015-12-04 21:49:47 -08:00
Erwin Coumans
b22e968cdd re-enable inverse dynamics/computed torque, instead of PD control in InverseDynamicsExample 2015-12-02 23:16:41 -08:00
Erwin Coumans
3dfebe0c45 show inverse dynamics demo to use floating base 2015-12-02 09:33:12 -08:00
Erwin Coumans
4c88681479 joint trajectory curves use different colors for each DOF
use fewer notch counts in slider GUI
2015-11-26 10:45:51 -08:00
Erwin Coumans
5f97a56f93 portability issues fixed 2015-11-24 11:40:33 -08:00
Erwin Coumans
460998c472 fix example issues 2015-11-24 11:34:17 -08:00
Erwin Coumans
03cc4f0554 add InverseDynamics example for example browser
add CMake support for BulletInverseDynamics and BulletInverseDynamicsUtils
2015-11-24 11:12:02 -08:00
Erwin Coumans
b4701613c8 consistent *API.* in examples/SharedMemory 2015-11-23 08:00:42 -08:00
erwincoumans
bd4c4eb3c5 rename API->Api 2015-11-22 21:32:20 -08:00
erwincoumans
5589fb03af Merge branch 'master' of https://github.com/erwincoumans/bullet3 2015-11-22 20:50:41 -08:00
erwincoumans
03bf78ef49 add physics server loopback (both client and server in the same process, using shared memory)
add physics server direct (client and server in the same process, directly processing commands without shared memory transport mechanism)
2015-11-22 20:50:32 -08:00
Erwin Coumans
7d9365319c add InverseDynamics test/lib to premake 2015-11-17 08:26:27 -08:00
erwincoumans
ad29d27700 add initial inverse dynamics example skeleton, with urdf and programmatically created btMultiBody.
disabled in Bullet/examples/ExampleBrowser/ExampleEntries.cpp
2015-11-13 10:37:43 -08:00
Erwin Coumans
f6a8079353 sync repo 2015-11-11 12:44:26 -08:00
erwincoumans
3b9b803683 b3CreateBoxCommandSetColorRGBA: allow to specify color when creating bodies through shared memory API
Parse and use colors from URDF file (single rgba color per link, not per visual)
Rename btMultiBody 'stepVelocities' to 'computeAccelerationsArticulatedBodyAlgorithmMultiDof'
btHashMap, add const Value* operator[]
remove a few more obsolete btMultiBody methods (on the non-multi-dof path)
fix spelling typo in fillConstraintJacobianMultiDof (fil -> fill)
Add mention to Jakub Stepien for his work on btMultiBody
2015-11-06 17:11:15 -08:00
erwincoumans
8160354d02 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2015-11-05 21:18:10 -08:00
erwincoumans
2920d7e61f Only support btMultiBody multi-dof version (remove non-multi-dof path)
Use ATTRIBUTE_ALIGNED16 for btMultiBody
Always disable parentCollision for btMultiBody::setupFixed
2015-11-05 21:17:46 -08:00
Erwin Coumans
7ef06d532e remove debug test 2015-11-05 17:35:05 -08:00
Erwin Coumans
2317307a22 Add b3GetStatusActualState() to C_API.
Change pick-and-move C_API to use handlers
2015-11-04 16:08:28 -08:00
erwincoumans
d6464ce40d add 'replay' command log feature: no mouse interaction during replay, and use a fixed number of sim steps in stepSimulation.
workaround for reversed separating normal in gjk/epa when using very small shapes, detect case and revert normal.
use smaller world size (10 units versus 100) for higher resolution shadow map
use a hard-coded rolling friction of 0.2 for objects in physics server (will make this configurable)
fix loading of command log files, when platform features are different (64bit/32bit)
2015-11-01 12:48:15 -08:00
Erwin Coumans
6e042b1901 re-enable wireframe in PhysicsClient
inintialize variables in constructor of PhysicsClient
2015-10-30 13:24:02 -07:00
erwin coumans
c68c215ead add rudimentary command logging for shared memory physics server 2015-10-30 10:30:48 -07:00
erwin coumans
819c4f1951 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2015-10-29 11:26:01 -07:00
erwin coumans
f7bbbd88e6 preparation for CommandLogging for PhysicsServer. 2015-10-29 11:25:50 -07:00
erwin coumans
9442791cf1 Fix PhysicsServer connection issue, in cases where shared memory was not properly shut down. 2015-10-29 11:18:26 -07:00
erwincoumans
650189d50b Allow both remote debug drawer and local debug drawer for PhysicsServer (shared memory etc) 2015-10-29 08:28:49 -07:00
Erwin Coumans
8a956318e5 fix case sensitive issue 2015-10-28 16:02:55 -07:00
Erwin Coumans
6a6c0297fe Merge branch 'master' of https://github.com/erwincoumans/bullet3 2015-10-28 13:44:30 -07:00
erwin coumans
dc81e31e74 upload work-in-progress Collision example using C-API. 2015-10-28 11:48:36 -07:00
erwin coumans
2d5d89d999 Allow to request the state of a rigid body (position, orientation, lin/ang velocity) through shared memory API
PhysicsClientC_API: b3RequestActualStateCommandInit requires a body unique Id as second argument
2015-10-27 15:46:13 -07:00
erwin coumans
9cc2b1ec12 Physics SharedMemory:
Add flags BOX_SHAPE_HAS_MASS and  BOX_SHAPE_HAS_COLLISION_SHAPE_TYPE to CMD_CREATE_RIGID_BODY
(which maps to CMD_CREATE_BOX_COLLISION_SHAPE for backward compatibility for now)
Need to add way to receive world transform
2015-10-27 14:55:46 -07:00
erwincoumans
57f50f1778 Create a PhysicsLoopBack that includes both PhysicsClient and PhysicsServer over shared memory.
Add a test for PhysicsLoopBack.
2015-10-26 17:56:21 -07:00
erwincoumans
e779bb247b Merge branch 'master' of https://github.com/erwincoumans/bullet3 2015-10-26 16:16:08 -07:00
Erwin Coumans
163b797d8b Update to ZLib license for GWEN files.
Note that our copy of GWEN is modified and GWEN is not under active development anymore.
We plan to integrate and modify GWEN further into the Bullet Example Browser or rewrite the GUI and drop GWEN

fix cube.obj and cube.mtl to enable textures
2015-10-25 11:30:34 -07:00
erwincoumans
d6916107dc Merge branch 'master' of https://github.com/erwincoumans/bullet3 2015-10-24 14:01:01 -07:00
erwincoumans
52edac4ef2 example Collision: catch case where no collision world is created 2015-10-24 14:00:53 -07:00
Erwin Coumans
ec1947bbbd add SIM_PARAM_UPDATE_DELTA_TIME flag to fix setting the time step
in shared memory API
2015-10-24 13:50:11 -07:00
Erwin Coumans
818037c011 Fix issue related to CMD_RESET_SIMULATION 2015-10-24 13:49:25 -07:00
Erwin Coumans
f28150c368 catch setting of invalid joint angles in PhysicsClientC_Api
use the proper m_bodyUniqueIndex (todo: fix this field, move to shared command data)
2015-10-24 13:48:53 -07:00
erwincoumans
7f35aa9f43 Merge pull request #500 from erwincoumans/master
fix for Mac OSX El Captain 10.11, OpenGL Window was blue, until first…
2015-10-22 11:11:08 -07:00
Erwin Coumans
25fb92c4c9 fix for Mac OSX El Captain 10.11, OpenGL Window was blue, until first resize.
fixes Issue 498
2015-10-21 21:30:44 -07:00
erwincoumans
c737a35693 Merge pull request #497 from erwincoumans/master
Add plane shape and profile timing support in examples/Collide
2015-10-21 10:42:04 -07:00
erwin coumans
3d9218e07d Add plane shape and profile timing support in examples/Collide
Use View/Profiler in example browser, in optimized build/Release mode
and look for plCollideWorld
2015-10-20 18:30:43 -07:00
Takuya NAKAOKA
3a11fff3ad Fix slow simulation in PhysicsServerExample
Removed maxSteps to regain simulation speed
2015-10-20 14:51:40 +09:00
Erwin Coumans
abcaa19bc8 make the compiler happy with Collision example 2015-10-19 18:21:45 -07:00
erwin coumans
5a21424662 update to examples/Collision and RealTimeBullet3Collision 2015-10-18 23:43:37 -07:00
erwin coumans
7ac497d6f2 WIP example for real-time collision detection features of Bullet 2015-10-18 14:01:25 -07:00
Erwin Coumans
21b7a47129 although still not implemented, IMU enum had wrong value, thanks JF 2015-10-17 20:12:50 -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
=
bc09125095 fix include guard, thanks Aaron!
fix uninitialized body index in PhysicsServer
2015-10-16 08:18:26 -07:00
Nico Kruithof
bcefdba59b Fixed missing include directories 2015-10-15 20:23:12 +02:00
=
4df58c35c7 use const in PhysicsClientC_Api, thanks to Roland
fix some warnings for Clang, thanks to Aaron
2015-10-15 08:15:22 -07:00
erwincoumans
cf79928d84 Merge pull request #489 from erwincoumans/master
Implement CMD_INIT_POSE to set base position, base orientation and jo…
2015-10-13 22:51:06 -07:00
erwin coumans
a0e507280c Implement CMD_INIT_POSE to set base position, base orientation and joint position (angle).
See PhysicsClientExample for example use of CMD_INIT_POSE.
Change: CMD_INIT_POSE uses m_initPoseArgs and not m_sendDesiredStateCommandArgument
2015-10-13 22:23:28 -07:00
erwincoumans
5b558a1f94 Merge pull request #488 from erwincoumans/master
initial support for multiple robots in shared memory API
2015-10-13 16:08:30 -07:00
erwin coumans
4a29986662 initial support for multiple robots in shared memory API 2015-10-13 11:32:25 -07:00
erwincoumans
d1d279d086 Merge pull request #464 from benelot/master
Fix the Bullet Raycast sample. Closes #450.
2015-10-09 10:16:07 -07:00
=
8d26ff356d allow links without collision shapes in btMultiBody URDF importer 2015-09-25 17:00:44 -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
=
e05825f639 improvements to the shared memory physics API:
support picking in C API etc.
2015-09-24 22:42:22 -07:00
=
23bdd0ed36 more work on physics client c-api over shared memory 2015-09-17 09:37:44 -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
=
3d10338ed5 fix warnings (thanks to Aaron!) 2015-09-10 17:52:41 -07:00
=
2257ec05ad don't compensate for COLLADA up axis in collision element for now
(todo: let user override COLLADA up axis, some URDF files are inconsistent)
2015-09-10 17:36:19 -07:00
=
d72cda101c fixes in shared memory client/server: check for valid pointers 2015-09-09 15:14:47 -07:00
erwincoumans
e4b5f4730d Merge pull request #473 from takuyanakaoka/detach-shared-mem
Detach posix shared memory correctly
2015-09-09 15:13:27 -07:00
Takuya NAKAOKA
4cbd86a058 Detach posix shared memory correctly
* shmget() fails after shmctl() is called with IPC_RMID. This patch
removes shmget() in releaseSharedMemory so that a client can detach
a shared memory correctly after a server removed it.
* A server should also detach a shared memory.
2015-09-09 12:35:26 +09:00
=
5be9119455 run the PhysicsServerExample 'stepSimulation' smoother
fix a warning in ThirdParty/stb_image
fix an single/double precision issue in btPolyhedralContactClipping.cpp
2015-09-08 13:39:09 -07:00
erwin coumans
2909b5fae3 add picking to shared memory physics server 2015-09-04 11:28:08 -07:00
erwin coumans
f75df90d82 Allow batches of debug lines. The PhysicsClientExample rendering is still slow (one line at a time, instead of batches)
Prepare for IMU sensor in Shared Memory Server
2015-09-03 14:18:22 -07:00
=
5a0ca58436 fix force/torque feedback 2015-08-31 12:36:08 -07:00
Erwin Coumans (Google)
98c93a7330 fix inline, __inline for _WIN32 2015-08-27 18:13:54 -07:00
Erwin Coumans (Google)
3d130d9d66 reset simulation in test/SharedMemory/test for proper cleanup,
and it can restart without shutting down/restarting physics server
w
2015-08-27 17:51:31 -07:00
Erwin Coumans
2e7949bb3e fix some warnings 2015-08-26 15:26:53 -07:00
Benjamin Ellenberger
e39bf6c4cd Fix the Bullet Raycast sample. Closes #450. 2015-08-25 15:56:46 +02: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
46f161ec02 fix WIN32 build for b3Win32ThreadSupport 2015-08-24 10:12:13 -07:00
Erwin Coumans
9ec08592b6 fix a copy/paste typo, thanks Roland! 2015-08-21 18:18:12 -07:00
Erwin Coumans
74fda9ff85 simple multi threading test 2015-08-21 15:18:18 -07:00
Erwin Coumans
362887987c add example/MultiThreading functions 2015-08-21 11:09:53 -07:00
=
bbc450a3de position/velocity control through constraint for shared memory server 2015-08-20 14:57:14 -07:00
=
63873e2926 fix issue, cannot assume 16-byte alignment in shared memory,
causing crashes when SIMD btVector3 is stored on Mac OSX.
2015-08-20 08:09:22 -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
d08a7af7e2 fix compile issue in double precision build 2015-08-10 14:49:52 -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
=
f750275cf9 fix _WIN32 build (there is no <err.h>) 2015-08-06 12:07:08 -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
erwincoumans
19c5be5646 small progress towards shared memory C-api and test.c. 2015-07-30 23:22:44 -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
Erwin Coumans
ad03dba2fa update stb_truetype.h to latest from
https://raw.githubusercontent.com/nothings/stb/master/stb_truetype.h
2015-07-23 23:17:58 -07:00
=
3fe9138e8c minor refactoring 2015-07-23 11:51:25 -07:00
erwin coumans
0fe6d343bc move m_updateFlags to command, and make it 64bit 2015-07-23 10:51:09 -07:00
Erwin Coumans
812c67e221 fix various warnings, more work on shared memory API 2015-07-22 18:06:05 -07:00
Erwin Coumans
05fc203ec1 Separate SharedMemoryStatus from SharedMemoryCommand
Added CMD_CMD_SEND_PHYSICS_SIMULATION_PARAMETERS (set gravity as example)
and CMD_INIT_POSE, not fully implemented yet.
2015-07-21 21:46:28 -07:00
Erwin Coumans
8e163c984d allow to control of powered joints after loading a URDF file, through shared memory
more refactor of shared memory joint control API
2015-07-20 23:35:29 -07:00
erwincoumans
68b53feb9c add Inverted Pendulum example with PD control 2015-07-16 23:58:36 -07:00
Erwin Coumans
26e175013d add prismatic.urdf test file and revert to r2d2.urdf in import example 2015-07-15 17:51:49 -07:00
Erwin Coumans
7698d5f95c fix some out-of-date comments in btMultiBody, thanks to Thomas Buschmann
disable disactivation for btRigidBody in import urdf demo, increase strength of joint motor for btMultiBody
2015-07-15 17:39:43 -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
=
48f6484b3d make OSX/Unix version of PosixSharedMemory work
pass on useFixedBase to URDF loader in PhysicsServer
2015-07-14 16:23:01 -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
=
482f31597b implement preliminary CMD_SEND_DESIRED_STATE with CONTROL_MODE_VELOCITY and
CONTROL_MODE_TORQUE.
2015-07-14 08:34:02 -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
=
7452df0964 Pass initial position and orientation for CMD_LOAD_URDF. (public github commit) 2015-07-12 14:48:43 -07:00
erwincoumans
6c9ce344ea fix shadowmap crash on some Intel GPUs, see https://github.com/bulletphysics/bullet3/issues/4
remove targetdir from all libraries in premake, so it is much easier to create a separate folder for all binary+lib
transmit the serialized btMultiBody data back from server to client, after the server loads a URDF file. This includes base+link+joint names
tweak the serialization routines, so it is easier to skip pointers and to serialize directly to a shared memory buffer
also tweak the serialization code to allow to process data without 'DNA' schema data (assuming file-DNA = memory DNA)
2015-07-10 22:20:06 -07:00
erwincoumans
f6f76901fd First draft of btMultiBody serialization, including optional names for base, link and joints (see ImportURDFDemo/ImportURDFSetup.cpp how this is done)
Bump up version number to 2.84 because of new serialization data.
2015-07-09 17:36:00 -07:00
erwincoumans
285ac286fa some work towards streaming Bullet data over shared memory for client/server 2015-07-09 14:04:58 -07:00
Erwin Coumans
7f4beba7ee add forceFixedBase option for URDF import example 2015-07-07 15:39:36 -07:00
=
272ffeb232 add example for btMultiBody constraint and joint feedback 2015-07-07 08:32:02 -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
erwincoumans
4630d0abb1 fix windows build for b3ResourcePath
replace print -> b3Printf in URDF2Bullet.cpp
2015-07-03 18:54:41 -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
Erwin Coumans
45d4816c44 fix case-sensitivity issue 2015-07-01 08:58: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
3fbe9f63ef more case-sensitivity fixes 2015-06-28 22:12:59 -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
039174a809 add alternative URDF parser that doens't use ROS urdf 2015-06-28 14:09:21 -07:00
erwin coumans
3b4ad1cd5a add the option to shift the applied force/torque for a multibody joint (mobilizer) to the joint frame origin 2015-06-25 15:09:35 -07:00
Erwin Coumans
bdab994208 re-enable gravity for import urdf demo (accidently turned it off for debugging) 2015-06-24 23:27:50 -07:00
Erwin Coumans
d830681674 add option for rigid body/typed constraint to set target velocity
compare joint feedback between multi body and rigid body. initial results are promising (not exactly the same, but reasonably close)
2015-06-24 23:19:00 -07:00
erwin coumans
b14afba350 more work-in-progress on joint-torque sensor sample and server/client shared memory API 2015-06-22 15:30:57 -07:00
Erwin Coumans
4688540a98 minor update for shared memory interface 2015-06-21 13:24:36 -07:00
erwincoumans
89edc40d61 First step in btMultiBody joint force/torque feedback. There is still some work to be done for 'mobilizer limit/motor'.
See examples/MultiBody/TestJointTorqueSetup and examples/Constraints/TestHingeTorque for joint feedback.
2015-06-19 09:18:27 -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
2d79dda032 prepare for joint/torque feedback. First for btRigidBody, then btMultiBody. 2015-06-09 18:13:05 -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
1a4ce475f7 fix an issue with btMultiBodyConstraint, automatically 'finalizeMultiDof' to pre-allocate jacobian data
enable joint limit for slider/prismatic joint in btMultiBody version of URDF loader
2015-06-05 11:46:53 -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
Erwin Coumans
f74e3782aa enable prismatic joint motor in URDF demo, by default. Thanks to Takuya!
prepare for prismatic joint limit for btMultiBody in the URDF demo.
There is an issue with it, working on fixing this.
2015-06-03 18:02:15 -07:00
Erwin Coumans
85acb2a009 fix an OpenGL performance issue running on some Linux machines
(apparently searching for a framebuffer with more samples makes NVIDIA Quadro slow)
2015-06-03 17:18:56 -07:00
Erwin Coumans (Google)
190382e9ec enable posix shared memory on non-Win32 platforms (Linux and Mac) for example browser 2015-05-30 20:32:29 -07:00
=
c28afd2242 add missing files 2015-05-29 15:38:32 -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
=
6fedad9db7 fix SharedMemory premake file 2015-05-29 11:37:21 -07:00
=
7abefca6f1 small improvement to the shared memory physics server/client 2015-05-28 17:49:55 -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
becd7cacd8 fix relative path of visual/collision mesh, it might be different from the urdf relative path
(.obj loader terminates if it cannot find the material file)
2015-05-27 15:43:33 -07:00
erwin
c9a630e7c6 rename loadUrdf -> loadMultiBodyFromUrdf in lua script
remove unused m_usrd2mblink
2015-05-14 09:16:13 -07:00
erwin
e196ed1edb load a urdf in the lua script test 2015-05-13 21:54:00 -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
=
cedd0432bf don't compile SimpleOpenGL3App if NO_OPENGL3 is defined 2015-05-07 14:11:17 -07:00
Erwin Coumans
82f81e16f3 fix Yosemite build 2015-05-07 11:44:16 -07:00
Erwin Coumans
5c84d6f6de don't use glSwapAPPLE, it fails on some OSX versions
thanks Steven for the report
2015-05-06 18:42:47 -07:00
erwin coumans
5b34cda617 add simple 3d debug text for OpenGL2 in example browser 2015-05-06 16:11:03 -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
=
7eec0dc57d add enet for some client/server tests 2015-05-05 12:51:38 -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
=
6ea35aa875 fix urdf relative path problem (don't use arrays on stack!) 2015-05-04 14:15:34 -07:00
Erwin Coumans
db5f280c3d tweaks to rolling friction demo/dof2spring2 demo 2015-05-03 12:01:38 -07:00
Erwin Coumans
184a0013b4 add RollingFrictionDemo
tweak benchmark demo camera
2015-05-03 11:45:30 -07:00
Erwin Coumans
78f01243c1 fix double-precision compile bug 2015-05-03 11:10:12 -07:00
Erwin Coumans
d90578ec98 fix premake 2015-05-03 10:59:35 -07:00
Erwin Coumans
488b86fece render the rays in benchmark demo 2015-05-03 10:56:39 -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
59b511a14e add .bullet extension in File/Open on Mac
add importer support for FIXED_CONSTRAINT_TYPE, to be replaced by btGeneric6DofSpring2Constraint
btFixedConstraint now derives from btGeneric6DofSpring2Constraint
2015-05-03 09:23:35 -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
37c788841a fix another compile issue 2015-05-02 13:09:29 -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
f9b8120e5d set upaxis for all demos (either Y/1 or Z/2) 2015-04-29 14:02:50 -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
a165ff54c9 fix maxLinMotorForce/maxAngMotorForce in btSliderConstraint
Thanks to Stephen Peters, see also https://github.com/bulletphysics/bullet3/pull/328
2015-04-29 11:05:00 -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
b64f5feba4 refactor of URDF importer (work-in-progress) 2015-04-22 16:35:27 -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
Erwin Coumans (Google)
438cb00abd fix Linux build (cmake, case-sensitive folder name) 2015-04-16 22:29:10 -07:00
Erwin Coumans
8ce75fd7a7 fix mac build 2015-04-16 22:23:34 -07:00
erwincoumans
ad8f705bcb more cmake support for examples 2015-04-16 22:14:27 -07:00
erwincoumans
c99ac6cfa1 cmake with 2 examples (HelloWorld, BasicDemo) 2015-04-16 18:11:22 -07:00
Erwin Coumans (Google)
9e2eff9a1e fix Linux modifier keys 2015-04-16 17:57:38 -07:00
Erwin Coumans
889cbdc0ef fixes in Mac modifier keys, remove enet/lua tests 2015-04-16 17:35:34 -07:00
Erwin Coumans (Google)
bf39570ff3 fixes for Linux 2015-04-16 16:58:42 -07:00
Erwin Coumans
b2ba615874 fixed for Mac in examples 2015-04-16 15:52:30 -07:00
erwincoumans
ffb0cab2e7 glew/GL fixes 2015-04-16 15:38:08 -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
794c8ec064 add BspDemo.bsp data file
add sphere2.urdf
move btSpatialAlgebra into LinearMath
remove some warnings, introduce BT_ZERO, BT_ONE, BT_HALF as defines for 0.f/0., 1.f/1., 0.5f/0.5 respectively
2015-04-16 10:17:35 -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