Make easy custom buttons using Blender and Adobe Substance Painter

United States Olympic Team Uniform Brass sleeve button

In this tutorial I am going to show you how to easily model a custom brass button, texture it with a raised logo effect in Substance Painter, then register it as a new button in Clo3D. Blender is completely free and can be downloaded from You can get a 30-day trial license of Substance Painter at and a trial license of Clo3D at It is best to have a familiarity with Blender so I suggest you watch the beginner’s tutorials at– it’s where I learned and continue to learn from their excellent learning flows.

If you don’t have Painter or if you did and your trial expired, don’t worry, I will be posting another video showing how to do this using only Blender and Photoshop soon. I prefer this workflow but it’s totally possible to do it without Painter.

First, the video, then the notes. The written instructions are meant as a reference guide only, for full instructions it’s best to watch the whole video- if you have questions post them below or under the You Tube video and I’ll explain further.

These are the buttons we put on the 2016 United States Olympic team opening ceremony uniforms, and yes that’s me sketching and cutting and sewing these buttons on in the promo video.

Starting in Blender, we will model the button’s mesh and unwrap and export its UV map, then export the mesh as an obj file

A brass button modeled in Blender, UV unwrapped. ready for texturing

I created an alpha using Photoshop for use in the height channel of Painter. This can also be used as a displacement map in Clo- if you’re new to displacement maps, check out my post on them here

I created an alpha using Photoshop for use in the height channel of Painter. This can also be used as a displacement map in Clo.

Go to File-Import-Import resources and import the logo image file to your shelf, and define it as an alpha.

Create a new document in Painter and select the obj file, then bake the texture maps. Create a fill layer and set the material to Brass-Pure. Then use the paint can icon to create another fill layer, right click on it and add a black mask, then right click on the mask and select Add Paint

Fill layer on which we will create the raised logo

Click on the grey ball next to the words “fill layer”, then click on the squiggly line to the right to open the property editor of the fill layer itself. Alt-click on Height to affect only the height channel with this layer, and under Height Uniform Color, crank the slider all the way to the right.

Fill layer property editor- this will affect only the height channel

Now click on the paint layer, then on the far left side of the screen, click on the brush icon. In the 3d preview window, right click anywhere to bring up the brush’s property editor window. Set the alpha to the logo file, set spacing to 120, and set the size space to either Texture or Viewport.

Set Alpha to be the logo image, set size space to Texture (in blue)
Set spacing to 120

Now adjust the size of the brush to fit within the unwrapped UV chunk of the button, then click on the UV chunk.

Stamp the alpha on the UV chunk of the front of the button
The textured button

The texturing is done; take a screenshot of your button to use as a thumbnail in Clo, then export our textures using PBR metallic-roughness as a template. We will need Base color, the Normal map, the roughness map, the metalness map and the height map. Once that is done we can go into Clo and register the button.

In Clo, click on Materials-Button-Register button.

In the dialog box set up your button or buttons, give them a name, select your thumbnail image, set the size of the button(s), select your obj file, and hit OK

In a Clo project, go to the object browser and find the button tab. Set up a new button and name it, then go to the shape browser and click the little arrow next to it and scroll down to find your new button.

Change the material type from Fabric Matte (in the photo above it is set to plastic) to Metal, then at the Texture input, select the Base Color map created by Painter, next at the Normal map, get the normal map from Painter, set the roughness and metalness maps as well, and in the displacement map get the Height map created by Painter. You will now see the textured button in the 3d preview window. Save your button to be able to use the textured button in other projects.