Atlas Scale Override π
Atlas Scale Override π β when you know the truth, tell the solve
- solve
- solve
- report
AtlasScaleOverride is the blunt instrument of the pack's scale toolbox. Where AtlasReferenceScaleSolve measures scale from a known object, this node just lets you tell the solve the answer directly. You know the camera was at 12 metres, or you know the whole scene needs to be ten times bigger? Type the number, get a corrected solve, move on. It's the node you reach for when measurement is overkill and the truth is sitting in front of you.
Two ways to drive it
- scale - a metric scale multiplier.
10.0means the whole scene is 10Γ as far/big, which is the classic single-image "1:10" model case. Because metric scale is proportional to camera height, this uniformly rescales every downstream distance: geometry, the π cutoffs that decide which references matter, and the cameras your DCC exports. What it does not change is the projected view - the plate still reassembles exactly, because texel assignment is by ray, not by distance. - camera_height_m - the absolute override. When you know the real vantage height, set it here and the node computes the factor for you. This wins whenever both are set;
scaleis ignored oncecamera_height_m > 0.
Either way you get an updated solve out and a report telling you what happened.
The thing to understand
The reason there are three scale-fixing nodes in this pack (reference-object, this override, and the learned solve's own output) is that scale is the one quantity a single photo genuinely cannot measure. The solve's orientation and focal are geometry; scale is an assumption. AtlasScaleOverride exists for the moment you can replace that assumption with a fact - and it's also the honest escape hatch when a reference object just isn't there. If nothing in the frame has a known size, choosing a defensible camera height by hand and locking it is strictly better than exporting an unexamined "assumed" scale that's wrong by 10Γ.
Gotchas
The output still says "metric" even when you pulled the number from thin air - the node can't know you were guessing. So the discipline is on you: if the scale came from vibes, treat everything downstream that depends on metres (interocular distances, parallax, DCC camera move budgets) as a range, not a truth. The pack's AtlasSceneHealthGate exists partly because of exactly this class of silent error. And no, scaling never rescales the projected image - if your plate is smearing or tearing, scale is not your problem; look at the geometry and masks instead.
Install
Core node, no dependencies:
cd <ComfyUI>/custom_nodes
git clone https://github.com/mikejamesvfx/atlas-camera.git
Restart, find it under Atlas/02 Β· Orient & Scale, or install via ComfyUI Manager by searching "atlas-camera". Drop it between your solve node and whatever consumes scale (geometry, depth, exports) - it's composable after any solve, which is the intended position.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| solve | ATLAS_SOLVE | β | |
| scaleopt | FLOAT | 1.00.001β100000 | Metric scale multiplier β 10.0 = the whole scene is 10Γ as far/big (the single-image '1:10' case). Metric scale β camera height, so this uniformly rescales every downstream distance (geometry, π cutoffs, DCC-export cameras); the projected view is unchanged. Ignored when camera_height_m > 0. |
| camera_height_mopt | FLOAT | 0.00β1000000 | Absolute override: SET the camera height in metres when you know the real vantage (the node computes the factor). 0 = use the scale multiplier instead. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| solve | ATLAS_SOLVE | β |
| report | STRING | β |