Files
bigmak94andClaude Opus 5.5 bd9bded792 GalaxyQuest: Super Mario Galaxy in VR on Meta Quest 3
A native port built on the Petari decompilation (previous commit): an
HLE platform layer (OS, DVD, GX, audio, input, NAND) under the game's
own code, an OpenXR presentation (a diorama around the player, a giant
screen, the HUD and settings as compositor layers, SpaceWarp, dynamic
resolution), Touch Plus controls, the tools that convert your own game
files (tools/cook, which also takes the few pieces of data the game's
executable holds from your sys/main.dol), and the port's changes to the
decompilation (`git diff petari-base -- decomp`).  README.md explains
installing and building, docs/TECHNICAL.md how it works.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 01:59:38 +02:00

39 lines
1004 B
C++

#pragma once
#include "Game/Camera/Camera.hpp"
class CameraFixedThere : public Camera {
public:
enum CameraType {
/* 0x0 */ CameraType_GravityUp,
/* 0x1 */ CameraType_WorldUp,
};
CameraFixedThere(const char* pName = "\x82\xbb\x82\xcc\x8f\xea\x92\xe8\x93\x5f\x83\x4a\x83\x81\x83\x89");
virtual ~CameraFixedThere();
virtual void reset();
virtual CameraTargetObj* calc();
virtual bool isCorrectingErpPositionOff() const {
return true;
}
virtual CamTranslatorBase* createTranslator();
void setParam(u32 cameraType, bool isFovyFixed) {
mCameraType = cameraType;
mIsFovyFixed = isFovyFixed;
}
void copyStatusFromPrevCamera();
bool calcEyeDir(TVec3f*);
void makeAxisAndRoll();
void updateUpVec(const TVec3f&);
void updateNormalUpVec(const TVec3f&);
/* 0x4C */ u32 mCameraType;
/* 0x50 */ bool mIsFovyFixed;
/* 0x54 */ TVec3f mUp;
/* 0x60 */ TVec3f mAxis;
/* 0x6C */ f32 mRoll;
};