首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于OpenGL游戏( Counter Strike 1.6)问题的C++/C#截图

关于OpenGL游戏( Counter Strike 1.6)问题的C++/C#截图
EN

Stack Overflow用户
提问于 2010-10-05 08:06:26
回答 1查看 1.5K关注 0票数 1

我开发了一个反聊天的反恐罢工使用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

EN

回答 1

Stack Overflow用户

发布于 2010-10-07 04:07:36

如果你可以使用OpenGL/GLUT显示回调函数,你可以在函数的末尾,在glutSwapBuffers();之后的某个地方添加一个对glReadPixels的调用。接下来,您需要将由glReadPixels填充的RGB图像缓冲区以适当的格式写入文件,如果应用程序还没有图像处理库,则可以使用IJG JPEG library

代码语言:javascript
复制
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);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3860046

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档