Commit Graph

172 Commits

Author SHA1 Message Date
erwincoumans
2bd7fa7064
Merge pull request #3287 from glebm/heightfield-accel
heightfield: improve `processAllTriangles` performance
2021-03-11 17:10:20 -08:00
Gleb Mazovetskiy
40a9584ccb heightfield: Add a test for processAllTriangles up-axis filtering 2021-03-03 13:58:09 +00:00
Gleb Mazovetskiy
6442613ba6 CMake: Use Threads instead of pthread directly
On some systems, such as Android, threads are not provided via
`-lpthread`.

CMake comes with a built-in module for finding the correct threads
library.

Use it to fix the linking issue on Android and possibly other systems.
2021-01-20 02:16:51 +00:00
r-a-sattarov
961d79703b E2K: strip UTF-8 BOM for MCST lcc compiler < 1.24
strip UTF-8 BOM for compatibility with MCST lcc compiler < 1.24
2020-10-28 21:51:18 +03:00
Erwin Coumans
0b6457d318 fix cmake/premake builds 2020-03-22 11:58:39 -07:00
Erwin Coumans
202cf18995 allow to compile using clang-cl on visual studio (disable SSE) 2019-12-11 13:07:53 -08:00
Erwin Coumans
31688ffb34 fix in multi-endeffector IK, calculate jacobian uses dofs without base, fix premake build of some projects 2019-07-11 22:22:35 -07:00
Steven
de16c23209 commit the ABA comparison test between the RBDL and Bullet, and use the option BULLET_BUILD_RBDL_COMPARE_TEST to control if build it.
it is disabled by default.
2019-07-02 15:35:33 +08:00
erwincoumans
dba239fe8d First pass of load files through an interface (to allow loading from memory, zip file etc). So instead of posix fopen/fread, using CommonFileIOInterface.
A fileIO plugin can override custom file IO operations. As a small test, load files from a zipfile in memory.
Default fileIO implementation is in examples/Utils/b3BulletDefaultFileIO.h
Affects URDF, SDF, MJCF, Wavefront OBJ, STL, DAE, images.
2018-10-08 21:27:08 -07:00
Erwin Coumans
42ae4e81a8 apply clang-format (on Mac, slightly different than running it on Windows) 2018-09-30 11:43:57 -07:00
erwincoumans
5bcd43711a PyBullet OpenGL/EGL hardware getCameraImage: use glViewport to reduce the glReadPixels calling cost dramatically for small images
PyBullet Allow OpenGL/EGL hardware to render segmentation mask. Use pybullet.ER_SEGMENTATION_MASK_OBJECT_AND_LINKINDEX or pybullet.ER_SEGMENTATION_MASK
PyBullet.removeBody fix indexing bug (use foundIndex, not i)
PyBullet bump up version to 2.2.3
2018-09-30 07:10:40 -07:00
erwincoumans
ab8f16961e Code-style consistency improvement:
Apply clang-format-all.sh using the _clang-format file through all the cpp/.h files.
make sure not to apply it to certain serialization structures, since some parser expects the * as part of the name, instead of type.
This commit contains no other changes aside from adding and applying clang-format-all.sh
2018-09-23 14:17:31 -07:00
erwincoumans
684a9f6a99 move stb_image/stb_image_write.cpp into a cpp file instead of random files with the magic 'STB_IMAGE_WRITE_IMPLEMENTATION' define
move setup.py back to eglRenderer extension, use pkgutil.get_loader('eglRenderer').get_filename()
disable dlmopen by default, unless B3_USE_DLMOPEN is defined.
2018-09-10 23:18:34 -07:00
a
3d499c8a7a pybullet: added EGL render device and window_backend option.
EGL review.
EGL dynamic loading, windowType to int
moved to glad2
Require GL 3.3 as GLInstancingRenderer.cpp uses glVertexAttribDivisor
glad2 update with dynamic X11 added
removed old file
build fix
fix mac/win
EGL w/o c++11, off by default
fix premake
fixup: premake fix 2
2018-08-30 13:24:25 +02:00
Erwin Coumans
2cab56d6ef prepare build system(s) for collisionFilterPlugin 2018-07-27 15:48:24 +02:00
erwincoumans
b6f5cb4c34 enable pdControlPlugin by default (requires pdControlPlugin.cpp and b3RobotSimulatorClientAPI_NoDirect.cpp)
add pdControl.py example, make pdControlPlugin functional
reduce memory usage
fix examples/pybullet/gym/pybullet_data/random_urdfs/948/948.urdf, fixes issue #1704
2018-06-05 15:59:01 -07:00
erwincoumans
9c77e07494 upgrade from tinyxml to tinyxml2 2018-04-12 00:09:44 -07:00
Erwin Coumans
b0984de046 preparation to replace glew by glad 2018-02-20 19:44:02 -08:00
Erwin Coumans
c0781fa9f1 fix cmake build 2018-02-09 19:06:00 -08:00
Erwin Coumans
508550c5e9 fix premake build for linux, thanks to @consultit
See also issue #1538
2018-02-09 18:46:26 -08:00
erwincoumans
329a1f5a74 PyBullet: move TinyRenderer into a plugin, default statically loaded. You can also dynamically load a render plugin, as shown in renderPlugin.py example. premake has a way to compile the tinyRendererPlugin. 2018-01-17 12:48:48 -08:00
erwincoumans
15a429f1bf premake build system fixes 2018-01-09 12:23:25 -08:00
erwincoumans
6a9300809d premake4 add option --enable_static_vr_plugin to statically link the VR sync plugin
fix texture caching from previous commit (what happened there?)
2017-10-25 10:00:45 -07:00
Jeffrey Bingham
febbb92fb6 Fix compile warnings for GwenOpenGLTest and Test_enet_chat_client. 2017-09-30 13:13:46 -07:00
Erwin Coumans
97509dc9d0 add some missing files for premake, thanks to Jeff Bingham for the report 2017-09-24 16:10:14 -07:00
erwincoumans
5f6cd6a42b link against DL for dlopen 2017-09-23 07:26:03 -07:00
Erwin Coumans
3783dccaa3 create a C/C++ plugin system for pybullet / C-API. 2017-09-22 19:17:57 -07:00
Erwin Coumans
ae8f12e8ba more fixes for retina + glfw + opengl2 fallback 2017-09-20 13:09:18 -07:00
erwincoumans
390f111547 enable option to use GLFW, instead of our own cross-platform X11/Cocoa/Windows OpenGLWindow classes 2017-09-19 21:10:54 -07:00
Erwin Coumans
c250a5f0b9 re-enable shared memory connection for pybullet Gym envs (with fallback to GUI or DIRECT)
suppress shared memory connection warnings
add fallback from ER_BULLET_HARDWARE_OPENGL to TinyRenderer if not available
2017-09-13 09:56:39 -07:00
Erwin Coumans
adafcce830 compile fixes 2017-09-06 10:39:45 -07:00
erwincoumans
9d0f875c5b fix compile issues due to API change (additional argument) 2017-08-15 09:34:44 -07:00
Erwin Coumans
fbff4c57ca update include after stb_image changes 2017-06-22 09:03:10 -07:00
erwincoumans
83f910711a Prepare/allow for non-Bullet2-based physics command processor in pybullet/Bullet-C-API
!!! Make sure to add examples/SharedMemory/PhysicsServerExampleBullet2.cpp to your build system, if needed
Bump up pybullet to version 1.0.9
2017-05-30 19:54:55 -07:00
erwincoumans
978dd5844d due to b3Assert, GwenOpenGLTest/premake4.lua depends on Bullet3Common 2017-05-29 22:09:07 -07:00
Erwin Coumans
8b90885cf6 more compile fixes 2017-05-13 13:58:05 -07:00
Erwin Coumans
cb1f5c74ea add missing files to projects 2017-05-04 18:04:32 -07:00
Erwin Coumans
e487bc360b add support for setuptools setup.py pybullet for 'pip install pybullet'
rewrite MacOpenGLWindow.mm into .m version, so that setup.py can handle it.
See also test at https://pypi.python.org/pypi/pybullet/0.1.0
2017-04-02 23:00:06 -07:00
Erwin Coumans
ee0e3ba271 Remove RobotLogging from CMakeLists.txt
Avoid crashing if threadIndex exceeds BT_QUICKPROF_MAX_THREAD_COUNT (64)
2017-03-23 18:00:00 -07:00
Erwin Coumans
0b017b0f53 fix issue with btMultiBody friction in combination with soft contacts (friction should not re-use normal contact cfm/erp)
implement friction anchors, position friction correction, disabled by default. Use colObj->setCollisionFlag(flag | CF_HAS_FRICTION_ANCHOR); See test/RobotClientAPI/SlopeFrictionMain.cpp. In URDF or SDF, add <friction_anchor/> in <contact> section of <link> to enable.
PhysicsServer: properly restore old activation state after releasing picked object
btMultiBodyConstraintSolver: disable flip/flop of contact/friction constraint solving by default (it breaks some internal flaky unit tests)
2017-03-20 10:58:07 -07:00
Erik Ogenvik
f159998220 Added test for btKinematicCharacterController.
For now just a simple instantiation unit test.
2017-03-14 22:10:15 +01:00
Erwin Coumans (Google)
e1504eb990 fix Linux premake build 2017-02-22 10:39:37 -08:00
Erwin Coumans
bd30ba30ce Replace large timeout (1024*1024*1024) using real-time clock timeout (10 seconds default)
Change SHARED_MEMORY_MAGIC_NUMBER to make sure server/client are using the same version (shared memory)
add --realtimesimulation to physics server (GUI, VR)
remove --G Xcode from build_cmake_pybullet_double.sh
2017-02-22 09:33:30 -08:00
Erwin Coumans
942015df9d use TCP in main thread, accumulate bytes until size matches. 2017-02-20 18:54:12 -08:00
Erwin Coumans
3d73a9d788 shmem preliminary TCP implementation (not working yet) 2017-02-20 16:46:25 -08:00
Erwin Coumans
55361e262e fix 6dof sensors for fixed joints (recent bug left fields uninitialized in getJointInfo)
add premake build support for Test_PhysicsClientUDP
2017-02-20 13:18:33 -08:00
Erwin Coumans
c10dfe6a80 more tcp testing 2017-02-20 09:52:59 -08:00
Erwin Coumans
970de9c4d7 tcp echo/query test setup 2017-02-20 09:34:00 -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
957266b121 add tiny cross-platform TCP socket library from https://github.com/DFHack/clsocket
(todo: hook-up to Bullet cmake/premake build systems, and implement TCP alternative for UDP server)
2017-02-19 10:25:55 -08:00