I'm randomly seeing all rendered text and sometimes GUI textures being corrupted. It looks like this:
This is what the texture corruption looks like:
The correct rendering should look like this:
I didn't try to take a video but text flickers between the correct rendering and just being white blocks when I hover over buttons. Also I think the text on the buttons in the middle is not affected because the framewindow is a RTT and the text is only rendered once so it doesn't get updated (at least not often).
What makes this very weird is that sometimes everything is fine (this happens every few restarts of my program) even when I try to hover over the buttons (the correct image). And sometimes only the cursor texture is wrong and the text looks fine, but it flickers quite infrequently.
Here are some screenshot from Renderdoc showing how the actual textures is the source of the invalid rendering:
This doesn't happen on Linux everything works fine there.
Here's a bunch of logs and configuration options (I'm using
Code: Select all
CEGUI_STRING_CLASS=1
cmake configuration:
Code: Select all
-- Cache values
CCACHE_FOUND:FILEPATH=CCACHE_FOUND-NOTFOUND
CEGUI_BUILD_APPLICATION_TEMPLATES:BOOL=OFF
CEGUI_BUILD_COMMON_DIALOGS:BOOL=ON
CEGUI_BUILD_DATAFILES_TEST:BOOL=OFF
CEGUI_BUILD_DYNAMIC_CONFIGURATION:BOOL=ON
CEGUI_BUILD_IMAGECODEC_CORONA:BOOL=OFF
CEGUI_BUILD_IMAGECODEC_DEVIL:BOOL=OFF
CEGUI_BUILD_IMAGECODEC_FREEIMAGE:BOOL=OFF
CEGUI_BUILD_IMAGECODEC_PVR:BOOL=OFF
CEGUI_BUILD_IMAGECODEC_SDL2:BOOL=OFF
CEGUI_BUILD_IMAGECODEC_SILLY:BOOL=ON
CEGUI_BUILD_IMAGECODEC_STB:BOOL=OFF
CEGUI_BUILD_IMAGECODEC_TGA:BOOL=OFF
CEGUI_BUILD_LUA_GENERATOR:BOOL=OFF
CEGUI_BUILD_LUA_MODULE:BOOL=OFF
CEGUI_BUILD_PERFORMANCE_TESTS:BOOL=OFF
CEGUI_BUILD_PYTHON_MODULES:BOOL=OFF
CEGUI_BUILD_RENDERER_DIRECT3D11:BOOL=OFF
CEGUI_BUILD_RENDERER_DIRECTFB:BOOL=OFF
CEGUI_BUILD_RENDERER_IRRLICHT:BOOL=OFF
CEGUI_BUILD_RENDERER_NULL:BOOL=OFF
CEGUI_BUILD_RENDERER_OGRE:BOOL=ON
CEGUI_BUILD_RENDERER_OPENGL:BOOL=OFF
CEGUI_BUILD_RENDERER_OPENGL3:BOOL=OFF
CEGUI_BUILD_RENDERER_OPENGLES:BOOL=OFF
CEGUI_BUILD_RENDERER_OPENGLES2_ALTERNATE:BOOL=OFF
CEGUI_BUILD_RENDERER_OPENGLES2_ALTERNATE_WITH_GLES3_SUPPORT:BOOL=OFF
CEGUI_BUILD_SHARED_LIBS_WITH_STATIC_DEPENDENCIES:BOOL=OFF
CEGUI_BUILD_STATIC_CONFIGURATION:BOOL=OFF
CEGUI_BUILD_STATIC_FACTORY_MODULE:BOOL=OFF
CEGUI_BUILD_SUFFIX:STRING=_d
CEGUI_BUILD_TESTS:BOOL=OFF
CEGUI_BUILD_XMLPARSER_EXPAT:BOOL=ON
CEGUI_BUILD_XMLPARSER_LIBXML2:BOOL=OFF
CEGUI_BUILD_XMLPARSER_RAPIDXML:BOOL=OFF
CEGUI_BUILD_XMLPARSER_TINYXML:BOOL=OFF
CEGUI_BUILD_XMLPARSER_TINYXML2:BOOL=OFF
CEGUI_BUILD_XMLPARSER_XERCES:BOOL=OFF
CEGUI_DATA_INSTALL_DIR:BOOL=OFF
CEGUI_DOC_INSTALL_DIR:BOOL=OFF
CEGUI_HAS_DEFAULT_LOGGER:BOOL=ON
CEGUI_HAS_FREETYPE:BOOL=ON
CEGUI_HAS_MINIZIP_RESOURCE_PROVIDER:BOOL=OFF
CEGUI_HAS_PCRE_REGEX:BOOL=ON
CEGUI_INCLUDE_INSTALL_DIR:BOOL=OFF
CEGUI_INSTALL_WITH_RPATH:BOOL=OFF
CEGUI_LIB_INSTALL_DIR:BOOL=OFF
CEGUI_MODULE_INSTALL_DIR:BOOL=OFF
CEGUI_MSVC_STATIC_RUNTIME:BOOL=OFF
CEGUI_OPTION_DEFAULT_IMAGECODEC:STRING=SILLYImageCodec
CEGUI_OPTION_DEFAULT_XMLPARSER:STRING=ExpatParser
CEGUI_OPTION_SAFE_LUA_MODULE:BOOL=OFF
CEGUI_PKGCONFIG_INSTALL_DIR:BOOL=OFF
CEGUI_SAMPLES_ENABLED:BOOL=OFF
CEGUI_SAMPLE_INSTALL_DIR:BOOL=OFF
CEGUI_STATIC_IMAGECODEC_MODULE:STRING=CEGUISILLYImageCodec
CEGUI_STATIC_XMLPARSER_MODULE:STRING=CEGUIExpatParser
CEGUI_STRING_CLASS:STRING=1
CEGUI_USE_FRIBIDI:BOOL=OFF
CEGUI_USE_MINIBIDI:BOOL=OFF
CEGUI_USE_RAQM:BOOL=ON
CEGUI_WARNINGS_AS_ERRORS:BOOL=OFF
CMAKE_BUILD_TYPE:STRING=Release
CMAKE_CONFIGURATION_TYPES:STRING=Debug;Release;MinSizeRel;RelWithDebInfo
CMAKE_INSTALL_PREFIX:PATH=C:/projects/Thrive/ThirdParty/leviathan/build/ThirdParty
CMAKE_PREFIX_PATH:PATH=C:/projects/Thrive/ThirdParty/leviathan/ThirdParty/cegui/dependencies
OGRE_FRAMEWORK_PATH:STRING=NOTFOUND
PCRE_DEFINITIONS_STATIC:STRING=PCRE_STATIC
SFML_INCLUDE_DIR:PATH=C:/projects/Thrive/ThirdParty/leviathan/build/ThirdParty/include
_LIB_PATH:FILEPATH=C:/projects/Thrive/ThirdParty/leviathan/ThirdParty/cegui/dependencies/lib/static/jpeg_d.lib
CEGUI log file important part:
Code: Select all
---- Version: 9999.0.0 (Build: Oct 25 2017 Microsoft Windows MSVC++ 14.0 (2015) 64 bit) ----
25/10/2017 15:18:45 (Std) ---- Renderer module is: CEGUI::OgreRenderer - OGRE based 3rd generation renderer module with Ogre::Compositor2 enabled. ----
25/10/2017 15:18:45 (Std) ---- XML Parser module is: CEGUI::ExpatParser - Official expat based parser module for CEGUI ----
25/10/2017 15:18:45 (Std) ---- Image Codec module is: OgreImageCodec - Integrated ImageCodec using the Ogre engine. ----
25/10/2017 15:18:45 (Std) ---- Scripting module is: None ----
Nothing interesting in the Ogre log. But Ogre seems to correctly load non-gui textures
I'm not 100% certain where the issue is (whether it is in my code, CEGUI or Ogre, or something weird is going on due to the way I've setup my library compilation). So does anyone have any ideas?