我正在尝试为网页游戏制作一个简单的机器人,所以我希望能够读取屏幕上像素的颜色。我已经在 Windows 上使用 GetPixel() 完成了此操作,但我似乎无法在 OS X 上弄清楚它。我一直在网上查找并遇到了 glReadPixel。当我在XCode中制作一个简单的命令行工具时,我输入了以下代码。但是,我似乎无法使其发挥作用。我不断收到 EXC_BAD_ACCESS 错误:
GLfloat r;
glReadPixels(0, 0, 1, 1, GL_RED, GL_FLOAT, &r);
我认为上面的代码会将 (0,0) 处像素的红色值存储到 r 中。哦,我想避免采用屏幕截图方法,因为那很慢。有什么帮助吗?
附:使用命令行工具,我的最终目标是制作 bash 脚本或 applescript,因为我已经有了一个可以在屏幕上单击的命令行工具。
glReadPixels
只关心从帧缓冲区(显卡绘制的区域)读取像素。
从“屏幕”读取像素与OpenGL完全无关。为此,您需要系统特定的功能。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)