Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Is anyone else experiencing really long import durations for SubScenes in 0.2? (45-180 seconds)

Discussion in 'Entity Component System' started by Zec_, Dec 6, 2019.

  1. Zec_

    Zec_

    Joined:
    Feb 9, 2017
    Posts:
    148
    I've tried this out on two of my computers using Entities 0.2 preview18 and Unity 2019.3.0b12, and the import durations are painfully long. When I created a brand new project and just created a simple subscene containing a single gameobject, I could get away with 1-2 second import durations, but in our large-scale project it's really slow. In 0.1 the rebuilding of the entity cache took maybe 7-8 seconds, but now it's very common to see 90+ seconds.

    For some context on what we're planning on using it for. We've been working with setting up tools and workflows for a team that will work on world-building. We have split up the world into chunks where we are working using subscenes for each chunk. We might have hundreds of subscenes, and right now we're looking at ~15000 entities with a couple of thousand gameobjects for each subscene, the vast majority of them using the StaticOptimize functionality. We are working on upgrading to Entities 0.2, but I'm afraid that we won't be able to upgrade for now with these slow subscene import durations.

    This has proved really hard to debug in 0.2, as I believe that Unity has moved out the importing to a separate process (I've begun seeing multiple Unity processes). I haven't managed to attach the debugger to the subscene conversion, and I can't seem to find where logs are output for it either.

    I haven't seen any other threads on this subject, so I'm contemplating whether we're the only ones with it, and if we're potentially doing something wrong somewhere. Are there any known issues related to this subject, or anything known that one should avoid?
     
    Lars-Steenhoff likes this.
  2. Radu392

    Radu392

    Joined:
    Jan 6, 2016
    Posts:
    210
    And this is why I simply refuse to work with gameobjects, ‘coversion workflow’ or not. Anyone who’s ever worked on a huge project knows how painful this is.

    Well if you insist on going ahead with it, I suggest you further subdivide your subscenes so that they don’t contain thousands of gameobjects, rather only hundreds. That might help. Otherwise, if you only experienced this problem in 0.2 but not 0.1, it’s most likely a bug. I’ve seen a thread by Tertle where he also reportedly ran into issues with performance downgrade from 0.1 to 0.2
     
    Last edited: Dec 6, 2019
  3. Joachim_Ante

    Joachim_Ante

    Unity Technologies

    Joined:
    Mar 16, 2005
    Posts:
    5,203
    We are working on reducing the sub scene conversion time.
    Most of it is due to initial burst compilation and should be cached on the second import. So its only the first import that is slow.

    Log file at the moment is in Library/AssetImportWorker0.log
     
    MNNoxMortem and siggigg like this.
  4. Zec_

    Zec_

    Joined:
    Feb 9, 2017
    Posts:
    148
    Thanks! I just tried out doing some modifications after each other and it seems like it works like you said. After the first import, I'm down to the ~8 sec conversion again. I never realized that this was the case, I guess I'm modifying my code constantly so I never noticed that it was only the first import that was slow. I hope our artists can work with that for now then.

    I have contemplated subdividing them. I wonder if it's enough to subdivide the Scene by using SceneSections though, so we don't have to keep track of thousands of small scenes.