我有一个视口,用Direct2D绘制一些形状。目前当我改变某些东西时,例如我将一个矩形区域从红色变为绿色,我首先清除渲染目标,然后使用新属性重新绘制所有形状。 由于我知道修改的矩形区域的位置和大小,是否有一种方法只清除和重新绘制更新的部分,而不是重新绘制我拥有的所有形状?
关于以下内容的文档: IDXGISwapChain1::Present1( UINT SyncInterval, UINT PresentFlags, [in] const DXGI_PRESENT_PARAMETERS *pPresentParameters); 指出: 应用程序可以使用Present1来通过指定滚动和脏矩形来优化呈现。 有关修改矩形的信息是通过*pPresentParameters参数提供的。详情请参见: DXGI_PRESENT_PARAMETERS结构