您的位置:首页 > 其它

相机跟随主角移动,并带有延迟效果

2016-06-15 14:37 387 查看
using UnityEngine;
using System.Collections;

namespace CompleteProject
{
// 脚本使用在摄像机身上
public class CameraFollow : MonoBehaviour
{
public Transform player; // 主角位置
public float speed = 5f; // 相机速度
Vector3 distance; // 主角和摄像机之间的距离

void Start ()
{
// 计算人物与摄像机之间的向量
// 用当前摄像机的坐标 - 玩家的坐标(可以画一张图来算一算)
distance = transform.position - player.position;
}

void FixedUpdate ()
{
// 摄像机应该在的位置
// 不直接赋值给当前摄像机的原因是,需要这个参数来实现一个延迟功能
Vector3 targetCamPos = player.position + distance;

// 给摄像机移动到应该在的位置的过程中加上延迟效果
transform.position = Vector3.Lerp (transform.position, targetCamPos, speed * Time.deltaTime);
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: