当前位置: 首页 > news >正文

网上订餐系统dreamwaver网站设计百度电脑版

网上订餐系统dreamwaver网站设计,百度电脑版,济南市网站建设企业,柳州市有线电视收视费在Unity3D手游开发中,合理选择纹理压缩格式对于优化内存占用、提高渲染效率至关重要。本文将记录近期在项目内进行的图片压缩格式优化过程,重点介绍从ETC2到ASTC 5x5的优化方案及其带来的收益。 1. 现状分析:从ETC2到ASTC 6x6 block 在项目…

在Unity3D手游开发中,合理选择纹理压缩格式对于优化内存占用、提高渲染效率至关重要。本文将记录近期在项目内进行的图片压缩格式优化过程,重点介绍从ETC2到ASTC 5x5的优化方案及其带来的收益。

1. 现状分析:从ETC2到ASTC 6x6 block

在项目初期,统一采用ETC2作为主要的纹理压缩格式。这种格式在Android设备上的兼容性较好,但在细节表现和压缩效率上仍有优化空间。

通过测试,我发现 ASTC 6x6 block 可以在与ETC2相同的视觉质量下提供更好的压缩率。因此,我开始尝试将资源从ETC2转换为ASTC 6x6,并观察其对内存使用和加载性能的影响。

2. 选择ASTC 6x6作为主要格式

2.1 兼容性检查

虽然ETC2几乎在所有OpenGL ES 3.0及以上的设备上均受支持,但 ASTC 在现代设备上的支持率也非常高。为了确保兼容性,我们通过以下方法进行设备支持性检测:

// 检查设备是否支持ASTC 6x6
bool supportsASTC6x6 = SystemInfo.SupportsTextureFormat(TextureFormat.ASTC_6x6);
// 检查设备是否支持ASTC 5x5
bool supportsASTC5x5 = SystemInfo.SupportsTextureFormat(TextureFormat.ASTC_5x5);

同时,我们也确保设备支持OpenGL ES 3.0,避免兼容性问题:

public static bool CheckSupportOpenGLES3()
{GraphicsDeviceType deviceType = SystemInfo.graphicsDeviceType;return deviceType == GraphicsDeviceType.OpenGLES3;
}

通过广泛的数据收集和日志记录,发现项目用户绝大多数设备都支持 ASTC 格式,因此决定将其作为主要的压缩格式。

3. 相关配套优化

3.1 自动检查格式工具的修改

为了自动化这一优化过程,我们对内部的资源检测工具进行了修改,使其能够:

  • 自动检测并转换符合条件的ETC2纹理为ASTC

  • 对于某些 不希望被压缩 的纹理(如RGBA32格式的特殊资源),保持原样,不进行转换。

  • 允许手动标记精度要求较高的资源,自动选择 ASTC 4x4 或 ASTC 5x5 作为替代方案。

3.2 资源包适配不同设备

为了兼容少部分不支持ASTC的设备,我们采取了 双版本资源方案

  • 打包时生成两套资源

    • ASTC 5x5 版本:大多数设备加载该版本,减少内存占用。

    • ETC2 版本:兼容性回退版本,仅用于不支持ASTC的设备。

  • 运行时判断设备支持情况,选择合适的资源下载:

if (SystemInfo.SupportsTextureFormat(TextureFormat.ASTC_5x5) && SystemInfo.SupportsTextureFormat(TextureFormat.ASTC_6x6) && CheckSupportOpenGLES3())
{// 下载ASTC版本资源
}
else
{// 下载ETC2版本资源
}

3.3 纹理效果测试与优化

除了兼容性优化外,还针对纹理的视觉效果进行了测试。

  • 半透明渐变纹理问题

    • 发现某些带有半透明渐变的图片在使用ASTC压缩后会出现明显的“色带”(banding)现象。

    • 解决方案:对于这类资源,继续使用 ETC2 或者 RGBA32

  • 高精度纹理优化

    • 某些对细节要求较高的纹理可以使用 ASTC 4x4 或 ASTC 5x5 替代 RGBA32。

    • 结果表明,这样的替换方案在大多数情况下都能保持良好的画质,同时大幅减少内存占用。

4. 优化成果总结

经过以上优化,取得了以下成果:

  • 内存占用降低了30% 以上,有效减少了RAM压力。

  • ASTC 6x6 block的包体大小甚至比ETC2还小点,由于有部分精度为5x5和4x4以及保留不压缩的格式,至少在包体大小没有变大甚至有优化的情况下,实现了更精细的精度控制。

  • 加载性能优化,由于ASTC的高效压缩,资源的磁盘占用也相应减少。

  • 兼容性良好,通过自动检测设备支持情况,确保了游戏在不同设备上的稳定运行。

  • 视觉效果优化,针对特定场景调整了压缩方案,避免了画质损失。

5. 结论

本次优化充分利用了ASTC的压缩优势,使项目在保证兼容性的同时,大幅降低了内存占用。对于现代移动游戏来说,合理选择纹理压缩格式可以带来显著的性能收益,也值得在后续的优化中持续关注和改进。

http://www.15wanjia.com/news/50508.html

相关文章:

  • 做超市商品海报免费海报模版网站pc端网页设计公司
  • 网站不能自行备案吗网站优化培训
  • 上海网站建设 知名做运营和营销的区别和联系
  • 无锡网站制作的公司有哪些昆山优化外包
  • 做网站哪种域名好记快速网站排名优化
  • 郑州疫情最新通报长沙seo
  • 英文网站建设深圳seo优化步骤
  • 我可以复制别人网站代码自己做我的网站吗具软文媒体
  • 如何自建淘宝客网站百度百科推广联系方式
  • 网站开发需要什么人员深圳整站seo
  • 南乐网站建设公司百度下载安装到桌面上
  • 域名免费注册网站怎么做
  • 伤豆丁文库网站开发自己怎么做一个网页
  • 龙游网站制作运营商推广5g技术
  • 中山做外贸网站建设东莞网络公司电话
  • 扬州网站建设小程序百度网站推广价格
  • 我想找个郑州做网站的百度快照怎么使用
  • 做网站联系方式公司网站设计与制作
  • 网页设计和网站开发广州seo推广培训
  • 只做财经的网站电商网站建设 网站定制开发
  • 石家庄做网站 vtkj广东东莞疫情最新消息今天又封了
  • 企业网站改造优化百度竞价推广登陆
  • 应用开发是什么常州seo外包公司
  • 网站底部浮动电话广告平原县网站seo优化排名
  • 公司制作个网站网坛最新排名
  • 学做网站论坛vip美国最新消息今天 新闻
  • 龙岩网站设计招聘信息培训课程开发
  • 网页怎么做成网站营销网站大全
  • 如何用python开发网页seo学习网站
  • 动态网站建设步骤百度打广告多少钱