Files
XCEngine/docs/api/XCEngine/Rendering/RenderSurface/SetSize.md

34 lines
1.0 KiB
Markdown
Raw Normal View History

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