Commit Graph
100 Commits
Author SHA1 Message Date
Erwin Coumans 876c9e57fe fixes 2016-05-13 22:57:41 -07:00
Erwin Coumans be7d07a193 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2016-05-13 22:42:25 -07:00
Erwin Coumans 20e39d0abf fix premake build 2016-05-13 19:01:40 -07:00
Erwin Coumans 3f0d8d8dd0 Merge remote-tracking branch 'bp/master' 2016-05-13 18:46:07 -07:00
Erwin Coumans d186320f30 fixes in rendering 2016-05-13 18:45:56 -07:00
Erwin Coumans a725d59480 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2016-05-12 23:13:44 -07:00
erwin coumans 6a9c54c4ef Remove unused ROS urdf (was replaced by Bullet UrdfParser.
Small refactoring for ExampleBrowser: move examples cpp files in the app/executable
Move ExtendedTutorials in its own app/executable as a test.
2016-05-12 23:03:12 -07:00
erwin coumans 99073e03f7 Allow to compile pybullet on Windows, using CMake
(got it to run, rename pybullet.dll into pybullet.pyd and copy in c:\python34\dlls)
Update test.py
Allow to compile pybullet using Python 3.x and 2.7
2016-05-10 00:57:54 -07:00
Erwin Coumans e9c6abff47 add initial SDF importer, work-in-progress (still too incomplete to be useful) 2016-05-09 17:25:07 -07:00
Erwin Coumans 2fee43b021 copy the data folder into the cmake build directory, for the ExampleBrowser
out-of-source builds of Example Browser don't find their resources...
2016-05-09 14:03:13 -07:00
erwin coumans aae9e509a9 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2016-05-06 13:58:21 -07:00
erwin coumans 0a3efbe349 make standalone versions (console, tinyrender, opengl) of InverseDynamics/InverseDynamicsExample 2016-05-06 13:57:48 -07:00
Erwin Coumans 85368973a1 When using cmake -DBUILD_PYBULLET=ON, force BUILD_SHARED_LIBS option 2016-05-04 13:46:55 -07:00
Erwin Coumans b0a4e126bf use cmake FIND_PACKAGE(PythonLibs 2.7 REQUIRED) if pybullet is build 2016-05-04 13:24:06 -07:00
Erwin Coumans 372c4ef9c1 Add btConvexHullShape::optimizeConvexHull method,
it automatically removes vertices that are not on the convex hull.
It uses the btConvexHullComputer for this.
2016-05-04 13:01:06 -07:00
Erwin Coumans (Google) 194009f46e linux fixes 2016-05-04 00:17:39 -07:00
erwin coumans 8360e2e66d windows fixes 2016-05-04 00:16:53 -07:00
Erwin Coumans 0d3440b388 fixes in Mac resizing example browser (if window size exceeds capability) 2016-05-03 23:46:29 -07:00
Erwin Coumans f0b9037cd2 tweak cmake, add option BUILD_PYBULLET 2016-05-03 23:42:19 -07:00
Erwin Coumans 938db633df fixes in build system 2016-05-03 23:34:48 -07:00
Erwin Coumans 7a833a7ac2 fix target link libs in cmake 2016-05-03 22:05:30 -07:00
Erwin Coumans a251ff4331 add 'dl' target libs in cmake 2016-05-03 21:48:28 -07:00
Erwin Coumans a9ef145910 add standalone opengl version of BasicExample for cmake, called BasicExampleGui 2016-05-03 21:27:30 -07:00
Erwin Coumans 709a55d5ab add CMake support for pybullet (still preliminary)
requires shared library build:
cmake .. -DBUILD_SHARED_LIBS=on
then create a symbolic link from libpybullet.so to pybullet.so
2016-05-03 13:03:12 -07:00
Erwin Coumans fb65c29033 use "world" to make door static (instead of using mass = 0)
minor improvements to pybullet
2016-05-03 12:59:21 -07:00
erwin coumans 984c880b2c move 'main' functions into a separate folder, to make it easier to create standalone demos (console app without gui, or opengl app, and possibly even other versions, like a software renderer, producing pictures in the cloud)
Add a line in an example cpp file to allow a standalone version.
See examples/BasicExample.cpp: B3_STANDALONE_EXAMPLE(BasicExampleCreateFunc)
2016-05-01 14:52:27 -07:00
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