Search Unity

GAIA - AAA terrain generator, procedural texturing, planting and scene creation

Discussion in 'Assets and Asset Store' started by AdamGoodrich, May 21, 2015.

  1. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    Yes - its called the session manager. It's one of the most powerful features of Gaia.
     
    99thmonkey likes this.
  2. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    It's that time.. when new things start to appear... hope to have some awesome news in the next day... Woooo.. look... its called Pegasus :)

    Grab 20160830143419 w1900h1200 x42y63z1r83.jpg Grab 20160830143752 w1900h1200 x351y58z-297r344.jpg Grab 20160830143933 w1900h1200 x445y51z84r278.jpg Grab 20160830144030 w1900h1200 x91y52z-182r69.jpg
     
    Last edited: Aug 30, 2016
    Hans, jimmikaelkael, Mark_01 and 5 others like this.
  3. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    Peg2.jpg

    Find out more here on the Pegasus forum :)
     
    S4G4N, TeagansDad, Mark_01 and 2 others like this.
  4. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    And Pegasus is now live on the asset store!!

    Here's a video on how quick and easy it is to show off your awesome environmental work with Pegasus!

     
    S4G4N, jimmikaelkael, Quast and 6 others like this.
  5. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
  6. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    Hi Mark,

    That seems very strange. The scanner makes a 1 for 1 copy of what is in the terrain so what gets stamped again should be identical. You are dropping the actual terrain object onto the scanner aren't you ?

    If you are doing that and still getting the issue then lets do a skype session - maybe i can work out whats going on by observing what you are doing.

    Cheers,
    Adam.
     
  7. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    Gaia + Pegasus + Helios + Some as yet unreleased magic all working together. Stoked!

     
    Last edited: Sep 1, 2016
  8. Catacomber

    Catacomber

    Joined:
    Sep 22, 2009
    Posts:
    682
    I love the Pegasus flying part. What does Helios do? : ) Is it lighting? Forgive me if I missed something. I see you like ancient Greek names. : )
     
    S4G4N and AdamGoodrich like this.
  9. smada-luap

    smada-luap

    Joined:
    Aug 22, 2013
    Posts:
    945
    Helios allows you to render your video at max settings because it goes frame by frame and doesn't capture in real time likee bandicam) but compiles the video offline (so-to-speak) so you end up with a hires and flicker free video
     
  10. BackwoodsGaming

    BackwoodsGaming

    Joined:
    Jan 2, 2014
    Posts:
    2,229
    To add to what @smada-luap said, Helios isn't developed by Adam. It is developed/maintained by @JohnRossitter. He and Adam collaborated a lot while developing Helios and Pegasus. You can read more about Helios on it's product page which also has a link to the discussion thread for it. I highly recommend getting them both if you need to do cutscene or promo videos of your games. Pegasus makes a quick job of making camera fly through routes and Helios captures each and every frame along the route and then takes all those images and renders to a video removing any frame rate issues you would have if you were recording while running your scene. Totally AWESOME combination! :)
     
  11. digiross

    digiross

    Joined:
    Jun 29, 2012
    Posts:
    323
    @AdamGoodrich I've missed some posts I think, if Pegasus is your new product and does flybys, what is the new product that is an upgrade/addition to Gaia that allows the tiling, etc. Does it have a name and release date?
     
    S4G4N likes this.
  12. BackwoodsGaming

    BackwoodsGaming

    Joined:
    Jan 2, 2014
    Posts:
    2,229
    Pegasus and the yet to be revealed asset are totally separate from Gaia. Even if the multi-tile is next in the project list after the yet to be revealed asset is finished and released (which I think it may be but I'm not sure), I imagine it might take some time to get everything integrated and tested.
     
    S4G4N likes this.
  13. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    Yep - Pegasus is all about showing off your work - there are so many environments that I generated and wanted to share - but making videos is tedious and time consuming.. so I made an asset that does this.

    And when you combine Pegasus with Helios you remove the frame dropping issues that are created when you both record and play back at the same time as you create your video's. I was absolutely amazed at how much better the output is when you use them together. You can really show off just how amazing Unity can be!

    The new asset I have been working on is a very powerful spawning system. It will work on terrain, multi tile terrain, and meshes - so its an all purpose thing. It is the perfect companion to Gaia or your terrain generation system of choice. To quote some of the people in the beta "it makes level design fun again", and I can no longer imagine not using it. It will be launched soon - I added a new feature last week and its quite a deep one to get right - but well worth the effort.

    When this has been launched I will be switching focus back to Gaia. I have a whole bunch of things I want to do to it... ranging from adding in a selection of HDR skyboxes and improving the default lighting setup to adding support for the latest cinematic FX to adding in multi tile support. There is more i want to do with Gaia as well :)
     
    Last edited: Sep 1, 2016
  14. Catacomber

    Catacomber

    Joined:
    Sep 22, 2009
    Posts:
    682
    This looks like a combo I really need. : ) Everything works on both Mac and PC? I have only used Fraps for video recording and it no longer works on Windows 10 and it never worked on Mac.
     
    Last edited: Sep 2, 2016
  15. BackwoodsGaming

    BackwoodsGaming

    Joined:
    Jan 2, 2014
    Posts:
    2,229
    I use it on PC and it works fine. John, the developer of Helios is a mac user. So my guess would be yes. :)

    Would probably be best to ask future questions about Pegasus over in the thread Adam created for it, that way if others are looking for same answers and maybe not familiar with Gaia (I know, hard to think of, right? heheh) they will see answers too.. :p
     
  16. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
  17. Arganth

    Arganth

    Joined:
    Jul 31, 2015
    Posts:
    277
  18. namdo

    namdo

    Joined:
    Feb 23, 2015
    Posts:
    200
    For some reason I can't seem to spawn trees.
     
  19. runningbird

    runningbird

    Joined:
    Sep 3, 2009
    Posts:
    382
    If these are trees you added to the Resource file you need to setup the dna and spawner parameters etc
     
  20. shotoutgames

    shotoutgames

    Joined:
    Dec 29, 2013
    Posts:
    290
    This may have been answered 100 times but how do I add tree assets to replace the GAIA trees.
     
  21. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    You basically just need to add your trees to the terrain, then update your resources file from the terrain to pick those trees up.

    Please take a look through the video tutorials here : http://www.procedural-worlds.com/gaia/tutorials/
     
  22. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    More playing - with a small sample from 3D Forge's up and coming Castles extension for the Village Exteriors Kit :)

    Grab 20160903190106 w1900h1200 x134y52z-80r192.jpg Grab 20160903185116 w1900h1200 x109y52z-88r190.jpg Grab 20160903185042 w1900h1200 x92y52z-85r156.jpg
     
    drmanhattan, Fenris2, Hans and 5 others like this.
  23. IvanAF

    IvanAF

    Joined:
    Jan 23, 2015
    Posts:
    15
    Hi Adam

    any news on the progress for the multi - terrain support?

    I have tried using terrain composer 2 for this, but I find it impossible to get something equally close to the quality I get with gaia. I really do not get anything with TC2.

    I love your tool, it is the only one in the assetstore it really is easy and quick to use, with excellent and worthy result of AAA games.

    Thanks.

    Best Regards
     
    runningbird and Hans like this.
  24. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    It's coming. It will be here when its ready :)
     
    S4G4N, TeagansDad and BackwoodsGaming like this.
  25. robertqiu

    robertqiu

    Joined:
    Sep 4, 2016
    Posts:
    9
    Hey guys, I tried gaia for the first time today but it seems to have really low fps, something between 6-20 fps. I don't know why because I followed the tutorial video step by step and it seems to be working fine in the tutorial video. The fps seems to be the lowest when I am at the trees and flowers/grass. Also, my shadows were completely black, but in the tutorial video the shadows were lighter than that. Is there something I'm doing wrong? Why is my fps so low and how do I increase it?
     
  26. IvanAF

    IvanAF

    Joined:
    Jan 23, 2015
    Posts:
    15
    try changing the resolution options. The current configuration is to work with computers medium / high range. On the other hand SpeedTree trees consume lots of resources because they are very high quality :)
     
  27. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    You should also look at your water configuration... unity water is a massive fps killer. Make sure you also don't have two audio listeners active - they also kill fps.
     
  28. robertqiu

    robertqiu

    Joined:
    Sep 4, 2016
    Posts:
    9
    I tested a scene where all I had was the terrain with textures. I didnt add any trees or flowers or water but it still has really low fps. Maybe its something to do with my laptop? I'm using a laptop with core i7 but really bad GPU.

    gaia.PNG
     
  29. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    Hard to say. Something like that on my machine would be pushing up to 1000 fps.
     
  30. robertqiu

    robertqiu

    Joined:
    Sep 4, 2016
    Posts:
    9
    Im using an integrated GPU (Intel HD 4600). I think thats the problem, I'll probably get a new computer soon and try it on there.
     
  31. FlyTroll

    FlyTroll

    Joined:
    Jul 20, 2014
    Posts:
    8
    Hi,
    when I click "Visualiser" and select Visualiser object in hierarchy editor begins to slow down and impossible to work. How to fix it? :(:(:(
    Thanks
     
    Last edited: Sep 6, 2016
  32. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    The visualiser does a whole bunch of terrain sampling in order to be 'real time'. I selected defaults that work fine on most mid range computers.

    You can reduce the amount of work it does by droppings its range to say 50 down from the default 200. You could also increase its resolution to say 20. Experiment with these settings to get a value that works well for your development environment.
     
    BackwoodsGaming and TeagansDad like this.
  33. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    Yep. In order to do nice things with Unity you need a decent GPU - integrated graphics generally suck. I have a surface book and it has Intel HD 520 integrated graphics - and they are pretty average as well.

    The new Intel Kaby Lake architecture has started shipping - and apparently the new integrated graphics are better - but if you want to do cool environmental things in unity you need some gpu power under the hood :)

    http://www.gamespot.com/articles/kaby-lake-integrated-graphics-powerful-enough-for-/1100-6443124/
     
    robertqiu and BackwoodsGaming like this.
  34. kruse4000

    kruse4000

    Joined:
    Sep 6, 2016
    Posts:
    5
    OK so sorry in advance if I'm ask questions already answered but 129 pages is a little much to read through (by the way congrats on how successful your asset is, it really is amazing from the brief time I've spent with it).
    My questions( I know theres alot so you dont have to answer of of them if you dont have the time)
    1. is it possible to link multiple terrains together to make somewhat of an 'infinite' terrain
    2. can you make the terrain have the low poly look?
    3. is it possible to make actively moving terrain like a moving island
    4. Can you make floating islands in the sky
    5. Is it possible to make something like a cave system
    6.is it possible to import your own meshes to be used by the tree spawner (for example put in trees that are destructible and 'choppable')
    7. if you can link multiple terrains, can you setup biomes within a single terrain or would that be achieved by making one terrain piece one biome and another a different biome

    And again sorry for all the questions but if you can answer them it would be much appreciated.
     
  35. reggie_sgs

    reggie_sgs

    Joined:
    Jun 29, 2014
    Posts:
    276
    I just created a new terrain by utilizing the random terrain functions. I made some manual modifications to the terrain with the set height and smoothing tools and when I ran the Texture Spawner by pressing "Play", I get the following error.

    IndexOutOfRangeException: Array index is out of range.
    Gaia.HeightMap.set_Item (Single x, Single z, Single value) (at Assets/Gaia/Scripts/Utils/HeightMap.cs:401)
    Gaia.Spawner+<RunAreaSpawnerIteration>c__Iterator2D.MoveNext () (at Assets/Gaia/Scripts/SpawningSystem/Spawner.cs:1380)
    Gaia.Spawner.EditorUpdate () (at Assets/Gaia/Scripts/SpawningSystem/Spawner.cs:441)
    UnityEditor.EditorApplication.Internal_CallUpdateFunctions () (at C:/buildslave/unity/build/artifacts/generated/common/editor/EditorApplicationBindings.gen.cs:222)

    I can modify the script to keep it from trying to access past the bounds of the array but there's obviously something out of sync in the terrain. How can I fix this?

    Edit: Since posting this, I've done some more work and found the tree and detail spawners are failing to spawn objects. Using the visualizer shows the trees are failing due to the virgin check. The details are failing due to the slope. Looking at several spots, the visualizer's slope is reporting large values on completely flat spots. I think this session is somehow pointing to the wrong terrain object. I've been working with a number of terrains and just did a cleanup. I'm wondering if during renaming and moving the original terrain was somehow replaced with the one I've been working on.

    Thanks,
    Reggie
     
    Last edited: Sep 7, 2016
  36. BackwoodsGaming

    BackwoodsGaming

    Joined:
    Jan 2, 2014
    Posts:
    2,229
    I'll try to field a few of these...

    1. Multiple terrains aren't internally supported yet. There is a workaround so you can work on multiple terrains by keeping only one terrain active at a time, but nothing that would make infinite terrains possible. I'm not sure if infinite terrains are something even being considered for Gaia. Adam would have to answer that.

    2. Yes. I forget how people were doing it. I think maybe they were exporting their Gaia terrain to mesh and then using a conversion tool on the asset store to convert it. For some reason PolyWorld is ringing in my head. Maybe one of the folks that played around with that can comment.

    3 and 4 - not without external tools. Gaia just makes standard Unity terrain. These aren't things that standard Unity terrain can support. The only thing I could think of is creating the island environment with Gaia and converting it into a mesh. The pull that mesh into Blender or another modeling software and actually create a mesh model with it. I'm not a modeler so not really sure how much that would entail.

    5 - same as 3 and 4 above. Unity terrain doesn't support this. To make caves in Unity terrain you have to do some Shader black magic. Currently RTP and Terrain Hole System assets are the two I know who have shaders inside that can do cave holes. But it is very finicky and tends to break between Unity versions if Unity does any changes to their shaders.

    6 - If you can spawn your trees with Unity's tree system, Gaia can spawn them. You can make any trees choppable via assets from the asset store.

    7 - Biomes within a single terrain are possible by resizing spawners to the size of your biome. As stated before, there isn't currently any official multitile support. Keep in mind performance and Unity's limitations working with terrain textures. Adding more than 4 textures creates a second graphics pass. Add too many textures and it could really bog down fps - even before adding anything else to your scene. That isn't a Gaia issue.. It is a Unity issue. I know there are some tools out there that can help with using more textures and bettering performance, but I generally stick to a low number in my scenes so I really haven't had much experience with them. :)
     
    AdamGoodrich likes this.
  37. BackwoodsGaming

    BackwoodsGaming

    Joined:
    Jan 2, 2014
    Posts:
    2,229
    It has been a while since I have seen those errors. I'm trying to remember.

    The two things I think I have seen that before are 1) if you change terrain textures in your Gaia Resources and then don't "Copy to" your terrain or 2) if you moved your terrain so it isn't centered. I think Adam fixed 2 in Gaia 1.5.3 but not 100% sure.

    If you look at your terrain in the inspector and click on the button that shows your terrain textures. Are your textures there?

    As for 2, is your terrain centered? Look at the transform. If you are using default 2048x2048 terrain, centered the transform would show X and Z being -1024 and Y (I believe) is the height you stamped at.
     
  38. kruse4000

    kruse4000

    Joined:
    Sep 6, 2016
    Posts:
    5
    Thank you so much for the answers and speed of response its nice to see an active terrain forum(most ive looked at died a year back) I have just a few follow up questions if anyone minds answering them.
    -would it be possible to make caves by making meshes of a cave and have Gaia randomly spawn them in as if they were buildings
    -What is the absolute maximum size you can make a single terrain.
    -And is there any place i could look to find a quick guide on how to load in multiple terrains at a given time
    -And lastly would it be possible to set terrain using gaia based off a height map (ie. Make a huge height map and cut it into like 16 pieces) assign each piece to a terrain then kinda put them next to each other to make a very large somewhat seamless terrain (I'm just trying the think of a way to make a larger gaia terrain) Its fine if its not possible I just love how the terrain made with the gaia looks and how easy it is to create and would love to use it for making bigger terrains for some projects.
     
  39. BackwoodsGaming

    BackwoodsGaming

    Joined:
    Jan 2, 2014
    Posts:
    2,229
    Gaia can spawn any game objects you set up in your spawners. So if you made a mesh with a mountain or hill with a cave entrance (and cave), it could spawn those. I guess you could maybe probably even spawn caves based on slopes where an entrance might be, and then use one of the shader assets to go back and paint your hole into the terrain and build your cave mouth around the whole for the spawned cave. That is actually an interesting idea.. I may have to try that one when I have some time!

    I've made a terrain as large as 32kx32k but I wouldn't recommend it unless you are going to slice it up into individual scenes and stream with something like Sectr. (Or another tool(s) that will let you slice and stream terrain.) I had started to do a tutorial on that process but with health issues, I had to abandon it. But it is possible. Your single terrain size with Gaia is limited by your system resources and Unity.

    There are no guides for Gaia for multiple terrains. But if you have multiple terrains already and have something to do streaming, you might be able to find guides for working with some of the streamer systems.

    For your last question, yes. In fact, I will be working to put together some multi-tile stamp packs in the weeks to come that are from 4x4 to 6x6 multi-tile grids of different types of environments. You would then use something like Sectr, World Streamer, or one of the other streamer assets to run them all together and deal with turning off and on. You would have to stamp and spawn them one at a time with only one terrain active, but once you have done that you would use the streamer to tie them all together. I hope to start on the first two multi-tile stamps packs once I finish up the polar/arctic version of the stamps packs I have been making.
     
    TeagansDad likes this.
  40. turboscalpeur

    turboscalpeur

    Joined:
    Nov 29, 2015
    Posts:
    302
    I made a New Video where I used some new Features which will come soon from @AdamGoodrich and his Pegasus Asset too;

    Then some others Assets too;

    Here it is:
     
  41. bartologizu

    bartologizu

    Joined:
    Dec 29, 2015
    Posts:
    2
    Hi!

    I've had Gaia for quite some time now. Was wondering if anyone has made terrain that would work well as a haunted forest. Every year in social VR my friends and I put on a haunted house and this year we were thinking of haunted campgrounds.

    I think I'll mess around with Gaia to see if I can get the right look on a forest. Any tips would be appreciated! :)

    Edit: Also what do I do to change the terrain size? Just went through the entire 1.5 quickstart guide video but didn't see that mentioned. Due to this being in VR, can't have the terrain be too large.
     
    Last edited: Sep 7, 2016
  42. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    Nice :)

    You can change the terrain size and other terrain settings in your Gaia defaults file. They are modeled on the terrain settings you see in your standard terrain object and are self documenting with tool tips.

    There is a haunted tree package from SpeedTree that is quite nice, but like all things, beauty is in the eye of the beholder :)
     
  43. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    Sounds like it. Disable all terrains but one at a time and you should be fine. You may need to re-add the visualiser to your scene. Also, make sure the terrain Y value is set to zero.
     
    Last edited: Sep 7, 2016
  44. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    Actually internally they mostly are - Gaia has grown into quite a beast - and its all the external stuff i have to update that's the thing that is taking time.

    Not planning to ever support infinite terrains with Gaia. They just don't make any sense to me. The design approach behind Gaia is of the view that the best games are designed by humans... they need the human touch to create the interest and variation that human intelligence and creativity injects.

    Infinite terrains, that just pump the same gameplay over and over are not interesting imho. No Mans Sky has been largely hyped as a let down - and it suffers from the exact issue I am talking about.
     
  45. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    You could certainly do this. The limitation with Gaia at the moment is that you have to treat then one at a time.
     
  46. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,493
    Though the problem of no man sky have nothing to do with procedural generation and infinite terrain, I can redirect at spelunky for a counter example.
     
  47. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    Yep... ultimately the answer is however no. I do not have any intention of making Gaia into an infinite terrain generation tool. Philosophy aside, there are significant technical hurdles with Unity itself that would need to be overcome, and these are not anything I plan on tackling within the scope of Gaia.
     
  48. BackwoodsGaming

    BackwoodsGaming

    Joined:
    Jan 2, 2014
    Posts:
    2,229
    I've yet to see any game that suggests they have infinite terrain actually be full of interesting terrain. Personally, I'd rather see Adam stay on course with providing us the ability to create awesome finite terrains than fall victim to putting time into infinite terrain. Save that for some time when he is bored with nothing better to do.

    I never really understood the concept of infinite terrain. It has the same feel as "end game", it just doesn't make sense to me. Give me a game where the designers take the time to think things out to develop content and design areas for all of their players any day.

    Sure you can do a lot of things automatically with Gaia and other generation tools, but if you just leave it as the tools throw it out and don't tweak it/improve it, your players are going to miss out in the end. To me, these tools are there to take care of the heavy lifting and create a canvas or produce the clay. At that point it is our job to use other tools or manually paint/mould it into a masterpiece. No generation tool is perfect. You always need to make adjustments. Which makes be believe that all of you who are interested in actually providing good quality environments are also going to love the new unnamed tool Adam is finishing up. It is a perfect companion for doing the fine detail stuff after Gaia does the heavy lifting! :)
     
  49. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,783
    Another milestone !!

    Gaia just hit 450 reviews with an overall average of 5*'s, plus 151 written reviews ... not too shabby for something that has been on the asset store for less than a year :)

    For those of you have taken the time to rate or review Gaia - thank you so much. Every time one of you bothers to do this - it makes my day - and inspires me to do more and better!! :)
     
    Last edited: Sep 8, 2016
  50. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,493
    I'm not advocating for GAIA to do something it's not set to do or the author don't want to do, I just want to dispel some myth. The first problem is that people tend to confuse procedural generation with emergent design. Game with (potentially) infinite level/terrain also are not new, tetris is one of them. Most people who are attracted to procedural generation actually want emergent design but don't design for it, they think procedural generation will magically bring it back to them. More importantly, most people who use procedural level design don't even make a rules for the most important aspects of level design aka circulation and encounter. Which bring me to the critically acclaim cult classic praised by game designer: SPELUNKY. It wasn't made by a programmer but by someone who is traditionally trained in art and is a game designer, and that's what makes spelunky generation a step above, it's full of deep thinking about encounter design, emergent situation and circulation is at the heart of the algorithm.

    And saying procedural generation cannot compare to handcraft is a non sense, procedural generation is not magical, it must be handcraft to work, just like using randomness in game (ie not procedural) must follow some statistical design to work and be fair. Ex: looping back to tetris, did you notice the game shuffle the brick order every 7 bricks (the total number of bricks) which mean in one cycle you are guaranteed to have all bricks and never have more than two times the same bricks consecutively (ie in between cycle), that design to keep the game fair.

    In conclusion a lot of people use procedural design as a magic replacement to design, those people make procedural generation have a very bad name and actually don't understand anything about it. I can fool people into using procedural design just by calling by another of its name: a tool! :D