【发布时间】:2014-03-24 03:41:32
【问题描述】:
这是我想要做的:我想加载一个普通图像文件(.png、.tga、.bmp 等),将此图像作为纹理上传到 OpenGL,告诉 OpenGL 为纹理生成 mipmap,告诉OpenGL 压缩图像(使用 S3TC/RGTC),然后下载整个压缩/mipmapped 纹理,将其保存到一个文件中,以后可以一次将整个纹理加载到 OpenGL 中。
我已经完成了前 3 个步骤。我使用SDL2_Image 处理图像加载,我可以通过glTexImage2D() 上传所述图像,我可以使用glGenerateMipmap() 创建mipmaps。从那里开始,我几乎迷路了,但我可以毫不费力地弄清楚如何压缩图像。
我需要帮助的是最后一点 - 将整个压缩+mipmapped 纹理下载为单个连续的数据块,将其保存到文件(在内容创作阶段),然后一次上传整个内容(在运行时)。关于我可以从哪里开始的任何建议?
PS。我使用 OpenGL 3.3 作为我的最低版本。
【问题讨论】:
标签: c++ opengl compression textures