Unity 4.6 Copying Complex GameObjects Between Scenes Resets Fields In the Editor

If I try to copy game objects that have a lot of working parts (specifically canvases) between scenes, the fields get cleared and it’s way too much work to re-enter them manually. Can anyone explain an elegant way to do this?

You could write something to store temporary data as you transition between scenes im not sure what parameters your losing upon scene transition but you Could use PlayerPrefs.SetString then load the string on next scene and if it equals certain parameters then u apply them to your new gameobject

If i wanted a scene to remember i’ve destroyed something when i leave the scene i would store a Bool for isDestroyed then reload it when i re enter the scene. There is most definitely alternatives and probably even better methods i just thought id mention how i’ve dealt with this in the past.

there is also the DontDestroyOnLoad

Okay, I found a workaround for this. It’s a little ugly, but it works like a charm.

  1. Add the code below to a new Javascript file in your project.

  2. Create a new scene.

  3. In the project panel, select the scene that has the gameobject(s) you want to copy.

  4. File > Load Scene [Additive] ← NEW FEATURE WOW! This will copy the whole existing scene into your new scene.

  5. Remove all gameobjects that you just imported except for the one(s) you want to copy.

  6. Save the scene.

  7. Open the scene you want to copy the gameobjects into.

  8. In the project panel, select the scene you created.

  9. File > Load Scene [Additive] again and GREAT SUCCESS!

    
      #if UNITY_EDITOR
    

    @MenuItem(“File/Load Scene [Additive]”)

    static function Apply ()
    {
       var strScenePath : String = AssetDatabase.GetAssetPath(Selection.activeObject);
       if (strScenePath == null)
       {
          EditorUtility.DisplayDialog("Select Scene", "You Must Select a Scene first!", "Ok");
          return;
       }
    
       Debug.Log("Opening " + strScenePath + " additively");
       EditorApplication.OpenSceneAdditive(strScenePath);
       return;
    }
    

    #endif

source: http://forum.unity3d.com/threads/scene-copy-game-objects-from-one-scene-to-another.19803/