Nic*_*ick 2 c++ opengl geometry
现在,我用glutSolidSphere绘制了50k +球体的多个球体,速度极低.
有没有提高速度的方法或建议?
下面是我的代码......
void COpenGlWnd::OnPaint()
{
CPaintDC dc(this);
::wglMakeCurrent(m_hDC, m_hRC);
for(int k = 0; k < m_nCountZ; k++)
{
for(int j = 0; j < m_nCountY; j ++)
{
for(int i = 0; i < m_nCountX; i ++)
{
::glPushMatrix();
........
::glutSolidSphere(Size[i][j][k], 36, 36);
........
::glPopMatrix();
}
}
}
::SwapBuffers(m_hDC);
}
Run Code Online (Sandbox Code Playgroud)
有关更多信息:球体将始终位于特定位置,但用户可以使用鼠标旋转并从差异视图中查看所有球体.
以下是一些建议:
以下文章几乎完全符合您的要求:http://sol.gfxile.net/instancing.html
归档时间: |
|
查看次数: |
1734 次 |
最近记录: |