`

手机游戏开发纹理图片优化心得

阅读更多

来自:http://blog.csdn.net/langresser_king/article/details/9313255

     1、纹理压缩。  就像windows下的dds图片一样,使用纹理压缩可以极大的减少图片加载时间(意味着不会有图片加载时的卡顿),内存消耗(以pvrtc4为例,内存直接减少到原来的八分之一),和游戏渲染性能。   ios下毫无疑问是pvr了(pvrtc4)  ,android下比较变态,显卡不同,支持的纹理压缩格式也不相同,一般来说etc1的格式(pkm或ktx扩展名)是opengles2.0均支持的格式。 但是这个仅仅是理论上支持,永远不要高估山寨机的性能,在某些山寨机(或者是联想这样的准山寨机)etc1的图片也无法正常显示,甚至是会崩溃。  所以android下不推荐使用纹理压缩格式。这样比较保险点。最新测试发现,原来是部分显卡不支持非2的整次幂的etc1图片,部分显卡是支持的。所以保险起见,所有的etc1图片需要是2的整次幂。  

     2、关于纹理内存优化没有太多可说的了,无非就是减少像素位数(RGBA888-->RGB565),减少图片大小,合理使用图片(即使释放资源)

     3、图片加载速度也是比较关键的一点。  能使用纹理压缩固然很好,不能使用的话,有两个解决方法,使用异步加载(可以解决卡顿的问题),合理预加载图片。

     4、图片体积,这个关系到最终安装包的大小。虽然现在手游的安装包越来越大,但是小一些总是好事。  同样,ios下使用pvrtc4的图片,一些颜色过渡明显的,使用png图片,如果没有半透明则使用jpg图片。

           android下不考虑使用压缩纹理。  则颜色位数少的使用png8的图片格式,颜色位数较多的如果非半透明使用jpg图片,如果含有半透明使用原始png图片(一般来说这种图片不会很多)。 总体来说,使用png8和jpg来减少图片体积大小。 同样图片体积小了也有助于提高加载速度。

    5、关于webp格式。这个我之前测试过,不知道现在有没有改进。  虽然他支持半透明,并且拥有比jpg更优的压缩比,但是由于纯cpu解压,所以加载速度非常悲剧。暂不考虑

    6、关于上文提到的png8的格式,这个是一个调色板格式,也就是说如果颜色位数小于256的话,图片就不会失真。这个不要用photoshop的转换,那个算法很挫,效果很糟糕。推荐一个在线工具和一个命令行工具进行批处理。 使用命令行工具转换的png8绝大多数情况与原图一直,除非半透明渐变过渡非常强的图,这样会有明显的波纹。

       在线版本     http://tinypng.org/

       命令行版本  pngquant,   使用方法很简单   pngquant.exe --force --verbose --ext .png --ordered --speed=1 --quality=50-90  xxxx.png

        其中--ext指定输出后缀,直接指定.png就是覆盖原文件

   7、关于jpg的压缩,jpg图片虽然很小了,但是还是可以进一步压缩的。使用Image Optimizer工具可以使图片进一步减少(10%~60%)

   8、使用2d骨骼动画甚至是3d动画,可以有效减少纹理所占的内存和加载消耗,虽然会增加一些cpu运算的消耗,但是手游应该不会出现同屏多少模型的情况。 尤其是一些全屏光效,拿2d图片帧几乎无法处理,但是3d光效就可以轻易搞定。 

分享到:
评论

相关推荐

    干货:Unity游戏开发图片纹理压缩方案.docx

    Unity 游戏开发图片纹理压缩方案 Unity 游戏开发中,图片纹理压缩是一项非常重要的技术。 Unity 提供了多种压缩格式,例如 PVRTC4、RGBA16 等,但是这些格式不一定能够满足我们的需求。在本文中,我们将讨论 Unity...

    手机游戏资源图片

    在手机游戏开发中,图片资源是至关重要的组成部分,它们构成了游戏视觉体验的基础。"手机游戏资源图片"这个主题涵盖了从图像设计、格式选择到优化等多个方面,这些元素共同决定了游戏的美观度和运行效率。 首先,...

    android手机游戏开发大全

    在Android手机游戏开发领域,开发者需要掌握一系列技术与工具,以创造出吸引人的、高性能的游戏。以下是一些关于Android手机游戏开发的重要知识点: 1. **Java或Kotlin编程基础**:Android平台主要使用Java和Kotlin...

    android手机游戏开发

    在Android平台上进行手机游戏开发是一项充满挑战且富有乐趣的工作。Android以其开源性和广泛的设备覆盖,为游戏开发者提供了广阔的创作空间。本教程旨在帮助初学者和有一定基础的开发者深入理解Android手机游戏开发...

    unity3D手机游戏开发光盘链接

    4. **图形渲染**:在手机游戏开发中,优化图形渲染非常重要。可能涵盖了光照、着色器、材质、纹理贴图和相机设置等内容,以确保游戏在移动设备上运行流畅。 5. **UI系统**:Unity的UI系统允许开发者创建丰富的用户...

    安卓游戏开发图片素材

    在安卓游戏开发中,图片素材是至关重要的组成部分,它们赋予游戏视觉吸引力,增强用户体验,并帮助构建游戏的世界观。这个压缩包文件"安卓游戏开发图片素材"包含了一系列未分类的图片资源,适合开发者根据自身需求...

    J2ME 3D手机游戏开发详解代码和书籍

    总的来说,J2ME 3D手机游戏开发是一个涵盖了多方面技术的领域,包括3D图形编程、物理模拟、音频处理以及性能优化等。初学者通过学习提供的代码和书籍,可以逐步掌握这个领域的核心知识,并有能力开发出自己的3D手机...

    游戏开发纹理和光照代码

    【游戏开发】说明:游戏开发,纹理和光照代码 游戏开发,纹理和光照代码 游戏开发,纹理和光照代码 文件列表: Chapter 19\Lighting and Texturing\d3dUtility.cpp (9950, 2003-03-09) Chapter 19\Lighting and ...

    游戏纹理资源素材

    游戏纹理资源素材是游戏开发中的重要组成部分,它们赋予游戏场景、角色和其他元素视觉上的细节和真实感。在本文中,我们将深入探讨游戏纹理资源的概念、重要性、制作过程以及其在游戏开发中的应用。 游戏纹理是指在...

    J2ee 3D手机游戏开发开发详解

    在本文中,我们将深入探讨使用J2EE技术进行3D手机游戏开发的各个方面。J2EE(Java 2 Platform, Enterprise Edition)是一个用于构建企业级应用程序的平台,但它的潜力并不仅限于此,它同样可以用于开发具有复杂图形...

    Unity 3D手机游戏开发( 金玺曾)

    Unity 3D是一款强大的跨平台游戏开发引擎,广泛应用于手机游戏、桌面游戏、网页游戏以及虚拟现实和增强现实应用的制作。由Unity Technologies开发,它以其高效、易学且功能丰富的特性深受开发者喜爱。在“Unity 3D...

    手机游戏实战开发手机游戏实战开发

    本专题将深入探讨手机游戏开发的核心概念,包括设计、编程、优化以及市场推广等关键环节。 首先,手机游戏设计是整个开发过程的基础。这涉及到游戏的玩法机制、关卡设计、角色设定和故事背景等内容。设计师需要根据...

    CryEngine引擎开发:性能优化与调试-(10).多线程编程与优化.docxCryEngine引擎开发:性能优化与调试-(11).Shader优化.docxCryEngine引擎开发:性能优化

    CryEngine引擎开发:性能优化与调试_(10).多线程编程与优化.docx CryEngine引擎开发:性能优化与调试_(11).Shader优化.docx CryEngine引擎开发:性能优化与调试_(12).纹理与材质优化.docx CryEngine引擎开发:...

    游戏纹理系列

    综上所述,“游戏纹理系列”资源涵盖了D3D11下纹理绘制的核心技术,包括纹理创建、使用、优化等方面,是学习和实践3D游戏开发的重要参考资料。通过理解这些知识点,开发者能够创建出更加丰富多彩、逼真的游戏世界。

    opengl编程 填充 图片 纹理

    在实际项目中,可能还需要考虑性能优化、纹理 atlasing(将多个小纹理合并到一个大纹理中以减少纹理切换)、MIP映射(提高远距离纹理的渲染质量)等高级技巧。对于VC++6.0这样的较旧开发环境,确保你的系统支持...

    Unity游戏开发优化

    3. 纹理优化:使用尺寸、格式、压缩等技术来优化纹理。 资源制作规范: 1. 模型规范:使用三角形数量、UV、LOD 等技术来规范模型。 2. 动作规范:使用时长、帧率、贴图等技术来规范动作。 3. 纹理规范:使用尺寸、...

    《深入BREW 手机游戏开发》源码

    5. 游戏开发流程:通过书中源码,读者可以学习到手机游戏的完整开发流程,包括游戏设计、编码、测试和优化。这涵盖了游戏逻辑、用户交互、性能优化等多个方面。 6. 技术点详解: - 渲染技术:BREW平台可能涉及到的...

    Textureyouhua_纹理特征优化_

    "Textureyouhua"这个标题暗示我们将会讨论如何优化纹理特征的提取和利用,特别是在图像分析和机器学习应用中。"联合灰度共生矩阵(Joint Gray-Level Co-Occurrence Matrix, JGLCM)"和"直方图"是两种常见的纹理特征...

    ARKit引擎开发:AR游戏性能优化+ARKit引擎开发基础+ARKit性能优化原理+硬件加速与优化+ARKit资源管理与优化.+.图形渲染优化技术+.场景复杂度控+遮挡剔除与视锥体剔除

    ARKit引擎开发:AR游戏性能优化_(1).ARKit引擎开发基础.docx ARKit引擎开发:AR游戏性能优化_(2).ARKit性能优化原理.docx ARKit引擎开发:AR游戏性能优化_(3).硬件加速与优化.docx ARKit引擎开发:AR游戏性能...

Global site tag (gtag.js) - Google Analytics