[WIP][UE4] House generation with Houdini

greentooth
Offline / Send Message
siver greentooth
Hey,

It is time to start a new project :smile: . For a while I'm interested in procedural house generation and with this project going to make one.
I already have the base structure of the house generator and some base modular models.
If you are also interested in make a house generator I can really recommend following this video.

Feel free to give feedback or your thoughts on it.

Gif of the tool in action.


screenshot of Houdini


With the plugin the generator can be opened in UE4.


All the modular models at the moment. The idea is that you can change the models in game engine so the generator can be used in different projects.

Replies

  • chriszuko
    Offline / Send Message
    chriszuko polycounter lvl 8
    Nice setup! What is the cost of the final building? Is it all baked into a mesh? Is it instanced? 
  • siver
    Offline / Send Message
    siver greentooth
    The house will be made out of meshes that are instanced. The last photo shows the modular kit that I'm using so far. So in UE4 you just drag and drop the models in the Houdini asset and it makes the house.
    The idea is that by creating variations on those models the house will look differently. The tool itself is mainly placing the modular models on the right place.
  • chriszuko
    Offline / Send Message
    chriszuko polycounter lvl 8
    Very neat, good luck with the instanced part there are quite a few challenges with that I'm interested to see how you solve. :)
  • MeshModeler
    Offline / Send Message
    MeshModeler polycounter lvl 7
    Would love a tutorial of this if possible :) 
  • KristinMays
    Offline / Send Message
    KristinMays triangle
    This is amazing! I would also love to see a breakdown or tutorial on how this can be done! Fantastic work!!
  • siver
    Offline / Send Message
    siver greentooth
    Back with another update. This week I have added more features and bug fixes.
    Features added are
    -Wall width: Before the modular walls where size 1x1 and now the width can be changed.
    -Height variation: This is adding extra floors on top of the building but it is adding it on a few areas.
    -Floor separation: There is the option to separate floors and put different models in that layer. So you can select floor 1 and add models for a shop.

    Gif of the features


    Some more features I'm going to add are (emergency) stairs, Chimney and adding something to place random props.
    There are also some issues I been having. The issue is that in game engine the pivot point of the house is random and too far of.
  • pming
    Offline / Send Message
    pming polycounter lvl 4
    Nice work! 
    If anyone wants to spend some...ok, a 'fair amount'... of money to learn how to do all this sort of thing in Houdini, there is a REALLY good tutorial series on Gumroad: https://gumroad.com/l/qaEZ  Expensive, but she really goes in-depth to the hows and whys and how/what she had to think about to tackle the problem.

    Nice to see someone sharing their learning info freely! :) Keep it up!
  • siver
    Offline / Send Message
    siver greentooth
    @pming  Thanks! She is doing some very cool work and I have seen it before. I actually have the first volume. It is good but it is more code then what I expected. Can definitely recommend it.
    But for this project I will try to do as much as I can with nodes. And it is quite interesting :smile:
  • chriszuko
    Offline / Send Message
    chriszuko polycounter lvl 8
    Keep going! This stuff looks fun!
  • siver
    Offline / Send Message
    siver greentooth
    New update :D , I have added the option to add a stairs to the building. Then placed a door on the balcony so people can walk there.
    Further I did some clean up and reworked a part of the graph and it is less nodes now.

    Gif stairs, wall models are replaced by window model if the stairs is placed there.


    Door automatically placed on top

  • Doxturtle
    Offline / Send Message
    Doxturtle polycounter lvl 4
    Great work, this seems really useful! :)
  • Yoji
    Offline / Send Message
    Yoji polycounter lvl 5
    This looks great. Can't wait to see more versions on the architectural elements!
  • Mark Dygert
  • Emomilol1213
    Offline / Send Message
    Emomilol1213 polycounter lvl 4
  • siver
    Offline / Send Message
    siver greentooth
    Thanks guys! Feel free to share thoughts or ideas.
    This update I have made a few changes.
    Explored a bit more the instancing. Made the switch from the Instance node to the object merge node with instance enabled.
    They both have pros and cons. (These pros and cons are what I have experienced and may be different for you, and let me know if I missed something)
    -Instance Node
      pros
      > can bring structure to the network
      > keeps your prefabs in Unity!
      
     cons
     >when used in the game engine, if the tool is not using the roof models the reference to those roof models are broken and has to be re   assigned if roof models are used.
     > can be a little bit more work to set up

    -Object merge 
     pros
     >keeps the reference when assigning models in the game engine.
     >more structure in the UI

     cons
     >breaks the prefab in Unity
     >having some issue in UE4 where models are sometimes switched. Will later tell more about it when I have found more about it.


    Then I made the switch back to Unreal engine 4. I was using Unity with the HDRP, the Houdini Engine feels a bit faster on Unity. But I kept breaking materials with Unity and with UE4 I can use the shader graph and have the parallax in the windows.

    Also made the models better and put a base materials on it. Still need to make more modular models.

    Here is a picture of a few variations but will need more models to show the tool better.


    a quick walk a round a house (you can also see the fake interior material)


    Interesting PDF for procedural buildings: http://research.michael-schwarz.com/publ/files/procmodcourse-siga15.pdf 
    Special thanks to https://twitter.com/Colonthreee for the PDF.
  • cptSwing
    Offline / Send Message
    cptSwing polycounter lvl 8
    Awesome stuff.
  • Lechooga
    Offline / Send Message
    Lechooga null
    Wow, wonderfully complex results. How much time did you put into this?
  • MeshModeler
    Offline / Send Message
    MeshModeler polycounter lvl 7
    hope you're able to make a tutorial :)
  • siver
    Offline / Send Message
    siver greentooth
    @cptSwing Thanks man!
    @Lechooga  ,Glad to see you liked it :) This project is made in my free time and each week I think I spend an average of 17 hours on it. So I'm 9 weeks working on this, so in total now around 153 hours. (That's nice to know)
    @MeshModeler , I haven't forgot about it at all :smiley: . Have the idea to simplify the tool a bit so, the video is less then 30min and people will get the general idea of how it is made. I think next week I'll start preparing for it.
  • Lurcisia
    Offline / Send Message
    Lurcisia greentooth
    Incredible work, have been following this thread for a bit. I am most definitely looking forward to a tutorial on this. Would be extremely helpful for a project I plan on starting in a few months! Once again, great work.
  • Sage
    Offline / Send Message
    Sage polycounter lvl 15
    awesome work. it be nreat if you made a tutorial on how to set it up in houdini
  • Sajeet
    Offline / Send Message
    Sajeet polycounter lvl 5
    oooooh! Really nice :) If you feel up for it a tutorial would be awesome
  • siver
    Offline / Send Message
    siver greentooth
    Thank you all guys! :smile: 
    Here is an update on the project: 
    I  quickly updated all models and textured them, this took most of my time.
    After that I fixed some smaller bugs and miss placements of models.
    Further did some testing in UE4 and made a small city under 1hour.  Also update time of the tool is around 4 sec.

    For the Tutorial I have been starting making a simplified version in Houdini. (will share more about it in the next post)


    Unleashing the tool in UE4 :D


    A quick city made under 1 hour. (trees are not mine) (also not that happy with the lighting, will rework later)


    While making the models in Houdini I found this quiet interesting. This was the base for the fire hydrant. By using a ray node you can push shape out of another shape. Hope you find it interesting :)

  • Lurcisia
    Offline / Send Message
    Lurcisia greentooth
    Very interesting, thank you for sharing! Look forward to seeing more!
  • jStins
    Offline / Send Message
    jStins polycounter lvl 7
    Looking great and really looking forward to the tutorial. Cheers!
  • THEONLYraider
    Offline / Send Message
    THEONLYraider polycounter lvl 6
    Can't wait for the tutorial!  :)
  • Sajeet
    Offline / Send Message
    Sajeet polycounter lvl 5
    Thank you very much for the tut m8! I will disect it :)
  • Lurcisia
    Offline / Send Message
    Lurcisia greentooth
    Thank you for the tut!!
  • THEONLYraider
    Offline / Send Message
    THEONLYraider polycounter lvl 6
    Yesss!! Thank you! :)
  • griffitii
    Offline / Send Message
    griffitii polycounter lvl 2
    This might be the thread that makes me learn Houdini! Thanks for sharing your progress!
  • Emicom_Recruitment
    @siver Thats some great work you got there. If you are looking for a job, we have an opening on our Technical Artist position. 
    have a look   https://emicomstudio.com/job/technical-artist/
  • Ryno
    Offline / Send Message
    Ryno polycounter lvl 14
    Super slick.  Was just visiting a studio that was doing something very similar with Houdini.  This can really make things easier on the artists!
  • wojtekfedunik
    Offline / Send Message
    wojtekfedunik triangle
    Wow that's great
  • BeatMe
    Hey dude, great work on that project, some techniques helped me with my own generator. I have a question tho. Do you setup up the textures for every modular part or is there one texture for the whole wall system for example?
  • siver
    Offline / Send Message
    siver greentooth
    Thanks everyone, didn't expect that so many of you would liked this! :smiley:

    @BeatMe Thanks! All the models are modular and for the wall I have 1 tiling brick texture. With 2 Material ID's I apply a unique texture and a tilling texture. The unique texture will include multiple windows and doors. Unique texturing done in Substance painter and brick made in Designer.

    Small side note, all models were made in about a week so I rushed it a bit with smart materials. There might be better ways but I wanted fast results. Also by using the material ID's you can easily switch out the brick materials and scale them for more or less bricks.
  • BeatMe
    Hey another question :D How do you get the shape for the height variations? Cant get it to work on my system
  • siver
    Offline / Send Message
    siver greentooth
    Hey @BeatMe , the simplest way to get a shape for height variation is with the group by range. From the base floor shape you place a group by range and you make a new floor with that.

  • siver
    Offline / Send Message
    siver greentooth
    The file of the tutorial on the house generator is available on my Artstation for anyone who wants to get a closer look or wants a base setup for house generation.
    https://www.artstation.com/siver/store/39zW/house-generator-tutorial-file


Sign In or Register to comment.