美文网首页
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