C# 加载场景后,UNITY无法更改transform.position

C# 加载场景后,UNITY无法更改transform.position,c#,unity3d,transform,loading,scene-manager,C#,Unity3d,Transform,Loading,Scene Manager,我的C#scirpt有些问题。所以,问题是加载场景后,obj移动到场景的起始位置,而不是我设置的位置。有人能帮我解决这个超级难的问题吗。求你了 仍然不起作用,我试着制作IEnumerator,但仍然不起作用,有什么新的想法吗?:您正在尝试访问场景中加载的同一帧上的数据 在设置对象的位置之前,请查看“等待直到场景完成” AsyncOperation asyncLoadLevel; IEnumerator LoadLevel() { asyncLoadLevel = SceneManage

我的C#scirpt有些问题。所以,问题是加载场景后,obj移动到场景的起始位置,而不是我设置的位置。有人能帮我解决这个超级难的问题吗。求你了


仍然不起作用,我试着制作IEnumerator,但仍然不起作用,有什么新的想法吗?:您正在尝试访问场景中加载的同一帧上的数据

在设置对象的位置之前,请查看“等待直到场景完成”

AsyncOperation asyncLoadLevel;

IEnumerator LoadLevel()
{
    asyncLoadLevel = SceneManager.LoadSceneAsync(levelName, LoadSceneMode.Single);
    while (!asyncLoadLevel.isDone)
    {
        print("Loading the Scene");
        yield return null;
    }
    //the game has finished loading
    ScoreManager.Reset();
    ScoreManager.AddPoints(blueWaffle);
    //player.GetComponent<Transform> ().position = loadedPosition;
    if (loaded(posX, posY, posZ))
    {
        Debug.Log("I changed my position");
    }
    else
    {
        Debug.Log("I didint change my position");
    }
    Time.timeScale = 1f;
}
asyncOperationasyncLoadLevel;
IEnumerator加载级别()
{
asyncLoadLevel=SceneManager.LoadSceneAsync(levelName,LoadSceneMode.Single);
而(!asyncLoadLevel.isDone)
{
打印(“加载场景”);
收益返回空;
}
//游戏已完成加载
ScoreManager.Reset();
ScoreManager.AddPoints(blueWaffle);
//player.GetComponent().position=loadedPosition;
if(已加载(posX、posY、posZ))
{
Log(“我改变了我的位置”);
}
其他的
{
Log(“我没有改变我的位置”);
}
Time.timeScale=1f;
}
AsyncOperation asyncLoadLevel;

IEnumerator LoadLevel()
{
    asyncLoadLevel = SceneManager.LoadSceneAsync(levelName, LoadSceneMode.Single);
    while (!asyncLoadLevel.isDone)
    {
        print("Loading the Scene");
        yield return null;
    }
    //the game has finished loading
    ScoreManager.Reset();
    ScoreManager.AddPoints(blueWaffle);
    //player.GetComponent<Transform> ().position = loadedPosition;
    if (loaded(posX, posY, posZ))
    {
        Debug.Log("I changed my position");
    }
    else
    {
        Debug.Log("I didint change my position");
    }
    Time.timeScale = 1f;
}