How to 3D Print More Realistic Consumer Product Prototypes

We discuss the 4 levels of 3D printed prototype realism all Industrial Designers should know about, and show you step-by-step how to reach each one!

  1. Step 1: Overview

    [A video version of this tutorial is available here.]

    This is a follow-up to my previous how-to-print-consumer-goods tutorial, but you don't have to read that tutorial to understand this one.

    In fact, I've learned a lot since printing those cellphones, so I'm going to clarify those previous ideas and give you a complete, end-to-end guide on how to design, print, and post-process your own Consumer Goods prototypes.

    We'll cover how to make:

    • Low-res (but very useful!) FDM prototypes for initial sizing
    • Multi-material prototypes for touch and feel
    • Prototypes in the exact color you want, and
    • How to make your prototypes EXTRA realistic, with some sneaky final touches!

    Just like before, let's put ourselves in the shoes of a small, fast-moving, Industrial Design team trying to iterate and pitch a new product. This time, we're going to ask ourselves:

    Just like before, our goal isn't to get a 100% working prototype we can ship to a customer, but a realistic enough model to simply PITCH this new product to decision makers and focus groups.

    And we want to do it FAST.

    I've got a few game systems at home, so I'll use them for inspiration. At the end of all this, we want a 3D printed prototype that looks and feels somewhat comparable to this:

    So first, let's start with a simple sizing model.

  2. Step 2: REALISM LEVEL 1: SIZE and SHAPE

    I design mostly in SOLIDWORKS, so I spent an 1 hour in CAD and came up with this:

    While I love SOLIDWORKS and it's great for creating precise, machined shapes, using it to create smooth organic designs like a video game controller takes a lot of work.

    So while I should have used 5-10 Lofts and Boundary Surfaces and Knits to make my model all swoopy and ergonomic, I didn't. I just made two simple bodies, did a common intersection of both to get the overall shape, and then filleted it.

    And while it may LOOK good on a computer screen (sort of like controllers I used as a kid), even making a simple, cheap FDM print tells you right away that it:

    But there is a great plug-in for SOLIDWORKS called "Power Surfacing" which allows you to do sub-divisional, push-pull modelling very easily. And THEN use all the precise, history-based mechanical engineering features SOLIDWORKS offers after that.

    So I downloaded a free trial of Power Surfacing, and spent about 5 MINUTES Sub-D modeling, which looked like this:

    You can add more faces, push and pull and expand your model in all three directions, I really can't say enough about how easy the Power Surfacing plug-in made the process of making this smooth organic shape!

    And afterwards, I could use all my normal SOLIDWORKS features to add the buttons and machined faces:

    (For industrial designers who mainly use Rhino, or Zbrush, or 3DSMax, you're probably laughing at how amazed I am about getting this smooth sub-d shape so easily. I know it's easier in those programs, but I and half my readers are coming from SOLIDWORKS, so it's worth covering.)

    And lo and behold, using a smooth, blended, ergonomic Sub-D shape resulted in a MUCH better model out of our FDM machine:

    But my point here isn't just to praise Power Surfacing (although if I was working at an ID firm that primarily used SOLIDWORKS, I would totally buy a license).

    My point is to notice how useful even quick, cheap, FDM sizing prints are. Most people wouldn't think of a rough, single color FDM model as being "realistic", but they helped me make big design decisions early, which is what matters.

    In fact, I didn't print these models in a sequence, I actually printed them both on the same tray at the same time, so I could get the feedback at once:

    This is Stage 1 of 3D printed realism, where we're just trying to figure out what SIZE and SHAPE our design should be.

    (Those that read my cellphone tutorial remember that at this stage, I printed a lot of FDM models, some at 10% larger than my original design, some 10% smaller, some with a key dimension changed, just to make sure I had the right size. I would have done the same here, but my first attempt with the Power Surfacing model felt REALLY nice in my hands.)

    At this stage, all we want to do is get a quick, comparative feedback about if our design has the right envelope:

    Does it feel right in the hands?

    Is it GENERALLY the right size and shape to get the job done?

    Any decent FDM printer will get the job done here, and on the F370 in my office, this print took about 6 hours, so by the end of MY FIRST DAY on this project, I had a great idea of what the overall shape and size my game controller should be.

    But we can make things even more realistic.

    So let's move on to:

  3. Step 3: REALISM LEVEL 2: FEEL

    Now I want the hard parts of my model to be hard and the soft parts of my model to be soft, to approximate the feel of a controller with functioning buttons and overmolding.

    So we're going to move over to my lab's Polyjet machines so I can print multiple materials into the same model at once.

    From my previous tutorial, here are our material choices:

    And from this helpful website, here is the Shore Hardness scale compared to common objects, in case you haven't memorized it:

    So using our Stratasys J750, my general plan is to choose soft Agilus Black for my buttons and hard Vero White for my controller body:

    And because of the way I designed my part in SOLIDWORKS (with multiple separate bodies), it's easy to assign those different materials in GrabCAD Print:

    But WAIT-

    Why don't we test these buttons to see how stiff they are with a short 1 hour print BEFORE we commit to a long, expensive, 5 hour multi-material print? (This is a good sanity check to do if you haven't printed a lot in Agilus before, which is my situation.)

    So I printed this tray instead:

    This may look like a lot of redundancy, but I was actually testing a lot of different ideas in this small job:

    My hypothesis was that leaving different parts of the buttons hollow would be a sneaky way to make the Shore 30A feel harder or softer at my command, and it totally did!

    (And I could have tested even MORE button configurations in that 1 hour- there was still room left on my tray! But I was trying to get this test and the Level 2 controller printed in the same day, so all I compared were solid Agilus buttons versus a 1mm shell, a 2 mm shell, and cantilever (unsupported) buttons.)

    As I proved in my last tutorial, you don't need to have any special "interlocks" between Agilus and Vero bodies, because the natural bonding during the polyjet process will hold even face-to-face bodies together stronger than super-glue:

    So after 1 hour, I pulled my prints from the machine and found:

    And here's my finger squishing the solid rock vs the 1 mm thickness supported shell, to try and show the difference visually:

    Notice from the rear view, you can see the white support material grid still on the back of our unsupported buttons. In our 1mm shell, that same support grid will be INSIDE our Agilus button and stay there for the entire life of the model- and that's okay!

    That support grid trapped inside our Agilus shell (orange faces) is what gives me the 'squish' I'm looking for to simulate these buttons.

    (This is a trick I learned from our medical modeling team- that it's okay to use the support grid as a seventh J750 material sometimes, if you capture it inside something sealed that has to feel soft. No guarantees on the long-term survive-ability of this captured support material, but for our prototyping purposes, it will last long enough!)

    Of course, you'll want to dial in different levels of squish for different models you're making, and I'll give you a guide to do so at the end of this section. But the point is, I tested 13 different button squishinesses in one morning, and could have tested a lot more!

    It's also interesting to compare our printed test to the real pieces we're trying to simulate. I bought some supplies from a game controller repair place, this is what's inside those buttons we're trying to match:

    So we're printing a 1mm shell of Agilus over some support material, surrounded by hard Vero plastic. But in real life, it's hard, hollow plastic buttons over rubber springs that are less than 1 mm thickness IN TOTAL. So it's not going to be a 1:1 match.

    If this level of realism is really important to you, you can definitely spend more time here, modeling the actual spring geometry, trying more button tests, but I actually got a nice feel with my hollow buttons, and we've got a pitch deadline looming.

    So I went ahead and printed it:

    For future reference, here are the dimensions of the buttons we tried, going from hardest to softest:

    This is a Level 2 Realism model, which is getting a realistic FEEL. Now the hard parts of my model feel hard, and the soft parts soft. This may seem like a small thing, but actually makes a HUGE difference to the realism of your model, especially if you're prototyping high-end consumer goods that have to feel expensive.

    (A little softness goes a long way in kitchen goods, electronics cases, toys and luxury goods.)

    Again, I could have kept iterating here, adding a rubber overmolding and trying to simulate those <1mm springs, but all I'm looking for at Level 2 is, when I hand the model to my co-workers, is for them to say "Cool! I see what you were going for!"

    And that's exactly what happened:

    So by the end of just my SECOND DAY on this project, I've got a model that's the right size and shape, and now feels close enough to a real controller that the essence of the design comes through.

    But before we move on to an even higher level of realism, I want to take a short detour that will save you TONS of time with your future 3D printed consumer goods prototypes:

  4. Step 4: Interlude: Modular designs

    This is not a new idea in 3D printing, but I recently re-learned it from a local architectural customer I met at AMUG.

    (FYI, AMUG is the one of the best places in the world to learn lots of tips like this in 1 jam-packed week.)

    What this architectural firm was doing, was instead of re-printing their ENTIRE building model each time a customer wanted to see a slightly different color, they would print the CORE of the building in white, and then print snap-on MODULAR panels in all the different colors they wanted to test, and change them out like a Mr. Potato Head.

    Not only did this make their prints faster (flat snap-on panels print a LOT faster than bulky building shapes), but it would make their prints INFINITELY variable, meaning they could mix and match the colors at will!

    So I did the same with my print:

    (You'll see that this saved me TONS of time in the next section, letting me test many different color combinations in minutes! And eagle-eyed readers will notice that I used it in the previous picture with Gerald and Phil, to give them different versions to test as well.)

    There are many ways to prepare your 3D file for Modular printing, but I used the Copy, Shell and Split features in SOLIDWORKS:

    Because we made a copy of the top and bottom shells in the last step and subtracted THOSE from our original body, we have a perfect, face-to-face fit between our three parts. That looks good on a computer screen, but we have to put in some tolerance to allow for printer accuracy.

    What should that tolerance be?

    If I was FDM printing, my starting point is always one layer height's worth of gap between any mating surfaces.

    So if I was printing at 0.010" layer height on our F123 series, I would start at a 0.010" gap for a very tight (maybe even sanding required) fit between sliding surfaces, and go up from there.

    But does that rule hold true for polyjet printing?

    Having no other guideline, that's what I used.

    Here's a quick refresher on layer heights in FDM vs PJ printing:

    I was printing in High Mix mode on my J750, so I left 0.027 mm (27 microns) between my parts, especially where the button pillars come through the top from the common core:

    (You can see the above model was from before I started hollowing the buttons out for feel. I was testing this idea even before I printed in Agilus in Level 2.)

    So did it work?

    Oh yeah:

    The actual hardest part was making sure I had removed all the support material from the insides of the top and bottom, since even a thin film of support was more than the tolerance I put in!

    The bottom didn't hold on super tightly, but the top did, due to the fit around the button pillars, and you can see how tightly the top is attached, since I have to work it all around the edges to get it off:

    So after feeling that, 0.027mm is going to be my default polyjet tolerance from here on out, if I'm printing in High Mix mode!

    Now we're ready to make our model even MORE realistic, moving on to:


    At this level, we're trying to get the color close to what our real model might look like.

    If you remember from my last tutorial, 2D printers use 4 colors on white paper to get their color gamut, while the J750 has 6 addressable heads:

    So what can we do with those 6 heads?

    Well, if you read my earlier tutorial on texturing parts in SOLIDWORKS, you know that we can easily add "bumpy" 3D textures to our models that print really well, so I printed one of those in a simple deep black, like controllers usually are:

    And then I decided to make the textured part orange, because why not:

    But THEN I took that part into Rhino, applied a random image ON TOP of that bumpy 3D texture:

    That was printed with our new Vivid Colors, which is why the red really pops.

    And the crazy thing about it, since the J750 has 6 heads with 6 different materials, if you're smart on your material mix:

    To repeat, if you choose the right materials to load on your J750, you could have printed all three of those tops, and even the Agilus button core on the SAME TRAY, AT THE SAME TIME.

    This really opens up some possibilities.

    I also automatically generated a "Voronoi" pattern with the Grasshopper plug-in to Rhino:

    And then I took that Voronoi pattern into Rhino and put a 'galaxy' texture on it to get:

    One year ago, I never thought I'd be 3D printing stuff like this, this fast.

    (And if you're wondering how YOU can use Rhino + Grasshopper to generate complex, semi-random Voronoi lattices starting from ANY CAD shape, read my EXPERT level tutorial on printing Voronoi structures here.)

    Because these were getting so easy, I actually started running OUT of color ideas to print. Thanks to modular printing, I wasn't used to being able to try out so many color studies in such short a period of time!

    I mean, I got all these models done in just 2 DAYS:

    We're literally getting to a point where I could print more color studies in one WEEK than a team of designers used to be able to make in a MONTH.

    And now that the J750 is verified to match some Pantone colors, I could even have chosen more accurate colors, right from my physical swatches:

    (And if you want tips on how to make the color on your screen match what comes out of the printer for NON-Pantone parts, you can read my detailed color proofing tutorial here.)

    The point is, there are a LOT of choices we can make here. (And since we have a modular core, the choices are easy to switch between!)

    This is Realism Level 3, getting the model to the right COLOR you want to show off to your client.

    You can match colors from a physical sample, from a Pantone book, apply colors from images and other textures you have, and try out so many options, your client will think you've spent MONTHS preparing!

    A lot of design houses I meet have to hand paint their models to get to this level, but if you're looking for a final color sign off, with accurate logos, stickers, buttons and displays WITHOUT hours and hours of hand painting, this is how you get there.

    We're almost done, but if you remember my 'inspiration' picture from the beginning of this tutorial, my controllers at home had a certain 'glow' about them. A certain way they 'shone'.

    So we've got to move even higher, up to:


    Now we're moving past the realm of 3D printing and into prop making, like a movie studio might do.

    If we wanted our model to have a realistic WEIGHT, we might glue pennies or lead weights to hollow spaces inside to add mass.

    In my case, since polyjet material is about 20% more dense than water, my controller model was actually too HEAVY, so I added weight-reducing pockets to my common core:

    Magnets also solve some of your level 4 issues, by sometimes simulating SNAP FITS or CONNECTORS. As you can see from above, my idea was to super glue a set of 8mm x 3mm neodyminium magnets to my bottom and my core, since they kept separating.

    But I only ended up needing a magnet on the bottom, since the friction fit of the 8mm diameter magnet with the (8 + 0.027) mm hole in the common core was enough to keep the bottom attached!

    At this stage you can also simulate SHININESS, and every model I print with a transparent Vero Clear section also gets wet-sanded and a spray paint of clear coat, since that makes a big difference.

    From my earlier tutorial on clear + textures:

    But the BIGGEST thing I'm going to try and do now (and I still can't believe that this worked) was to simulate INTERNAL LIGHTS by buying these tiny little $4 LEDs from

    And then, if you print your common core in transparent Vero Clear, slip one of those LEDs inside a little pocket you cut inside it and apply the previous Voronoi top, you get:

    I mean, that's SO CLOSE to the controller I started from, in look, weight, and even internal GLOW, that I'm still amazed at how well it worked out! I mean, come on:

    You can spend days and days of your time putting those last Level 4 touches on your model, but one final, insider tip on how to prepare your model for maximum realism is- have you ever noticed how sticky Agilus Black is?

    Like, it's tacky enough that I can even get these test parts to stick to my finger off the table:


    So if you HAVE to get your 3D printed prototypes AS REALISTIC as possible, and you don't want them to be STICKIER than the real thing should be, I offer you a solution:

    No, I'm not kidding.

    Buy some corn starch and a fine painter's brush, and brush a THIN layer of corn starch onto your Agilus printed surfaces. This is actually me doing that with some of my wife's art supplies, to make my controller buttons less sticky:

    If you only use a THIN layer of dry corn starch (and brush it clean with the same brush afterwards) it doesn't change the color of Agilus black much, and makes them a LOT less sticky right out of gate.

    Okay, that's enough of that. Realism Levels 1-3 are pretty easy to get through if you have the right 3D printer, but if you want to learn more about Realism Level 4, go buy a few books on movie and theater prop design (like I recently did) for more tips like that!

    Now let's wrap everything up!

  7. Step 7: Final Wrap-up

    3D printing is not magic.

    It's not a one-stop, fire-and-forget solution to making a 100% realistic, product prototype on your first attempt.

    But what I've hope I've shown in this tutorial is that there are STAGES to how realistic your 3D printed models can get, each with increasing time and effort:

    And I hope I've given you enough information to make the most out of every level you're in.

    We've talked about why Level 1 sizing prints are very important (a lot of BIG product decisions happen here).

    We talked about how to make your Level 2 buttons FEEL harder or softer as you need to (with just ONE morning of testing).

    We've talked about how to color match at Level 3 (with Pantones or without).

    And finally, if you want the most realistic models possible, we've talked about how to look past just 3D printing to use weight, shine, light and prop-making tricks in Level 4.

    The last thing I want to point out is that, with modern, multi-material printers, you can climb up these levels a lot faster than you might think. All told, it took me just a week going from having no concept to having a Level 4 prototype I could confidently show anyone:

    And I'm not even a very good Industrial Designer.

    In Summary: prototypes will never be perfect. 3D prints will never be 100% realistic.

    But the entire point of rapid prototyping is to get approval for a concept, so we have to ask ourselves:

    And I hope your answer is yes.

    If you want any more information on anything I did, always feel free to ask me, at

    And if you want to learn more about the affordable, FULL-color printers used to make these models that can sit right next to you in your office and churn out models, check out our new J55 printer at this link.