找回密码
 立即注册
首页 业界区 安全 如何在 Unity3D 中实现无缝滚动动画?

如何在 Unity3D 中实现无缝滚动动画?

劝匠注 11 小时前
一、前言

对于游戏开发的动画,可能大部分是采用第三方的制作工具单独完成,然后导入 Unity3D 2020.3 中。但是有些组件动画,比如像进度条这种,因为要完成色块移动控制,所以在 Unity3D 中实现更好。
 
二、操作流程

1. 搭建基本结构

结构主要是先一个空对象,对象下添加 Image 对象作为进度条背景,与背景同级创建一个带 Animation 组件的对象,最后在带 Animation 组件对象下添加两个 Image 对象。
 
2. 添加需要组件

Background 添加 Image 组件;ObjAnima 添加 Rect Mask 2D 组件和 Animation 组件;Animation01 和 Animation02 添加 Image 组件。
1.jpeg

 
3. 创建 Animation 文件

在 Assets 资源管理中右键 ->Create->Animation,然后双击该文件打开 Animation 编辑器,点击 Create 保存到指定位置,文件后缀.anim。
2.jpeg

 
4.Animation 编辑

进入编辑框内,点击 “Add Property”,出现弹出小框,会出现当前有 Animation 下的子级,点击下拉会显示子级的属性,像上下移动就选择 Anchored Position 就可以。
3.jpeg

 
5. 添加关键帧

为了实现无缝滚动,原理就是遮罩上一个图形往下移动,在视图中的图形往遮罩下面移动。也就只需对图形的 Y 轴进行操作。
4.jpeg

 
6. 匀速动画设置

设置时间轴默认情况是有缓入缓出的效果,播放的时候就没有无缝滚动的效果,这时候就需要在 Curves 下设置匀速。 按 “shift” 选中两个关键帧,右键的时候不要离开关键帧的点,然后选择 “Both Tangents‘,再点击 ”Linear“,看到线条变成直线就表示匀速播放了。
5.jpeg

 
四、写在后面

通过上面操作就完成了一个简单的无缝上下滚动的进度条动画效果,并且没有通过脚本控制。还有一个容易忘记的点是,在打开 anim 文件时,一定要点击挂在该动画的对象上,不然是无法预览动画。
6.jpeg

 

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

相关推荐

您需要登录后才可以回帖 登录 | 立即注册