Forum rules - please read before posting.

Switch Startup/Loading time

Hello,

We're having an issue with our game loading on a switch devkit and wondered if you could help.

It's taking about 35 seconds to get to the Unity logo, but only if our start scene is an AC scene.
A blank scene with just a cube, loads in under 1 second.
The same cube scene with AC added takes 35 seconds to get to the Unity logo.

I noticed that this is due to the MultiSceneChecker component on the GameEngine object having a reference to KickStarter
(If I remove the KickStarter reference it obviously breaks AC, but the loading is back to 1 second)

I'm guessing that adding AC is causing Unity to load a lot of our assets on load? Even though they're not being used in our start scene.
(presumably due to one or more of the references inside KickStarter?)

Does that make sense?

Have you have any suggestions as to how we might go about improving this?

We're using Unity 2017.4.3f1 and AC 1.63.1

(Note that the PC build loads in about 2 seconds)

Thanks for your time

Comments

  • It's not KickStarter itself - that's just the beginning of the chain to "load" AC. If you enable "Deep Profile" in your Profiler, you can get a more detailed look at where any memory issues / intensive operations are occuring.

    Part of loading AC will involve spawning your Player - does unsetting him from your Settings Manager improve load times? It may be that his textures/animations are one such cause.

    Some minor performance issues were addressed in v1.64 - so it would be worth testing in the latest release, even if its just to isolate the issue. Be also mindful of the tips given in the "Performance and optimisation" chapter of the Manual.

    One recent addition was the ability to rely on asset bundles for speech audio (as opposed to relying on a Resources folder) - does your game involve a lot of such audio? Again, you can test this by simply removing it (backing up the project first, naturally).

  • Thanks for the suggestions, I'll try them out and let you know.

  • Quick question, I'd like to try your suggestion of updating our version of AC.

    We're currently on 1.63.1but we've made several alterations. Before updating, I'd like to compare our AC to the unaltered 1.63.1 but the asset store won't let me download an older version!

    Is it possible to for us to get the 1.63.1download?

  • I shall PM you a link to a package you can download.

  • Thanks for your help so far, it's been very .. helpful :)
    Last question on switch load speed, The official Nintendo documentation states that using AssetBundles is very important for load times.
    I know AC currently only supports them for voice sounds.
    So my question is, how much would it take to get AC to support AssetBundles for other assets such as Scenes etc. ?
    Cheers

  • AC refers to scenes by index when storing save data, even if you can refer to them by name in e.g. the Scene: Switch Action. I don't know if Asset Bundles retain build indices when storing scenes, but you should be OK if so.

    AC won't search your build for what scenes are there or anything - it'll just request the given scene index/name and load it if it finds it.

    I would guess that so long as you unloaded the bundled scene before a request is made, it won't have any trouble. The main issue would be making sure that the correct scene is unloaded before you load a save game - since the save game might have been made in a scene that hasn't yet been unloaded.

    For that, you could either unload all scenes before the game starts, or hook into the OnBeforeLoading custom event to extract the index value of the scene that's about to be loaded.

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Welcome to the official forum for Adventure Creator.