VertexArray<float>* Model::getVArrayPtr(MetaGroup* _grp) { VertexArray<float>* va = new VertexArray<float>(4); va->mData = new float[_grp->nVertices*4]; va->stride = 4*sizeof(float); va->size = _grp->nVertices; size_t posCount = 0; vector<Face*>::const_iterator face_it; for (face_it = _grp->fPtrList.begin(); face_it != _grp->fPtrList.end(); ++face_it){ vector<V3f *>::const_iterator v_it; for (v_it=(*face_it)->vertexPtrList.begin(); v_it!=(*face_it)->vertexPtrList.end(); ++v_it){ va->mData[posCount++] = (*v_it)->getX(); va->mData[posCount++] = (*v_it)->getY(); va->mData[posCount++] = (*v_it)->getZ(); va->mData[posCount++] = mPriCTable.calculateTexCoord(mPriCTable.addColori(_grp->getMat())); } } va->setBB(*_grp->bb); return va; }