windows - 用于游戏内覆盖的 SDK

标签 windows opengl directx hook

我设法挖掘出的关于开发游戏内叠加层的少量信息(类似于 Steam 所做的)提到必须拦截调用图形 API 的帧交换函数,并在其中挂接我自己的绘图例程。

这似乎是Mumble (游戏 VoIP)正在做。因为我从来没有做过任何涉及 Hook 的事情,而且我对 DirectX 没有太多经验,所以我想知道是否有某种 SDK,或者甚至只是一个比 Mumble 更易读的例子,它也实现了输入,演示了如何实现交互式游戏内叠加层。 Mumble 很棒,但我似乎无法全神贯注于它,尤其是它为了正确 Hook 它所做的更有趣的事情。

此外,如果您有关于如何在 Mac 和 Linux 上执行此操作的更多详细信息...:-)

最佳答案

也许 GLIntercept可以给你一些灵感。 它提供了一个 openGL.dll 文件,您可以将其放在应用程序的文件夹中。由于优先级规则,Windows 加载此 dll 而不是 system32 的 dll。 GLIntercept 将所有调用转发到 system32 的 dll,但同时记录它们。 因此,您可以实现自己的 glSwapBuffers() 来呈现更多内容,然后转发调用。

源代码也可用。

我赞成你的问题,我对你 future 的发现很感兴趣......当你有更多信息时,请随时重新发布 :)

关于windows - 用于游戏内覆盖的 SDK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3659259/

相关文章:

python - 尝试在我的 Tkinter/Python 应用程序中嵌入 native WINDOWS 命令​​行

windows - x64 调用另一个 dll 中的函数

windows - VS 2017 商店 'Create App Packages' 已禁用

c++ - OpenGL c++ 纹理有错误的颜色和位置

c# - 在哪里可以获得 Microsoft.DirectX.dll?

c++ - 如何以编程方式禁用网络摄像头的自动对焦?

windows - 如何在启动 powershell.exe 之前设置首选项 `$ErrorView = "CategoryView"`

c++ - 使用 glUniformMatrix4fv() 用新矩阵更新旧矩阵?

c++ - 为什么 glCopyTexSubImage2D 不能正确复制我的正方形?

c++ - xAudio MasterVoice 取得进展