Making a 3D model out of a watercolor painting
By: Shahriar Shahrabi
Tags: Watercolor, 3d, Blender, Painterly, Modeling

Already pretty good for 30 minutes of work. Of which 25 minutes of was modeling the more complicated hair, if this was a bald guy, you would get here in 5 minutes. But now time for the bonus steps for setting up the mesh in a way so that you are able to fix the projection artifacts.

How To Fix the Artifacts

To fix the artifacts, you have to go over the areas where smearing is happing, with either the clone tool or with a brush. The issue with the current setup and the unwrap is, that several islands can share the same space. For example, since we are unwrapping by projecting the faces on to the camera plane in the frontal view, any face that lays on the same axis in the cameras line of direction (anything that overlaps from the point of view of the camera), will have the same space. That is why the face is also projected to the back of the hair:

So if we were to use the current unwrap for texture painting, anything we paint at the back of the head, will also effect the face itself, since those triangles share the same uv space, where the texture is saved.

What we need is a uv where each face has its own unique space, and is not overlapping with any other. However, we would also like to use the projection mapping results as a base. The solution is to bake the projection mapping results in this new uv, and simply use that for our texture fixing. So here is that workflow step by step.

Step One: Set Up a Duplicate Object

First thing I do is to duplicate the object. While you can bake on a second uv without doing that, I duplicated the object, because I wanted to remesh and decimate the mesh as well since I was baking anyways. Remeshing helps, because intersecting geometry are changed to closed surface and we dont waste time rendering triangles that are completely covered, and decimate because of performance reasons, both for rendering as well as doing unwraps. For previewing here, I am putting the original and the duplicate side by side, but in your case they should overlapped perfectly, so don’t move the duplicate.

Step Two: Do a Unique Unwrap

In edit mode, select all your vertices and under the UV drop menu unwrap with the smart uv project. This will automatically create your unwrap for you. Although the smart uv doesn’t guarantee that faces have unique spaces, in my experience, for lower angle threshold such as the default 66, it almost always does. If the smart uv project fails at creating a unique uv (you will know that once you bake, certain faces bleed across large distances into others), then you could try the lightmap unwrap in the uv drop menu. That one takes longer, so make sure your mesh is low poly.

Step Three: Bake

Once you have your unique unwrap, get rid of all the materials in the duplicated object, create a new one and in it create an image texture node. There you can create an image where your bake results will be saved in. Then in your camera section, switch to cycles, go to bake settings, set bake type to Diffuse and untick the contributions of Direct and Indirect. Then activate the Selected to Active section and set a small extrusion value.

You are almost ready to bake, but before that make sure the original mesh you are baking from (the mesh that you duplicated from and has the projection mapping texture) has a principled BSDF shader between the output and texture, where the texture is plugged in the color. Blender takes only whatever is plugged on the principled shader for its baking of a Color diffuse map. Once that is done, Select the the original mesh and set the duplicated/ decimated mesh with the unique unwrap as active by CTRL selecting it. In the material of the duplicated mesh, make sure the image texture node you created is the selected node and press bake. Once you do that, you will have a normal UV space and texture you can fix either in blender itself or Substance painter.

Closing Thoughts

That is pretty much it. I think the merit of this experiment was how easy it was to get this painterly water color look in to the mesh, without hours of tricks and painting. One thing worth trying is, you might as well paint the character again in the same pose but from the side in water color, then create another projection mapping uv from the side, and blend between the two in blender. If you do that from all side, you wont have to texture a thing, just blending from each side and you get a beautiful hand painted looking mesh. And I suspect drawing the character from 3–4 sides and painting it with water color would still be way faster than getting the same level of authenticity in substance painter or using shaders.