我想用材料信息导出我星球的.mesh文件。 我能够正确导出.mesh文件。但我仍然坚持试图导出材料的代码。 这是我使用的代码:
Ogre::MaterialPtr matSphere;
matSphere = Ogre::MaterialManager::getSingleton().create("TexMap", Ogre::ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME);
Ogre::Pass *pass = matSphere->getTechnique(0)->getPass(0);
pass->setLightingEnabled(true);
pass->setDepthCheckEnabled(true);
pass->setSceneBlending(Ogre::SBT_TRANSPARENT_ALPHA);
Ogre::TextureUnitState *tex = pass->createTextureUnitState("MyCustomState", 0);
tex->setTextureName("PATH\planet.png");
tex->setTextureFiltering(Ogre::TFO_TRILINEAR);
matSphere->load();
// Set texture for the sphere
sphereEntity->setMaterial(matSphere);
//Export the shape in a mesh file before destroying it
Ogre::MeshPtr mesh;
mesh = sphereEntity->getMesh();
Ogre::MeshSerializer ser;
ser.exportMesh(mesh.getPointer(), exportFile, Ogre::MeshSerializer::ENDIAN_NATIVE);
似乎如果我手动创建一个没有指定材料名称的.material文件(我的意思是将材料的名称留空),一切正常。我已经测试了这个在我的程序中导入网格物体。所以主要的问题是当我导出一个.mesh文件时,它指向一个没有名字的材料。我想选择材料的名称。 这是我正在进行的项目:https://github.com/giogix2/PlanetGenerator