Cinemachine实现Unity实现视角切换

首先你的场景中需要有一个相机和虚拟相机

1.建立一个虚拟相机VirtualCamera1,这里我用的是Cinemachine这个插件

链接:https://pan.baidu.com/s/1_mXhw9mK-hx2_EIDssCPXg
提取码:4751  大家也可以自行下载

 

2.主相机要绑定虚拟相机,设置如下:

 

 

 

3.建一个脚本View,脚本如下:

 

public class View : MonoBehaviour
{
public GameObject gameObject;
private GameObject fCam; //第一视角摄像机
private GameObject tCam; //第三人称摄像机
//public Button[] buttons;
bool flag = false; //fCam启用为true
void Start()
{

}
private void Awake()
{
//获取相机
fCam = GameObject.Find("VirtualCamera1"); //获取第一视角相机
tCam = GameObject.Find("Camera"); //获取第三视角相机
fCam.SetActive(false); //禁用第一视角相机,第三视角作为主相机
}

private void FixedUpdate()
{
 //空格键Space作为切换触发
 //每按下一次发生切换

 if (Input.GetKeyDown(KeyCode.Space))
 {
 cam();
 }

void cam()
 {
 flag = !flag; //状态反转
 fCam.SetActive(flag);
 tCam.SetActive(!flag); //两个相机状态互斥
 }
}

}

4.将脚本挂载到物体上

5.运行项目,按下空格键就可以实时切换视角啦

posted @   嘿,阿然  阅读(2378)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示