Search Unity

Addressables.Instantiate"Gradually"

Discussion in 'Addressables' started by 5argon, Oct 30, 2018.

  1. 5argon

    5argon

    Joined:
    Jun 10, 2013
    Posts:
    1,555
    I appreciate the async-based API for both instantiating a game object or loading a scene with Addressables. But one unsolved problem is that at instantiation/scene activation there will always be a huge spike. In a way, this is a road block to true asynchronous as it is only async on loading not the activation. And there is no way to stop or delay the activation to appropriate time either. This makes me think Addressables.Instantiate/LoadScene is not really async from player point of view because those API are load + activate in the same step.

    The only way to mask it is to use a static loading screen. (Animated loading screen would still hiccup visibly on activation)

    Is there any way so that the game object inside (inside the game object/inside the scene) is gradually instantiating one by one over time? It is not related to mass OnEnable of game objects in the game object or in the scene either, I have tried instantiating GO or scene with all disabled objects and the spike is still there.

    One manual way is to disassemble into pieces using the new prefab workflow and then remove all the pieces leaving just the main bootstrapper which will iterate instantiate each piece. But that way I cannot use editor to pre-connect things in the scene/game object. This support needs to come from internal instantiating mechanism.
     
    GianLucaSacco likes this.