前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Unity TimeLine丨A3.END-添加跨越墙壁时候的过场动画、Camera Depth

Unity TimeLine丨A3.END-添加跨越墙壁时候的过场动画、Camera Depth

作者头像
星河造梦坊官方
发布2024-08-14 16:31:35
1110
发布2024-08-14 16:31:35
举报
文章被收录于专栏:星河造梦坊专栏

目标:在目标到达一个区域内时,触发TimeLine的播放

思路:添加Camera,在跳跃时刻切换到另外视角播放翻越墙壁动画

    TimeLine不是指一个制作好的mp4动画片,而是指可设置的运动、Camera、音乐等的集合,运行项目时会运行TimeLine显示我们想要的效果

1、新建名为TimeLine的空GameObject,并给它创建TimeLine(Window-TimeLine Editor),保存TimeLine

2、删掉TimeLine GameObject的Animator组件,和TimeLine窗口中的TimeLine Track

因为我们只对TimeLine GameObject的子物体做控制,不对TimeLine GameObject这个父物体做控制

3、将Main Camera拖到TimeLine制成Activation Track,新建Camera,调整好位置,用来播放跨越墙壁时的动画,赋给TimeLine做成Activation Track,取消激活Camera

但是我们发现,游戏不是在翻越墙壁时启用TimeLine,而是在刚运行时便启用了TimeLine

解决办法:取消勾选TimeLine GameObject-Inspector-Playable Director的Play On Awake选项,在player脚本添加代码,检测到某目标物体时启用TimeLine

4、在游戏场景中添加检测物体Cube,调整大小、位置(将其设置的高一点,避免挡住人物的射线检测),取消Mesh Renderer组件,勾选Box Collider中的Is Trigger,用来检测碰撞

5、给Cube添加Playable Tag,用来通过other.tag检测到它

6、给player脚本添加代码

    在C#调用TimeLine的Playable Director组件,需要UnityEngine.Playables命名空间

    TimeLine里的Playable Director组件,它的  PlayableDirector.Play()  方法,可直接播放对应的TimeLine

指定Player-Inspector public的Director脚本

7、将角色旋转180°,摄像头视角会因为transform.LookAt()代码旋转180°,设置角色离Cube远一点的位置,保证跳跃校测的安全距离

8、运行时我们会发现,角色并没有在刚触及Cube范围内就切换视角,是由于TimeLine中Main Camera运行的时间太长,Camera切换太慢导致

缩小Main Camera所占的时间,调大Camera占用时间

9、添加如下gif所示的观察相机

    此相机制作两个轨道,一个为激活Activation Track,另一个为Animation Track

    Animation Track包括拉远距离、旋转角度效果,可调节动画帧位置等设置改变持续时间和速度等参数

    设置player的Animator Controller中Vault Animation-Inspector的Speed速度,可调整运行中跳跃的快慢

可在正常位置播放正常速度动画,在特定位置通过代码改变某动作播放速度(更该角色的Animator Controller...),达成慢镜头效果

但我们发现,播放完后并不会自动切换到原始Main Camera,现在所有的相机都是激活状态,我们可做一下设置解决此问题:

将三个相机的Clear Flags都设置为Skybox,Main Camera的Depth设置为1>其余两个摄像机的深度,Depth越大,显示会越靠前;在TimeLine设置TimeLine下两个Camera Post-playback state属性为Inactive,作用为播放完当前摄像头所示动画后自动取消激活当前摄像头

10、添加第四个摄像头,用来展示跳跃要结束时的动作

最终效果展示:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-04-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档