在渲染场景的时候,一般来说分辨率和输出大小,也就是窗口大小相同。但在移动平台上,基本上没机会让你随便切换分辨率,都是只告诉你大小。在这时候,你如果想要用特定的分辨率渲染,就不可避免需要一次放缩。另一个常见的情况是,如果一个平台性能达不到需要的帧速率,也需要渲染较小的图之后,拉伸到指定分辨率。在XBox 360等console平台,有个专门的硬件放缩机制,只要打开就能自动把输入图像拉伸到720p或1080i/p(DX11.2才开始引入这样的机制)。但在PC和移动平台上,这个事情得在引擎里自己完成。所以在post process后端,加一个resizer就成了必然之选。
框架
这个放缩的框架很简单,把窗口大小填充给screen resolution,而渲染的分辨 ...