Crunched ETC2相关问题

Crunched ETC2相关问题

1)关于Crunched ETC2的问题
2)如何在Unity中显示HTML
3)减少Unity中图片拉伸旋转后产生的锯齿感
4)Outline导致顶点数量的大幅增加
5)升级到MacOS Catalina以后Unity出现空白错误


这是第203篇UWA技术知识分享的推送。今天我们继续为大家精选了若干和开发、优化相关的问题,建议阅读时间10分钟,认真读完必有收获。

UWA 问答社区:answer.uwa4d.com
UWA QQ群2:793972859(原群已满员)


Texture

Q:Unity提供了Crunch压缩ETC2后,我用2017版本试着压缩了一下,确实可以比原来Unity 5.6的ETC2格式打出来的AssetBundle包小很多。但有些问题查了一些资料也没有答案,所以来请教一下:

1. Unity仅提供了RGBA Crunched ETC2格式,并没有RGB Crunched ETC2,所以全部用RGBA,内存会比原来分别设置RGB和RGBA高一点。请问RGB是应该改用回RGB Crunched ETC吗?

2. Compressor Quality的50(Crunched是0-100进度条)可以理解为完全等于其它格式(Fast、Normal、Best)的Normal吗?

附图:



A1:1.使用TextureImporter.DoesSourceTextureHaveAlpha()函数判断一下,有Alpha的就设置RGBA,没有的就设置RGB。
2.这个值越大表示它压缩后内存占用越大压缩时间越长,越小则表示占用越小时间越短。等不等同于Normal则未知了,毕竟是不同的压缩率。

如果你选ETC2,带A的是RGBA Compressed ETC2 8bits,不带A的就是RGB Compressed ETC2 4bits;选ETC2还是选Crunch需要根据你的图片质量要求,如果内存不足,对图质量要求尚可,那就用Crunch。
感谢李星@UWA问答社区提供了回答

A2:对于非Crunch格式的纹理,0、50、100分别代表Fast、Normal、Best。但是对于采用Crunch格式的纹理,官方文档描述为:可以近似理解成JPEG的quality levels。

查阅总结JPEG的quality levels为:100%为无损,90%-100%为高品质,80%-90%为中品质,70%-80%为低品质,低于70%为超低品质。

参考文档:
https://docs.unity3d.com/ScriptReference/TextureImporter.SetPlatformTextureSettings.html
http://fotoforensics.com/tutorial-estq.php

感谢贾成伟@UWA问答社区提供了回答,欢迎大家转至社区交流:
https://answer.uwa4d.com/question/5d77149491262623a9fc74d9


Script

Q:很多游戏中的公告,都是以HTML形式显示的,但Unity中貌似没有直接显示一个HTML的功能。搜索了相关的资料后,发现有几个相关的插件。
1. UniWebView支持iOS、Android,支持Mac OS下Editor调试,但不支持PC以及Windows下的Editor调试。
2. Embedded Browser支持PC、Mac OS,不支持Android和iOS。
3. 3DWebView在PC、MacOS、iOS和Android上都支持,但似乎用的人比较少,不知道有没有什么问题,且价格比较高,将近500美金。

我们的项目希望在iOS、Android和PC端都能支持,且希望在Window下Editor能够调试。求问各位,显示HTML的需求用的是什么解决方案?

A1:因为只是做手游,所以我们使用的是UniWebView,在Mac下调试。
感谢黄程@UWA问答社区提供了回答

A2:用UniWebView。调试什么基本没什么必要,很简单的功能,交互的东西也少。建个空工程,把它在封装一遍,打包手机平台测试下就好,很快。

感谢Robot.Huang@UWA问答社区提供了回答,欢迎大家转至社区交流:
https://answer.uwa4d.com/question/5eb3fa044d93790618e0ece6


Rendering

Q:如下图。Unity中Image拉伸旋转后出现严重锯齿,如何能减少锯齿感呢?


A1:可以参考这个帖子:【锯齿】UI界面设置了Rotation

解决办法就是使用Screen Space-Camera模式。
感谢Vest@UWA问答社区提供了回答

A2:要解决你这个问题有取巧的方式,就是让美术把图片四边留一部分透明区域。


感谢w@UWA问答社区提供了回答,欢迎大家转至社区交流:
https://answer.uwa4d.com/question/5eb12ac24d93790618e0ec86


Rendering

Q:我们最近的项目使用了UGUI作为UI系统,在使用UGUI的过程中遇到了不少问题,其中一个问题是:描边的文字与美术同学出的效果图有不小的差异。效果图的描边效果连贯而且均匀,而UGUI的Outline组件的效果仅仅只是解决了“温饱问题”,并且这种实现方式带来了其它问题,比如顶点数量的大幅增加。有什么好的优化方案可以提供一下吗?

A:这是较为常见的Outline性能问题。如果对UGUI的原生Outline效果不太满意,可以尝试两种办法:

  1. 试试使用TextMesh Pro;
  2. 如果需要Outline的文字是少量可控的,比如HUD文字,一些UI界面的固定文字,可以让美术人员直接作出美术字使用。

该回答由UWA提供,欢迎大家转至社区交流:
https://answer.uwa4d.com/question/5eb8fedc4d93790618e0ed22


Editor

Q:我们最近升级了Mac系统到最新的Catalina,然后打开自己的工程以后一直有一个空白的错误,清不掉也点不开,Unity的版本是2017.4.10,跟Unity论坛上这位遇到的问题是一样的。

另外,我看到ISSUE TRACKER上有这样一个问题

这是说2017版本不会修复吗?有人遇到过相同的问题吗?


补充:
.net版本从3.5调到4.6就不会发生这种错误,不过感觉这不是解决办法。

A1:工程里面不能有.js的脚本,删除后就可以了,发现T4M里面有个js脚本,记下来以防别人也遇到相同问题。
感谢题主关@UWA问答社区提供了回答

A2:还可以把操作系统的语言换成中文,也可能解决这个问题。

感谢苟谆@UWA问答社区提供了回答,欢迎大家转至社区交流:
https://answer.uwa4d.com/question/5da80270e84db43d6efbda1a

封面图来源:
Light Shafts


今天的分享就到这里。当然,生有涯而知无涯。在漫漫的开发周期中,您看到的这些问题也许都只是冰山一角,我们早已在UWA问答网站上准备了更多的技术话题等你一起来探索和分享。欢迎热爱进步的你加入,也许你的方法恰能解别人的燃眉之急;而他山之“石”,也能攻你之“玉”。

官网:www.uwa4d.com
官方技术博客:blog.uwa4d.com
官方问答社区:answer.uwa4d.com
UWA学堂:edu.uwa4d.com
官方技术QQ群:793972859(原群已满员)