第一个被启用的并标记为“MainCamera”的 Camera 组件(只读)。
如果没有被启用的并标记为“MainCamera”的 Camera 组件,此属性将为 null。
在内部,Unity 会缓存所有标记为“MainCamera”的 GameObject。当您访问此属性时,Unity 会从其缓存中返回第一个有效结果。访问此属性会产生少量的 CPU 开销,类似于调用 GameObject.GetComponent。在 CPU 性能至关重要的情况下,请考虑缓存此属性。
其他资源: 标签
//Place this script on a GameObject to switch between the main Camera and your own second Camera on the press of the "L" key //Place a second Camera in your Scene and assign it as the "Camera Two" in the Inspector.
using UnityEngine;
public class Example : MonoBehaviour { //This is Main Camera in the Scene Camera m_MainCamera; //This is the second Camera and is assigned in inspector public Camera m_CameraTwo;
void Start() { //This gets the Main Camera from the Scene m_MainCamera = Camera.main; //This enables Main Camera m_MainCamera.enabled = true; //Use this to disable secondary Camera m_CameraTwo.enabled = false; }
void Update() { //Press the L Button to switch cameras if (Input.GetKeyDown(KeyCode.L)) { //Check that the Main Camera is enabled in the Scene, then switch to the other Camera on a key press if (m_MainCamera.enabled) { //Enable the second Camera m_CameraTwo.enabled = true;
//The Main first Camera is disabled m_MainCamera.enabled = false; } //Otherwise, if the Main Camera is not enabled, switch back to the Main Camera on a key press else if (!m_MainCamera.enabled) { //Disable the second camera m_CameraTwo.enabled = false;
//Enable the Main Camera m_MainCamera.enabled = true; } } } }