- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我用C++开发反恐精英的Antichat,这个AC需要截图上传到指定的服务器。问题是在 Win7/Vista 中屏幕截图是黑色的。我在网上进行了研究,但没有找到对我有帮助的东西。
我看到了 TAKSI 源代码,测试了所有版本,Taksi 0.3 足够好而且不是很大,但我无法调试源代码 (http://sourceforge.net/projects/taksi/files/stable/taksi-0.3/taksi-0.3-src.zip/download)。当我使用所有 DirectX 9 SDK include 和 libs 和 STL 调试它时,我遇到了很多错误。 (我还阅读了 Build.txt 信息,并尝试使用 Visual C++ 2006、DC++、Visual C++ 2010)
我是 C++ 应用程序的初学者,我真的很想这样做。如果有人可以为我提供帮助或简化 taksi 0.3 源代码(我只需要在 OpenGL 上截取小屏幕截图)并给我源代码,这将对我和 CS 社区有很大帮助。
此外,如果没有人有时间为我简化 0.3 源代码,我将不胜感激,如果你能解释我如何调试它(非常解释的 txt:))
请帮帮我:P
最佳答案
如果你能进入OpenGL/GLUT显示回调函数,你可以添加对glReadPixels
的调用在函数的末尾,在 glutSwapBuffers();
之后的某处。接下来,您需要将由 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);
关于OpenGL 游戏(反恐精英 1.6)问题的 C++/C# 屏幕截图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3860046/
我是一名优秀的程序员,十分优秀!