DirectX - 停止渲染以减少资源使用量?

3
最近我在为一个使用DirectX后端进行渲染的游戏编写机器人。我已经成功地“黑客入侵”了游戏,使其允许我运行多个实例。不幸的是,这给我的计算机的CPU/RAM使用带来了严重的负担。我想优化和减少每个实例消耗的资源量。因此,我有几个问题:
  • 如果我停止DirectX进行渲染,这会提高性能吗?
  • 我该如何做到这一点?
我有一些关于如何做到这一点的想法-我猜我可以钩住渲染函数并强制它返回而不执行任何操作。但我的问题是-这样做会明显提高性能吗?
任何帮助都将不胜感激。
1个回答

2
首先,不,立即从渲染调用返回将不会减少CPU负载,因为此时你正在忙等待。你必须操纵主循环,使其每次等待输入或等待一小段时间。这样可以给其他实例留出时间。在第一次尝试中,你可以只是在其中加入Sleep(一些小量)。当然,这会降低每个实例的FPS,但它将使其他应用程序运行更流畅。
其次,如果你减少帧率,RAM使用量并不会减少。要减少内存负载,你需要找到更复杂的方法,例如在不再需要它们时删除纹理等等。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接