您的位置:首页 > 移动开发 > Unity3D

分享一波Unity3D CSharp 对车的第三人称视角摄像机脚本

2017-10-28 16:05 573 查看
using UnityEngine;
using System.Collections;

public class CameraScript : MonoBehaviour
{
/// <</span>summary>
/// 车
/// </</span>summary>
public GameObject Car;
/// <</span>summary>
/// 摄像机观察的目标
/// </</span>summary>
public GameObject CameraTarget;
/// <</span>summary>
/// 目标位置
/// </</span>summary>
Vector3 TargetPos;
/// <</span>summary>
/// 向量速度
/// </</span>summary>
Vector3 velocity = Vector3.zero;

void Start()
{

}
void Update()
{

}
void FixedUpdate()
{
CameraTarget.transform.position = Car.transform.position;//观察的目标的位置等于车的位置

CameraTarget.transform.eulerAngles = new Vector3(0, Car.transform.eulerAngles.y, 0);//只获得车Y轴的旋转角度 保证再翻车时摄像机不会掉到地下

TargetPos = CameraTarget.transform.TransformPoint(new Vector3(0, 10, -25));//获得摄像机要去的位置

transform.position = Vector3.SmoothDamp(transform.position, TargetPos, ref velocity, 0.2f);//第一个参数 初始位置 第二个参数 目标位置 第三个参数不太明白 好像是向量速度 ,最后是移动到目标距离药多少时间

transform.LookAt(CameraTarget.transform.position);//使摄像机一直观看目标

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: