手机游戏中图片格式选择整理
整理自:
PC平台
- 高效压缩格式纹理dds.
iOS平台
- 高效压缩格式纹理: pvr, 必须是正方形且边长为2的幂次方,使用PvrTexTool生成.
- PvrTexTool支持命令行调用,调用方法和参数请参考纹理工具命令行调用范例
- 苹果设备限制标准官方文档
Android平台
C3游戏引擎在Android系统下,根据已知的5种机型硬件不同,采用不同的压缩格式纹理:
- 1.Mali CPU(三星猎户座CPU,如I9220/I9300等(Galaxy 2/3)): 不透明纹理使用ETC压缩,使用PvrTexTool生成ktx格式后缀的纹理,透明纹理使用png.
- 2.高通的CPU(HTC手机): 使用The Compressor 工具生成的ATC格式纹理(Note:工具生成的文件后缀名为dds,需要修改后缀名为atc给C3游戏引擎使用)
- 3.德州仪器CPU(摩托罗拉手机或其他基于PowerVR的GPU的解决方案,如联发科MT6573处理器,三星GS4): 使用跟苹果iOS一样的pvr格式,使用PvrTexTool生成.
- 4.Nvidia Tegra2 CPU: 使用DDS压缩纹理,等同PC上的纹理格式(DXT1, DXT3, DXT5).
- 5.Marvell GPU(中兴U880/华为海思CPU):OpenGLES2.0驱动实现有严重问题,只能用png格式。
二、总结:
1、最终决定图片占用内存的是它的像素格式和大小,与其扩展名无关。png8 png32 jpg pvr只要其像素格式都是argb8888,那么最终图片占用的内存是一样的。
2、如果不是pvrtc4的格式,那么图片大小不要扩展成2的整次幂(PC上dds需要2的整次幂但是手机中非pvrtc4不需要),因为图片越小,占用内存越小
3、单单去除透明通道不会减少图片所消耗的显卡内存(内存虽然减少了,但显存却没减少,应该和显存的内存对齐有关),png和jpg图片也无法减少图片体积,所以不推荐rgb888的格式。替代选择rgb565和rgb5551。
5、小心加载图片时临时开辟的纹理数据造成的内存飙高,可以考虑加入内存池,及时的开辟和释放缓冲区。
6、如果是为了减少图片体积可以选择:1、jpg--压缩比最高,质量较好,但是不支持半透明 2、png8--同样图片会比jpg略大一些,使用ImageAlpha进行转换,视觉上几乎看不出差别。 这两种图片格式都可以极大的减少图片体积(减少70%~80%),但是无助于减少内存
7、如果是为了减少内存可以选择:1、没有透明色的图片统一转换为rgb565格式,这个时候无法使用png8了,所以png和pvr.ccz图片大小几乎相同,pvr.ccz速度更快,所以推荐pvr.ccz的rgb565格式 2、如果透明色仅仅是进行关键色标注,而没有渐变混合,那么推荐rgb5551 (r5_a1)的pvr.ccz格式
8、可以考虑写个打包系统,统一把资源文件打包,而不是单个文件用pvr.ccz进行zip压缩,这样可以获得更高的效率。(比如我封装了下暴雪的mpq打包,其读取速度与本地文件读取速度相当,这样就可以获得最佳的读取效率)
手机游戏中图片格式选择整理相关推荐
- iOS开发图片格式选择
图片是如何显示的 在讲解如何选择图片格式之前,我感觉有必要先了解下,图片是如何展示的.如果我们要展示一张图片,一般步骤是这样的: /// Assets.xcassets中的图片,不需要后缀 let i ...
- html多选框放在图片上,网页中图片格式问题地总结.doc
网页中图片格式问题地总结 HYPERLINK "file:///C:\\Users\\Administrator\\Desktop\\图片格式与设计那点事儿%20-%20TaobaoUED_ ...
- 将xml文件中图片格式修改为jpg
将xml文件中图片格式修改为jpg: 1.只需要修改path路径,到*.xml所在的文件夹,运行之后会把xml 修改为.jpg. import os import os.path import xml ...
- 2014:手机游戏中那些正在变迁的元素
转自:http://www.cocoachina.com/game/20150122/10995.html 2013年底我们专篇剖析了当时手机游戏行业中的八个既定趋势,包括: 一,IP游戏的盛行与成功 ...
- android中图片格式png,jpg和webp
转载自:https://blog.csdn.net/fzx19910714/article/details/72877934 大家都知道同样的尺寸,png格式的图片要比jpg图片大很多,为什么Andr ...
- 批量改变文件夹和子文件夹中图片格式的两种方法
生活中,我们通常会遇到这种问题:一个文件夹内部有多个子文件夹,每个文件夹内部有很多图片,我们想改变这些图片的格式. 例如.png格式图片支持背景透明,但我们想把它变成背景不透明的.jpg图片.又比如. ...
- 手机游戏中的社交互动与任务剧情
http://www.gameres.com/forum.php?mod=viewthread&tid=456522 6 天前 上传 下载附件 (217.58 KB) GameRes游资网独家 ...
- Latex 中图片格式转换
写在前面的话 虽然今天要讲的是怎么把图片的格式进行转换,我还是把它归类到了我的Latex中.因为我比较懒,有个时候遇到难画的表格的时候,我觉得用Latex我都要崩溃了,我一般是用word然后截个图上去 ...
- 策略模式的应用——游戏中武器的选择
策略模式(Strategy Pattern):定义一系列算法类,将每一个算法封装起来,并让它们可以相互替换,策略模式让算法独立于使用它的客户而变化,也称为政策模式(Policy).策略模式是一种对象行 ...
最新文章
- Eclipse高版本无法兼容FatJar的问题解决
- 未来的数据中心(二)
- 征战蓝桥 —— 2013年第四届 —— C/C++A组第3题——振兴中华
- hdu 3401(单调队列优化dp)
- 轻量级文本编辑器,Notepad最佳替代品:Notepad++
- CString TCHAR互相转换
- 零基础入门│带你理解Kubernetes
- 洛阳地铁一号线无人驾驶_刚刚,最新消息!涉及洛阳地铁1号线、2号线…
- python中split的用法-python中的split()函数的用法
- 负载均衡故障排错指南 (3)
- VC++之MFC教程
- 联想数据中心技术总监单奖定:双态IT -数字化转型下的IT建设新思路
- 高并发系统设计 --基于MySQL构建评论系统
- springboot网上电子书店下载购买系统-图书商城网站961h3-java-ssm二级分类
- 爬动漫网站数据_通过这三种动漫爱上数据科学和技术
- 关于Ubuntu20.04下向日葵远程软件连接中断的解决方法
- 【博客496】k8s dns解析与服务发现原理
- 什么是monkey patch(猴子补丁)
- 为什么手机多用arm?
- 浏览器禁用的端口踩坑之6666端口