This version is vastly better than the previous version. Almost all letter combinations make viable blocks with this version.
This is a 3D ambigram made of letter blocks that are each shaped like three different letters when viewed from three orthogonal viewpoints. You can create your own with the customizer using UPPERCASE letters, numbers, a space character, or any of the special characters: $&<>*+@/\♥♠♦♣♪♫♀♂←→π.
Dual Letter Mode
Although you can leave the third string blank to create dual letter blocks, unless you're using soluble supports you might want to instead use the customizer in my Customizable Dual Letter Blocks Illusion because the letters there don't have as severe overhangs and the J and M don't require supports like they do with the font used in this thing.
Using the customizer
If the order of the words in your model matter, the words flow more naturally if the model needs to be rotated along only a single axis to get to the next word. So a good rule to follow is if the top letters are aligned to the left face, you should put the first word on the top so that you read from the top, then down, then right. And if the letters are aligned to the right face then you should put the last word on the top so that you read from the left, then right, then up. See the picture of the FEED YOUR MIND models for an illustration of this principle. There's also an STL included with two left-aligned models - one that follows the rule with the first word on the top and the other that doesn't follow the rule with the last word on the top. You can spin it around in Thingiview to see the difference it makes.
The orientation of the letters in relation to each other is important and most letter triplets have a best orientation. There are six permutations for placing the letters on the block faces and since the top letter can be aligned with either the left facing letter or the right facing letter, that doubles the number of ways that a block can be made with the 3 letters. These can be represented as:
LRTᴸ, LTᴸR, RLTᴸ, RTᴸL, TᴸLR, TᴸRL,
LRTᴿ, LTᴿR, RLTᴿ, RTᴿL, TᴿLR, TᴿRL
where L is the left face, R is the right face, Tᴸ is the top face aligned with the left, and Tᴿ is the top face aligned with the right. See the GEB 12 model for an example showing all 12 permutations.
Most letter triplets are compatible, but some letter combinations might not make a viable block. An "L" and a "T" are probably the least compatible letter pair because an "L" has material only on the left and bottom and a "T" has material only on the center and top. Even so, they still can make viable blocks with every letter for the third letter depending on how they're oriented. If the "L" is the left letter and the "T" is the top letter and is aligned to the right letter every letter chosen as the right letter makes a viable block. The L/T letters make viable blocks with some of the letters in other orientations as well.
The customizer app has an option to generate six permutations at once so that you can more easily find the best orientation. Try it first with your preferred orientation without generating the six permutations and if you don't like the results run it again and generate the six permutations. If you're still not satisfied with any of the models then generate the six permutations with the top letter aligned to the other face. If your words (or names) are several letters long the customizer may take 10 or 15 minutes to run when it's generating all six permutations.
You can't tell from the preview which blocks are viable because even viable blocks look messed up in the preview, so you'll have to create your thing to examine the blocks, or render it if you're running it locally with OpenSCAD. Note that although there may be bits floating in the air which will make it look like a block isn't viable, sometimes those bits aren't necessary and could be removed. Slic3r has a "split" feature which can be used to remove those bits.
Printing with supports
Not all letters require support, so you might be able to get away without supports if you don't use any of the letters C,G,M or S. Those letters absolutely require support. The letters E,F,I,J,P,T, and Z should also have supports, but they can be printed without if you don't mind clipping and sanding the messy first several layers of the unsupported areas where supports should be used. Of course, the letters on the other faces will affect the practicability of printing without supports so if those letters are paired up with another letter that should have supports then it's probably not going to turn out well without supports.
If your model does need supports, you'll probably want to use soluble supports if that's an option available to you. If your model has a non-zero base, it will require support structures on the model itself and not just on the build plate only. If soluble supports isn't an option, you might want to print the letters separate from the base and use Cura's tree support structure. It's still experimental and is glitchy, but I have had good success with it: whenever it generates messed up structures I just move the model and then moved it back and get it to regenerate. Alternatively, you could use regular linear supports but rotate the letter block up to 45°.
If you're not using soluble supports, before you try to print the entire model you may want examine the model to find the letter block with the most difficult supports and then print a test of that letter block to help tune your support settings.
If you're not going to paint it, printing with white filament would be a good idea since all scars from the support structure will be white no matter what color filament you use, but the scars won't be visible with white filament. Lighter colors leave less visible scars than darker colors.
If you're using soluble supports, you might want to use black filament or another dark color to reduce the visibility of shadows.
I recreated and included the few rare models which I had found were viable in the previous version: "I♥U MOM", "I♥U MUM", "GOOD LUCK GRAD", "GOOD LUCK BABE" and "GOOD LUCK DUDE". If you want one of these, you might want to print the model from that version (Customizable Triple Letter Blocks Illusion) instead of the one here.
I've also included a several additional ready-to-print models to show what the customizer is capable of creating. The "BEST EVER DAD♥" and "I♥U DAD" models might make good gifts for Father's Day and the "BEST EVER MOM♥" model might make a good gift for Mother's Day. The "I LOVE YOU ♥FOREVER♥ SEND NUDES" model is just my attempt at propagating a popular meme and I thought I'd throw in the "MARVEL AVENGERS ENDGAME" model since I had tested the viability of it out of curiosity anyways.
The "GEB" model is inspired by the cover art for the book "Gödel, Escher, Bach: an Eternal Golden Braid" by Douglas Hofstadter, which is where I first saw a triple letter block 40 years ago and which is the inspiration for this creation. Besides the two large blocks oriented as in the book cover, it also shows all 12 permutations for the letter block.
The "TRIPLE" model is just a representative model where all three words are the same. All letters and other characters except for /,\,♀, or ♂ can be used to create a model like this with all three faces having the same characters.
The font used is Rubik Mono One from the Google Fonts repository. The choice was very limited as it had to be available to the customizer, it had to be monospaced, and the Q had to be distinguishable from an O with the descender portion cut off. The previous version used Overpass Mono Bold but it was ill-suited for the task due to the skinny letters which made it almost impossible to find models with all viable blocks. The chunky Rubik Mono One font is almost perfect for the task and the fact that it has rounded corners makes it even better. However, it doesn't have glyphs for any of the special characters, so the code falls back to using the Overpass Mono Bold for those characters.
If you are running the code on your own machine using OpenSCAD, you will need to install the Rubik Mono One font on your system. It is available at:
And if you want to use any of the special characters you will also need to install the Overpass Mono Bold. It is available at: