Announcement

Collapse
No announcement yet.

Spawning houses made of pre-fabricated rooms?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Spawning houses made of pre-fabricated rooms?

    Hi,
    So I just started looking into making a blueprint for generating houses, mainly apartment buildings and such and couldn't find any fitting resources on how to handle this best.
    My plan is to make pre-fabricated rooms and interiors for them and then spawn them with a fairly simple blueprint to ensure flexibility but speed things up as I need tons of them.

    What would be the best way of storing and spawning these pre-fabricated rooms? It's essential that all the meshes for the houses are instanced.

    Would love some tips and pointers.
    Thanks!

    #2
    The rooms would need to be pretty standardized, otherwise youd need some custom-built logic to ensure all the pieces fit together. Meaning what youre asking isnt exactly simple.

    The SIMPLEST solution is finding something on the market place that does this.

    The BEST solution is to custom make some logic that fits your needs.

    If you really wanna go down that path though, I've been toying with an idea where you have buildings of standardized "grid lenghts" with the rooms following the same standardized convention. You then procedurally (meaning with great effortt on your part to ensure rooms are all accessible with a decently randomized feel [the logic i ended up with tended to make the layouts fall into a pattern]) fill out each grid section with an approriate room or room segment. One (or more) of those segments must be pre-desigbated as an entrance or exit. Some logicmust also be able to differentiate between exterior faces of segments (i.e. where you put windows).

    The problems I ran into concepting this method is how to handle buldings of non-standard shapes,and automating a system that connects the different floors (basically, I havent gotten as far as concepting how to best tackle an automated stairwell/elevator system)
    Last edited by 6ixpool; 12-10-2016, 11:03 PM.
    Need another dev on your UE4 project? Send me a shoutout and I'll lend a hand

    Comment


      #3
      Originally posted by 6ixpool View Post
      The rooms would need to be pretty standardized, otherwise youd need some custom-built logic to ensure all the pieces fit together. Meaning what youre asking isnt exactly simple.

      The SIMPLEST solution is finding something on the market place that does this.

      The BEST solution is to custom make some logic that fits your needs.

      If you really wanna go down that path though, I've been toying with an idea where you have buildings of standardized "grid lenghts" with the rooms following the same standardized convention. You then procedurally (meaning with great effortt on your part to ensure rooms are all accessible with a decently randomized feel [the logic i ended up with tended to make the layouts fall into a pattern]) fill out each grid section with an approriate room or room segment. One (or more) of those segments must be pre-desigbated as an entrance or exit. Some logicmust also be able to differentiate between exterior faces of segments (i.e. where you put windows).

      The problems I ran into concepting this method is how to handle buldings of non-standard shapes,and automating a system that connects the different floors (basically, I havent gotten as far as concepting how to best tackle an automated stairwell/elevator system)
      Thanks for the reply!

      I have been thinking of having it do the whole thing procedurally but decided to instead do it simple and just have standardized sizes of rooms (my pieces are 280 wide so it'd be 1x1 (280x280), 2x1 (560x280)) and so on and just manually set which sizes of rooms should be where until I have a floor in each child blueprint. Then have it use this "floor layout" for each floor and only really randomize how many floors and the pre-built interiors(+ exterior decoration) that fits each room as well as materials on walls and floors. This way it would be fast and easy to use but not too complicated, so little chance for weird stuff happening.

      I have been checking out pretty much every house building system on the forum and marketplace and any other site I could find but failed to find anything that would fit what we need.
      The biggest problem is that I need interiors, which instantaneously excludes like 95% of house systems.
      Last edited by Sitrec; 12-12-2016, 08:31 AM.

      Comment


        #4
        It is very hard to make proceduraly generated maps using blueprints.
        And that is for one reason, construction script is very limited, and doing all logic on Begin Play (in runtime side of script) prevents you from seeing map in editor, also makes everything movable.
        I did some dirty tricks that force construction script to do more than it should, but that makes whole project unstable.

        You have 2 alternatives:
        - code everything in C++ yourself
        or
        - buy dungeon architect, that is very good plugin, actively developed, and its best you can get without coding it all yourself in C++

        Comment


          #5
          Originally posted by Nawrot View Post
          It is very hard to make proceduraly generated maps using blueprints.
          And that is for one reason, construction script is very limited, and doing all logic on Begin Play (in runtime side of script) prevents you from seeing map in editor, also makes everything movable.
          I did some dirty tricks that force construction script to do more than it should, but that makes whole project unstable.

          You have 2 alternatives:
          - code everything in C++ yourself
          or
          - buy dungeon architect, that is very good plugin, actively developed, and its best you can get without coding it all yourself in C++
          Yeah I only want it to be a tool for building in editor, having it happen in runtime wouldn't be an option.

          I've already bought DA, both for making other structures and to investigate if it could work for this but as far as I can see it doesn't cover what I need. The floor plan builder is not suitable and the other ones doesn't work that well for regular buildings. The snap builder is the closest thing to what I want but it doesn't fit either.

          Comment


            #6
            So randomly cycling among prefabricated floor plans aye? That should do the trick no problem.

            Dungeon architect can still snazz up your interior spaces with a bit of code massaging. Although I guess at that point, it'd be easier to just make your own code to randomize interior decorations.

            Good luck with your project!
            Need another dev on your UE4 project? Send me a shoutout and I'll lend a hand

            Comment


              #7
              Originally posted by 6ixpool View Post
              So randomly cycling among prefabricated floor plans aye? That should do the trick no problem.

              Dungeon architect can still snazz up your interior spaces with a bit of code massaging. Although I guess at that point, it'd be easier to just make your own code to randomize interior decorations.

              Good luck with your project!
              Yeah I figured i should just do it simple and get it going but I really can't figure out the best work flow for having pre-made rooms/decorations spawn with blueprint. I want to ensure I can instance them but still be able to re-generate the house in case I change something in any of the prefabs.

              Thanks man!

              Comment


                #8
                There's a discussion on how to dynamically instance meshes and regenerate them here: https://forums.unrealengine.com/show...city+generator

                Its around the middle of the thread
                Need another dev on your UE4 project? Send me a shoutout and I'll lend a hand

                Comment


                  #9
                  Originally posted by 6ixpool View Post
                  There's a discussion on how to dynamically instance meshes and regenerate them here: https://forums.unrealengine.com/show...city+generator

                  Its around the middle of the thread
                  I'll check it out. Thank you!

                  Comment

                  Working...
                  X