Managing Blender Materials

Colin Litster

February 2011


Blender 2.5 Materials and Textures Cookbook

Blender 2.5 Materials and Textures Cookbook

Over 80 great recipes to create life-like Blender objects

  • Master techniques to create believable natural surface materials
  • Take your models to the next level of realism or artistic development by using the material and texture settings within Blender 2.5.
  • Take the hassle out of material simulation by applying faster and more efficient material and texture strategies
  • Part of Packt's Cookbook series: Each recipe is a logically organized according to the surface types with clear instructions and explanations on how these recipes can be applied across a range of materials including complex materials such as oceans, smoke, fire and explosions.
        Read more about this book      

(For more resources on Blender, see here.)


Organizing your work, as you develop any project, will ensure that you achieve your task sooner and more efficiently. How to do this in Blender may not be immediately obvious. However, Blender has a raft of tools that will make your life, as a materials creator, so much easier. This article deals with the techniques that can be used to organize your textures and materials, and thus encourage some order to complex tasks.

While Blender can be a very flexible 3D suite, allowing the designer more than a single approach to a simulation, it is better to develop a more ordered strategy to your material and texture creations.

We will explore several recipes that attempt to show how to control material creation. However, apart from the inbuilt tools, there are several setups that will be dependent on personal preference. You are therefore encouraged to modify any of these recipes to suit your own approaches to organizing material production.

Setting a default scene for materials creation

It's always a good idea to set the initial state of Blender to suit your needs. For us, the primary task is to explore materials and texture creation. When you first install Blender, a default layout will be presented. From here, you can perform most tasks, such as modeling, and rendering, as you create your desired objects. We can aid the process of surface creation by improving the lighting in the default setup. Adding a second light can give better definition to objects that are rendered.

Getting ready

When you first download Blender, the default factory settings provide a simple cube illuminated by a single light. Even if you have already changed some of these defaults, you will be able to apply the suggested changes in this recipe on top of your personalized settings. So, you can either start with the factory settings or your own.

How to do it...

  1. Start Blender, or select New from the File menu. This will ensure that any previous default settings are loaded.
  2. Move the mouse cursor into the main 3D view and press SHIFT+A to bring up the Add menu and select Lamp of type Hemi.
  3. Move, and rotate the lamp so that it will illuminate the shaded side of the default cube. Try to adjust its height and distance from the object similar to the default lamp.
  4. From the lamp menu, set the Energy value between 0.200 and 0.500. Render a quick scene and adjust as necessary.

    Managing Blender Materials

  5. Move to the Render panel.
  6. In the Dimensions tab, select Render Presets. From the list, select HDTV 1080p. This will give a render size of 1,920 x 1,080 square pixels. However, alter the Resolution percentage slider to 25%. Just below the Aspect Ratio settings are two buttons, check Border and then ,Crop. Now, uncheck Border. This might seem strange but although the Crop checkbox is grayed out it is still set.
  7. Ensure the Anti-Aliasing tab is selected, and the figure below that is set to 8, with the anti-aliasing method set to Mitchell-Netravali. Ensure that the Full Sample is NOT, set.
  8. Under Shading, ensure Textures, ,Shadows, Ray Tracing, and Color Management are set, while Subsurface Scattering and Environment Map are not.
  9. Move down to the ,Output tab and from the list of choices select PNG. You can also change the Compression percentage to between 0% for a loss less saved image or up to 100% for full compression. I usually set to 0% to produce the clearest images.
  10. Finally, in the Performance tab, ensure that Threads is set to Autodetect.
  11. You can save these settings as the default scene by pressing CTRL+U and selecting Save User Settings. Now, whenever you restart Blender, or select a new scene, you will have a better lit setup with render settings providing an ideal environment to create materials.

How it works...

The recipe provides a relatively simple set of changes to the factory default scene. However, they are ideal for materials creation because they make it easier to judge the surface characteristics as you develop the material.

We started by improving the default lighting by adding a second light to give a little more illumination to the shaded side of the objects you will be creating materials and textures for. Being able to set this as the default scene means we don't have to worry about special light setups every time we create a new material. It also helps with consistency because the levels of light will be very similar between every new material you create. It is not there to provide the finished lighting for every scene you create, but just to give a more even illumination when you test render materials you are developing.

Managing Blender Materials

What we have done is produced a key light and a fill light, which is the minimum in almost any 3D lighting arrangement. The Hemi light offers a nice broad illumination but will not cast shadows. This is ideal for a fill light as it can represent bounced light off of ceilings, or walls, or even the outside world. The Point light source acting as our key light will cast shadows just as the strongest light in a natural environment would.

When you have developed your materials, you can light the actual scene with a more complex or artistic lighting setup if you wish.

For the majority of digital work, we need to use square pixels and a resolution that matches the size we wish to render to. Here, we have set the render size and resolution from the presets to HDTV 1080p. This produces a relatively large render area with square pixels. Square pixels are really important when developing objects or materials for digital work. It's possible to set different aspect ratios that would alter the screen and render proportions, which are of no value when creating models or developing and placing textures on them. If you eventually want to render out to these none square pixel ratios, do so only when all you're modeling and scene creation is finalized.

The render panel offers several useful presets. These are based on screen resolution and pixel aspect ratio to exactly match the desired output. Be careful not to inadvertently select one of the non-square pixel ratios, like HDV 1080p.

In the same step, we set the render resolution down to 25%. This will still give a render size of 480 x 270, which is OK for initial quick renders to check how a material is progressing. You can easily scale that up to 50% or 75% for more detailed renders. However, these will obviously increase the render times.

If you create a border in the camera view, by pressing SHIFT+B, and dragging the orange dotted border, Blender will only render what's inside that rectangle. This is why we also checked the Crop checkbox so that Blender automatically crops the rendered image. If you perform a bordered render without the Crop set, the unrendered part is filled with black pixels. Therefore, setting the crop checkbox will ensure it will be cropped if selected. This will save valuable render time and also smaller image saves.


Even if we are rendering to a large size, we should set Blender to anti-aliase the resultant render to remove the jagged edges that would otherwise appear. Here, we have set the antialiasing method to Mitchell-Netravali. This is probably the best of the available options. It will give very reasonable anti-aliasing at the relatively low setting of 8 without unreasonable render times. For final render, you might want to consider raising the level to 16.

Turning off unneeded render settings

Subsurface scattering and Environment map are not always required so can be turned off in the default scene. They can always be turned on for a particular material simulation that might require them. However, normally, they are not required and render times will be reduced by having them turned off.

If you are working on a material that requires environment mapping or subsurface scattering, you can set these, then save your first file of the simulation. Saving a blendfile will save all additional settings as well as objects and materials.

Blender offers an enormous range of output formats for your rendered still or animation masterpieces. You will not need to use them all so which should we choose as a default?

PNG (Portable Network Graphics) has lossless data compression, as compared to JPG which is lossy, and therefore, the picture is degraded every time you save. However, PNG can efficiently compress images without the subsequent loss of quality. It can also handle alpha channels. It can be read by most web browsers so is suitable for the Internet. Because Blender can render an animation as a series of still images, it is ideal for producing animations as well. Several video editors, including Quicktime, Adobe Premiere, and of course Blender, can take these sequenced still PNG images and combine them into movie formats like .mov, .avi, .mp4, .mpeg, and so on. I would therefore suggest that PNG is probably the best all-round image format to set as default.

If you're primary work is in either the game development, or print, fields you might want to consider using TGA (Truevision Advanced Raster Graphics Adapter), or TIFF (Tagged Image File Format). However, windows-based systems will not display thumbnails of TIFF formatted images at this time.

There's more...

There are other settings that you may want to consider as appropriate in a default scene. You can set locations of often used resources from the Blender User Preferences window, CTRL+ALT+U. Under the file menu of this preferences window, you can set file paths for such things as Fonts, Textures, Render Output, and so on.

Many of these locations will be specific to your operating system and where you choose them to be. Blender defaults are fine, but if you want to be specific go to this window and enter your appropriate choices. To ensure they are saved as default, click the Save User Defaults button, or press CTRL+U.

(Move the mouse over the image to enlarge it).

Additional settings for default scene

If you have a powerful enough computer system, you might want to consider setting some more advanced options to make your test renders look really special. In some ways, what you will be doing with this recipe is creating a more production-ready materials creation environment. However, each render will take longer and if it is a complex mesh object with transparency and multiple large-scale image textures, you may have to wait several minutes for renders to complete. Although this may not seem to be a significant disadvantage, the extra render time can build up as you produce multiple renders to test the look of a material simulation.

The renders reproduced in this article, and online, were created with these additional settings. The majority of development work also used these additional settings. While the majority of the simulations only took a few minutes to render at maximum resolution, one or two took a little longer. If that is the case it can slow down your material development, just turn some of these additional settings off before your first save of the blendfile. Any settings will be saved with the blendfile.

Getting ready

As we are adding additional settings to the default scene, ensure you have either just started Blender, or selected New from the File menu. This will set Blender back to the default scene ready for you to append the additional features suggested here.

How to do it...

  1. In the 3D window, ensure that the cursor is at the center. SHIFT+S, Cursor to Center.
  2. Add new object of type plane. SHIFT+A, Mesh, Plane.
  3. Scale the plane by 50 Blender units. The easiest way to achieve this is to type S, enter 50 and press the ENTER key to confirm.
  4. Grab the plane and transpose it down -1 in the Z direction. You can either select the plane, then type G, Z, -1, and ENTER to confirm. Or press N to bring up the Properties panel and alter the Z location to -1.000.
  5. That has ensured that the plane is below any object you create from the origin. New objects are created at the cursor position and are always 1 Blender unit from their own origin, which will mean they should stand on the ground plane you have just created.

  6. Move to the Materials panel and create a new material, naming it ground.
  7. Under the Diffuse tab, change its color to R, G, B 1.000 or pure white.
  8. In the Specular tab, change the type to WardIso with an Intensity of 0.250, and a Slope of 0.300.
  9. Under the Shadow tab, select Receive and Receive Transparent.
  10. That has set up the ground ready to act as a shadow-receiving backdrop to our material creations. However, we need to set up a better shadow than that in the default key light setup.

  11. Select the key light.
  12. From the Light panel, select the Shadow tab and set Ray Shadow with Sampling set to Adaptive QMC, with Samples set to 6, and Soft Size of 1.000 and Threshold 0.001.

  13. Finally, we will set up ambient occlusion to give our models a little more shape.

  14. Move to the World panel and select Ambient Occlusion. Set its Factor to 1.30 and its Mix type to Multiply.
  15. In the Gathering tab, select Approximate, with Attenuation/Falloff selected and its Strength changed to 0.900. Set Sampling/Passes to 6.
  16. Select the Render tab, then save this as the new default setting by pressing CTRL+U.

    Managing Blender Materials

How it works...

The plane is there just so that any shadows will have somewhere to fall. Shadow casting is normally created as a default once an object has a material assigned. In step 19, we also said let the plane receive transparent shadows. That means that objects casting shadows with an alpha component such as windows, or transparent materials, will have accurate shadows showing that transparency.

We also set up soft raytrace shadows by turning on this feature for the key light. The important setting here is the number of samples. Too low and the shadow will look fake. Too high and the render times will become rather lengthy. Setting this to 6 is a good compromise for accuracy and speed.

Finally, we have set up ambient occlusion, which simulates the darkening of shadows in crevices and shaded portions of a model. The higher the Factor level, the darker the ambient occlusion will become. Essentially, the darkening is being multiplied on top of the rendered image, although it can also be set to Add.

Full raytraced ambient occlusion can take some time to compute, so it is good news that Blender has an excellent Approximate method, which is very quick. The Attenuation and Passes can be tweaked to give the best balance between accuracy and render time. Too low a setting will produce a spotty darkening that is not very real. We set Passes at 6, which is another excellent compromise. Ambient occlusion is only available if you render with raytrace enabled.

To save all these extra setting as the default, we only had to press CTRL+U. Now, whenever you start a new scene, these settings will be pre-set.

There's more...

Occasionally, you may go too far with default settings and find that render times become too long when you only want to check how a material is progressing. Another common problem is that users will sometimes inadvertently save a pre-created scene as the default. If this happens, you can always return to the factory settings by pressing CTRL+N or choosing the Load Factory Settings from the File menu.

As you will be doing this regularly, the default light setup is perfectly adequate. However, for a 'hero' render, I would recommend the following settings:


Your key light, the one to the right of frame, should be set to Energy 0.500. Under the Light panel, set ShadowRay Shadow. Under Sampling, set to Adaptive QMC and Soft Size to 5.318, and Samples to 6. This will create a nice soft shadow, which is more realistic than the sharp ray shadows produced by the default settings.

Ambient occlusion

Ambient occlusion can produce a nice darkening of overall illumination around those shaded parts in our renders. It adds a decent approximation of how real light and shadow spread through an environment giving a render depth.

In our example, a Blend sky has been set in the World panel, with a Horizon color R and G set to 0.80, and B set to 0.69. The Zenith color has been set to R 0.69, G 0.75, and B 0.80.

Ambient Occlusion has been selected with the following settings: Factor 1.00, and Multiply. Under Gather, Raytrace is selected and Sampling is set to Adaptive QMC, with Samples 24. Threshold and Adapt To Speed are all set to defaults. Under Attenuation, Distance is set to 10.000 with Falloff and Strength set to 0.220.

        Read more about this book      

(For more resources on Blender, see here.)

Creating an ideal Blender interface for material creation

Blender comes equipped with several pre-configured windows to help you in your mesh creation, animation setups, and sequencer editing tasks. These pre-defined setups are available from the main Blender Information header.

You are not limited by these factory defaults as it is possible to design new ones and add them to this menu. One notable omission from the factory defaults is any kind of material creation screen. In this recipe, we will create such a screen and save it in the menu of our default scene so it will always be available whenever we start a new scene.

Getting ready

From the Blender screen, select New from the File menu to ensure you have the unmodified default screen loaded.

How to do it...

Rather than create a brand new screen from scratch, we can copy one of the preset window types that most closely matches what we wish to have in a materials creation screen. For this recipe, we can use the Default setup, which offers most of what will be required to create a material.

  1. Select the Default screen from the Browse ID data selector in the Blender Information Header.
  2. From the same selector, click the + icon to create a copy. The header should display Default.001 to show it's a copy.
  3. Click inside the name and change it to Materials.
  4. The layout of our new Materials screen has a large area set to 3D view, a Timeline window below this, and a vertical window to the right that has a Outliner window at the top and a Properties window below that. We need to change the 3D view to create a few more window types to make it easier to work with Materials.

  5. Move your mouse cursor over the top right corner widget of the 3D window until it changes to a cross-hair. Drag the cursor down and release about half way down the current window. This will essentially divide the 3D view into two identical windows.

  6. In the top window header, change its editor type to Node Editor.
  7. Divide the window below this into two vertical divisions by dragging the corner widget to the left about half way. You will now have two 3D windows below the Compositor window.
  8. In the left hand 3D window, change its editor type to UV Image Editor.
  9. In the right hand 3D window, change the 3D view to Camera. You can quickly achieve this by pressing the Keypad 0 key while your mouse cursor is over that window. Also, remove the Tool Shelf by pressing the T key.
  10. The general location of each element is now set but we can do some fine adjustments to make it easy to work with materials.

  11. In the vertical Properties window, select the Render panel if not already selected.
  12. Under the Render tab, select Display type Image Editor.
  13. In the UV Image Editor window, to the left, click on the little render icon and select Render Result.
  14. Finally, we can save this new screen setup. Reselect the Default screen from the Browse ID data selector in the Blender Information header. Press CTRL+U and Save User Settings.

    Managing Blender Materials

How it works...

Blender offers total flexibility in how the screen can be configured for any editing task. However, consistency in window location will lead to an improved working environment. Almost inevitably, the Blender beginner will use the factory default screen for most of their work. Your mouse hand will become used to the vertical properties window on the right of the screen. So, duplicating this in this materials screen makes sense.

The large node area gives us a good work area if we need to create texture or material node setups.

The Camera view allows us to see what part of the model will be rendered and the UV Image Editor will show the rendered image beside this camera view. Indeed, when rendering, the window focus will remain with this screen rather than switching to a separate render window requiring the ESC key, or re-clicking on the editing window, to recapture focus.

We have access to the Object browser, allowing us to select or hide from render view an object in the rendered view.

You can hide an object, from rendering, by de-selecting the render icon in the object browser window. This can be useful if you have a busy scene, with lots of different objects, when you just need to concentrate on the object material you wish to create.

Having the timeline at the base of the screen is also of value because the object, or camera, may move in an animation. You may wish to develop a material and render from different viewpoints. Setting these up with a camera or object rotation can make this possible. Therefore, you only have to drag the timeline until the camera shows the side of an object you wish to test render.

Creating an ideal texture animation setup

We will create a screen setup in this recipe.

Getting ready

Ideally, you should have created the previous recipe because we will use that to act as a template, applying a very simple modification to transform it into an animated materials layout. We will run through this recipe quite quickly so if you do not understand the interface controls to change and position Blender windows, complete the previous recipe, which should take no longer than 15 minutes. If you do this, the current recipe can be completed in less than 5 minutes.

How to do it...

You will need to begin by either starting Blender, to ensure the default scene is loaded, or to select New from the File menu.

  1. Select the Materials screen from the Browse ID data selector in the Blender Information header. This was the screen created in the previous recipe.
  2. From the same selector, click the + icon to create a copy. The header should display Materials.001 to show it's a copy.
  3. Click inside the name and change it to Animated materials.
  4. That has just created an exact copy of the materials screen but with a different name. We will change the top node window to something more appropriate for materials animation.

  5. In the top Node Editor window, change the editor type to Graph Editor from the header bar. This is at the bottom of the window in this screen. Click on the Displays current editor type. Click for menu of available types.
  6. In the displayed header, ensure the F-Curve Editor is selected.
  7. There are ten buttons to the right that can be turned on, by clicking and revealing a darker background, or turned off, by clicking to display a lighter background. Not all of these are required for materials or texture animation, so let's turn some off.

  8. Select the first button, the arrow icon button, and click until its background is dark, showing it is selected.

    This button when set will ONLY include channels related to the selected objects and data

  9. Do the same with the second button, the axis icon.

    This button when set will Include visualization of object-level animation data (mostly transform)

  10. The next eight buttons only have three turned on. The Node icon.

    This button when set will Include visualization of node-related animation data (mostly transform)

  11. The material icon.

    This button when set will Include visualization of material-related animation data (mostly transform)

  12. The texture icon.

    This button when set will Include visualization of texture-related animation data (mostly transform)

Time to save this to our user settings, remembering to switch back to the default screen before pressing CRTL+U Save User Settings.

How it works...

All we have done here is copy the materials screen, change the top screen from Node Editor to Curve Editor, and remove a few unnecessary display settings that are not relevant to material and texture animation.

You can create as many of these screens as you like. Once saved as user settings, they will be available every time you start a new scene.

Managing Blender Materials

        Read more about this book      

(For more resources on Blender, see here.)

Naming materials and textures

Blender gives you total control over how you name materials and textures. Although this freedom may be liberating, your material naming style can soon become messy or confusing. This is particularly so if you are working in a production environment where many blendfiles may need to be produced, and several months may elapse between working on a particular material, or object that uses a material.

Even if you are working as an individual, it is amazing how quickly one forgets how a particular material was named. Unfortunately, there are no easy buttons in Blender to automatically organize materials and textures. You will have to develop your own methods that suit your type of production. However, we can discuss, and begin to develop good practice, through this recipe, and show some guidelines for material and texture naming methodologies.

These are not set rules, and you are encouraged to adapt them to your own requirements. However, the following methods have been found useful in my own productions.

How to do it...

Blender has certain restrictions that should be respected. However, they will help you develop better naming strategies.

  1. Start Blender, or select File/New to create the default scene. We will use this to experiment with material and texture naming.
  2. With the default cube selected, create a new material and name it 0123456789012345678901. That is 21 characters long.
  3. Click the + sign at the right of the newly created material to produce a copy. You should see that the name will have reduced to 20 characters in length.
  4. Click the + sign again and see that the name reduces to 19 characters.
  5. Do this a few times until the name changes to 12345678901234567.001
  6. Rename the texture using some of the less common keys on your keyboard !"£$%^&*(){}[]@~#?. You will notice that almost any key is accepted in a material or texture name. Rename it Mat & Tex Names.
  7. Move to the Texture panel and create a new texture of type Clouds. You will notice that the name will automatically be named Texture.
  8. Create a new texture, in the next available slot, of type Marble. The name of this texture will automatically become Texture.001. Rename it marble.

You do not need to save this blendfile.

How it works...

Although Blender allows a maximum of 21 characters in a material or texture name, when you copy a material or texture, it will attempt to add a dot followed by a numbered extension from 000 to 999. Therefore, if the name is longer than 17 characters it will remove one character for every copy until it comes to 17 characters. To make naming of materials and textures consistent, limit their length to no more than 17 characters. In fact, keep names as concise as possible while making their meaning obvious.

Tyrannosaurus-skin is too long.

TRex-skin is well within the max of 17 characters, yet makes just as much sense.

Don't be tempted to use all 21 characters for the name. You may need to make copies of materials or textures in a production and using the automatic dot number addition to the copied name is quite a neat way of organizing them.


You will have noticed that it's possible to use almost any character in a name. Although this may sound useful, you should avoid these characters as they can be confusing when searching for a particular material or texture several weeks or months later. Try to only use alpha numeric characters, although spaces or dashes can be used to separate items within a name.

There is also no restriction on using lower case or capital characters in a name. Blender does not distinguish between the two. Personally, I prefer to use lower case names, although if you want to differentiate important names, you could enter these as capital letters.

Texture names are automatically created every time you create a new texture. However, these give no idea as to what the texture is so it is recommended that you name them to give some idea as to their origin. Procedural textures have so many settings within them that you may find it best to just name them after the procedural type. However, if you need the same procedural with different settings within a single material, you may find it better to append some text to show how the procedural texture will be used in your material, such as:


See also

If you are interested to see how large-scale Blender productions have approached materials naming you can examine the Creative Commons entire studio backups for the three Blender Foundation animated films:

Appending materials

Once you have created a large range of materials and textures, it stands to reason that you could possibly use them in more than one blendfile or production. This may save you a lot of time in not having to recreate things you have already successfully created.

You may also be able to use a previously created material or texture as a basis for a new one. Fortunately, Blender provides some very useful tools to make this possible.

Getting ready

You will need access to a blendfile that has materials created. Why not use one that you saved from a previous recipe? We will not be modifying this blendfile, merely using or appending some of its materials into a new scene we will create.

How to do it...

Blender allows us to append objects, materials, world settings, and a whole host of other Blender attributes from one blendfile to another. When you append an object, all of its attributes like materials and textures are appended along with it. However, Blender allows us to choose what we are going to append.

  1. Start Blender or choose File/New from the File menu.
  2. Delete the cube if that is what is in your default scene.
  3. Add a Cone Mesh in the center of the grid, SHIFT+S Cursor to Center, SHIFT+A, and select Mesh Cone.
  4. Now, scale it four times S 4 ENTER.
  5. From the File menu, select File/Append, or SHIFT+F1. The screen will change to the browser and from here you can browse to find the blendfile you wish to append a material from.
  6. You will be presented with 11 folders, select Material.

  7. A list of available materials will be displayed. In the copper-turret example, there is only one called copper-roof. Select it and click Link/Append from Library. You will be returned to your Blender scene.
  8. Blender will not automatically apply this appended material to your object. So, with the cone object selected, switch to the Materials panel and click on the Browse ID Data button to display a list of available materials and you should see copper-roof. Select this and the material will load.

Save your work as append-01.blend. Perform a test render and if you appended the same material as I did, you should see the copper-roof material now applied to the cone.

How it works...

Append essentially copies the part of the source blendfile to your current blendfile. The material in our case will be a direct copy of the material data from the source. However, it is now totally independent of that source file. You can modify the material or textures in any way and it will have no affect on the source file. This is great because it is a good way of saving time if you want a material similar to one you created earlier.

This also re-emphasizes why a good naming strategy is so important. In my example, I named the original material copper-roof, which gives a good indication of what the material is. Something like material.004 tells us nothing of what the material is meant to simulate.


This article dealt with ways to make your use of Blender 2.5 materials and textures more structured. You learnt how to organize and name materials as well as how to set up the interface to better suit your material needs.

Further resources on this subject:

You've been reading an excerpt of:

Blender 2.5 Materials and Textures Cookbook

Explore Title