LoadLevelAsync doesn't load complete objects.

We recently switched to using LoadLevelAsync() for our level loading so we could have animated loading screens while loading. It’s all working fine in the build but when testing in Editor, it’s causing some very strange errors.

We have destructible buildings, and as a child of each mesh we have a particle system that is switched off, but emits when that section of the building is “demolished”. When we use the LoadLevel() function to load the game scene from the main menu scene, everything works as expected, but when using the LoadLevelAsync() function, the particle system objects are not on the objects any more. When playing the scene directly and not loading it through the main menu this problem does not occur. Note this only happens in editor, and not in the build.

The Console also spits out this error twice

m_ThreadCheck  !Thread::EqualsCurrentThreadID(m_ThreadID)

While it isn’t destroying our final product, it is making it a little more difficult to develop. We would like to send our project to Unity Support as it seems like a very strange and specific error, however the project folder is just over 3gig in size now so emailing is not an option. Can anyone shed any light on this strange behaviour?

OK, so after some basic edits to the scene (added some cubes then removed them), it’s now working… -.-

It seems something was referencing the old scene where the particle objects weren’t in the scene, but something we did refreshed the cache and looks like it’s loading properly now.

We are still however getting the error listed in the above post.

Guys,

There is more discussion on this over here: http://forum.unity3d.com/viewtopic.php?p=235271.

Thanks,
Graham