调整纹理/RT的大小

Resizing texture/RT

本文关键字:RT 纹理 调整      更新时间:2023-10-16

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

  1. 为双缓冲区的每个区域请求一个新的CreateTexture2D更好吗?
    • 根据区域大小的变化,调整Texture2D的大小是否是有效的解决方案?调整大小不需要重新创建Texture2D资源/请求新的RT
  2. 还是最好创建一个Texture2D,它是应用程序的完整场景,并且只使用所需的部分?
    • 这会占用太多内存吗
    • 是否可以调整着色器以仅在Texture2D的区域上应用上的效果

假设应用程序的上下文是一个3D游戏。

假设您的意思是在主窗口渲染目标的上下文中使用双缓冲,那么您应该使用Swap Chain,它内置了N缓冲支持(例如,将BufferCount设置为2)。当窗口大小发生变化时,调用ResizeBuffers