乐趣区

关于rendering:TMP的阴影性能如何

1)TMP 的暗影性能如何
​2)CommandBuffer.DrawMeshInstanced 无奈画暗影问题
3)Unity 编辑器在 Require 大量加载 Lua 文件时,常常报出 not enough memory
4)场景制作的时候,2D 资源受后处理调色影响比拟大


这是第 335 篇 UWA 技术常识分享的推送,精选了 UWA 社区的热门话题,涵盖了 UWA 问答、社区帖子等技术知识点,助力大家更全面地把握和学习。

UWA 社区主页:community.uwa4d.com
UWA QQ 群:465082844

TextMeshPro

Q:请问 TMP 的暗影性能如何?TMP 的描边没方法改成外描边吗?看起来 Outline 是内外都扩的,如果想要改成外扩只能改源码吗?

A1:UGUI 的 Outline 会让对象多渲染 n 次,TMP 的 Outline 并不会让对象的渲染次数减少,性能更好。

在这个 Shader 中把“+outline”删除,Outline 就会只往外扩散了。

感激 Xuan@UWA 问答社区提供了答复

A2:TMP 的暗影性能十分不错,因为它应用的是基于间隔场的渲染技术,这种技术能够在放弃高质量的状况下缩小渲染工夫。这意味着,即便在文本中应用多个暗影成果,也能够取得良好的性能体现。

至于 TMP 的描边成果,它是反对外描边的。默认状况下,TMP 的描边是内外都扩的,然而你能够通过更改材质属性来将其改为外描边。

具体来说,你能够在应用 TMP 组件的对象上找到对应的材质,而后将材质的 Outline Width 属性设置为正数,这样就能够将描边扩大到文本的内部。

须要留神的是,TMP 的材质是应用 ShaderLab 语言编写的,如果须要批改其外部逻辑,可能须要肯定的编程常识。然而,对于简略的批改,例如更改描边成果,你能够尝试应用 Shader Graph 工具来简化批改过程。

感激 NG 週 @UWA 问答社区提供了答复

Rendering

Q:想用 CommandBuffer.DrawMeshInstanced 画暗影,应用的是 URP 的 Lit Shader,ForwardLit 是能够的,且能够 AfterRenderingOpaques。然而暗影是画不进去,请问有什么解决办法吗?以下是代码(代码不是原创):
https://forum.unity.com/threads/commandbuffer-drawmeshinstanc…

局部代码截图:

针对以上问题,有教训的敌人欢送转至社区交换分享:
https://answer.uwa4d.com/question/6455c52f66cf0b727a3226f9


Rendering

Q:场景制作的时候,要不要开着后处理,遇到的问题是 2D 资源受后处理调色影响比拟大?

咱们的状况比较复杂:
1. 从性能角度思考,低配机型是不开后处理的
2. 2D 角色、2D 修建、3D 场景混合渲染
3. 有半解锁的和平迷雾成果

在这些需要下,场景制作跟后处理要怎么协同呢?

思考了几个计划都不太行:
1. 在 UI 相机画 2D,但无奈完满解决深度问题,因为场景的 RT 是缩放过的,但 UI 采纳全分辨率
2. 2D 片写入 Stencil,有一些半透的云可能遮住 2D 片,写入 Stencil 解决的话可能会有显著的边界问题,且 UberPost 最初是全屏的,因为场景 RT 跟界面 RT 尺寸不同,Stencil 也不对应
3. 将后处理的调色放到 Opaque 之后进行,但这样其余的半透则无奈参加调色,且这种计划带来更多的 RT 切换,在挪动端并不明智

当初想着是在不开前期的状况下设计场景,而后前期调色只是进行微调,尽量不影响 2D,如果成果甚微的话,就不开启前期调色了,不知这样解决如何?次要是 2D 与 3D 混合的场景,不是说 UI,UI 相机自身是不开前期的,不知大家有什么计划?

针对以上问题,有教训的敌人欢送转至社区交换分享:
https://answer.uwa4d.com/question/643e255a4530066a5c277d8f


Lua

Q:在 Unity 2018 编辑器上跑时,启动 Require 大量加载 Lua 文件时,常常报出 not enough memory,很频繁但非必现,在 Windows/Android/iOS 上都不会,用的是 toLua。

A:能够在编辑器外面用 System.IO.File 的接口读 Lua,避开 TextAsset 在编辑器不能卸载的问题。或者尝试降级 Lua 版本。

感激欧月松 @UWA 问答社区提供了答复

封面图来源于网络


明天的分享就到这里。生有涯而知无涯,在漫漫的开发周期中,咱们遇到的问题只是冰山一角,UWA 社区愿伴你同行,一起摸索分享。欢送更多的开发者退出 UWA 社区。

UWA 官网:www.uwa4d.com
UWA 社区:community.uwa4d.com
UWA 学堂:edu.uwa4d.com
官网技术 QQ 群:465082844

退出移动版