SMG-Decomp
A decompilation of Super Mario Galaxy 1
Loading...
Searching...
No Matches
CamTranslatorInnerCylinder.cpp
1#include "Game/Camera/CameraParamChunk.hpp"
2#include "Game/Camera/CamTranslatorInnerCylinder.hpp"
3#include "Game/Util/MathUtil.hpp"
4
5void CamTranslatorInnerCylinder::setParam(const CameraParamChunk *pChunk) {
6 CameraGeneralParam *general = pChunk->mGeneralParam;
7
8 TVec3f axis = general->mAxis;
9
10 if (MR::isNearZero(axis, 0.001f)) {
11 axis.set(0.0f, 0.0f, 1.0f);
12 }
13 else {
14 MR::normalize(&axis);
15 }
16
17 CameraInnerCylinder *camera = mCamera;
18
19 TVec2f angle = TVec2f(general->mAngleA, general->mAngleB);
20 f32 dist;
21 f32 upX;
22
23 upX = general->mUp.x;
24 dist = general->mDist;
25
26 camera->mWPoint.set(general->mWPoint);
27 camera->mAxis.set(axis);
28 camera->mAngleA = angle.x;
29 camera->mAngleB = angle.y;
30 camera->mDist = dist;
31 camera->mUpX = upX;
32}
33
34Camera *CamTranslatorInnerCylinder::getCamera() const {
35 return mCamera;
36}