Lightning generator Digital Asset

Using Houdini L-systems and expressions to generate procedural lightning.

Responsibilities: FX Artist

Tools: Houdini

Process Description:

A rectangular Grid surface operator (SOP) with a fairly large number of divisions is created and oriented on the ZX plane.

A Transform SOP is used to raise the Gris SOP off the modeling plane.

Variance is added to the Grid SOP using a Mountain SOP heavily modified from its default settings with minor expressions applied.

A Smooth SOP is applied to the Mountain SOP to create a good facsimile for the bottom of clouds.

The creation of starting locations for the lightning is produced by a Scatter SOP which places points based on the primitive area with a random seed value. This Scatter SOP is connected to the right input of a Copy SOP.

The Copy SOP has two custom variables for rotation and seed value controlled by expressions which are used by the L-system to generate the lightning bolt(s).

The L-System uses expressions to control generations and a randomized seed value based on the Copy SOP's seedval variable.

The L-System tube settings define the smoothness and blending of the generations.

The L-system controls the generation and shape over time based on a set rules and values.

A Transform SOP flips the lightning over the Y-axis and adds a small amount of random rotation from the Copy SOP's rotval to the starting angle of the lightning bolt(s).

A Time Warp node is used to compress the generation of the bolts into a third of a second based on 24fps.

A Delete SOP is used to kill the bolt(s) at a specified frame and fed into the left input of the Copy SOP.

Each lightning strike requires a new instance of these nodes.

Instances are bundled into a Sub Network with parameters promoted for further control in creating each unique lightning blot/strike.