Search found 4132 matches

by Erwin Coumans
Mon Nov 19, 2018 9:48 pm
Forum: General Bullet Physics Support and Feedback
Topic: Hinge2 damping
Replies: 5
Views: 62

Re: Hinge2 damping

We need to look into that. Would it be possible to re-create a small demo that shows the problem in the ExampleBrowser, and file a issue in the tracker? See https://github.com/bulletphysics/bullet3/issues (note that this tracker is mostly volunteering work, so it sometimes takes long time before it ...
by Erwin Coumans
Thu Nov 15, 2018 7:38 pm
Forum: General Bullet Physics Support and Feedback
Topic: printStats()
Replies: 9
Views: 114

Re: printStats()

Since many developers have their own, you can interface to your own task scheduler. There are however a few built-in task schedulers, pick one of those: addTaskScheduler(btGetSequentialTaskScheduler()); #if BT_THREADSAFE if (btITaskScheduler* ts = btCreateDefaultTaskScheduler()) { m_allocatedTaskSch...
by Erwin Coumans
Thu Nov 15, 2018 2:20 am
Forum: General Bullet Physics Support and Feedback
Topic: printStats()
Replies: 9
Views: 114

Re: printStats()

All defines, such as BT_ENABLE_THREADSAFE and BT_USE_DOUBLE_PRECISION etc should be added in both lib and app, and better be the same in both. Usually I just put the physics source code together with the app, to avoid any mismatch/out-of-date version etc. >> https://twitter.com/BramStolk/status/1051...
by Erwin Coumans
Thu Nov 15, 2018 12:29 am
Forum: General Bullet Physics Support and Feedback
Topic: Poor performance when ghost object overlaps many btBoxShapes [with video]
Replies: 4
Views: 140

Re: Poor performance when ghost object overlaps many btBoxShapes [with video]

>> 1. Is a ghost object even the right way to detect if enemies are near each unit? If not, what would work better? Another option is to use an broadphase aabbTest query first. This may be good enough, but you can perform a more accurate query if needed on the objects returned by the aabbTest (and t...
by Erwin Coumans
Wed Nov 14, 2018 11:23 pm
Forum: General Bullet Physics Support and Feedback
Topic: printStats()
Replies: 9
Views: 114

Re: printStats()

It looks like you got inspired by Dennis Gustafsson :-) ? https://twitter.com/tuxedolabs/status/1058381664001363968 >> I see that collision detection is also done in parallel. Nice! Yes apparently, it was a contribution, but the default broadphase/collision dispatcher in Bullet is single threaded. F...
by Erwin Coumans
Wed Nov 14, 2018 8:04 pm
Forum: General Bullet Physics Support and Feedback
Topic: printStats()
Replies: 9
Views: 114

Re: printStats()

Ignore printStats, it is not used. >> how many were eliminated by broadphase? If you want to know how many pairs there are, use btOverlappingPairCache::getNumOverlappingPairs Without a broadphase, you would check (n^2)/2, so you can compute the difference: (n^2)/2 - btOverlappingPairCache::getNumOve...
by Erwin Coumans
Tue Nov 06, 2018 5:07 am
Forum: PyBullet Support and Feedback
Topic: How to continue training a model with train_ppo ?
Replies: 1
Views: 180

Re: How to continue training a model with train_ppo ?

If you want to resume a previously started run, add the --timestamp=<time> flag to the last command and provide the timestamp in the directory name of your run. See also the more new version of PPO for more info on the --timestamp option. https://github.com/google-research/batch-ppo (the new version...
by Erwin Coumans
Tue Nov 06, 2018 4:59 am
Forum: PyBullet Support and Feedback
Topic: Reset gym environment with an observation
Replies: 1
Views: 87

Re: Reset gym environment with an observation

You will have to manually reset the state for all objects. See resetJointState and resetBasePositionAndOrientation, resetBaseVelocity in the PyBullet Quickstart Guide.
by Erwin Coumans
Tue Nov 06, 2018 4:57 am
Forum: PyBullet Support and Feedback
Topic: Why bullet proposes value to clamp number of substeps?
Replies: 1
Views: 79

Re: Why bullet proposes value to clamp number of substeps?

Clamping is important in real-time simulations, otherwise you get a feedback loop of slower and slower (grinding to a halt) if the time it takes to simulate is slower then the real-time clock. dt = clock.deltaTime(); stepSimulation(dt);//if this takes longer than dt, then the next iteration, the dt ...
by Erwin Coumans
Tue Nov 06, 2018 4:53 am
Forum: PyBullet Support and Feedback
Topic: Joint_spherical
Replies: 1
Views: 41

Re: Joint_spherical

The spherical joint is not exposed yet in PyBullet, we haven't had a robot using them. Also we don't have a motor for the spherical joint yet.

If we would expose the spherical joint, how would you actuate it?
by Erwin Coumans
Fri Nov 02, 2018 3:48 pm
Forum: General Bullet Physics Support and Feedback
Topic: Dramatic slow down when using SAT convex.
Replies: 5
Views: 143

Re: Dramatic slow down when using SAT convex.

>> Any idea why the fragments dance around like that? Perhaps the vertices are not centered around the origin? The center of mass needs to be at [0,0,0]. There is a similar demo in the example browser under Experiments/VoronoiFracture. (note that that demo has a small issue, after removing the const...
by Erwin Coumans
Fri Nov 02, 2018 3:33 pm
Forum: General Bullet Physics Support and Feedback
Topic: Spatial query of the world
Replies: 4
Views: 138

Re: Spatial query of the world

What type is TestCallback exactly? You should be able to override its 'needsCollision' virtual method.
by Erwin Coumans
Thu Nov 01, 2018 1:24 pm
Forum: General Bullet Physics Support and Feedback
Topic: Spatial query of the world
Replies: 4
Views: 138

Re: Spatial query of the world

Fastest is broadphase->aabbTest(), but based on aabb bounding volumes of objects.

Precise is collisionWorld->contactTest(). If you use a sphere (btSphereShape), it will be similar to the OpenDE test.

The query btCollisionObject in contactTest isn't part of the world.
by Erwin Coumans
Thu Nov 01, 2018 1:09 pm
Forum: General Bullet Physics Support and Feedback
Topic: Dramatic slow down when using SAT convex.
Replies: 5
Views: 143

Re: Dramatic slow down when using SAT convex.

Our SAT is not used by default and not well optimized. The default settings using GJK+EPA+ incremental persistent contact manifold should work really well, especially at 240hz. We accumulate up to 4 points, so there won't be single contacts for long. >> When not using SAT, I also see a slow down, sl...
by Erwin Coumans
Sun Oct 28, 2018 1:56 am
Forum: General Bullet Physics Support and Feedback
Topic: multibody m_appliedImpulse zero
Replies: 2
Views: 111

Re: multibody m_appliedImpulse zero

The applied impulse should be available in the post-tick callback, if you enable if SOLVER_USE_WARMSTARTING in the solver info.

In PyBullet that is how we provide the contact normal and lateral friction forces and they are non-zero.