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

[Rolling] LaserScan and PointCloud2 visualization cases repeated errors and does not show in display with most (but not all) geometries #805

Closed
SteveMacenski opened this issue Dec 2, 2021 · 4 comments · Fixed by #851
Assignees

Comments

@SteveMacenski
Copy link
Contributor

Hi,

Recently (e.g. maybe the last 2-6 weeks) an update to Rolling binaries caused error messages to flood the terminal when working with laser scans (see below). No matter the material I request for the LaserScan type (flat squares, spheres, boxes, etc) I get this same error message and no laser returns are displayed in the rviz window.

I assumed some materials changed names / namespaces, so I attempted to delete a given LaserScan display and create a new one in its place, but continues to display this issue.

This can be easily reproduced any number of ways, but the default launch file of Nav2 displays this as well

ros2 launch nav2_bringup tb3_simulation_launch.py
[rviz2-5] [ERROR] [1638478286.295723687] [rviz2]: No techniques available for material [PointCloudMaterial0Sphere]
[rviz2-5] [ERROR] [1638478286.295768689] [rviz2]: No techniques available for material [PointCloudMaterial0Sphere]
[rviz2-5] [ERROR] [1638478286.488444634] [rviz2]: No techniques available for material [PointCloudMaterial1Sphere]
[rviz2-5] [ERROR] [1638478286.488486647] [rviz2]: No techniques available for material [PointCloudMaterial1Sphere]
[rviz2-5] [ERROR] [1638478286.712116742] [rviz2]: No techniques available for material [PointCloudMaterial2Sphere]
[rviz2-5] [ERROR] [1638478286.712147736] [rviz2]: No techniques available for material [PointCloudMaterial2Sphere]
[rviz2-5] [ERROR] [1638478286.904669520] [rviz2]: No techniques available for material [PointCloudMaterial3Sphere]
[rviz2-5] [ERROR] [1638478286.904711506] [rviz2]: No techniques available for material [PointCloudMaterial3Sphere]

CC ros-navigation/navigation2#2720

@SteveMacenski
Copy link
Contributor Author

SteveMacenski commented Dec 16, 2021

I have found that the following laser scan styles do not work in visualization:

  • flat square
  • spheres
  • boxes
  • squares

The following do work:

  • Tiles
  • Points

However they all result in the same styled warnings: No techniques available for material [PointCloudMaterial449Sphere]

@SteveMacenski SteveMacenski changed the title [Rolling] LaserScan visualization cases repeated errors and does not show in display [Rolling] LaserScan visualization cases repeated errors and does not show in display with most (but not all) geometries Dec 16, 2021
@SteveMacenski
Copy link
Contributor Author

SteveMacenski commented Dec 16, 2021

When done without Nav2 (e.g. I just run Nav2 in another terminal just to launch the robot + simulation to get sensor data to visualize), I launch rviz2 in a clean terminal with no configuration file and add only a display for LaserScan and change the QoS to Best Effort for the sensor, I see the same results but also causes the screen to hang and a seg fault

...
[ERROR] [1639684840.479901550] [rviz2]: No techniques available for material [PointCloudMaterial10Sphere]
[ERROR] [1639684840.479937610] [rviz2]: No techniques available for material [PointCloudMaterial10FlatSquare]
[ERROR] [1639684840.672412826] [rviz2]: No techniques available for material [PointCloudMaterial11Sphere]
[ERROR] [1639684840.672463438] [rviz2]: No techniques available for material [PointCloudMaterial11FlatSquare]
[ERROR] [1639684840.865633667] [rviz2]: No techniques available for material [PointCloudMaterial12Sphere]
[ERROR] [1639684840.865680055] [rviz2]: No techniques available for material [PointCloudMaterial12FlatSquare]
Segmentation fault (core dumped)

I can also replicate this with a PointCloud2 visualization as well

@SteveMacenski SteveMacenski changed the title [Rolling] LaserScan visualization cases repeated errors and does not show in display with most (but not all) geometries [Rolling] LaserScan and PointCloud2 visualization cases repeated errors and does not show in display with most (but not all) geometries Dec 16, 2021
@SteveMacenski
Copy link
Contributor Author

SteveMacenski commented Dec 16, 2021

Suspiciously, the 2 that happen to work appear in the scripts directory loaded in setupResources https://github.com/ros2/rviz/blob/ros2/rviz_rendering/src/rviz_rendering/render_system.cpp#L353-L399 where the other materials I noted a couple of comments above that are not loading at all are in the scripts120 and scripts150 directories that are loaded in line with getGlslVersion(). Rviz should crash outright with an error if its not either 150/120 which I don't see, so something's not quite right.

I could believe that could be unrelated (though suspect), but just chronicling progress in case that sparks the memory of a maintainer. I'm definitely no expert in rviz buy toying around to see if I can make some progress. Going through the commits from the last few months, nothing sticks out to me after doing some testing. The best I can tell right now is that the materials aren't properly being loaded on request in the PointCloud visualization type, resulting in best ptr to be null and the ones that are at least half way working are all ones that are loaded regardless of GL version.

@SteveMacenski
Copy link
Contributor Author

SteveMacenski commented Feb 2, 2022

Last rolling update fixed Whoops my bad

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants