我想我有一些解释要做:
- 我对游戏编程相当陌生,所以如果我不立即理解一个概念,请不要生气
- 该游戏使用 DirectX 10 并用 C++ 编写
- 这是非常简单的2D游戏
情况:尽管游戏逻辑和图形都非常简单,但它仍然需要我的 CPU 和 GPU 负载到 100%。甚至菜单也以每秒超过 2000 帧的速度显示。
我的问题不是游戏运行太快。我已经使用 QueryPerformanceCounter 函数对精灵动画和游戏逻辑进行了计时。
实际的问题是,游戏多次计算相同的代码,而屏幕上没有发生任何事情,因此给我的硬件带来了巨大的负担。
我可以通过哪些方式减少游戏的硬件负载?我觉得使用睡眠是“作弊”。