27 s_bFilledList =
TTRUE;
39 if ( m_pEntry->GetRefCount() == 1 )
50 m_pEntry->DecRefCount();
84 TASSERT(
TFALSE,
"Couldn't create new model since the registry is all used" );
88 TCHAR filepath[ 248 ];
92 for (
TUINT i = 0; i < iFileNameLen; i++ )
94 if ( filepath[ i ] ==
'/' )
104 if ( it->GetCRC32() == crc32 )
106 a_rModelRef.m_pModel = it->GetModel();
116 const TCHAR* szFileName;
122 szFileName = filepath;
127 pEntry->
Create( crc32, pModel );
128 pEntry->IncRefCount();
129 a_rModelRef.m_pModel = pModel;
139 return m_pModel !=
TNULL;
145 pSceneObject->
Create(
this );
Rendering system interface for the Toshi engine.
#define TREINTERPRETCAST(TYPE, VALUE)
#define TOSHI_NAMESPACE_START
#define TOSHI_NAMESPACE_END
static TBOOL GetSkeletonAssetSymbolName(const TCHAR *a_szFileName, const TCHAR *&a_rSymbolName, TUINT8 &a_rNameLen, TTRB *a_pTRB)
virtual TBOOL Create(TTMD *a_pTMD, TBOOL a_bLoad)=0
static ModelNode * ms_pEntries
static constexpr TUINT MAX_NUM_MODELS
static ModelNode * CreateModel(const TCHAR *a_szFileName, TManagedModel &a_rModelRef, TTRB *a_pAssetTRB)
static T2DList< ModelNode > ms_oUsedList
static T2DList< ModelNode > ms_oFreeList
static void Uninitialise()
TSceneObject * CreateSceneObject()
TBOOL Create(const TCHAR *a_szFileName, TTRB *a_pTRB)
virtual TModel * CreateModel(TTMD *a_pTMD, TBOOL a_bLoad)=0
void Create(TManagedModel *a_pModelPtr)
static TFORCEINLINE TRenderInterface * GetSingleton()
static TSIZE String8Length(const TCHAR *str)
static TCHAR * String8Copy(TCHAR *dst, const TCHAR *src, TSIZE size=-1)
static TUINT32 CRC32(void *buffer, TUINT32 len)