8.摄像机跟随

8.摄像机跟随


8.1 知识点

创建摄像机脚本挂载到摄像机上,定义观察的目标,移动速度,和目标Y轴偏移。实时计算摄像机位置,使用差值运算移动。

public class CameraMove : MonoBehaviour
{
    //观察的目标
    public Transform target;
    //摄像移动速度
    public float moveSpeed = 8;
    //摄像机偏移的Y位置
    public float offsetY = 5;

    //目标位置
    private Vector3 targetPos;
    
    void Update()
    {
        targetPos = target.position;
        //对目标位置进行Y偏移
        targetPos.y += offsetY;
        //摄像机z不需要更新 主要更新x和y
        targetPos.z = this.transform.position.z;
        //让摄像机不停的向目标位置靠拢
        this.transform.position = Vector3.Lerp(this.transform.position, targetPos, moveSpeed * Time.deltaTime);
    }
}

8.2 知识点代码

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CameraMove : MonoBehaviour
{
    //观察的目标
    public Transform target;
    //摄像移动速度
    public float moveSpeed = 8;
    //摄像机偏移的Y位置
    public float offsetY = 5;

    //目标位置
    private Vector3 targetPos;
    
    void Update()
    {
        targetPos = target.position;
        //对目标位置进行Y偏移
        targetPos.y += offsetY;
        //摄像机z不需要更新 主要更新x和y
        targetPos.z = this.transform.position.z;
        //让摄像机不停的向目标位置靠拢
        this.transform.position = Vector3.Lerp(this.transform.position, targetPos, moveSpeed * Time.deltaTime);
    }
}


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com

×

喜欢就点赞,疼爱就打赏