从camera.main属性获取第二个摄像头

时间:2015-12-09 06:51:15

标签: c# unity3d camera

我在场景中有两个带“MainCamera”标签的相机。 使用这行代码

  

camera.main.transform.name

我正在获取摄像机名称,但问题是,它只是显示一个摄像机名称(这很好)无论层次结构中两个主摄像机的深度或顺序如何。

如何获得第二台相机而不是它正在显示的相机! 我只想使用camera.main属性和别的选项

2 个答案:

答案 0 :(得分:2)

相机只是附加GameObject组件的Camera。因此,获取相机的所有实例非常简单:

var cameras = FindObjectsOfType(typeof(Camera));
foreach (Camera camera in cameras)
    Debug.Log (camera.name);

enter image description here

答案 1 :(得分:0)

如果您想在渲染方法(OnPreRender,OnPostRender,...)中访问摄像机,您可以通过Camera.current访问当前渲染的摄像机。 除此之外,没有办法获得“第二主”相机。 Camera.main,将始终返回第一个启用的主摄像头。你必须选择大卫的解决方案。