unity3d中多个摄像机切换代码
脚本代码将依据按下的键盘上的 1、2 和 3决定启用对应摄像机的AudioListener 和 camera 组件,
禁用其余两部摄像机的 AudioListener 和 camera 组件,因此看到不同的视图。
1、新建多个摄像机(不同位置)。
2、创建一个空物体挂上我们新建的脚本Camera Switch用来控制摄像机的切换。
3、Caneras中,Size为摄像机总数,将建立好的摄像机分别拖拽到Element中,Shotcuts中,Size为按钮控制相机的总数,1、2、3分别表示利用数字键控制显示Camera1、Camera2、Camera3。
代码如下(示例):
using UnityEngine;
using System.Collections;
public class Camera Switch: MonoBehaviour
{
public GameObject[] cameras;
public string[] shotcuts;
public bool changeAudioListener = true;
void Update()
{
int i = 0;
for (i = 0; i < cameras.Length; i++)
{
if (Input.GetKeyUp(shotcuts[i]))
SwitchCamera(i);
}
}
void SwitchCamera(int index)
{
int i = 0;
for (i = 0; i < cameras.Length; i++)
{
if (i != index)
{
if (changeAudioListener)
{
cameras[i].GetComponent<AudioListener>().enabled = false;
}
cameras[i].GetComponent<Camera>().enabled = false;
}
else
{
if (changeAudioListener)
{
cameras[i].GetComponent<AudioListener>().enabled = true;
}
cameras[i].GetComponent<Camera>().enabled = true;
}
}
}
}
注意:文件名为 Camera Switch
自己可以修改文件名。
文章来源地址https://www.toymoban.com/news/detail-502683.html
文章来源:https://www.toymoban.com/news/detail-502683.html
到了这里,关于unity3d中多个摄像机切换代码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!