Files
tp/include/JSystem/J3DGraphBase/J3DStruct.h
T

88 lines
2.1 KiB
C++
Raw Normal View History

2021-03-28 22:49:05 +02:00
#ifndef J3DSTRUCT_H
#define J3DSTRUCT_H
2023-05-12 12:10:14 -07:00
#include "dolphin/gx/GXStruct.h"
2023-09-05 11:08:56 -07:00
#include "dolphin/mtx/mtx.h"
#include "dolphin/mtx/mtx44.h"
#include "dolphin/mtx/vec.h"
2021-03-28 22:49:05 +02:00
2021-08-17 02:59:00 +02:00
class J3DLightInfo {
public:
2021-06-12 15:22:36 -07:00
/* 803256C4 */ void operator=(J3DLightInfo const&);
2021-08-17 02:59:00 +02:00
/* 0x00 */ Vec mLightPosition;
/* 0x0C */ Vec mLightDirection;
/* 0x18 */ GXColor mColor;
/* 0x1C */ Vec mCosAtten;
/* 0x28 */ Vec mDistAtten;
2021-06-12 15:22:36 -07:00
}; // Size = 0x34
2021-08-17 02:59:00 +02:00
extern "C" extern J3DLightInfo const j3dDefaultLightInfo;
class J3DLightObj {
public:
2023-09-05 11:08:56 -07:00
/* 80018C0C */ J3DLightObj() { mInfo = j3dDefaultLightInfo; }
/* 80323590 */ void load(u32) const;
2021-06-12 15:22:36 -07:00
J3DLightInfo& getLightInfo() { return mInfo; }
2023-08-11 05:04:50 +03:00
J3DLightObj& operator=(J3DLightObj const& other) {
mInfo = other.mInfo;
return *this;
}
2021-06-12 15:22:36 -07:00
/* 0x00 */ J3DLightInfo mInfo;
/* 0x34 */ u8 field_0x34[64];
}; // Size = 0x74
2023-09-05 11:08:56 -07:00
struct J3DTextureSRTInfo {
/* 0x00 */ f32 mScaleX;
/* 0x04 */ f32 mScaleY;
/* 0x08 */ s16 mRotation;
/* 0x0C */ f32 mTranslationX;
/* 0x10 */ f32 mTranslationY;
}; // Size: 0x14
struct J3DTexMtxInfo {
/* 80325718 */ void operator=(J3DTexMtxInfo const&);
/* 80325794 */ void setEffectMtx(Mtx);
/* 0x00 */ u8 mProjection;
/* 0x01 */ s8 mInfo;
/* 0x04 */ Vec mCenter;
/* 0x10 */ J3DTextureSRTInfo mSRT;
/* 0x24 */ Mtx44 mEffectMtx;
}; // Size: 0x64
struct J3DIndTexMtxInfo {
/* 803257DC */ void operator=(J3DIndTexMtxInfo const&);
/* 0x00 */ Mtx23 field_0x0;
/* 0x18 */ u8 field_0x18;
}; // Size: 0x1C
struct J3DFogInfo {
/* 80325800 */ void operator=(J3DFogInfo const&);
/* 0x00 */ u8 field_0x0;
/* 0x01 */ u8 field_0x1;
/* 0x02 */ u16 field_0x2;
/* 0x04 */ f32 field_0x4;
/* 0x08 */ f32 field_0x8;
/* 0x0C */ f32 field_0xc;
/* 0x10 */ f32 field_0x10;
/* 0x14 */ u8 field_0x14;
/* 0x15 */ u8 field_0x15;
/* 0x16 */ u8 field_0x16;
/* 0x17 */ u8 field_0x17;
/* 0x18 */ u16 field_0x18[10];
}; // Size: 0x2C
struct J3DNBTScaleInfo {
/* 8032587C */ void operator=(J3DNBTScaleInfo const&);
/* 0x0 */ u8 mbHasScale;
/* 0x4 */ Vec mScale;
}; // Size: 0x10
2021-03-28 22:49:05 +02:00
#endif /* J3DSTRUCT_H */