| 1234567891011121314151617181920212223242526 |
- export module Core.Frustum;
- export import Core.Matrix;
- import Core.Array;
- import Core.Plane;
- export namespace Core {
- class Frustum final {
- Matrix projection;
- Array<Plane, 6> planes;
- float tan;
- float near;
- float far;
- public:
- Frustum(float fieldOfView, float nearClip, float farClip) noexcept;
- const Matrix& updateProjection(const IntVector2& size) noexcept;
- void updatePlanes(
- const Vector3& pos, const Vector3& right, const Vector3& up,
- const Vector3& front, const IntVector2& size) noexcept;
- bool isInside(const Vector3& pos) const noexcept;
- bool isInside(const Vector3& pos, float radius) const noexcept;
- };
- }
|