\titleQt 3D Render QML Types \since 5.7

\ingroupqmlmodules \ingroup qt3d-qmlmodules

To import and use the module's QML types, use the following statement:

 import Qt3D.Render 2.6

Selecting a Rendering Backend

The Render aspect comes with two rendering backends.

  • OpenGL backend (ES 2, ES 3.2, GL 2, GL 3, GL 3.2, GL 4.3)
  • RHI backend (ES 2, GL, DirectX, Vulkan, Metal)

If you are targeting OpenGL exclusively and are using specific OpenGL features, you might be better off using the OpenGL backend. This is the OpenGL backend that Qt 3D exclusively used in the Qt 5 series.

For cases where you are not using specific OpenGL features and want to target different platforms that might have deprecated OpenGL, using the RHI backend is a better alternative.

To select your rendering backend, the environment variable QT3D_RENDERER is to be set to either "opengl" or "rhi". Defaults to the OpenGL backend.

When using the RHI backend, you can further force the internal RHI backend by setting the QSG_RHI_BACKEND to one of the following values:

  • opengl -> RHI OpenGL backend
  • gl -> RHI OpenGL backend
  • gles2 -> RHI OpenGL backend
  • metal -> RHI Metal backend
  • vulkan -> RHI Vulkan backend
  • d3d11 -> RHI DirectX 11 backend

If not specified, RHI will default to what it deduces to be the best backend for the platform.

Alternatively, if using a QQuickWindow, QQuickWindow::setGraphicsApi() can be used to specify the RHI internal rendering backend.