U3D非常诡异的【结构体引用】现象-个例

    void Awake()
    {
        SceneManager.sceneLoaded += SceneManager_sceneLoaded;
    }

    Scene xscen;
    //文档说明:SceneManager.sceneLoaded
    // Add a delegate to this to get notifications when a scene has loaded --场景加载完成后的回调
    // 然而arg0.isLoaded却总是false,也就是说根本没加载完
    // 强行使用该场景将会出错:如遍历场景根层级的物体

    void SceneManager_sceneLoaded(Scene arg0, LoadSceneMode arg1)
    {//此函数只进来了一次
        xscen = arg0; //这里 arg0.isLoaded 总是false
    }

    void Update()
    {
        if (xscen.isLoaded)//这里却为true了,结构体变成了引用类型?,要不然xscen的值怎么变了?
        {
            Debug.Log("xscen-------------------isloaded");
        }
    }

 

posted @ 2017-08-09 16:19  时空观察者9号  阅读(486)  评论(0编辑  收藏  举报