buildingEngine node guide 1
!
Creating a building with buildingEngine
1
Gustavo Patow ViRVIG-UdG
Universitat de Girona (UdG)
!
DOWNLOADS
Go to this web page to know more about the skylineEngine system. buildingEngine is a module part of the main system.
2
http://ggg.udg.edu/skylineEngine/
buildingEngine node guide 2
!
The software
• buildingEngine comes as a .otl • A Houdini library of digital assets • First thing, you must install the library
3
• Install Digital Asset Library
4
buildingEngine node guide 3
!
• Select buildingEngine
5
• Now, let’s do the outline of our building • Swap to a “top viewport”
6
buildingEngine node guide 4
!
• And create a Curve node
7
• And draw a (2D) polygon! • (try not to make it too big or too small… about 10x20 units would be ok)
8
buildingEngine node guide 5
!
• Switch back to a “perspecMve viewport”
9
• And rename our object to “building”
10
You can take the grid out
buildingEngine node guide 6
!
Extrude node • And now add an Extrude (Digital Asset) node
11
Extrude node • Extrude is used to generate the mass model from the building lot
12
buildingEngine node guide 7
!
• But nothing can be seen!
13
Filters and Products • All buildingEngine nodes work with a system of filters and products.
• A filter is used to select the geometry we are going to operate onto
• A product is what this node produces • They are modeled as Houdini groups
• So, the curve has no label and the Extrude node does not know on what to operate! 14
buildingEngine node guide 8
!
• So, let’s create a Group Geometry node, to add a label to the polygon
15
• Our label will be “lot”
16
buildingEngine node guide 9
!
• Now, we can configure our Extrude node • Filter: lot • product: mass • height: 10 (?)
17
• Now, create a new Comp node • And wire the Extrude into it
18
?
buildingEngine node guide 10
!
• First, set the filter to mass
19
• Now, set the number of components… in our case, 3: • front → facade • side → sides • Top → roof
20
buildingEngine node guide 11
!
• Our new model is idenMcal to the previous one… • Except that no boVom was selected!!!
21
• Now, lets subdivide the facade into floors • For that, create a Subdiv node and wire our Comp node into it
22
buildingEngine node guide 12
!
• Choose • filter: facade • Axis: Y (default) • Divisions: 2
• Uncheck Approximate • Value: 2 (absolute) • Product: boVomFloor
• Check Approximate • Value: 1 (approximate) • Product: floors 23
• As this node is “tuned” for facade, it’ll only work on the facade
• It will result in two divisions: one fixed-‐size for the first floor
• And other represenMng the other floors
24
buildingEngine node guide 13
!
• Now, let’s divide the floors area into its several “floor” areas
• For that, create a Repeat op
25
Repeat node • Is idenMcal to a repeated subdiv node • It performs as many subdivisions as possible given
• The desired individual area • The total area to subdivide
26
buildingEngine node guide 14
!
Repeat node
• Set • filter = floors • Product = floor • Axis = Y (default) • Check Approximate • Value = 1.5 (approximate)
27
Repeat Node
28
buildingEngine node guide 15
!
Repeat node (II) • Create another Repeat node
• Wire the first one into this one
• Set • Filter = floor • Product = window • Axis = X • Value = 1.5 approximate
29
Repeat node (II)
30
buildingEngine node guide 16
!
Subdiv (II) • Create a Subdiv for the 1st floor • Connect Subdiv1 to it
31
Subdiv (II) • Set:
• filter = boVomFloor • Axis = X • Divisions = 3
• boVomWindows • Value = 1 approximate
• door • Value = 2 absolute
• boVomWindows • Value = 1 approximate 32
buildingEngine node guide 17
!
Subdiv (II)
33
Non-‐linearity! • With buildingEngine, we can be non-‐linear!
• For instance, wire the Subdiv2 into the Repeat2 already created
• Simply add boVomWindows to the Repeat2 filter!
34
buildingEngine node guide 18
!
Non-‐linearity!
35
Insert node • Now, let’s insert some real geometry! • For that, let’s create an Insert node • And wire the Repeat2 to it.
36
buildingEngine node guide 19
!
Insert node • Set
• filter = window • Product = ? • Asset File = choose! • RotateY = 180 (depends on your asset)
• Uncheck “relaMve z” • Scale Z = 0.3
37
Insert node
38
buildingEngine node guide 20
!
Insert node • Let’s create another Insert node for the door
39
Insert node
• Set • filter = door • Product = ? • Asset File = choose! • Uncheck “relaMve z” • Scale Z = 0.3
40
buildingEngine node guide 21
!
Insert node
41
Object_merge node • This is a standard Houdini node • Useful to visualize several nodes at once • Like the Merge node, but without the wires!
42
buildingEngine node guide 22
!
Object_merge node • Set number to 2 • And choose the insert nodes!
43
Object_merge node
44
buildingEngine node guide 23
!
More non-‐linearity
45
More non-‐linearity
46
buildingEngine node guide 24
!
More non-‐linearity
47
Visualizing the entire model
48
buildingEngine node guide 25
!
Add the roof to the visualization • At the Object_merge, increase the number to 3 • And add the Comp1 node • But do not forget to add only the roof group!
49
The entire model!
50
buildingEngine node guide 26
!
HDA • If wanted, we can create an HDA with the building nodes.
• For instance add • Building height (from Extrude) • First floor height (from Subdiv1) • Floor height (from Repeat1) • Door with (from Subdiv2) • Window width (from Repeat2)
51
The entire model as an HDA!
52