Have you ever seen those cool lattice structures for 3D printing? Perhaps you have an object that you want to make lighter? Perhaps you have used an slicer for FDM printers and love the gyroid infill, but now you want to print something in resin or a powder based printer and find out those options are nowhere to be seen. Maybe you're doing something exotic like RF frequency lenses and want an easy way to make variable gyroids structures! Normally these features are locked within expensive products, which are normally overkill for needs and budget. These geometry node groups are intended to help bring some of these features within the grasp of Blender users. They allow you to use non-destructive workflows, so that you can edit the designs and have the results generated for you.
These are mostly intended for 3d printing applications (especially for powder based printers that can take advantage of the geometry), but can also be used for more typical Blender uses. There is even a voronoi fracture node inside if you can find it!
This builds on my Hollowing tool and is compatible with SDF modelling workflows.
I intend to add more functionality as time goes on.

So far the geometry nodes include:
Cubic Lattice structures> (Primitive cubic, Body Centred, BCC, Diamond Lattice and Kelvin Lattices)
Custom Lattice option> If you model a unit cell then it can be used by the suitable node group.
Triply Periodic Minimal Surfaces (TPMS)> (Gyroid, Schwarz P, Schwarz Diamond, I-WP, Neovius)
Stochastic Lattice> A random lattice based on a voronoi cell implementation. Open-cell foam, Bone-like organic structure.
An improved hollowing algorithm that works can work with non manifold meshes.
Modifier node> Ability to modify aspects of the Lattices, such as thickness, by using control meshes.
Add holes> Remove holes in exterior for powder removal, or additional light weighting.
Interface with all options.

Example of a minimal node set up (gyroid structure with no exterior shell).


Future improvements:
Increased range of modifiers, including unit size. Surface following lattices.
Multiple lattices within an object with seamless transitions. Useful for optimising properties in different areas.
Ease of use and performance optimisations.

Update V1.7
- Mesh volume and density information now generated. Allowing for an easier way to hit mass reduction targets.
- Stochastic lattice improvements and error correction.
- Can now retain specific edges from the original mesh in 'Lattice only solid' mode. This is very useful to defining features in stochastic structures, where they might otherwise appear lost.
- Density defined lattices (beta). In addition to selecting the lattice element thickness, you can now target a specific density for the lattice and the element thickness will update accordingly. This does not factor in any smoothing or modifiers. Expect an error of about +/- 20% on the target. Eg 10% target density might be between 8-12%. Use the mesh density information to refine further.
- TPMS structures now have the option of a constant wall thickness, rather than relying on a parametric result.
Update V1.6
- Improvement in performance for several lattice generators. Added warnings to prevent excessive calculations that would cause blender to crash. The main lattice generator will now no longer run by default if the Voxel count is above 10 million or the Unit cell count is above 2000. These numbers can be altered by the user or simply ignored. If the 'Ignore warnings' tab is selected then it will try to work with whatever values you type in, so be careful!
Update V1.5
- Huge improvement in Stochastic Lattice generator performance. Migration from 'Exact' to 'float' Boolean operations, combined with intelligent filtering has lead to 10x greater performance. It is still advised not to use an overly complex mesh as the source model. If you still have low performance try running the operation on a decimated version of the source model.
Update V1.4
- Updates to stochastic Lattice generator.
- Various Bug fixes.
Update V1.3
- Added a new isogrid like support that can be added to organic meshes. This allows for thinner walls that are more rigid. In Beta and will be integrated with lattices in later update.

Update V1.2
- Added Custom Lattice import. Now you can model an entire lattice as a wireframe and use it to make the printable lattice.
- Weaire-Phelan structure. An idealised foam structure. Under the 'Cubic' structure options.
- Improved stochastic lattice. Now with conformal external shell.
- Fixed bug in 'remove hollows' feature.
Update V1.1
- Fixed bug in Boundary offset setting. Boundary offset is now a unit value rather than a percentage.
- Test Polar coordinate TPMS structures for cylindrical parts.
- Ability to remove unprintable hollows. Useful for removing small hollow regions cut off from the main hollow region/s. Prevents trapping uncured resin within the part. Cubic Lattices typically have one hollow region, whilst TPMS can have 2.