为什么下一个场景中无法使用统一相机?

问题描述

我有一个带有开始按钮的开始场景。开始场景有一个相机适配器游戏对象。相机适配器获取主相机并对每个场景执行一些操作。当我点击开始并加载下一个场景时,相机适配器对象在下一个场景中可用,但相机丢失。这是我的代码和配置:

Start scene hierarchy

Start scene inspector

Level1 hierarchy

level1 inspector

我在我的 CameraAdapter 脚本中添加了以下代码:

public class CameraAdaptor2D : MonoBehaviour

{

float displayWidth;
float displayHeight;


[SerializeField] Camera cam;


   void OnEnable()
{
    SceneManager.sceneLoaded += OnSceneLoaded;
}

void OnSceneLoaded(Scene scene,LoadSceneMode mode)
{
    cam = Camera.main;
}

// called when the game is terminated
void OnDisable()
{
    Debug.Log("OnDisable");
    SceneManager.sceneLoaded -= OnSceneLoaded;
}

private void Awake()
{
    DontDestroyOnLoad(this.gameObject);
}
// Start is called before the first frame update
void Start()
{
    cam = Camera.main;
    displayWidth = Screen.width;
    displayHeight = Screen.height;
positionCamera();}
   void PositionCamera()
    {
        Vector3 vector = new Vector3(0.0f,0.0f,0.0f);
        cam.transform.position = vector;
    }

当我点击开始按钮时,Unity 会加载下一个关卡。但是使用上面的代码,我无法获取当前场景的相机。即使我添加了断点,下一个场景也不会在断点处暂停。是否有我遗漏的内容需要添加到代码中,或者是否有另一种方法可以在每个场景中获取摄像头?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)