mirror of
https://github.com/PodeCaradox/GalaxyQuest-SteamFrame.git
synced 2026-10-19 12:01:22 +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>
39 lines
1.2 KiB
C++
39 lines
1.2 KiB
C++
#pragma once
|
|
|
|
#include "Game/Camera/Camera.hpp"
|
|
|
|
class CameraMedianTower : public Camera {
|
|
public:
|
|
CameraMedianTower(const char* pName = "\x92\x86\x93\x5f\x93\x83\x83\x4a\x83\x81\x83\x89");
|
|
|
|
virtual void reset();
|
|
virtual CameraTargetObj* calc();
|
|
virtual CamTranslatorBase* createTranslator();
|
|
|
|
void calcFovyPos(TVec3f*, const TVec3f&, const TVec3f&, const TVec3f&);
|
|
void limitAngularVelocity(TVec3f*, TVec3f*, const TVec3f&, const TVec3f&, const TVec3f&);
|
|
void calcDistance(TVec3f*, const TVec3f&);
|
|
void updateReset(const TVec3f&, const TVec3f&, const TVec3f&);
|
|
|
|
void setParam(const char* pName, const TVec3f& wPoint, const TVec3f& axis, f32 angle, f32 dist, f32 maxDist, f32 partialRate) {
|
|
mString = pName;
|
|
mWPoint.set(wPoint);
|
|
mAxis.set(axis);
|
|
mAngleA = angle;
|
|
mDist = dist;
|
|
mMaxFocusDist = maxDist;
|
|
mPartialRate = partialRate;
|
|
}
|
|
|
|
/* 0x4C */ const char* mString;
|
|
/* 0x50 */ TVec3f mWPoint;
|
|
/* 0x5C */ TVec3f mAxis;
|
|
/* 0x68 */ f32 mAngleA;
|
|
/* 0x6C */ f32 mDist;
|
|
/* 0x70 */ f32 mMaxFocusDist;
|
|
/* 0x74 */ f32 mPartialRate;
|
|
/* 0x78 */ TVec3f mBaseFront;
|
|
/* 0x84 */ bool mIsResetting;
|
|
/* 0x88 */ s32 mInterpolateTime;
|
|
};
|