CompStart

ProLessonsCoursesElementsSoftware

CompStart

Master visual effects with cutting-edge techniques.

Learning

CoursesLessonsPro FeaturesAssetsSoftware

Tools

Tech CheckDisplay CheckMotion BlurCIE 1931PhysLightNuke Tools

Company

InstructorMissionImpressumPrivacyTerms

Projects

Moray RenderEXR ConverterOCIO.ccNuke ToolsDerekVFX

Follow

YouTubeInstagramTikTokThreadsContact

© 2026 CompStart. All rights reserved.

Grain Check

ToolSets / Utility
Utility

2026-09-07

ToolSets/utility/grainCheck.nk

utility
grain
diagnostic
viewer
colorspace
difference
View on GitHub

Visualizes grain by differencing a Cineon plate against a light blur, then lifting the residual so grain structure reads clearly in the viewer.

Grain Check is a utility group that makes film or digital grain easier to judge. The incoming image is converted to Cineon, split so one path is lightly blurred, then merged with a difference operation. A tight whitepoint grade amplifies the residual so high-frequency grain stands out without changing your main comp tree.

Use it when matching grain between plates, checking grain after denoise or resize, or comparing stock before you commit to a grain node. Drop it over a plate or a graded branch, view the output, then disable or remove the group when you are done.

Internal values are fixed: Cineon colorspace conversion, a small blur, difference merge, and a low whitepoint lift. There are no exposed grain amount or size controls; the gizmo is a diagnostic view, not a grain applicator.

Script code

set cut_paste_input [stack 0]
version 12.1 v4
push $cut_paste_input
Group {
 name grainCheck
 tile_color 0x421010ff
 selected true
 xpos -1110
 ypos 410
 addUserKnob {20 User l template}
 addUserKnob {26 ""}
 addUserKnob {26 lbl l "" +STARTLINE T "Template 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
 }
 Dot {
  name Dot17
  note_font_size 40
  xpos 633
  ypos 251
 }
set Nda88c00 [stack 0]
 Colorspace {
  colorspace_out Cineon
  name Colorspace1
  label "value colorspace_in] -> \[value colorspace_out]"
  xpos 808
  ypos 253
 }
 Blur {
  channels rgba
  size 0.67
  name Blur1
  label "\[value size] px"
  xpos 808
  ypos 315
 }
push $Nda88c00
 Colorspace {
  colorspace_out Cineon
  name Colorspace3
  label "value colorspace_in] -> \[value colorspace_out]"
  xpos 682
  ypos 299
 }
 Merge2 {
  inputs 2
  operation difference
  bbox B
  name Merge4
  xpos 723
  ypos 433
 }
 Grade {
  whitepoint 0.0004
  name Grade1
  xpos 723
  ypos 459
 }
 Output {
  name Output1
  xpos 447
  ypos 1055
 }
end_group