Latest Surface Painter release got the feature of adding custom surfaces, which may be very useful if you want to make your surfaces library more customized. Learn how to create and save your very own surfaces in this short tutorial.
Keep in mind, that this feature is connected strictly to the Surface Painter system and is not the best way to save entire materials. This feature is available in our Flow plugin, which also uses the Material Painter, that is working the similar way to the Surface Painter, but is painting your objects with any entire materials.
Creating the surface node group
All you need to do, to be able to save your own surface is creating the node group, that meets some specific requirements.
In the shader editor, convert any set of nodes to the node group. There are two main requirements, that your group must meet:
- Having at least one color input – the best if this color input will be the main color of your surface. Don’t worry if you have more than one input, as you’ll be selecting which one will be used as the Surface Color when adding the surface.
- Node group must have a Shader Output, which will be connected directly to the Material Output node when using the addon
Let’s now create the simple node group, basing on the principled shader and procedural bump made out of noise texture. This is my initial setting, that I convert into the node group by pressing CTRL + G (I have selected everything except the Material Output node – it should never be inside the node group!)
I’ve connected the base color input to the group inputs. There’s no need to rename it, as the plugin will do that for me.
Now, I add some more settings and connect another color input to the emission color. I will later select which one will I use as the Surface Color
Now let’s focus on the group outputs. As I’ve already mentioned, there must be at least material output (the one with the green dot). It was already created when I converted my setting into the node group. I will also add the displacement output. For that I add the displacement node, connect the noise texture into the height input, scale into the group inputs and then the displacement output into the group outputs.
When I’m ready, I press tab to leave the node group editing. Now in the Node panel, I look for the Surface Painter tab and when my node group is selected, the button should be now active.
In the popup window, you can name your surface, select which input will be used as Surface Color (in my case it’s the Base Color input), then select the preview color – this is only the temporary preview color, that your new surface will use for the thumbnail rendering. In the end, select the displacement type, that you want to be applied to your preview. When ready, click OK and wait a few seconds for the preview to be rendered in the background.
The new surface should be now visible among the other Surfaces
You can remove your custom surfaces from the toolbar level (and only the custom surfaces) by clicking the trashbin icon just next to the surface selection.
You should be now able to create and save your own settings of surfaces. Remember to meet the basic requirements and nothing should go wrong.