Search Unity

Assets [BETA] BuildR Version 3 - Open Beta Test - Procedural Building Generator

Discussion in 'Works In Progress' started by jasperstocker, Feb 19, 2020.

  1. jasperstocker

    jasperstocker

    Joined:
    Jul 7, 2010
    Posts:
    412
    Beta signup page

    Hi all,
    I'm pleased to announce that the 3rd version of BuildR is now open for beta testing.
    I've been working on this new version for over two years now so I'm super glad I'm reaching the stage where I can release something new and exciting!
    As mentioned in my previous forum post, version three will be a free upgrade for all BuildR 2 users :D
    Some of the newest features include
    • Multithreaded generation - BuildR will now support multithreaded generation meaning not only can multiple buildings be generated at once, but the generation code can be kept off the main game thread leaving your framerate almost untouched!
    • New asset system - one of the main precipitating issues from version 2 was how instantiating things like facade designs and dynamic textures at runtime was quite expensive. This was due to it being tied into serialised objects so. Version 3 has a new asset system that allows us to create the building data without ties to the Unity asset system, making runtime generation even faster.
    • New UI - There has been a top down redesign of the UI and user flow for editing buildings in BuildR. I'm confident that this is a massive improvement and I'm looking forward to feedback in the beta.
    • Internal courtyards - you can now generate buildings with defined internal holes for courtyards and so on.
    • Lots more tweaks to internal algorithms and generation.
    I'm in the process of adding a few more features from version 2 so bear with me while these get implemented.
    You can find the signup link here https://b.uildr.com/beta-signup/
    Feel free to leave feedback with me either on the Bit Bucket issue tracker https://bitbucket.org/jasperstocker/buildrcities/issues or on discord https://discord.gg/WbngFq8
    The new website is here https://b.uildr.com/
     
    Last edited: Mar 23, 2020
  2. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,068
    Just curious ... what is the base Unity version for this?
     
  3. jasperstocker

    jasperstocker

    Joined:
    Jul 7, 2010
    Posts:
    412
    2018.4. 14
     
    hopeful likes this.
  4. jasperstocker

    jasperstocker

    Joined:
    Jul 7, 2010
    Posts:
    412
    I'll be looking to have a weekly update cycle for this on Sunday nights from whatever made it from the issue list to my develop branch. First update will be this Sunday (23rd) with at least the Undo system working.
     
    MorpheusXI likes this.
  5. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    256
    Hi Jasper,

    I'm interested to know whether BuildR3 already supports building generation from script (or will do in the future)?
    I envisage something like being able to pass in List<Vector2> floorplan coords into a function to have it generate a building of that shape using pre-defined BuildR settings.
    This will make integration with CityGen3D relatively simple.

    I was able to achieve this with BuildR2 in earlier tests last year with some good results, but was aware of the rewite you were undertaking so held of further trials until now.

    I've signed up to the Beta to explore this more thoroughly, thanks.
     
    hopeful and jasperstocker like this.
  6. jasperstocker

    jasperstocker

    Joined:
    Jul 7, 2010
    Posts:
    412
    Hi Richard,
    Yes! There are a few example scenes showing how to generate buildings at runtime and I'm working on an even simpler example that should be out this Sunday! This version of BuildR should be perfect for CityGen :D
     
    chmodseven, hopeful and CityGen3D like this.
  7. CityGen3D

    CityGen3D

    Joined:
    Nov 23, 2012
    Posts:
    256
    Sounds great, I look forward to trying it out. Will let you know how it goes :)
     
    jasperstocker likes this.
  8. jasperstocker

    jasperstocker

    Joined:
    Jul 7, 2010
    Posts:
    412
    Beta version 3.0.1b has been released this morning.
    Made far more progress than I thought possible in the few days but lots of things fixed and a few added
    • Added #13 Mouse now snaps to room walls when creating rooms
    • Added #16 Drag and drop facade designs directly on building facades
    • Fixed #20 internal volume holes not working
    • Fixed #8 Unity editor Undo/Redo for BuildR editing. Normal control-z undo is supported throughout the BuildR editor
    • Fixed #9 LOD facade calculation issue where wallsection spacing was calculated incorrectly producing different sized wall sections depending on which LOD level was used
    • Fixed #15 incorrect calculation of normals on curved facades without a facade design applied
    • Fixed #4 horizontal position of internal wallsection walls generation
    • Fixed #18 issue with loss of selected floor when creating a new room and clicking outside the selected volume
     
  9. MorpheusXI

    MorpheusXI

    Joined:
    Jan 18, 2018
    Posts:
    47
    Hi Jasper, once you've progressed through getting v3 to where you want it. I'd like to make a what I believe would be a cool feature suggestion: Automatic interior building generation. For instance lets say you put in some variables like number of floors e.g. 30, next step would be an iteration button which would randomly generate reception floor, restaurant floor, conference floors, apratment/hotel room floors, each floor could have different size rooms, penthouse rooms at top, elevator shafts (on/off), stair wells (on/off) etc. Once generated you can either re-iterate to get different result or manually move floors around? Or potentially for many interior building creations create the template of exactly where you want those specific floors, e.g. reception always at ground floor, restaurant always on second etc. Just a thought and don't know how complex to create......
     
  10. jasperstocker

    jasperstocker

    Joined:
    Jul 7, 2010
    Posts:
    412
    @MorpheusXI
    Thanks for your interest!
    Interior generation is something very much in the crosshairs of version 3. There is a lot to do but a significant amount of work has been done to place version 3 ready to generate a city with interiors for all buildings.
    In the next week or two I will release a basic example of interior generation. This will feature rooms on all floors, doors into the zero floor and throughout the rooms, and a single building core staircase to access all floors. It will be a simple example though so not very useful yet.
    Further down the line though, I have a plan to allow a very high level editing of floorplan/room layout that will generate interiors. I can't go into much detail at the moment, but it would likely satisfy your needs :D
    Fixtures, fittings and furniture are all challenges that BuildR faces ahead and I'm looking forward to find solutions that will create interesting worlds!
     
    MorpheusXI and CityGen3D like this.
  11. jasperstocker

    jasperstocker

    Joined:
    Jul 7, 2010
    Posts:
    412
    Just a heads up that there will not be a release today. I'm working on a couple of bigger parts that are not quite ready and there were no massive bug fixes done this week to release. I'll be aiming for next Sunday to release a new beta version.
     
  12. jasperstocker

    jasperstocker

    Joined:
    Jul 7, 2010
    Posts:
    412
    3.0.3b has been released so head to your beta download page (or signup!) to get the latest Beta release.
    • Added new model placement system for geometry
    • Added custom model wallsections
    • Fixed issue with mouse behaving erratically again
     
  13. skaughtx0r

    skaughtx0r

    Joined:
    Mar 9, 2014
    Posts:
    42
    I just recently purchased RealWorldTerrain and BuildR2 and was having major performance issues just generating all the buildings in a City. It seems there is a ton of overhead. One thing I did to alleviate some of the problems was to add a Preprocessor definition to disable all of the UnityEditor.Undo calls in all of the BuildR2 scripts, I basically made it go down the runtime generation path when auto-generating buildings in the editor.

    This made it a bit better, but in order to get anything to work in the editor, I limited the code to only bring in buildings that are greater than 1 story. It seems like BuildR2 is just producing way too many game objects that each have their own scripts. Is any of this alleviated in BuildR3?

    I was thinking about setting up RealWorldTerrain to generate plots for runtime generation, but not sure if it's worth doing that if the BuildR3 API is not the same. Also, I'm not sure if its possible for specific buildings to look the same with runtime generation or if they're always randomized.
     
    jasperstocker likes this.
  14. jasperstocker

    jasperstocker

    Joined:
    Jul 7, 2010
    Posts:
    412
    BuildR3 answers your prayers. It's built to generate tons of buildings - though I've not tried to generate loads of buildings in the editor yet - I'll check that out. Might look into the undo issue if it's still causing problems and enable it to turn off for large scale generation...
    You could sign up to the beta and have a test of the new methods - https://b.uildr.com/beta-signup/
    Though there are lots of changing parts at the moment. Hoping to have it release ready next month
     
    hopeful likes this.
  15. skaughtx0r

    skaughtx0r

    Joined:
    Mar 9, 2014
    Posts:
    42
    Cool thanks, I'll check it out!
     
  16. Stephen_O

    Stephen_O

    Joined:
    Jun 8, 2013
    Posts:
    1,082
    Awesome, I'm glad to here there's a new version coming, and Buildr2 users get a free upgrade! Very kind of you, thanks :)

    P.S. I've always loved Track Buildr, wink wink, I would love to see that get remade. It was one of my favorite assets back when it was released.
     
    jasperstocker likes this.
  17. skaughtx0r

    skaughtx0r

    Joined:
    Mar 9, 2014
    Posts:
    42
    @jasperstocker Hey, your discord invite isn't working, it says it's invalid or expired.

    I loaded up BuildR3 into my game project and just tried running the Example scenes. I noticed a weird bug, buildings that are using the lowest LOD are showing up with a grass texture, it seems to be adding a "DefaultGrassPatch" Vegetation Studio material to them, I'm not sure how that's happening. Any ideas?
     

    Attached Files:

    jasperstocker likes this.
  18. jasperstocker

    jasperstocker

    Joined:
    Jul 7, 2010
    Posts:
    412
    I was feeling pretty lonely on Discord - that might be why! :D
    Let me know if this link works - https://discord.gg/WbngFq8

    Grass texture issues sounds very odd - at the moment it should be using the BuildR "Default" material. I'll see what I can add in tonight's release that might solve that. Also, check the project assets default material...
     
  19. jasperstocker

    jasperstocker

    Joined:
    Jul 7, 2010
    Posts:
    412
    Hope everyone is okay out there. I lost my contract last week down to this virus so good news is I'll have a lot of time this week to get the last few things ready for BuildR release. I'm looking to drop it onto the store mid April and I have a lot of documentation to write now!
    Version 3.0.5b is now out.
    Slightly delayed due to clocks going forward throwing off kids bedtime and therefore throwing off my slot where I wanted to release last night! XD
    But a lot of work got done last week - here is the changelog

    Added dynamic models to interior floorplans
    Fixed issue with Unity selecting objects behind BuildR when editing
    Fixed issue with facade design ground floor
    Added collider generation
    Improved building core UI
    Fixed UI blue dots rendering on wrong side of camera
    Assets renamed and standardised
    Preview icons now generate with shader colours
    Added Wallsection elements for shutters including open/close lerp
    Fixed issue with asset duplication in the BuildR asset system

    Stay safe everyone :)
     
    hopeful likes this.
unityunity