Friday, 12 December 2025

3D Revisited -- from Gemini 3

Google's new GEMINI 3 does a decent job generating OpenScad code to make 3D objects -- specially better than those I generated with GEMINI 2.5 last April 2025:

Two new, improved GEMINI 3 generated 3D figures --
animated by Midjourney

Likewise this new GEMINI 3 did a decent job turning a more complex AI image into a 3D file:



MULTIMODAL AI

Finally GEMINI 3 turned a mere HAND DRAWING into a 3D object. Virgil merely drew the part he wanted, and GEMINI 3 generated OpenScad code that created an STL file -- which we 3D printed at Quelab on December 3rd, 2025.  All we did is upload the drawing to GEMINI 3 because it is "Multimodal":





FAKE BOCCIONI
improved

"Write OpenSCAD code for this figure.
The model will be 3D printed."

I uploaded a 2D version of a fake AI Boccioni sculpture (on the left below) and asked GEMINI 3 to generate OpenScad code to generate a figure to 3D print -- that being the grey figure on the right in the image below:

The fake 2D Boccioni image, the GEMINI 2.5 model,
and the improved grey GEMINI 3 model
*Download: Boccioni3.STL (560.63 KB)*

  • GEMINI 3 gave a more faithful representation of the main fake Boccioni figure (including the platform stand) than Gemini 2.5 -- while both generations left out the second background figure:

FAKE BOCCIONI

"This image depicts an organic, sculpted figure in a dynamic pose. OpenSCAD is a constructive solid geometry (CSG) tool, which uses mathematical primitives (spheres, cubes, cylinders) rather than mesh sculpting.

To recreate this "fleshy" organic shape in OpenSCAD, the best approach is to use Hull Chains. By defining key points (joints) and sphere sizes (muscle mass) and wrapping a hull() around them, we can approximate the limb structures and torso volume.

Here is the OpenSCAD code to generate a 3D-printable model of this figure."


How to use this for 3D Printing:

1)  Download OpenSCAD: If you haven't already, download it from openscad.org.

2)  Paste & Render: Copy the code above into the editor. Press F5 to preview and F6 to render the final geometry.

3)  Adjusting the Pose:
  • The chain_hull module connects spheres together to make "muscles."
  • To change the pose, look at the coordinate lists (e.g., right_arm). The format is [[x, y, z], radius].
  • Simply change the x, y, z coordinates to move the elbow, knee, or hand.

4) Export: Once rendered (F6), click File > Export > Export as STL to slice it for your 3D printer.


Note on Organic Shapes: OpenSCAD constructs shapes mathematically. This code creates a "blockout" style figure that captures the volume and gesture of your reference image. It will result in a clean, manifold mesh that is safe to print, though it will lack the tiny surface scratches or sculpting wrinkles seen in the original ZBrush/clay model.


This is a challenging figure to model in OpenSCAD because it is composed almost entirely of organic, bent, tube-like structures and rounded capsules in a very specific, asymmetrical pose.

To recreate this, I will use a constructive approach:

  1. Building Blocks: I will define helper modules for straight capsules (for the head, torso, and main limb segments) and bent tubes (created by hulling a chain of spheres along a path) for the connecting tissues and arms.

  2. Structure: I will build the figure from the ground up, defining the coordinates for the feet, legs, torso, head, and finally the complex twisting arms.

  3. Printability: The figure in the image has rounded feet and significant overhangs.

    • To make it printable, the code includes a difference() operation at the end to slice off the very bottom of the feet, creating flat contact surfaces for the print bed.

    • Important Note on Printing: Even with flat feet, this model has severe overhangs (the arms and leaning torso). You must enable supports in your slicer software (e.g., Cura, PrusaSlicer) to print this successfully.





RED MAN
improved



"Write OpenSCAD code for this figure.
The model will be 3D printed."

I uploaded a 2D version of an abstract red figure, and asked GEMINI 3 to generate OpenScad code to generate a figure to 3D print -- that being the grey figure on the right in the image below:

The fake 2D Boccioni image, the GEMINI 2.5 model,
and the improved grey GEMINI 3 model
*Download: Red3.STL (2.1 MB)*


Redman

This is a challenging figure to model in OpenSCAD because it is composed almost entirely of organic, bent, tube-like structures and rounded capsules in a very specific, asymmetrical pose.

To recreate this, I will use a constructive approach:

1)  Building Blocks: I will define helper modules for straight capsules (for the head, torso, and main limb segments) and bent tubes (created by hulling a chain of spheres along a path) for the connecting tissues and arms.

2)  Structure: I will build the figure from the ground up, defining the coordinates for the feet, legs, torso, head, and finally the complex twisting arms.

3)  Printability: The figure in the image has rounded feet and significant overhangs.
  • To make it printable, the code includes a difference() operation at the end to slice off the very bottom of the feet, creating flat contact surfaces for the print bed.
  • Important Note on Printing: Even with flat feet, this model has severe overhangs (the arms and leaning torso). You must enable supports in your slicer software (e.g., Cura, PrusaSlicer) to print this successfully.





6 ARMS

I then uploaded a more complicated AI image I generated in January 2025, and asked GEMINI 3 to generate a 3D model:

I asked for a 3D model



I used the same prompt:

"Write OpenSCAD code for this figure.
The model will be 3D printed."


Download: 6arms.STL (2.08 MB)


6 ARMS

This is a complex, organic surrealist sculpture. OpenSCAD is primarily designed for geometric mechanical parts (CSG), so recreating organic textures like "tangled roots," "cracked eggshells," and "fabric folds" is challenging to do perfectly in code.

However, I can provide a stylized, print-ready approximation that captures the composition: the egg head, the multi-armed vine torso, the cargo pants, and the surrounding figures.

OpenSCAD Code

Copy and paste this into OpenSCAD. I have designed it with 3D printing in mind (using a flat base and solid connections), but you will need to enable Support Structures in your slicer because of the outstretched arms.



3D Printing Advice

1) Supports are Mandatory: This model has extreme overhangs (the outstretched arms). You must enable supports in your slicer (Cura, PrusaSlicer, etc.). "Tree Supports" or "Organic Supports" are highly recommended as they will be easier to remove from the "root" texture of the arms.


2) Scale: The model is unitless but designed roughly in millimeters. If it imports too small, scale it up by 1000% or to your desired height (e.g., 100mm - 150mm tall).


3) Resolution: I set $fn = 40 for faster previewing. For the final export to STL, change the top line to $fn = 100; to make the spheres (head and joints) perfectly smooth.





DOME MODEL

Virgil Velasco made a simple drawing of the part he wanted, and almost immediately we 3D printed that part at Quelab on December 3rd, 2025, bringing it into the physical world.  We first uploaded that drawing into GEMINI 3 and it wrote OpenScad code that generated an STL file for 3D printing:

GEMINI 3 realized a drawing 
into a 3D print

The STL file generated in OpenScad

This was phenomenal! Gemini 3 might translate more complex drawings into STL files to be 3D printed...if not yet, then perhaps soon.


No comments:

Post a Comment

Note: only a member of this blog may post a comment.