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

标签 optimization resources directx hook

最近我一直在为一款使用 DirectX 后端进行渲染的游戏编写机器人。我已经设法“破解”游戏以允许我运行多个实例。不幸的是,这严重影响了我计算机的 CPU/RAM 使用率。我想优化和减少每个实例消耗的资源量。因此,我有几个问题:

  • 如果我停止 DirectX 渲染,这会提高性能吗?
  • 我该怎么做?

我有一些关于如何做到这一点的想法 - 我猜我可以 Hook 渲染函数并强制它返回而不做任何事情。不过我的问题是 - 这样做会显着提高性能吗?

如有任何帮助,我们将不胜感激。

最佳答案

第一件事:不,立即从渲染调用返回不会减少 CPU 负载,因为您正忙于等待。您必须操纵您的主循环,使其每次都等待输入或一个小的超时。这给了其他实例时间。第一次尝试时,您可以在其中装一个 Sleep(少量)。当然,这会降低每个实例的 FPS,但它会让其他应用程序运行得更流畅。

其次:不,如果降低帧速率,RAM 使用量不会减少。为了减少内存负载,您需要找到更复杂的方法,例如在不再需要纹理时删除它们等。

关于optimization - DirectX - 停止渲染以减少使用的资源量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6904880/

相关文章:

mysql - MySQL 中多列索引中的列顺序

linux - 在 Docker 中为资源管理挂载 cgroup

java - 无法在 JavaFX 项目中使用 getResource() 访问资源

c++ - DirectX9 中的访问冲突

C++ GUI事件/消息传递设计

PHP/SQL - 很多 SQL 查询

R:tuneRF 函数的行为不明确(randomForest 包)

android - Eclipse 和 SDK 更新后构建 Android 项目的问题

c++ - IDirect3DDevice9::Reset 异常的原因可能是什么?

c++ - 如何告诉编译器不要优化某些代码?