Log into your account to keep track of your progress. You can work through the lessons without logging in but your progress will be lost when you refresh the page.

Learn how to create the Project Titan building tool. This tool lets you place boxes in Unreal and then use the tool to convert them into buildings. In Unreal, this tool can instance modular geometry and create a roof shape that fits to the building shape.

Project Titan is an in-house tech demo designed to production test Houdini's procedural workflows while creating a 3D environment that leverages the latest technologies in Unreal. Click Here to learn more.

CREATED BY

SIMON VERSTRAETE

Simon is a tech Artist that loves building procedural tools and assets. By adding more and more procedural approaches to his workflow, he is able to build 3D models with speed and flexibility. During his studies at Digital Arts and Entertainment, he taught himself how to work with Houdini. After his studies, he started working on Ary and the Secret of Seasons at eXiin. Currently he is a Houdini freelancer and focuses on creating procedural content.

More from Simon Verstraete

COMMENTS

  • AnandaDivine 2 years, 6 months ago  | 

    Thank you so much simon. Your videos are a lifesaver! I would love to see a video on how you place assets and decorate a room after you have generated a building, procedurally.

  • Postale 2 years, 6 months ago  | 

    Simon, you are my angel!!!!西蒙,你是我的神!!
    Simon, you are my angel!!!!西蒙,你是我的神!!
    Simon, you are my angel!!!!西蒙,你是我的神!!
    Simon, you are my angel!!!!西蒙,你是我的神!!

    • Dustar 2 years, 6 months ago  | 

      扎布多德勒(流汗黄豆)

    • CalvinJor 8 months, 1 week ago  | 

      不好意思请问一下,为什么我用了clean节点后,所有的窗户实例都是沿着点的法线生成的啊?点的法线又全都沿着墙面走的,导致我所有的窗户都垂直在墙上了 T.T

  • Postale 2 years, 6 months ago  | 

    Simon我真的好喜欢你啊为了你我要哼哼哼啊啊啊啊啊

    • czhang 2 years, 2 months ago  | 

      你丫真他妈恶心,,,,

  • KieranLatham 2 years, 6 months ago  | 

    Really excited to give this one a try Simon, cheers!

  • cyelle 2 years, 6 months ago  | 

    Why do i get a "! - Invalid source " warning when using the Building From Pattern ? Looks like it doesn't want to use a cube, the icon is also different you hsave a building, but i get a chemistry bottle, is this due to the Building From Pattern being beta version ?

    • VarunChawla 2 years, 6 months ago  | 

      It seems like the second input(Patterns) is necessary. If you follow further along and implement the second input the error goes away. Not sure exactly why. Maybe the tool was updated/changed

  • 360482208 2 years, 6 months ago  | 

    Why do i get a "! - Invalid source " warning when using the Building From Pattern ? Looks like it doesn't want to use a cube, the icon is also different you hsave a building, but i get a chemistry bottle, is this due to the Building From Pattern being beta version ?

    • Northdocks 2 years, 6 months ago  | 

      same on my side

      • zcbmxvn6 2 years, 6 months ago  | 

        me too - =

    • Galleryworm 2 years, 6 months ago  | 

      same, also the project file provided doesn't seem to be working (for me at least), running houdini & labs version H19.0.622 (also attempted the daily build for both houdini and labs, same errors)

    • Dustar 2 years, 6 months ago  | 

      It somehow works for me by connecting the box node to both the first input and the second input of the Building From Pattern node

    • kaciuk 1 year, 9 months ago  | 

      I had that and for anyone else having this issue : keep following till the second input of the "building from patterns" node is filled. Change the primitive type of the grid used for FLOOR_BASE to Mesh instead of Polygon Mesh. Save your project and close Houdini. Update the Labs tool from the Labs/Package tabs in Houdini Launcher (right click->upgrade->Production). Re-open Houdini.

      Note : When creating the "MODEL_A", "MODEL_B", "FLOOR_BASE" nodes it is important to understand that only ONE tab of theirs ("Building Module", "Floor Description") is active at a time and it describes the node behavior. Also be sure to have unique names. I can currently follow this tutorial on 19.5.435.

      • sarrett 1 year, 8 months ago  | 

        Thank you, I tried that and I"m still getting "Invalid attribute specification: "no match for name"? It will only give me something if I put <Generic> for my pattern?! Any of the other two floor types it will not build

    • killianmonson 1 year, 4 months ago  | 

      Same

  • robben 2 years, 6 months ago  | 

    Thanks for that tutorial! Would be nice to see how to use megascan assets with it like mentioned in the tutorial but not shown.

    • KieranLatham 2 years, 6 months ago  | 

      Hi Robben,

      I thought the same and played around with it.

      Can probably do it in Houdini so it affects all the points instead, but since I had the modules open in UE4, I adjusted the Y Axis by the module size and rotated by -90 and they appear correctly on the tool, you could also perhaps do a match size and process all modules separately and then use the bottom midle setting n the building rom pattern node.

      megascan assets look great with this tool!

      • VarunChawla 2 years, 6 months ago  | 

        I am trying to use megascan assets with this tool but failing with the corners. How are you handling concave and convex corners with this tool? The old building generator handles corners well but is much slower. The corners2 variable in the Labs Building Generator Utility hda under Floor Description tab does nothing

        • KieranLatham 2 years, 6 months ago  | 

          Gonna give the corners a shot I've not had the chance to try corner modules yet (mostly as i'm lazy to seperate them out), that and I was going to avoid the building node method as I never got good results with the original building generator.

          Usually i'll take the floor prims, resample the edges, thene extrude the face, enable the "extrudeBackSeam" group (original curve), then measure the curvature, then use the curvature to identify the convex or concave points, from here you can group and split the corners and then produce separate systems for convex/concave corners.

  • KieranLatham 2 years, 6 months ago  | 

    Quick question.

    Can we filter the walls out and maybe give them different modules, so like one wall is the front of the building and has doors, and one is an alley with just walls? so we can have different geometry, or is it best to use the volume override for things like that?

  • szmatefy 2 years, 6 months ago  | 

    Excellent tutorial! Will be there a tutorial on using Variations in the building Modules and the Patterns?

  • handeshahd 2 years, 6 months ago  | 

    hey after ı put the clean node, the meshes in Unreal doesnt correct it self any idea?

    • handeshahd 2 years, 6 months ago  | 

      Thanks for the tutorial by the way

    • handeshahd 2 years, 6 months ago  | 

      found the problem, Thanks for the tutorial

      • nbjsargent 2 years, 5 months ago  | 

        Would you mind posting what that problem was?

  • Doodledee 2 years, 6 months ago  | 

    hi, awesome tool and tutorial so far, i just wanted to notify that I found a bug when instancing with unity, as it removes my instance string.

    So far i managed to fix it, if anyone comes across this and this might not be fixed:
    - Allow editing of contents on the building_from_pattern node
    - Search for the Attribute wrangle "get_instance_from_patterns" change unreal in there to unity or add another if clause
    - got to clean 4 from the second wrangle input and once again change unreal there to unity, or add another ^unity_instance

    hope that helps some peoples :)

  • Barrett Meeker 2 years, 6 months ago  | 

    How does this compare to the Matrix UE5 building generator? Is the use of data tables similar? Thank you!

  • tameryagli 2 years, 6 months ago  | 

    Hi does anyone know how I can add concave corners to the building when necassary? Like after a boolean operation?

  • andrew_ 2 years, 6 months ago  | 

    This is awesome, but if it's possible can you please include the youtube links with the video here? The vimeo videos do not scale to the size of the browser window, which makes the text hard to read without using fullscreen mode for the video, and on ultrawide monitors fullscreen mode is not really an option most of the time.

  • dengzhiqiang1995 2 years, 6 months ago  | 

    有人遇到building_from_pattern节点显示无效模式么,不起任何作用。版本更新到64都不行。589也不行都显示无效模式警告

    • the New Houdiner 1 year, 7 months ago  | 

      老哥解决了吗,我也是这样,进节点看才开始编译,每次运行到一个Wrang就开始死循环,估计不是houdini版本的问题,是Lab工具的版本问题,

    • the New Houdiner 1 year, 7 months ago  | 

      更新了下Lab的版本解决了

  • carlosjcortinam 2 years, 5 months ago  | 

    Hi, when placing the node building from patterns I get the message:

    "This node is using an incomplete asset definition" and it doesn't work right.

    • carlosjcortinam 2 years, 5 months ago  | 

      Never mind, update sideFx Labs tools

  • hyeontak1214 2 years, 5 months ago  | 

    The order of the expanded form of the floor description is reversed
    How do I fix it?

  • tameryagli 2 years, 5 months ago  | 

    Hi, does anyone know how I can create Concanve Corners? It seems to only work on Convex Corners right now? Any help is highly appreciated!!!

  • Trogleth 2 years, 4 months ago  | 

    I have trouble modeling in Houdini, can I create the individual assets in a different program and bring them into Houdini to make them procedural? Or does this have to be completely done in Houdini?

    • solodev 2 years, 4 months ago  | 

      Yep. You can bring in any 3d model by using a file node to load it in. Drop the file node down, and its got a little space to browse to the file, but it doesn't actually import the whole thing into the scene, it just references it from the disk, so don't move the file to a different folder or anything or itll break the reference and you'll have to change that path on the node. Personally I use Maya and bring things into Houdini as an fbx.

  • VarunChawla 2 years, 4 months ago  | 

    I would love to know this too!

  • ziyixiaoqi 2 years, 4 months ago  | 

    Ouput Instance to UE,Orient is wrong!
    but,In Houdini,It is correct!
    Why?
    In the past weeks, I haven't solved the cooking problem, and I'm lost!

  • ziyixiaoqi 2 years, 4 months ago  | 

    Help Me!!!
    Ouput Instance to UE,Orient is wrong!
    but,In Houdini,It is correct!
    Why?
    In the past weeks, I haven't solved the cooking problem, and I'm lost!

  • h575561815 2 years, 4 months ago  | 

    Why do the assets I import from bridge have different directions? Causes me to export to turn in a different direction

  • solodev 2 years, 4 months ago  | 

    So Im using houdini 19 and the latest version of sidefx labs. The pattern doesnt work when I put it in, I did exactly like in the video. When I dig into the actual side fx building node, there are two subnetworks, check_input_data and generate_floors1, they both have an error that says "VEX error: no script specified. using null". So is the tool broken in the newest version or something?

  • ziyixiaoqi 2 years, 4 months ago  | 

    me too

  • handeshahd 2 years, 4 months ago  | 

    Hello, how can we add props to outside of the building we create?
    can we do a system for props that can use data table also, to give variation

  • neowang9999 2 years, 2 months ago  | 

    nice one

  • teemo1282476131 2 years, 1 month ago  | 

    还有一个问题,墙外的装饰物怎么生成呢,这些节点里有我没有注意到的功能吗?

  • teemo1282476131 2 years, 1 month ago  | 

    Another question is how to generate decorations outside the wall. Are there any functions in these nodes that I haven't noticed?

  • Francis Bievre 2 years, 1 month ago  | 

    About the corners, there is a mistake in the code that does not allow for left and right corners to be used.

    To correct this, allow modifications on the building generator node, then go inside and look for the "place pieces" node. Go inside it and look for the "grammar_expansion1" node.

    In this node, you'll see this
    CC_L = _corners[0];
    CC_R = _corners[0];

    Replace by this
    CC_L = _corners[0];
    CC_R = _corners[1];

    Left and right corners should work properly

  • jimenagrueso 2 years ago  | 

    This project has excellent material for beginners like me ! Thank you!!

  • s_bookey 2 years ago  | 

    When I bring the HDA into Unreal nothing happens, even when I set the geometry to be a cube in the world. Anyone else had this?

    • zexar 1 year, 9 months ago  | 

      having the same problem,any ideas for now?

  • sgr_software 1 year, 11 months ago  | 

    7: 35 There is an error here. It does not progress while in Vex Generating state. The logo shape in building_from_patterns is different. how do i fix it? please save me!

  • Drasko Ivezic 1 year, 11 months ago  | 

    Sorry, but this doesn't work at all. The tool building from patterns is buggy, creates endless loop with an attribute wrangle which is inside of the container generate floors expanded_grammar_refitting. The whole thing is messy and confusing, so I would either update this tutorial or try to fix this mess. Thank you.

  • amorales 1 year, 10 months ago  | 

    Ill share this here, but if anyone is having problems with the "Building From Patterns" sop going into an infinite loop, its not the sop, its the input from "Building Generator Utility" that is causing the issue, the sop has an internal switch that is supposed to change when the specific radio button is picked, this can be fixed by changing the script in the switch node to

    from ch("../folders01") to ch("../fd_buildingmodule1")
    [9:10 PM]
    without it, the sop isnt sending the correct data to the building from patterns sop and thus failing/looping indefinitely

  • patremblay 1 year, 10 months ago  | 

    Also getting the "invalid patterns" warning from the "Building From Patterns" sop as well as this error "Module Dimensions not specified! This might produce unexpected results when used with the Building Generator." from the building_generator_utility even though they are specified.
    None of the solutions from this thread up to now would fix those...

  • patremblay 1 year, 10 months ago  | 

    Update: installed labs package 19.5.501 today and it fixed the issue :)

    • Darkholme 1 year, 9 months ago  | 

      THX

  • Darkholme 1 year, 9 months ago  | 

    When I used the 'Get Instance form Patterns', the points' orient is not correct,is this also a bug?

  • Lupoluke 1 year, 8 months ago  | 

    Honestly I am a bit surprised that this tool even in 19.5.534 doesn't work.

    Anyway there is an issue from the version 19.0 -> to 19.5: basically in the new version data table 's values are read as declared in Unreal (float, int) and not as string.
    Because of this the first solution to apply in the attribute wrangle (the ones related to Simon's video where he shows how read from DT) should be like this:

    i@myLength = (int) @Size;

    and not

    //i@length_s = atoi(s@Size);

    because SIZE is read as a Float in 19.5 and not anymore as String. The new attribute should be modified in the field building from pattern as showed by Simon. This solution works as I can read the proper values in the DT.

    Unfortunatly this is not enough to fix the mistakes inside Building from pattern which is related to the node foreach5.

    Also: worth of mention that even the Hdi by Simon Crashes in houdini-Unreal 19.5.534.

    Honestly I hope sideFx would definitly fix this, otherwise I fail to understand the reason of showing a project which doesn't works on user end.

  • Aerth 1 year, 7 months ago  | 

    Really appreciate this tutorial, it's very clear thank you.

    One thing I can't seem to find in the videos is reference to scattering the additional assets (ac units) show in the overview?

    Have I just missed it somehow? If not does anyone have a link to another vid which shows how this could work with this system?

    thanks!

  • Noboru 1 year, 7 months ago  | 

    Compared to the earlier tool I would say that I would like to see better corner support on this tool. It seems like there is one concave and one convex corner, which makes rounded edges more difficult because there is only one corner. Also that corner does not get a rotation way to have a pattern continue around the edge.

  • the New Houdiner 1 year, 7 months ago  | 

    If someone get a warning called "invaild source" when using the Building from Pattern node , and you are confident that the connected nodes are correct ,please download a new Labs tool from Github.
    https://github.com/sideeffects/SideFXLabs

  • Jorinti 1 year, 7 months ago  | 

    Im new with this and when I watched this i got very enthusiasted and wanted to learn Houdini. Might sound silly but has anyone put in the corners the columns that hes showing at the renders at the end of his videos? When i do they get repeated and with a weird positioned order.
    Thx for the videos btw

  • GregLaux 1 year, 6 months ago  | 

    When I get to the data tables something I am doing is breaking the Building from Patterns generator. I have re-built a few times and followed all of the instructions, It's breaking inside the subnet "Generate_floors1" at the "expanded_grammar_refitting" node and unfortunately it's a bit too tough for me as a beginner. I've used exactly the same parameters and naming as shown, but I am using my own models. I went back to the manual way and just pray this all starts making sense enough to come back and fix it.

  • ZCYLOL 1 year, 4 months ago  | 

    Opening tools in UE5 is not generating the windows after I select the cubes..... Anything I missed?

  • Igrom 1 year, 1 month ago  | 

    In houdini 19.5 in the latest version of LAB, even the building_from_patterns node doesn't work. When I connect the cube to it, it says that the pattern is invalid.

  • alex3dossora 8 months, 1 week ago  | 

    Good day. How can you set up recognition of internal and external corners in this Node? Can anyone figure it out please tell me

  • mijong1612 3 months ago  | 

    Am I the only one who has a problem with component tags? I'm sure I set the tag differently A and B , but only the shape of the tag is printed only A.

    • Leonel_GN 2 months, 1 week ago  | 

      Im having the same problem where you able to fix it

Please log in to leave a comment.