navigation

3D printable Lego typeface

Writting with Lego have been something I've been interested for a while, my 3D printer push me to go further
notion image
I have been fan of Lego and pixel art since my childwood so I decided to create a Lego wall in my DigitasLBi Labs office. Then we started making pixel art using small bricks. I set this wall as an open canvas where everybody could create, I started with Mario Bross and then Bomberman appear with bob the sponge, space invaders, etc. And yes I also made a Lego Qr-Code :-)… Later people used the wall to display messages or font based logo. Design text message using Lego is quite chanlenging and you often end up with a deceptive result. That’s where the idea of creating some “Lego” brick fontface came.
notion image

THE FIRST POC

I started designing “Lego” chars by hand using 123Design but that rapidly became a nigthmare because a Lego brick is quite complexe. I also wanted to be abble to generate all font char at once. But a least I had a first working POC:
notion image
notion image
notion image

SEEKING FOR THE RIGHT TOOL

After exploring different 3D software and CAD tools I finally discovered an opensource 3D CAD software named OpenScad. That was exactly what I was looking for, it’s a programing language capable of generating 3D model using simple 3D shape and boolean operation. You can easely create whatever you want. You can also use a lot of differents library developped by the community. The amazing part of this tools is his ability to generate 3D model dynamicaly. For my needs I have create a script capable of generating all the parts of a brick. After that it looks like this to generate A,B and C chars:
renderBrick() Letter("A"); renderBrick() Letter("B"); renderBrick() Letter("C");
That’s usefull but you still need some manual work to generate the full set of chars of the font. An other great part of OpenScad is his CLI ability. Using Bash script you can call your OpenScad script with a set of parameters in my case I was abble to pass a list of chars and a font ID to generate all chars from a font.
string=${2} array=(${string//,/ }) for i in "${!array[@]}" do echo -e "generating: \033[35m"${array[i]}"\033[0m" openscad -o output/${3}-${fontArray[${3}]}/CHAR/${array[i]}.stl -D debug_mode=false -D fontID=${3} -D 'letter="'${array[i]}'"' bricks_gen.scad
I now have a fully configurable bash script capable of generating a full set of chars
notion image

USING EXISTING FONT-FACE

Using any existing font is a great source of creativity, thanks to my OpenScad script I was abble to generate any font but I wanted to generate bricks that fit prefectly with Lego sizes and constraints. Chars width & heigth need to be proportional to the lego knobs spacing. That’s where I starded design two font face “Brick font” and “Brickolage”.

Long Shot

notion image
notion image
notion image

Phosphate

notion image
notion image
notion image

Birds of paradise

notion image
notion image
notion image

CREATING A “LEGO” FONT-FACE

3X5 FONT NAMED BRICKFONT

notion image
notion image
notion image

4X8 FONT BRICKOLAGE

notion image
notion image
notion image

3D PRINTING CHALENGES

notion image
Once designed and generated chars have to be printed. This pieces seamms easy to printed at the first tougth but I faced a lot of issues with bridging and overall quality. After a lot of different seettings and software I finaly been abble to print acceptable quality using Simplify 3D.

CREATIONS

This technic of generating brick from font inspired me to create some motivationnal posters, doors sign for my kids and message for the office.
La vie est belle
notion image
La vie est belle
notion image
Non smoking area
notion image
All you need is...
notion image
Kids door sign
notion image
All you need is love
notion image
Stay young and play Lego derivated from my Stay Young poster.
notion image
I’m still exploring what to do with this, any ideas or maybe you want a custom font or a door sign ? feel free to ask.
badge