DerekVFX LogoDerekVFX

Blog

Nuke

Projects

Photography

Filmography

OCIO.ccExternal link

DerekVFX LogoDerekVFX

©2009 - 2026 DerekVFX

ContactIMDBLinkedInGitHubOCIO.ccExternal link
←ToolSets / Filter

Edge Smear

Filter2026-08-04ToolSets/filter/edgeSmear.nk
View on GitHub

Builds a blurred UV field from the alpha edge and STMaps the image to smear fringe outward.

Edge Smear gamma/dilates the alpha, builds normalized UV from coordinates, blurs that UV under the edge, then STMaps the original RGB with those UVs.

Gamma, blur size, and dilate size control how hard the pull is. Use for edge smear/stretch integration rather than a hard extrude.

Script Code

set cut_paste_input [stack 0]
version 12.1 v4
push $cut_paste_input
Group {
name edgeSmear
tile_color 0x421010ff
selected true
xpos -1101
ypos 149
addUserKnob {20 User l edgeSmear}
addUserKnob {7 gamma R 0 2}
gamma 0.99
addUserKnob {41 size T Blur1.size}
addUserKnob {41 size_1 l erode T Dilate1.size}
addUserKnob {26 ""}
addUserKnob {26 lbl l "" +STARTLINE T "EdgeSmear v1.0"}
addUserKnob {22 btn l DerekVFX.ca T "nuke.tcl('start', 'https://derekvfx.ca')" +STARTLINE}
}
Input {
inputs 0
name Input
xpos 447
ypos 61
}
set Nd7fe000 [stack 0]
Dot {
name Dot2
note_font_size 40
xpos 717
ypos 65
}
AddChannels {
channels alpha
name AddChannels1
xpos 683
ypos 95
}
set Nd831800 [stack 0]
Gamma {
channels alpha
value {{parent.gamma}}
name Gamma1
xpos 683
ypos 168
}
Dilate {
channels rgba
name Dilate1
label "\[value size] px"
xpos 683
ypos 206
}
push $Nd831800
Multiply {
value 0
name Multiply1
xpos 583
ypos 146
}
Expression {
expr0 "(x+.5) / input.width"
expr1 "(y+.5) / input.height"
name Expression1
xpos 583
ypos 212
}
set Nd830800 [stack 0]
Copy {
inputs 2
from0 rgba.alpha
to0 rgba.alpha
name Copy1
xpos 683
ypos 254
}
Premult {
name Premult1
xpos 683
ypos 317
}
Blur {
channels rgba
size 8.4
name Blur1
label "\[value size] px"
xpos 683
ypos 354
}
Unpremult {
name Unpremult1
xpos 683
ypos 440
}
Expression {
expr3 "(r+g+b) != 0"
name Expression2
xpos 683
ypos 466
}
push $Nd830800
Merge2 {
inputs 2
bbox B
name Merge1
xpos 583
ypos 522
}
Dot {
name Dot3
note_font_size 40
xpos 617
ypos 598
}
push $Nd7fe000
Dot {
name Dot1
note_font_size 40
xpos 481
ypos 261
}
STMap {
inputs 2
channels rgb
uv rgb
name STMap1
xpos 447
ypos 594
}
Output {
name Output1
xpos 447
ypos 668
}
end_group