I found out a cool image on Internet, and I want to recreate a similar scene (or an animation) with Blender (using Cycle). But after all of my researches, I didnt find out a way to make this type of material. I also tried a lot of different node trees, but no sucess... I hope that someone have some tips, and I hope that you'll understand me :). Thanks for reading. - A.C That's the type of scene that I want to make (Or animations)

  • 2
    $\begingroup$ It's similar to this blender.stackexchange.com/a/64978/29586 (see final image of answer) $\endgroup$ Apr 2, 2017 at 22:02
  • $\begingroup$ Is there a way to make a 3D mesh, and then apply this kind of texture on it ? (Blue/violet on the edges, and transparent at the center line of the mesh) It could give a better 3D result, instead of a simple 2d plane. $\endgroup$ Apr 2, 2017 at 22:43
  • $\begingroup$ Is this like a cloth sim with turbulent air flow? Change the cycles material to get the blue effect. $\endgroup$
    – 3pointedit
    Apr 3, 2017 at 3:18
  • 1
    $\begingroup$ @Aloiscoissard The same principle would work in 3D but the maths is much more complicated. At some point in the future I'd like to revisit it from a 3D perspective. $\endgroup$ Apr 3, 2017 at 7:17

1 Answer 1


This answer https://blender.stackexchange.com/a/64978/29586 created a wispy material in 2 dimensions only. The same principles can be extended to create a similar volumetric material.

Final render

Starting with the Generated coordinates we can create a volumetric horizontal 'plane' simply by controlling the emission based on the Z coordinate. This could be achieved using Maximum and Minimum nodes to control the emission at certain 'heights' in the volume. However, using a Power function and other Maths nodes allows the cutoff to be varied and 'focused' as desired.

Volumetric flat plane material

The emissions is around the plane Z=0 with full emission at Z=0 and emission falling off at either side, controlled by varying the Focus and Intensity input nodes to produce the following effect.

Volumetric plane

Adding in some Noise - controllable via a Mapping node - makes it less regular. The individual X and Y Scale factors can be used to stretch the noise into ripples and/or adjust for the dimensions of the containing mesh if required. Note that the output of the Noise texture is reduced by 0.5 so that the noise is centered around 0.0 and it can then be multiplied by a scale factor to allow the noise to be varied dynamically (the Mapping node can't be driven directly by an input value).

Add ripples Animated ripples

Adding a twist to the plane is complicated by the fact that the Mapping node does not provide inputs to very the values within the material - instead, we need to manually apply rotation based on the Y coordinate using matrix multiplication as described here https://en.wikipedia.org/wiki/Rotation_matrix. ie,

X = x.cos(angle) + y.sin(angle)
Y = -x.sin(angle) + y.cos(angle)

This can be achieved as follows :

Add twist

Also, add a Color Ramp to fade out at the edges to limit the 'plane' to the range -0.5 to 0.5 (otherwise the rotated 'plane' will extend out to the edges of the mesh as it twists (rather than staying the same width)).

Add color ramp to limit range

Animated twist

To replicate the effect in the sample image you can adjust the Color Ramp so that the edges are more pronounced and with the centre darker than the edges and blending between the two colors. It's important that the far edges of the color ramp fade out to black to limit the outer edge of the 'wave'.

color ramp

For additional variation, add some modulation of the rotation by using an additional Noise texture to vary the rotation.

Add Modulation

The final material is as follows :

Final Material

Adjust the various Input nodes, Color Ramp, Texture Node Scales, until you get the desired effect.


Blend file attached

For ease of re-use, the nodes can be placed in a Node Group.

node group inner

node group outer

Note that 'Phase' parameters have been added to allow the phase of the waves to be controlled.

Positioning multiple meshes and animating the waves can produce the following result :

final animated waves


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .