I’d like to discuss a proxy-based bake method that I briefly mentioned in the Cycles baking thread (where it was slightly off-topic):
This triggered the following response:
Let’s take a quick look at an example that shows how proxies help improve the results of a bake:
If you bake normals from high-poly to low-poly geometry without using a proxy, you’ll run into several typical problems, depending on whether you use split edges or not. These problems can be observed in the two bake results on the right. The object “lowpoly_nocage” has its sharp edges around the caps split, the object “lowpoly_nosplit” is entirely smooth. On the former, you can see the ray misses that JSM mentioned. They occur near the split edges at the top and bottom. On the latter, there are no such ray misses, but since the bake rays are always cast along the (interpolated) surface normal, the area between the top and bottom caps is distorted, and there is a visible seam where the normal map wraps around.
If you look at the corresponding normal maps, you can see that the surface normal interpolation on the smooth object results in a bake that is full of color gradients even in areas where the distance between the high-poly and the low-poly model is constant (e.g. on the top and bottom cap). Color gradients don’t compress well and may cause aliasing artifacts in some lighting situations. So they should be avoided.
The object “lowpoly” exhibits none of the above problems because a proxy mesh was used for baking:
As you can see, the topology of the proxy is slightly different from the target mesh. The proxy is entirely smooth, but there are additional edge loops to terminate the surface normal interpolation near the edges of the caps. This eliminates both the artifacts from missing rays and the distortion. The proxy can also be used to control the bake distance if necessary.
All baking was done in Blender. No external tools were used. If this method doesn’t work for you, please post an example where it fails. I will look at it.