Tough one. I’d probably make some modular roofing parts and then use those in the geometry nodes setup instead of doing procedural roofing.
But my approach would be:
Set the roof height by extruding the floors up (so you now have a copy of the floor at the ceiling height)
Solidify the roof to desired height by using the extrude node (disable extrude individual) in face mode.
Merge by distance.
Select the top faces. This can be done using the “top” attribute from the extrude node. Then scale the edges so that you get a slanted roof.
Then one of two ways:
Set edge creases and subdivide.
or:
Store the ceiling height (you are going to have to use a sample index node or similar approach later for this)
Convert to volume (volume to mesh)
Convert volume to mesh.
Select bottom part of the mesh (use a normal node connected to a vector math done set to dot product with the Z value at -1) and delete it.
Use the stored ceiling height and subtract the new “lowest” height (statistics attribute node works best for this) and set the position offset using this value since converting to a volume and back will change the height of the roof.
Plug position into a blur attribute node set to vector, and then plug that into the position of a set position node to smooth the roof.
Then lastly use the remesh modifier to set the desired resolution and then a solidify modifier.
The shape of the roof of the house varies depending on the finishing material, but the basic structure of the roof of the traditional house is similar.
But it’s slightly different depending on the time and region.
I’m not sure how to use the geometry node.
But I think the first thing to do is to model the roof.
After that, I think we should think about whether it can be configured using a geometry node.
For example, wooden structures in the basic configuration of the roof could be created using geometry nodes.
I think the roof’s finish can also be made using geometry node hair.
I don’t know what format you want to make it in.
If you want to create the roof automatically, you can also utilize BIM Data in the link below.
하지만 초가집같은 경우 벽으로 이루어진 것이 아닌 레퍼런스 공유해주신 것처럼 제작하려면 끝이 사선으로 되어져 있어야합니다. 그 부분이 막혀서 질문을 남겼습니다.
Thank you for answering
What I want to create is a generator for traditional thatched-roof houses.
In this case, the shape of the roof follows the structure of the house.
Typically, the roof is either straight or in an L-shape, and the size or shape of the roof also changes depending on the size of the house.
While I have already created the structure and walls of the house, making the corresponding roof has been challenging.
When referring to most tutorials or other videos, the finishing of the roof edges often resembles medieval architectural styles.
You can refer to the video link below:
Geometry Node Assets: Build Roof Node #blender#geonodes
However, in the case of traditional thatched-roof houses, the edges should be slanted as shown in the references. I’m currently stuck on this part, so I decided to ask for help.