Commit Graph

124 Commits

Author SHA1 Message Date
Andrew Hundt
1e83630c1d cmake minor fixes 2017-05-21 09:32:00 -04:00
Andrew Hundt
263ccec18a cmake python config bugs fixed
Python and pybullet remain optional with these changes.
A specific python version can now be selected by setting PYTHON_VERSION_PYBULLET.
The python library version must now match the interpreter version exactly.
If all required python dependencies are found, pybullet is now enabled by default.
Changes incorporate the following BSD licensed cmake code:
32bf5c7ad8/CMakeScripts/FindNumPy.cmake
https://github.com/NikolausDemmel/CMake/pull/2/files
86578eccf2/Modules/SelectLibraryConfigurations.cmake
2017-05-20 20:47:46 -04:00
Erwin Coumans
305725e52e add --serial option in premake, added serial library to test vr glove in C++ (pybullet works already fine) 2017-05-01 15:04:00 -07:00
Erwin Coumans
eef76af663 create basic audio, towards sound sensors etc. 2017-04-14 12:22:38 -07:00
Erwin Coumans
f73b54e4ab testing ImGUI 2017-04-11 20:16:49 -07:00
Erwin Coumans (Google)
865d37fcb5 add premake4_arm64 that works on NVIDIA TX2 2017-03-18 18:32:21 +00:00
Erwin Coumans
a4f1e34899 expose timeout in pybullet/shared memory API
add RobotSimulator, a C++ API similar to pybullet. (work-in-progress, only part of API implemeted)
2017-02-24 15:34:11 -08:00
Erwin Coumans
35b92c43d3 remove some standalone-example from the premake build (re-enable using option --standalone-examples
move PhysicsServer and PhysicsClient into Physics Server-Client in its own ExampleBrowser section (out of Experiments)
2017-02-22 06:13:32 -08:00
Erwin Coumans
3faab1b019 adjusted clsocket build and test, so there is an EchoServer and QueryDayTime sending a string to the EchoServer. 2017-02-19 12:08:58 -08:00
Erwin Coumans
4faa6613c9 first draft of premake/cmake build files for clsocket (tiny cross-platform TCP socket library) 2017-02-19 11:48:01 -08:00
Erwin Coumans
04d78cccfb remove obsolete batch file 2017-01-07 19:31:34 -08:00
erwin coumans
a393074793 update to latest OpenVR 1.04 (and make minor API changes)
add premake5.exe (will remove premake4.exe soon)
2016-12-11 22:39:45 -08:00
erwincoumans
2329c00faa Add RtMidi for midi control, use the --midi option in premake, and see
update to OpenVR sdk 1.03 from https://github.com/ValveSoftware/openvr
add camPosX/Y/Z and camRotZ to adjust relative camera/world transform for VR (so you can align virtual table with real table etc)
tweak quadruped.py to move a bit
add mouse picking to physics server
2016-11-16 16:12:59 -08:00
erwincoumans
9708392322 work-in-progress
add UDP network connection for physics client <-> server.
also set spinning friction in rolling friction demo (otherwise objects may keep on spinning forever)
2016-11-04 13:15:10 -07:00
Erwin Coumans
7df9b69039 pybullet: add option to use NumPy to speed up, thanks to moof2k
option is disabled by default. When using cmake, use
cmake -DBUILD_PYBULLET=ON -DBUILD_PYBULLET_NUMPY=ON
then both testrender.py and testrender_np.py will work
without numpy only testrender.py works.
The numpy.reshape is likely a no-op when using numpy array,
so we could remove testrender_np.py...

See https://github.com/bulletphysics/bullet3/pull/774
2016-09-11 11:35:12 +01:00
erwin coumans
32eccdff61 Create project file for BussIK inverse kinematics library (premake, cmake)
URDF/SDF: add a flag to force concave mesh collisiofor static objects. <collision concave="yes" name="pod_collision">
VR: support teleporting using buttong, allow multiple controllers to be used, fast wireframe rendering,
Turn off warnings about deprecated C routine in btScalar.h/b3Scalar.h
Add a dummy return to stop a warning
Expose defaultContactERP in shared memory api/pybullet.
First start to expose IK in shared memory api/pybullet (not working yet)
2016-09-08 15:15:58 -07:00
Erwin Coumans
842863c04f add commented-out line in build_visual_studio.bat to show how to build pybullet on Windows 2016-09-01 21:37:52 -07:00
erwin coumans
3bdcf23a05 Add sleep to avoid 100% busy CPU loop in PhysicsServerExample
Added btClock::usleep
Fix broken TinyRenderer example code.
2016-08-13 12:21:18 -07:00
erwin coumans
a9b1544a9f Add premake support to build pybullet, Windows and Linux tested, will enable Mac in next commit.
Expose inverse dynamics to Bullet shared memory API, through b3CalculateInverseDynamicsCommandInit and
b3GetStatusInverseDynamicsJointForces command/status. See PhysicsClientExeample or pybullet for usage.
Add option for Windows and Linux to set python_lib_dir and python_include_dir for premake and --enable_pybullet option
Expose inverse dynamics to pybullet: [force] = p.calculateInverseDynamics(objectIndex,[q],[qdot],[acc])
Thanks to Jeff Bingham for the suggestion.
2016-08-09 18:40:12 -07:00
hujiajie
23868ebfb6 [WIP] Suppress compiler warnings.
Disable a few Visual Studio warnings:

C4244: conversion from 'type1' to 'type2', possible loss of data
C4267: conversion from 'size_t' to 'type', possible loss of data

Considering the GCC/Clang counterpart '-Wconversion'
(https://gcc.gnu.org/wiki/NewWconversion) is not covered by '-Wall', it
seems to make more sense to disable these two warnings in Visual Studio,
rather than fixing these warnings with hundreds of static_cast<> in the
source code.
2016-07-12 21:16:55 +08:00
erwin coumans
58206b7962 Add preliminary support for VR/OpenVR for HTC Vive and Oculus Rift,
(Windows-only first, later Linux and OSX)
Use premake to build, use --enable_openvr flag
2016-06-30 16:03:38 -07:00
Erwin Coumans
de9bd65c19 fix compile issues 2016-05-26 19:22:26 -07:00
erwin coumans
0d50d8c73b Preliminary working version of TinyRenderer for standalone demos,
it works without OpenGL dependency now, so it runs in the cloud :-)
Add scaling support for TinyRenderer, remove some un-used normal mapping in TinyRenderer shader, expose light_dir_world,
remove accidental hard-coded path in tga write_tga_file,
Fix InverseDynamicsExampleCreateFunc, enum has to start at 0
2016-05-26 17:36:01 -07:00
Erwin Coumans
535ee33e3b fix build3/stringify.sh
fix some compile issues
2016-05-25 15:37:28 -07:00
Erwin Coumans
9bd88e5727 move some easy-to-use build files for Mac OSX, Linux and Windows
in the root directory.
2016-05-21 10:45:08 -07:00
erwin coumans
0a3efbe349 make standalone versions (console, tinyrender, opengl) of InverseDynamics/InverseDynamicsExample 2016-05-06 13:57:48 -07:00
Erwin Coumans
1d0f038aad add initial pybullet module, using the shared memory API
(for now, start the example browser in 'physics server',
then compile using premake --python option,
then run python in the bin folder (so it finds pybullet.so)
and run the test.py script in examples/pybullet folder.
The robotics shared memory C API is very suitable for this.
2016-04-30 11:18:54 -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
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
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
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
Andrew Meadows
e66be7a7ef replaced spaced indentation with tabs 2015-12-03 22:00:52 -08:00
Andrew Meadows
b8f72ee56b fix bad --no-extras option for InverseDynamcis 2015-12-03 20:52:28 -08:00
Andrew Meadows
1c30453ae4 adding forgotten --no-extras build option 2015-12-03 20:49:31 -08:00
Andrew Meadows
d8b7d12707 combine checks for "ios" premake option
The "ios" option now only makes sense when action is "xcode"
2015-12-03 20:39:29 -08:00
Andrew Meadows
f385bffffb cleanup main premake script
added premake options:
  --no-demos
  --no-test
  --no-bullet3
2015-12-03 18:58:10 -08:00
Erwin Coumans
7d9365319c add InverseDynamics test/lib to premake 2015-11-17 08:26:27 -08:00
Erwin Coumans
72b68409da clang gets confused/crashes when using the same namespace,
need to look if it is a real error or clang issue
should fix Issue 520
https://github.com/bulletphysics/bullet3/issues/520
2015-11-08 13:49:37 -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
362887987c add example/MultiThreading functions 2015-08-21 11:09:53 -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
erwincoumans
19c5be5646 small progress towards shared memory C-api and test.c. 2015-07-30 23:22:44 -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
=
95eff08c51 fix 'binserver' to 'bin' for premake targetdir 2015-07-10 22:31:05 -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
285ac286fa some work towards streaming Bullet data over shared memory for client/server 2015-07-09 14:04:58 -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
dbae21ae5a prepare for some basic lua scripting example 2015-05-13 09:17:59 -07:00