Search Unity

World Building [RELEASED] Dungeon Architect

Discussion in 'Tools In Progress' started by AliAkbar, Aug 9, 2015.

  1. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    @IrishDev I'll provide an example for this with the next update
     
  2. Cartoon-Mania

    Cartoon-Mania

    Joined:
    Mar 23, 2015
    Posts:
    320
    I want to see your Eternal Crypt Demo running in mobile

    I know this is not for mobile.. . but.. But I would really like to know that mobile perfomance

    This is the kind of heavy test
     
  3. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    Survival Shooter Demo using the Cliff Theme. Will be included in the next update. Feel free to polish this and sell it in the app store ;)

    WEB DEMO: Survival Shooter [Cliff]




     
    S4G4N likes this.
  4. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    S4G4N likes this.
  5. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    This is a very old build (3-4 months old) I have in my phone of Eternal Crypt early in the development. Its not fully mobile optimized (too many point lights visible in the scene etc) but it runs ok. I'll deploy the latest build and upload a vid later

     
    antoripa likes this.
  6. longroadhwy

    longroadhwy

    Joined:
    May 4, 2014
    Posts:
    1,551
    Uploading multiple for multiple version of Unity works fine. I think 5.3 is where the major changes happen so maybe just for 5.1 and 5.3.3.

    I don't know if it is possible but it would be nice to have a horizontal scroll bar on the DA theme window. When you have a large number of emitters you have to keep stretching the window to display everything.
     
    Last edited: Mar 9, 2016
  7. longroadhwy

    longroadhwy

    Joined:
    May 4, 2014
    Posts:
    1,551
    Thanks for all of these examples you are posting.
     
  8. Cartoon-Mania

    Cartoon-Mania

    Joined:
    Mar 23, 2015
    Posts:
    320
    Thank you this is really really great.. I am satisfied with the performance
    if you sell Eternal Crypt like game (I know you use paid asset)
    I'll be sure to buy
    Please consider it
     
  9. ruairiau

    ruairiau

    Joined:
    Mar 9, 2016
    Posts:
    9
    Hi Ali,
    Thanks very much, looking forward to the updates. I'm running Unity 5.3 and I've notices that using the Minimap rebuilder along with the landscape transformer causes some weird results. Often it will clone the DungeonGrid and sometimes throw an error with the some smoothing method.
     
  10. DRhodes

    DRhodes

    Joined:
    Mar 26, 2015
    Posts:
    4
    I imagine you could use reflection to get the variables (and their types), then show them as part of your custom inspector window or property drawer (I haven't looked at your editor code). This would probably only work for value types, though (which may be enough for most use cases). If the variables are public, you should be able to access and set them directly via a custom editor.

    This might help: http://unity3d.com/learn/tutorials/modules/beginner/live-training-archive/scriptable-objects.
     
  11. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    Example listener script that dynamically spawns theme override volumes around all the rooms in the scene and assigns random themes to them. It also overrides the theme of the spawn room (green) and the final boos room (red)

    The colourful rooms are different theme files applied to them



    Full example coming soon in the next build. Here's the script if you want to try it out now. Save it somewhere and drop it into your dungeon object and rebuild. You can spawn your boss NPC in the boss theme file (red theme) and create a player spawn point in the spawn theme file (green theme):
    Code (csharp):
    1.  
    2. using UnityEngine;
    3. using System.Collections.Generic;
    4. using DungeonArchitect;
    5. using DungeonArchitect.Graphs;
    6. using DungeonArchitect.Utils;
    7.  
    8. /// <summary>
    9. /// This example spawns various theme override volumes around rooms
    10. /// This is done by hooking into the build events of DA and adding
    11. /// volumes right after the layout is built, but the theme engine executes
    12. /// </summary>
    13. public class VolumeSpawnExampleListener : DungeonEventListener {
    14.  
    15.     // DungeonArchitect.Graphs.Graph is a theme graph asset stored in disk
    16.     public Graph bossRoomTheme;
    17.     public Graph spawnRoomTheme;
    18.  
    19.     public Graph[] roomThemes;
    20.  
    21.     [SerializeField]
    22.     List<GameObject> managedVolumes = new List<GameObject>();
    23.  
    24.     /// <summary>
    25.     /// The template required to clone and duplicate a theme override volume.
    26.     /// Supply the reference of the theme override volume prefab here
    27.     /// </summary>
    28.     public Volume themeVolumeTemplate;
    29.  
    30.     /// <summary>
    31.     /// Called after the layout is built in memory, but before the markers are emitted
    32.     /// We would like to spawn volumes here that encompass the rooms, so each room has a different theme applied to it
    33.     /// </summary>
    34.     /// <param name="model">The dungeon model</param>
    35.     public override void OnPostDungeonLayoutBuild(Dungeon dungeon, DungeonModel model) {
    36.         DestroyManagedVolumes();
    37.  
    38.         // Make sure we are working with the grid builder
    39.         var gridModel = model as GridDungeonModel;
    40.         if (gridModel == null) return;
    41.  
    42.         // Pick the start / end rooms for special decoration
    43.         Cell spawnCell, finalBossCell;
    44.         FindStartEndRooms(gridModel, out spawnCell, out finalBossCell);
    45.  
    46.         // Start decorating the rooms with random themes (except start / end rooms which have their own decorations)
    47.         foreach (var cell in gridModel.Cells)
    48.         {
    49.             if (cell.CellType != CellType.Room)
    50.             {
    51.                 // We only way to decorate rooms
    52.                 continue;
    53.             }
    54.  
    55.             if (cell == spawnCell)
    56.             {
    57.                 DecorateRoom(dungeon, gridModel, cell, spawnRoomTheme);
    58.             }
    59.             else if (cell == finalBossCell)
    60.             {
    61.                 DecorateRoom(dungeon, gridModel, cell, bossRoomTheme);
    62.             }
    63.             else
    64.             {
    65.                 DecorateRoom(dungeon, gridModel, cell, GetRandomTheme());
    66.             }
    67.         }
    68.     }
    69.  
    70.     public override void OnDungeonDestroyed(Dungeon dungeon) {
    71.         DestroyManagedVolumes();
    72.     }
    73.  
    74.     void DecorateRoom(Dungeon dungeon, GridDungeonModel gridModel, Cell cell, Graph theme)
    75.     {
    76.         if (theme == null || cell == null) return;
    77.  
    78.         // Grid size used to convert logical grid coords to world coords
    79.         var gridSize = gridModel.Config.GridCellSize;
    80.  
    81.         Vector3 position = cell.Bounds.Location * gridSize;
    82.         Vector3 size = cell.Bounds.Size * gridSize;
    83.         var center = position + size / 2.0f;
    84.         var scale = size;
    85.         scale.y = 5;    // Fixed height of the volume.  Optionally make this customizable
    86.  
    87.         var volumeObject = Instantiate(themeVolumeTemplate.gameObject) as GameObject;
    88.         volumeObject.transform.position = center;
    89.         volumeObject.transform.localScale = scale;
    90.         var volume = volumeObject.GetComponent<ThemeOverrideVolume>();
    91.         volume.dungeon = dungeon;       // Let the volume know that it belongs to this dungeon
    92.         volume.overrideTheme = theme;   // Assign the theme we'd like this volume to override
    93.  
    94.         // Save a reference to the volume so we can destroy it when it is rebuilt the next time (or we will end up with duplicate volumes on rebuilds)
    95.         managedVolumes.Add(volumeObject);
    96.     }
    97.  
    98.     Graph GetRandomTheme()
    99.     {
    100.         if (roomThemes.Length == 0)
    101.         {
    102.             return null;
    103.         }
    104.         // Pick a random theme from the supplied theme list
    105.         return roomThemes[Random.Range(0, roomThemes.Length)];
    106.     }
    107.  
    108.     void FindStartEndRooms(GridDungeonModel gridModel, out Cell spawnCell, out Cell finalBossCell)
    109.     {
    110.         var furthestCells = GridDungeonModelUtils.FindFurthestRooms(gridModel);
    111.         if (furthestCells.Length == 2 && furthestCells[0] != null && furthestCells[1] != null)
    112.         {
    113.             spawnCell = furthestCells[0];
    114.             finalBossCell = furthestCells[1];
    115.         }
    116.         else
    117.         {
    118.             spawnCell = null;
    119.             finalBossCell = null;
    120.         }
    121.     }
    122.  
    123.     void DestroyManagedVolumes()
    124.     {
    125.         foreach (var volume in managedVolumes)
    126.         {
    127.             if (Application.isPlaying)
    128.             {
    129.                 Destroy(volume);
    130.             }
    131.             else
    132.             {
    133.                 DestroyImmediate(volume);
    134.             }
    135.         }
    136.     }
    137.  
    138. }
    139.  
    140.  
     
    Arkade and daschatten like this.
  12. longroadhwy

    longroadhwy

    Joined:
    May 4, 2014
    Posts:
    1,551
    Thanks for this example and associated code.
     
  13. daschatten

    daschatten

    Joined:
    Jul 16, 2015
    Posts:
    208
    There needs to be an additional line of code to reset the managed volumes list:

    Code (CSharp):
    1.     void DestroyManagedVolumes()
    2.     {
    3.         foreach (var volume in managedVolumes)
    4.         {
    5.             if (Application.isPlaying)
    6.             {
    7.                 Destroy(volume);
    8.             }
    9.             else
    10.             {
    11.                 DestroyImmediate(volume);
    12.             }
    13.         }
    14.         managedVolumes.Clear (); # <---
    15.     }
     
  14. daschatten

    daschatten

    Joined:
    Jul 16, 2015
    Posts:
    208
    Tried out a few themes, this is fantastic @AliAkbar !
     
  15. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    Ah yes, updated ;)

    Thanks!
     
  16. ruairiau

    ruairiau

    Joined:
    Mar 9, 2016
    Posts:
    9
    Hey Ali,
    I'm getting a bunch of issues.

    1) When editing offset of models in the moba theme and the dungeon rebuilds live, it adds a bunch of large stones around the place (this happens even in your provided samples)


    2) I was trying to spawn enemies in the cells and noticed they were appearing in odd places. When I turned on Debug Draw, I can see everything looks normal...


    Until I press play, then I get this...

    I assume this is incorrect and the reason why my enemies are spawning in the wrong place.

    Also, the paint mode doesn't seem to work correctly. If I paint, then play the scene then go to paint again, it deletes all previous painted areas (it resets the dungeon). Is this supposed to happen?
     
    Last edited: Mar 11, 2016
  17. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729

    @ruairiau as a workaround can you try the following:
    1. Resetting your theme's node ids (Theme editor window > Tools > Advanced > Reset node id), then save (modify the state of the graph by breaking a link / and putting it back) and then save
    2. Then destroy your dungeon and rebuild

    I'll have a look at the moba theme file. I believe this is due to the optimizations I added and the moba theme file was not upgraded

    The layout when you play looks different but the scene geometry was not updated. Can you post the code you use to rebuild the dungeon at runtime?

    I cannot reproduce the paint issue. It retains the paint data in the game object between play state and level loads etc. It will not remember it however, when you are painting it while the game is running. What is your unity editor version?
     
  18. DiscoFever

    DiscoFever

    Joined:
    Nov 16, 2014
    Posts:
    286
    Any update on this ? Thanks
     
  19. ruairiau

    ruairiau

    Joined:
    Mar 9, 2016
    Posts:
    9
    Yeah this fixed it.


    I was generating the dungeon at design time, not runtime. I managed to fix it by deleting the Cells in the Grid Dungeon Model. For some reason, this did not clear out when the dungeon was destroyed and always had 499 Cells. Once I deleted it, the cells got generated normally and the problem was fixed.

    I'm using Unity 5.3. Let me explain the steps:
    • Build a dungeon at design time
    • Paint an area
    • Press Play in Unity then stop the game
    • Paint another area <-this will cause all previous painted areas to disappear.

    Lastly, when using the MOBA theme along with the terrain transformer, the fences (and other models) are often are placed outside of the terrain edges as it slopes down. Adjusting the offset doesn't fix this as it will just cause the fence to be wrong on another edge. If the landscape could have a padding parameter on the x and z, this might help fine tune it.
     
    Last edited: Mar 14, 2016
  20. wheezygeezer

    wheezygeezer

    Joined:
    Sep 19, 2014
    Posts:
    14
    Hi Ali,

    Firstly, I am enjoying playing with DA. (But it's expensive on my wallet - there's so much fun to be had I feel I need to buy more assets!)

    I am, however, having a problem. Every time I import a FPSController from Standard Assets I get so many compile errors I cannot proceed. They range from CrossPlatformInput errors, t No MonoBehaviour scripts.... I am not a programmer, so all this means nothing to me. All I want to do is have a Character move around DA's beautifully generated dungeons. Even the sample Scenes don't work. (I am using 3DF Interiors.)

    Any help would be appreciated for a relatively new user....

    (Cross-post from the Code Respawn Q&A forum.)
     
  21. DiscoFever

    DiscoFever

    Joined:
    Nov 16, 2014
    Posts:
    286
    @AliAkbar When are you going to release the updates & fixes for 2D tile size problem ?
    I have the feeling that I bought the most expensive asset ever which is a nice 'tech' demo but doesn't work 'outside of the box'...

    You keep posting nice 'demos' but you don't share it; i don't see the point of posting this if nobody can make them, at least that's the purpose of an asset.

    To be honest i'm kind of disappointed that for $95 i should 'at least' have something that I can actually 'use' outside the demo content.

    I'm might be asking for a refund if you can't solve the 2D tile size problem.

    Please let me know if you need any more information for me.

    PS: Please fix your Wordpress register forum, i still can't register.
     
  22. Teila

    Teila

    Joined:
    Jan 13, 2013
    Posts:
    6,932
    I believe we are waiting on Unity to update the asset store. Not sure, but I hope that is the issue. I am in waiting mode as well so I get your frustration but the store updates are slow and with GDC this week, they may be even slower.
     
    S4G4N likes this.
  23. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    @PeteLaChatte I posted 1.1.0 to Unity on Friday evening. It should be available soon. I couldn't get the 2D fix added in 1.1 without delaying the update further, sorry. I'll have that sorted out by next week in 1.2
     
  24. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    @wheezygeezer I've removed the standard assets from the DA sample content and made it part of the setup so the user can import and use it properly. Also added builds for 5.0, 5.1, 5.2, 5.3 so it should work correctly for your version with the next version 1.1 (still awaiting approval from Unity)
     
    wheezygeezer and Teila like this.
  25. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    @ruairiau You can use the ClampOnTerrain transformer rule to have your objects clamped on the dynamic terrain. Example
     
  26. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    Thanks for the steps. I can reproduce it and found the issue. Something to do with a strange serialization bug. I'll have this fixed in the next build
     
  27. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    Looks like the prefab values are getting restored after play. I'll check further


    @PeteLaChatte I've fixed the sprite issue. It was due to incorrect scaling for larger sprites (was doubling the scale). I'll test it further and send you a hotfix tomorrow
     
  28. wheezygeezer

    wheezygeezer

    Joined:
    Sep 19, 2014
    Posts:
    14
    I thought I would do a little test:
    Unity 5.3.3f1 Personal version (on an iMac.)
    New Project with NO Assets = okay, empty scene with 'Main Camera' and 'Directional Light'
    Import Standard Assets 1.1 = no errors.
    Add 3rdPersonContoller = no errors.
    Download DA 1.02 = no errors.
    Import DA Asset = no errors.
    Added Dungeon Grid prefab = errors!
    Screen shot attached. (Shows DA errors)

    :(:mad::eek:o_O:confused:
     

    Attached Files:

  29. wheezygeezer

    wheezygeezer

    Joined:
    Sep 19, 2014
    Posts:
    14
    I thought I would do another little test:
    Unity 5.3.3f1 Personal version (on an iMac.)
    New Project with NO Assets = okay, empty scene with 'Main Camera' and 'Directional Light'
    Import DA Asset = Unity requests to recompile scripts because of API
    Added Dungeon Grid prefab = no errors!
    (But something popped up in the console - I was too slow to see it before I started the next step:)
    Import Standard Assets 1.01 = Errors all over the place in Standard Assets/ImageEffects (23 in total!)
    Didn't bother to add a 3rdPersonController.

    :mad::confused::mad::confused::mad:
     
  30. longroadhwy

    longroadhwy

    Joined:
    May 4, 2014
    Posts:
    1,551
    The asset store is extremely slow. Already existing assets are taking two weeks for some of the updates to come through. I expect there will be very little if anything coming through during GDC 2016 week. I would expect Unity to concentrate on GDC 2016.

    There are many new assets coming through the asset store also. Just clicking on "new on the asset store" and there are many new ones. Unfortunately it is not possible to figure out how far an asset update is in the queue before it gets reviewed and released. Also not counting how many new assets are attempted that do not meet Unity's standard which also takes up time.
     
    Teila likes this.
  31. longroadhwy

    longroadhwy

    Joined:
    May 4, 2014
    Posts:
    1,551
    @AliAkbar

    Any plans on adding GPU support? Both Terrain Composer 2 (which is getting close to beta) and World Creator Professional support GPUs.
     
    AliAkbar likes this.
  32. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    @wheezygeezer this should be fixed in 1.1. In the mean time, you can try this workaround:
    • Delete Standard Assets folder (and Editor folder) if you've imported it it previously
    • Import DA (1.0.2)
    • Delete folder: Assets\DungeonArchitect_Samples\Support\ImageEffects
    • Delete folder: Assets\DungeonArchitect_Samples\Game3D_SurvivalShooter\MobileInput
    • Import Standard assets (image effects, camera etc) and it should work

    Verified it with Unity 5.3.3f1. Let me know if you face further issues
     
  33. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    I'll add that. Zooming in the theme window with scroll wheel is also in the todo list.
     
  34. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    Do you mean the Terrain modifier script? I should support the GPU as I don't work with the shaders / material system while modifying it. I work directly on the terrain data, which the materials eventually use, so shaders come after this and should be transparent to them. I haven't tried it though. Does Gaia use custom shaders for the terrain, as it work with it?
     
  35. wheezygeezer

    wheezygeezer

    Joined:
    Sep 19, 2014
    Posts:
    14
    Success!
    :):p:D
     
    AliAkbar likes this.
  36. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    4
    Awesome ;)
     
  37. longroadhwy

    longroadhwy

    Joined:
    May 4, 2014
    Posts:
    1,551
    I was thinking of GPU support for run-time generation of the Dungeons in particular. But any use in Editing portion (like painting the Dungeon) would be good also.

    TC2 has more information on their website (http://www.TerrainComposer.com ) plus a video to get a good overview of their GPU usage of what they expect to achieve with TC2.

    Have not spent that much time with Gaia lately since I keep spending more time with Dungeon Architect. I look at that script you mentioned also.
     
    AliAkbar likes this.
  38. Teila

    Teila

    Joined:
    Jan 13, 2013
    Posts:
    6,932
    Gaia does not use custom shaders but you can add Distingo shaders if you wish through Gaia. It is optional.
     
    AliAkbar likes this.
  39. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    Just a quick update, I'm working hard on getting a UI for spatial constraints within the theme file. This will help with contextual art, especially in 2D, where sprite rotation is not an option (e.g. different wall/door sprites for each 90 degrees steps)
     
  40. PeterShoferistov

    PeterShoferistov

    Joined:
    Sep 22, 2013
    Posts:
    59
    Awesome work. Is it possible to create a dungeon with a few floors in it? (multi-storey dungeon/cave/building)
     
    AliAkbar likes this.
  41. daschatten

    daschatten

    Joined:
    Jul 16, 2015
    Posts:
    208
    @AliAkbar
    Is there a chance to combine gaia landscape modifier and landscape transformer grid? I tried to build a dungeon on an uneven terrain (gaia) and some rooms spawned in a mountain.

    In my dreams gaia can spawn dungeon grids (or cities) and they build themselves on each kind of terrain.
     
  42. longroadhwy

    longroadhwy

    Joined:
    May 4, 2014
    Posts:
    1,551
    Actually Dungeon Architect 1.1.0 is now available in the asset store. Yea!
     
  43. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    Version 1.1.0

    * Added a new builder algorithm for generating simple cities. This also serves as a simple example reference to your own builders
    * Refactored the directory structure to make the builders more modular
    * Added new demo theme files (Outdoor Cliff, Medieval Stronghold etc).
    * Updated survival shooter demo to use these new theme files
    * Added various city builder samples
    * Added an example demonstrating the use of dungeon event listeners and dynamic volume spawning
    * Added various samples that work with third-party assets (Gaia, 3DForge Village Interior / Exterior kit etc). Created an alternate version of the landscape transformer script to beautify Gaia generated terrains


    I've added a new Setup Guide document that instructs you to import standard assets if you plan to check out the sample content (standard assets are not bundled going forward)

    The third-party demos for 1.1.0 will be made live soon. I'll keep you posted
     
    TeagansDad likes this.
  44. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    @PeterShoferistov Thanks! It's possible to create with new types of builders, which I intend to create in the future updates
     
  45. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    I'm moving the third-party demos to my S3 storage to avoid the github 1GB download limit (it is 100+MB now with the gaia samples). The download url will stay the same
     
  46. wheezygeezer

    wheezygeezer

    Joined:
    Sep 19, 2014
    Posts:
    14
    Yeah - DA 1.1.0 available.
    Boo! - Compile error:
    Assets/DungeonArchitect_Samples/Support/Scripts/Emitters/CornerEmitter3D.cs(22,14): error CS0101: The namespace `global::' already contains a definition for `CornerEmitter3D'
    This happens on all Simple City demo scenes.... :(
     
  47. wheezygeezer

    wheezygeezer

    Joined:
    Sep 19, 2014
    Posts:
    14
    And what I'm trying to build....
     
  48. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    @wheezygeezer It works fine without any errors. Please remove the old third party demo folder. A new thrid-party samples archive for 1.1 will be up in an hour (still uploading). Tested with 5.3.3f1

    If it still doesn't work, then do a clean re-import of DA (delete and reimport)
     
    wheezygeezer likes this.
  49. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    The third-party samples are available. I've also updated the Quick Start guide with the new content for 1.1.0.

    Quick Start Guide

    Some of the new samples with 1.1.0

    Outdoor Cliffs


    The Survival shooter demo was also updated to use this theme.

    City Builder Demo
    Simple City



    Fortified City: (walls added with marker emitters)



    Village Exterior & Gaia
    Farm House



    Small Village



    Fortified Village


    Village Interior


    Moba Winter
    The Moba pack by ManufacturaK4 comes with a winter variation. I've added a winter sample (like in eternal crypt demo)

     
    Last edited: Mar 16, 2016
    TeagansDad, TonanBora, Teila and 2 others like this.
  50. AliAkbar

    AliAkbar

    Joined:
    Jun 30, 2014
    Posts:
    729
    The performance should be much better in 1.1.0. Let me know how it works out for you. I did the following
    • When the prefab is instantiated and the static flag was set, only the parent's static flag was set. If the prefab had children and were not set to static, this would create a lot of non-static objects causing the scene manager to take time updating all their transforms. Now the static flag is set recursively on all the children of a prefab after instantiation
    • Hide unused array fields from the inspector window that were slowing the editor down when the grid game object was selected
    • Give out a warning if the user has supplied a parent game object (under which you spawn all your dungeon game objects) is not set to static.
     
    Last edited: Mar 16, 2016
    Griffo likes this.