mirror of
https://github.com/PodeCaradox/GalaxyQuest-SteamFrame.git
synced 2026-10-18 20:01:20 +02:00
The sources of Petari (https://github.com/SMGCommunity/Petari), the Super Mario Galaxy decompilation by the SMGCommunity, at commit 0a5c6608dc3b4c44a9aa68c2535d1793dc565f02, unchanged but for LF line endings: LICENSE (as LICENSE-Petari.txt; CC0 1.0), include/, libs/ and src/. Left out: the game data Petari keeps from the original executable, the error message archive (include/Game/System/ ErrorArchive.hpp) and two tables (src/Game/System/GalaxyID.bcsv and StoryEvent.bcsv); GalaxyQuest's converter takes them from the player's own disc. The port's changes follow in the next commit, so `git diff petari-base -- decomp` shows them. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
83 lines
2.1 KiB
C++
83 lines
2.1 KiB
C++
#pragma once
|
|
|
|
#include "Game/NameObj/NameObj.hpp"
|
|
#include <JSystem/JGeometry/TVec.hpp>
|
|
|
|
class J3DModelX;
|
|
class Triangle;
|
|
class JUTTexture;
|
|
|
|
class CollisionShadow : public NameObj {
|
|
public:
|
|
CollisionShadow(f32, f32);
|
|
|
|
virtual ~CollisionShadow();
|
|
virtual void draw() const;
|
|
|
|
void setMode(u32);
|
|
void create(const TVec3f&, const TVec3f&, const TVec3f&);
|
|
void calcView(J3DModelX*, u32, J3DModelX*);
|
|
void drawAndCaptureTex(J3DModelX*, const TVec3f&);
|
|
void clearAlphaBuffer();
|
|
void setUpdateFlag();
|
|
void draw1() const;
|
|
void sendVtx() const;
|
|
void sendZsortedVtx(bool) const;
|
|
void initCaptureTex();
|
|
void setViewMtx(const TVec3f&);
|
|
void drawVolumeBox(const TVec3f&, const TVec3f&) const;
|
|
void draw2() const;
|
|
void draw3() const;
|
|
void createDL();
|
|
void drawVolume() const;
|
|
void doSortPolygons();
|
|
const TVec3f& getDrawPos(u32) const;
|
|
const TVec3f& getDrawPos(u32, u32) const;
|
|
const TVec2f& getDrawTx(u32, u32) const;
|
|
|
|
/* 0x00C */ u8 _C;
|
|
/* 0x00E */ u16 _E;
|
|
/* 0x010 */ f32 _10;
|
|
/* 0x014 */ f32 _14;
|
|
/* 0x018 */ f32 _18;
|
|
/* 0x01C */ f32 _1C;
|
|
/* 0x020 */ f32 _20;
|
|
/* 0x024 */ TVec3f _24;
|
|
/* 0x030 */ TVec3f _30;
|
|
/* 0x03C */ TVec3f _3C;
|
|
/* 0x048 */ TVec3f _48;
|
|
/* 0x054 */ u32 _54;
|
|
/* 0x058 */ u16 _58;
|
|
/* 0x05A */ u16 _5A;
|
|
/* 0x05C */ u8* _5C;
|
|
/* 0x060 */ TVec3f* _60;
|
|
/* 0x064 */ TVec2f* _64;
|
|
/* 0x068 */ u16* _68;
|
|
/* 0x06C */ u16 _6C;
|
|
/* 0x06E */ u16 _6E;
|
|
/* 0x070 */ u8 _70[128];
|
|
/* 0x0F0 */ s32 _F0[128];
|
|
/* 0x2F0 */ TVec3f _2F0;
|
|
/* 0x2FC */ u16 _2FC;
|
|
/* 0x2FE */ u16 _2FE;
|
|
/* 0x300 */ JUTTexture* _300;
|
|
/* 0x304 */ u8 _304;
|
|
/* 0x305 */ bool _305;
|
|
/* 0x306 */ u8 _306;
|
|
/* 0x307 */ u8 _307;
|
|
/* 0x308 */ u16 _308;
|
|
/* 0x30C */ f32 _30C;
|
|
/* 0x310 */ f32 _310;
|
|
/* 0x314 */ TVec3f _314;
|
|
/* 0x320 */ TVec3f _320;
|
|
/* 0x32C */ Triangle* _32C;
|
|
/* 0x330 */ Triangle* _330;
|
|
/* 0x334 */ Triangle* _334;
|
|
/* 0x338 */ u16 _338;
|
|
/* 0x33A */ u16 _33A;
|
|
/* 0x33C */ u16 _33C;
|
|
/* 0x340 */ J3DModelX* _340;
|
|
/* 0x344 */ u8* _344;
|
|
/* 0x348 */ u16 _348;
|
|
};
|