I might have found the problem.

server/rendering/OgreAdaptor.cc line 180 :

  this->sceneMgr->setFog(Ogre::FOG_LINEAR, *this->backgroundColor, 0, 1000, 1000);

According to the Ogre documentation :

void Ogre::SceneManager::setFog      (       FogMode        mode = FOG_NONE,
        const ColourValue &      colour = ColourValue::White,
        Real      expDensity = 0.001,
        Real      linearStart = 0.0,
        Real      linearEnd = 1.0
    )     
     
Parameters:
        mode     Set up the mode of fog as described in the FogMode enum, or set to FOG_NONE to turn off.
        colour     The colour of the fog. Either set this to the same as your viewport background colour, or to blend in with a skydome or skybox.
        expDensity     The density of the fog in FOG_EXP or FOG_EXP2 mode, as a value between 0 and 1. The default is 0.001.
        linearStart     Distance in world units at which linear fog starts to encroach. Only applicable if mode is FOG_LINEAR.
        linearEnd     Distance in world units at which linear fog becomes completely opaque. Only applicable if mode is FOG_LINEAR.



So the last but one parameter is wrong, instead of 1000 should be 0.something .
BUT we are using FOG_LINEAR and hence that parameter should not influence. In fact, playing with it, it really don't seems to change anything, even as high as 100.
But setting it to 1000 will give the black screen.

Tomorrow I will send a bug report to Ogre and send a proper patch to Gazebo (I made some code refactoring while reading the code) if someone can reproduce my same result.

I'll appreciate if someone can just comment that line, recompile and see if the black screen problem went away.

Thank you very much for all the information you gave.


--
Jordi Polo Carres
Natural language processing laboratory
NAIST
http://www.bahasara.org