mirror of
https://github.com/PodeCaradox/GalaxyQuest-SteamFrame.git
synced 2026-10-19 13:01:18 +02:00
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>
45 lines
1.4 KiB
C++
45 lines
1.4 KiB
C++
#pragma once
|
|
|
|
#include "Game/Camera/Camera.hpp"
|
|
|
|
class CameraWaterPlanetBoss : public Camera {
|
|
public:
|
|
CameraWaterPlanetBoss(const char* pName = "\x90\x85\x92\x86\x83\x76\x83\x89\x83\x6c\x83\x62\x83\x67\x83\x7b\x83\x58");
|
|
|
|
virtual void reset();
|
|
virtual CameraTargetObj* calc();
|
|
virtual bool isEnableToReset() const {
|
|
return true;
|
|
}
|
|
virtual CamTranslatorBase* createTranslator();
|
|
|
|
void setParam(f32 distMin, f32 distMax, f32 blendRateMin, bool blendUpEnabled, const TVec3f wPoint, f32 dotFrontMin, f32 dotFrontMax,
|
|
f32 angleXMin, f32 angleXMax) {
|
|
mDistMin = distMin;
|
|
mDistMax = distMax;
|
|
mSideBlendRateMin = blendRateMin;
|
|
mIsBlendUpEnabled = blendUpEnabled;
|
|
mWPoint.set(wPoint);
|
|
mDotFrontMin = dotFrontMin;
|
|
mDotFrontMax = dotFrontMax;
|
|
mAngleXMin = angleXMin;
|
|
mAngleXMax = angleXMax;
|
|
}
|
|
|
|
/* 0x4C */ f32 mDistMin;
|
|
/* 0x50 */ f32 mDistMax;
|
|
/* 0x54 */ f32 mSideBlendRateMin;
|
|
/* 0x58 */ f32 mSideBlendRate;
|
|
/* 0x5C */ s32 mCollideCount;
|
|
/* 0x60 */ TVec3f mLastMoveDir;
|
|
/* 0x6C */ bool mIsBlendUpEnabled;
|
|
/* 0x70 */ TVec3f mWPoint;
|
|
/* 0x7C */ f32 mDotFrontMin;
|
|
/* 0x80 */ f32 mAngleXMin;
|
|
/* 0x84 */ f32 mDotFrontMax;
|
|
/* 0x88 */ f32 mAngleXMax;
|
|
/* 0x8C */ bool mIsRounding;
|
|
/* 0x90 */ s32 mRoundingFrame;
|
|
/* 0x94 */ TVec3f mSide;
|
|
};
|