【发布时间】:2026-01-29 07:05:01
【问题描述】:
所以我过去两天通过谷歌浏览了我的问题的不同类型的“解决方案”,没有那么多,而且我发现的那些似乎不起作用。
我正在从 Gimp 将一个小的测试图像导出为 .c 资源文件,它的大小是 64x64,它有一个 alpha 通道。 基本上看起来像:
static const struct {
unsigned int width;
unsigned int height;
unsigned int bytes_per_pixel; /* 2:RGB16, 3:RGB, 4:RGBA */
char *comment;
unsigned char pixel_data[64 * 64 * 4 + 1];
} ship = {
64, 64, 4,
(char*) 0,
"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
"\0\0\0\0\0\0\0\0\237\237\237\377\237\237\237\377\237\237\237\377\237\237"
"\237\377\237\237\237\377\237\237\237\377\237\237\237\377vZI\0vZI\0vZI\0\0"
"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
这样持续了很长一段时间,正如你所预料的那样,直到最终以
结束 "\237\237\377\237\237\237\377\237\237\237\377",
};
那么我怎样才能真正使用这个资源文件呢?如果有人能提供一个例子,创建一个印有纹理的正方形所需的最低限度,我将不胜感激。
【问题讨论】:
-
该结构具有创建纹理所需的所有信息。什么不清楚?
标签: c++ opengl gimp freeglut texture2d