I've been messing with this for a long time now, Ogre2.1 somehow seems to ignore the z-order of my overlay elements.
I'm using this simple code to create 2 overlays overlapping each other:
Code: Select all
Ogre::v1::OverlayManager* mOverlayMgr = Ogre::v1::OverlayManager::getSingletonPtr();
Ogre::v1::PanelOverlayElement* control1 = static_cast<Ogre::v1::PanelOverlayElement*>(mOverlayMgr->createOverlayElement("Panel", "Panel1"));
control1->setMetricsMode(Ogre::v1::GuiMetricsMode::GMM_PIXELS);
control1->setMaterialName("material1");
control1->setDimensions(200, 100);
control1->setPosition(10, 10);
Ogre::v1::Overlay* overlay1 = mOverlayMgr->create("Overlay1");
overlay1->add2D(control1);
overlay1->setZOrder(100);
overlay1->show();
Ogre::v1::PanelOverlayElement* control2 = static_cast<Ogre::v1::PanelOverlayElement*>(mOverlayMgr->createOverlayElement("Panel", "Panel2"));
control2->setMetricsMode(Ogre::v1::GuiMetricsMode::GMM_PIXELS);
control2->setMaterialName("material2");
control2->setDimensions(200, 100);
control2->setPosition(100, 10);
Ogre::v1::Overlay* overlay2 = mOverlayMgr->create("Overlay2");
overlay2->add2D(control2);
overlay2->setZOrder(1);
overlay2->show();
The hlms materials are one-liner:
Code: Select all
hlms material1 unlit
{
diffuse_map Texture1.png
}
hlms material2 unlit
{
diffuse_map Texture2.png
}
What could be the issue of this problem?
Greetings!