SMG-Decomp
A decompilation of Super Mario Galaxy 1
Loading...
Searching...
No Matches
OceanRingDrawer.hpp
1#pragma once
2
3#include <revolution.h>
4#include <JSystem/JGeometry.hpp>
5#include <JSystem/JUtility/JUTTexture.hpp>
6
7class OceanRing;
8
10public:
11 OceanRingPartDrawer(const OceanRing *, int, int, bool, f32 *, f32 *, f32 *);
12
13 void initDisplayList(f32 *, f32 *, f32*);
14 void draw() const;
15 void drawGD(f32 *, f32 *, f32 *) const;
16 void drawDynamic() const;
17 void drawDynamicBloom() const;
18
19 const OceanRing* mOceanRing; // _0
20 TVec3f mPosition; // _4
21 int _10;
22 int _14;
23 bool _18;
24 u8 _19;
25 u8 _1A;
26 u8 _1B;
27 f32 _1C;
28 f32 _20;
29 f32 _24;
30 u32 mDispListLength; // _28
31 u8* mDispList; // _2C
32};
33
35public:
37
38 void update();
39 void draw() const;
40 void drawBloom() const;
41 void initParts();
42 void initDisplayList();
43 void drawGD() const;
44 void loadMaterial() const;
45 void loadMaterialBloom() const;
46
47 OceanRingPartDrawer* getDrawer(int idx) const {
48 return mPartDrawers[idx];
49 }
50
51 inline f32 someInline(f32 a1, f32 a2, f32 a3) const {
52 return (a1 - a2) / a3;
53 }
54
55 const OceanRing* mRing; // _0
56 s32 mDrawerCount; // _4
57 OceanRingPartDrawer** mPartDrawers; // _8
58 f32 _C;
59 f32 _10;
60 f32 _14;
61 f32 _18;
62 f32 _1C;
63 f32 _20;
64 JUTTexture* mWaterTex; // _24
65 JUTTexture* mWaterIndTex; // _28
66 u32 _2C;
67 u8* mDispList; // _30
68};