Commit Graph

6250 Commits

Author SHA1 Message Date
Lunkhound
bdc3c2bafb task scheduler: add multiple job queues to improve performance when there are many threads 2018-03-17 22:59:29 -07:00
Lunkhound
04e0d57dc1 add premake option 'enable-multithreading' 2018-03-16 23:42:43 -07:00
Lunkhound
e526e48df8 parallel solver: slightly overallocate to reduce how often allocation is needed 2018-03-13 04:19:02 -07:00
Lunkhound
eec478709a parallel solver: small tweaks and fixes 2018-03-06 02:43:59 -08:00
Lunkhound
45fd4acf6e dynamicsWorldMt: make island mgr aware of whether a parallel solver is present and make handoff from parallel solver to solver-pool more explicit 2018-03-05 20:05:38 -08:00
Lunkhound
d900a74939 add new source files to setup.py to fix travis-ci build 2018-02-27 03:03:12 -08:00
Lunkhound
06690e542b fix compile error for GCC 2018-02-27 00:30:45 -08:00
Lunkhound
b8720f2161 parallel solver: various changes
- threading: adding btSequentialImpulseConstraintSolverMt
 - task scheduler: added parallelSum so that parallel solver can compute residuals
 - CommonRigidBodyMTBase: add slider for solver least squares residual and allow multithreading without needing OpenMP, TBB, or PPL
 - taskScheduler: don't wait for workers to sleep/signal at the end of each parallel block
 - parallel solver: convertContacts split into an allocContactConstraints and setupContactConstraints stage, the latter of which is done in parallel
 - parallel solver: rolling friction is now interleaved along with normal friction
 - parallel solver: batchified split impulse solving + some cleanup
 - parallel solver: sorting batches from largest to smallest
 - parallel solver: added parallel batch creation
 - parallel solver: added warmstartingWriteBackContacts func + other cleanup
 - task scheduler: truncate low bits to preserve determinism with parallelSum
 - parallel solver: reducing dynamic mem allocs and trying to parallelize more of the batch setup
 - parallel solver: parallelize updating constraint batch ids for merging
 - parallel solver: adding debug visualization
 - task scheduler: make TBB task scheduler parallelSum deterministic
 - parallel solver: split batch gen code into separate file; allow selection of batch gen method
 - task scheduler: add sleepWorkerThreadsHint() at end of simulation
 - parallel solver: added grain size per phase
 - task Scheduler: fix for strange threading issue; also no need for main thread to wait for workers to sleep
 - base constraint solver: break out joint setup into separate function for profiling/overriding
 - parallel solver: allow different batching method for contacts vs joints
 - base constraint solver: add convertJoint and convertBodies to make it possible to parallelize joint and body conversion
 - parallel solver: convert joints and bodies in parallel now
 - parallel solver: speed up batch creation with run-length encoding
 - parallel solver: batch gen: run-length expansion in parallel; collect constraint info in parallel
 - parallel solver: adding spatial grid batching method
 - parallel solver: enhancements to spatial grid batching
 - sequential solver: moving code for writing back into functions that derived classes can call
 - parallel solver: do write back of bodies and joints in parallel
 - parallel solver: removed all batching methods except for spatial grid (others were ineffective)
 - parallel solver: added 2D or 3D grid batching options; and a bit of cleanup
 - move btDefaultTaskScheduler into LinearMath project
2018-02-26 22:47:33 -08:00
erwincoumans
94bc897067
Merge pull request #1574 from erwincoumans/master
fix glx include
2018-02-22 09:41:01 -08:00
Erwin Coumans
05b02d6b3e fix glx include 2018-02-22 09:08:10 -08:00
erwincoumans
90b34680b0
Merge pull request #1572 from erwincoumans/master
explicitly remove textures during resetSimulation
2018-02-22 08:37:03 -08:00
erwincoumans
c632fea48d PyBullet: remove VisualLeakDetector 2018-02-21 23:44:57 -08:00
erwincoumans
73a4334e30 explicitly remove textures during resetSimulation
move glViewport to Win32Window
2018-02-21 23:22:16 -08:00
erwincoumans
91f77dfb39
Merge pull request #1571 from erwincoumans/master
fix __init__.py
2018-02-21 12:42:37 -08:00
Erwin Coumans
15c46a0237 bump up pybullet version, add missing glad file(s) to MANIFEST.in 2018-02-21 11:46:53 -08:00
Erwin Coumans
15608acc4f bump up pybullet version 2018-02-21 10:48:04 -08:00
Erwin Coumans
8ba9644e78 fix __init__.py 2018-02-21 10:47:24 -08:00
Erwin Coumans
67318f3323 fix __init__.py 2018-02-21 10:45:06 -08:00
erwincoumans
3508a4523b
Merge pull request #1560 from YunfeiBai/master
Add shader and example for projective texture.
2018-02-21 10:23:18 -08:00
erwincoumans
8bc39ab11e
Merge pull request #1569 from erwincoumans/master
allow to build GLFW version of Bullet examples on Linux (use premake4…
2018-02-21 10:07:39 -08:00
Erwin Coumans
a3c2ce1cef add __init__.py for pybullet_envs.prediction 2018-02-21 10:06:46 -08:00
erwincoumans
0e0b7cb9f8 glew->glad 2018-02-21 08:59:06 -08:00
erwincoumans
f341acc44a glew->glad 2018-02-21 08:50:47 -08:00
erwincoumans
4343d041da more work towards glew->glad 2018-02-21 08:36:53 -08:00
erwincoumans
5679802c24 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2018-02-21 08:20:01 -08:00
erwincoumans
483f017613 fix VR build 2018-02-21 08:19:49 -08:00
Erwin Coumans
9288ea9c6a fix mac osx build 2018-02-21 08:16:00 -08:00
Erwin Coumans
3a019be57e Merge remote-tracking branch 'bp/master' 2018-02-21 07:31:00 -08:00
Erwin Coumans
c2b59776ed CMakeLists glew to glad 2018-02-20 21:09:31 -08:00
Erwin Coumans
92fd206dac bump up pybullet version 2018-02-20 20:59:41 -08:00
Erwin Coumans
d583269430 fix glad_glx on linux 2018-02-20 20:57:55 -08:00
Erwin Coumans
850b8b0493 add glad_glx files 2018-02-20 20:15:26 -08:00
Erwin Coumans
dacafda88a use glad instead of glew in mac build and pybullet setup.py 2018-02-20 20:09:12 -08:00
Erwin Coumans
b0984de046 preparation to replace glew by glad 2018-02-20 19:44:02 -08:00
yunfeibai
5494aa72fa Set the perspective projection for projective texture mapping. Change the demo to two bears with the same view projection matrix for the camera and the projector. 2018-02-20 18:32:09 -08:00
Erwin Coumans
8bb40b632b allow to build GLFW version of Bullet examples on Linux (use premake4_linux --enable_glfw gmake) 2018-02-20 16:21:22 -08:00
erwincoumans
62b86e6eab
Merge pull request #1568 from erwincoumans/master
PyBullet: soft bodies are rendered, so we don't need to also render w…
2018-02-18 16:54:49 -08:00
erwincoumans
01f58f8f02 PyBullet: soft bodies are rendered, so we don't need to also render wireframes in regular mode.
Use glBufferSubData instead of glMapBuffer/glUnmapBuffer, much faster soft body vertex sync.
Don't use a separate btSoftBodyWorldInfo, use the existing one in btSoftMultiBodyDynamicsWorld.
2018-02-18 11:09:42 -08:00
erwincoumans
a6849de99c
Merge pull request #1555 from JanMatas/softBody-opengl-rendering
Implemented support for softbodies in OpenGL renderer
2018-02-18 10:48:46 -08:00
erwincoumans
389d7aaa79
Merge pull request #1561 from erwincoumans/master
add HelloPyBullet notebook, random block stacking gym env test
2018-02-17 10:00:58 -08:00
erwincoumans
ddf304ca78 PyBullet: expose internal edge utility, to adjust edge normals to prevent object penetrating along triangle edges of concave triangle meshes
(due to local convex-triangle collisions causing opposite contact normals, use the pre-computed edge normal)
PyBullet: expose experimental continuous collision detection for maximal coordinate rigid bodies, to prevent tunneling.
2018-02-16 19:44:33 -08:00
erwincoumans
1dcacbb64e
Merge pull request #1564 from radarsat1/master
Fix calculation of startPt for perturbed object A.
2018-02-16 10:16:15 -08:00
Stephen Sinclair
58310bd21d Fix calculation of startPt for perturbed object A.
Fixes #1563.
2018-02-16 11:57:16 -03:00
yunfeibai
ef0ae4935b Minor change. 2018-02-15 18:37:23 -08:00
yunfeibai
fb6907aa1b Merge remote-tracking branch 'upstream/master' 2018-02-15 18:19:29 -08:00
yunfeibai
36dcabbaf5 Merge remote-tracking branch 'upstream/master' 2018-02-15 14:31:34 -08:00
yunfeibai
cf4a0a3503 Add improvement/fix in SortableTransparentInstance back. 2018-02-15 13:19:41 -08:00
erwincoumans
d35941ebb8 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2018-02-14 16:50:05 -08:00
erwincoumans
d3fe21ef17 Add option GUI_MAIN_THREAD for running OpenGL in the main thread (Python thread). This already happens on Mac OSX by default.
Pass all argc/argc from options to InProcessPhysicsClientSharedMemoryMainThread
2018-02-14 16:49:44 -08:00
Erwin Coumans
32b9fb2c04 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2018-02-14 15:41:46 -08:00