3#include <lib/nw4r/g3d/g3d_obj.hpp>
4#include <lib/nw4r/math/aabb.hpp>
5#include <lib/nw4r/math/mtx.hpp>
7#include <lib/rvl/mem/MEMHeapCommon.h>
15 virtual void ForEach();
16 virtual void SetScnObjOption(ulong option, ulong value);
17 virtual bool GetScnObjOption(ulong option, ulong *value)
const;
18 virtual float GetValueForSortOpa()
const;
19 virtual float GetValueForSortXlu()
const;
20 void SetPriorityDrawOpa(
int priority);
21 void SetPriorityDrawXlu(
int priority);
54 NW4R_G3D_TYPE_OBJ_DECL(
ScnObj);
64 u8 callbackTimingFlags;
@ CALLBACK_TIMING_A
Callback processing is performed before making calculations.
@ CALLBACK_TIMING_B
Callback processing is performed in the middle of making calculations.
@ CALLBACK_TIMING_C
Callback processing is performed after making calculations.
OptID
Operation options for ScnObj.
@ OPTID_DISABLE_CALC_WORLD
Execution of ScnRoot::CalcWorld is skipped.
@ OPTID_DISABLE_UPDATEFRAME
Execution of ScnRoot::UpdateFrame is skipped.
@ OPTID_DISABLE_CALC_MAT
Execution of ScnRoot::CalcMaterial is skipped.
@ OPTID_ENABLE_CULLING
Enables culling based on the bounding volume (AABB).
@ OPTID_DISABLE_GATHER_DRAW_SCNOBJ
Execution of ScnRoot::GatherDrawScnObj is skipped.
@ OPTID_DISABLE_CALC_VTX
Execution of ScnRoot::CalcVtx is skipped.
@ OPTID_DISABLE_CALC_VIEW
Execution of ScnRoot::CalcView is skipped.
@ OPTID_DISABLE_DRAW_OPA
Execution of ScnRoot::DrawOpa is skipped.
@ OPTID_DISABLE_DRAW_XLU
Execution of ScnRoot::DrawXlu is skipped.
3D graphics drawing library.
An axis-aligned bounding box.