0

我正在尝试将我的程序从使用 bitblt 模型交换链(使用 DXGI_SWAP_EFFECT_DISCARD 创建的,大多数示例使用的默认值)更改为翻转模型交换链(DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL),因为它更快。

问题是,该应用程序有一个菜单栏,而 D3D 将坐标视为相对于窗口的客户区(就好像窗口没有菜单栏一样)。它不会在菜单栏顶部绘制,而是菜单栏会阻挡在其下方绘制的任何内容。DXGI_SWAP_EFFECT_DISCARD 交换链不会发生这种情况。

另一个奇怪的事情是,当我调整窗口大小时(在应用程序运行时手动),它有时会正确渲染,左上角坐标从菜单栏之后开始。

平台信息:Direct3D 11.1、Windows 8.1、Visual Studio 2013 (C++)

有什么想法有什么问题吗?

4

0 回答 0