gpt4 book ai didi

opengl - 读取游戏(OpenGL 或 DirectX)屏幕上的像素

转载 作者:行者123 更新时间:2023-12-01 06:40:23 34 4
gpt4 key购买 nike

我想通过第三方应用程序(这不是我的游戏)读取游戏中给定位置的像素颜色(例如 OpenGL 或 DirectX)。

我尝试在 C# 中使用它,该代码非常适合读取桌面、窗口等的颜色,但是当我启动游戏时,我只得到 #000000,一个黑色像素。我认为这是因为我没有在正确的“位置”或类似的地方阅读。

有人知道该怎么做吗?我提到了 C#,但 C/C++ 也可以。

最佳答案

在基本步骤中:如果游戏是全屏的,则使用适当的 OpenGL 或 Directx 命令抓取渲染屏幕的纹理。
例如 glReadPixels您可以从当前绑定(bind)的帧缓冲区中获取窗口相对像素坐标处的像素值。
如果不是全屏,则必须将窗口位置与窗口相对像素坐标结合起来。

一些松散的例子:

glBindFramebuffer(GL_FRAMEBUFFER, yourScreenFramebuffer);
glReadPixels(/* your pixel X, your pixel Y, GLsizei width, 1 pixel wide, 1 pixel tall, GL_RGBA or GL_RGB, GL_UNSIGNED_BYTE, *where to store your pixel value */);

关于opengl - 读取游戏(OpenGL 或 DirectX)屏幕上的像素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11159025/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com