27 lines
512 B
Markdown
27 lines
512 B
Markdown
|
|
# Frustum::Intersects (bounds)
|
||
|
|
|
||
|
|
```cpp
|
||
|
|
bool Intersects(const Bounds& bounds) const
|
||
|
|
```
|
||
|
|
|
||
|
|
检测轴对齐包围盒是否与视锥体相交。
|
||
|
|
|
||
|
|
**参数:**
|
||
|
|
- `bounds` - 要检测的轴对齐包围盒
|
||
|
|
|
||
|
|
**返回:** `bool` - 与视锥相交返回 true
|
||
|
|
|
||
|
|
**复杂度:** O(1)
|
||
|
|
|
||
|
|
**示例:**
|
||
|
|
|
||
|
|
```cpp
|
||
|
|
Frustum frustum = camera.CalculateFrustum();
|
||
|
|
for (const auto& object : sceneObjects) {
|
||
|
|
if (frustum.Intersects(object.bounds)) {
|
||
|
|
// 物体与视锥相交,需要渲染
|
||
|
|
Render(object);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
```
|