top of page

GM_COLOR_FLICKER

This is a very Disco gizmo that allows you to create color flickering on the image using a random function to generate waves separately on the red, green and blue channels.

color_flicker2.jpg
color_flicker3.jpg

WAVE CONTROL / Wave Length

Allows you to adjust the overall wave length as slowing down or speeding up the effect.

WAVE CONTROL / Max

Allows you to set a maximum value to a wave. - This value will be affected by  CLAMP/Maximum if that value  is lower.

WAVE CONTROL / Min

Allows you to set a minimu value to a wave. - This value will be affected by  CLAMP/Minimum if that value  is greater.

WAVE CONTROL / Offset

Allows you to offset the wave without modifying the curves.

CLAMP / Minimum
Allows you to set an overall minimum value.

CLAMP / Maximum
Allows you to set an overall maximum value.

MIX / Red Mix

Allows you to adjust the amount of flickering on the red channel.

MIX /Green Mix

Allows you to adjust the amount of flickering on the green channel.

MIX / Blue Mix

Allows you to adjust the amount of flickering on the blue channel.

MIX / Mix

Allows you to adjust the amount of overall flickering on the image.

/MASK input

The mask input uses an alpha value as an area where the effects will be used.

When the input is not in use the effects appear on the whole image.

How does it work?

By opening up the node you can find the expression used for each channel on a Backdrop node that goes like this:
 

RED

random((frame+proxy.offset+1)/(proxy.freq)) * (proxy.maxVal-proxy.minVal) + proxy.minVal

GREEN

random((frame+proxy.offset+3)/(proxy.freq)) * (proxy.maxVal-proxy.minVal) + proxy.minVal

BLUE

random((frame+proxy.offset+5)/(proxy.freq)) * (proxy.maxVal-proxy.minVal) + proxy.minVal

You can also find a NoOp named 'proxy' where userknob  been created. These 2 values creating a refference that the expression is taking the values. You can call any values in your script the same way by first putting the name of the node then the knob's name. As here it is for example 'proxy.maxVal' which if you brake down means the node named 'proxy' then the knob's name named 'maxVal'. You can also call values from existing nodes like 'Transform4.translate.x'. 

If you'd like to learn more about Wave Expressions I highly recommend Cameron Carson's brilliant collection of different wave.

Hope you will find it useful! 

 

Here's the GitHub link ( just select the text and copy to Nuke )

bottom of page