DXGI——DirectX Graphics Infrastructure

来源:互联网 发布:英文原著推荐 知乎 编辑:程序博客网 时间:2024/04/28 12:23

Windows MSDN:Windows DXGI Overview



一:介绍



可见DXGI是windows系统中用户模式下最底层的图形设备接口。不管是Direct 2D 还是 Direct 3D都基于其上。因此,DXGI 直接与硬件驱动打交道。



二:重要概念

2.1 基本概念

由于Windows闭源,因此对于DXGI的实现没有更多的公开细节,预留的 API 操作接口也相当少,其主要的作用就是枚举。其中重要的几个概念如图:



IDXGIFactory :完成枚举的主控工厂;

IDXGIAdapter:Adapter为对硬件设备及其功能的一个抽象,简单理解为一个硬件设备就好了;

IDXGIOutput :每个硬件设备上可能有多个输出接口,因此每个接口对应一个Output。


2.2 交换链

图像输出过程大概如下:


Video Memory负责缓存图像,而对于交换链可简单理解为缓存的 buffer 控制。一般交换链有多个缓冲区,一个前缓冲(为正在显示的buffer),一个或者多个后缓冲。(例如:一帧图像在显示的时候,另一帧图像在一个后缓冲buffer中处理并等待显示,如下图:)





 注:了解 DXGI 以及 交换链 的概念对学习 Direct2D 和 Direct3D 很有帮助。




0 0
原创粉丝点击