Nodes/Gimbal-ComfyUI/🧭 Gimbal Compass Pro
ComfyUI Node

🧭 Gimbal Compass Pro

Steer your latent where you actually want it

By FormAndNoiseΒ·Created about a month agoΒ·Updated 19 days agoΒ· 0
🧭 Gimbal Compass Pro
  • base_latent
  • target_latent
  • origin_latent
  • mask
  • mu_centroid
  • latent_out
  • gimbal_meta
β—„strength1.00β–Ί
β—„modeStandardβ–Ί
β—„clamp_outputfalseβ–Ί
β—„clamp_min-10.0β–Ί
β—„clamp_max10.0β–Ί
β—„allow_batch_expandfalseβ–Ί
β—„ortho_per_channelfalseβ–Ί
β—„clamp_mask_inputfalseβ–Ί
β—„enable_perf_loggingfalseβ–Ί
β—„seed0β–Ί

You know the loop: type a prompt, roll a seed, get something close to the vision, then reroll forty times hoping the dice land right. Gimbal Compass Pro is the flagship node of the Gimbal pack built to kill that loop. Instead of gambling, you treat the latent as a coordinate in a huge vector space and literally move it: take a base latent, point it at a target latent, and walk along that direction by a strength you control. No randomness, no praying to the VAE gods - just geometry.

That framing (the pack's whole "flight instruments" metaphor) comes from Form & Noise, the author of the Gimbal-comfy suite of ~19 nodes. The math underneath is real - spherical interpolation, orthogonal projection, latent vector arithmetic - even if the README sells it with more theatrical marketing ("GPU certified", an AI flight crew in the credits) than you'd get from most packs. Compass Pro is the instrument you'll reach for first.

How it works

Give it three latents: base_latent (where you start), target_latent (where you want to lean), and origin_latent (the reference point the direction is measured from). The delta is target βˆ’ origin, and mode decides how that delta gets applied to the base:

  • Standard - the plain base + strength Γ— delta. Fast, crude, works.
  • Normalized - same idea but scales the delta to unit magnitude so strength behaves more predictably.
  • Orthogonal_Projection - removes the component of the change parallel to your subject. This is the one to use when you want to repaint the lighting but lock the car's silhouette 100%.
  • Slerp / Slerp_Origin - geodesic (arc-on-the-sphere) interpolation instead of a straight cut through the latent, which avoids the washed-out midpoints naive linear blending gives you.
  • Blend_Overlay / Blend_Multiply - compositing-style blends, and Stochastic_Sample - a seeded random walk, the one mode where seed actually matters.

The outputs are latent_out (wire it into a KSampler) and gimbal_meta, a DICT of diagnostics you can mostly ignore on your first pass. The optional mask (MASK type) lets you restrict the steering to part of the image, and mu_centroid lets you override the anchor used for ΞΌ-centered Slerp - leave it unplugged and it uses origin_latent.

The two settings that matter

Everything defaults sensibly, so the beginner set is small: mode (start with Slerp or Orthogonal_Projection) and strength (βˆ’10 to 10). Crank strength too far and you overshoot into soup; most of the author's own tutorials live in the 0.5–1.5 band.

Common issues

Where people get burned: don't SLERP mid-denoise. The pack's own failure docs show what happens when you blend at step 8 of 20 - tree branches become rock spires, because the UNet has already crystallized geometry. Blend at Step-0 noise (both latents fresh out of a denoise=1.0 KSampler), then run the result through a refinement pass at denoise 0.45–0.60 and drop CFG to roughly 3.5–4.5 - high CFG over-drives the injected direction and deep-fries your image with crispy black outlines. Also, if you see a WayfinderCompass_Pro class name in a saved workflow, that's fine - the Wayfinder names are the legacy aliases for the current Gimbal classes, same node.

Install

# ComfyUI Manager β†’ Install Custom Nodes β†’ search "Gimbal"
# or manually:
cd ComfyUI/custom_nodes
git clone https://github.com/FormAndNoise/Gimbal-comfy
pip install -r Gimbal-comfy/requirements.txt

Then restart ComfyUI; the node lives under Add Node β†’ Gimbal/Flight Instruments. Its requirements are just torch, numpy and pillow - nothing ComfyUI doesn't already ship, and no model files to download.

CategoryGimbal/Flight Instruments

Inputs (15)

NameTypeDefaultDescription
base_latentLATENTβ€”
target_latentLATENTβ€”
origin_latentLATENTβ€”
strengthFLOAT1.00-10–10β€”
modeCOMBOStandard8 options: Standard, Normalized, Orthogonal_Projection, Slerp, Slerp_Origin, Blend_Overlay, +2
clamp_outputBOOLEANfalseβ€”
clamp_minFLOAT-10.0-100–0β€”
clamp_maxFLOAT10.00–100β€”
allow_batch_expandBOOLEANfalseβ€”
ortho_per_channelBOOLEANfalseβ€”
clamp_mask_inputBOOLEANfalseβ€”
enable_perf_loggingBOOLEANfalseβ€”
maskoptMASKβ€”
seedoptINT00–18446744073709550000β€”
mu_centroidoptLATENTOptional population centroid for ΞΌ-centered Slerp. If absent, origin_latent is used as the anchor.

Outputs (2)

NameTypeDescription
latent_outLATENTβ€”
gimbal_metaDICTβ€”