Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support loading more than one visual plugin on GUI side #1363

Open
iche033 opened this issue Feb 24, 2022 · 2 comments
Open

Support loading more than one visual plugin on GUI side #1363

iche033 opened this issue Feb 24, 2022 · 2 comments
Labels
bug Something isn't working help wanted We accept pull requests! rendering Involves Ignition Rendering

Comments

@iche033
Copy link
Contributor

iche033 commented Feb 24, 2022

Environment

  • OS Version: Ubuntu 20.04
  • Source or binary build?
    binary and source, ign-gazebo6

Description

Visual plugin support on the GUI side is added in #1275. However when multiple visual plugins are specified for a <visual>, only the last one will be loaded, see
#1335 (comment)

  • Expected behavior: ign-gazebo's gui loads multiple visual plugin per visual
  • Actual behavior: ign-gazebo's gui only loads the last visual plugin

This is mainly because we are only creating attaching one VisualPlugin component to a visual entity on the server side, which then get serialized and sent to the GUI side:
https://github.com/ignitionrobotics/ign-gazebo/blob/0dead0578ba3f26cf97f8162e55a0dbe1112484c/src/SdfEntityCreator.cc#L752-L761

A potential fix is to use component that stores a list of visual plugins instead

@iche033 iche033 added the bug Something isn't working label Feb 24, 2022
@chapulina chapulina added help wanted We accept pull requests! rendering Involves Ignition Rendering labels Mar 1, 2022
@chapulina
Copy link
Contributor

chapulina commented Mar 16, 2022

A potential fix is to use component that stores a list of visual plugins instead

We'll need some way of passing system information from the server to the client for #191. I was thinking of creating a component that stores a ignition::msgs::Plugin_V. Do you think that could address all the needs of the VisualPlugin, @iche033 ? I think that would be better to serialize than an sdf::ElementPtr.

@iche033
Copy link
Contributor Author

iche033 commented Mar 16, 2022

I think so. As long as contents of the plugin.proto msg can be converted back to an sdf::ElementPtr then it should be fine. For loading visual plugins, it comes down to this call on the GUI side:
https://github.com/ignitionrobotics/ign-gazebo/blob/ign-gazebo6/src/gui/GuiRunner.cc#L343-L344

@chapulina chapulina mentioned this issue Apr 8, 2022
8 tasks
nkoenig pushed a commit that referenced this issue May 13, 2022
Signed-off-by: Nate Koenig <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working help wanted We accept pull requests! rendering Involves Ignition Rendering
Projects
None yet
Development

No branches or pull requests

2 participants