【Unity】实现相机跟随及视角转动 您所在的位置:网站首页 unity3d摄像机移动 【Unity】实现相机跟随及视角转动

【Unity】实现相机跟随及视角转动

#【Unity】实现相机跟随及视角转动| 来源: 网络整理| 查看: 265

【unity】实现相机跟随,人物移动请参照【Unity】 实现角色移动、视角旋转以及跳跃

第一种实现方法(比较简单) 1.创建一个Camera,将Camera置于物体Player下

在这里插入图片描述随意拖动Camera到合适的位置

在这里插入图片描述 具体参数【仅供参考】

在这里插入图片描述 运行效果如下

在这里插入图片描述

第二种方法 1.创建两个空物体CameraHandle和Pivot,将相机拖动到Pivot下,具体如图所示

在这里插入图片描述 其中CameraHandle是控制相机上下移动,Piovt是控制相机的左右移动

将Main Camera的Position->Z改为-5

2.新建一个相机跟随脚本CameraHandle.cs

在LateUpdate中添加相机跟随代码

void LateUpdate() { transform.position = targetTransform.position; }

运行效果如下,此时镜头就会跟随我们控制的Player对象,此处添加了多个参照物以验证相机跟随 在这里插入图片描述 接下来需要实现镜头的旋转,也是人物视角的旋转

声明变量

float mouseX; float mouseY; float pivotClamp;

在Update中将鼠标移动的值赋给mouseY和mouseX

void Update() { mouseX = Input.GetAxis("Mouse X"); mouseY = Input.GetAxis("Mouse Y"); }

在LateUdpate中添加视角旋转代码

左右视角旋转代码(10f 为旋转速度)

Vector3 rotation = Vector3.zero; rotation.y += mouseX * 10f; transform.Rotate(rotation);

上下视角旋转代码 (5f 为旋转速度,35和-35为旋转的极限角度)

Vector3 rotation2 = Vector3.zero; pivotClamp -= mouseY*5f; pivotClamp = Mathf.Clamp(pivotClamp, -35, 35); rotation2.x = pivotClamp; cameraPivotTransform.localRotation=Quaternion.Euler(rotation2);

运行效果如下 在这里插入图片描述

恭喜你完成了本次教学,后续更新的文章多多支持



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有