晚上好,大家好,
我目前正在使用Delphi 2010开发NVIDIA GPU温度监测器。它还将提供来自WMI的系统信息。
目前,我正在为不同情况下开发几种不同的OSD(屏幕上显示)方法。我已经有了两种方法,但我需要另一种专门用于游戏的方法。
我想做的是使用Direct2D或Direct3D显示带有一些文本的叠加层或OSD。 DLL注入是有风险的,而且非常难以完美实现。正如你所想象的那样,我试图将其叠加到游戏中,但在任何地方叠加都是一样好的。
使用Direct2D或Direct3D进行叠加会更好。钩子可能是一个想法,但这也可能导致需要我注入代码。
基本上,我想要最简单的在屏幕上显示文本的方法,没有太大的性能损失,并且在屏幕刷新时不会闪烁(即渲染新帧)。我很想能够绘制图像(因为我在应用程序中包含了图形,输出这些图形将是一个奖励,但输出文本是主要任务)。
我真的不介意是否需要钩子和/或注入,但我对此没有任何经验,绝对需要很多帮助。做类似于MSI Afterburner或FRAPS所做的事情正是我想要的。
我也缺乏任何DX编程或设计方面的知识,因此需要大量的帮助。我已经设计并运行了大部分应用程序,现在只剩下完成这个重要任务和清理其他较小部分的问题。
有什么想法吗?
编辑:为了更容易阅读,减少了段落数。再减少可能无法充分解释重点。对于看到编辑版本的人们,我进行了大量研究但没有结果。
编辑:没有人有更多的输入吗?相反,是否可能使用另一种语言编写的DLL来输出OSD,并简单地将我的参数传递给它?如果是这样,我该如何做,是否有任何语言中的示例代码可供使用?
目前,我正在为不同情况下开发几种不同的OSD(屏幕上显示)方法。我已经有了两种方法,但我需要另一种专门用于游戏的方法。
我想做的是使用Direct2D或Direct3D显示带有一些文本的叠加层或OSD。 DLL注入是有风险的,而且非常难以完美实现。正如你所想象的那样,我试图将其叠加到游戏中,但在任何地方叠加都是一样好的。
使用Direct2D或Direct3D进行叠加会更好。钩子可能是一个想法,但这也可能导致需要我注入代码。
基本上,我想要最简单的在屏幕上显示文本的方法,没有太大的性能损失,并且在屏幕刷新时不会闪烁(即渲染新帧)。我很想能够绘制图像(因为我在应用程序中包含了图形,输出这些图形将是一个奖励,但输出文本是主要任务)。
我真的不介意是否需要钩子和/或注入,但我对此没有任何经验,绝对需要很多帮助。做类似于MSI Afterburner或FRAPS所做的事情正是我想要的。
我也缺乏任何DX编程或设计方面的知识,因此需要大量的帮助。我已经设计并运行了大部分应用程序,现在只剩下完成这个重要任务和清理其他较小部分的问题。
有什么想法吗?
编辑:为了更容易阅读,减少了段落数。再减少可能无法充分解释重点。对于看到编辑版本的人们,我进行了大量研究但没有结果。
编辑:没有人有更多的输入吗?相反,是否可能使用另一种语言编写的DLL来输出OSD,并简单地将我的参数传递给它?如果是这样,我该如何做,是否有任何语言中的示例代码可供使用?