Erwin Coumans
ab4299f517
expose the local inertial frame for each link in the shared memory API
...
struct b3LinkState
{
double m_worldPosition[3];//this is the inertial frame
double m_worldOrientation[4];
double m_localInertialPosition[3];//this is the local frame from inertial to link frame
double m_localInertialOrientation[4];
};
const btTransform link_frame_world =
inertial_frame_world * m_local_inertial_frame->inverse();
2016-04-29 14:46:25 -07:00
Erwin Coumans
aa9a276a71
fix typo in texels flip
...
add support to create a cube in TinyRenderer (quick test)
2016-04-28 23:01:49 -07:00
Erwin Coumans
615effa4d9
fix typo in texels flip
...
add support to create a cube in TinyRenderer (quick test)
2016-04-28 12:28:04 -07:00
Erwin Coumans
a3767193ce
add example to use BasicDemo with an OpenGL Window, without example browser
2016-04-27 09:55:42 -07:00
erwin coumans
40841e9078
revert floor.obj test file, load it by default in TinyRenderer/main.cpp
2016-04-26 21:01:46 -07:00
erwin coumans
03bdcc8737
patch TinyRenderer so it software-renders in an OpenGL texture, for testing
...
fix texture support: flip texture to make OpenGL happy (lower-left is origin)
add path prefix to .obj loader, so materials/textures are loaded ok.
2016-04-26 20:52:52 -07:00
erwin coumans
2cb39e358a
add unmodified version of TinyRenderer, a 500 line software renderer with vertex and pixel shaders, texture mapping and Wavefront .obj support.
2016-04-26 20:47:10 -07:00
Erwin Coumans
edba85bab3
fix issue in X11OpenGLWindow (uninitialized variable causing issue at exit)
2016-04-25 19:19:19 -07:00
Erwin Coumans
64cfbacf0a
Merge remote-tracking branch 'bp/master'
2016-04-25 13:24:18 -07:00
Erwin Coumans
778ce5296d
add example of rendering a cube in SimpleOpenGL3
2016-04-25 13:21:56 -07:00
Erwin Coumans
f99d1c45aa
expose multibody link world transform in the shared memory API
2016-04-23 17:29:46 -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
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
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
7d72f23711
premake: disable linking system OpenGL and X11 by default,
...
use dlopen to dynamically load GL/X11
2016-03-24 21:15:49 -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
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
87e5128ba8
fix some typos (need to merge into a single implementation later!)
2016-03-11 17:47:00 -08:00
Erwin Coumans
625ea96a3e
accidently moved line in wrong place
2016-03-10 23:28:02 -08:00
Erwin Coumans
ea6ecd3579
Use higher precision GJK/EPA collision tolerances in BT_USE_DOUBLE_PRECISION
...
See https://raw.githubusercontent.com/billhoffman/bullet-pod/ac6aae3e3ee8137de484471094a65bfe166898b4/bullet_gjk_accuracy_patch.diff
2016-03-10 23:12:22 -08: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
Erwin Coumans
25409f93c7
re-quantize for before using the data in quantize method
...
this fixes issue 558
2016-02-23 08:46:09 -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
dabccd184d
fixes in test/SharedMemory
2015-12-15 13:45:34 -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
Erwin Coumans
433a7aa9b6
fix C++11 issue
2015-12-07 11:44:43 -08:00
Erwin Coumans
acbf60ddfd
typo fixes in InverseDynamicsExample
2015-12-05 09:02:02 -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
332017ff23
remove dependency on gflags, C++11 from test_invdyn_bullet.cpp
...
add support for premake for test_invdyn_bullet
2015-12-02 17:49:25 -08:00
Erwin Coumans
3dfebe0c45
show inverse dynamics demo to use floating base
2015-12-02 09:33:12 -08:00
Erwin Coumans
4205e976f6
another fix for dynamic libs of BulletInverseDynamicsUtils
2015-11-24 12:20:59 -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
Erwin Coumans
069936218a
[InverseDynamics] Add custom namespaces per configuration
...
BulletInverseDynamics can be configured to compile using Eigen
instead of Bullet's LinearMath.
Adds a preprocessor defined specific namespace for each
configuration to produce linker errors if incompatible
libraries are linked (eg, builtin core library and
utilities for bullet types).
2015-11-18 08:01:32 -08:00
Erwin Coumans
aa4d119f98
add real-time safe Inverse Dynamics library+test+utils
...
an example for the example browser will follow.
thanks to Thomas Buschmann
2015-11-17 08:27:38 -08:00
Erwin Coumans
7d9365319c
add InverseDynamics test/lib to premake
2015-11-17 08:26:27 -08:00
Erwin Coumans
7d6c2b77f7
Merge remote-tracking branch 'bp/master'
2015-11-11 12:44:36 -08:00
Erwin Coumans
f6a8079353
sync repo
2015-11-11 12:44:26 -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
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
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
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
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
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
Erwin Coumans
abcaa19bc8
make the compiler happy with Collision example
2015-10-19 18:21:45 -07:00
Erwin Coumans
abb7e22027
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2015-10-17 22:03:36 -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
e5175cde9a
although still not implemented, IMU enum had wrong value, thanks JF
2015-10-17 18:52:48 -07:00
erwin coumans
2909b5fae3
add picking to shared memory physics server
2015-09-04 11:28:08 -07:00
erwin coumans
40d07139a9
fix build
2015-09-04 10:28:32 -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
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
Erwin Coumans
77f78358d2
Merge remote-tracking branch 'bp/master'
2015-08-26 14:24:35 -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
46f161ec02
fix WIN32 build for b3Win32ThreadSupport
2015-08-24 10:12:13 -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
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
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