# RenderSurface::SetSize 更新 surface 的宽度和高度。 ```cpp void SetSize(uint32_t width, uint32_t height); ``` ## 参数 - `width` - 新的 surface 宽度。 - `height` - 新的 surface 高度。 ## 行为说明 当前实现会: 1. 直接覆盖内部 `m_width` 和 `m_height`。 2. 如果当前启用了自定义 render area,再把已保存的矩形重新 clamp 到新的尺寸范围内。 3. 不修改颜色附件、深度附件、clear-color override、自动状态切换开关和颜色状态前后值。 ## 当前实现边界 - `SetSize()` 不会验证已绑定附件的真实尺寸是否与新 surface 一致。 - 如果尺寸改小,自定义 render area 可能被裁剪,甚至变成 `0 x 0` 的空区域。 - 如果没有启用自定义 render area,后续 [GetRenderArea](GetRenderArea.md) 会自动退回 `(0, 0, width, height)`。 ## 相关文档 - [RenderSurface](RenderSurface.md) - [GetWidth](GetWidth.md) - [GetHeight](GetHeight.md) - [SetRenderArea](SetRenderArea.md) - [GetRenderArea](GetRenderArea.md)