Advanced Material Track
Version 2.0, Updated Feb 2025 using Octane 2024.1.2 and Cinema 4D 2025.1.2 ~6300 words, average read time: 25 min
About this guide
This guide digs in to all the ways we can mix, merge, blend, and layer textures and materials in Octane. It assumes you’re pretty comfortable with the Node Editor. If not, this guide can help with that.
Downloads
All materials created using this guide can be 💾 found here
This guide is also available in 📄 PDF format here
Introduction
The Octane material system is extremely robust and can be as simple or as complex as we need it to be. In this guide, we’re going to go through the anatomy of a material, and then all of the various ways there are of mixing and masking textures, layers and materials.
The DCCs (host apps like Maya or C4D) implement the material system in different ways due to how the app handles its native materials and nodes. This guide will focus on the material system as it exists in Cinema 4D. If something doesn’t work as expected in your DCC, consult the documentation to see how it’s implemented.
Structure
This guide is broken into four parts:
Part I serves as a quick reference to briefly explain when each of the mixing and layering constructs Octane has should be used.
Part II goes over some common concepts that we need to know in order to understand how it all works.
Part III deals with Mixing at the texture level. It provides basic workflows for setting up the Mix Texture & Composite Texture nodes, and talks a little about the operator nodes (Add/Subtract/Multiply) and a few of the procedural mask nodes (Dirt/Curvature/Falloff).
Part IV has some workflows for mixing at the material level. It covers the Mix Material, Composite Material, Layered Material, and Material Layers when used with other material types.
Part I
Quick Reference
This section is a quick refresher that we can use after we’ve gone through this guide and understand what all everything does.
When to use what:
Use a Mix Texture node to quickly combine together two images using a mask. This texture will then be fed into a channel of a material.
Use a Composite Texture node for more complex combinations (including blend modes) of two or more textures. It’s a more versatile version of the Mix Texture node.
Use the other operator nodes (Add, Subtract, Multiply) for a quick and dirty two-texture merge with a particular blend mode and don’t want to bother with a Composite texture.
Use a Mix Material to quickly combine two materials via a mask.
Use a Composite Material to combine several materials via masks - it’s a more versatile version of the Mix Material.
Use a Layered Material for complex materials where we need to overlay multiple types of specular and sheen channels on the same surface. Use this rather than a Material Layer input if we want the freedom to easily swap the base material out in addition to material layers.
Use the Material Layer input in any material type if we want to add layers over the top of an existing material. This is a bit faster and more easier to understand than the Layered Material, but lacks the ability to quickly swap the base material to audition different ones.
Part II
Common concepts
Even though there are a lot of paths toward getting a look we want, all of these build off a few core concepts. Once we get these solidified in our brains, everything else should fall into place quickly.
Anatomy of a Material
A material is a single package that contains a whole bunch of data and attributes that describe how a surface appears to us when it interacts with light. Octane has several types of materials (diffuse, glossy, specular, metallic, universal, standard surface, and a few other special ones).
A material is divided into a number of channels, each of which controls a specific property. Different materials have different sets of channels, but Octane processes any given channel the same regardless of which material it’s part of.
A channel needs some sort of input to tell it how to operate. This is sometimes in the form of an internal value (like a 0-1 slider), or an external texture like an image or a procedural gradient. Some texture types have texture layers to blend together to make more complex inputs.
If we need more than provided channels, or multiple versions of the same channel type (several specular channels, for instance) in a material, we can use material layers to add stacks of extra channels.
Order of Operations
Channels, layers, and other various mixing constructs have a specific order in which they work. We’re probably familiar with this concept coming from a 2D application with a layers panel like Photoshop or Affinity. There’s a base layer, and then the layers higher in the stack affect the layers lower in the stack.
Important: In Octane (and most material systems in most engines), this is often reversed from the way they’re handled in a 2D app. Properties or layers LOWER on the list affect the ones higher up. It’s more akin to how programming works, where code is read top to bottom.
Annoyingly, there are still going to be cases where the order works like 2D apps. For instance, in the Composite Texture node, higher levels affect lower ones. This is just a case where we’ll have to build some muscle memory and remember which way they go.
Mixing
The term “mixing” in Octane generally means taking two or more sources and combining them into one thing. This can happen on both the texture level or the material level.
Often (but not always) masking is applied to determine how much of each area across the surface of the material or model gets how much of the effect of each of the sources. The actual combining is done via a blend mode to specify the calculation used when merging them.
Masking
Most artists should be familiar with this concept already, since it’s found in pretty much every 2D art and design app, and even in traditional media (think masking tape or a stencil). Simply put, it’s how Octane determines how much of an effect one texture, channel, etc. has on the previous one in the stack in any given pixel.
This mask data is either in the form of a bitmap image, or it’s procedurally generated.
Masks work on a scale from 0-1 (0-100%). This should be thought of as “strength” rather than color. It’s visually represented by shades of gray so that we can see what’s going on, but those grays are mapped to the strength of the effect, not actual gray color data.
Masks in Octane are always grayscale. If there is color data in the mask, it’ll be ignored and the value (V part of HSV) will be used to determine the strength of the mask in that area.
A strength of 0 is visually represented as pure black. Any part of the texture, channel, layer, or sub-material mapped to a part of the mask with a value of 0 will have no effect on the overall material. Have a look at the example above. We have a blue texture already, and we’re applying an orange one over the top. anywhere the mask is black, 0% of the orange comes through, and it has no effect on the overall texture.
A strength of 1 is visually represented as pure white. Any part of the texture, channel, layer, or sub-material mapped to a part of the mask with a value of 1 will be at full strength. In our example, the white circle in the mask is 100%, so the circle on the final texture will be fully orange.
Any strength between 0 and 1 will mix the layer with the prior ones. 0.25 means 25%, 0.5 means 50%, etc. The 50% gray part of the mask above produces a color that’s half blue, half orange.
Masks of course don’t have to be entirely one value, and most of the time won’t be. If a mask has black and white stripes, everything mapped to the black stripes will have no effect and everything mapped to the white stripes will affect those parts of the material 100%. If this mask is applied to a diffuse color, we end up with colored stripes. If it’s applied to the Specular channel, then there will be alternating glossy and matte stripes on the material. If it’s gray and white stripes, wherever the gray appears in the map will have a simple opacity blend between the two sources.
Layering
The term “Layering” in Octane is mostly used when we’re talking about creating a stack of channels in a material. All materials come equipped with a set of channels, but they also have the ability to use Material Layers, which also contain sets of channels.
Because materials have an order of operations, something like a metallic or diffuse layer is always below a sheen or specular layer. Layers allow us to put another metallic or diffuse layer on top of the built-in sheen or specular so we don’t have to do complex masking.
This is great for decals, scuffing/scratching, flakes, paint transfer, defacing, and other cases where there’s some “stuff” on top of the usual topmost layer or if we want a deep looking material like a high end car paint.
We can also apply this concept when using the Composite Material texture and want to layer up a bunch of wear and tear maps to make a single unique texture.
Blend Modes
The blend mode is the calculation used to merge two layers together.
Most of the time we’ll be using the “Normal” Blend mode, which assumes that an image further down the chain in the order of operations is 100% obscured by one further up the chain until a grayscale mask is applied to let the system know how much of the higher level texture to blend into the lower level one using a simple opacity slider.
Sometimes this is fine, but other times we want different looks and effects.
Other blend modes use more complex math to merge the pixels together, and it can give really interesting and unexpected results. More information about blend modes can be found here.
Since it’s math, the order of operations for some calculations like add and multiply do not matter, since A+B = B+A, and A × B = B × A. In others like subtract, it very much does, since most of the time A-B does not equal B-A. Because of this, we have to be thoughtful about the ordering of our sources in the stack.
As of this writing, most mixing constructs in Octane use the Normal blend mode and masks for opacity. Channel layering uses very specific blend modes that Octane handles to keep materials looking realistic, so we don’t get a say in that. The Composite Texture and AOVs is where we get a lot of control over how layers are merged with a whole host of different blend modes.
Part III
Mixing at the Texture Level
Mixing at the texture level is good for creating and fine-tuning a single texture that we can feed into one or more channels.
Some examples
- Combining several images to make a unique surface when fed into roughness or bump.
- Using masks to apply a particular quality to some parts of a UV map (only the rivets are glossy, or only the rim is metallic).
- Animating the amount property to transition one texture to another over time during an animation.
- Quick and dirty image editing like masking out a portion of a texture we don’t want or adding a missing bit.
-
Procedurally creating several textures with shared parts (like several characters that overlay one common background).
Note: all the walkthroughs here are going to be using the node editor, and completed examples of everything can be found in the download section at the top of this guide.
Mix Texture node
The Mix Texture node is the easiest, but most limited way to mix two textures. Let’s have a look.
- First, we need a material - any type will do, but let’s use a Universal material for now, and get that open in the node editor.
- Next, we need a Mix Texture. It’s one of the magenta nodes in the list on the left, or we can hit spacebar or C and search for it. We want to make sure to get a magenta Mix Texture (just called “Mix”), and not a red Mix Material.
- Let’s plug the Mix Texture node into the Albedo channel.
- Now we need some textures to mix. Any two will do, or to follow along we can use the chickadee png (writer note: yes, GenAI, no, not apologetic) in the Download link at the top of this guide and a Tripper texture (spacebar or C in the node editor, search for “tripper”)
- The chickadee goes into the Texture 1 pin (also called a port or input), and tripper goes into Texture 2. This gives us a mungy blend between the two because the internal Amount slider in the Mix Material node is set to 0.5, or 50% by default. That means it’s taking the chickadee and adding 50% of the tripper texture into it using a straight opacity blend. If we make this slider 1, it’s showing us 100% of texture 2 (full tripper). 0 would show us 0% of texture 2 (full chickadee).
- Let’s create a Checker (or Checks) node and plug it into the Amount pin in the Mix Texture node. This serves as a mask. Checks starts with black in the upper left, then alternates white and black squares. Anywhere there’s a black square in the checkerboard, we see full chickadee because it tells the Mix to be 0% in that part, and anywhere there’s a white square we see full tripper because it tells the Mix to be 100% in that part.
-
Finally let’s delete the Checker and search for a medium blue Gradient Generator node (not an Octane Gradient, not gradient.osl, and not a C4D gradient), and plug that into the Amount texture - now we get a smooth blend between 0 (full yellow) and 100 (full blue) with all the various greens between. In the example in the illustration, that was then run into an Octane gradient and crunched in a little so the images are at full opacity for 25% of the texture on either side - this is in the distributed file at the top of this guide if you’re curious.
We can only mix two textures together using a Mix Texture node. If we need more, we can just make another Mix Texture node and run the output of one into the top Texture input of the other, and use a different mask in the Amount input for that second node. we can link as many as you want together that way, but if the chain starts getting complex, it’d be worth looking into the Composite Texture node for a cleaner and easier way to merge several textures.
The Mix Texture node only uses the Normal blend mode, so it’s really only for simple masking and sometimes blending together if we just want a basic opacity slider.
Composite Texture node
This node removes the two-texture limitation of the Mix Texture Node and allows us to mix together multiple materials using various blend modes.
Important: This node works similar to 2D compositing applications, and as mentioned before, the order of operations here is bottom-to-top rather than top-to-bottom like the rest of the systems covered in this guide.
Let’s take a look at the Composite Texture node to see how it works.
- Let’s make a new Universal Material and set the specular to 0.
- Next, let’s create a composite material (light blue as of Octane 2024) and plug it into the Albedo channel.
- Similar to the emission or displacement channel, the Composite material needs special purple nodes for the various layers: We can’t just plug any old texture into a pin called “Layer1” or “Layer2”. The easiest way to add these is to click the Composite material node, hit Add Layer, and then pick Texture for the type. This creates an intermediate Texture Layer node.
- Let’s add a blue Image Texture node and connect it to the Texture pin in the purple Texture node. We can use the chickadee image from the link at the top of this guide.
- Back in the Composite material node, let’s hit Add Layer again and choose Texture again, so we get a second purple Texture node.
- This time let’s add a Tripper (spacebar in the node editor, search for “Tripper” texture into the Texture pin of the second Texture layer node.
- Now let’s select the purple Texture Layer node hooked up to the Layer 2 pin and start running through some of the blend modes. There are a lot to choose from here, and they all do different things. When we’re done goofing around, let’s set it to Hue.
- Back to the Composite material node, let’s hit Add one more time, but this time let’s choose Adjust Hue. In the new Adjust Hue node, let’s move the slider around - this would actually make a fun animated texture if we looped it. Let’s leave it at -150 or so.
-
Finally, let’s create a Checkerboard texture and plug it into the Opacity pin in the Layer 2 purple Texture node. This acts the same as the Amount slider in the Mix Texture - it’s for masking. Now we have a mask between Tripper and the chickadee, but Adjust Hue affects both textures.
Other Operator Nodes
The Add texture, Multiply texture and Subtract texture nodes are all single blend mode mixing nodes. These are quick and easy if we know we just want that one blend mode, but not so great if we’re experimenting or need operations that these don’t cover.
Procedural masks
All of the masking we’ve looked at so far has occurred in 2D, but there are certain nodes in Octane that allow us to build 0-1 values based on properties of the model in 3D though. We can use these as masks in both textures and materials.
The Dirt node builds a mask that’s calculated based on the severity of the angle of the polygon compared to adjacent polygons. It’s called dirt because it’s useful for masking in some grime into creases in the model, sort of simulating an Ambient Occlusion type effect. It’s also good for wearing down corners and edges.
The Curvature node builds a mask that calculates how curvy any part of the model is vs. how flat it is. Curves in 3D space can be convex (bulge “outwards”) or concave (bulge “inwards”), so the node has modes for both depending on what we want to mask.
The Falloff node builds a mask that’s based on how camera rays hit the model, so the severity of the angle compared to our point of view can drive how much of an effect that part of the model has. This is great for sheen-type effects or sometimes fake SSS.
There are other masks that we can build with the light blue utility nodes and OSL integration that we have at our disposal, but that’s a bit more advanced and out of scope for this guide.
Part IV
Mixing and Layering at the Material Level
Mixing
Mixing materials is similar to mixing textures, just at a higher level. We’re taking two or more entire materials and combining them with the help of masks. We don’t get control over blend modes like we did at the texture level because different channels have to blend in specific ways to combine realistically, so Octane handles that for us.
Octane has two methods of doing this: The Mix Material and the Composite Material.
Important: Materials all use “reverse” ordering, so Input 2 will always be on “top” of Input 1, even though it shows lower down on the list in the node itself.
Some examples
- A mosaic with four or five different types of tile.
- A piece of stone that has veins of gold or some other metal going through it.
- A model with a single UV map that has different materials on different parts of it that we can apply using masks
Mix Material
The Mix material was originally the only way to combine two entire materials. This is kind of a weird outlier in the C4D version of Octane. All the other material types are self-contained, but with a Mix Material, we need to have two other separate source materials and mix those inside the Mix Material.
Confusing? Let’s walk through how to do it, and it’ll make more sense.
- First, let’s make a new Universal material, set the specular to 0, make the Albedo channel a yellow color (H:60 / S:100 / V:100), and name the material “Mat A”.
- Now let’s make a second Universal material, set the specular to 0, make the Albedo channel a blue color (H:180 / S:100 / V:100), and name this material “Mat B”.
- Next let’s make a Mix Material and get it open in the node editor.
-
Now we’re going to drag in Material A and Material B from the Material Manager into the node editor.
Important - when we do this, we’re dragging the actual material in, not a pointer, which means we’re editing all three materials at once. If we delete Mat A in the node editor, we’re deleting the Mat A material and it’ll be gone from the material manager as well, so we need to be really careful here.
- Let’s connect the output of Material A into the Mix Material’s Texture 1 pin, and Material B into the Texture 2 pin. The Mix material comes with a Float Texture in the amount pin - let’s delete that for now so we can access the internal Amount slider (which is the same thing as the float, it’s just not a separate node).
- If we shift the Amount slider to the left (closer to 0), the material gets more blue because it’s using less of the Yellow material. If we move it to the right (closer to 1), it gets more yellow - this basically acts as an opacity slider.
- Let’s set the Amount back to 0.5 so it’s an even mix again.
-
Now let’s adjust Mat B’s Albedo so it’s red (H:0 / S:100 / V:100) - suddenly our Mix Material turns orange (even mix between red and yellow). We’ll also see the Mat B thumbnail in the material manager turn red because, again, it’s the same material, not a copy, not a pointer.
We can feed any grayscale texture into the Amount and get stripes or checks or an image or anything else we want.
The main advantage to the Mix Material is that it allows us to reuse one material as the source for several mix materials. This is great if we have 12 materials in a project that all have the same base color or pattern and we want to quickly update all of them.
The biggest disadvantages is that a Mix Material only mixes two materials, and it doesn’t use blend modes, so we’re stuck with an opacity blend or hard masks.
If we want more than two materials, we have to mix together several Mix Materials using more Mix Materials and that becomes a major pain to keep track of. It’s also VERY easy to break the entire system by accidentally deleting or modifying one of the materials in the chain if we come back to the file later and didn’t document it well.
If we have the need for anything more complex than a single two-material mix, we should consider a Composite Material.
Sub-materials
The next two material types are self-contained, meaning they don’t rely on external materials like the mix material does. The way they do this is via a special material type called a sub-material.
Functionally, there’s no difference between a sub-material and a regular material - it has all the same pins and options, and can be diffuse, glossy, universal, standard surface, or any other material type. They do present a little differently though - sometimes the defaults aren’t the same as their standalone material counterpart, and the previews might differ (flat vs sphere).
Important - The thing to keep in mind here is that sub-materials can not stand on their own. There is a method of copying the properties from an external material into a sub-material, but not the other way around, so if we build a complex sub-material and then decide later we want it as its own material, we’ll have to rebuild it in one of the normal material types.
Composite Material
The Composite Material lets us combine several materials into a single, self-contained package.
This is great because it keeps the material manager clean and we can’t accidentally delete source materials like we can with a Mix material.
The main drawback is that we can’t reuse any of the source materials in other materials. Not only can we not link it to multiple composite materials, but we literally can NOT remove an embedded sub-material from the composite material and use it on its own.
Let’s take a look at how to make a very basic Composite Material.
- First, we need to make a new Composite Material and get it open in the Node Editor.
- Next, let’s click the Composite Material node, and on the right, in the Material 1 tab, choose “Add material”. This makes a Glossy-type sub-material
- In Material 1’s Basic tab, let’s change the type from Glossy to Universal - this changes some of the settings around (notably makes Metallic=1 which we may not want).
- Let’s set Metallic to 0 and Albedo to H:60 / S:100 / V:100 to get a bright yellow color.
- Back in the Composite Material node, let’s do the same thing for Material 2 - click the “Add material” button, change the sub-material’s type to Universal, make the Metallic = 0, and this time make the Albedo blue - H:180 / S:100 / V:100.
- If we click the Composite Material node again and go to the Material 2 tab, we can change the mask to 0.5. This is the same setting as “Amount” in the Mix material - it’s an internal float texture that goes from 0-1.
- Now, if we change the blue sub-material to red: H:0 / S:100 / V:100, we’ll see the overall color go to orange. Our Composite material is now the same as the Mix Material in the last example, but completely self-contained.
Important: The mask for material 1 doesn’t do anything - we can consider material 1 our base layer or background, and then use the mask layers for the other layers to see through down to material 1.
- Back in the Composite Material node, let’s go to the Basic tab and set the number of materials to 3. A new pin opens up for a third material - this is something we weren’t able to do with a single Mix Material.
- Let’s drag a wire out from the Material 3 pin and drop it in an empty area in the node editor - a little box comes up with “sub-material” as the only option - if we click that, we’ll get a new sub-material attached to our composite.
- Once again, let’s change this to a Universal material type in the Basic tab, but this time leave metallic at 1. Let’s make the albedo a brass color - H:49 / S:27 / V:95 and give it a roughness of 0.2
- To mask this, let’s use a Tile Pattern (under Custom Pattern, or just hit space in the node editor and search). Let’s set it to hexagons, make tile color 1 black, and tile color 2 white to create a grayscale mask, and then feed that into the Material 3 Mask pin.
- Finally, let’s create a Rain Bump texture (spacebar in the node editor, search for “rain”) and plug that into both the yellow sub-material’s specular and bump channels. Now our model has a mix of brass, bumpy orange, and a blend of the two materials.
If we have a material we want to use as a sub-material, we can drag it into the node editor while our Composite material is active, right-click it, and choose “convert to sub-material”.
This will make a new sub-material and copy all the properties in. It hooks the sub-material up to the first open Material pin as well.
Important: The new sub-material won’t appear to do anything at first because the mask is set to 0 by default - if we set it to 1 or drop a texture into the mask pin, we’ll see the new sub-material’s effects.
The original material will be kept in the node editor. It’s important that we do NOT delete this, since it will delete the actual material from the material manager as well.
Instead, we just need to click the Composite material node and then hit the Get Active Material button at the top of the UI. The original material will be removed from the node editor, but will still live on in the Material Manager.
Another method to refresh the node editor is to select a different material in the Material Manager and then come back to the Composite Material.
Layering
When we talk about layering, we’re taking one material and adding clusters of channels - or layers - to it. Octane has two methods of doing this: There’s a dedicated Layered material, and we can also add material layers to other types like the Universal, Diffuse, Glossy, or Standard Surface material.
Some examples
- We have a material we like, but we want to add a diffuse or metallic sticker over the top of the existing specular/coating layer without having to do complex masking.
- We want a really complex material with several different overlapping specular / sheen layers, each with their own IOR, bump, normal, and roughness. This creates a lot of depth and visual interest in a material - car paint is a good example of this.
- We want to animate a bump or a sheen or thin film separately from another bump/sheen/thin film layer.
Material Layers
Material layers can be used in any material. There are four types as of this writing (Diffuse, Specular, Metallic, Sheen), and a Layer Group. They all have a pumpkin spice orange titlebar, so they’re easy to pick out.
All of the layer types contain a specific set of channels. They all have bump, normal, and roughness pins, and a Layer Opacity pin that acts as a mask for that layer, but the different types also have unique channels:
The Diffuse layer has a Diffuse and Transmission channel.
The Metallic layer, interestingly enough, does not have a Metallic channel - it just assumes Metallic of 1. If we want it less metallic, we can use the Layer opacity channel to dial it back. It also has all the other channels that affect the normal Metallic channel like IOR, Thin Film, and Specular (which controls the color if we’re using Artistic IOR).
The Specular layer has the most channels of any type - Transmission, Roughness, Specular, Film Width, IOR, and Rotation, making it very versatile.
The Sheen layer has a Falloff effect built in so it simulates the sheen in fabric. It has its own Sheen (color) and Sheen Roughness Channels.
The Layer group allows us to bundle a few other layers into a package - this is especially important if we’re not using a Layered Material since all the other material types only have one Material Layer pin.
The Layered Material
Let’s take a look at a Layered Material. Like the Composite Material, we’re really going to want to be using the Node Editor here. Since Material Layers have been implemented into all other material types, the only reason we might want to use this over, say, a Universal Material is that we can easily swap the base layer out with another material without having to and change all the settings in the Universal Material.
- First, let’s create a new Layered Material and then open it up in the Node Editor.
- We need a base layer which needs to be a sub-material. We can either drag a wire out from the Base Material pin, drop it, and select sub-material, or we can go into the Layered Material’s Base Material tab and hit “Add Material”.
- Let’s set the Base Material’s type to Diffuse, and change the Diffuse channel to a darkish gray: H:0 / S:0 / V:25.
- Next, let’s add a layer by pulling a wire out of the material’s Layer1 pin and dropping it in an empty area in the node editor. This creates a Layer Group, which is useful for organizing several layers, but also confusing because it doesn’t seem to have any inputs. It’s also called “Material Layer” instead of Layer Group like it should be.
- Let’s select the new Material Layer node, go into its basic tab and change the Layer Type to Specular and also rename it to “Flakes”. Now let’s add a Flakes texture node (spacebar in the node editor and type “flakes”) to the Material Layer’s Normal channel.
- Back in the Layered Material’s Basic tab, let’s up the number of materials (should be “layers”) to 4
- Next, let’s add another Specular layer by going into the Layer2 tab of the material and hitting the “Add Layer” button again and selecting Specular. We want to make the IOR 4, make the Film Width 0.16 in the Thin Film tab, add a Noise4D node into its opacity channel and set the noise to Dents. This will make kind of a blotchy super shiny Thin Film effect. Let’s name it Thin Film.
- Finally let’s add a Sheen layer (new Material Layer, change the type to Sheen) into the Layer 3 pin using either method we learned above. We want the Sheen color to be magenta: H:300 / S:100 / V:100, and the Sheen roughness to 0.3. This overlays a magenta sheen. Let’s name it Sheen.
-
What if we want the flakes to go over the top of the sheen? Easy, let’s just plug the Flakes layer into the Layer 3 pin and the Sheen Layer into the layer 1 pin. This is the sort of thing that material layers are really good at that’s very difficult or impossible to do in other material types.
Material Layers in other Material Types
All the other material types in Octane support Material Layers as well, which almost negates the need for the Layered Material. Even though there’s only one Material Layer pin in a regular material, we can use Material Layer Groups to get as many different layers as we want.
Let’s take a look at setting up a Universal Material to give us a similar setup to the Layered Material above.
- First, we’ll want to make a new Universal Material and open it in the node editor
- Important: As of this writing, the Material Layer channel is hidden by default in all of the material types except for Standard Surface. To access it, we just need to head to the Basic tab and click the checkbox to turn it on.
- Let’s head into the Albedo channel and make the Albedo color H:0 / S:0 / V:25. We also want to go into the Specular channel and set the float to 0 - all our specular layers will be controlled by Material Layers.
-
Let’s drag a wire out from the Material Layer pin and drop it. This gives us a box for Material Layer - let’s choose this. This time, we want to keep it as a group, so let’s rename it to “Mat Layer Group”.
- Adding inputs to a group is done in the group’s Layers tab. We need to hit the Add Layer button and add a particular layer type each time (we can change the types later though). Let’s add in two Specular layers and a Sheen one.
- The first Specular layer gets renamed “Flakes”, and like before, we can search for a Flakes texture and connect it to the Normal channel.
- The second Specular layer gets an IOR of 4 and a Film Width of 0.16. We also want to pipe a Noise4D node set to Dents into the layer’s Opacity channel. Let’s call it Thin Film.
- Finally let’s add a Sheen layer (new Material Layer, change the type to Sheen) into the Layer 3 pin. Let’s make the Sheen color magenta: H:300 / S:100 / V:100, and change the Sheen roughness to 0.3. Let’s name it Sheen and collapse the layer.
-
Just like before, we can swap the Flakes with the Sheen if we want both Specular layers over the top of the Sheen.
Wrap up
If you’ve made it this far, you should have a pretty good understanding of all the different ways you can mix and layer texture and materials. This will be really useful going forward as you start building your own library of materials.