set cut_paste_input [stack 0]
version 12.2 v7
push $cut_paste_input
Group {
name roughenEdges1_1
help "Takes the alpha and distorts it using a random noise pattern. If you have a solid rotoshape which looks too smooth, this will give it a rough edge."
addUserKnob {20 User l "Edge Roughen"}
addUserKnob {41 noiseSize l "Noise size" t "Smaller number gives a fine, grainy edge. Large number gives blobbier edges." T Noise3.size}
addUserKnob {7 myEvo l "Noise Evolution (Z)" R 0 100}
addUserKnob {12 myNoisePos l "Noise Position"}
addUserKnob {26 ""}
addUserKnob {41 distortAmount l "Distort Amount" t "Low number barely effects the image, higher numbers increase the 'reach' of the effect, spreading the shape out further." T IDistort2.uv_scale}
addUserKnob {41 coreMix l "Core Mix back" t "To stop the effect eating into the shape too much, you can bring back the core." T Merge4.mix}
addUserKnob {7 eroder l "Pre Erode/Dilate" t "If the roughened edge spreads too far out of your intended area, this will erode the shape a little before the roughening is applied." R -5 5}
addUserKnob {41 blurSize l "Extra Blur" t "Adds a blur on the end." T Blur2.size}
addUserKnob {26 ""}
addUserKnob {6 shuffleRGB l "Shuffle A to RGBA" +STARTLINE}
shuffleRGB true
}
Input {
inputs 0
name Input1
xpos 400
ypos -329
}
Dilate {
channels alpha
size {{parent.eroder}}
name Dilate2
xpos 400
ypos -269
}
Dot {
name Dot2
xpos 434
ypos -198
}
set Nb3d3fc00 [stack 0]
Dot {
name Dot1
xpos 544
ypos -198
}
Dilate {
channels alpha
size -2.6
name Dilate1
xpos 510
ypos -13
}
Blur {
channels alpha
size 5
name Blur1
label "\[value size]"
xpos 510
ypos 46
}
push $Nb3d3fc00
Shuffle {
red black
green black
blue black
alpha black
name Shuffle1
xpos 290
ypos -201
}
Noise {
size 1.15
zoffset {{parent.myEvo}}
octaves 1
lacunarity 6.7
gain 0.96
translate {{parent.myNoisePos} {parent.myNoisePos}}
center {960 540}
name Noise3
selected true
xpos 290
ypos -137
}
push $Nb3d3fc00
Copy {
inputs 2
from0 rgba.alpha
to0 forward.u
from1 rgba.alpha
to1 forward.v
name Copy3
xpos 400
ypos -146
}
IDistort {
channels alpha
uv {forward.u -forward.v}
uv_offset 0.28
uv_scale {{parent.IDistort2.uv_scale i}}
name IDistort1
xpos 400
ypos -77
}
IDistort {
channels alpha
uv {-forward.u forward.v}
uv_offset 0.0105
uv_scale 7.8
name IDistort2
xpos 400
ypos -13
}
Merge2 {
inputs 2
operation screen
mix 0
name Merge4
xpos 400
ypos 55
}
Blur {
channels alpha
size 1.8
name Blur2
label "\[value size]"
xpos 400
ypos 110
}
Shuffle {
red alpha
green alpha
blue alpha
name Shuffle2
xpos 400
ypos 183
disable {{1-parent.shuffleRGB}}
}
Output {
name Output1
xpos 400
ypos 279
}
end_group
push $cut_paste_input
Group {
name roughenEdges2_1
addUserKnob {20 User}
addUserKnob {16 Border}
Border 0.05
addUserKnob {7 EdgeSharpness}
EdgeSharpness 0.1
addUserKnob {7 Scale}
Scale 0.01
addUserKnob {12 Offset}
addUserKnob {12 Center}
addUserKnob {16 Size}
Size 1
addUserKnob {7 Evolution}
Evolution 0.5
}
Input {
inputs 0
name Input1
selected true
xpos -466
ypos -364
}
Unpremult {
name Unpremult1
xpos -466
ypos -305
}
set Naf8ecc00 [stack 0]
Blur {
channels alpha
name Blur9
xpos -466
ypos -258
}
set Naf8ec800 [stack 0]
Dilate {
channels alpha
size {{-parent.Border*30 i}}
name Dilate1
xpos -466
ypos -164
}
set Naf8ec400 [stack 0]
push $Naf8ec400
push $Naf8ec800
Merge2 {
inputs 2
operation stencil
name Merge6
xpos -356
ypos -158
}
push $Naf8ec800
Shuffle {
alpha black
name Shuffle1
xpos -363
ypos -252
}
Noise {
size {{parent.Scale*10 i}}
zoffset {{parent.Evolution i}}
lacunarity 1
gain 1
gamma 0
translate {{parent.Offset i} {parent.Offset i}}
scale {{parent.Size*6 i}}
center {{parent.Center i} {parent.Center i}}
name Noise6
xpos -246
ypos -252
}
Merge2 {
inputs 2
operation mask
name Merge7
xpos -246
ypos -158
}
Merge2 {
inputs 2
name Merge9
xpos -466
ypos -80
}
Blur {
channels alpha
size {{parent.EdgeSharpness*40 i}}
name Blur4
xpos -466
ypos -36
}
ColorCorrect {
channels alpha
contrast 4
gamma 0.2
name ColorCorrect5
xpos -466
ypos 13
}
Clamp {
name Clamp2
xpos -466
ypos 68
}
push $Naf8ecc00
Dot {
name Dot2
xpos -506
ypos -302
}
Dot {
name Dot1
xpos -506
ypos 129
}
ShuffleCopy {
inputs 2
name ShuffleCopy1
xpos -466
ypos 126
}
Premult {
name Premult1
xpos -466
ypos 150
}
Output {
name Output1
xpos -466
ypos 243
}
end_group