首页 > 其他分享 >TMP的阴影性能如何

TMP的阴影性能如何

时间:2023-05-17 11:56:33浏览次数:38  
标签:TMP 社区 性能 阴影 2D 调色 UWA uwa4d

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-drawmeshinstanced-shadowcasting.1343306/

部分代码截图:

 

针对以上问题,有经验的朋友欢迎转至社区交流分享:
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

标签:TMP,社区,性能,阴影,2D,调色,UWA,uwa4d
From: https://www.cnblogs.com/uwatech/p/17408188.html

相关文章

  • 「性能测试实战30讲」之问题问答整理四
    1思考题   今天的内容有点多,我提几个思考题,你就当是对文章的回顾吧。你觉得企业选择性能工具应该考虑哪些方面呢?以及性能测试工具中是否必须做监控呢?第一个问题:大概会考虑怎么几个方面:-学习成本:对人员的水平要求,培训时间成本等;-脚本编写:能否录制测试脚本,是否支持GUI操作等;-......
  • 「性能测试实战30讲」之问题问答整理二
    02丨性能综述:TPS和响应时间之间是什么关系?01思考题 如果你理解了今天的内容,不妨说说为什么说现在市场上的概念对性能项目的实施并没有太大的价值?其次,性能场景为什么要连续?而不是断开?读者A:第一个问题:日常生活中价值可以通俗的理解为“合算不合算”,“值得不值得”,这里泛指对性能项......
  • Qt编写视频监控系统73-不同视频流不同类型的判断和解析(http/m3u8/rtsp/rtmp等)
    一、前言这套视频监控系统大概从2018年起步整体框架,一步步积累到现在,中间经历了无数次的各种视频文件、视频流、视频设备的播放测试,比如光视频文件就有mp4/wmv/rmvb/mkv/avi等格式,视频设备有本地USB摄像头、桌面等,视频流有rtmp/rtsp/rtp/http等,其中http开头的就有视频文件和视频......
  • Python: 结合多进程和 Asyncio 以提高性能
    动动发财的小手,点个赞吧!简介多亏了GIL,使用多个线程来执行CPU密集型任务从来都不是一种选择。随着多核CPU的普及,Python提供了一种多处理解决方案来执行CPU密集型任务。但是直到现在,直接使用多进程相关的API还是存在一些问题。在本文开始之前,我们还有一小段代码来帮助演......
  • threejs webgl性能优化
    threejswebgl性能优化WEBGL性能优化的方法有很多,以下是一些常见的方法:减少渲染次数:在WEBGL中,渲染次数越少,性能越好。因此,您可以通过减少渲染次数来提高性能。例如,使用批处理技术将多个对象合并为一个批处理对象进行渲染。降低纹理分辨率:纹理分辨率越高,渲染的时间就越长。......
  • Jmeter性能测试知识点
    性能测试一、测试理论:1. 性能指标概念:①吞吐量:每秒服务器处理请求个数和事务数②响应时间:一个任务(事务)完成所花费的时间③并发数:同时操作的用户个数④最大并发数:在给定的预期平均响应时间下,系统最多能支持多少个并发用户。这个数据就是实际可以同时使用系统的用户数⑤TPS:......
  • 使用java mail(jmail)通过gmail的stmp发送邮件:SSL方式
    [url]http://stackoverflow.com/questions/1990454/using-javamail-to-connect-to-gmail-smtp-server-ignores-specified-port-and-tries[/url]Transporttransport=session.getTransport("smtps");transport.connect(smtp_host,smtp_por......
  • 某游标永磁电机性能及其波形
    某游标永磁电机性能及其波形ID:57499662472822989......
  • 某大型永磁发电机故障性能及其波形
    某大型永磁发电机故障性能及其波形ID:91899662504254724......
  • 7.5kW开关磁阻电机性能及其波形
    7.5kW开关磁阻电机性能及其波形ID:43999662277337219......