场景图 - 在QML下利用Direct3D 11#
展示如何在Qt Quick场景下直接渲染。
在QML下利用Direct3D 11示例展示了一个应用程序如何通过使用beforeRendering()
信号在Qt Quick场景下绘制自定义的D3D11内容。此信号在每一帧的开始时发出,在场景图开始渲染之前,因此任何对此信号做出的响应的D3D11绘制调用都将堆叠在Qt Quick元素之下。
作为替代,希望将在Qt Quick场景上渲染D3D11内容的程序可以通过连接到afterRendering()
信号来实现。
在这个示例中,我们还将看到如何暴露到QML中的值来影响D3D11渲染。我们使用QML文件中的NumberAnimation动画阈值值,这个值被绘制圆形的HLSL着色器程序所使用。
在大多数方面,这个示例与OpenGL Under QML,Metal Under QML和Vulkan Under QML示例等效,它们都渲染相同自定义内容,只是通过不同的本地API。