An introductory tutorial on quickly creating free custom textures for your 3D scans.
While the majority of 3D scanners have the ability to capture a high-quality texture with your scan, there may be scenarios where you'd like to replace parts or all of your model's texture with a new one. For example, some textures, such as shiny or transparent ones, don't play well with scanners. You may need to cover such items in chalk spray before scanning, preventing the scanner's ability to capture texture. Other times, you may just want to experiment with alternate color and material palates on your scan.
Whatever your reason, the process of creating a new texture from scratch is relatively simple and can be completed many times over--resulting in a wide array of options! In this tutorial, we'll be preparing a 3D scan in Blender with material IDs and then creating a custom texture for our scan in Quixel Mixer. If you'd rather make small adjustments to your scan's texture without creating a new one, check out Editing Materials on 3D Scans.
Step #1 - Preparing Your 3D Scan With Material IDs
Before we texture our scan, we'll want to break it into individual sections with Material IDs. Material IDs allow us to assign different materials to each part of our scan. In today's example, we'll make three material IDs for our bracelet scan-- one for the silver band, one for the turquoise stone, and one for the backside of the stone (while this part of the bracelet is the same color as the band, it is slightly rougher, so we'll want it to have its own material with a different roughness value to reflect that).
To start the process of creating your material IDs, import your 3D scan to Blender and navigate to the Material Properties tab.
Click the "+" icon to add a new material slot, then click "New" to create a new material.
Name your new material after the part of your scan you'd like to have its own material. In our bracelet example, we'll name our new material "stone" since we want our turquoise stone to have different material properties than the rest of our bracelet.
Next, navigate down to "Base Color" on the new material and set it to a bright color you can easily see and differentiate from other colors on the scan. The specific color you choose doesn't actually matter-- it won't be seen in your final results. The bright color is only there to temporarily mark this particular section of your model as its own unique material!
Pictured below: Adding new material > Creating new material > Naming and setting color of new material
In this next step, we're going to assign our new "stone" material to the stone part of our 3D scan. To start, let's tab into Edit Mode and change our selection tool to Select Circle (pictured below). The Select Circle will make it easier to quickly select the faces of our model that represent the stone.
Before you begin selecting, make sure the selection mode is set to Face Select (pictured below). To start your selection, simply drag the select circle over the stone section of the 3D model (be sure to hold 'Shift' if you are including multiple areas in your selection).
If you mistakenly include the wrong faces in your selection, hold the Ctrl button and go back over them with the Select Circle to remove them.
If you accidentally lose your selection by clicking off the model, just undo your last action and it will bring your previous selection back.
Once we have selected the entire stone area on our example bracelet, we'll need to make sure our "stone" material is selected in the Material Properties tab. Then we'll click "Assign" (pictured left) to assign the stone material to the bracelet.
If the assignment was successful, the model should resemble the screenshot below. If the model shows no color at all, you may need to make sure your viewport shading is set to Material Preview (hotkey: z, 2).
You may notice in this example the edges of our material ID selection look jagged. If you want yours to have smoother edges it is best practice to make sure your model has clean topology first and retopologize it!
Repeat the steps above to create a new material ID for each section. You may do this as many times as needed to create different material sections on your model. Be sure to name them after the section of your model they represent--It will help keep you organized later when you are assigning materials to them in Quixel Mixer.
When all material IDs have been created and assigned, your model is ready for texturing in Mixer! Go to File > Export > Obj to export your model (pictured below).
Step #2 - Creating A Custom Texture in Quixel Mixer
Now that our 3D scan has been prepped with material IDs in Blender, we can create our custom texture! In Quixel Mixer, click New Mix and choose your mix's name and preferred working resolution.
To import your model, go to Setup>Type> and choose Custom Model (pictured below). In the pop-up, select the .obj you just exported from Blender.
After your model has been imported into Mixer, switch over to the Layers tab.
You'll see that each material ID you created in Blender is listed under Target Texture Sets-- one of the important reasons for giving them descriptive names back when we created them in Blender!
Let's apply a custom texture to the band of the bracelet. We named this part "base."
Make sure "base" is the only item checked under Target Texture Sets.
Then click on Add Decal/Atlas Layer (the leaf-shaped icon under the Layers tab pictured below) to begin our search for a Surface material.
Clicking on Add Decal/Atlas Layer will switch you from the Viewport tab to the Local Library tab (shown below).
As you can see in the image above, we have quite a few Surfaces in our Local Library! If this is your first time using Mixer, you may not have any items in your Local Library-- don't worry, we'll go over how to download assets from the Online tab in the next step!
The type of asset we are using to texture our model in this example is called a Surface. Mixer has many different types of assets. To make your browsing easier, you can filter your search for Surfaces in the Type Menu under the search bar.
In our Local Library, we already have the perfect silver-colored Surface downloaded for our bracelet's band (pictured below). To apply this Surface to our "base" texture set, all we need to do is double click it.
As you can see in the screenshot below, the silver material was successfully applied to only the band of our bracelet-- the area we assigned the "base" material ID. Perfect!
If you click on the silver Surface material now displayed under our Layer Set 1, you can see its various properties will display on the right side of the screen. Each property is editable to help you achieve a fully custom texture.
Next, we'll add a material to the stone of our bracelet. Under the Layers Tab, click Add Layer Set (the stack icon pictured below) to create a new layer for the stone independent of the band.
With Layer Set 2 selected, make sure the only item checked under Target Texture Sets is "stone." Having other texture sets selected will cause every material used in this layer set to be applied to anything that is selected.
Let's look at how to download Surface materials from the Online tab. Assets from the Online tab will appear in your Local Library tab once downloaded. Navigate over to the Online tab and make sure the asset type is set to Surface under the search bar. If you have a specific material in mind you can type it directly into the search bar (for example "wood" or "marble"). If you'd like to browse all available Surfaces, you can search through the categories listed just below the type menu under the search bar.
Once you've found a surface material you like double-click it and press "download" to bring it into your Local Library. From your Local Library tab, you can apply the Surface to your chosen Layer Set the same way we applied the last one--by double-clicking it! Easy.
To see the results just tab back over to the Viewport. As you can see in this example, the Verde Guatemala surface we chose has been successfully applied to our "stone" texture set.
We can further adjust this Surface's color by changing the albedo color to something brighter. To do so, click on "Verde Guatemala Marble" (listed under LAYER SET 2) to bring up the Surface's properties on the right side of the screen. Then click on "ALBEDO" to bring up a pop-up window with a color selector (pictured below). When you've found your desired color, finish by clicking "Apply" in the pop-up.
In this example, we've chosen to change the albedo to a bright teal to resemble the turquoise stone on our real-life scanning object.
Repeat this process of applying surface materials to all texture sets and adjust each Surface as needed.
When you are ready to export, switch over to the Export tab and set your export preferences. Under Textures > Texture Maps, you have the option to export Albedo, Gloss, Roughness, Normal, Displacement, AO, and Metalness maps. In this example, we'll just be exporting Albedo, Roughness, Normal, and Metalness to keep everything simple.
Once your export preferences have been set go to File > Quick Export. The screen will briefly flash each time it finishes exporting a map. After exporting, your new texture files should be waiting for you in the folder you saved them to on your desktop.
Step #3 - Applying The New Texture To Your Scan
Now that our new texture has been created, we'll head back into Blender and apply it to our model.
To start, drag open a new editor window and set the Editor type to Shader Editor.
Next, select your 3D scan and tab back over to the Material Properties tab. Under Material Properties, make sure the first of your material IDs is selected (in the case of this example, "base," pictured below).
Let's add in the Albedo, Metalness, Roughness, and Normal texture maps we just made for the "base" texture set in Mixer. In the Shader Editor window, hit 'Shift a' > Texture > Image Texture to create a new Image Texture Node.
Select "open" on the new Image Texture node and use the pop-up to navigate to the folder on your computer you exported your Quixel texture maps to. Then select the albedo map associated with the particular material ID you are working on (in this case we would pick the "base" albedo map since we are working on the base material in Blender).
Repeat this process for as many texture maps as you have exported for that particular material section. In this example, we will be adding three additional Image Texture Nodes for the Roughness map, Metalness map, and Normal map.
Let's finish by connecting the Image Texture Nodes to the Principled BSDF Node.
To connect the Albedo drag the connector from "Color" on your Albedo Image Texture node to "Base Color" in the Principled BSDF node.
To connect Roughness and Metalness Image Textures drag the connector from "Color" on each one to the corresponding "Roughness" and "Metalness" ports on the Principled BSDF.
When connecting the image texture node for the Normal, don't forget to add a Normal Map node first. To do so, hit 'shift - a' and type "normal map" into the search. Then select the Normal Map node (pictured below).
Finally, drag the connector from "Color" on your Image Texture node to "Color" on the Normal Map node. Then, drag the connector from "Normal" on your Normal Map node to "Normal" on the Principled BSDF node (shown below).
Repeat this process of adding in the texture maps for each material ID section (base, stone, and back) until all new texture maps are applied to your 3D scan.
Below are the final results! The image on the left is our original texture and the image on the right is our new custom texture. Whether you are unable to properly capture a texture in the first place or you'd like to experiment with alternate textures, the process of retexturing your 3D scan in Quixel Mixer is a quick and easy solution. Furthermore, with the variety of available Surfaces in Mixer, your options for possible textures are endless. While this process may seem complex at first, there are only three steps total to remember-- assign material IDs in Blender, create the texture in Mixer, and apply the final texture back in Blender.
Did you find this article helpful? Consider subscribing in the footer below for updates on all our future blog posts!