Jornadas sobre estrategias de generacin de entornos colaborativos virtuales
Creating a building with buildingEngine
Gustavo Patow Geometry and Graphics Group (GGG) Universitat de Girona (UdG)
buildingEngine
comes as a .otl A Houdini library of digital assets First thing, you must install the library
Install
Digital Asset Library
Select
buildingEngine
Now,
lets do the outline of our building Swap to a top viewport
And
create a Curve node
And
draw a (2D) polygon! (try not to make it too big or too small about 10x20 units would be ok)
Switch
back to a perspective viewport
And
rename our object to building
You can take the grid out
Extrude node
And
now add an Extrude (Digital Asset) node
10
Extrude node
Extrude
is used to generate the mass model from the building lot
11
But
nothing can be seen!
12
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!
13
So,
lets create a Group Geometry node, to add a label to the polygon
14
Our
label will be lot
15
Now, we can Filter: lot product: mass
height: 10 (?)
configure our Extrude node
16
Now,
create a new Comp node And wire the Extrude into it
17
First,
set the filter to mass
18
Now,
set the number of components in our case, 3:
front facade side sides Top roof
19
Our
new model is identical to the previous one Except that no bottom was selected!!!
20
10
Now,
lets subdivide the facade into floors For that, create a Subdiv node and wire our Comp node into it
21
Choose
filter: facade Axis: Y (default) Divisions: 2
Uncheck Approximate Value: 2 (absolute) Product: bottomFloor
Check Approximate Value: 1 (approximate) Product: floors
22
11
As
this node is tuned for facade, itll only work on the facade It will result in two divisions: one fixed-size for the first floor And other representing the other floors
23
Now,
lets divide the floors area into its several floor areas For that, create a Repeat op
24
12
Repeat node
Is
identical to a repeated subdiv node It performs as many subdivisions as possible given
The desired individual area The total area to subdivide
25
Repeat node
Set
filter = floors Product = floor Axis = Y (default) Check Approximate Value = 1.5 (approximate)
26
13
Repeat Node
27
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
28
14
Repeat node (II)
29
Subdiv (II)
Create
a Subdiv for the 1st floor Connect Subdiv1 to it
30
15
Subdiv (II)
Set:
filter = bottomFloor Axis = X Divisions = 3
bottomWindows Value = 1 approximate door Value = 2 absolute bottomWindows Value = 1 approximate
31
Subdiv (II)
32
16
Non-linearity!
With
buildingEngine, we can be non-linear! For instance, wire the Subdiv2 into the Repeat2 already created Simply add bottomWindows to the Repeat2 filter!
33
Non-linearity!
34
17
Insert node
Now,
lets insert some real geometry! For that, lets create an Insert node And wire the Repeat2 to it.
35
Insert node
Set
filter = window Product = ? Asset File = choose! RotateY = 180 (depends on your asset) Uncheck relative z Scale Z = 0.3
36
18
Insert node
37
Insert node
Lets
door
create another Insert node for the
38
19
Insert node
Set
filter = door Product = ? Asset File = choose! Uncheck relative z Scale Z = 0.3
39
Insert node
40
20
Object_merge node
This
is a standard Houdini node Useful to visualize several nodes at once Like the Merge node, but without the wires!
41
Object_merge node
Set
number to 2 And choose the insert nodes!
42
21
Object_merge node
43
More non-linearity
44
22
More non-linearity
45
More non-linearity
46
23
Visualizing the entire model
47
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!
48
24
The entire model!
49
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)
50
25
The entire model as an HDA!
51
26