
I noticed in the SDF specification one can add a <shader> tag with type normal_map_tangentspace to a <material> tag. But when I try to load my world file in gazebo 9 (also tried it in 7), the last output I get in the console is waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting.... It will wait forever.
I also made sure that the gazebo_model_path is set up correctly in my package.xml, so the texture file specified in the <normal_map> child tag should get found. It works at least for meshes and material scripts. Here is a snippet from my world file:
<model name="model">
<link name="link">
<visual name="visual">
<geometry>
<mesh>
<uri>model://mesh.dae</uri>
</mesh>
</geometry>
<material>
<shader type="normal_map_tangentspace">
<normal_map>model://materials/textures/Normal.png</normal_map>
</shader>
<script>
<uri>model://materials/scripts</uri>
<name>Material</name>
</script>
</material>
</visual>
</link>
</model>
Does anyone have experience with this and knows what I'm missing?
Thanks in advance, David
Originally posted by D4KU on Gazebo Answers with karma: 1 on 2018-10-18
Post score: 0
Original comments
Comment by chapulina on 2018-10-18:
That console message seems to be coming from ROS and not related to Gazebo's rendering.
Comment by chapulina on 2018-10-18:
Also, I'd double-check that you're referring to the correct resource locations, usually you'd have the model name after model://
Comment by D4KU on 2018-10-22:
I'm pretty confident that the path is correct. I've tested it by using it in the mesh uri as well. The mesh got found after I copied it to the same location as my normal map image. And I double checked its name a 1000 times.
I had the hope that the last output would give someone a hint where gazebo or ROS seem to encounter a problem. Sadly I have no other feedback, since there is no exception being thrown or anything. It just works fine as soon I comment out the tag in my world file.