How to 3D Print Full-Color, Fully-Textured DISPLACEMENT Mapped Parts Using Photoshop!
This tutorial covers a little-known feature in Photoshop you can use (today) to quickly create incredibly complex displacement-mapped parts for your 3D printer in full color!
Step 1: What You'll Need to Get Started
We've previously learned how to do general displacement mapping on ALL sides of a part in Rhino, but to do displacement mapping on a SPECIFIC region of a model, leaving the rest unchanged, you'll have to use a more precise tool, like Photoshop.
And since I'm a fan of a certain long-running HBO series coming back for its final season in 2019, I'm going to use a map from that show as our example today.
What you'll need to follow along are:
On the starting image, you want something with a good contrast between light and dark. Maps work REALLY GREAT for displacement mapping because the areas you want to be the flattest are always blue (dark) and the areas you usually want to be raised are usually green, tan or white (light), the lighter colors corresponding to increasing height (snow-capped mountains).
On the STL, a simple shape works best for your first time, just some rectangular plate or coaster.
As we said before, a lot of softwares can do displacement mapping (Rhino, Photoshop, and now, SOLIDWORKS 2019) but for the most precision and full-color support, we're using Photoshop today.
And finally, you don't HAVE to use a J750 to print, the resulting VRML can theoretically be imported into any type of printer, but for a full-color, fully-textured result, you'll need a full multi-color machine like the J750.
This entire example came out of something we regularly teach in our J750 advanced color class, so if you would like to see a VIDEO of this tutorial instead of reading words, you can watch the 14 min video version here.
Let's get started.
Step 2: Putting a Color Texture on Your Part
The first step is to open a new Photoshop document (it doesn't really matter how big it is) and insert your 3D object as a layer:
If you want more details on how to do that, you might read my earlier tutorial here.
Next, we're going to click on a button that doesn't really have a name. I call it the "See my UV Mapping" button in Photoshop, but it's in the Layers toolbar, right inside the 3D layer we just created, under "Diffuse":
"Diffuse" is just Photoshop talk for the base coloring your 3D part will have, and when you double click on that button, another window should open up, showing how your part would look if we skinned it with a very sharp knife and laid the skin out flat on a table (also called the UV mapping):
In that new window, use the command "File... Place Embedded..." to add your texture (a satellite image of Westeros in my case):
Align the image using all your normal Photoshop tools (you can even put different images on different layers, using Ctrl+T to 'Transform' their size or rotation later). And if you save the UV map window and click back to your main part window, you will notice the new textures there!
But that's just a flat texture on a flat part. The hard part is coming up next.
Step 3: Photoshop's "Generate Bump from Diffuse"
Now we're going to tell Photoshop to make a displacement (bump) map from the colors we've just applied. To do this we have to see the 'Properties' of your 3D part. Do that from your 3D toolbar:
In the new Properties window, under the "Bump" row you should see a little folder icon you can click to "Generate Bumps from Diffuse":
The "Generate Bumps from Diffuse" command will create two things. First, a preview of your bump map on a generic shape which is only sorta useful:
Let's take a closer look at the bump map. All displacement mapping happens in grayscale, on a linear axis between light and dark (just like Game of Thrones). The closer to dark something is, the flatter it will be in the final print. The closer to the light, the higher (normally).
This is why maps work so well – we always want the oceans to be flat and the snow-capped mountains tall.
Since this is Photoshop, you could also EDIT the bump map here, adding white or dark sections to change the final printed depth (we'll do this later).
One Pro Tip: if you're 3D printing color bump-mapped photos of your smiling family, that works pretty well, except that you usually have to darken people's teeth here in the bump map, or their (normally) white teeth will be VERY elevated in the final print, almost jumping out of their faces!
But even with all this, the Photoshop model is still flat and smooth. We have to take the bump map we just made and tell Photoshop to actually morph and change our final model, before we send it to the printer.
That involves another hidden Photoshop button that doesn't have a name.
Step 4: The Button With No Name
To make sure you're ready to continue farther, what you should see in your Layers toolbar is one layer corresponding to the colors in your 3D part, and one corresponding to the black and white bump map you made:
As we said, you can edit them separately (and might need to).
Now, to apply the bump map (and export this part to your 3D printer), you go to your 3D menu, all the way down to the bottom, to a command called "3D print settings":
This will open up yet another Properties menu on your right, where you can choose what printer you're exporting to:
In this menu you can also "Scale to Print Volume" which will make the part the MAXIMUM POSSIBLE size that can fit on a J750 tray (not recommended) and also change your linear 0 to 1 dark-light scale.
For example, if you wanted your dark sections to actually PUSH INTO the model, you would change your Min from 0 to -0.5 or -1.0 or something, and if you wanted your white sections to extend less from your original model, change your Max to 0.7 or 0.5 or something. This part takes a little trial an error.
FINALLY, when you've made all your changes and are ready to generate your VRML, you can hit the button with no name:
I call this the "Get My Print File Ready" button even though it has some nominal name when you hover over it (Start Print?). It's a very small, well-hidden button you will ALWAYS forget to hit if you haven't done this in a while, which is why I'm making such a big deal about it now so you remember it later.
After you hit 'the button with no name', Photoshop churns for a bit and then you get a preview of your final print:
This is where you can rotate, zoom and check out the probable result – look at that displacement mapping: the borders and mountains and landmasses are raised, the oceans flat, exactly what I wanted!
When you hit "Export" on this preview screen, it saves a VRML file (if you chose a J750 earlier) and now you can finally do the fun part: Print.
Step 5: Printing Your Model
Now you can drop your parts into GrabCAD Print:
And after a few hours you'll have your print!
This is a print that came out really well on the first draft, you can really FEEL the land vs. ocean, and the huge glacial north where the Wildings live:
And remember, I didn't model all those coastlines, and islands and mountains in some CAD system. Photoshop did all that for me – I just gave it a detailed image and all the depth and texture were generated for me, and that's the magic (and value) in displacement mapping!
All in all, I'm very happy with how this came out using the default settings in Photoshop, a scale of Min =0 and Max =1 worked great. But if you want to change the final heights of your bump map in some way, let's see how to do that back in Photoshop.
Step 6: Editing your Bump Map
Let's say I wanted to add an actual Ice Wall separating the Wildings (and other things) in the north from the rest of Westeros.
Again, I'm not going to actually model that shape in 3D CAD somewhere (although I could, with a lot of effort) but instead I'm going to change the black and white bump map we made. To get there, go back to Photoshop and click on the same bump layer we did before, and use any normal Photoshop tools to add white or dark sections to your bump map:
This is again a little of a trial-and-error process, because how white do you want to make your white sections? They way I have the colors right now, that ice wall would be the TALLEST thing on the map (because it's the whitest color), and if you export the file again, you see that happening:
So yeah, that ice wall is now the highest thing in all of Westeros. If I wanted to adjust that in a real print, I'd make my white brush line more and more gray until it was the height I wanted.
Final question to see if you're paying attention: why didn't the ice wall LOOK white on the tray? Why was it a stretched out mish-mash of the colors that were originally under it, and not white like my brush line?
Take a second.
If you said, "Because in Photoshop, the texture map and displacement (bump) map are two SEPARATE things" then you graduate from this tutorial! If you take away nothing else, remember that:
If we wanted the ice wall to LOOK white as well as be tall, we'd have to edit the Diffuse map.
I've done a topographic map, but all these same steps work with family photos, or more commonly, simulating leather textures, injection mold textures or even brick and architectural textures in your 3D prints!
Thanks to Stratasys Engineer David Yang who first suggested this project during a class:
And if you want to learn more about what the J750 can do, request more information here.
Let us know what type of thing you might want to see bump-mapped as a sequel (and no Game Of Thrones spoilers in the comments!)