Dice Designer Week 1 Project Update

Samuel Cohen
5 min readJul 29, 2020

--

My name is Samuel Cohen and this is how I single-handedly designed, developed, and launched a website where you can customize a die and have it 3D printed in 30 days. Below is a project update post. If you wish to read more about the project, the landing page is here.

This is the first project update post for my month-long project. This week I focused on creating the basis for the designer and confirming that I could create the project.

What I Accomplished in Week 1

  • Created a Dice Model in Blender
  • Created Color Customizer in Javascript
  • Created a 3D Model to be Printed
  • Created an LLC
  • Bought a Domain from Squarespace
  • Week 1 Overview Documentation and Landing Page

In-Depth Details

Blender Dice Model

In order to create a color customizer, I needed to create a model that had individual sections with colors. I ended up choosing Blender for this because it allows the right type of file export.

Die Faces in Illustrator
Die Model in Blender

By using SVGs created in Adobe Illustrator I was able to create the die and its faces. If you are interested in an in-depth explanation you can read this post here.

The Adobe Illustrator post is here and the Blender post is here.

Color Customizer

I created the color customizer in Javascript using a library called ThreeJS. I used this library because it worked well for web-applications and I could create a visual component for my project.

Color Customizer

By using the model created in Blender I could customize colors and had the basis for my product. If you are interested in an in-depth explanation you can read the post here.

The color customizer post is here.

3D Printable Model

I created the printable model in a program called Fusion 360. I used this program because I was familiar with it and it is easy to create a model that prints well.

3D Printable Model

By using fusion 360 I could save different versions of the model and try different ways of printing. If you are interested in an in-depth explanation you can read the post here.

The Fusion 360 post is here.

Forming an LLC

I formed an LLC because I wanted to create a small company with only one person. It is also quite easy to file to form a company this way.

If you want more in-depth details into forming a company you can read the post here.

The forming a business post is here.

Buying a Domain

I chose to buy a domain from Squarespace because I initially wanted to build my site there. I worked on finishing my designer this week before porting everything else over.

If you want more in-depth details about starting an E-commerce store, you can read the post here.

The WooCommerce setup post is here.

Obstacles This Week(Technical)

Handling SVG Files in Blender

When I started creating the dice model in Blender, I had assumed that you could draw circles and dots. However, Blender focuses more on arranging pre-made 2D assets instead of creating new ones. In order to import something like a circle, you have to create an SVG.

In order to create the dots, I had to find SVG images of all six faces. On Wikipedia, you can find many SVG images of dice faces. However, most of them do not import correctly due to how they were created.

When importing an SVG to create a 3D model, you must convert the dots to something called a mesh. Then you can make the dots three-dimensions. Sometimes when you import an SVG, it gives you an error and only shows some lines, where your dice face should be.

In the end, I was able to find images that worked with only some glitches. I will fix this later on by creating my own SVGs.

CORS

When creating my designer program I tried to host my files on different websites, and always ran into errors. After all of my attempts failed I was able to figure out that it was caused by something called CORS. CORS means Cross-Reference Resource Sharing and is the function that determines how websites interact with each other.

CORS main purpose is to prevent someone from creating a simple website that downloads a file hundred or thousands of times in order to cost the file-hoster money. Each time I file is downloaded from a service like AWS, the file-hoster is charged.

After trying many different fixes for this problem, I eventually found a solution in hosting the files on the same website I was working from. Since I had the files and program on my website, I wouldn’t have to access any other resource. From that point, I was able to work on my dice model and create a functioning prototype. I finished a basic version of the program and will polish it later on.

What I Learned

Technical

  • How to Use Blender
  • How to Use the ThreeJS Library
  • How to Handle SVG Files
  • How to Deal with CORS

Business

  • Forming an LLC
  • Buying and Setting up E-Commerce Features on a Domain

Summary

This week was certainly challenging. As I type this I’m sitting in a pile of failed 3D prints. I was nervous at the start of this week that I wouldn’t be able to create the color customizer at all. I’m glad I proved myself wrong.

Every company starts with a cobbled-together solution that you should be embarrassed to show off. Well, I certainly feel that way about my unpolished mess.

Now that week one is finished I’m ready to move into week 2.

Check Out the Website at www.dicedesigner.com.

Back to Landing Page

--

--

Samuel Cohen

I am a guy from Pittsburgh that is passionate about 3D printing and history. I went from coding projects and consulting in school right into the startup world.