In this tutorial, we will see how to create the animation of an electric arc climbing up two electrodes in Blender. This effect is also known as Jacob's Ladder, due to a biblical episode.
Video Transcript
Hello everyone! In this tutorial, we will see how to create the animation of an electric arc climbing up two electrodes in Blender. This effect is also known as Jacob's Ladder, due to a biblical episode.
We will focus, in particular, on creating and animating the NURBS curve that represents the electric arc. We will see how to position it, animate it cyclically, disturb its shape, and add a glow to the final rendering in post-production through Nodes Compositing.
The tutorial was created with version 3.3 of Blender and is aimed at those who have a basic knowledge of the software.
Let’s start by examining the starting scene. All geometric elements are part of a single Object of the mesh type, equipped with a material and PBR Textures.

The scene is framed frontally by a virtual camera. This framing is what I used to create the animation that I showed you at the beginning of this video tutorial.
Switching to the Rendering view mode, we notice that the environment is uniformly illuminated by the color of the virtual universe.
To achieve a more interesting effect, let's make the World Background color black in the World Properties tab, then switch back to the Solid view mode.

The electric arc will be created using a NURBS curve of Path type, which is initially straight. To add the Path curve at the base of the two electrodes, we position the 3D Cursor there in this way:
select the STARTING SET object and switch to Edit mode;
deselect everything;
select two edge loops from the two electrodes using SHIFT, ALT, and right-click on an edge of the loop you want to select, in Edges selection mode;
press SHIFT S, choose Cursor to Selected, and return to Object mode.

Now we can add a NURBS Path object, which will be inserted with its center positioned right where the 3D Cursor is located. The object just created will be much larger than the space between the two electrodes, so let’s scale it down along the X-axis using S, X, and the mouse movement.

Be careful now because, after this scaling, it is crucial to apply the Scale transformations to the object, as it will now have a value different from 1 in Scale X and this could lead to incorrect results when using the Wave modifier.
To apply the Scale transformations to PATH, press CTRL A and choose Scale from the Apply menu that will appear on screen.

To set this size and position at the first frame of the animation, press I and choose Location Rotation Scale from the Insert Keyframe menu that will appear on screen.

There are various ways to create the animation of the object’s movement and, simultaneously, its stretching of the PATH object.
Since, in this animation, the movement occurs only along the vertical axis, and the stretching occurs only along the horizontal axis, it will be sufficient to resize the PATH object in Object mode.
If we want the animation to last 2 seconds, with 24 frames per second, let's move to frame number 48 on the Timeline.
Move the PATH object upwards and scale it along the X-axis using the S, X keys and the movement of the mouse.
Once the final size is reached, press I and choose Location Rotation Scale again to record this configuration at the forty-eighth frame of the animation.

The electrodes are not perfectly straight, so the animation created this way is not good, as can be seen by examining the scene from an orthogonal front view in Wireframe view mode.
It is enough to position ourselves on a frame where the curve is too long and scale the object along the X-axis, recording the keyframe, to solve the problem. In case a single keyframe is not enough, try repeating this operation in other frames.
To make this animation cyclical for all the frames of the movie, let’s open a Graph Editor window and add Cycles modifier to the animation channels that interest us, namely Location Z and Scale X.

I discussed the Cycles modifier for animations in a tutorial I previously published on the YouTube channel, so here I will limit myself to applying it without describing it.
Now the animation will repeat cyclically for the entire duration of the movie.

Let's see how to disturb the PATH curve.
Open the Modifiers window and add a Wave modifier to the curve.
Deselect Motion Y to apply the distortion only along the X-axis.

Upon starting the animation preview, we will see a rather disappointing result.
It is necessary to modify the values of the Height and Width parameters of the modifier to achieve a more interesting result.

Sometimes the distortion is visible only in one half of the PATH curve.
This can happen if, for example, you forgot to apply the scale transformations before setting the keyframes. If this happens to you, try modifying the value of the Time Speed parameter of the Wave modifier.
The curve is somewhat disturbed, but too regularly.
To add further disturbance to the wave's shape, we can open the Texture section of the Wave modifier and add a texture to the disturbance, for example choosing one of the Clouds type or the Distorted Noise type.

Do various tests, with different types of Textures and by modifying their parameters, until you reach a result that satisfies you.

Once you have arrived at a satisfying result, it is necessary to make our electric arc bright.
Switch to Rendered view mode. The scene should appear completely black to us because we have removed the illumination from World Background.
However, providing the PATH object with an Emission type Material with a high value for the Strength parameter is not enough because PATH does not have thickness.
To solve this problem, let's open the Object Data Properties window, and in the Geometry Bevel section, increase the value of the Depth parameter.

Now we can also modify the intensity of the Emission material of the PATH object and observe the result in the 3D Viewport.

In the Render Properties window, we notice that 1024 Samples are set for both the preview and the final render. That's way too many! Let’s bring these values to, for example, 200 and also, activate Denoise, both in the preview and rendering phase.
We’re not done yet! We need to add the glow in post-production!
The idea is to isolate the electric arc, provide it with two glow effects, and sum these effects to the initial rendering.
First, let's open a Compositor window and select the Use Nodes checkbox.

To preview the post-production on this screen, we need to connect Render Layers Image to an Output Viewer node and activate the Backdrop checkbox for the window. However, to preview the Compositing in Backdrop, we must first render our scene. Let's do it.

Scaling this preview is a bit strange: you need to press the V key to make it smaller, while to enlarge it you have to press the ALT V key combination.

To ensure that the post-production output is the same for both the rendering to be saved to disk and the Backdrop preview, let’s add a Layout Reroute object between Render Layers and Composite, then connect this Reroute object also to Viewer.

If you need to move Reroute, select it with a mouse click and press the G key to move it in the window.
To be able to isolate the electric arc from the rendering, we need to retrieve an IndexOB type information from the Render Layers node and provide a numeric identifier to the PATH object.
Let's start with the numeric identifier for the PATH object, which we can set by opening the object's Object Relations tab and entering 1 in the Pass Index field.

To be able to retrieve this information in the Render Layers node, we need to open the View Layers window and select the Object Index box in the Passes section.

A socket called IndexOB will now appear in the Render Layers node, which is the information we are interested in.
As you may have noticed, this information has three different names depending on the context in which we look for it: Pass Index for the object, Object Index in the View Layer window, and IndexOB in Render Layers. This is very confusing, I know.

To isolate only the PATH object in the entire rendering, we need to connect IndexOB to a Converter ID Mask node and set the same numeric value in the Index field of this new node that we provided earlier to the PATH object.
We will then have to connect the output of ID Mask to Reroute.

Since we modified the Pass Index of PATH and made IndexOB available after the first rendering, to see this information in Compositing we will need to perform a new render of the scene. Let's do it.

I have to make a clarification: the white silhouette you see is not the rendering result of the electric arc, but its black and white mask. To retrieve the original colors of an object isolated with this technique, we should multiply Render Layers Image by ID Mask using a Mix Multiply node. However, the electric arc is actually white, so we can work directly on the output of ID Mask.
Let’s see how to provide two different glows to the electric arc.
Specifically, we will use the Simple Star filter to create light rays and a Fog Glow filter to create a soft, diffuse glow. Both these effects are implemented by the Glare node, so let's add two Filter Glare nodes to the scheme and change their modes to Simple Star and Fog Glow.

To test the effects individually, place them one at a time between ID Mask and Reroute. Initially, we will not see any effect, because by default the Threshold field of these nodes is set to 1. Both Glare nodes thus take the starting information from the ID Mask node.
Let’s set this value to 0 for both nodes and try them individually, modifying the other parameters until we achieve a satisfying result.

To add these effects to the original image, we need two Color Mix nodes in Add mode, so let’s add one, immediately change its mode, and obtain the second by duplicating the first with the SHIFT D key combination.

Be careful of the order in which the effects are added: the image coming from Render Layers Image must be connected to the first Image input of the first Add node. To the second input of this Add node, we can connect either Fog Glow or Simple Star, as we like.

The output of the first Add node must be connected to the first Image input of the second Add node.
Connect the other Glare node available in the scene to the second input of the second Add node.
Connect the Image output of the second Add node to Reroute, to observe the result.

If the result is satisfying, we can start rendering the animation.


To recap: we have disturbed a Nurbs PATH object using the Wave modifier, and then we provided its rendering with a glow using Glare nodes in post-production.
I hope this tutorial has been helpful! See you soon!