Details
-
Bug
-
Resolution: Unresolved
-
P2: Important
-
None
-
5.10, 5.11, 5.12.0
-
None
-
Intel HD Graphics 5500
Description
Bug is hardware dependent. Affects only computers with Intel HD Graphics 5500, even if there is second, dedicated GPU available. Crashes only if QML PBR material is used.
Steps to reproduce:
> MinGW 32/64 toolchain
> Run Qt pbr-materials example
Stack trace from:
> Lenovo Ideapad 100-15|BD
> Intel HD Graphics 5500 / GeForce 920M
C:/devTools/Qt/5.12.2/Src/qt3d/src/render/renderers/opengl/graphicshelpers/graphicshelpergl4.cpp 161 stack Frame #9 C:/devTools/Qt/5.12.2/Src/qt3d/src/render/renderers/opengl/graphicshelpers/graphicshelpergl4.cpp 161 stack Frame #9 C:/devTools/Qt/5.12.2/Src/qt3d/src/render/renderers/opengl/graphicshelpers/graphicscontext.cpp 447 stack Frame #10 C:/devTools/Qt/5.12.2/Src/qt3d/src/render/renderers/opengl/renderer/renderer.cpp 1875 stack Frame #11 C:/devTools/Qt/5.12.2/Src/qt3d/src/render/renderers/opengl/renderer/renderer.cpp 2033 stack Frame #12 C:/devTools/Qt/5.12.2/Src/qt3d/src/render/renderers/opengl/renderer/renderer.cpp 1525 stack Frame #13 C:/devTools/Qt/5.12.2/Src/qt3d/src/render/renderers/opengl/renderer/renderer.cpp 714 stack Frame #14 C:/devTools/Qt/5.12.2/Src/qt3d/src/render/renderers/opengl/renderer/renderer.cpp 613 stack Frame #15 C:/devTools/Qt/5.12.2/Src/qt3d/src/render/backend/renderthread.cpp 84 stack Frame #16 C:/devTools/Qt/5.12.2/Src/qtbase/src/corelib/thread/qthread_win.cpp 403 stack Frame #17
Force workaround:
> Open device manager
> Go to graphic cards
> Manually disable integrated Intel HD
System workaround:
> Open Nvidia drivers control panel (next to system clock)
> 'Manage 3d settings'
> Set dedicated GPU as the default one
Software workaround:
> Thanks to Christopher Oezbek
> Add this on the top of yours main.cpp file
extern "C" { __declspec(dllexport) int AmdPowerXpressRequestHighPerformance = 1; __declspec(dllexport) unsigned long NvOptimusEnablement = 0x00000001; }
In my opinion:
1. Qt3D applications should enforce dedicated GPU by default if possible, or there should be an API/MACRO to do this, with appropriate info in docs.
2. Why there is so many bugs with HD Graphics 5500? Whats wrong with this them?