blob: e3c2024adc73647fdcbe0fde845c92eca0e89666 (
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
#ifndef D_T_VIEW_CLIP_H
#define D_T_VIEW_CLIP_H
#include "d/d_area.h"
#include "d/t/d_tg.h"
class dTgViewClip_c : public dTg_c {
public:
static const s32 sNumEntries = 0x40;
enum Flag_e {
FLAG_NORMAL = 0,
FLAG_FORCE_ON = (1 << 0),
FLAG_FORCE_OFF = (1 << 1),
};
enum Type_e {
TYPE_FORCE_ON,
TYPE_FORCE_OFF,
};
dTgViewClip_c() {}
virtual ~dTgViewClip_c() {}
virtual int create() override;
virtual int doDelete() override;
virtual int draw() override;
virtual int actorExecute() override;
void setViewClip(u8 setBit);
static void resetViewClip();
static f32 getCull(s32 idx, f32 cullDistance);
static bool checkForceOn(s32 idx);
static u8 getViewClipBit(s32 idx, u8 setBit);
static void setViewClipBit(s32 idx, u8 setBit);
static void setViewClip(s32 idx, u8 value);
private:
/* 0x0DC */ dArea_c mArea;
/* 0x12C */ u8 mIndex;
/* 0x12D */ u8 mType;
/* 0x12E */ u8 mAreaIndex;
static u8 sViewClips[sNumEntries];
};
#endif
|