mirror of
https://github.com/CraftyBoss/SuperMarioOdysseyOnline.git
synced 2024-12-02 07:57:30 +00:00
46 lines
No EOL
1.3 KiB
C++
46 lines
No EOL
1.3 KiB
C++
#pragma once
|
|
|
|
#include "al/resource/ActorResource.h"
|
|
#include "math/seadMatrix.h"
|
|
#include "types.h"
|
|
#include "ModelCtrl.h"
|
|
|
|
namespace al {
|
|
struct ModelLodCtrl;
|
|
struct DitherAnimator;
|
|
struct GpuMemAllocator;
|
|
struct ModelShaderHolder;
|
|
struct ModelOcclusionCullingDirector;
|
|
struct ShadowDirector;
|
|
struct PrepassTriangleCulling;
|
|
}
|
|
|
|
namespace al {
|
|
class ModelKeeper {
|
|
public:
|
|
ModelKeeper();
|
|
virtual ~ModelKeeper();
|
|
void initResource(al::ActorResource const*);
|
|
void createMatAnimForProgram(int);
|
|
void getAnimResource() const;
|
|
void getModelResource() const;
|
|
void setDisplayRootJointMtxPtr(sead::Matrix34f const*);
|
|
void setModelLodCtrl(al::ModelLodCtrl*);
|
|
void setDitherAnimator(al::DitherAnimator*);
|
|
void initModel(int, al::GpuMemAllocator*, al::ModelShaderHolder*, al::ModelOcclusionCullingDirector*, al::ShadowDirector*, al::PrepassTriangleCulling*);
|
|
void show();
|
|
void hide();
|
|
void update();
|
|
void updateLast();
|
|
void calc(sead::Matrix34f const&, sead::Vector3f const&);
|
|
void getBaseMtx() const;
|
|
void getWorldMtxPtrByIndex(int) const;
|
|
|
|
const char *mResourceName;
|
|
al::ModelCtrl *mModelCtrl;
|
|
const al::ActorResource *mResource;
|
|
char gap20[67];
|
|
bool field_63;
|
|
|
|
};
|
|
} |