2026-03-20 02:35:15 +08:00
|
|
|
# Viewport
|
|
|
|
|
|
2026-03-21 15:55:04 +08:00
|
|
|
渲染视口结构体,用于屏幕到归一化坐标的映射。
|
2026-03-20 02:35:15 +08:00
|
|
|
|
2026-03-21 15:55:04 +08:00
|
|
|
**头文件:** `#include <XCEngine/Math/Rect.h>`
|
2026-03-20 02:35:15 +08:00
|
|
|
|
2026-03-21 15:55:04 +08:00
|
|
|
**命名空间:** `XCEngine::Math`
|
2026-03-20 02:35:15 +08:00
|
|
|
|
2026-03-21 15:55:04 +08:00
|
|
|
## 结构体定义
|
2026-03-20 02:35:15 +08:00
|
|
|
|
2026-03-21 15:55:04 +08:00
|
|
|
```cpp
|
|
|
|
|
struct Viewport {
|
|
|
|
|
float x = 0.0f;
|
|
|
|
|
float y = 0.0f;
|
|
|
|
|
float width = 0.0f;
|
|
|
|
|
float height = 0.0f;
|
|
|
|
|
float minDepth = 0.0f;
|
|
|
|
|
float maxDepth = 1.0f;
|
|
|
|
|
|
|
|
|
|
Viewport() = default;
|
|
|
|
|
Viewport(float x, float y, float w, float h);
|
|
|
|
|
Viewport(float x, float y, float w, float h, float minD, float maxD);
|
|
|
|
|
};
|
|
|
|
|
```
|
2026-03-20 02:35:15 +08:00
|
|
|
|
2026-03-21 15:55:04 +08:00
|
|
|
## 构造函数
|
2026-03-20 02:35:15 +08:00
|
|
|
|
|
|
|
|
| 方法 | 描述 |
|
|
|
|
|
|------|------|
|
2026-03-21 15:55:04 +08:00
|
|
|
| `Viewport()` | 默认构造 |
|
|
|
|
|
| `Viewport(x, y, w, h)` | 2D 视口 |
|
|
|
|
|
| `Viewport(x, y, w, h, minD, maxD)` | 带深度范围的 3D 视口 |
|
2026-03-20 02:35:15 +08:00
|
|
|
|
2026-03-21 15:55:04 +08:00
|
|
|
## 方法
|
2026-03-20 02:35:15 +08:00
|
|
|
|
2026-03-21 15:55:04 +08:00
|
|
|
| 方法 | 返回值 | 描述 |
|
|
|
|
|
|------|--------|------|
|
2026-03-26 01:43:14 +08:00
|
|
|
| [GetAspectRatio()](getaspectratio.md) | `float` | 宽高比 (width / height) |
|
|
|
|
|
| [GetRect()](getrect.md) | `Rect` | 转换为 Rect |
|
2026-03-20 02:35:15 +08:00
|
|
|
|
|
|
|
|
## 相关文档
|
|
|
|
|
|
2026-03-21 15:55:04 +08:00
|
|
|
- [Math 模块总览](../math.md) - 返回 Math 模块总览
|
2026-03-26 01:43:14 +08:00
|
|
|
- [Rect](../rect/rect-overview.md) - 浮点矩形
|
|
|
|
|
- [RectInt](../rectint/rectint.md) - 整数矩形
|