Search Unity

[RELEASED] Procedural Generation Grid

Discussion in 'Assets and Asset Store' started by FimpossibleCreations, Jul 20, 2021.

  1. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    Automate and Speed up your level design process by many times!
    Generate countless customized levels procedurally with single click!
    Define generation logics without coding to paint modular walls, fences or props!
    You can assign any objects to grid presets and spawn them with proceural logics.

    Procedural Generation Grid gives you tones of possibilities to automate level creation.
    You can easily create presets for any modular setup and give yourself more time to create very polished game levels, or generate whole levels procedurally up to your needs.

    System is working fast and you can prepare your logics preset with realtime preview.
    You can choose to automatically generate light probes, reflection probes or trigger collision for generated area.

    System gives a lot of freedom and you can use it to create things like modular walls, connected fences, house interiors, whole buildings, pavements, roads etc.

    It's working on grid with scale defined by you, so you can fit it to your floor/ceiling/walls objects scale, define logics which will automatically create stairs etc.

    This plugin can be really great for games with interior environments which needs many randomly placed props.

    In addition package comes with random spawn plugins to easily setup spawning small props like books, cups, piles of boxes, bottles on tables/cupboards, spawned with collision detection and fitting to colliders surface. Another additional thing is procedural pipes generator plugin to setup random segmented modules from start point to target end point.

    After beta this plugins will be available as separated packages to buy but still will be included in this package.

    If you have some coding skills you can easily create your rule nodes and use it with Procedural Generation Grid. Package comes with a lot of rule nodes with source code and in update versions there will be even more of them to make creating spawn logics quicker!


    Beta Version will follow user requests which can be suggested on the Discord Server.
    Plans are to make plugin be able to generate buildings with many floor levels (already is but in a limited way in conditions of ease for use like that) high level of control for developers, more examples and probably another logics-node system for designing multiple areas to generate like villages, biom areas, more complicated buildings etc.
    There also is need for additional plugins like Object Stamper and Pipe Generator included with PGG to be polished before beta ends.
    After Beta price will jump up.

    Asset Store Page Here

    Release Video:


    Quick Overview:


    Tutorials Playlist:
     
    Last edited: Aug 5, 2021
  2. StevenPicard

    StevenPicard

    Joined:
    Mar 7, 2016
    Posts:
    859
    This looks great! I had to buy it. It's going to be massively helpful for my projects.
     
  3. knas01

    knas01

    Joined:
    Feb 24, 2018
    Posts:
    236
    This looks very useful, but I have a question. Is it possible to make it work with walls that are not at a 90° angle?
     
  4. septN

    septN

    Joined:
    Oct 29, 2015
    Posts:
    53
    Is it possible to create a procedural dungeon instance which consist of procedurally generated rooms. But among those rooms I want at least:
    - 1 Room to have Key object inside it
    - 1 Room to have Boss object inside it (that requires Key to enter)
    - X amount of Rooms to have Treasure chests

    Is such thing doable with this asset? Is the procedural generation can be executed during the runtime?
    Thanks!
     
    Last edited: Jul 24, 2021
  5. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    It's grid, so if you want to create uneven shapes then it's limited, you can do some workarounds for some effects but totally uneven structures can't be generated, but If you want for example to curve diagonal corner walls then it's not so difficult here.

    There is included exact example in demos ;) Check release video at 0:45 for quick preview of that.
    (Defining if for example boss room should be far from finish door etc. is working, but needs some polishing in beta)
    Dungeon example is also generating next level continuously, when you reach end area, new seed dungeon generates in playmode.
     
    septN and StevenPicard like this.
  6. knas01

    knas01

    Joined:
    Feb 24, 2018
    Posts:
    236
    So if it, for example, takes 3 tiles for an angled wall to transition from one tile edge to the next, would it be possible for the logic to create this transition if I have 3 objects pre-angled and just needed to be placed in sequence?
     
  7. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    Something like that, you might need to create spawning logics to check for example if tile on the right and below are walls, remove them and place here your bigger wall model.
    There is included example of placing walls on grid, then replace two wall models with prepared one diagonal wall, you can see it on this screen https://assetstorev1-prd-cdn.unity3...hot/54b6ec3c-1dbf-4c7e-9f3e-ea742b0a48af.webp
    Modules just need to meet logical rules to create it.
    Some unique cases might be hard to implement (using pgg rules - no coding) but not impossible.
     
  8. knas01

    knas01

    Joined:
    Feb 24, 2018
    Posts:
    236
    @FimpossibleCreations As long as it's possible to do it I'm happy. Thanks.

    Regarding this, I'm always checking out other assets like this and the recurring issue I have with them is that they tend to create this samey blocky layout. If you could make a simple way to bend corridors along a smooth spline, without having to do custom parts, then this asset would be perfect I think.
     
  9. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    Nice idea, I think in future I will experiment with this since it's painful to do curved walls even in modelling software o_O
    Remember that this system works best when modules have same width/depth size, but you can override it similar way we discussed, so place 1x1 size objects then replace them with bigger one (2x/4x size) if conditions are met.
     
  10. knas01

    knas01

    Joined:
    Feb 24, 2018
    Posts:
    236
    @FimpossibleCreations Very nice, thanks. I will fiddle around with this and see what neat things I can do.
     
  11. septN

    septN

    Joined:
    Oct 29, 2015
    Posts:
    53
    I've been playing around abit with the Mini City Generator, now to make it less lonely, how would I fill those gaps/empty spaces with another set of FieldSetup (that has trees, rocks, foliages).

    What approach should I look at?

     
  12. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    I will be working on feature for next update, something like "Outline with" so you can make areas around filled with something and also fill like rest of the rectangle area around with another FieldSetup, maybe rocks or so
    Example how it might look from our discord user ;)
    https://imgur.com/NrN3KPF
     
    Tom163, StevenPicard and septN like this.
  13. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    Just updated to beta version 1.0.2:

    - New Generators Feature: Now generated rooms/areas can be outlined with any field setup using "Outline Fill" option in the "Additional Options" tab
    - New Generators Feature: Now generated area can be covered with any field setup using "Fill Rectangle" option in the "Additional Options" tab
    Above features are NOT available for the BuildingPlanGenerator

    - New Node: "Transforming/Noise/" - Perlin Noise Offset and - Rotation/Scale Perlin Noise Offset
    - New Node: "Modelling/" - Set Random Mesh Material
    - Some node moved to the different bookmark (node: IfRotated moved to /Placement)
    - Some nodes moved to Transforming/Legacy bookmark (nodes: WorldOffset, DirectOffset, Rotate, Scale)
    Their features can be replaced by single node "Move-Rotate-Scale" or "Get Position-Rotation-Scale"

    - Changed default core asset rules for ClearWall modificator
    - Some nodes will take a bit less space in the inpsector window

    Fixes:
    - Fixed BuildingPlanGenerator corridor doorway command to choose right command from the field setup
    - Fixed some issue with generating doorways with BuildingPlanGenerator
     
    StevenPicard and septN like this.
  14. septN

    septN

    Joined:
    Oct 29, 2015
    Posts:
    53
    It does seem to work, but do you have any idea why it's still leaving some gaps in the middle? :p All of the grid in my FS has cell size of 1

     
  15. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    Ouh my bad, you can fix it simply by moving code line "GeneratorsCheckers.Add..." to inside "if (setted)" braces
    (MiniCityGenerator.cs)
    upload_2021-7-30_11-22-1.png
     
    Last edited: Jul 30, 2021
    septN and StevenPicard like this.
  16. shaventiger

    shaventiger

    Joined:
    Jun 16, 2021
    Posts:
    1
    This looks great, very excited to try this- do you know whether it will play nicely with map magic 2? Thinking it would be great to have procedural terrains with villages or castles placed at runtime by MM2 and then generated by this tool?
     
  17. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    It should be possible to make this two packages work together already, in future I will provide examples for use with other packages like Map Magic, but for now there are many other important features to complete ;)
     
    StevenPicard and shaventiger like this.
  18. littenli

    littenli

    Joined:
    Dec 18, 2019
    Posts:
    33
    Hey Guys,

    I got 3 errors using Unity 2021.1.15f1.

    Assets\FImpossible Creations\Plugins - Level Design\Object Stamper\ObjectStampEmitter.cs(416,125): error CS1010: Newline in constant

    Assets\FImpossible Creations\Plugins - Level Design\Object Stamper\ObjectStampEmitter.cs(416,186): error CS1003: Syntax error, ',' expected

    Assets\FImpossible Creations\Plugins - Level Design\Object Stamper\ObjectStampEmitter.cs(417,52): error CS1026: ) expected

    I found problem from this code in flie "ObjectStampEmitter.cs", is this perhaps caused by special characters?

    Code (CSharp):
    1. EditorGUILayout.LabelField(Get.PrefabsSet.RotationRanges.x + "� to " + Get.PrefabsSet.RotationRanges.y + "�", EditorStyles.centeredGreyMiniLabel, GUILayout.Width(80));
    2.                    
    屏幕截图 2021-08-22 132443.png
     
  19. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    Oh noo it still occurs :( Unity C# file is just not handling degrees sign "°" on some machines and replacing it with � and gives errors, I think I will replace it with "o". You can do the same and it will be fixed
     
  20. littenli

    littenli

    Joined:
    Dec 18, 2019
    Posts:
    33
    Thanks for the reply!
    I changed the characters and it works fine.

    I have another problem, the game scene I use PGG to generate is rather large, it generates a lot of floor and wall prefabs, which has a big impact on performance.

    Does PGG provide a tool to merge meshes?
    Or can I just get the edge information of the floor grid and generate a polygon dynamically?
     
  21. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    No, plugin covers much other aspect of level design, you must use other plugins for mesh combining, which handles it in detailed way, maybe Mesh Baker or Mesh Combine Studio?
    You can also try using free DBK Demo Mesh Combiner, it works too.
    Also my other package Optimizers will have big influence on dynamic Occlusion Culling with PGG in near future.
     
    Last edited: Aug 24, 2021
  22. littenli

    littenli

    Joined:
    Dec 18, 2019
    Posts:
    33
    I've been using PGG for a few days and it really is an amazing program.
    It is simply what I always hoped it would be and I have already recommended the program to my colleagues!

    But I have 1 more problem.

    My grid size is 1 * 1, but my models have various sizes, for example the chair in the picture is 2 * 1, how can I make sure it will occupy just two grids?

    I have other models with different sizes, 3 * 4, 5 * 6... I want to generate a room with them and want to make sure they don't collide with each other.And also they can't go beyond the walls.

    I watched instructional videos on youtube, but couldn't find any information describing this problem.
    How do I need to do this, please? Thanks!

    屏幕截图 2021-08-26 010342.png
     
  23. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    Great to hear and thank you!
    You can use node "Cell Operation" and use "Occupy" option to make other cells see additional cells as occupied with your bigger model. In the upcoming update it will be easier to set up since there will be new option to easily select multiple cells for occupy like on the image:
    upload_2021-8-25_23-9-20.png

    Then other rules when checking if other cells are free it will see it's occupied by the bed. (occupied cells are displaying some additional gizmos on the scene view)
     
    StevenPicard likes this.
  24. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    Just Updated to Version 1.0.5:

    - New Feature: Cell Selector Window which allows to freely select multiple cells to be executed on cells around, implemented by few other nodes (listed below)

    - New Node: 'Operations/Stack Spawner' which works like Multi Objects Stamper without need of creating preset files etc. (needs some more testing)
    - New Node: 'Operations/Pipe Spawner' which requires PipeGenerator preset to spawn objects with PipeGenerator algorithm
    - New Node: 'Quick Solutions/Call Rules Logics Of' it will call nodes of other FieldModificator's spawner
    - New Node: 'Transforming/Utilities/Prefab Offset' and 'Rotate On Repeat' first for correcting origin of spawned objects using default position inside prefab file and second for rotating object when using "Repeat" of Spawner

    - Node Update: Floor Placer has possibility to advanced customize auto-placement
    - Node Update: Most of the nodes under '/Cells' gets possibility to influence / check multiple cells with cell selector (new button opens selector window)
    - Node Update: Check Cell Neightbours can have access to further cells than 9 around using cells selector (button opens selector window)

    - Field Designer Window Update: Buttons for export Variant/Copy of FieldModificator are removed, this events can be triggered by hitting right mouse button on '[0]', '[1]' buttons on the left
    - Field Designer Window Update: '+' button now adds automatically new FieldModificator without need to hitting 'IN' button after that, empty FieldModificator field still can be added with '+ []' button

    - ModificatorsPack now have option to reset/set custom seed for generating (can be setted through inspector window)
    - ModificatorsPack now have option to mass add additional tags to all spawners during generating time

    - Grid Painter Update: If there is need to display more than 8 Field Commands they're bookmarked
    - Grid Painter Update: More compact inspector window with "More Options" foldout
    - Grid Painter Update: 2D paint toggle to draw cells in XY axis
    - Grid Painter Update: Possibility to change FieldSetup variables for generation time (under 'More Options' foldout)
    - Grid Painter Update: Possibility to ignore selective FieldModificators out of FieldSetup (under 'More Options' foldout)

    - Shape Designer Window now can be used, for now only Facility Generator/Simple Dungeon Generator is supporting custom shapes
    Shape designer window will have much more features in future updates. (like manual adding cell data / using rules to generate shapes and restrictions with relation to other grids in world)

    - Create/GameObject Unity Editor menu now have new bookmark "/Generators" for quick creating game object with PGG components inside
    - Some upgrades and fixes in PGG core

    Next updates will focus on Generators logics features, like more controll on generated multiple rooms, generating without frame drops etc.
    Next or 2nd update will try introduce some auto-optimization features.
    Also probably some helper nodes in the hidden updates.
    If you encounter some bugs/objects not generating with your FieldSetups with this version then please report, I found few bugs when testing demo scenes and they're fixed now.
    Feel free to report through our Discord Server.
     
  25. DungDajHjep

    DungDajHjep

    Joined:
    Mar 25, 2015
    Posts:
    201
    it would be great if there was something like this that supports 2d.
     
  26. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    It already can support 2D (top down, XZ axis no problem) but needs some tools to make it easier to work with (in XY axis) like that, some next updates should provide the tools and some examples.
     
    lukasynthetic and DungDajHjep like this.
  27. aggaton

    aggaton

    Joined:
    Jul 3, 2021
    Posts:
    113
    I am trying to follow your instruction video [PGG Tutorial] Fast Overview of how to work with the package, about 36 second in you are setting up what looks like field mods, however when I click the IN button mine looks different
    also to begin with I don't have a built-in field's mods node at all, not until I messed around did I get something like below. I am guessing a brand new install looks different than what you are showing or the layout has changed. Can you please explain how I can make it look like what you are doing with Floor and Ceiling. I probably screwed something up too.


    upload_2021-9-7_19-43-47.png
     
  28. aggaton

    aggaton

    Joined:
    Jul 3, 2021
    Posts:
    113
    Also what tools are you using to show the meshes of the prefabs in the Select GameObject window, I just get a list of names and a preview below. upload_2021-9-7_20-16-53.png
     
  29. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    The layout changed, now the green "+" button does what previously was doing "+" and "IN" button.
    In 90% or more situations you do "+" and +"IN" so it's replaced now by single button.
    The "+ []" button is doing same thing like tutorial version gray "+" button.

    This is new Unity version thing, I know I enabled thumbnails somehow but I don't remember how, the tutorial was recorded on Unity 2019 version where it shows thumbnails right away.
     
    aggaton likes this.
  30. aggaton

    aggaton

    Joined:
    Jul 3, 2021
    Posts:
    113
    When I switched to version 2021.1.16f1 I got the control back, apparently it was broken in 2021.1.13f1...
     
  31. aggaton

    aggaton

    Joined:
    Jul 3, 2021
    Posts:
    113
    Is it possible to flip prefabs over like a pancake, I have only been able to turn them left or right, not upside down. Problem is the ceiling and floor prefabs from some of the assets I have are facing the same way by default. I guess what I am looking for is a pitch offset in the floor placer besides the Yaw offset.
    Edit: I think I found out to do it with the Move-Rotate-Scale transformation rules.
     
    Last edited: Sep 12, 2021
  32. aggaton

    aggaton

    Joined:
    Jul 3, 2021
    Posts:
    113
    So I am trying to place wall pieces in a corridor, I give the field modificator a Wall Placer and have it spawn on each side, and I have a corner piece to fill out gaps. This works fine in a room, however in a corridor at a turn, the walls intersect on the inner side like you can see in this video: https://drive.google.com/file/d/1IzXo6a1GQDdU6cOnfxFN-yLymi20nvEk/view?usp=sharing. I am guessing that what I am looking for is possibly a rule that on inner side of turns (is that the right term?) replace the wall pieces at the end with a shorter piece and then add a different out corner piece. I have both of these prefabs, however I have been unsuccessfully in finding the right rules. I have tried with having a rule for each side, but it is a giant mess trying to place them all correctly, if I tug one end, the other end goes off in one of the other corridors. It might also not be the easiest model to to work with since it curves and is not straight, however I am hopeful with the right rules it might work. Btw, it is an awesome tool and I am happy I bought it and am having fun with it so far. I have bought most of your other assets and they are all pretty cool.

    Also I did not see in any tutorials how to make doors, I tried to look at the examples, setting it up like those, however I was not able to get it to work at all. Do you mind explaining this or point to a video with this if you have it handy.
     
    Last edited: Sep 13, 2021
  33. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    Maybe the old version was downloaded by some error?

    The rotation nodes will easily handle that.

    You probably need to place module of curved wall which is replacing two other modules? (Wall Placer, Module Curve 90)
    Corner fill is for placing additional object in corner (quickly painted what each module option in the node does)
    upload_2021-9-13_9-19-34.png

    You can also take look on this tutorial part, which explains how you can use "Check Cell Neighbors" node:
    which can be very handy for you, to get what you need and to practice.

    Some of the subjects are not described in tutorials yet, since the approach how you make some things is changing in the beta stage, so I don't want to make tutorial which will be outdated after two weeks ;)
     
  34. nx_alpha

    nx_alpha

    Joined:
    Sep 12, 2018
    Posts:
    1
    Toying around with the asset, and I'm impressed so far. Just one observation, if I may: I had to declare two internal methods public in order to get the demos to work.

    Since the demos and the documentation don't cover this (and I'm too lazy to read the source code), how does one start to replicate the Paint feature in-game/at runtime? I'd like to use this for a managerial type of game where the player lays down the room-layouts.

    Regards,
    Chris
     
  35. Alarconte

    Alarconte

    Joined:
    Jan 8, 2014
    Posts:
    32
    Hi there! First of all, Amazing asset. Very complete and probably will have a spot on all of my projects.

    Now, a doubt on how to fix some issue:

    Using the Quick-solution for Doorplacing, Door removes all walls on the same cell (As probably intended by the quick-tool) (for example when the door is on a 1x corridor, or in a corner of a room. I've tried not using the quick-solution in order to bypass the automatic removing of all walls, but I've not yet been very luck. (check neighbours, get coordinates, etc). Usually there is always other problem like the other side of the door appearing in an incorrect side of the tile etc.

    As my experimentation went I saw there was many mechanics, but not find any solution yet. Any tip? (And yes... I really want to make able to have doors that are able to work on a 1x1 cell or in the corner of a room).
     
  36. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    Right now grid painter needs to re-generate all objects each time something is changing on the grid, the next update targets feature to generate and compute just needed objects, then I probably include playmode painter example ;)

    I think you can solve this problem using the quick solution but with distance measure origin in renderer bounds center.
    You probably noticed the "Remove Distance" parameter, it tries to find nearest wall in the cell but using their pivots, I assume your modules have pivots in the corners, not in the center, then you can try switching field on the right of "Remove Distance" to "Renderer Center".
    Here very simple visualization
    upload_2021-9-17_10-13-57.png
     
    nx_alpha likes this.
  37. Alarconte

    Alarconte

    Joined:
    Jan 8, 2014
    Posts:
    32
    Pivot was on center tho, I finally fix it just going up on the Remove Distance with Renderer Center, and yes, all what I needed was the Door QuickSolution. I guess lack of documentation about all the inners on how some thing work was the problem as I'm only into visual programming and not very good checking code.

    I'll keep posting questions when I really feel like losing my options, and also wait for updates on more useful quicksolutions. (By now the only problem I found not be able to fix myself is a Rule for Outside Wall Setup Restrictions as the one that can be found Building Plan, but that I can apply to the Field Setup on Use Outline Fill/Outline Rectangle in the Facility Generator. (Not sure if there is a direct way right now to do that but nothing I found on inspectors).

    Really excited on how this project will advance!

    I'm specially interested in more complex Building Plans/Facility Generators types etc (In order to avoid to work with other level generators as DunGen), as Field Setups looks like being quite complex/full of useful stuff right now already.

    Btw, Is there any way to play with number of duplicates on the Building Plan right now? A flat random factor and a "Inherit from Rooms count / branches count etc" would be quite nice.If there is not right now, I'm quite happy to just wait for updates.

    Lots of thanks!
     
  38. colin_young

    colin_young

    Joined:
    Jun 1, 2017
    Posts:
    243
    Can this asset be driven programmatically in the editor? I have polygon coordinates for buildings, and I'm looking for a way to automatically generate them based on the footprint and height. I'm okay if there isn't a 100% match, e.g. if the footprint says 9.765 units wide, but it gets generated as 9.75 or 10 wide, I'm fine with that. The issue is the footprints are often (always?) rotated from being aligned to the xz axes and they aren't always rectangular (T, U, cross, etc.). I'm guessing from reviewing the videos that I'd need to somehow "paint" the footprint. Is that possible to do in code? I'm reasonably confident that I can find a way to rotate the polygons to align to an axis, and figure out an algorithm to calculate the cells that need to be filled.

    My concern is not the investment in money in this asset, but time. I'm working with Archimatix (an excellent tool) and I know these sorts of tools require a non-trivial investment in learning how to use them. This looks like an excellent complement to that one.
     
  39. Magic73

    Magic73

    Joined:
    Jun 23, 2015
    Posts:
    132
    Hi,
    I just bought your amazing asset.

    May you publish a tutorial video about how to build an house with stairs, and random number of floors? Also with roof..

    Also, I'm going to use this asset with the excellent @S4G4N (3DForge) assets (Interior + Exterior).



    C.
     
    Last edited: Sep 26, 2021
    colin_young likes this.
  40. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    In current stage of development, the nodes are changing often and that's why the manual is not yet filled with them, but I think nodes will be ready for documentation after about 3 more updates.
    Feel free to join our discord, there is plenty of discoussion about PGG ;)

    Next two updates may bring new way of handling generating building plan, it needs some more flexibility for more extensive generating than in current version.

    Yes, you can basically provide list on cell positions, like Vector3(1,0,0), (2,0,0), (1,0,1) etc.
    which can be automatically converted to cells and grid to generate structure with logics you provide.
    (You can make cross shaped structures, L shaped, everything you can "paint" out of grid cells)
    Some coding knowledge will be needed but nothing too complex, unless you need more customizations.
    Just take in mind that using modules in square shape will be easier to place on grid cells.



    I will do it but after two next updates, since there can be many changes in approach ;)
     
    StevenPicard likes this.
  41. colin_young

    colin_young

    Joined:
    Jun 1, 2017
    Posts:
    243
    [QUOTE="Yes, you can basically provide list on cell positions, like Vector3(1,0,0), (2,0,0), (1,0,1) etc.
    which can be automatically converted to cells and grid to generate structure with logics you provide.
    (You can make cross shaped structures, L shaped, everything you can "paint" out of grid cells)
    Some coding knowledge will be needed but nothing too complex, unless you need more customizations.
    Just take in mind that using modules in square shape will be easier to place on grid cells.[/QUOTE]

    Excellent! I will give that a try as soon as I've had a chance to play with it normally. Thanks!
     
  42. Barliesque

    Barliesque

    Joined:
    Jan 12, 2014
    Posts:
    128
    This looks amazing! Would the grid ruleset enable one to randomly generate a maze? --with one entrance, one exit, and a guaranteed solution path?
     
  43. putragonist

    putragonist

    Joined:
    Aug 13, 2013
    Posts:
    8
    So... Can it generate navmesh if I generate the level in realtime?
    I currently made a similar system for my game, but kinda stuck with realtime navmesh unity provide (the alpha version). If it works without much hassle, it would help me a lot...
     
  44. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    Actually one thing is setting rules for modules to spawn on grid and second separated thing is creating shape of grid + guides for rules. In some update there should be maze example scene ;)

    I wasn't working on navmesh much yet, I just made simple script to generate navmesh using NavMeshBuildSettings
    and got something like this:
    Here's code which is executed with "Event after generating"
    https://pastebin.com/7r9trAqW

    In some update there will be more tools for that included in the package.
     
    StevenPicard likes this.
  45. LoneDev6

    LoneDev6

    Joined:
    May 22, 2013
    Posts:
    20
    @FimpossibleCreations This product seems perfect for my project!
    What I need to know is if it's somehow possible to save and load the generated map scene.

    Also what is the performance of this package? Would generating a big map cause any lag?

    Thanks
     
  46. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    You can use the same seed number to generate the same structure.
    Depending how complex your levels will be, the lag can be big for generating larger levels, but I am preparing update with feature to generate level progressively without lags, but with some delay in frames.
     
  47. colin_young

    colin_young

    Joined:
    Jun 1, 2017
    Posts:
    243
    Are there guidelines for creating models to be used as walls, doors, windows, etc. available anywhere? Other than opening the samples and inspecting those?
     
  48. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    Main condition will be having tiles in square shape, there can be used non-square tiles but it's much harder use them, you should start working with the package with square sized tiles for better learning process.

    You should be able to fit any model to work with the package. If your walls don't have pivot in bottom center, but for example in the corner, you can use position offset nodes to adjust it with the grid. Update 1.1.0 itroduced node "Helper Pivot Correction" to change pivot of the placed object, only for other objects getting position, thanks to that it will be easier placing furniture along with walls.

    It can be tricky to remove walls on windows/doors but some update introduced measurement switch for Doorway Placer node and you can use renderer's center position for that, here I described it a bit, update 1.1.0 introduced some debugging gizmos for doorway placer.
     
    colin_young and StevenPicard like this.
  49. victorkin11

    victorkin11

    Joined:
    Apr 20, 2013
    Posts:
    175
    I am very frustrated to follow the tutorial in youtube, not only the menu name different, the whole tutorial aren't start in a new scene, it already have a lot of staff in the scene, so every time the thing not work, I just don't know what wrong is it!

    I know it is still beta, but the tutorial just haven't told any about the grip painter object(ok! I find in the middle of the video use 10 sec to set it up), controller object, generator object etc. When I follow half of tutorial, just find something missing, something not work, sometime the grip disappear when I
    setup the mod pack, and I can't make to door hole menu come up, and no door gizmos show up.

    I still can't tell what different modification pack and field modification.
     
    Last edited: Oct 16, 2021
  50. FimpossibleCreations

    FimpossibleCreations

    Joined:
    Jun 27, 2018
    Posts:
    540
    Hello, I am not sure about the changes in the GUI, there was just few buttons replaced since version 1.0.0
    What I can suggest is starting with fast overview video which shows whole process from the scratch, but it can be too fast for learning, so focusing on Part 2 of the tutorial series is essential, it starts from scratch and continues on the next parts. It's very important to understand fundamentals described in this videos to start experimenting, it may be source of the problem with disappearing stuff.
    Modification Pack just contains multiple Field Modificators with some additional options to manage them.