Re: lopp请进

楼主: lopp54321010 (嘻嘻010)   2020-11-03 20:50:39
※ 引述《SecondRun (任豚)》之铭言:
: 我现在在做UI
: 如果想要播完某个动画之后做些逻辑判定然后打开下一个UI
: 播完动画这个动作要怎么判定比较好啊
: 应该不是每frame检查这样乱来吧
: 然后我们是MVC架构
: 这样做真的好麻烦
: 必须要controller判定播哪个动画->某个地方(大概是UI)检查动画播完->
: 再回controller检查接下来做什么->UI再做指定的反应
: 有没有比较好的方式可以让这部分不会这么复杂啊
1. 这是一个空物件上面挂了刚新增的Animator跟一个刚开的Script
https://i.imgur.com/JlH95pv.png
2. Script的内容很简单,就长这样,System.Action<>是我个人习惯,
不喜欢的同学可以改用UnityEvent或用更标准的delegate写法
https://i.imgur.com/xdt7r1e.png
3. 按一下Ctrl+6(不是数字键盘的那个)打开Animation tab
再按一下红框的这东东新增一个Animation event
https://i.imgur.com/UEXzO7P.png
4. 把这个蓝蓝的东东拉去要触发Event的对应动画帧
范例来说就是拉到Animation结束的地方
https://i.imgur.com/53Jl9yn.png
5. 去你的Inspector选择对应Function
然后在下面填一个Unique key作为你判断到底是哪个Animation结束的依据
https://i.imgur.com/dcri9eN.png
6. 去其他地方做事件注册,应该就可以了拔
https://i.imgur.com/nIf0i3j.png
作者: iovoecu (XX)   2020-11-03 20:51:00
大师==
作者: SecondRun (雨夜琴声)   2020-11-03 20:55:00
结论笑了你编辑了什么

Links booklink

Contact Us: admin [ a t ] ucptt.com