gazebo-classic:scpeters/skip_zero_stiffness_damping_callback

Last commit made on 2022-07-28
Get this branch:
git clone -b scpeters/skip_zero_stiffness_damping_callback https://git.launchpad.net/gazebo-classic

Branch merges

Branch information

Name:
scpeters/skip_zero_stiffness_damping_callback
Repository:
lp:gazebo-classic

Recent commits

6878e75... by Steve Peters <email address hidden>

ODEJoint: skip callback when parameters are 0

Don't connect the ApplyStiffnessDamping callback
if both stiffness and damping coefficients are
approximately zero, as this callback can take
a surprising amount of computation time when there
are lots of joints in a world.

Also, disable the callback of coefficients are
reset to zero.

Signed-off-by: Steve Peters <email address hidden>

40b42c5... by Steve Peters <email address hidden>

Add world for benchmarking with many joints

Use 10 instances of demo_joint_types model.

Signed-off-by: Steve Peters <email address hidden>

127108a... by Steve Peters <email address hidden>

LensFlare: verify that OcclusionSteps >= 1 (#3241)

Signed-off-by: Steve Peters <email address hidden>

1cc7e0b... by Steve Peters <email address hidden>

Wheel plowing approximation in ODEPhysics (#3164)

This adds an approximation of a wheel plowing effect
by rotating contact points and normals forward to
approximate the normal pressure distribution when
plowing longitudinally through deformable soil.

This builds on the implementation of the plowing effect
from the aditya/contact_pts branch to implement a model
discussed in #3085.

* Collision::WorldLinearVel: account for pose offset

Signed-off-by: Steve Peters <email address hidden>

Add example world and models, plowing SDFormat tags

Signed-off-by: Aditya <email address hidden>

Plowing effect unit test (#3229)

Signed-off-by: deepanshu <email address hidden>

Co-authored-by: Aditya <email address hidden>
Co-authored-by: Deepanshu Bansal <email address hidden>

20705f5... by Steve Peters <email address hidden>

LensFlare: parameterize number of occlusion steps (#3234)

There is a significant amount of CPU time taken
when checking for occlusions in the LensFlare
compositor listener. This exposes the number
of steps taken when checking occlusions to allow
users to attempt to speed up this process.

* LensFlarePlugin: call SetCamera last

The SetCamera call passes the current parameters to
the compositor listener, so make sure that it is
called last.

Signed-off-by: Steve Peters <email address hidden>

3e3e019... by Steve Peters <email address hidden>

Support shininess value for each Visual in a Model (#3235)

This moves the parsing of shininess values from
World::LoadModel to Link::UpdateVisualMsg and
stores the values by scoped Visual name rather
than by Model name. The per-model gz services
are also replaced by a single /shininess
service. A World::ShininessByScopedName method
for accessing the shininess map is provided, and
a mutex is used to protect access to the map.

Signed-off-by: Steve Peters <email address hidden>

9f41863... by Steve Peters <email address hidden>

Fix shininess and add tests (#3231)

* Add Visual::Shininess accessor and corresponding
visual_shininess integration test that confirms
shininess values are properly added to Visuals in
the shapes_shininess example world.

* Fix the test by reverting part of #3223, moving
the shininess service call back to Visual::Load.
A different fix for the PR2 tests is made by
checking for existence of shininess service
before calling.

Signed-off-by: Steve Peters <email address hidden>

e2849f9... by Jenn Nguyen <email address hidden>

Updated README links (#3226)

Signed-off-by: Jenn Nguyen <email address hidden>

33f7e47... by Steve Peters <email address hidden>

Prepare for 11.11.0 release (#3221)

Signed-off-by: Steve Peters <email address hidden>

323fc1c... by Steve Peters <email address hidden>

Fix tests related to shininess (#3223)

* World::LoadModel: avoid creating empty links

The logic in World::LoadModel currently creates an empty
link in models without links by calling GetElement("link")
without checking if such an element exists. This checks
HasElement("link") before calling GetElement, which fixes
a nested model test.

* Move shininess service call to Visual::Init

The pr2 test was failing due to timeouts in the shininess
service call. Move the call from Visual::Load to Visual::Init
to allow the service advertisement in World::Load some
time to take effect.

* Require SDFormat 9.8
* conda CI: don't install dartsim for now

Workaround for an issue with libsdformat 9.8

Signed-off-by: Steve Peters <email address hidden>