我正在使用OpenGl通过Qt渲染网格物体。 (Qt 5.4)。
在我的OSX计算机上,渲染速度相对较慢。当我旋转网格时,我可以看到渲染无法跟上我的鼠标输入。
在运行Windows 7虚拟机和我的应用程序时,在同一台OSX计算机上,渲染非常流畅。它几乎看起来像Mac版本在软件模式下渲染,而不是使用加速。
我使用glGetString来检查正在使用的供应商和渲染器,这看起来不错:
"NVIDIA Corporation"
"NVIDIA GeForce GT 650M OpenGL Engine"
为什么本机OSX生成的代码运行速度会慢得多。
BTW:我使用GL_ARRAY_BUFFER
渲染一个由大约150,000个顶点组成的网格。
我对OpenGL很新,有什么想法吗?
答案 0 :(得分:0)
我正在回答这个问题,以便可以关闭。
正如上面评论中指出的Kuba Ober,问题是由Windows似乎隐藏的opengl错误引起的。在我的情况下,我忘了调用DataRow row = ds.Tables[0].Rows[0];
DateTime startDate = (DateTime) row["StartDate"];
DateTime originalStartDate = (DateTime) row["OriginalStartDate"];
if (startDate.Date > originalStartDate.Date)
{
...
}
函数,例如:
QOpenGLShaderProgram::disableAttributeArray()
似乎Windows原谅了这个问题,而OSX却没有。