-
Notifications
You must be signed in to change notification settings - Fork 773
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
add more light options to service #874
add more light options to service #874
Conversation
108e43f
to
053a4e6
Compare
This PR is just meant for |
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.
This looks like a great improvement to me. The only problem I see is that we can't tell whether the fields are set or not on the ROS message. So if we release this into Melodic, some values would be zeroed for existing users. i.e. specular would be set to black, cast shadows turned off, the light teleported to the world origin...
My recommendation would be to release this into Noetic instead, and make sure the new fields are documented on the commit message so users see them on the changelog.
A possible solution for Melodic would be to treat zero / false as unset, but that would limit the range of values, and doesn't solve the boolean case.
Does the protobuf message store if a value has been set? Because otherwise, these values should be default initialised to 0 anyway. We could reproduce this behaviour with NaNs in place of "unset" values. But I agree that this should be postponed to the next ROS released then. Shall I rebase this PR to the |
Yes,
That would be great, thanks! |
053a4e6
to
8f8b92a
Compare
Thank you for rebasing. We need a way to document this so users can find out why their lights that used to stay in place on Melodic are teleported to the origin on Noetic when they change the light's color. This package doesn't have a migration guide though. Do you mind adding some notes about this to the commit message so it shows up on the changelog? Thanks! |
The optional 'Light' properties 'cast_shadows', 'specular', 'direction', and 'pose' are not optional any more. These properties are now set via the corresponding fields in the ROS message. By default, this will be 0. ros-simulation#874
8f8b92a
to
f8e373f
Compare
Done. I mentioned that these newly added ROS message fields will be initialised to 0 by default. |
This PR adds
cast_shadows
,specular
,direction
andpose
to theSetLightProperties
service.