分析一个用 C++ 编码的 OpenGL 2.0 游戏,入口项目是 C#,全部在 Visual Studio 2010 中?
Posted
技术标签:
【中文标题】分析一个用 C++ 编码的 OpenGL 2.0 游戏,入口项目是 C#,全部在 Visual Studio 2010 中?【英文标题】:Profiling an OpenGL 2.0 game coded in C++ with the entry project being in C#, all in visual studio 2010? 【发布时间】:2013-03-28 13:09:59 【问题描述】:所以我们用 c++/opengl 2.0 为学校开发了一个游戏,现在它在某些计算机上相当滞后。我首先要指出,opengl 2.0 是大学强加给我们的。
我们想了解发生了什么,找出滞后的根源并加以纠正。
我们注意到,游戏在显卡不佳的计算机上大多是滞后的(即使处理器和内存非常强大),尽管这并不能说明什么。
我们想知道应该使用哪些工具来了解,例如,显卡上的内存正在使用多少,也可能是每个功能花费了多少时间。
【问题讨论】:
您可以在方法调用之前和控件返回之后手动记录时间,从这些行开始。 你检查显卡驱动了吗?它必须仅来自视频卡制造商网站,而不是默认/Microsoft 网站。另请注意,OpenGL 2.0 在许多英特尔卡上存在缺陷,尤其是旧卡。 【参考方案1】:假设渲染是瓶颈,您可以尝试使用 OpenGL gDEBugger 工具来尝试找出您的热点在哪里。
3DMark 也可能有助于了解机器相对于其他机器具有多少图形功能。
【讨论】:
以上是关于分析一个用 C++ 编码的 OpenGL 2.0 游戏,入口项目是 C#,全部在 Visual Studio 2010 中?的主要内容,如果未能解决你的问题,请参考以下文章
如何将变量(不统一)浮点值从 C++ 传递到顶点着色器 OpenGL ES 2.0
关于 OpenGL 的问题以及将 C 转换为 C++ 的过程