Unity学习-用Dotween动画系统能做什么 2 路径动画

这一部分比较简单,用animation也可以轻易实现,无非是创建关键帧,然后在每个关键帧上录制物体的路径,然而Dotween做这个非常轻松,只需要直接在屏幕上绘制路径就可以了,从工作流上更加轻量。

绘制路过点

在这里插入图片描述

在这里插入图片描述
值得关注的是Extras里面的两个功能 Drop To Floor可以使得所有的坐标点投影到一个地面(是collider就行)上。
Pathtype: Catmull rom是一种抗锯齿算法 可以使得点之间的连线变得平滑。也可以选用线性
Orientation:指定朝向,可以朝向轨道,朝向位置,朝向某个动态变化的Transform。
ClosePath:关闭路径,模型最终会回到起点位置;
PathMode:topdown2d sidescroller2d full3d ignore几种。没看出是干啥的
close path:决定最后是否会从标号最末的点走回原先点的

###总结
这一组件很适合进行摄像机的移动。工作效率很高。

以下是使用DOTween插件在Unity中实现摄像机跟随路径运动的示例代码: 1. 首先,您需要安装DOTween插件。您可以在Unity Asset Store中搜索“DOTween”并安装它。 2. 创建一个空对象并将其命名为“CameraPath”。 3. 将路径上的所有点作为子对象添加到“CameraPath”对象中。每个子对象应该包含一个Transform组件,指定该点的位置。 4. 在“CameraPath”对象上添加一个脚本组件,并使用以下代码: ```csharp using UnityEngine; using DG.Tweening; public class CameraPathController : MonoBehaviour { public Transform[] waypoints; // 存储路径上的所有点 public float duration = 10.0f; // 动画持续时间 public Ease easeType = Ease.Linear; // 动画插值类型 void Start() { Camera.main.transform.DOPath(GetWaypoints(), duration, PathType.CatmullRom).SetEase(easeType); // 创建路径动画 } Vector3[] GetWaypoints() { Vector3[] path = new Vector3[waypoints.Length]; // 创建路径数组 for (int i = 0; i < waypoints.Length; i++) // 将路径上的所有点添加到路径数组中 { path[i] = waypoints[i].position; } return path; } } ``` 在此示例中,我们使用DOTween的DOPath方法来创建路径动画。我们将路径上的所有点存储在“waypoints”数组中,并使用GetWaypoints方法将它们转换为一个Vector3数组。我们还可以指定动画的持续时间和插值类型。 5. 将摄像机添加到场景中,并将其设置为“CameraPathController”脚本中使用的摄像机。 6. 运行场景并观察摄像机沿着路径移动的效果。 请注意,您可以根据需要调整路径点的数量和位置,并在“CameraPathController”脚本中调整动画的持续时间和插值类型。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值