Nodes/ComfyUI_agilly1989_motorway/CreateHookKeyframesInterpolated_motorway_edition
ComfyUI Node

CreateHookKeyframesInterpolated_motorway_edition

Smoothly eased hook keyframes, fed by the Motorway

By agilly1989·Created 2 years ago·Updated about a year ago· 7
CreateHookKeyframesInterpolated_motorway_edition
  • MOTORWAY 🚌💨
  • MOTORWAY 🚌💨
INPUT_prev_hook_kf_keyprev_hook_kf
strength_start1.000
strength_end1.000
interpolation
start_percent0.000
end_percent1.000
keyframes_count5
print_keyframesfalse
OUTPUT_HOOK_KF_keyHOOK_KF

Most of the time you don't want a jarring step in LoRA or patch strength - you want a smooth glide from one strength to another. CreateHookKeyframesInterpolated builds exactly that: it generates a run of keyframes easing from strength_start to strength_end across a percent window, with your choice of easing curve. The _motorway_edition wraps the core node to run on agilly1989's Motorway bus.

How it works

Give it two strengths and a count, and it places keyframes_count keyframes between them using the selected interpolation - linear, ease_in, ease_out, or ease_in_out. The difference from CreateHookKeyframesFromFloats is that you never type the list of values; the node computes them from the start/end pair and the easing method. ease_in_out is the one you'll usually want for "fade the LoRA in and out" - it keeps strength pinned near the ends and spends its movement in the middle, which reads as natural rather than mechanical.

Inputs and outputs

  • MOTORWAY 🚌💨 - the bus, required.
  • INPUT_prev_hook_kf_key - key of an existing keyframe group to chain onto, default prev_hook_kf.
  • strength_start / strength_end - the range of strengths, 0–10, both default 1.
  • interpolation - the easing method, one of the four above.
  • start_percent / end_percent - the timeline window, 0–1.
  • keyframes_count - how many keyframes to generate, 2–100, default 5.
  • print_keyframes - boolean, console dump for debugging, default off.
  • OUTPUT_HOOK_KF_key - key for the resulting group, default HOOK_KF.

Only output: the Motorway.

Installing

cd ComfyUI/custom_nodes
git clone https://github.com/agilly1989/ComfyUI_agilly1989_motorway

Restart, or ComfyUI Manager → "ComfyUI_agilly1989_motorway". No pip deps, no models.

Caveats

Pack-wide: active beta, "BIG BROKEN WITH ASYNC" README banner, _motorway_edition clones commented out of __init__.py in the checked version (re-enable ClonedNodeMapping if missing), keys exact and case-sensitive. Two practical notes: more keyframes is not automatically smoother - past a point you're just burning CPU on a curve that renders the same; and check whether the hook downstream actually respects keyframe strength variation, because a hook that ignores its schedule will make all this fiddling invisible. The hooks system is EXPERIMENTAL in core, so this is a scheduling toy with real teeth, not a production guarantee.

Categoryagilly1989 Nodes/Motorway-ed/advanced/hooks/scheduling

Inputs (10)

NameTypeDefaultDescription
MOTORWAY 🚌💨MOTORWAY 🚌💨
INPUT_prev_hook_kf_keySTRINGprev_hook_kf
strength_startFLOAT1.0000–10
strength_endFLOAT1.0000–10
interpolationCOMBO4 options: linear, ease_in, ease_out, ease_in_out
start_percentFLOAT0.0000–1
end_percentFLOAT1.0000–1
keyframes_countINT52–100
print_keyframesBOOLEANfalse
OUTPUT_HOOK_KF_keySTRINGHOOK_KF

Outputs (1)

NameTypeDescription
MOTORWAY 🚌💨MOTORWAY 🚌💨