Timeline技能编辑器如何提取关键帧信息

1)Timeline技能编辑器如何提取关键帧信息

2)Mesh资源开启R/W内存的翻倍问题

3)UI的Animator动画对Canvas.SendWillRenderCanvas()耗时影响

4)对Shader变体的理解


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

UWA 问答社区:answer.uwa4d.com

UWA QQ群2:793972859(原群已满员)

Script

Q:最近在用Unity做一个技能编辑器,让策划可以在Timeline编辑器里编辑技能动画、施法特效、受击动画、受击特效和播放声音等等。编辑这些都没什么问题,我想根据编辑好的Timeline导出一系列行为节点,在Editor的环境下导出成配置(包含所有行为节点)。现在我不清楚怎么获取Timeline里第m帧开始某动画x,第n帧结束这些行为。同时怎么能给动画打上对应Tag?

A:Timeline的组成如下图:

每个Track对应一个TrackAsset其实就是一个PlayableAsset,整个Timeline也是一个TimelineAsset,里面存了所有Track的数据:

对于每个Clip的开始和结束时间在TimelineClip中可以获取:

感谢羽飞@UWA问答社区提供了回答,欢迎大家转至社区交流:

https://answer.uwa4d.com/question/61c00a17d8413e18eb546b3b

Mesh

Q:为什么Profiler中显示开启网格的Read/Write没有使其内存翻倍,而仅仅是上升了一点?

A:如果是FBX中的网格资源,则该网格资源很有可能除了自身网格的顶点数据外,还带有动画和骨骼信息。而当开启FBX的Read/Write时,仅会使网格资源自身的内存翻倍,而动画和骨骼信息不会,且Profiler并不能将他们分开统计,从而产生了整体没有翻倍的现象,如图。

开启Read/Write:

没开Read/Write:

这一点可以通过将FBX设置中Animation Type设置为None、取消Import Animation勾选、取消Import Materials勾选证明。此时Profiler中该网格资源内存显著下降,并基本符合开启Read/Write前后内存翻倍了。

值得一提的是,在较新版本的Unity中(图截自2020.3),选中网格资源是可以看到其内存的理论大小和具体组成部分的。

感谢Faust@UWA问答社区提供了回答,欢迎大家转至社区交流:

https://answer.uwa4d.com/question/61c05c15d8413e18eb54ec09

UGUI

Q:对UGUI添加Animator动画会造成UI更新耗时吗?如果Animator组件处于Active状态但没有进行Loop会有持续耗时吗?

A:在Unity 2018.4版本中对于这个问题实验如下:

步骤1,场景中为一个UI添加修改Scale的动画,并复制1000个;

步骤2,添加了其Position和Color属性的动画;

步骤3,修改了所在Canvas的Render Mode为Overlay模式和Camera模式;

步骤4,修改了所在Canvas的Pixel Perfect为打开。

只进行1的情况下无论动画是否Loop,Canvas.SendWillRenderCanvas()都只会在刚开始时有一段高耗时。

而修改2之后的所有情况下,开启Loop时Canvas.SendWillRenderCanvas()始终具有高耗时。但关闭Loop后,播放完一次动画后Canvas.SendWillRenderCanvas()的耗时就始终接近于0了,如图:

而此时动画系统本身的Animator.Update()耗时仍然很高,如图:

总的来说,从2018.4上的这次实验来看,现版本的UGUI不会被不在播放状态的Animator影响而造成Canvas.SendWillRenderCanvas()耗时。

感谢Faust@UWA问答社区提供了回答,欢迎大家转至社区交流:

https://answer.uwa4d.com/question/61c05b07d8413e18eb54ea3e

Shader

Q:除了不建议使用Standard Shader外,还有其他的Unity默认的Shader不推荐使用吗?比如官方的Universal Render Pipeline/Particles/Unlit有6个变体,其中也用到了雾效的计算。但是我们项目中没有用到雾效,而且这个Shader用得非常多,这类情况是否有必要自己弄一个简洁版?

A:关于Shader变体数量主要影响的是Shader的内存(虽然变体数量和内存并不是完全的线性关系),如下PPS中的Uber变体数为3.74K很高:

主要是因为有很多multi_compile的Keywords,建议手动删除一些不用的(或使用shader_feature代替),可以大大降低变体数量:

以上示例就是简单粗暴的优化对内存影响较大的Shader,当然最好是通过SVC对项目中所有Shader的所有变体进行管理,但工作量相对会大很多。

感谢羽飞@UWA问答社区提供了回答,欢迎大家转至社区交流:

https://answer.uwa4d.com/question/61c672c1d8413e18eb5db606

封面图来源于

Animation Rigging: Advanced Setups

展示了Unity动画索具包的高级设置和用例。


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

官网:www.uwa4d.com

官方技术博客:blog.uwa4d.com

官方问答社区:answer.uwa4d.com

UWA学堂:edu.uwa4d.com

官方技术QQ群:793972859(原群已满员)

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,033评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,725评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,473评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,846评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,848评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,691评论 1 282
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,053评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,700评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,856评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,676评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,787评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,430评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,034评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,990评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,218评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,174评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,526评论 2 343

推荐阅读更多精彩内容