Exemple #1
0
 SubMesh *addSubMesh(GLenum mode, size_t first, size_t count)
 {
     SubMesh *res = addSubMesh();
     res->setMode(mode);
     res->setFirstIndex(first);
     res->setIndexCount(count);
     return res;
 }
Exemple #2
0
bool Mesh::load(const std::string& fname)
{
    std::ifstream fi(fname.c_str());
    assert(fi);
    int subCnt = 0;
    {
        StreamBlockReader r("MeshDescription", fi);
        if (!r.read("subCount", &subCnt)) assert(0);
    }
    while (subCnt-- > 0) {
        SubMesh *sub = new SubMesh();
        fi >> *sub;
        sub->genVertexNormals();
        sub->genTriangleNormals();
        addSubMesh(sub);
    }
    m_fname = fname;
    return !!fi;
}