2022-10-09 05:13:17 +00:00
|
|
|
#ifndef _CSKINNEDMODEL
|
|
|
|
#define _CSKINNEDMODEL
|
2022-09-13 04:26:54 +00:00
|
|
|
|
|
|
|
#include "types.h"
|
|
|
|
|
2022-11-25 12:41:28 +00:00
|
|
|
#include "Kyoto/TToken.hpp"
|
|
|
|
|
|
|
|
#include "rstl/auto_ptr.hpp"
|
|
|
|
|
|
|
|
class CModel;
|
|
|
|
class CSkinRules;
|
|
|
|
class CCharLayoutInfo;
|
|
|
|
|
2022-09-13 04:26:54 +00:00
|
|
|
class CSkinnedModel {
|
|
|
|
public:
|
2022-11-25 12:41:28 +00:00
|
|
|
virtual ~CSkinnedModel();
|
|
|
|
|
2022-09-13 04:26:54 +00:00
|
|
|
static void ClearPointGeneratorFunc();
|
|
|
|
|
2022-11-25 12:41:28 +00:00
|
|
|
TLockedToken< CModel >& Model() { return x4_model; }
|
|
|
|
const TLockedToken< CModel >& GetModel() const { return x4_model; }
|
|
|
|
|
|
|
|
static void SetPointGeneratorFunc(void*, void (*)(void*, const CVector3f*, const CVector3f*, int));
|
|
|
|
|
2022-09-13 04:26:54 +00:00
|
|
|
private:
|
2022-11-25 12:41:28 +00:00
|
|
|
TLockedToken< CModel > x4_model;
|
|
|
|
TLockedToken< CSkinRules > x10_skinRules;
|
|
|
|
TLockedToken< CCharLayoutInfo > x1c_layoutInfo;
|
|
|
|
rstl::auto_ptr< float[] > x24_vertWorkspace;
|
|
|
|
rstl::auto_ptr< float[] > x2c_normalWorkspace;
|
|
|
|
bool x34_owned;
|
|
|
|
bool x35_disableWorkspaces;
|
2022-09-13 04:26:54 +00:00
|
|
|
};
|
|
|
|
|
2022-10-09 05:13:17 +00:00
|
|
|
#endif // _CSKINNEDMODEL
|