gpt4 book ai didi

c++ - GLReadPixels 返回一个单一的、不正确的、一遍又一遍重复的值

转载 作者:行者123 更新时间:2023-11-28 07:28:48 25 4
gpt4 key购买 nike

<分区>

我目前正在尝试使用 OpenGL 编写一个简单的屏幕捕获应用程序。我当前的来源如下所示:

#include <Windows.h>
#include <iostream>
#include <gl/GL.h>
#include <fstream>

using namespace std;

void main()
{
int nWidth = 1920; // use these dimentions, We'll work work out a calculation to get the real dimentions later.
int nHeight = 1080;
unsigned char* buffer;//declair the buffer here plox
int size = nWidth*nHeight*3; //number of bytes the image will take up.
char input;

buffer = (GLubyte *)malloc(size); // acctually assign some RAM for the program



glReadBuffer ( GL_BACK ); //which buffer we are reading from.

glReadPixels ( 0, 0, nWidth, nHeight, GL_RGB, GL_UNSIGNED_BYTE,buffer);

const char* out=(const char*)buffer;

std::ofstream outfile ("out.crw",std::ifstream::binary);

outfile.write (out,size);
cout << out;
cin>> input;
return;

}

它不会产生任何错误。虽然,GLReadPixels 的返回值是在输出文件中反复出现的字符“í”。 “í”的十六进制值为“CD”,“CD”的颜色值为红色 205,所以它似乎至少输出一种颜色。

我期待返回多个值来指示包含多种颜色的图像。我做错了什么?

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