首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用libpng生成RGBA4444纹理数据,并将其用于opengl?

如何使用libpng生成RGBA4444纹理数据,并将其用于opengl?
EN

Stack Overflow用户
提问于 2015-03-18 10:00:52
回答 1查看 565关注 0票数 1

我正在做一个安卓游戏,现在我的图片文件都是" RGBA8888“png文件,我当前的工作流程是使用libpng将这些图片文件作为"rgba8888”格式分析成一块数据,然后为RGBA8888生成RGBA8888纹理(通过glTexImage2D函数),

现在我想使用RGBA4444颜色格式来降低内存成本,我的问题是:

  1. 如何将我的rgba8888 png文件转换成rgba4444格式?(我最初认为PS中的简单导出选项可以做到这一点,但没有)
  2. libpng支持rgba4444格式吗??我一般如何分析它?如果没有,我该怎么办?
EN

回答 1

Stack Overflow用户

发布于 2015-03-18 13:12:41

Libpng不支持RGBA4444。但是,它支持用户转换,因此应该可以编写用户回调函数,将RGBA8888像素转换为将返回给应用程序的RGBA4444像素。

在与libpng一起分发的文件"libpng_manual.txt“中搜索"user_transform_fn”。对于一个工作用户转换函数的例子,查找pngcrush的源,搜索"pngcrush_transform_pixels_fn“。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29118997

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档