unity3d编写缓动跟随摄像机

本文介绍了如何使用Unity实现一个3D摄像机跟随物体的简单缓动效果,包括设置跟随距离、鼠标滚轮操作和镜头移动,以及使用Spring Ratio实现平滑跟踪。通过LateUpdate函数实时调整摄像机位置,同时提供物体隐藏与显示的逻辑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先声明target为需要跟随的物体

public Transform target;

声明跟随距离,以及跟随距离的增长速度,使用鼠标滚轮可以拉伸镜头

public float viewDistance = 8f;
public float viewDistanceMoveSpeed = 1f;

声明缓动系数

public float springRatio = 0.05f;

然后在LateUpdate函数里编写代码,因为摄像机追踪需要发生在物体移动后。
首先鼠标滚轮可以拉伸镜头

viewDistance += Input.GetAxis("Mouse ScrollWheel") * viewDistanceMoveSpeed;

之后使用Vector3.MoveTowards将相机移动到目标地点。目标地点的坐标计算过程如下。
target.transform.forward得到目标物体当前朝向的前方在世界坐标系下的方向,和Vector.foraward是不同的。之后用目标物体减去这个值,就是当前目标物体所朝方向的后方。
然后摄像机需要稍稍在y轴方向向上移动,可以给人一种略微俯视的感觉。
最后增加进缓动系数来移动摄像机

this.transform.position = Vector3.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值