admin管理员组

文章数量:1627754

DXGI 概述

Microsoft DirectX 图形基础结构 (DXGI) 认识到,某些图形部分的发展速度比其他部分更慢。 DXGI 的主要目的是管理可独立于 DirectX 图形运行时的低级别任务。 DXGI 为未来图形组件提供了通用框架;使用 DXGI 的第一个组件是 Microsoft Direct3D 10。

在以前版本的 Direct3D 中,诸如一下功能,等底层任务都包含在 Direct3D 运行时中。 这些任务现在在 DXGI 中实现。

  • 硬件设备的枚举、
  • 将呈现的帧呈现到输出、
  • 控制伽玛
  • 管理全屏转换

DXGI 的用途是与内核模式驱动程序和系统硬件进行通信,如下图所示。

应用程序可以直接访问 DXGI,或调用 D3D11 D3D11、D3D10 和 D3D10 中的 Direct3D Api, _ _ 后者可处理与 DXGI 通信的情况。 如果你的应用程序需要枚举设备或控制向输出显示数据的方式,你可能想要直接使用 DXGI。

总结

在以前图形子系统都归D3D,结果D3D8/D3D9分别有一套代码用来管理swap chain。图形API越来越多,D3D9/D3D10/D3D11/D3D12,都来一套swap chain太没意义了。于是重构成所有API可以共享一份swap chain的代码,这就放在DXGI。除此之外,窗口全屏化之类的事情也都归DXGI了,你可以认为屏幕输出的部分都归DXGI。

不论是 OGL 还是 D3D,都没有包含与窗口(HWND&

本文标签: DXGIGraphicsWindowsInfrastructure