A technique for combining noise to create a beautiful animated shader

A simple technique for creating beautifully animated shaders by combining noise textures:

Video by Sam Debenham

Continue reading “A technique for combining noise to create a beautiful animated shader”

Nodevember 2020

“Nodevember 2020” – the next challenge is coming from November 1 to 30  for amateurs and fans of procedural (node-) modeling and creation. The rules of the challenge are very simple – each participant creates one procedural material/object on a given topic each day with Blender exclusively using nodes. You can create whatever you want – models, meshes, materials, shaders, and even music, as long as they are procedural. Next, publish your created object on social networks with the #nodevember hashtag.

Webpage: nodevember.io

Continue reading “Nodevember 2020”

How to get the render pixels coordinates in compositing

When fine-tuning the finished render in “Compositing”, sometimes it is necessary to refer to the pixels coordinates of the processed image, for example, to apply effects distributed over the entire width or height of the image.

We can get the distribution factor of coordinates along with the height or width of the rendered image using texture nodes.

Continue reading “How to get the render pixels coordinates in compositing”

Blender EEVEE transparency blend modes – Multiply and Additive

In Blender 2.83 in the EEVEE render engine the “Additive” and “Multiply” modes that were present in Blender 2.80 were removed from the possible transparency blending modes.

But if you need to use these transparency blending modes in Blender 2.83, you can get them with nodes.

Continue reading “Blender EEVEE transparency blend modes – Multiply and Additive”

How to make node connections in Blender 2.8 not straight, but curving as before

In Blender 2.8 node connectors in the “Shader Editor” window are straight by default, unlike earlier versions, where they bent curving. To return the usual connections bend, change the following settings:

  • Open the “Preferences” window
  • Switch to “Themes”
  • Expand the “Node Editor” tree branch
  • In the “Node Curving” field, set the value greater than 0. 0 means straight lines, the larger – the greater bend. A value of 4 corresponds to the bend that was in Blender 2.7x versions.

Get Specular reflections from IOR

The official Blender documentation provides a method to get the “Specular” value for the PBR-material reflections if the “IOR” value is known. To get the “Specular” value from the “IOR” value, we can use the following equation:

It is not difficult to create it with nodes:

Continue reading “Get Specular reflections from IOR”

EEVEE Shadow Catcher

There is a convenient opportunity in the Cycles render engine to render an object with shadows on a transparent background using material with the “shadow catcher” option. There is no such material in EEVEE render engine, however, in EEVEE we can make our own “shadow catcher” based only on nodes.

Completed “EEVEE Shadow Catcher” material you can get from the BIS library.

Continue reading “EEVEE Shadow Catcher”

How to make a pattern from the single element of the BIS library

A single procedural element from the BIS library can be easily transformed into a repeating pattern.

Let’s get a single circular elemetn from the library and place it in the center of the plane.

Continue reading “How to make a pattern from the single element of the BIS library”

Node displacement in Blender 2.8

In Blender 2.8, the displacement node in Cycles render-engine was changed from scalar to vector. If you simply connect a black and white height map to the Displace input of the material output node, like in Blender 2.7, it will not give the desired result.

To make the correct node displacement in Blender 2.8 add “CombineXYZ” and “VectorDisplacement” nodes to the material node tree. Connect the height map to the “Y” input of the “CombineXYZ” node and its “Vector” output to the “Vector” input of the “VectorDisplacement” node. After that, connect the “Displacement” output of the “VectorDisplacement” node to the “Displacement” input of the material output node.

Continue reading “Node displacement in Blender 2.8”

Decorators for node tree updation delay

When we create a field on the add-on interface panel, the value of which changes something in the node tree, each time the user changes the field value the node tree recompiles. If the user changes the value in that field by holding and moving the mouse, too frequent node tree recompilation will cause Blender to hangs.

This problem can be solved using decorators for deferred updating of the node tree.

Code by Skarn.

Continue reading “Decorators for node tree updation delay”