Create flow abstraction
create_flow_abstractionBuild a two-pass flow abstraction that smooths interiors and extracts crisp ink edges from a source TOP, with adjustable smoothing strength and edge gain.
Instructions
Build a two-pass Kyprianidis-style flow abstraction: an edge-tangent-flow (ETF) bilateral smoother followed by a flow-based DoG (FDoG) line extractor — oil-painting smooth interiors with crisp coherent ink edges. Creates two glslTOPs + companion textDATs under parent_path, fed by a Select TOP from the source TOP and terminated by a Null TOP. Strength/Edge/Iterations are exposed as live parent-par-bound uniforms; blur radius, sigmas and tau are baked in at build time. Iterations boosts effective ETF strength in-shader (single-input pass, no ping-pong feedback).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| parent_path | Yes | Parent COMP path to create the two GLSL TOPs in. | |
| name | No | Base name; nodes become <name>_etf, <name>_fdog, <name>_out, plus *_frag textDATs. | flow_abs |
| source | Yes | Absolute path of the input TOP to abstract (e.g. '/project1/movie1'). Pulled in via a Select TOP so cross-container wiring is safe. | |
| strength | No | Bilateral smoothing strength (0=passthrough, 1=full ETF blur). | |
| edge | No | FDoG edge gain — multiplier on the DoG response before thresholding. | |
| iterations | No | Number of ETF passes; higher values boost ETF strength via an in-shader uniform. No external feedback loop is created in this version. | |
| blur_radius | No | ETF bilateral kernel half-width in texels along the tangent (kernel ≈ 2*radius+1). | |
| sigma_e | No | FDoG inner Gaussian sigma (texels). | |
| sigma_r | No | FDoG outer Gaussian sigma — usually ≈ 1.6 * sigma_e. | |
| tau | No | FDoG center-surround weight. | |
| resolution | No | Output res; 'input' inherits. | input |