我希望使用OpenGL绘制许多球体(~100k)。目前,我正在执行以下操作:
for (int i=0; i<pnum; i++){
glPushMatrix();
glTranslatef(bpos[i].x, bpos[i].y, bpos[i].z);
glCallList(DListSPHERE);
glPopMatrix();
}
在使用适当的球体之前,我使用了GL_POINTS
。这使我能够使用包含所有点的数组调用glDrawArrays
,非常高效。除了上述代码之外,是否有更好的方法来绘制许多相同的对象?