Search Unity

[v2.1.0] Advanced Scene Manager | Scene Management tool for Unity

Discussion in 'Assets and Asset Store' started by nuwn, Jan 22, 2021.

  1. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    I would like to present our new asset Advanced Scene Manager and tell you why we believe that you will have great use of it.

    TLDR; at the bottom with some graphics!

    Background
    ASM
    started like so many other assets with us building a game, a mistake we did back a year ago now, was not making a proper solution for managing the scenes. every time we needed to include a new scene, the mess we made become worse, to a point where we had to shut it down or remake it all.
    So we shut it down and decided that we will make an asset that would fix all this for us, properly planned and executed, and proudly said we did.

    Why we believe you could make use of our asset
    When we started making ASM we had the drive to make it as inclusive as possible, by that I mean to support as many use cases as possible. And I will proudly say that set up your game flow in a matter of minutes instead of hours, weeks or months. Would love to hear your use cases, might be something we can include!

    • We have a simple UI, maybe so simple you wonder if the asset is simply made. I will try to convince you that is not.
    • Greatly lowers the risk for merge conflicts in teams, and makes the whole project way more organized. Our UI keeps it all centralized so it's a lot easier to navigate.
    • We took care of everything in the background, but we made sure to give as much control as possible.
    • Default, Persistent, and as I call it Half Persistent behaviors. half basically states if the next collection to load includes the same scenes, keep them alive.
    • Profiles, we made sure you can build based on profiles, so you can set up, for example, one for Dev, one for Live. this affects all of what ASM supports including addressables.
    • We work mainly with collections, collections allow you to specify a range of scenes to load in when you do SceneCollection.Open(), Open(SceneCollection), Unity Events, you name it, they all will be loaded additively.
    • There are multiple ways to load scenes, as there should be, Here's a list
    • Loading screens are automated! You can specify a default one. But override it for any collection or manually open one, we want to give you as much freedom as possible. You specify what happens between OnOpen, OnClose, and OnProcessChange and we handle the rest.
    • ASM is not intrusive, you can still use unity's standard scene management while using ours.
    • Addressable support, we help to sync scenes to Adressables asset, and you choose if you want to include that dependency or not, it's not forced.
    • Great editor help with quick open controls, own play button to start the game from the beginning, white/blacklist scenes so they open with other scenes.
    • Bonus features such as Multiple scenes lightmap baking, Extra Splashscreen, and Coloring your scenes :D
    Very much appreciate you took the time to read and checking out our asset!



    TLDR;

    Advanced Scene Manager, a simple and improved Scene Management System, improving your workflow and minimize problems such as large scenes and merge conflicts. Using a Simple UI to organize your scene management. Boosted with automatic Loading screens, Adressables support, and bonus splash screen!


    TwitterPromoASM.gif

     

    Attached Files:

    Last edited: Dec 20, 2023
    BAIZOR and MrIconic like this.
  2. MrIconic

    MrIconic

    Joined:
    Apr 5, 2013
    Posts:
    239
    Are there any buttons in the editor window to load the scene(s) in and out of the editor?

    So that I can jump between things in the scene view.
     
  3. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Yes, you are able to load in a Collection, a Single scene, or additively, so that you quickly can jump between scenes.
    The buttons that look like ↪, + handle that, (Tbh we are still looking to change those icons, any tips?)

    You are also able to whitelist and blacklist scenes, in case you want a scene to always be there when you open another scene.

    If you wish to scroll through the controls you can check our documentation for that section here:
    https://github.com/Lazy-Solutions/advanced-scene-manager/wiki/SceneManagerWindow
     
  4. MrIconic

    MrIconic

    Joined:
    Apr 5, 2013
    Posts:
    239
    Oh the button changes when you click it. Now that makes sense. As for a different button, I don't have any preferences at the moment but I'll definitely have to check this out when I get home.
     
  5. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Thank you for taking interest in our work! looking forward to any feedback you can give. :)
     
  6. MrIconic

    MrIconic

    Joined:
    Apr 5, 2013
    Posts:
    239
    Any idea why this keeps appearing and incrementing by 1 when this asset is in my project?

    upload_2021-1-23_17-9-8.png

    It happens when I save the scene/project and probably some other things too.

    Example: Saved the scene, saved the project, made a collection etc.

    upload_2021-1-23_17-10-58.png
     
  7. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    That's something we have to look into! :eek:

    What version of unity are you using?
    Does it give you any more info than that?
     
  8. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Unfortunately, errors other than those mentioned have slipped through testing into the release.

    Currently issues with building the project, this will be addressed and updated asap, together with other planned patching like reduce dependencies. Should be sorted today and sent to unity for patching.
    This doesn't cause issues working in the editor, but none the less something we shouldn't have missed.
    As we work to bring you a product we are proud of, we learn along the way!

    Thank you for your patience and understanding.
     
    MrIconic likes this.
  9. MrIconic

    MrIconic

    Joined:
    Apr 5, 2013
    Posts:
    239
    Nope, that's all it says. I'm using 2020.1.15f1 but I should probably update to the newest version (2020.2.2f1) and see if it fixes it.
     
  10. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Keep me noted, I was unable to reproduce, but I did find other issues thanks to it :D
     
  11. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Patch has been submitted and will hopefully be live within a few days.

    If a support package is needed it can be requested until then!
     
  12. MrIconic

    MrIconic

    Joined:
    Apr 5, 2013
    Posts:
    239
    For some reason updating fixed it. I'm not sure if my project being outdated was the issue or updating causing a reimport did.

    Reason I'm unsure is because when I first imported the package Unity was refusing to acknowledge any scenes that weren't newly created (I couldn't drag them into ASM). Then it imported for a few seconds and all the scenes appeared but that error likely started occurring. So it might've been an editor issue that was cached that got deleted during the upgrade.

    Just to be on the safe side can you PM me or email me the updated package?
     
  13. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    If it happens that a scene just refuses, which happens sometimes, we have a refresh button installed to force everything to update. which can be found in the top right corner!


     
  14. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Advanced scene manager has been patched live now! combated the issues presented earlier in thread.

    Patch v1.0.1
    - Fixed errors causing build to fail.
    - Reduced amount of dependencies.
    - Fixed warnings with css.
    - Updated offline documentation.
     
  15. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Heya developers!

    We just uploaded version 1.0.2, with a few new small features and quite the update.
    We also created a Roadmap to prepare for a larger update.

    Bugfixes/Changes:
    • Updated Startup action to improve and bugfixes with splash screen and loading screen.
    • Removed Input system dependency.
    • Fixed error causing "Cannot get non-Existing progress id #"
    • Fixed buttons being unresponsive.
    • Remade all items in SceneManager from static classes to static properties, and have as such been renamed to use first letter lowercase.
    New Features:
    • Quick scene split.
    • Quick scene Merge.
    • Temp build now deletes temp build once game closed.
     
  16. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Hiya!

    New update once again! 1.1.0, with a new feature!
    Added Cross Scene References to the mix as we felt that would fit very well into the asset.
    Built-in ready to be used, just drag and drop references that's it.

    Any features you'd like to see us add? hit us up here or on discord!

    Have a nice weekend!
     
  17. YohanSG

    YohanSG

    Joined:
    Aug 10, 2013
    Posts:
    3
    Hi @Nuwm, great asset, started playing around with it this weekend and hit an issue where when you register non-persistent callbacks for sceneOpen/close you are removing them from the list while iterating the same list (which c# doesn't like). Anyway the fix is to create a copy of the list then iterate on the copy. I've patched the code below in my build to fix the issue but you might want to update your package. I suppose you've been testing with persistent callbacks all this while :)

    Ideally would be great if you could use some temporary list instead of creating a new one (like I did below) so you don't generate extra garbage each time a scene is open/closed. (personally I use a collection pool for that purpose).

    Code (CSharp):
    1.  
    2. void OnSceneOpened(object scene, SceneManagerBase sceneManager)
    3.                 {
    4.  
    5.                     ISceneObject obj = null;
    6.                     if (scene is OpenSceneInfo info)
    7.                         obj = info.scene;
    8.                     else if (scene is SceneCollection collection)
    9.                         obj = collection;
    10.                     else
    11.                         return;
    12.  
    13.                     if (sceneOpenCallbacks.TryGetValue(obj, out var list))
    14.                     {
    15.                        // <--- Here should make a copy of the list  
    16.                         var listCopy = new List<(Action action, bool persistent)>();
    17.                         listCopy.AddRange(list);
    18.                         foreach (var action in listCopy)
    19.                         {
    20.                             action.action?.Invoke();
    21.                             if (!action.persistent)
    22.                                 sceneOpenCallbacks.GetValue(obj).Remove(action);
    23.                         }
    24.                     }
    25.  
    26.                     if (scene is OpenSceneInfo info2)
    27.                         utility.SceneOpened?.Invoke(info2, sceneManager);
    28.  
    29.                 }
    30.  
    31.                 void OnSceneClosed(object scene, SceneManagerBase sceneManager)
    32.                 {
    33.  
    34.                     ISceneObject obj = null;
    35.                     if (scene is OpenSceneInfo info)
    36.                         obj = info.scene;
    37.                     else if (scene is SceneCollection collection)
    38.                         obj = collection;
    39.  
    40.                     if (sceneCloseCallbacks.TryGetValue(obj, out var list))
    41.                     {
    42.                                               // <--- Here should make a copy of the list
    43.                         var listCopy = new List<(Action action, bool persistent)>();
    44.                         listCopy.AddRange(list);
    45.                         foreach (var action in listCopy)
    46.                         {
    47.                             action.action?.Invoke();
    48.                             if (!action.persistent)
    49.                                 sceneCloseCallbacks.GetValue(obj).Remove(action);
    50.                         }
    51.                     }
    52.  
    53.                     if (scene is OpenSceneInfo info2)
    54.                         utility.SceneClosed?.Invoke(info2, sceneManager);
    55.  
    56.                 }
    57.  
     
  18. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Hi @YohanSG!

    Thank you for your support, we are grateful for the suggestion. :)

    I sent this on to the main engineer, he replied that he added the copy suggestion and if he'll take a look at the pooling suggestion if it's needed. :D

    We have a bigger update in the making so will take a little while until that's done before we update the package. Hopefully within a few weeks! :) (Hopefully)
     
  19. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    New update! 1.2.0

    With a bonus Debug.log every time you save! (nothing we intend to keep, it just somehow slipped in :rolleyes:)

    Update v1.2.0

    New Features:
    Stutter reduction: Tools to help to reduce laggy loads often caused by initializing too much in start/awake. and automatic backgroundLoadingPriority.
    Team Lock: Enables you to set scenes and collections to "locked", thus preventing unwanted changes and more merge conflicts.

    Fixes:
    Important: removed tag startup options, this was confusing and caused confusion, like this sentence...
    Editor: Added multi drag and drop to collections, for those who need to add 100+ scenes.
    Editor: Fixed dropping when dragging scene from the hierarchy.
    Editor: Fixed collections collapsing when reordering scenes.
    Editor: Holding shift on collection open buttons to ignore any tags set on scenes.
    Extra: 4 new Loading screen examples: Video, Quote, IconBounce, PressAnyButton.
    Runtime: Added SceneCollection.Find, to easily find a collection by name.

     
  20. YohanSG

    YohanSG

    Joined:
    Aug 10, 2013
    Posts:
    3
    Thanks Team for the update!

    I have an issue (in the previous version too) where even though I've disabled the default pause screen, it still shows up in my Builds (not when running in editor).

    Possible to take a look?
     
  21. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Yes absolutely! do you have discord? if so it's easier to help you there.

    We have a server you can jump into. https://discord.gg/Vtv4DPh
     
  22. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Hey @YohanSG! and anyone experiencing this issue.

    Here's a patch targeting the pause menu bug, until we have it live!
     

    Attached Files:

  23. YohanSG

    YohanSG

    Joined:
    Aug 10, 2013
    Posts:
    3
    The patch worked great thank you for the quick fix! (I've also joined the discord and will post there the next time).
     
  24. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    A Bump and a Smaller Update!

    v1.2.3

    With this update, we improved our backend a bit to use less memory allocation with caching, to improve the performance.
    We also enable our users to programmatically add and remove scenes and collections.
    So that you can extend ASM a bit to fit your need.

    Examples can be found here.
    https://github.com/Lazy-Solutions/advanced-scene-manager/wiki/SceneUtility

    Note that generating scenes does take some time.

    If you want to know more, or have any suggestions, feel free to reach out here or on discord!
     
  25. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Update

    v1.2.3 had some issues, ex. not being able to build the game due to missed #if unity editor and not being able to refresh when things go missing

    This has been resolved and pushed as v1.2.4.

    If you find that something is broken, come check with us on discord. We might have patches available. or send us a message here!.
     
  26. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    New update with a bunch of fixes!

    Update v1.2.5


    Editor: Added quickplay button to collections for faster access.

    Fixed threading issue in AssetRefreshUtility.
    Fixed a bug in AssetManagement which caused a stack overflow when removing a collection
    Fixed index out of range in CrossSceneReference restore.
    Fixed bug in SceneOperation where scenes loaded as standalone would not open if current collection contained it and was tagged as DoNotOpen.
    Fixed null ref in GlobalCoroutinePool.
    Fixed an error when automatically restoring scene setup threw an error when a scene that had been removed that was still saved in setup was opened.
    Fixed an issue where SceneCollection.Reopen() would not close DoNotOpen scenes.
    Fixed issue in OpenAndRunCallback (loading screen, splash screen, etc...) where while loop would have inverted condition for the timeout when no callback script found in the scene, resulting in an infinite loop.
    Closed asm scene when not needed.
     
  27. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Update v1.3.0

    WARNING Substantial Update. Backup your project before updating, Requires removal of the old asset and plugins to be updated, do not remove resources data! Might require a unity restart.


    - WebGL support added.
    - Removed all reliance on System.Threading.Tasks.Task (for WebGL support).
    - Removed custom package in favor of unity package manager (since our reason for using a custom one did not work out), and all packages have been made compliant with Unitys package manager (note that old packages will need to be removed before updating).
    - CoroutineUtility is no longer embedded and is instead downloaded as a dependency in the package manager.
    - Startup action now reports loading progress.
    - Fixed some issues with the "AdvancedSceneManager" scene, where it would not open in time before closing scenes, and sometimes blocking preload.
    - Improved asset management, Scene, SceneCollection, and Profile can now be moved from their default folder (which helps with addressable not liking assets in Resources folder).
    - Fixed LoadingScreenUtility.IsAnyLoadingScreen opens returning true when no loading screen was open.
    - Fixed dragging scene from hierarchy into scene field.
    - Fixed buttons not responding when pressing too far from the center (even if still inside button border).
    - Added subheaders in settings to make things a bit clearer.
    - Added option to disable adding labels to SceneAssets.
    - Removed AdvancedSceneManager.Utility, merging it into main AdvancedSceneManager assembly.
    - Fixed a few issues with scene helper singleton, where it in some cases would not get automatically created.

    Update v1.3.1 is now live!
    A very important update!

    - Fixed an issue where the 'plugins and samples' package would not install, which would result in ASM not working at all, since it also managed dependencies for ASM.

    - Fixed an issue where scenes tagged with DoNotOpen would open in duplicates since there was no check to see if it already was open.
    - Fixed an issue where using the normal unity play button would enter build mode.
    - Fixed a bug where Profile would not be added to asset management when created, causing issues until an asset refresh happened, where it would be added if it wasn't already.
    - Fixed an issue where popups would freeze the entire Editor Window.
    - Fixed SceneDataUtility giving warning about invalid asset path.
    - Fixed InvalidCast when opening splash screen.
     
  28. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Version 1.4.0
    Released: Dec 7, 2021

    Make Sure to always back up your project before updating or installing ASM, May require some restarts to make sure all is compiled correctly!

    • Added SceneOperation return value to Scene and SceneCollection scriptable objects, and due to UnityEvent not supporting return values, we've included methods without a return value as well, but suffixed with 'Event', please be aware that this will break all UnityEvent currently using Scene or SceneCollection as a target, scene helper is unaffected.
    • Full rewrite of SceneOverviewGUI, now called InGameToolbar. Added toggle button on screen (can be disabled in settings) and removed hotkey. In addition to already supporting viewing game objects, we've now added support for inspecting scripts and their variables.
    • Added SceneOperation.running, since SceneOperation.queued did not provide info about the full picture of what was going on, since some operations are not queued, and would, as a result, cause some confusion.
    • DefaultScene (AdvancedSceneManage scene) will now be open at all times during runtime again, due to too causing too many issues relating to ensuring it is open or closed when it was supposed to be.
    • Added SceneManager.utility.dontDestroyOnLoad, allowing inspection of DontDestroyOnLoadScene (support also added to InGameToolbar) - Fixed bug where temp build would not add ASM startup scene.
    • Fixed broken implementation of ASM startup scene, causing flicker on startup during builds, when no startup loading screen was set.
    • Improved equality checking for Scene and OpenSceneInfo.
    • Added key bindings for entering ASM play mode (shift+F5 by default, configure in unity shortcuts window)
    • Removed sceneIndex parameter on a few methods, since we do no longer support opening multiple instances of the same scene at a time.
    • Cleaned up [MenuItem]s, moved options into the settings tab.
    • Fixed a bug where SceneField would assign null when dropping a scene on it, on some specific areas.
    • Fixed some bugs with Scene.Reopen().
     
  29. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
  30. Bezoro

    Bezoro

    Joined:
    Mar 16, 2015
    Posts:
    133
    Unity complains that it can't parse the manifest.json file after importing ASM while using scoped registries, requiring it to be manually edited.

    upload_2021-12-22_11-11-13.png

    Code_wLEC00WnCT.png

    Unity: 2020.3.25f1
    Advanced Scene Manager: 1.4.0
     
  31. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Edit: Tech said it should be with the future asset store update, until then, manually moving those 3 lines to dependencies will solve it.
     
    Last edited: Dec 22, 2021
  32. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Update v.1.4.1
    Make Sure to always BACKUP your project before updating or installing ASM!
    Requires you to DELETE the old AdvancedSceneManager folder before updating!
    May require a restart to make sure all is compiled correctly!

    - Fixes issue with the camera being created for builds in the startup scene.

    - Fixed issue where Scene.Create() would throw file not found exception.

    - Fixed issue with startup scene not being automatically recreated if the scene had incorrect properties.

    - Added new dependency manager, due to the old one not supporting ScopedRegistries, and would attempt to insert dependencies wrong when used.

    NOTE: You will have to manually fix or revert 'Packages/manifest.json' if using ScopedRegistries
     
  33. HeavenHero

    HeavenHero

    Joined:
    Jul 9, 2021
    Posts:
    3
    How do you disable the default pause scene? It really shouldn't be there, and it's not something that I see any options for in the 'Scene Manager'.

    Also, the asset appears to really eat up resources and sometimes even freeze Unity when you press 'Play'. Are scripts saved in a second location? I update my scripts and the changes are not reflected when I launch the latest build.

    There's also problems with "EasySave3' asset manager, where it has a tendency to delete them if they feature on concurrent multiple scenes.

    I think your asset has potential if it's still updated; it's just a bit bloated and almost more trouble than it's worth.
     
  34. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Hi.

    You can go to the settings tab and turn things off, like the pause screen for example.
    The pause screen is there to help quickly test scenes with reloading and such so you don't have to make it to get that functionality. but it's meant to be replaced.

    Not sure what you mean, could you elaborate?
    The asset is more or less a bunch of static methods, it's not running constantly.
    Why your scripts don't update I can't answer, we don't modify your scripts in any way.

    Easy save 3 is not an asset of ours, I see you have reviewed that one yesterday. so I would suggest you ask them for support.

    Feel free to fill in what you feel is bloated and can be improved.

    Thanks!
     
  35. Barritico

    Barritico

    Joined:
    Jun 9, 2017
    Posts:
    374
    Hi.

    After install:

    Assets\AdvancedSceneManager\System\Editor\AssetRefreshUtility.cs(147,17): error CS0234: The type or namespace name 'PrefabStageUtility' does not exist in the namespace 'UnityEditor.SceneManagement' (are you missing an assembly reference?)

    Unity version 2021.1.28f1

    Thanks!!
     
  36. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Hi!

    2021.1.28 is not an LTS version, so we cannot guarantee ASM works as expected with it, as we only support LTS due to Unitys changing nature. So I would recommend using LTS version as many publishers only support that.

    Tho this is a change that one day will most likely be the new way since it's just a move from
    UnityEditor.Experimental.SceneManagement => UnityEditor.SceneManagement.

    So if you don't want to wait you could temporarily change that bit of code. but like I said, we have not tested that editor version yet.

    We are currently working on a patch that we hope to be done with today. And we will include that code.

    So I'll recommend that you join us on discord to get the latest patch when it's ready since it won't be updated on the store for I would say up to a week, due to Unity taking its new year holiday and the review time.

    Thank you for reaching out, and choosing ASM :)
     
    Barritico likes this.
  37. Barritico

    Barritico

    Joined:
    Jun 9, 2017
    Posts:
    374

    Thanks!!!
     
  38. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Hi, Barritico, And all other ASM users!

    A patch is available, which contains some very nice in editor performance gain (Bugfix) and some other smaller fixes.

    We also added a patch section to the documentation for access outside of discord.

    But we recommend joining discord if you need future help.

    https://github.com/Lazy-Solutions/AdvancedSceneManager/tree/main/patches
     
    Barritico likes this.
  39. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    We forgot to make the git public, sorry about that for anyone trying to access it.

    You can now download patches!
     
  40. HeavenHero

    HeavenHero

    Joined:
    Jul 9, 2021
    Posts:
    3
    Does this patch fix the problem of the AdvancedSceneManager profile randomly going blank? I get a red error 'Build profile not set' quite often when I boot up Unity, and this is accompanied with having my profile get replaced with nulls, sometimes just the collections, sometimes the profile itself.
     
  41. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Not exactly yet, we band-aided that part until we find the root cause. but it should happen less often.

    This is from the patch notes for that patch:
    - Added bandaid over scene references and/or profile being lost in scene manager window (same issue as above with null refs), and refresh will now be called automatically when it is detected one is needed. (A refresh fixes this for now, while we work to fix the underlying issue)

    The error itself is not damaging and will return automatically or if not you may use the reload button in the ASM window.
    We will keep looking until we find the root cause.

    The patch does contains quite the goodies still tho. Like editor performance boost in 2020+.

    Thanks for reaching out :)
     
  42. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Update v1.4.2 is not Live!

    Make Sure to always BACKUP your project before updating or installing ASM!
    May require a restart to make sure all is compiled correctly!
    Requires you to DELETE the old AdvancedSceneManager folder before updating from before v1.4.1!

    - Improved performance in unity 2020.

    - Fixed issue where ASMSettings would enter an import loop, due to it being used in asset refresh.

    - Fixed issue where BuildSettingsUtility.UpdateBuildSettings() would be called way too often, sometimes resulting in only the startup scene being added, due to AssetDatabase.LoadAsset() returning null during editor refresh sometimes.

    - Added bandaid over scene references and/or profile being lost in scene manager window (same issue as above with null refs), and refresh will now be called automatically when it is detected one is needed. (A refresh fixes this for now, while we work to fix the underlying issue).
     
  43. HeavenHero

    HeavenHero

    Joined:
    Jul 9, 2021
    Posts:
    3
    More questions: I'm using multiple scenes, one for the game and a separate scene which contains all UI canvas game objects. I'm having trouble understanding how exactly this separate scene with its own canvas is being rendered because there is no camera at all in it!
    There is only a single camera in the main game scene, but the UI is still being show non the screen at all times, even with no camera in that scene pointing to it. Furthermore, even when I change the masking layer of the main camera to exclusive UI layers, and I set the canvas and everything in the UI scene to the UI layer, the UI is still appearing on screen.
    Is the plugin doing anything to make several scenes automatically display even when a camera only exists in a single scene? I'd like like more control than this.
     
  44. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Hi!

    This is the Unity default behavior and nothing we control.

    Canvas render mode "screen space - overlay" is always rendered since it doesn't rely on the camera.
    So if you want it dependent on a camera you would need to change the space.
     
  45. musap_

    musap_

    Joined:
    Mar 13, 2017
    Posts:
    5
    Hi!

    I am using Unity 2020.3.26f1 and Advanced Scene Manager version 1.4.2 with the 19-01-2022 patch update. After I make a build to my Android phone (Samsung Galaxy S20FE with Android 12), everything works fine. I see the default Unity splash screen and then ASM Splash Screen shows up. If I kill the application from the recent apps and open the app again, ASM Splash Screen doesn't show up, it's all black after then. This doesn't happen if I close the app by using the default pause screen. Speaking of the default pause screen, it shows up on an ARMv7 build but doesn't show up on an ARM64 build.
     
  46. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Hi, luckily our tech has the same phone, tho he is currently fixing some bugs with WEBGL, so it may take a bit before he can get to check this issue out. I'll keep you updated here when he got more on it!

    Thanks for reporting!
     
    musap_ likes this.
  47. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Hi, tech came in with a response, he has uploaded a fix for the pause screen. however he is unable to replicate the splash screen behavior, he notes that there's a strange potential unity bug with [RuntimeInitializeOnLoadMethod] with IL2CPP which yielded the pause screen issues. A patch should be up shortly https://github.com/Lazy-Solutions/AdvancedSceneManager/tree/main/patches
     
    musap_ likes this.
  48. musap_

    musap_

    Joined:
    Mar 13, 2017
    Posts:
    5
    Thanks for the fix to the pause screen. It works on an ARM64 build perfectly.
    About the splash screen behavior, the problem is not exactly related to the splash screen. I am sorry that I made it sound like a splash screen problem.
    The problem occurs even if there isn't a splash screen set. The problem occurs on load. Application.quitting is invoked if the application is closed properly. When the application crashes or is killed by the OS, quitting event is not invoked, and "AdvancedSceneManager.IsPlaying" in the player prefs remains as "1". This prevents the ASM from loading the next time the app starts.

    Screenshot 2022-01-26 085035.png Screenshot 2022-01-26 085003.png
     
  49. nuwn

    nuwn

    Joined:
    Jan 29, 2017
    Posts:
    137
    Hi! tech did find quite the discovery we missed while looking for the issues you have, the issues you stated has been fixed but in the dev branch, we will see if we can patch it, might be that we focus on releasing a new update we have been working on, with more fixes and a rebuild of the "brain". Hope this doesn't cause too much trouble for you!
     
    musap_ likes this.
  50. musap_

    musap_

    Joined:
    Mar 13, 2017
    Posts:
    5
    No worries. I am still in the prototyping phase.
    Keep up the good work!
     
    nuwn likes this.