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

太原市建设厅网站首页电商推广

太原市建设厅网站首页,电商推广,app编写软件,关键词优化除了做网站还有什么方法在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.dtcms.com/wzjs/81961.html

相关文章:

  • 网站推广策略的控制和效果评价怎样制作一个自己的网站
  • 网站banner图尺寸是多少长沙关键词排名首页
  • 好的网站建设产品推广哪个平台好
  • 宝安网站建设深圳信科如何让自己的网站被百度收录
  • 拉萨网站开发谷歌搜索入口
  • 网站备案工作百度软文推广怎样收费
  • web前端自己做网站分类达人介绍
  • 把网站做二维码seo优化博客
  • 企业网站系统seo是什么意思呢
  • 网站建设首先要保定seo排名
  • wordpress网站打开很慢滨州seo排名
  • python企业网站开发seo营销优化
  • 厦门建设集团网站中国新冠疫苗接种率
  • 石家庄鹿泉网站建设免费自助建站平台
  • 网站建设交什么税高级搜索引擎
  • wordpress的底部找不到版权信息哈尔滨seo服务
  • 代做网站在哪找活网站收录入口
  • 瑞安网站建设公司怎么样在百度上免费推广
  • 郫县做网站淄博seo推广
  • 网站正在建设中动画百度账户登录
  • 公司网站建设的目标百度关键词排名点击器
  • 综合门户网站什么意思网络营销工具平台
  • 做网站点击挣钱不石家庄seo
  • 自己的网站做微信接口平台重庆森林为什么不能看
  • 请问下网站开发怎么弄seo优化行业
  • 网站域名使用期哪有恶意点击软件买的
  • 做网站用哪个编程语言深圳seo优化推广
  • 重庆转店铺哪个网站平台好营销策划公司介绍
  • 新手如何做网站运营晋中网站seo
  • 深圳建设银行分行网站宁德市属于哪个省