【转】提高Unity中管理多个相机的效率www.maiziedu.com

来源:互联网 发布:4g转有线网络 编辑:程序博客网 时间:2024/06/06 03:20

在Unity里管理多个相机(Camera)是一个挺痛苦的事情,"Camera Preview"也不是恨实用,在众多的相机中禁用,启用来查看相机位置设置视角,非常烦琐.Security Camera的目的就是让这个过程简化.只要将脚本放进项目目录,并且拖拽到场景中每个相机上,包括MainCamera.现在你就可以快速的切换查看各个相机的实际效果,在Unity的层次视图(Hierarchy)点击你要设置的相机,就可以在游戏视图中看到这个相机的效果了,不必再一个个的去关闭其他相机了.告别这可怜的相机预览吧.要注意的是要使用Security Camera脚本,你应该给每个相机一个唯一的名称以及确保有个主相机且标签tag为"MainCamera",如果你忘记这样做.系统会提醒你.另外脚 本还提供了一个静态方法,叫"ChangeCamera",该方法只需要一个字符串,就可以用脚本快速切换相机了.像下面这样:

程序代码 

using UnityEngine;
using System.Collections;

public class CameraSwap : MonoBehaviour
{
void Update ()
{
//pressing 0, 1, 2, and 3 will swap before the camerasnamed "Main Camera",
//"Camera 1", "Camera 2", and"Camera 3" which have Security Camera added:
if (Input.GetKeyDown(KeyCode.Alpha0)) {
SecurityCamera.ChangeCamera("Main Camera");
}
if (Input.GetKeyDown(KeyCode.Alpha1)) {
SecurityCamera.ChangeCamera("Camera 1");
}
if (Input.GetKeyDown(KeyCode.Alpha2)) {
SecurityCamera.ChangeCamera("Camera 2");
}
if (Input.GetKeyDown(KeyCode.Alpha3)) {
SecurityCamera.ChangeCamera("Camera 3");
}
}
} 脚本是通过设置相机的深度来实现相机切换的,Depth值会是999999和-999999.



 

注:文章代码有IT在线教育平台——麦子学院http://www.maiziedu.com整理,转载请注明出处。
0 0
原创粉丝点击