Sigmas Easing
Bend a noise schedule with easing curves
- sigmas
- SIGMAS
Sigmas Easing takes an existing SIGMAS schedule and reshapes its curve using easing functions - the same cubic, quad, sine, expo, bounce family that animators and CSS folks know. In plain terms: it changes how the noise comes off over time without changing which scheduler you started from. Feed in a beta or simple schedule, ease it, and you've moved where the denoising effort concentrates. Its healthy click-through says people go looking for exactly this kind of curve control.
Why care about the curve shape? Because on flow-matching models the distribution of denoising effort across steps is one of the levers that actually pays. Where you concentrate the work - early for composition, late for detail - shifts the character of the output. Easing is a fast, intuitive way to nudge that without hand-building a schedule value by value.
How it works
You give it a schedule and pick an easing type and mode. The node normalizes the curve (optional), applies the easing math, and normalizes back out, giving you a modified SIGMAS that still spans the same range but bends differently in the middle. Because it operates on any incoming schedule, you can stack it after ClownScheduler or a stock scheduler and treat it as a curve post-processor.
The inputs that matter
- easing_type (default
cubic) - the curve family:sine,quad,cubic,quart,quint,expo,circ,back,elastic,bounce.cubicandquadare the gentle, sensible ones;back,elastic, andbounceare aggressive and mostly for experimentation. - easing_mode (default
in_out) - whether the easing applies at the start (in), end (out), or both (in_out). This decides which end of the schedule gets reshaped. - strength (default 1) - how much easing to apply. At 1 you get the full effect; lower blends toward the original curve.
- normalize_input / normalize_output (both default true) - keep these on unless you have a specific reason; they keep the eased curve inside the same sigma range so it stays valid for the sampler.
The single input schedule is sigmas (SIGMAS), and the single output is SIGMAS - plug it into a sampler's sigmas input, or into another sigma node.
Installing it
ComfyUI Manager: search RES4LYF, install, restart. Manually:
cd custom_nodes
git clone https://github.com/ClownsharkBatwing/RES4LYF/
cd RES4LYF
pip install -r requirements.txt
pip install inside the venv (or portable Python), restart, hard-refresh F5. No downloads.
Common issues
Two things. First, the exotic easings - elastic, bounce, back - can overshoot and produce a curve that dips or spikes in ways a sampler doesn't like, which shows up as artifacts. Keep normalize_output on, start with cubic/quad, and preview before you commit. Second, this is a curve modifier, not a scheduler - it needs a SIGMAS input to bend, so wire a scheduler into it first. And the golden rule for every sigma node in this pack: pair it with SigmasPreview so you can see what your easing actually did. Reshaping a schedule blind is how you end up with a mystery quality regression. If the node's missing, RES4LYF isn't installed.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| sigmas | SIGMAS | — | |
| easing_type | COMBO | cubic | 10 options: sine, quad, cubic, quart, quint, expo, +4 |
| easing_mode | COMBO | in_out | 3 options: in, out, in_out |
| normalize_input | BOOLEAN | true | — |
| normalize_output | BOOLEAN | true | — |
| strength | FLOAT | 1.00.1–10 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| SIGMAS | SIGMAS | — |