调整纹理/ RT的大小

时间:2013-11-19 23:59:29

标签: c++ c directx

我试图在我的应用程序中对一些帧进行双缓冲。但是,双缓冲要求我根据我试图保留额外数据块的区域来更改Texture2D大小。

  1. 为双缓冲区请求每个区域的新CreateTexture2D更好吗?
    • 根据区域大小的变化,调整Texture2D的大小是否有效?不调整大小需要您重新创建 Texture2D资源/请求新的RT。
  2. 或者最好是创建一个Texture2D,它是应用程序的完整场景,只使用所需的部分?
    • 会占用太多内存吗?
    • 是否可以调整着色器以仅对Texture2D的区域应用效果。
  3. 假设应用程序的上下文是3D游戏。

1 个答案:

答案 0 :(得分:1)

假设您在主窗口渲染目标的上下文中表示双缓冲,则应使用Swap Chain,其内置N缓冲支持(例如,将BufferCount设置为2)。当窗口大小发生变化时,请致电ResizeBuffers