Documentation

How to Create and Use Textures in Substance

This tutorial demonstrates how to create a texture in Poly, and then how to import the texture into Substance Painter and apply it to a model.

📌 Textures used: Poly Wood Texture Collection, Poly Substance Texture Collection

Image 1: Following the steps in this tutorial, we added a bamboo texture to a model in Substance Painter — this is the final result.

Image 1: Following the steps in this tutorial, we added a bamboo texture to a model in Substance Painter — this is the final result.

This article will show the process for creating a texture in Poly and then importing it into Substance Painter and applying it to a model. As an example, we’ll be creating a bamboo texture and applying it to a side table for use in a living room scene.

Step 1: Generating the Texture

Creating the texture is the first step. Start by opening Poly and navigating to the Texture Editor. To ensure the best results, generate a texture manually by heading straight to the Make Patches tab. Enter a descriptive prompt to tell the AI exactly what texture to generate. Image 2 shows the prompt used to generate the bamboo texture and the initial four patches that were generated.

Image 2: This is the first set of material patches that Poly generated, along with the descriptive AI prompt.

Image 2: This is the first set of material patches that Poly generated, along with the descriptive AI prompt.

The top left patch looks very close to the desired texture but not quite right. If you select a patch, and then click on the Create Variations button, the patch will be used as a seed image for the Make Patches tool. Clicking on Regenerate Patches will create variations based on the selected patch. That’s what we did here.

Image 3: We used one of the AI-generated images as a seed image to generate a second set of material patches.

Image 3: We used one of the AI-generated images as a seed image to generate a second set of material patches.

The resulting variations are much closer to the desired result than the initial patches — the vertical lines breaking up the laminations look a lot more realistic and are similar to the reference. For this project, we selected the bottom left image as the basis for the PBR material.

Next, we had to navigate to the Make The Texture Seamless tab, to create a tileable image. A patch scale of 100% worked well for the bamboo texture. You can navigate to the Upscale Texture tab to increase the patch’s resolution. The bamboo patch was upscaled to 2K texture resolution, to maximize the texture’s quality and detail.

The final part of this step is to generate a PBR map based on the upscaled and seamless patch. This is done via the Generate PBR Maps tab. Here, you have to select a material type that will guide the AI to generate the most appropriate normal, roughness, displacement, and albedo maps for the texture.

The table is for an interior scene and needs to be smooth with a slight sheen to it, so the Shiny map was a good choice. You can disable the Height map to ensure a smooth surface, as we did. Image 4 shows the final bamboo ply PBR texture in the Poly viewer.

Image 4: A PBR bamboo plywood texture generated with Poly.

Image 4: A PBR bamboo plywood texture generated with Poly.

Once you’ve generated a suitable PBR texture, you can download the texture. Do this by clicking on the Download button at the top right of the interface, selecting the 32 bit EXR file format, and then clicking on Export. This will download the texture set as a ZIP file.

Step 2: Importing the Texture into Substance Painter

The next step is to texture the table in Substance Painter. To do this, you open a new project,  import the table model into Substance Painter, and then bake the texture sets. The first layer will be the bamboo texture that was generated in Poly. To import a texture, simply go to File > Import Resources.

A new window will open with an Add Resources button at the top. Clicking on it allows the downloaded textures to be navigated to and selected in the file browser. After you click on Open, the textures will appear in the Import Resources window. You can change the resource type by clicking on the Undefined box on the righthand side of each row and changing it to Texture.

The Import Your Resources To dropdown menu lets you choose where your textures will be saved. In this case, they were imported to the current project so they would remain in the project library even if it was closed. Clicking on the Import button brought the textures into Substance Painter. These textures were then accessible via the Textures tab of the asset library.

Image 5: The Import Resources window in Substance Painter.

Image 5: The Import Resources window in Substance Painter.

Step 3: Applying the Bamboo Texture to the Model

To apply the bamboo texture to the model, we created a new fill layer. Then the newly imported bamboo textures could be dragged from the Textures tab of the asset library to the matching layer material property — for example bamboo_color_map to the Base Color slot. In this case, the base color, roughness, and normal maps were used.

Image 6: Texture maps in the relevant material property slots in the Bamboo texture layer.

Image 6: Texture maps in the relevant material property slots in the Bamboo texture layer.

When you’re texturing a material that has a strong grain direction, which is the case with this bamboo texture, it’s important to ensure that the grain is aligned in a realistic way. This was considered during the UV unwrapping process, and all the UVs were positioned in such a way as to ensure a believable grain direction. The UVs and how they relate to the texture grain can be seen in Image 7.

Image 7: The UV layout for the side table with the bamboo texture overlaid.

Image 7: The UV layout for the side table with the bamboo texture overlaid.

To ensure that the textures were applied to reflect the UV orientation, the Fill Projection menu was set to UV Projection, as shown in Image 8. The tiling value was adjusted until the texture scale looked right; a value of 3 worked in this case.

Image 8: Fill projection is set to UV projection.

Image 8: Fill projection is set to UV projection.

Step 4: Adding Additional Layers

To enhance the realism of this asset, we added few additional layers. The first was a roughness variation to add some wipe marks to the table top. A roughness level of 0.3 with a black mask and the Grunge Wipe Brushed texture worked well to create this effect. Next, a grime layer was added. The Dirt generator with very conservative settings was used to add grime to only the most occluded areas on the underside of the model. Finally, a dust layer was added to give the effect of a very light layer of dust on the table. A basic gray material with a high roughness was used for the layer, along with a black mask and the Dust 2 generator. The final textured model, as well as the layer stack used, can be seen in Image 9.

Image 9: Our textured table, with the final layer stack visible on the righthand side of the interface.

Image 9: Our textured table, with the final layer stack visible on the righthand side of the interface.

Following the steps in this process, we created a PBR material texture of bamboo plywood in Poly, imported it into Substance Painter, and then applied it to a model to create a realistic 3D side table. You can follow the same general steps to create and apply textures to models in your projects.