instant_image_transform(3)
π instant_image_transform(3) β the Arcan Lua API glow-up
okay so bestie, picture this: you're over in Arcan Lua API land and you've got a whole chain of transforms queued up like texts you haven't answered. this is the little function that hits "send all" on them. immediately. no waiting, no suspense. periodt.
β¨ NAME β¨
instant_image_transform β immediately perform all pending transformations. like, all of them, right now, zero chill.
π¦ SYNOPSIS π¦
nil
instant_image_transform( vid:dst )
instant_image_transform( vid:dst, int:mask )
instant_image_transform( vid:dst, bool:trigger_last )
instant_image_transform( vid:dst, bool:trigger_last, bool:trigger_all )
πΈ DESCRIPTION πΈ
so this one fast-forwards through the transform chain for dst. the way that it just skips to the end of the queue, honestly iconic.
if mask is set, then only the specified bitmask of chains get fast-forwarded β and the squad of masks is:
MASK_OPACITYMASK_ORIENTATIONMASK_POSITIONMASK_SCALE
everything else just sits there like π§ waiting its turn.
the default behaviour is to ignore all tagged transform handlers. (rude, but okay.)
- if
trigger_lastis set π all handlers get ignored except the end of each chain. - if
trigger_allis set π literally every handler gets triggered. no survivors. π₯
π NOTES π
- the
trigger_last/trigger_allforms are problematic and should only be used in exceptional circumstances π because a tag transform might lead to a new transform being added, which will immediately be triggered, and then another, and then another β possibly causing hard to debug infinite chains. like an infinite group chat that you can never leave. be careful, bestie, fr fr. - (there's just a
2here. no text. nothing. an empty queen. i don't make the rules. π«Ά)
π EXAMPLE π
function instant_image_transform0()
a = fill_surface(32, 32, 255, 0, 0);
show_image(a);
move_image(a, 50, 50, 100);
instant_image_transform(a);
props = image_surface_properties(a);
print(props.x, props.y);
end
like, make the surface, show it, move it over 100 (which would normally be a whole animated thing), then instant_image_transform(a) yanks it straight to the finish line, and the print(props.x, props.y) proves it landed. slay. π
π SEE ALSO: π
copy_image_transform(3)β go give that one a read too, iykyk β
mwah π that's the whole page β brought to you by the image manual, October 2026 edition. stay transformed, stay instant, and don't build infinite chains. π
π¦ where this page comes from
- nixos 26.05: arcan 0.7.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms