提问人:Summit 提问时间:5/31/2022 最后编辑:Rabbid76Summit 更新时间:1/27/2023 访问量:95
如何使用 soil2 库将纹理保存到图像
How to save texture to image using soil2 library
问:
我正在尝试使用 SOIL2 库将纹理保存到图像中。
int _width, _height;
unsigned char* _image = SOIL_load_image("C:\\Temp\\RED.png", &_width, &_height, 0, SOIL_LOAD_RGB);
int save_result = SOIL_save_image
(
"C:\\temp\\atlas.png",
SOIL_SAVE_TYPE_PNG,
_width, _height, GL_RGB,
_image
);
但是图像没有被保存,保存函数的返回值为 0。
答:
2赞
hpalo
1/27/2023
#1
就我而言(GL_RGBA),我需要将 channels 参数设置为 4(而不是 GL_RGBA)才能使其正常工作。在您的情况下,您可能需要将其更改为 3(而不是 GL_RGB)。
评论
1赞
Heinrich supports Monica
2/3/2023
完全。如果查看土壤库的源代码 (github.com/SpartanJ/SOIL2),channels 参数仅指定通道数(并假定 RGB(A) 布局)。
评论