本文整理汇总了C++中GraphicsScene::AllocateSceneObjectSubMeshData方法的典型用法代码示例。如果您正苦于以下问题:C++ GraphicsScene::AllocateSceneObjectSubMeshData方法的具体用法?C++ GraphicsScene::AllocateSceneObjectSubMeshData怎么用?C++ GraphicsScene::AllocateSceneObjectSubMeshData使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类GraphicsScene
的用法示例。
在下文中一共展示了GraphicsScene::AllocateSceneObjectSubMeshData方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Attach
/// @copydoc Entity::Attach()
void MeshComponent::Attach(GraphicsScene *pGrahpicsScene, TransformComponent *pTransformComponent)
{
if (!pTransformComponent)
{
return;
}
HELIUM_ASSERT( pGrahpicsScene );
HELIUM_ASSERT( IsInvalid( m_graphicsSceneObjectId ) );
Mesh* pMesh = m_Mesh;
if( pMesh && pMesh->GetVertexBuffer() && pMesh->GetIndexBuffer() )
{
size_t meshSectionCount = pMesh->GetSectionCount();
if( meshSectionCount != 0 )
{
GraphicsScene* pGraphicsScene = pGrahpicsScene;
HELIUM_ASSERT( pGraphicsScene );
m_graphicsSceneObjectId = pGraphicsScene->AllocateSceneObject();
HELIUM_ASSERT( IsValid( m_graphicsSceneObjectId ) );
m_graphicsSceneObjectSubMeshDataIds.Reserve( meshSectionCount );
m_graphicsSceneObjectSubMeshDataIds.Resize( meshSectionCount );
for( size_t meshSectionIndex = 0; meshSectionIndex < meshSectionCount; ++meshSectionIndex )
{
size_t subMeshId = pGraphicsScene->AllocateSceneObjectSubMeshData( m_graphicsSceneObjectId );
HELIUM_ASSERT( IsValid( subMeshId ) );
m_graphicsSceneObjectSubMeshDataIds[ meshSectionIndex ] = subMeshId;
}
SetNeedsGraphicsSceneObjectUpdate(pTransformComponent);
}
}
}