Creating a tesseract in Blender using Geometry Nodes

A tesseract, let’s forget about the Marvel universe for a moment, is a very real geometric figure – a four-dimensional hypercube, one of the six regular polycubes in four-dimensional space. In our familiar three-dimensional space, a tesseract looks like the common “cube within a cube.” And such a figure can be easily created using Geometry Nodes in Blender.

Add a cube to the scene (Shift + a – Mesh – Cube). We can use any geometry, but this case, in the Geometry Nodes node tree we’ll have to start with a node that adds cube geometry to the object (Shift + a – Mesh – Primitives – Cube).

Open the Geometry Nodes area and create a new node tree by clicking the “New” button.

To create the tesseract shape itself, we only need two nodes.

Let’s add the first node, Extrude Mesh (Shift + a – Mesh – Operations – Extrude Mesh). This node does all the work for us. Switch it to “Edges” mode and set the Offset to -1.25.

Nothing is visible yet because all the changes are currently inside the cube. To see anything, we need to remove its faces, and the Delete Geometry node will help us with that.

Add it to the node tree (Shift + a – Geometry – Operations – Delete Geometry). Switch this node to the “Point – Only Faces” mode.

And now we see the desired shape.

We’ve already done everything we need to. But for better rendering, let’s add thickness to the edges of the tesseract.

Convert the resulting mesh into a set of curves. To do this, add a Mesh to Curve node (Shift + a – Mesh – Operations – Mesh to Curve). Immediately after that, add a node that performs the opposite action: Curve to Mesh (Shift + a – Curve – Operations – Curve to Mesh). Next, add and connect a Curve Circle node (Shift + a – Curve – Primitives – Curve Circle) to the “Profile Curve” input socket. Set its “Radius” parameter to 0.07. This wraps all the edges of our cube with tube geometry.

If we look closely, we’ll see some unsightly artifacts where the edges of the cube meet. The easiest way to remove them is to simply cover them with spheres placed on each vertex of our tesseract.

Add an Instance on Points node (Shift + a – Instances – Instance on Points). We’ll feed geometry from any node up to Curve to Mesh node to its “Points” input socket. The main goal here is to obtain points at the intersections of the cube’s edges. Add a UV Sphere node (Shift + a – Mesh – Primitives – UV Sphere) and connect its “Mesh” output to the “Instances” input of the Instances on Points node. Set the “Radius” parameter of the added node to 0.07. Now add a Join Geometry node (Shift + a – Geometry – Join Geometry) and merge the tesseract and sphere geometry.

This way, we’ve created neat tesseract geometry in 3D space. All that’s left is to add a nice material to the mesh and render.

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comment
Newest
Oldest Most Voted
Inline Feedbacks
View all comments