03 June 2012

Colin Litster - Blender 2.5 - Materials and Textures Cookbook - eBook Review

Packt Publishing currently has a line of step by step books covering a large number of topics, the important thing about their cookbook series of books is that they are written in a similar way to recipe books, in that you are given step by step instructions on how to achieve a particular thing and then after the step by step has ended a description of why the recipe works is described.

Product Specifications:
  • Name: Blender 2.5 - Materials and Textures Cookbook
  • Author: Colin Litster
  • Price: £16.14 (22 June 2011)
  • Type: Reference EBook (PDF Format)
  • Page Count: 312
Topics Covered:
     Chapter 1: Creating Natural Materials in Blender
      Creating a realistic pebble material using procedural textures
      Creating a gray limestone pebble
      Creating the quartz pebble material
      Creating an opalescent quartz material
      Creating a mask to represent the quartz veins
      Combining two materials, to make a third, using Nodes
      Creating a large rock material using procedural, and node textures
      Creating a sea rock material
      Creating a texture node to simulate seaweed at the base of a rock
      Creating a large rock face using photo reference
     Chapter 2: Creating Man-made Materials
      Creating a slate roof node material that repeats but with ultimate variety
      Using a tileable texture to add complexity to a surface
      Warping a texture to disguise seams in a repeated texture
      Adding weathering by copying and reusing textures
      Combining materials using nodes
      Creating metals
      Using specular maps to add age and variety to man-made surface materials
      Adding oxidization weathering to our copper material
      Adding grime and artistic interest to our copper material
      Creating a path or road material that never repeats
      Repeating a tiled texture to duplicated objects
      Deforming materials and textures in Blender
     Chapter 3: Creating Animated Materials
      How to move textures and create animation without moving a mesh
      Manipulating the F-Curves of texture movement
      Using an Empty as a dummy object to control texture movement over time
      A barber pole with no moving parts
      How to alter the color of materials and textures over time
      Creating a red hot iron bar
      How to animate transparency in a texture
      Creating a burning sheet of paper
      How to change textures during an animation
      How to texture with movies creating a TV screen
     Chapter 4: Managing Blender Materials
      Setting a default scene for materials creation
      Additional settings for default scene
      Creating an ideal Blender interface for material creation
      Creating an ideal texture animation setup
      Naming materials and textures
      Appending materials
      Linking materials
      Making blendfiles stand alone
     Chapter 5: Creating More Difficult Man-made Materials
      Creating rust on iron-based metals
      Creating a mesh object to provide good reflective surfaces
      Using environment map textures to simulate reflection
      Varying environment map reflections to simulate corrosion or wear
      Using raytrace reflections to simulate polished metals
      Varying raytrace reflections to simulate dirt and grime
     Chapter 6: Creating More Difficult Natural Materials
      Creating realistic large-scale water in Blender 2.5
      Setting up an ocean vista environment
      Creating a wave surface using textures
      Creating an ocean surface material
      Creating wake around objects in water
      Creating a non-repeating leaf material
      Creating image and bump maps, with alpha channels
      Using images as the basis for a leaf material
      Using alpha to create a leaf shape on a simple mesh
      Adding a non-repeating bump to the leaf material
      Adding color complexity to the leaf material
     Chapter 7: UV Mapping and Sub Surface Scattering
      Creating a face map from photographs
      Unwrapping a face mesh to produce a UV map
      Editing a UV map to optimize the image space
      Creating multiple UV maps for a single object
      Combining UV maps to create an enveloping UV
      Using a paint package to merge UV maps
      Extracting color, bump, and specularity maps from photographs
      Applying UVs to create an accurate skin material
      Skin shading using SSS and AO
     Chapter 8: Painting and Modifying Image Textures in Blender
      Post processing rendered images from within Blender
      Adding more than one material to a surface
      Adding dirt onto a model
      Creating an aged photo with simple Blender materials
     Chapter 9: Special Effects Materials
      Creating explosive smoke in Blender
      Igniting a flame and making things burn in Blender
      Creating loopable fire and smoke sequences
      Adding complex FX without the render overhead
This book follows the same format, step by step instructions, followed by an explanation of the various features used in the recipes and why they are used the way they are.

Books that specifically cover getting to grips with Blender's Materials and Texturing abilities are very rare, sure there are books that cover both of these topics but those books usually cover other things. This book is specifically targeted to only covering Blender's Material and Texturing functionality and settings, and demonstrating how these settings can be used to create various material types in the 3D environment.

A wide range of differing material and texture types are created and demonstrated by building a series of different 3D scenes showing what the results look like.

A stand out part of this book is that it's the first book that I know of that goes into good detail on how to use Blender's Texture Node system, demonstrating just how powerful this node system can be. I really learned a lot about this method of creating textures. If you want a good guide on how this system works, this book is the book to get, as unfortunately other good documentation sources on this feature are really hard to come by, as Blender's Texture Node system is very badly documented and misunderstood.

This all sounds excellent so far, we have a book which goes into detail about how to use Blender's procedural texturing and it's Texture Node system to make very convincing textures and materials. Sounds as if this book should be an automatic go out and buy it book, right?

Unfortunately all the good work the book could do, is undone by the fact that it is littered with errors and missed steps as well as some missing and misnamed support files. A recipe book, I would say by definition has to have recipes that when followed will result in the correct effect being achieved. If you only rely on the books recipe instructions to achieve a particular effect you are interested in, you will either end up with a result which is completely wrong, or slightly wrong for almost all of the recipes described within this book.

Part of the problem is that a lot of these recipes rely on other recipes which have mistakes and missed steps. As a result there is a ripple effect all the way through almost all of the recipes resulting in them being wrong by varying amounts. Another reason for this is that Blender changed its method of calculations for certain texture effects such as bump mapping, after the book was in production. The book mentions this problem at the beginning of the book, but there are other errors and miss steps which are not highlighted.

If you do not want to have to manually go through the step by step recipes to make the materials, you can just use the supplied blend files to pick apart how the materials and texture were created.

These blend files are an extreme time saver, and are extremely useful as a learning exercise. Unfortunately the same blend files turn out to be pretty much mandatory viewing if you want to see how to properly make the described materials and textures that are supposedly described in the different step by step recipes written in the book. Without these blend files it would be very difficult to see what settings differed between what is written in the book and what is actually in the blend files. Without these blend files, on rendering any of these recipes, the results will look wrong a lot of the time.

So in short, you have a recipe book where if you follow the recipes as written in the book you won't get the correct results. The only way to see how the created materials and textures are created is to open the supplied blend files, which were sometimes missing. So I have to ask myself at that point, what is the point of the written book with the recipes which were not checked properly so as to make sure they were complete and accurate?

So I thought, what I will do is manually go through all the blend files and all the written recipes and see where they don't match and correct the recipes, such that I ended up with results on render that matched those of the supplied blend files. This took while but in the end I managed it and ended up with a list of all the errors and missed steps and the correct steps to get the correct render results. I then sent that list to the people at Packt, they were nice about it. Deciding that I would wait before I reviewed this book as I could say that yes the printed recipes are wrong but that the errata has been posted and so long as you read the errata you can see where the errors are and just do what's described in the errata posts and still end up with the correct result.

Well now it's several weeks later, as I type this review and still there is not an errata post for this book on their website. So you have now way of knowing about the corrections needed if you are just dependant on the written book recipes. Even with the errata, if you are in a hurry to get a recipe to achieve a particular effect you need, you will not want to have to go reading errata lists just to get a recipe to work. They should have been properly checked before being put in a book.

If the errata had been published I would have given the book a much higher rating as at least a normal reader could have found out all the mistakes. Without the errata the only thing that makes the book usable are the explanations at the end of recipes (which are very informative) and the blend files.

Hopefully they do a reprint of this book with the mistakes fixed and get better reviewers to spot mistakes next time, as it has 3 according to the book information and a technical editor as well.

Can't recommend this book, you are basically paying for blend files as the book itself is of no use as far as the recipes go. Colin Litster is well known Blender user, anyone who has seen some of his work knows that he is a very skilled Blender user. But because of bad production in this book that is not reflected.

For those who have already bought the book/ebook and are trying to follow the recipes here is the errata I found:

Page 12 - File pebble-03.blend from Packt file the DistNoise texture. Its mapping > Size fields are x1.37 y-0.16 z0.37, yet  all the other textures on the pebble have size value of 1, 1 , 1. Don't know if this is a mistake or just has not been communicated in the book text on when the distnoise texture is created.

Page 13 - File pebble-03.blend from the packt file.  Musgrave texture in the influence section, the colour swatch is set to a value of .28 for rgb, but in the book for this file we are told to use .14 for the musgrave colour picker. On page 13 step 17.  Wonders which is correct .14 or .28

File pebble-04.blend from the packt file. In the 3rd texture slot "QuartzMusgrave", it has the stencil option selected but we are not told to do so in the book, at least not directly until we have already been told to save the file.  Also in the same file the mapping panel has Size: value of .3, .5 and .4, again we are not told to alter the size values in the book and so they stay at 1, giving incorrect results, compared to the packt files.

Page 23 - File pebble-06.blend from the packt file.  Will not match with the instructions given in the book because on page 23 after step 18 they need to set the Influence colour selector to black 0,0,0 on the QuartzThin2 texture slot, this is not mentioned in the book.  Even though the packt file has this set correctly,  If someone only follows the instructions in the book they end up with a magenta stone.

Page 32 - There should probably be a step 16 to set the Influence Bump Mapping Method to Compatible.  As  this is the method used in the original packt "Sea-Rock-01.blend" file downloadable from the website.  Also you mentioned on step 15 setting the stencil option but this is not set in the packt files.  Which is right?

Page 35 - Step 5 needs to include setting the Mapping slot axis values to Z, Y and Z as that is what they are in the official files, and by default they will be X, Y and Z.  If not set the texture will not be mapped correctly to the mesh.

Page 36 - Step 11 needs to include settings the factor value for the Mix node to 1.

Page 37 - Step 17 needs to include setting the Mapping axis values to Z, Y and Z as that is what they are in the official files, and by default they will be X, Y and Z.  If not set the texture will not be mapped correctly to the mesh.  Also the Mapping Offset X value in the official file is -0.20, we are not told to alter this value in the book.  Also Influence for Colour should be deselected.

Page 38 - At step 19 in the official packt files DVAR is set to 0 but by default it is normally one, but we are not informed to change it, does this setting matter.

Page 41 - At step 7 Mapping is set to Size X .2  but when set it does not render as shown in the picture shown in the book, leaving the value at 1 gives results that look very similar to
that shown in the rendered picture.

Page 45 - Should all the textures for the large-rock-blue-stone.blend file have all the normal affecting textures use the compatible bump method?

Page 53 - Step 9 should include setting the Bump Mapping Method to Original.  Under image sampling the filtering method should be set to Box as this is what it is in the official packt files and more closely matches the render results when set.

Page 56 - Step 3 tells the reader to set Noise to Soft, yet the Setting in the packt file is set to Hard, and only hard settings gets correct renders.

Page 57 - Bump Mapping method under influence should be set to Original.  As Blender defaults to something different in recent builds.

Page 59 - Step 2 for the slate-tile section make sure the Bump Mapping Method is set to Original.

Page 59 - Step 2 for the Musgrave section.  The musgrave settings need to have intensity set to .44, by default its 1, but in the pack file its .44 . In the Mapping area set the Size X value to 4.33 as this is what the value is in the packt files, and when set the render matches what is shown in the book.

Page 67 - Step 3 in the packt files there is a ramp shader active yet we are not told in the book to add this.  It needs adding to get the results as shown in the book.

Page 67 - Step 9 - Must change Bump Mapping Method to Original.

Page 67 - To get the results shown in the book you must disable colour management. Also the sharpness of the displacement in render is greatly affected by the alias method used and in the packt file gaussian is used but that isn't default and we haven't been told to change the aliasing method in the book.

Page 68 - Image Sampling settings for the plating-bump-1.png file should have the filter type set to Box somewhere between steps 10 and 14.

Page 68 - Step 14 needs to change the bump mapping method to original as it is not set to this by default and we are not told to in the book, yet the official packt file use the original method.

Page 68 - Step 16 Set Nabla to 0.10

Page 69 - Under the Colour Section for the texture for beaten-bumps set Brightness to 0.9 and Contrast 1.2.  Under influence set the Normal Bump Mapping Method to Original.

Page 70 - Image Sampling for the plating-spec-pos.png, the filtering type needs to be set to box, as this is what it is in the packt files.  The Image Sampling section also should have Alpha Use option deselected, as this is not mentioned in the book and it is off in the packt files.  If it is on it affects highlights badly.

Page 72 - The Blend texture should have Color > Adjust > Brightness set to 1.3 and Contrast to 1.7

Page 73 - Under the Image Sampling panel for the Oxidization texture the Filtering method needs to be set to Box and the use Alpha option needs to be deselected.

Page 79 - Step 5 for the path-bump texture needs to have it bump method changed to Compatible.

Page 80 - Step 4 of the mask texture should also include setting offset values y -10 , z .10  as this is the values they have in the packt files, not mentioned in the book text.

Page 97 - Step 8 should probably be rotation of the z axis to 90 not x, the x and y should remain at 0.  This appears to be an error in the official packt files because the barber pole tube is rotated by 180 and hasn't had its rotation applied.  If the rotation was 0 (as it would be if made by the user as described in the text of the book), then its the z axis that needs keying.  Also on checking further the coordination system in the packt file is set to local (it would not be set to this by default and is not mentioned in the book text).

Page 98 - Step 9 - This should the be the Z axis which should be set to -90 degrees, then set the keyframe.

Page 98 - Paragraph that starts "The Y curve in the F-Curve editor" should replace Y with Z.

Page 98 - Paragraph that starts "The texture was applied to the mesh using Tube mapping"  - This paragraph is incorrect.  It needed to be rotated between the original barber pole tube mesh because it was rotated, had it not been rotated no rotation would have been required.  As an example see file p109-barber-pole-02-corrected.blend

Page 101 - Step 4 says set Noise to Hard, yet it is Soft in the official packt files.

Pdf Page 101 - Step 6 needs to mention that the Bumpmapping Method needs to be set to Compatible.

Pdf Page 101 - Step 9 needs to mention that the Bumpmapping Method needs to be set to Compatible.

Pdf Page 106 - Steps 4 to 6 seem to not work and dont match what is in the packt files.  To closely match the packt files do the following:
    For Pos Number 0 - goto frame 1, then set the color selector to r1, g0, b0, a1, insert a keyframe on the color selector, goto frame 100, insert another color selector keyframe, goto frame 150, change the color selector to r1, g1, b.311, a1, insert a color selector keyframe.
    For Pos Number 1 - goto frame 1, then set the color selector to r1, g0, b0, a1, insert a keyframe on the color selector. Insert a keyframe at Pos:.011.  Goto frame 100, set color selector to r1, g0, b0, a1. Insert a color         selector keyframe.  Goto frame 150. Key pos: .079 and key the colour selector with r1, g1, b0, a1
    For Pos Number 2 - goto frame 1, insert a keyframe at pos:.102.  Goto frame 150 and the insert a keyframe at pos:.231

Page 110 - Paper fire works, but looks not very good.

Page 112 - Step 6 mentions that they will see various fields such as how many images in a sequence and start and offset fields and auto refresh.  These fields by default will not be visible unless you first in the Image panel > source section make sure that the Sequence option is selected.  It also will only tell you how many frames are in a movie , not a sequence.

Page 112 - Step 7 needs to also mention to set RGB Multiply for G and B to 0

Page 112 - Step 9 Fails to mention that to get the Red Alert texture to align correctly Image Sampling Flip XY Axis must be selected.

Page 116 - Image Sampling need to have Flip XY Axis ticked for the tv movie texture to be orientated correctly on the screen.

Page 122 - Step 3 - Probably should be made clear that the position of hemi lamp is not important, only the rotation of a hemi lamp alters the angle things will be lighted from.

Page 123 - Step 6 mentions that Crop will still be active even though it is grayed out.  This is not the case in later version of Blender.

Page 123 - Step 9 mentions that the compression slider for png files controls image quality.  PNG is always lossless, image quality will not be affected by the slider only the resulting file size.  It is configurable because larger compression make generating the file smaller on disk but it can take a while to carry out the compression calculations.  JPG images however do get their quality effected by this slider.

Page 130 - Paragraph that starts "Full raytraced ambient occlusion can take some time"  - Mentions that Ambient Occlusion is only available if you render with raytracing enabled.  This is incorrect.  Ambient Occlusion when using Approximate gather is only dependant on mesh geometry to do its work.  Only when using Ambient Occlusion with the Raytrace gather method do you require raytracing to be active.

Page 130 - Paragraph that starts "Occasionally, you may go too far with default settings and..." - CTRL+N will only reload your saved default screne, it will not Load Factory Defaults.

Page 138 - Paragraph that starts "There is also no restriction on using lower case of capital character in a name" - Blender considers different case texture and material names to be completely different.  Ie Mater and mater are different in Blender.

Page 153 - Step 4 specular Intensity should be set to .235 and slope should be set to .3 , to match the packt blend files.

Page 153 - Step 9 needs to mention that in the Mapping panel you need to set the Coordinate type to Reflection for the Environ-map texture.  Otherwise the environment map will not work correctly as its reflections will be wrong.

Page 154 - Step 4 mentions to set Geometry/Normal to a value of 1 , yet in the packt file it is set to .3

Page 162 - Step 13 - The Bump Mapping Method should be set to Compatible.

Page 171 - Step 13 says to set the Blend value to 3, where as in the packt files it has its value set to -3

Page 175 - Step 1 should say from the Channel menu, not the Key menu.

Page 177 - Step 9 should also include setting the Bump Mapping method to Compatible.

Page 177 - Step 11 should also mention that the Cloud Noise Type for the small-waves texture should be set to hard so as to match the one in the packt files.

Page 178 - Step 17 - Should also mention to set the Mapping Coordinates to Object and set the Mapping Object text field to wave-movement, as it is in the packt files.  It appear that copying the texture does not bring all the settings.

Page 179 - Step 30 should also mention that the Size y value in the Mapping tab is set to 3 in the packt files and so should be in the book text.

Page 181 - Step 3 - The foam-mask-bump2.png is not on disk or supplied, missing and is used it recipe

Page 195 - Paragraph that starts "When you move the mesh in Object mode, you will not see the displacement change until you render." - This doesn't appear to be the case any more, moving the mesh in Object Mode also updates its displacement in recent builds.  At least when the Texture Coordinate system on displace modifier is set to Global.

Page 207 - Step 14 - Toolbox is on the left.

Page 220 - Step 6 will only work if you have an image to bake to in the uv image editor.  Other wise you will get an error displayed in the header.

Page 257 - Step 9 file house-14.png seems to be missing from the packt files.

Page 268 - Steps 8  is wrong because Blender interface for smoke changed.  Most of the chapter on smoke will not work because of changes in the way Blender does it, in more recent versions. 

Review Score 50%