我开发了一个反聊天的反恐罢工使用C++ .This AC需要采取屏幕截图,并上传到指定的服务器。问题是在Win7/Vista中,屏幕截图是黑色的。我在网络上做了一些研究,但没有找到对我有帮助的东西。
我看到了TAKSI源代码,测试了所有版本,Taksi0.3已经足够好了,而且不是很大,但我不能调试源代码( http://sourceforge.net/projects/taksi/files/stable/taksi-0.3/taksi-0.3-src.zip/download )。当我使用DirectX 9SDK包含的所有库和STL进行调试时,我得到了很多错误。(我还阅读了Build.txt信息,并尝试使用Visual C++ 2006,DC++,Visual C++ 2010 )
我是C++应用程序的乞讨者,我真的想做这件事。如果有人能帮我简化一下Taksi0.3源码(我只需要在OpenGL上截图),给我源码将会对我和CS社区有很大的帮助。
此外,如果没有人有时间为我简化0.3源代码,我将不胜感激,如果你能解释我如何调试它(非常解释txt:)
请帮助我:p
发布于 2010-10-07 04:07:36
如果你可以使用OpenGL/GLUT显示回调函数,你可以在函数的末尾,在glutSwapBuffers();之后的某个地方添加一个对glReadPixels的调用。接下来,您需要将由glReadPixels填充的RGB图像缓冲区以适当的格式写入文件,如果应用程序还没有图像处理库,则可以使用IJG JPEG library。
int width = 1024; // would be better to get actual window dimensions
int height = 768;
unsigned char *img_rgb[width * height * 3]; // each pixel is three bytes (RGB)
...
glReadPixels(0,0, width,height, GL_RGB, GL_UNSIGNEDBYTE, img_rgb);https://stackoverflow.com/questions/3860046
复制相似问题