Ejemplo n.º 1
0
TriangleMesh* BlenderSceneExporter::createMesh( const TamyMesh& exportedMesh )
{
   ResourcesManager& resMgr = TSingleton< ResourcesManager >::getInstance();

   // create the resource
   FilePath meshPath( m_meshesExportDir + exportedMesh.name + "." + TriangleMesh::getExtension() );
   TriangleMesh* triangleMesh = resMgr.create< TriangleMesh >( meshPath );

   // set mesh data
   triangleMesh->setVertices( exportedMesh.verticesList, exportedMesh.verticesCount );
   triangleMesh->setFaces( exportedMesh.facesList, exportedMesh.facesCount );
   triangleMesh->calculateTangents();

   if ( exportedMesh.hasVertexWeights )
   {
      triangleMesh->setVertexWeights( exportedMesh.vertexWeightsList, exportedMesh.verticesCount );
   }

   // save the resource
   if ( m_exportSettings.saveMeshes )
   {
      triangleMesh->saveResource();
   }

   return triangleMesh;
}