mirror of
https://github.com/zeldaret/tww.git
synced 2026-08-10 11:13:45 -04:00
object-light OK
This commit is contained in:
+1
-1
@@ -694,7 +694,7 @@ config.libs = [
|
||||
Object(Matching, "JSystem/JStudio/JStudio_JStage/object-ambientlight.cpp"),
|
||||
Object(NonMatching, "JSystem/JStudio/JStudio_JStage/object-camera.cpp"),
|
||||
Object(Matching, "JSystem/JStudio/JStudio_JStage/object-fog.cpp"),
|
||||
Object(NonMatching, "JSystem/JStudio/JStudio_JStage/object-light.cpp"),
|
||||
Object(Matching, "JSystem/JStudio/JStudio_JStage/object-light.cpp"),
|
||||
],
|
||||
),
|
||||
JSystemLib(
|
||||
|
||||
@@ -7,6 +7,11 @@
|
||||
|
||||
namespace JStage {
|
||||
enum TELight {
|
||||
TELIGHT_Unk0 = 0,
|
||||
TELIGHT_Unk1 = 1,
|
||||
TELIGHT_Unk2 = 2,
|
||||
TELIGHT_Unk3 = 3,
|
||||
|
||||
kLightMax = 0xFFFFFFFF,
|
||||
};
|
||||
|
||||
|
||||
@@ -5,13 +5,14 @@
|
||||
#include "JSystem/JStudio/JStudio/stb.h"
|
||||
#include "dolphin/gx/GX.h"
|
||||
#include "dolphin/mtx/vec.h"
|
||||
#include "dolphin/mtx/mtxvec.h"
|
||||
|
||||
namespace JStudio {
|
||||
struct TObject;
|
||||
struct TCreateObject {
|
||||
TCreateObject() {}
|
||||
virtual ~TCreateObject() = 0;
|
||||
virtual bool create(TObject**, JStudio::stb::data::TParse_TBlock_object const&) = 0;
|
||||
virtual bool create(TObject**, stb::data::TParse_TBlock_object const&) = 0;
|
||||
|
||||
/* 0x4 */ JGadget::TLinkListNode mNode;
|
||||
}; // Size: 0xC
|
||||
@@ -20,9 +21,9 @@ struct TFactory : public stb::TFactory {
|
||||
TFactory() {}
|
||||
|
||||
virtual ~TFactory();
|
||||
virtual TObject* create(JStudio::stb::data::TParse_TBlock_object const&);
|
||||
virtual TObject* create(stb::data::TParse_TBlock_object const&);
|
||||
|
||||
void appendCreateObject(JStudio::TCreateObject*);
|
||||
void appendCreateObject(TCreateObject*);
|
||||
|
||||
/* 0x04 */ JGadget::TLinkList<TCreateObject, -4> mList;
|
||||
/* 0x10 */ fvb::TFactory fvb_Factory;
|
||||
@@ -33,7 +34,10 @@ public:
|
||||
struct TTransform_position {
|
||||
Vec mPosition;
|
||||
};
|
||||
struct TTransform_position_direction {};
|
||||
struct TTransform_position_direction {
|
||||
Vec mPosition; // _00
|
||||
Vec mDirection; // _0C
|
||||
};
|
||||
struct TTransform_translation_rotation {};
|
||||
struct TTransform_translation_rotation_scaling {};
|
||||
|
||||
@@ -42,7 +46,7 @@ public:
|
||||
void transformOnSet_setOrigin(const Vec&, f32);
|
||||
void transformOnGet_setOrigin(const Vec&, f32);
|
||||
|
||||
void setFactory(JStudio::TFactory* factory) {
|
||||
void setFactory(TFactory* factory) {
|
||||
stb::TFactory* stb_factory = factory;
|
||||
fvb::TFactory* fvb_factory = factory == NULL ? NULL : &factory->fvb_Factory;
|
||||
stb::TControl::setFactory(stb_factory);
|
||||
@@ -104,31 +108,47 @@ public:
|
||||
return obj->referFunctionValue();
|
||||
}
|
||||
|
||||
const TTransform_position_direction* transformOnGet_transform_ifEnabled(const TTransform_position_direction& posDir, TTransform_position_direction* transformedPosDir) const {
|
||||
if (!transformOnGet_isEnabled()) {
|
||||
return &posDir;
|
||||
} else {
|
||||
transformOnGet_transform(posDir, transformedPosDir);
|
||||
return transformedPosDir;
|
||||
}
|
||||
}
|
||||
void transformOnGet_transform(const TTransform_position_direction& posDir, TTransform_position_direction* transformedPosDir) const {
|
||||
transformOnGet_transformTranslation(posDir.mPosition, &transformedPosDir->mPosition);
|
||||
transformOnGet_transformDirection(posDir.mDirection, &transformedPosDir->mDirection);
|
||||
}
|
||||
void transformOnGet_transformTranslation(const Vec& pos, Vec* transformedPos) const {
|
||||
MTXMultVec(transformOnGet_getMatrix(), &pos, transformedPos);
|
||||
}
|
||||
void transformOnGet_transformDirection(const Vec& dir, Vec* transformedDir) const {
|
||||
MTXMultVecSR(transformOnGet_getMatrix(), &dir, transformedDir);
|
||||
}
|
||||
|
||||
// TODO
|
||||
void fvb_getObjectContainer() const {}
|
||||
void fvb_referControl() {}
|
||||
void fvb_removeObject_all() {}
|
||||
void stb_getObjectContainer() const {}
|
||||
void stb_referObjectContainer() {}
|
||||
void stb_removeObject(JStudio::TObject*) {}
|
||||
void transformOnGet_transform(const JStudio::TControl::TTransform_position&, JStudio::TControl::TTransform_position*) const {}
|
||||
void transformOnGet_transform(const JStudio::TControl::TTransform_position_direction&, JStudio::TControl::TTransform_position_direction*) const {}
|
||||
void transformOnGet_transform(const JStudio::TControl::TTransform_translation_rotation&, JStudio::TControl::TTransform_translation_rotation*) const {}
|
||||
void transformOnGet_transformDirection(const Vec&, Vec*) const {}
|
||||
void stb_removeObject(TObject*) {}
|
||||
void transformOnGet_transform(const TTransform_position&, TTransform_position*) const {}
|
||||
void transformOnGet_transform(const TTransform_translation_rotation&, TTransform_translation_rotation*) const {}
|
||||
void transformOnGet_transformRotation(const Vec&, Vec*) const {}
|
||||
void transformOnGet_transformTranslation(const Vec&, Vec*) const {}
|
||||
void transformOnGet_transform_ifEnabled(const JStudio::TControl::TTransform_position_direction&, JStudio::TControl::TTransform_position_direction*) const {}
|
||||
void transformOnGet_transform_ifEnabled(const JStudio::TControl::TTransform_translation_rotation&, JStudio::TControl::TTransform_translation_rotation*) const {}
|
||||
void transformOnSet_transform(const JStudio::TControl::TTransform_position&, JStudio::TControl::TTransform_position*) const {}
|
||||
void transformOnSet_transform(const JStudio::TControl::TTransform_position_direction&, JStudio::TControl::TTransform_position_direction*) const {}
|
||||
void transformOnSet_transform(const JStudio::TControl::TTransform_translation_rotation&, JStudio::TControl::TTransform_translation_rotation*) const {}
|
||||
void transformOnGet_transform_ifEnabled(const TTransform_translation_rotation&, TTransform_translation_rotation*) const {}
|
||||
void transformOnSet_transform(const TTransform_position&, TTransform_position*) const {}
|
||||
void transformOnSet_transform(const TTransform_position_direction&, TTransform_position_direction*) const {}
|
||||
void transformOnSet_transform(const TTransform_translation_rotation&, TTransform_translation_rotation*) const {}
|
||||
void transformOnSet_transform(CMtxP, MtxP) const {}
|
||||
void transformOnSet_transformDirection(const Vec&, Vec*) const {}
|
||||
void transformOnSet_transformDirection_ifEnabled(const Vec&, Vec*) const {}
|
||||
void transformOnSet_transformRotation(const Vec&, Vec*) const {}
|
||||
void transformOnSet_transformTranslation(const Vec&, Vec*) const {}
|
||||
void transformOnSet_transformTranslation_ifEnabled(const Vec&, Vec*) const {}
|
||||
void transformOnSet_transform_ifEnabled(const JStudio::TControl::TTransform_position_direction&, JStudio::TControl::TTransform_position_direction*) const {}
|
||||
void transformOnSet_transform_ifEnabled(const JStudio::TControl::TTransform_translation_rotation&, JStudio::TControl::TTransform_translation_rotation*) const {}
|
||||
void transformOnSet_transform_ifEnabled(const TTransform_position_direction&, TTransform_position_direction*) const {}
|
||||
void transformOnSet_transform_ifEnabled(const TTransform_translation_rotation&, TTransform_translation_rotation*) const {}
|
||||
void transformOnSet_transform_ifEnabled(CMtxP, MtxP) const {}
|
||||
|
||||
/* 0x58 */ f64 mSecondPerFrame;
|
||||
@@ -144,12 +164,12 @@ public:
|
||||
};
|
||||
|
||||
struct TParse : public stb::TParse {
|
||||
TParse(JStudio::TControl*);
|
||||
bool parseBlock_block_fvb_(JStudio::stb::data::TParse_TBlock const&, u32);
|
||||
TParse(TControl*);
|
||||
bool parseBlock_block_fvb_(stb::data::TParse_TBlock const&, u32);
|
||||
|
||||
virtual ~TParse();
|
||||
virtual bool parseHeader(JStudio::stb::data::TParse_THeader const&, u32);
|
||||
virtual bool parseBlock_block(JStudio::stb::data::TParse_TBlock const&, u32);
|
||||
virtual bool parseHeader(stb::data::TParse_THeader const&, u32);
|
||||
virtual bool parseBlock_block(stb::data::TParse_TBlock const&, u32);
|
||||
|
||||
TControl* getControl() { return (TControl*)stb::TParse::getControl(); }
|
||||
|
||||
|
||||
@@ -339,6 +339,20 @@ struct TObject_fog : public TObject {
|
||||
};
|
||||
|
||||
struct TAdaptor_light : public TAdaptor {
|
||||
enum TEVariableValue {
|
||||
TE_VALUE_NONE = -1,
|
||||
TE_VALUE_7 = 7,
|
||||
TE_VALUE_8 = 8,
|
||||
TE_VALUE_9 = 9,
|
||||
TE_VALUE_10 = 10,
|
||||
TE_VALUE_11 = 11,
|
||||
};
|
||||
enum TEDirection_ {
|
||||
DIRECTION_0,
|
||||
DIRECTION_1,
|
||||
DIRECTION_2,
|
||||
};
|
||||
|
||||
TAdaptor_light()
|
||||
: TAdaptor(mValue, ARRAY_SIZE(mValue))
|
||||
, mValue()
|
||||
@@ -356,9 +370,9 @@ struct TAdaptor_light : public TAdaptor {
|
||||
/* 0x10 */ TVariableValue mValue[13];
|
||||
|
||||
static u8 const sauVariableValue_3_COLOR_RGB[12];
|
||||
static u8 const sauVariableValue_4_COLOR_RGBA[16];
|
||||
static u8 const sauVariableValue_3_POSITION_XYZ[12];
|
||||
static u8 const sauVariableValue_3_TARGET_POSITION_XYZ[12];
|
||||
static u32 const sauVariableValue_4_COLOR_RGBA[4];
|
||||
static u32 const sauVariableValue_3_POSITION_XYZ[3];
|
||||
static u32 const sauVariableValue_3_TARGET_POSITION_XYZ[3];
|
||||
static u8 sauVariableValue_2_DIRECTION_THETA_PHI[8];
|
||||
};
|
||||
|
||||
|
||||
@@ -175,9 +175,23 @@ struct TAdaptor_fog : public JStudio::TAdaptor_fog {
|
||||
}; // Size: 0x8C
|
||||
|
||||
struct TAdaptor_light : public JStudio::TAdaptor_light {
|
||||
struct TVVOutput_direction_ {
|
||||
void operator()(f32, JStudio::TAdaptor*) const;
|
||||
~TVVOutput_direction_();
|
||||
struct TVVOutput_direction_ : public JStudio::TVariableValue::TOutput {
|
||||
TVVOutput_direction_(JStudio::TAdaptor_light::TEVariableValue val, JStudio_JStage::TAdaptor_light::TEDirection_ dir)
|
||||
{
|
||||
mValueIndex = val;
|
||||
_08 = dir;
|
||||
}
|
||||
|
||||
virtual void operator()(f32, JStudio::TAdaptor*) const;
|
||||
virtual ~TVVOutput_direction_() {}
|
||||
|
||||
void adaptor_setOutput_(JStudio::TAdaptor* adaptor) const {
|
||||
adaptor->adaptor_referVariableValue(mValueIndex)->setOutput(this);
|
||||
}
|
||||
bool isEnd_() const { return mValueIndex != -1; }
|
||||
|
||||
/* 0x04 */ int mValueIndex;
|
||||
/* 0x08 */ int _08;
|
||||
};
|
||||
|
||||
TAdaptor_light(JStage::TSystem const*, JStage::TLight*);
|
||||
@@ -190,9 +204,11 @@ struct TAdaptor_light : public JStudio::TAdaptor_light {
|
||||
virtual void adaptor_do_ENABLE(JStudio::data::TEOperationData, void const*, u32);
|
||||
virtual void adaptor_do_FACULTY(JStudio::data::TEOperationData, void const*, u32);
|
||||
|
||||
static u8 saoVVOutput_direction_[72];
|
||||
static TVVOutput_direction_ saoVVOutput_direction_[6];
|
||||
|
||||
/* 0x110 */ u8 field_0x110[0x11C - 0x110];
|
||||
/* 0x110 */ const JStage::TSystem* mSystem;
|
||||
/* 0x114 */ JStage::TLight* mObject;
|
||||
/* 0x118 */ int _118;
|
||||
}; // Size: 0x11C
|
||||
|
||||
void
|
||||
|
||||
@@ -4,60 +4,158 @@
|
||||
//
|
||||
|
||||
#include "JSystem/JStudio/JStudio_JStage/object-light.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "math.h"
|
||||
|
||||
namespace JStudio_JStage {
|
||||
|
||||
TAdaptor_light::TVVOutput_direction_ TAdaptor_light::saoVVOutput_direction_[6] = {
|
||||
TAdaptor_light::TVVOutput_direction_(TE_VALUE_10, DIRECTION_1),
|
||||
TAdaptor_light::TVVOutput_direction_(TE_VALUE_11, DIRECTION_1),
|
||||
TAdaptor_light::TVVOutput_direction_(TE_VALUE_7, DIRECTION_2),
|
||||
TAdaptor_light::TVVOutput_direction_(TE_VALUE_8, DIRECTION_2),
|
||||
TAdaptor_light::TVVOutput_direction_(TE_VALUE_9, DIRECTION_2),
|
||||
TAdaptor_light::TVVOutput_direction_(TE_VALUE_NONE, DIRECTION_0)
|
||||
};
|
||||
|
||||
/* 80278228-802782C4 .text __ct__Q214JStudio_JStage14TAdaptor_lightFPCQ26JStage7TSystemPQ26JStage6TLight */
|
||||
JStudio_JStage::TAdaptor_light::TAdaptor_light(const JStage::TSystem*, JStage::TLight*) {
|
||||
/* Nonmatching */
|
||||
TAdaptor_light::TAdaptor_light(const JStage::TSystem* system, JStage::TLight* light)
|
||||
: mSystem(system)
|
||||
, mObject(light)
|
||||
, _118(0)
|
||||
{
|
||||
}
|
||||
|
||||
/* 802782C4-8027833C .text __dt__Q214JStudio_JStage14TAdaptor_lightFv */
|
||||
JStudio_JStage::TAdaptor_light::~TAdaptor_light() {
|
||||
/* Nonmatching */
|
||||
TAdaptor_light::~TAdaptor_light() {
|
||||
adaptor_do_end(NULL);
|
||||
}
|
||||
|
||||
/* 8027833C-80278384 .text adaptor_do_prepare__Q214JStudio_JStage14TAdaptor_lightFPCQ27JStudio7TObject */
|
||||
void JStudio_JStage::TAdaptor_light::adaptor_do_prepare(const JStudio::TObject*) {
|
||||
/* Nonmatching */
|
||||
void TAdaptor_light::adaptor_do_prepare(const JStudio::TObject* object) {
|
||||
for (const TVVOutput_direction_* output = saoVVOutput_direction_; output->isEnd_(); output++) {
|
||||
output->adaptor_setOutput_(this);
|
||||
}
|
||||
}
|
||||
|
||||
/* 80278384-802785BC .text adaptor_do_begin__Q214JStudio_JStage14TAdaptor_lightFPCQ27JStudio7TObject */
|
||||
void JStudio_JStage::TAdaptor_light::adaptor_do_begin(const JStudio::TObject*) {
|
||||
/* Nonmatching */
|
||||
void TAdaptor_light::adaptor_do_begin(const JStudio::TObject* object) {
|
||||
mObject->JSGFEnableFlag(1);
|
||||
const JStudio::TControl* control = (JStudio::TControl*)object->getControl();
|
||||
GXColor color = mObject->JSGGetColor();
|
||||
adaptor_setVariableValue_GXColor(sauVariableValue_4_COLOR_RGBA, color);
|
||||
|
||||
JStudio::TControl::TTransform_position_direction posDir;
|
||||
JStudio::TControl::TTransform_position_direction transformedPosDir;
|
||||
const JStudio::TControl::TTransform_position_direction* vvVec;
|
||||
mObject->JSGGetPosition(&posDir.mPosition);
|
||||
mObject->JSGGetDirection(&posDir.mDirection);
|
||||
|
||||
vvVec = (JStudio::TControl::TTransform_position_direction*)control->transformOnGet_transform_ifEnabled(posDir, &transformedPosDir);
|
||||
|
||||
adaptor_setVariableValue_Vec(sauVariableValue_3_POSITION_XYZ, vvVec->mPosition);
|
||||
|
||||
f32 x = vvVec->mDirection.x;
|
||||
f32 y = vvVec->mDirection.y;
|
||||
f32 z = vvVec->mDirection.z;
|
||||
f32 dist = std::sqrtf(x * x + z * z);
|
||||
f32 atanVal1 = std::atan2f(x, z);
|
||||
f32 atanVal2 = std::atan2f(y, dist);
|
||||
|
||||
adaptor_setVariableValue_immediate(10, RAD_TO_DEG(atanVal1));
|
||||
adaptor_setVariableValue_immediate(11, RAD_TO_DEG(atanVal2));
|
||||
|
||||
Vec targetPos;
|
||||
VECAdd(&vvVec->mPosition, &vvVec->mDirection, &targetPos);
|
||||
adaptor_setVariableValue_Vec(sauVariableValue_3_TARGET_POSITION_XYZ, targetPos);
|
||||
}
|
||||
|
||||
/* 802785BC-80278610 .text adaptor_do_end__Q214JStudio_JStage14TAdaptor_lightFPCQ27JStudio7TObject */
|
||||
void JStudio_JStage::TAdaptor_light::adaptor_do_end(const JStudio::TObject*) {
|
||||
/* Nonmatching */
|
||||
void TAdaptor_light::adaptor_do_end(const JStudio::TObject* object) {
|
||||
mObject->JSGFDisableFlag(1);
|
||||
}
|
||||
|
||||
/* 80278610-802787C4 .text adaptor_do_update__Q214JStudio_JStage14TAdaptor_lightFPCQ27JStudio7TObjectUl */
|
||||
void JStudio_JStage::TAdaptor_light::adaptor_do_update(const JStudio::TObject*, u32) {
|
||||
/* Nonmatching */
|
||||
void TAdaptor_light::adaptor_do_update(const JStudio::TObject* object, u32 p2) {
|
||||
const JStudio::TControl* control = object->getControl();
|
||||
GXColor color;
|
||||
adaptor_getVariableValue_GXColor(&color, sauVariableValue_4_COLOR_RGBA);
|
||||
mObject->JSGSetColor(color);
|
||||
|
||||
JStudio::TControl::TTransform_position_direction posDir1;
|
||||
adaptor_getVariableValue_Vec(&posDir1.mPosition, sauVariableValue_3_POSITION_XYZ);
|
||||
|
||||
switch (_118) {
|
||||
case 1:
|
||||
f32 val10 = adaptor_getVariableValue(10)->getValue();
|
||||
f32 val11 = adaptor_getVariableValue(11)->getValue();
|
||||
f32 cosX = std::cosf(DEG_TO_RAD(val11));
|
||||
f32 sinX = std::sinf(DEG_TO_RAD(val11));
|
||||
|
||||
posDir1.mDirection.x = cosX * std::sinf(DEG_TO_RAD(val10));
|
||||
posDir1.mDirection.y = sinX;
|
||||
posDir1.mDirection.z = cosX * std::cosf(DEG_TO_RAD(val10));
|
||||
|
||||
break;
|
||||
case 2:
|
||||
Vec target;
|
||||
adaptor_getVariableValue_Vec(&target, sauVariableValue_3_TARGET_POSITION_XYZ);
|
||||
VECSubtract(&target, &posDir1.mPosition, &posDir1.mDirection);
|
||||
break;
|
||||
}
|
||||
|
||||
JStudio::TControl::TTransform_position_direction* posDir;
|
||||
if (!control->mTransformOnSet) {
|
||||
posDir = &posDir1;
|
||||
} else {
|
||||
JStudio::TControl::TTransform_position_direction posDir2;
|
||||
MTXMultVec(control->transformOnSet_getMatrix(), &posDir1.mPosition, &posDir2.mPosition);
|
||||
MTXMultVecSR(control->transformOnSet_getMatrix(), &posDir1.mDirection, &posDir2.mDirection);
|
||||
posDir = &posDir2;
|
||||
}
|
||||
|
||||
mObject->JSGSetPosition(posDir->mPosition);
|
||||
mObject->JSGSetDirection(posDir->mDirection);
|
||||
}
|
||||
|
||||
/* 802787C4-802787F8 .text adaptor_do_data__Q214JStudio_JStage14TAdaptor_lightFPCQ27JStudio7TObjectPCvUlPCvUl */
|
||||
void JStudio_JStage::TAdaptor_light::adaptor_do_data(const JStudio::TObject*, const void*, u32, const void*, u32) {
|
||||
/* Nonmatching */
|
||||
void TAdaptor_light::adaptor_do_data(const JStudio::TObject* object, const void* p2, u32 p3, const void* p4, u32 p5) {
|
||||
TAdaptor_object_::adaptor_data_(mObject, p2, p3, p4, p5);
|
||||
}
|
||||
|
||||
/* 802787F8-80278870 .text adaptor_do_FACULTY__Q214JStudio_JStage14TAdaptor_lightFQ37JStudio4data15TEOperationDataPCvUl */
|
||||
void JStudio_JStage::TAdaptor_light::adaptor_do_FACULTY(JStudio::data::TEOperationData, const void*, u32) {
|
||||
/* Nonmatching */
|
||||
void TAdaptor_light::adaptor_do_FACULTY(JStudio::data::TEOperationData op, const void* data, u32 flag) {
|
||||
switch (op) {
|
||||
case JStudio::data::TEOD_Unknown_02:
|
||||
JStage::TELight lightType;
|
||||
switch (((int*)data)[0]) {
|
||||
case 0x301:
|
||||
lightType = JStage::TELIGHT_Unk1;
|
||||
break;
|
||||
case 0x302:
|
||||
lightType = JStage::TELIGHT_Unk2;
|
||||
break;
|
||||
case 0x303:
|
||||
lightType = JStage::TELIGHT_Unk3;
|
||||
break;
|
||||
default:
|
||||
goto break_outer_switch;
|
||||
break;
|
||||
}
|
||||
|
||||
mObject->JSGSetLightType(lightType);
|
||||
break_outer_switch:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/* 80278870-80278894 .text adaptor_do_ENABLE__Q214JStudio_JStage14TAdaptor_lightFQ37JStudio4data15TEOperationDataPCvUl */
|
||||
void JStudio_JStage::TAdaptor_light::adaptor_do_ENABLE(JStudio::data::TEOperationData, const void*, u32) {
|
||||
/* Nonmatching */
|
||||
void TAdaptor_light::adaptor_do_ENABLE(JStudio::data::TEOperationData op, const void* data, u32 flag) {
|
||||
TAdaptor_object_::adaptor_ENABLE_(mObject, op, data, flag);
|
||||
}
|
||||
|
||||
/* 80278894-802788A0 .text __cl__Q314JStudio_JStage14TAdaptor_light20TVVOutput_direction_CFfPQ27JStudio8TAdaptor */
|
||||
void JStudio_JStage::TAdaptor_light::TVVOutput_direction_::operator()(f32, JStudio::TAdaptor*) const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 802788A0-80278900 .text __dt__Q314JStudio_JStage14TAdaptor_light20TVVOutput_direction_Fv */
|
||||
JStudio_JStage::TAdaptor_light::TVVOutput_direction_::~TVVOutput_direction_() {
|
||||
/* Nonmatching */
|
||||
void TAdaptor_light::TVVOutput_direction_::operator()(f32, JStudio::TAdaptor* adaptor) const {
|
||||
((TAdaptor_light*)adaptor)->_118 = _08;
|
||||
}
|
||||
|
||||
} // namespace JStudio_JStage
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
#define M_SQRT3 1.73205f
|
||||
|
||||
#define DEG_TO_RAD(degrees) (degrees * (M_PI / 180.0f))
|
||||
#define RAD_TO_DEG(radians) (radians / (180.0f / M_PI))
|
||||
#define RAD_TO_DEG(radians) (radians * (180.0f / M_PI + 0.000005f)) // the 0.000005f is probably a fakematch
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
||||
Reference in New Issue
Block a user