Animator 0 Report post Posted October 16, 2008 (edited) Disclaimer: This is not a beginner "introduction to blender" level tutorial. It addresses the area of Normal Mapping, which is an advanced displacement texturing technique. If you know what Normal Maps are, and are wanting to know how to make them in Blender, then this tutorial is for you. UV unwrapping, basic Blender navigation, Sculpt mode etc are more basic skills which are assumed knowlege for this level. Normal maps are cool. They are blueish textures which work like (but are more accurate than) bumpmaps... apply them to a model and they add bumpy textures & displacement to the surface. This makes it possible to have a low resolution model look like it is a high resolution model, but without the major strain on CPU resources. In this tutorial, you will how to make a Normal Map of a high resolution model, and apply it to a lower resolution model so that it looks like the high resolution version. I am assuming you know the basics of Blender, including how to UV unwrap and also Sculpt mode. The tutorial would be too long if I explained those parts so it's better for you to follow other tutorials on those areas until you are ready for this one. So then; the workflow is you are going to start with a low poly model, make a hi-poly copy of the mesh, sculpt in detail and then create a Normal Map to display the high definition detail on your low-poly character. First, we need a low resolution model. I'm going to use Suzanne (monkey head) for the images here, although she's not ideal because her eyes are separated polys which form nearly overlapping faces against her face, which will likely be troublesome for Normal Mapping. Where possible use a simple base mesh without sandwiched faces. STEP 1: UV unwrap the low poly model. I shouldn't need to tell you how to do this. Add seams, Unwrap, and then rearrange the islands on your UV layout. Don't rush this stage. Normal Maps are affected by the quality of your UV layout. The low poly mesh UV should also have an image associated with it in the UV editor, so assign a "new image" if you have to (and presave it). STEP 2: Create low and high poly versions. Make a copy of your mesh. Name one "Suzanne_high" and then the other "Suzanne_low". Move Suzanne_low to a different layer out of the way, but don't change the physical (x,y,z) position as they will later need to be in the same location when making the Normal Map. STEP 3: Sculpt the high poly details. As with UV mapping, Sculpt mode should be familiar to you. Be careful on excessive use of the "grab" function (you can't normal map hooks). You should be looking to add fine details like muscle bulges, cloth wrinkles, skin textures and so forth. Save as you go, and allow yourself to detail as much as your computer will allow. STEP 4: Create the Normal Map At last you are ready. SHIFT-select both the high and low poly models (the low poly should be selected last). You could move the low poly model to the same layer as the high poly version to do this, but SHIFT-enabling both layers also works just as well and keeps them easily separate. Now you need to bake (Scene (F10) => Bake options) with the following settings... The Bake should be set to "normals" (not "full render")Make sure "Selected to Active" is activated. This compares the high poly one mesh against the low poly mesh in order to work out surface displacements.Normal space should be set to "tangent". This will generate a Map that allows for the object to be animated (e.g. change rotation). Older methods could only make Normal Maps for stationary objects where only the lighting positions could change.Now hit the big "BAKE" button and you should see your new and blue UV map generate. (I like using 1024 sized maps for reasonable resolution) Save the map when you are done. STEP 5: Apply the Normal Map to a low poly figure. This is easy. Simply apply the newly saved image as a texture. Under Shading (F5) => Materials (red ball icon) Under "Map input" change the projection setting from "Orco" to "UV". Under "map to" the default is "Col" (diffuse colour). Change this to "Nor" (normal, or bump). To make the Map work as a Normal Map instead of a Bump Map, under Shading (F5) => Texture (F6) (the leopard skin icon), under "Map image" panel, hit "Normal Map" and select "Tangent" from the next droplist. Your render should now show the low res model with all the bumps that the high resolution sculpt has. For a better result, you may want to apply a Subsurf modifier to the model, and turn off "hard edges". As you can see, this low poly mesh now looks very similar to the higher poly sculpted version. There may be areas where the mesh needs to be tidied up (some show as patches in the UV editor). There are probably various ways to do this, from rehashing the sculpt, to hacking the texturemap in Photoshop / Gimp. I wanted to show the technique for now, may troubleshoot solutions for those at a later time. As a bonus in the new Blender (2.48) you can go to the top menu "Game => GLSL materials" and show a 3D window as "textured" to show the textured mesh in close-to final render quality in your 3D view. The surface also looks good in game mode, but be sure to delete the high res model before hitting P to activate game mode, or you could hang up the computer trying to calculate the high poly mesh. So that's it. Now you can use Normal Mapping to give your low resolution meshes some high resolution punch, without compromising heavily on animation render times. Edited October 17, 2008 by Lancer (see edit history) Share this post Link to post Share on other sites
yordan 10 Report post Posted October 17, 2008 I am assuming you know the basics of Blender, including how to UV unwrap and also Sculpt mode. The tutorial would be too long if I explained those parts so it's better for you to follow other tutorials on those areas until you are ready for this one.Sorry, but I don't agree with this. You should at least give us a link to the way of learning that, else your whole tutorial is useless.I don't know what even the words "basics of Blender" mean, so how could I even imagine how to understand the rest of your topic ? Share this post Link to post Share on other sites
Animator 0 Report post Posted October 17, 2008 (edited) Sorry, but I don't agree with this. You should at least give us a link to the way of learning that, else your whole tutorial is useless.I don't know what even the words "basics of Blender" mean, so how could I even imagine how to understand the rest of your topic ?I'm going to disagree with your disagree... except that links might be a good idea (I'm off elsewhere today, but might include some later on).Unfortunately, Blender isn't a simple program like, say, a Word Processor. Your disagreement is akin to expecting anyone who has written a PHP tutorial to accompany their essay with detailed notes explaining the meaning of HTML tags, tables, Hex colour theory as well... or maybe even CSS. Those things are a "given" when taking on a tutorial for PHP. Likewise, if anyone is wanting to look into Normal Mapping, it is advanced knowledge. Navigating the basic program is a given. Normal Mapping is an advanced UV Mapping technique, and as my tutorial addressed this specific area, it is already long enough. The "real" information is actually only addressed in steps 4 & 5 with the first three steps simplifying a little of the process to get to that point. I should not have to go back and readdress all the basics of UV such as the program interface. I have some beginner books which look at those areas, with easy to understand examples, and they are some 300 pages long.I wrote the above after a fair whack of trial and error (including posting questions on forums) to finally figure out what the magic key presses were to actually get a Normal Map to work correctly. Many of the Normal Mapping tutorials I have seen don't address the difference of "tangent space" and produce maps which are not useful for animated / moving objects. In Industry level modeling, they use expensive programs like Maya, and Normal Maps are common practice because they use other expensive programs like Zbrush. Here, I've figured out a way of getting similar results for free in Blender.It took me a day or two to figure this out. I was looking for something like the above tutorial for my own use... it would have saved my many hours. That is who the tutorial is for.Righto - I'm off. Head spinning because I've been rethinking how to get "reverse foot rigs" working in Blender.I admit this is pretty advanced stuff (I have a diploma in Animation and this tutorial is of that level). Are you guys wanting to see some lower level (I mean not so advanced) tutorials in Blender? Edited October 17, 2008 by Lancer (see edit history) Share this post Link to post Share on other sites
yordan 10 Report post Posted October 17, 2008 Are you guys wanting to see some lower level (I mean not so advanced) tutorials in Blender?Seems that you ask if I want to read a tutorial I wold be able to understand ? My answer is yes.Maybe you could, in another section, start a topic polling this question and we would see how many people think that way.Or let's see if other people answer this post. Share this post Link to post Share on other sites
Animator 0 Report post Posted October 17, 2008 Seems that you ask if I want to read a tutorial I wold be able to understand ? My answer is yes.Maybe you could, in another section, start a topic polling this question and we would see how many people think that way.Or let's see if other people answer this post.Okay... sounds to me that you would understand a beginner tutorial which explains what blender is from scratch. That's definitely not what this one aims to be. I targeted the tutorial towards beyond elementary level 3D modelers & animators, as a specialist interest topic. I'm pretty certain there are people on Xisto who are already using Blender, but would not know how to apply (yet) what my tutorial is designed to explain.I just added a disclaimer right at the start to clarify... would that help? Share this post Link to post Share on other sites
yordan 10 Report post Posted October 18, 2008 I just added a disclaimer right at the start to clarify... would that help?Nice, that way the beginners like me will not be surprised, nor disappointed if they have problems understanding. Share this post Link to post Share on other sites
Animator 0 Report post Posted October 19, 2008 ...that way the beginners like me will not be surprised, nor disappointed...Well, blender is such a big program that even after a few years using it as my main application (e.g. most used program), there are still some major areas I would consider myself a beginner at. I'm only just starting to look at the game engine part.I'm glad for your feedback because it lets me know that I could write certain tutorials on the intro level, which I would have otherwise considered annoying to other blender users in that those tutorials aren't quite as "cutting edge" and could be considered old by some. However, the basics are very important to learn first and if I can get Xisto points by writing a succinct tutorial or two I certainly don't mind. There are always things which people miss like, how to split the main screens, that while the R key rotates, tapping it twice trackballs, hitting X, Y or Z after grab (G key), size (S key) or rotate (R key) does the change in that XYorZ direction, whereas SHIFT-XYorZ has the opposite effect, how the layers work... etc etc etc.So, how about giving me a brief synopsis of what you have achieved so far and what you are stuck on at the moment? Then maybe I could customise a tutorial for that area and everyone happy. Share this post Link to post Share on other sites
iGuest 3 Report post Posted April 26, 2009 problems with normal mapsNormal Maps In BlenderHello! I did everything in accordance with your fine tutorial (thank you!) but on my second attempt with 'tangent' option set up received a 'uniformed', flat, single-coloured normal map (either all-blue or all-grey) from a hi-poly mesh, which is pretty much useless. What is the possible mistake? Low-poly model->UV unwrap->save image->Hi-Poly model->Shift-Select both->Bake->failure...-reply by decembered Share this post Link to post Share on other sites
iGuest 3 Report post Posted January 15, 2010 Thanx for the TutorialNormal Maps In BlenderThanx for the nice work. Will use in the future! Share this post Link to post Share on other sites
iGuest 3 Report post Posted April 4, 2010 clarification needed on step 4Normal Maps In BlenderHi, I'm hoping for some clarification on Step 4. I have the low and high poly meshes each on their own layer as you say. I shift-select both objects with the low poly last. If I then shift select both layers and then bake my normal map, I end up with a normal map that reflects both the high poly and low poly meshes (I.E. Rough and detailed combined) which is quite ugly, not what you ended up with at all, which just looks like the high detail. But If I just select the layer with the high detail mesh, then it complains "no images found to bake to". I'm on 2.49b by the way. What version is this tutorial for? Cheers! -reply by danieru Share this post Link to post Share on other sites
iGuest 3 Report post Posted April 4, 2010 clarification needed on step 4Normal Maps In BlenderHi, I'm hoping for some clarification on Step 4. I have the low and high poly meshes each on their own layer as you say. I shift-select both objects with the low poly last. If I then shift select both layers and then bake my normal map, I end up with a normal map that reflects both the high poly and low poly meshes (I.E. Rough and detailed combined) which is quite ugly, not what you ended up with at all, which just looks like the high detail. But If I just select the layer with the high detail mesh, then it complains "no images found to bake to". I'm on 2.49b by the way. What version is this tutorial for? Cheers! -reply by danieru Share this post Link to post Share on other sites
Бојан 0 Report post Posted April 5, 2010 Wow, very cool program mate! I will try the program and your tutorial. Thanks for sharing. Share this post Link to post Share on other sites
iGuest 3 Report post Posted May 17, 2010 Excellent and to the pointNormal Maps In BlenderI was looking for an answer as to how to implement normal maps in Blender (I've got the demo of Crazy Bump and don't want to waste my thirty days) and this was the first answer from google!Yes Blender is hard but there are literally hundreds of tutorials out there to get you started (Google is my best friend, anyone remember Web Ferret days?). Rome wasn't modeled in a day (it'd take about a week to render on my PC).Thanks for a precise answer. -reply by Chris Hanning Share this post Link to post Share on other sites
iGuest 3 Report post Posted July 30, 2010 level of detail.Normal Maps In BlenderI followed your tutorial and it is pretty concise and clear- thanks. I have a problem though I am battling with- when I apply the normal map to my low poly mesh and render, it gives the effect of a really nice bump map. But it doesn't give the appearance of distorting the actual object as I expected... It still looks like a low poly object with a map on it, whereas your 'low resolution model with normal map' image looks just as complex as the the high res version, with rounded corners and everything. What have I missed? Share this post Link to post Share on other sites
iGuest 3 Report post Posted March 5, 2011 Great straight forward tutorialNormal Maps In BlenderThat's it, great tutorial about creating normal maps in Blender. I create maps in Zbrush but it seems to have a lot of issues when importing the image to Blender. The image does not quite match seams ! -reply by Animaticoide Share this post Link to post Share on other sites