Permutation City - Greg Egan

July 27, 2024, 12:00 am

Permalink - Comments - Tags: Books

Service Model - Adrian Tchaikovsky

July 18, 2024, 12:00 am

Permalink - Comments - Tags: Books

Trinity - Leon Uris

July 11, 2024, 12:00 am

Permalink - Comments - Tags: Books

Assassin's Apprentice (Farseer Trilogy, #1) - Robin Hobb

July 5, 2024, 12:00 am

Permalink - Comments - Tags: Books

Blender Geometry Nodes - Woven Mesh Flooring

June 2, 2024, 12:19 pm

I have done a few tutorials and reused some Geometry Nodes setups that people have published, but this is the first time I have created a node setup from scratch.

I am creating a spaceship corridor scene from Adrian Tchaikovsky's Final Architecture series and needed some industrial looking flooring. I thought something like this might look ok.

Rather than modeling this by hand, Geometry Nodes seems like the obvious solution.

The first thing that caught me out a little bit is how to design how the nodes setup would be used. I kind of like nodes that take some simple input geometry and generate the geometry based on that. The obvious input geometry for this thing would have been a plane. I think to do it that way I would have had to do some math to derive the wire mesh based on the size and shape of the input plane geometry. I think that would have been cool, but in the end I chickened out. I basically just throw away the input geometry and use height/width parameters to define how big to make the mesh. It's a bit clumsy, but it works.

So once I got over my issues with the parameters for the nodes, I needed to get into creating a single wiggly bent wire that the mesh is made of. The top level nodes have created geometry based on the mesh-tile-width that was passed in. This is basically just the width of the square we are going to create.

We take that geometry and divide it up by mesh-bends (using the Resample Curve node). Then we offset at points along the mesh to create the bends (using mesh-height and mesh-offset params to drive the size and frequency of the bends).

The top level nodes takes two wires (created in the wire node group) and instances them by the number of bends in the wire (mesh-bends) and rotes one of those sets of instances by 90 degrees and then translates them so they overlap.

So that's a pretty high level summary of what I did, and I imagine there might be better ways to do some of this stuff, but this seemed to work. I was pretty happy with how this looked in my scene:

Permalink - Comments - Tags: art?,3D