1#pragma once
2
3#include "nn/types.h"
4
5namespace nn::util::neon {
6class MatrixRowMajor4x3fType;
7}
8
9namespace nn::g3d {
10class Aabb;
11class Sphere;
12
13class ViewVolume {
14public:
15 void SetPerspective(f32, f32, f32, f32, const nn::util::neon::MatrixRowMajor4x3fType&);
16 void SetFrustum(f32, f32, f32, f32, f32, f32, const nn::util::neon::MatrixRowMajor4x3fType&);
17 void SetOrtho(f32, f32, f32, f32, f32, f32, const nn::util::neon::MatrixRowMajor4x3fType&);
18 bool TestIntersection(const nn::g3d::Sphere&);
19 s32 TestIntersectionEx(const nn::g3d::Sphere&);
20 bool TestIntersection(const nn::g3d::Aabb&);
21 s32 TestIntersectionEx(const nn::g3d::Aabb&);
22
23private:
24 void* filler[29];
25};
26} // namespace nn::g3d
27