20 , m_uiMaxVertices( 0 )
21 , m_pVertexPool(
TNULL )
30 if ( m_aSubMeshes[ 0 ].pIndexPool )
33 m_aSubMeshes[ 0 ].pIndexPool =
TNULL;
43 m_pVertexPool->Validate();
44 BaseClass::Validate();
52 BaseClass::Invalidate();
63 m_pVertexPool =
TNULL;
73 m_uiFlags = a_uiFlags;
74 m_uiMaxVertices = a_uiMaxVertices;
79 m_pVertexPool = pVertexFactory->CreatePoolResource( m_uiMaxVertices, 1 );
87 if ( m_pVertexPool->Lock( &a_rLockBuffer ) )
89 m_uiFlags |= FLAG_LOCKED;
98 if (
TINT16( a_uiNumVertices ) == -1 )
100 a_uiNumVertices = m_pVertexPool->GetNumVertices();
103 m_pVertexPool->Unlock( a_uiNumVertices );
104 m_uiFlags &= ~FLAG_LOCKED;
109 return m_pVertexPool;
Rendering system interface for the Toshi engine.
#define TOSHI_NAMESPACE_USING
#define TDEFINE_CLASS_NORUNTIME(...)
T * GetSystemResource(SYSRESOURCE systemResource)
void DestroyResource(TResource *resource)
static TFORCEINLINE TRenderInterface * GetSingleton()
static void DestroyMaterial(Toshi::TMaterial *a_pMaterial)
virtual TBOOL Lock(LockBuffer &a_rLockBuffer)
virtual Toshi::TVertexPoolResourceInterface * GetVertexPool()
virtual TBOOL Validate() override
virtual TBOOL Create(TUINT32 a_uiFlags, TUINT16 a_uiMaxVertices)
virtual void Invalidate() override
virtual void Unlock(TUINT32 a_uiNumVertices)
virtual void OnDestroy() override
Toshi::TVertexPoolResourceInterface::LockBuffer LockBuffer