ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

How can I create a skydome in Gazebo?

asked 2012-03-15 11:10:45 -0500

Jim Rothrock gravatar image

updated 2014-01-28 17:11:39 -0500

ngrennan gravatar image

I am trying to create a Gazebo world that contains an HDR (High Dynamic Range) skydome and a texture-mapped ground plane. The ground plane was easy, but I haven't discovered how to create the skydome. In Electric, in gazebo_worlds contains this:

<ambient>0.5 0.5 0.5 0.5</ambient>


I know how to replace Gazebo/CloudySky with a custom material that has a different texture map, but I don't know what texture map format <sky> expects. Examples are fish-eye, polar, vertical face map, etc. I haven't found any documentation describing how Gazebo skies work. Does anyone know of any? Can anyone point me to example world files that use skydomes? Lastly, does Gazebo support 16-bit float (i.e. half) OpenEXR files?

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2012-03-21 11:18:11 -0500

Jim Rothrock gravatar image

I looked at the gazebo-1.0.0-RC2 source code, and found that the <sky> element creates an OGRE SkyDome with curvature 10, tiling 8, distance 4000, and an orientation along the positive z axis. Since the tiling value cannot be specified in the world file, it is impossible to use a lat-long environment map, which would require a tiling value of 1. A work-around is to refrain from specifying a sky, instead surrounding the scene with a giant cube mesh that is mapped with the appropriate textures.

The version of Gazebo in Electric supports using 16-bit OpenEXR files as texture maps.

edit flag offensive delete link more

Question Tools


Asked: 2012-03-15 11:10:45 -0500

Seen: 1,632 times

Last updated: Mar 21 '12