This repository has been archived by the owner on Feb 3, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 498
Fix gzclient starting with black screen #3121
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add test for /scene_info service with empty.world Signed-off-by: Steve Peters <scpeters@openrobotics.org>
This should be more reliable than the ~/request topic over gazebo::transport, but if it fails then fall back on the current method. Signed-off-by: Steve Peters <scpeters@openrobotics.org>
Signed-off-by: Steve Peters <scpeters@openrobotics.org>
Signed-off-by: Steve Peters <scpeters@openrobotics.org>
There is a small merge conflict but other than that, the changes seem to be working! |
I just merged with |
WilliamLewww
approved these changes
Oct 15, 2021
scpeters
commented
Oct 15, 2021
gazebo/rendering/Scene.cc
Outdated
this->dataPtr->requestPub->Publish(*this->dataPtr->requestMsg); | ||
// Get scene info from physics::World with ignition transport service | ||
ignition::transport::Node node; | ||
ignition::msgs::Scene sceneInfo; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I just realized this variable is unused. I'll wait for the current CI run to finish, then make this change and merge without CI
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Signed-off-by: Steve Peters <scpeters@openrobotics.org>
scpeters
added a commit
to scpeters/gazebo
that referenced
this pull request
Oct 22, 2021
Since gazebosim#3121 was merged, some problems have been observed with loading model plugins if a model contains sensor plugins that are slow to load. This introduces two test plugins and a test world to demonstrate the problem. Signed-off-by: Steve Peters <scpeters@openrobotics.org>
This was referenced Oct 22, 2021
scpeters
added a commit
that referenced
this pull request
Oct 25, 2021
As noted in #3125, loading a model may timeout when loading model plugins if the model contains sensor plugins that are slow to load. Since this timeout seems more likely to occur since #3121 was merged, the default timeout is increased from 5 seconds to 30 seconds, and an SDFormat world parameter <ignition:model_plugin_loading_timeout> is added to make the timeout configurable. A regression test using a test world and two test plugins is added to demonstrate the problem and confirm the fix. * Fix typos in World.hh doc-strings * Add IGN_PROFILE to World::ProcessFactoryMsgs * Disable shadow caster test on macOS Signed-off-by: Steve Peters <scpeters@openrobotics.org>
8 tasks
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There is a longstanding issue (#681) in which
gzclient
occasionally starts with a black screen, failing to ever display the scene. Opening a secondgzclient
instance often works properly, suggesting a race condition in initialization. I highly suspect much of the non-determinism comes from the use of the~/request
topic with gazebo-transport to communicatescene_info
fromgazebo::physics::World
togazebo::rendering::Scene
. It is more reliable to use an ignition-transport service, so I have added a/scene_info
ignition-transport service toWorld
and changedScene
to prefer calling this service instead of using the~/request
topic. If the ignition service is unavailable or fails, it will fall back to the current method using~/request
, which should preserve backwards compatibility between old and new instances ofgzserver
andgzclient
.I've added a test for the new service to
INTEGRATION_info_services
. I've also fixed a few compiler warnings in ab57017.