Tiltbrush is a great 3D sketching tool by Google for the HTC Vive, it lets you "paint in 3D space with virtual reality. Your room is your canvas. Your palette is your imagination. The possibilities are endless." However it was never designed with 3D printing or manufacturing in mind, so taking your shapes into the physical world is tricky.
However, I've found a process that makes it easy using a few free pieces of software.
What You'll need:
- a PC
- HTC Vive
- Some kind of 3D printer -- I recommend using Shapeways for your 3D prints and targeting their "Strong & Flexible Plastic" material (which is SLS Nylon )
Once you have the software downloaded, go to the next step.
Step 1: Make Something in Tiltbrush and Export It As an .Obj File
Draw something awesome in Tiltbrush and export your creation as a .OBJ file.
For this tutorial I'm going to be using Jake the dog making pancakes provided by Brian Rose on Sketchfab and a robot provided by Darren Bacon. The Jake model happens to be in a FBX format, there's an app to convert FBX to OBJ if you need it but Tiltbrush should export directly to OBJ these days.
Step 2: Clean Up Your File in Meshlab
This step is optional, for some models you may need to clean them up. For Jake the dog I didn't do this step,
Open your file in Meshlab
- use the "Select Connected Components" tool in the toolbar to select anything you dont want to 3D print. In this model I'm deleting the floor. I toggled on "View>Orthographic" to make this easier.
- use the "Delete current faces and vertices" tool in the toolbar to delete those things.
- look at the bottom of the viewer to check your face count, if your mesh is over 200,000 faces you may want to reduce it using "Filter > Remeshing > Simplification: Quadratic Edge Collapse Decimation" usually you can just accept the default settings here and continue
- Export your mesh as an OBJ file once you're done
Step 3: Process Your File in Meshmixer
First open your Tiltbrush OBJ file in Meshmixer
You may want to go to View > Show Printer Bed and turn off the groundplane.
- Go to Edit > Transform and look for the size dimension thats the largest, in my case thats 2422mm
- Type in the maximum dimension you'd like to print your model at, I'm going with 150mm (6 in or so).
- This is an important step in the process. Since I'm targeting Shapeways Strong & Flexible Plastic I know that a 6x6x6 inch print is about 25$, so I'll go with that. If you're working with another 3D printing method check your minimum and maximum bounding boxes to determine a good size.
- Click anywhere in the 3D scene to update your models size , then accept the transformation.
- Bring the model back into view with View > Recenter view
- Recreate the model with Edit > Make Pattern
- for the options pick Pattern Type - Edges
- the element dimensions is an important step, for my material I'm targeting the minimum unsupported shape as described by Shapeways, 1mm , the smaller your choice here the longer it will take to remesh.
- optionally you can turn up the grid resolution but I would strongly advise against it. It will take a long time to process and you probably won't see any improvement.
- Accept the Make Pattern operation and wait a few moments/minutes.
This process results in pretty thin meshes, you may want to use the Sculpt tool with the Inflate brush, turn the size of the brush up, and give your whole model a once or twice over, especially anywhere that looks sort of thin. Alternatively, you might want to try scaling your model to 25% of your desired 3D print size, using 1mm for the element dimensions, and then scaling the result up by 200-400% so the wall thickness is closer to 4mm.
When you run this Make Pattern filter its finding every edge of every face and replacing it with a capped cylinder (see the purple cube image). Because Tiltbrush sketches are at life size scale, and we've scaled them down so far, all of the polygons are actually smaller than the cylinder diameters. And so Meshmixer resolves all of the cylinders overlapping into a solid surface. If your model is taking a really long time to process you might want to reduce the faces as described in step 2.
Step 4: Repair Your Mesh in Netfabb
Open your mesh in Netfabb
- Go to Extras > Repair Part
- Click Update
- You should see some red numbers pop up around Border Edges and Holes, hopefully no Invalid Orientations.
- Click Automatic Repair > Default Repair > Execute, then Update again and hopefully those problems have gone away.
- Apply Repair and Remove Old Part
- Part > Export Part > As STL
- at this point your file should be good-to-go.
Issues to look out for:
- Face Count:
If your triangle count is over 1,000,000 or your STL file is over 100MB you'll need to reduce the face count using Meshlab and the "Filter > Remeshing > Simplification: Quadratic Edge Collapse Decimation" filter.
- Loose Objects:
If you have any loose objects, like a blob hanging in space, or some part of your drawing that wasn't totally attached, you can use the process described in Step 2 to delete those. Or go back into Tiltbrush and make sure they're connected
- Failed Repairs:
If for some reason this Netfabb process failed you you can use Microsoft's 3D printing repair tool on the STL you exported from Netfabb, you can open the file Microsoft gives you in Meshmixer and export it back into an STL for printing.
Step 5: Print Your Model!
Now just 3d print your model as you normally would. I recommend using Shapeways, you can create an account, upload your model, and order it easily. If you followed the steps described you should end up with a 3D printable model. Shapeways does a number of automated checks to be sure your model is okay. If one of these fails you can view the issues and troubleshoot why that happened and either fix it on their website or go back to the beginning and solve it in Meshmixer.