我試圖保存一個尺寸爲5x5像素的圖像,用glReadPixels將其讀取到使用SOIL的文件中。將屏幕的一部分保存到文件(SOIL和glReadPixels)
我讀的像素:
int x = 400;
int y = 300;
std::vector< unsigned char* > rgbdata(4*5*5);
glReadPixels(x, y, 5, 5,GL_RGBA,GL_UNSIGNED_BYTE, &rgbdata[0]);
然後我嘗試拯救與土壤的讀取數據保存圖像功能
int save_result = SOIL_save_image
(
"image_patch.bmp",
SOIL_SAVE_TYPE_BMP,
5, 5, 4,
rgbdata[0]
);
但是,試圖保存圖像時,我得到一個未處理的異常。
溶液(基督教RAU)
int x = 400;
int y = 300;
std::vector< unsigned char > rgbdata(4*5*5);
glReadPixels(x-(5/2), y-(5/2), 5, 5,GL_RGBA,GL_UNSIGNED_BYTE, &rgbdata[0]);
int save_result = SOIL_save_image
(
"image_patch.bmp",
SOIL_SAVE_TYPE_BMP,
5, 5, 4,
rgbdata.data()
);
您將需要添加更多詳細信息... –