Ogre Version: 14.5.2
Operating System: Windows 10 (VMWare virtual machine)
Render System: D3D11
Hi everybody,
I am new to Ogre and I am currently trying to migrate a small application from Ogre 1.10 using the D3D9 rendersystem to 14.5 using the D3D11 rendersystem.
The application uses the Ogre::OverlayManager, Ogre::PanelOverlayElement and Ogre::TextAreaOverlayElement to render some text overlay.
I already made basic rendering work for the non-overlay part of the scene but for the text overlay I run into the runtime exception
Code: Select all
Ogre: Ogre::InvalidStateException::InvalidStateException:
RenderSystem does not support FixedFunction, but technique of 'Fonts/Arial' has no Vertex Shader.
Use the RTSS or write custom shaders. in SceneManager::_setPass at
OgreSceneManager.cpp (line 682)
The error mentions the RTSS but I have no clue how I can use that to add shaders to the material.
Or is there another way to make this work for example adding a material for that font?
Does anybody have a short example how I can make this work for the D3D11 Rendersystem?
Maybe this is relevant, so here is the code that creates the font. Note that we do not read a .fontdef file
Code: Select all
// Add the system fonts directory to the resources
auto resourceManager = Ogre::ResourceGroupManager::getSingletonPtr();
auto systemFontDir = QProcessEnvironment::systemEnvironment().value( "SYSTEMROOT" ) + "\\Fonts";
resourceManager->addResourceLocation( systemFontDir.toStdString(), "FileSystem", "FontGroup" );
auto fontManager = Ogre::FontManager::getSingletonPtr();
auto font = fontManager->create( "Arial", "FontGroup" );
// Specifying values manually since .fontdef could not be made working
font->setSource( "arial.ttf" );
font->setTrueTypeSize( 24 );
font->setTrueTypeResolution( 64 );
font->setType( Ogre::FT_TRUETYPE );
font->load();