summaryrefslogtreecommitdiff
path: root/include/m/m_frustum.h
blob: 4b0b34b921f24d3c0b578158ae0bb6741ca3930f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#ifndef M_FRUSTUM_H
#define M_FRUSTUM_H

#include "common.h"
#include "m/m_mtx.h"
#include "nw4r/math/math_geometry.h"

// Bunch of untested assumptions in here
class mFrustum_c {
public:
    void set(f32, f32, f32 near, f32 far, const mMtx_c &mtx);
    void set(f32, f32, f32, f32, f32 near, f32 far, const mMtx_c &mtx, bool);


    /* 0x00 */ mMtx_c mView;
    /* 0x30 */ nw4r::math::PLANE mPlane_0x30;
    /* 0x40 */ nw4r::math::PLANE mPlane_0x40;
    /* 0x50 */ nw4r::math::PLANE mPlane_0x50;
    /* 0x60 */ nw4r::math::PLANE mPlane_0x60;
    /* 0x70 */ f32 mNear;
    /* 0x74 */ f32 mFar;
    /* 0x78 */ nw4r::math::AABB mAabb;
    /* 0x90 */ nw4r::math::PLANE mPlane_0x90;
    /* 0xA0 */ nw4r::math::PLANE mPlane_0xA0;
    /* 0xB0 */ nw4r::math::PLANE mPlane_0xB0;
    /* 0xC0 */ nw4r::math::PLANE mPlane_0xC0;
    /* 0xD0 */ nw4r::math::PLANE mPlane_0xD0;
    /* 0xE0 */ nw4r::math::PLANE mPlane_0xE0;
};

#endif