分享一波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);//使摄像机一直观看目标
}
}
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);//使摄像机一直观看目标
}
}
相关文章推荐
- Unity3D鼠标控制摄像机“左右移动控制视角+WASD键盘控制前后左右+空格键抬升高度”脚本
- 【Unity3D游戏开发学习笔记】(七)上帝之眼—第三人称摄像机的简单实现(跟随视角,自由视角)
- [unity3d]第三人称视角相关脚本
- Unity3D第三人称摄像机控制脚本
- [unity3d]第三人称视角相关脚本
- Unity3D【脚本】点击物体后屏幕放大 - (射线、坐标的转换、摄像机的移动和改变属性)
- Unity3D【脚本】鼠标对摄像机的控制 - 点击鼠标,摄像机围绕圆心旋转(第三次修改)
- 一波JavaScript日期判断脚本分享
- Unity3D第三人称镜头脚本 可旋转,拉近
- Unity3d--第三人称摄像机常用控制
- Unity3D 第一人称视角摄像机旋转控制
- Unity3D第三人称无锁定视角实现
- Unity3D模拟魔兽世界第三人称视角旋转/缩放
- unity3d阶段性学习脚本代码(2个是摄像机跟随(2D游戏中的),1个是角色跳跃移动脚本)
- Unity第一人称和第三人称视角脚本
- 在unity3d中用EasyTouch的操纵杆控制相对于不同角度的摄像机的第三人物视角的相对位移的代码段
- unity3d 摄像机切换脚本
- 分享一个Unity3D点击模型跟随鼠标移动的小脚本(包括屏幕视图到三维空间的坐标转换)
- unity3d旋转摄像机脚本
- 一波JavaScript日期判断脚本分享