DXGI_SWAP_CHAIN_DESC 结构 (dxgi.h)

描述交换链。

语法

typedef struct DXGI_SWAP_CHAIN_DESC {
  DXGI_MODE_DESC   BufferDesc;
  DXGI_SAMPLE_DESC SampleDesc;
  DXGI_USAGE       BufferUsage;
  UINT             BufferCount;
  HWND             OutputWindow;
  BOOL             Windowed;
  DXGI_SWAP_EFFECT SwapEffect;
  UINT             Flags;
} DXGI_SWAP_CHAIN_DESC;

成员

BufferDesc

类型: DXGI_MODE_DESC

描述 backbuffer 显示模式 的DXGI_MODE_DESC 结构。

SampleDesc

类型: DXGI_SAMPLE_DESC

描述多采样参数 的DXGI_SAMPLE_DESC 结构。

BufferUsage

类型: DXGI_USAGE

描述后台缓冲区的表面使用情况和 CPU 访问选项的 DXGI_USAGE 枚举类型的成员。 后台缓冲区可用于着色器输入或呈现目标输出。

BufferCount

类型: UINT

一个 值,该值描述交换链中的缓冲区数。 调用 IDXGIFactory::CreateSwapChain 创建全屏交换链时,通常会在此值中包含前缓冲区。 有关交换链缓冲区的详细信息,请参阅备注。

OutputWindow

类型: HWND

输出窗口的 HWND 句柄。 此成员不得为 NULL

Windowed

类型: BOOL

一个布尔值,指定输出是否处于窗口模式。 如果输出处于窗口模式,则为 TRUE;否则为 FALSE

建议创建窗口交换链,并允许最终用户通过 IDXGISwapChain::SetFullscreenState 将交换链更改为全屏;也就是说,不要将此成员设置为 FALSE 以强制交换链全屏显示。 但是,如果将交换链创建为全屏,则还会通过 BufferDesc 成员为最终用户提供受支持的显示模式列表,因为使用不受支持的显示模式创建的交换链可能会导致屏幕变黑并阻止最终用户看到任何内容。

有关选择全屏开窗的诗句的详细信息,请参阅 IDXGIFactory::CreateSwapChain

SwapEffect

类型: DXGI_SWAP_EFFECT

DXGI_SWAP_EFFECT枚举类型的成员,该类型描述在呈现图面后处理演示缓冲区内容的选项。

Flags

类型: UINT

描述交换链行为选项的 DXGI_SWAP_CHAIN_FLAG 枚举类型的成员。

备注

GetDescCreateSwapChain 方法使用此结构。

在全屏模式下,有一个专用的前面缓冲区;在窗口模式中,桌面是前缓冲区。

如果创建具有一个缓冲区的交换链,则指定 DXGI_SWAP_EFFECT_SEQUENTIAL 不会导致将单个缓冲区的内容与前缓冲区交换。

有关在全屏应用程序中翻转交换链缓冲区的性能信息,请参阅 全屏应用程序性能提示

要求

   
标头 dxgi.h

请参阅

DXGI 结构

IDXGIFactory::CreateSwapChain

IDXGISwapChain