QRhiD3D12InitParams 结构体

Direct3D 12 特定初始化参数。 更多信息...

头文件 #include <QRhiD3D12InitParams>
CMakefind_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmakeQT += gui
继承 QRhiInitParams

公有变量

详细说明

注意:这是一个有限兼容性保证的 RHI API,有关详情请参阅 QRhi

基于 D3D12 的 QRhi 不需要特别的初始化参数。如果需要,可以将 enableDebugLayer 设置为 true 来启用 Direct3D 调试层。这在开发期间可能很有用,但在生产构建中应避免使用。

QRhiD3D12InitParams params;
params.enableDebugLayer = true;
rhi = QRhi::create(QRhi::D3D12, &params);

注意:QRhiSwapChain 应仅与将表面类型设置为 QSurface::Direct3DSurfaceQWindow 实例一起使用。

处理现有的 Direct3D 12 设备

当与其他图形引擎交互时,可能需要获取一个使用相同 Direct3D 设备的 QRhi 实例。这可以通过将 QRhiD3D12NativeHandles 的指针传递给 QRhi::create() 来实现。 QRhi 不拥有任何外部对象。

有时,例如当与 OpenXR 结合使用 QRhi 时,可能需要指定要使用的适配器,以及可选地指定要在设备上请求的功能级别,同时将设备创建留给 QRhi。这可以通过设置设备指针为 null,同时指定适配器 LUID 和功能级别来实现。

还可以通过设置 commandQueue 为非空值来指定 ID3D12CommandQueue。

成员变量文档

bool QRhiD3D12InitParams::enableDebugLayer

当设置为 true 时,如果已安装且可用,将启用调试层。默认值为 false。

© 2024 Qt 公司有限公司。本文件中包含的文档贡献版权归其所有者所有。本提供的文档是根据自由软件基金会发布的 GNU 自由文档许可协议版本 1.3 许可的。Qt 及其相关标志是芬兰 Qt 公司及其在全世界其他国家的 商标。所有其他商标均为其各自所有者的财产。