Cinema 4D / BodyPaint 3D Program Documentation Tutorials Materials & Texturing Tutorial Basic Surface Properties
Function available in CINEMA 4D Prime, Visualize, Broadcast, Studio & BodyPaint 3D

Editing Materials

As already mentioned, the Cinema 4D material system is one based on channels. Each channel represents one material property. Many surfaces can be simulated using few channels. Therefore, using a myriad of channels, e.g., Luminance, Fog, Environment, Normal, Alpha, Glow, Transparency and Displacement is often not necessary. So don’t be intimidated by the numerous channels and their wide range of parameters. Generally speaking, all everyday surfaces can be created using just a handful of these channels.

The Material Editor

After a new material has been created a simple double-click on its icon will open the material in the Material Editor window. Editing a material in the Material Editor is often more convenient than doing so in the Attribute Manager. At the top left of the Material Editor window is an enlarged preview icon of the texture. The look of the preview icon can be modified by right-clicking on it and selecting one of the options from the context menu that appears. In addition to several basic shapes from which to choose, various render types, such as Global Illumination or illumination with a soft shadow, can also be selected. It helps to select a type of illumination that matches the object to which the material is applied. However, this will only give you an approximate representation of how the material will look on the object - therefore, you should conduct test renderings to get a precise impression of how your material looks.

The preview icon shape can be rotated freely by right-clicking and dragging on it (alternatively you can left-click and drag while simultaneously pressing the Shift key). Furthermore, an animated preview object can be selected from the context menu (Object (Anim)) which, in conjunction with activating the Animate command, will create a continuous rotation animation of the preview icon. This option can be useful when working with other preview objects if your material contains animated shaders or film textures. This will show how the material changes over time. After you have viewed the effect you should deactivate the Animate command to prevent unnecessary memory usage. The same applies to the size of the preview icon - the larger it is the longer it will take to calculate. This is especially true if Global Illumination is used in conjunction with the Open Window command. This command will open a scalable window for that material, in which the preview image can be scaled far larger than the standard preview, as shown in the image below:

In addition to the display options you can also rename the material using the text field directly below the preview image itself. Directly below the name field you can select from several layer options for that material.

Defining Color and Brightness Values

A material’s color and brightness play a large role in how it looks. This is why so many channels contain (apparently identical) color selection options.

You can select from a list of color systems to use. The easiest way to stay consistent is to define the corresponding parameters in the unit settings of the Preferences... (Edit menu).

The color selection system was greatly enhanced in Release 17 and now offers a wide range of possibilities for selecting colors, which can also be saved as a preset. This color composition will then be displayed as a default color when a dialog window is opened that contains a Color Chooser; the default color can, of course, be hidden, if desired. The options are described briefly below - more detailed information can be found in the Cinema 4D documentation.

The Special Mode is displayed at the top of the Color Chooser and can, if it’s not disabled entirely, contain either a Color Wheel, which represents the Color Spectrum of previous Cinema 4D versions or an image file for selecting a Color Spectrum. Below this are the settings for RGB Mode, which mixes the colors red, green and blue additively; the intensity of the RGB Range colors can be defined numerically or using a Show Hexadecimal Field. You can also enable an Old RGB Sliders, which was used in releases prior to R17. The HSV Modedefines the color using Hue, Saturation and Value (brightness). The Kelvin Temperature Mode uses the color temperature models from the field of photography for which reddish colors have lower color temperature values and blueish colors have a higher temperature values; this mode is well-suited for defining the colors of light sources. The Color Mixer Mode lets you steplessly mix two colors (which can be defined by double-clicking on the respective color fields). In Swatches Mode you can access custom defined color groups, which can be defined for a given scene or as default colors.

The following image shows an example for the Color Chooser in Cinema 4D or BodyPaint 3D. All aforementioned color selection types are enabled - but in real-world use you will probably restrict yourself to using 1 or 2 types. Individual color selection types can be enabled or disabled by clicking on the respective icons at the top. The Shift and Cmd/Ctrl keys can be used to combine selections. The remaining examples in this tutorial will use the HSV color mode.

Color systems from which you can choose

Once a color has been defined it can be brightened or darkened using the Brightness slider. As is the case with many slider values in Cinema 4D, a value greater than 100% can be entered manually in the Material Editor, which allows you to increase brightness dramatically. This can be useful if the brightness of a Luminance channel, for example, is used in conjunction with Global Illumination to illuminate a scene, or if the shadows generated by a weak light source should be strengthened using the material’s Color channel.

Loading Shaders and Textures

A single color value may not always do. For example, wood grain or the color variations of human skin are made up of more than a single color. Even if a material should only be made up of a single color it is often better to add variations to simulate usage or dirt. This can be done by loading JPEG, TIFF or BMP files - manually created or photographs of real dirt, grime or structured surfaces such as walls or floors. Numerous companies have specialized in creating just such textures for use in 3D. In many cases you can also use your own digital camera to create such images. BodyPaint 3D can also be used to paint directly onto a surface. The image below shows the difference between a material with only a bitmap graphic and one with a bitmap graphic simple color added.

You can also use shaders instead of images. Shaders are tiny routines that mathematically calculate a pattern or a certain effect such as light entering and diffusing within an object. Shaders can also be used for simpler applications such as the creation of a color gradient or to color correct a loaded image. Shaders can be used in many different ways and are used in some capacity in almost every material.

Examples of various shaders: marble; wood; glass.

An advantage of using shaders is that you don’t have to take into consideration a bitmap’s pixel resolution. A pattern generated by a shader looks good close up and doesn’t pixelate or blur as a bitmap image might. Therefore, it is recommended that you use shaders whenever possible.

Cinema 4D contains numerous shaders. Additional shaders can be added such as MoGraph, Sketch and Toon or other external applications. All installed shaders can be found by simply clicking on the material channel’s Texture button, as shown below:

Some shaders are displayed directly, others are grouped in sub-menus according to their application, e.g., Effects or Surfaces. The same menu lets you load bitmaps into your material. Alternatively you can click on the button to the far right which will open a dialog window from which you can select an image.

Integrating the Scene and Image Textures

When loading images, Cinema 4D attempts to bind the image to the scene in which it is used. This process can be made more efficient via the Texture Path option in the Preferences … menu.

If you use dedicated directories for images, these can be entered in the available text fields (manually or by clicking the button at the far right). Cinema 4D will automatically search these directories the event a text path used in a given material is no longer valid.

By default, Cinema 4D will search for images in the directory of the current scene as well as in the "tex" directory, if one exists.

If the image cannot be found an error message will appear stating that this image (and others, if applicable) cannot be found and may not render correctly.

To prevent this from occurring, Cinema 4D will ask if the image to be loaded should be copied to the scene directory. Doing so will also make it easier to transfer a scene to another user or computer since all images associated with the scene will be located in the scene directory. Also helpful in conjunction with this is integrating the scene and images via the Save Project with Assets... command (File menu) which will automatically place a scene’s images into a local "tex" folder, which can then be easily transferred together with the scene file.

Texture Interpolation Options

Once a bitmap or shader has been created in a given material channel a preview image with options for interpolation (Sampling) and blurring will appear beneath Texture field.

The actual pixel resolution of an image is also scaled during rendering, which depends how close the object to which the material is assigned will be to the camera when rendered. The options in the Sampling menu define which algorithm should be used for interpolation. If None is selected, no interpolation will take place and only the texture’s actual pixels will be used. The scene will render faster but will result in pixelation and aliasing on distorted textures. The Circle and Square options blend neighboring pixels in their calculations and can result in more natural-looking surface. The Circle option gauges the surrounding pixels in a circular fashion and is less fitting for use on squared objects than the Square option which gauges the surrounding pixels in a rectangular fashion.

Issues can, however, occur on objects that reach deep into 3D space. For example, a material at the end of a horizon can end up looking very turbulent.

The options Anti1, Anti 2 and Anti 3 result in a progressive blurring of the entire texture. Small bitmaps can be blurred greatly using these options. However, the interpolation of a flat surface leading to a distant horizon can still be problematic and may lead to turbulence in the distance.

In contrast, the MIP option, which stands for "Multum in Parvo" (Much for little). With regard to our application, this means that many details can be depicted within a small space. Texture pixels are calculated in relation to the pixels of the monitor. When a texture is viewed from far away more texture pixels will appear around a given pixel, as would be the case if the texture were viewed from up close. Also, the farther an object lies from the camera, the stronger the blur effect and mixing of colors will be. This helps avoid turbulence in textures that reach deep into 3D space, as shown in the image below.

At top: the structure becomes more coarse in the distance. This effect is reduced by MIP mapping in the bottom image.

The SAT option works similar to the MIP option and but is more exact and prevents pretty much any flickering or noise from appearing. However, the SAT mapping method also requires about twelve times more memory and quite a bit more time for its calculations. Furthermore, this method can only be applied to textures with a maximum size of 4000 x 4000 pixels. Therefore, MIP mapping should be used as the default mapping method and SAT mapping should only be used in instances where higher quality renderings are needed.

Shaders are automatically rendered using the SAT mapping method - without the aforementioned disadvantages with regard to memory usage and render time. This is another reason shaders should be used instead of images whenever possible.

Blur Settings for Textures

If you don’t get the desired results using the MIP of SAT methods you can use the Blur Offset setting to diffuse the texture even more. The Blur Scale setting can be used to further correct the MIP or SAT mapping. A positive value will increase diffusion and a negative value will result in a accentuation of the texture’s details. If the negative value is to large it can again lead to flickering or noise effect on textures that lie flat to the angle of view.

Texture Mix Mode

Loaded textures can also interact with defined color values, e.g., to colorize a grayscale image or to affect the brightness of an image or shader. This interaction is created and adjusted via the Mix Mode and Mix Strength parameters below the material channel’s Texture settings.

If the Normal option is selected, the loaded texture will behave like a bitmap layer that lies over the defined color. By reducing the Mix Strength value to less than 100% the texture’s opacity will be reduced correspondingly, thus making the underlying color more visible through the texture. This method can be used to create discreet patterns. The remaining options, Add, Subtract and Multiply mix the texture and color according to the defined Mix Strength. For example, the Multiply option can be used to adjust, or even animate, a texture’s brightness or color.

A pattern was created (right) by multiplying a color value (left) with a grayscale shader (center).

Continue …