unity实现简单的摄像机切换

下面这段代码实现了简单的摄像机之间的切换,分别按1,2,3 可以选择不同的摄像机

using UnityEngine;
using System.Collections;

public class CameraSwitch : MonoBehaviour
{
	// Update is called once per frame
	void Update()
	{
		if (Input.GetKeyDown(KeyCode.Alpha1))
		{
			print("camera1");
			cameraSwitch(1);
		}
		if (Input.GetKeyDown(KeyCode.Alpha2))
		{
			print("camera2");
			cameraSwitch(2);
		}
		if (Input.GetKeyDown(KeyCode.Alpha3))
		{
			print("camera3");
			cameraSwitch(3);
		}
	}

	void cameraSwitch(int currentCam)
	{
		GameObject[] cameras = GameObject.FindGameObjectsWithTag("cam");
		//需要自己 先添加一个cam的Tag分别添加给各个摄像机
		foreach (GameObject cam in cameras)
		{
			//通过遍历把所有的摄像机的Camera的enable 设置为false
			Camera theCam = cam.GetComponent<Camera>() as Camera;
			theCam.enabled = false;
		}

		//把要切换到的摄像机Camera设置为true
		string oneToUse = "Camera" + currentCam;
		Camera usedCam = GameObject.Find(oneToUse).GetComponent<Camera>() as Camera;
		usedCam.enabled = true;
	}
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值