From 06ec97aade63b6a358cd7c2985511aa633035256 Mon Sep 17 00:00:00 2001 From: "Jasper St. Pierre" Date: Tue, 12 Sep 2023 00:11:53 -0700 Subject: [PATCH] lib fixes, J3D included --- include/JSystem/J3DGraphBase/J3DMatBlock.h | 5 ++++- include/d/d_kankyo.h | 6 +----- include/m_Do/m_Do_ext.h | 22 +++++++++++++++++++++- 3 files changed, 26 insertions(+), 7 deletions(-) diff --git a/include/JSystem/J3DGraphBase/J3DMatBlock.h b/include/JSystem/J3DGraphBase/J3DMatBlock.h index 57fabded4..5e9b562d4 100644 --- a/include/JSystem/J3DGraphBase/J3DMatBlock.h +++ b/include/JSystem/J3DGraphBase/J3DMatBlock.h @@ -5,7 +5,6 @@ #include "JSystem/J3DGraphBase/J3DTevs.h" #include "JSystem/J3DGraphBase/J3DTexture.h" #include "dolphin/types.h" -#include "m_Do/m_Do_lib.h" struct J3DGXColorS10 : public GXColorS10 { /* 8000E460 */ J3DGXColorS10() {} @@ -593,6 +592,10 @@ struct J3DAlphaCompInfo { extern const u16 j3dDefaultAlphaCmpID; +inline u32 calcAlphaCmpID(u32 param_1, u32 param_2, u32 param_3) { + return ((param_1 & 0xff) << 5) + ((param_2 & 0xff) << 3) + (param_3 & 0xff); +} + struct J3DAlphaComp { J3DAlphaComp() { field_0x0 = j3dDefaultAlphaCmpID; diff --git a/include/d/d_kankyo.h b/include/d/d_kankyo.h index 9ab5f2885..700495906 100644 --- a/include/d/d_kankyo.h +++ b/include/d/d_kankyo.h @@ -4,11 +4,7 @@ #include "global.h" #include "dolphin/gx/GX.h" #include "SSystem/SComponent/c_xyz.h" - -// setup properly later -struct J3DLightObj { - u8 temp[0x74]; -}; +#include "JSystem/J3DGraphBase/J3DStruct.h" class J3DModel; diff --git a/include/m_Do/m_Do_ext.h b/include/m_Do/m_Do_ext.h index 1ec7d640f..1467a4406 100644 --- a/include/m_Do/m_Do_ext.h +++ b/include/m_Do/m_Do_ext.h @@ -234,11 +234,31 @@ public: virtual void execute(u16, J3DTransformInfo*) = 0; }; -class mDoExt_McaMorf { +class JAIAnimeSound; + +class mDoExt_McaMorf /* : public J3DMtxCalcMaya */ { public: mDoExt_McaMorf(J3DModelData*, mDoExt_McaMorfCallBack1_c*, mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, float, int, int, int, void*, unsigned long, unsigned long); + virtual ~mDoExt_McaMorf(); void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32, void*); + J3DModel* getModel() { return mpModel; } + void setFrame(f32 frame) { mFrameCtrl.setFrame(frame); } + void updateDL(); + void play(Vec *, u32, u8); + + u32 pad[0x50]; // J3DMtxCalcMaya + /* 0x50 */ J3DModel* mpModel; + /* 0x54 */ J3DAnmTransform* mpAnm; + /* 0x58 */ J3DFrameCtrl mFrameCtrl; + /* 0x6C */ J3DTransformInfo* mpTransformInfo; + /* 0x70 */ Quaternion* mpQuats; + /* 0x74 */ f32 mCurMorf; + /* 0x78 */ f32 mPrevMorf; + /* 0x7C */ f32 mMorfStep; + /* 0x80 */ JAIAnimeSound * mpSound; + /* 0x84 */ mDoExt_McaMorfCallBack1_c * mpCallBack1; + /* 0x88 */ mDoExt_McaMorfCallBack2_c * mpCallBack2; }; class mDoExt_3DlineMat_c {