gpt4 book ai didi

opengl - 在OpenGL中绘制许多球体

转载 作者:行者123 更新时间:2023-12-04 10:32:09 28 4
gpt4 key购买 nike

我想使用 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一个包含所有点的数组,非常有效。有没有比上面的代码更好的方法来绘制许多相同的对象?

最佳答案

instancing 上查看此页面: 它包含许多引用资料:

  • 一些测试显示何时使用实例化,何时不使用:http://www.ozone3d.net/blogs/lab/?p=87
  • 伪实例化的 OpenGL 实现(推荐用于旧硬件)。
    glsl_pseudo_instancing.pdf
  • OpenGL实例:
    http://www.opengl.org/registry/specs/EXT/draw_instanced.txt

  • 另见 Geometry instancing on Wikipedia .

    关于opengl - 在OpenGL中绘制许多球体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1995262/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com