美文网首页
Unity中,最简易的相机跟随控制

Unity中,最简易的相机跟随控制

作者: 全新的饭 | 来源:发表于2023-10-30 16:19 被阅读0次

说明

在合适的时机(如游戏开始)自行创建CamFollowCtr。
在合适的Update中调用它的Follow方法。

代码

CamFollowCtr.cs

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

public class CamFollowCtr
{
    private Transform _camTrans;
    private Transform _target;
    private Vector3 _offset;

    private float _moveSpeed = 10;
    private Vector3 TargetPos { get { return _target.position - _offset; } }

    public CamFollowCtr(Transform camTrans, Transform target)
    {
        _camTrans = camTrans;
        _target = target;
        _offset = _target.position - _camTrans.position;
    }
    public void MyDestroy()
    {
        _camTrans = null;
        _target = null;
    }
    
    // 如果在Update中调用,则factor是Time.deltaTime;如果在FixedUpdate中调用,则factor是Time.fixedDeltaTime
    public void Follow(float factor)
    {
        _camTrans.position = Vector3.Lerp(_camTrans.position, TargetPos, _moveSpeed * factor);
    }
}

相关文章

网友评论

      本文标题:Unity中,最简易的相机跟随控制

      本文链接:https://www.haomeiwen.com/subject/aqibidtx.html