unity摄像机跟随角色移动

具体内容参考unity官方案例精讲第6张P170.
实现相机跟随在角色后方的固定位置,距离角色水平方向距离为distanceAway,垂直方法距离为distanceUp,求相机的目标位置targetPosition

public class CameraMover : MonoBehaviour {
    public Transform follow;  //摄像机跟随对象
    public float distanceAway = 5.0f;//设置摄像机距角色的水平距离
    public float distanceUp = 2.0f;//设置垂直距离
    public float smooth = 1.0f;//系数
    private Vector3 targetPosition;//摄像机移动的目标位置

	// Update is called once per frame
	void Update () {
        targetPosition = follow.position + Vector3.up * distanceUp - follow.forward * distanceAway;
        transform.position = Vector3.Lerp(transform.position, targetPosition, Time.deltaTime * smooth);//使用lerp,而并非transform.position = targetPosition的原因是使摄像机缓慢向目标位置移动,位置的突然变化会使镜头一晃一晃的,画面卡顿
        transform.LookAt(follow);//摄像机正对目标方向
	}

}

展开阅读全文
©️2020 CSDN 皮肤主题: 数字20 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值