Baking a Real Normal Map!

The normal map that you created using VTFEdit isn't what I'd call a "real" normal map. Really it's just a bump map that adds a little texture to your model. The real purpose of a normal map in game engines is to make things that should be smooth and round actually look smooth and round without having to use billions of polygons that cause a GPU to choke. GPUs are much better at dealing with texels than polygons.Using a normal map you can make a 20 sided polyhedron look like a sphere, or a cylinder with 16 faces (like the handle of the example sword) look smooth and circular.Tangent Normal maps look something like this:R, G, and B are used as vector coordinates instead of colors, definiing which direction the surface of a polygon is facing at each texel on the polygon. This allows a shader to take a polyhedron with a relativly low polygon count and make it look round because each texel on the surface becomes almost like a polygon without all of the GPU inefficiency of having to deal with real polygons.Normal maps can also be used as bump maps for purposes of engraving things on a sword blade, for example, but this section is just going to tell you how to create (or "bake") a normal map for purposes of smooth shading so your sword doesn't look like it's made of polygons.Often people create a separate high polygon count model and use that to create the normal map for a low polygon model, but in this case we're just going to use a Blender feature called the Multiresolution Modifier to automatically create a really smooth high polygon mesh for normal map baking purposes.Before we do anything else, we need to tell Blender which edges of our model should remain sharp. You might think that using "mark sharp" on a edge will do this, but with the Multiresolution modifier we need to use something else called Edge Crease Weight. To make an edge fully sharp, we set the crease weight to 1. To make it fully smooth we set it to 0 (the default).The above screenshot shows where the edge crease setting is. It only appears when edges are selected. Also make sure that Mesh Display is set to show creases, and you might want to turn off display of seams and "sharp" marked edges (which won't do anything with the multiresolution modifier).Now, unless you already have a multires modifier, exit edit mode and add a Multiresolution modifier to your model. This is done using the wrench tab in the properties panel.First, whether the modifier is visible and used for rendering is. Make sure the eyeball and camra icons are both light colored (enabled). This means the modifier effict is visible (eye) and used for rendering (camera). The latter is important because baking is a sort of rendering.Disable Subdivide UVs and enable Optimal Display. That'll stop the modifier from slowing your system down drawing all the polygons. Now if you don't have any subdivisions yet under Preview, Sculpt and Render, hit Subdivide 2 times. Set all of Preview, Sculpt and Render to 2 (the maximum it will allow unless you subdivide again.)Make sure you're in Object mode and set the view to solid shading. Look to see if the model is geting smoothed the way you want. If not, you may need to go back and add some edge crease weights.If you have any areas that looked pinched or weird, you probably have duplicate vertices, dangling edges, or some other sort of mess. Problems can also be caused if normals are not all acing outwards, so go into edit mode, select all, and do operations like Recalculate Normals Outside, Vertices->Remove Duplicates, and various Clean Up operations.You can also try hitting Subdivide again if some areas still don't look smooth. Also play with setting faces to smooth or flat shading. You probably will never want to subdivie more than 4 times though because too many subdivisions will grind your machine to a halt.Once everything looks good enough, you're ready to bake a normal map. First you need to select the target image for your normal map. This is done by selecting a texture node in the material view.The selected node is the one with the white border around it. If you don't have an image texture node for your normal map yet, or don't have an image created, create the image in the image editor and add a new image node to your sword material. It doesn't actually matter what the texture node is attached to, it just needs to exist and be selected to indicate the output image for the bake.At the bottom of the render properties there's a Bake panel. Set it up like this:Make sure you have your object selected in the 3D view, and you might want to split the view and switch the new view to the image editor with the normal map image shown. That way you can see the results. Click the Bake button when ready and after a few seconds you'll see the normal map created.How smooth the normal map is will depend partly on how many subdivisions are in the multiresolution modifier, so if it looks a bit blocky then you might need to up the number of subdivisions. You shoudl almost NEVER need more than 4 subdivisions for this.Now, VERY IMPORTANT! Once your normal map is generated, disable the multires modifier by clicking the little eyeball and camera icons on the modifier. You do NOT want to export your model with the multires modifier active or you'll be exporting a super high poly model that will fail to import into Blade Symphony! Do not forget this!Notice there are other types of baking you can mess with if you want, such as Ambient Occlusion. If you want to you can try using the material system in Cycles to bake textures for your diffuse map, for example, but this is an advanced topic that's beyond the scope of this guide. Just be aware that there's more to baking than just normal map generation.