port: end the boot when BOTH builds have arrived, not when the plate lands
Moving the plate onto the shared clock moved the boot's exit with it: the run quit at the overlay's settle (t=238) while build 4's own fade-in from black runs to t=261. pteff00 is still ~7 % opaque there, so the capture came out visibly darker than the previous one -- with nothing failing, no warning, and no line in the log to say why. Caught only because there was an earlier capture beside it. The boot now ends at max(view.settle_time(), overlay.settle_time()) and prints the unit it is waiting for. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WM5XL4HfrHuxz8RiMWdCMC
This commit is contained in:
@@ -798,8 +798,16 @@ func _raise_overlay(name: String) -> void:
|
||||
120 units after build 4's last build-in ramp at t=118"
|
||||
% [int(overlay.settle_time()), visible_at])
|
||||
if not _play and _film == "":
|
||||
_overlay_quit_at = _elapsed + visible_at
|
||||
print(" boot ends at %.2f s, once the plate has arrived" % _overlay_quit_at)
|
||||
# The LATER of the two, not the overlay's alone. The plate arrives at
|
||||
# t=238 and build 4 is still fading up from black until t=261 -- its
|
||||
# `pteff00` quad is 7 % opaque at 243 -- so quitting when the plate
|
||||
# lands photographs a title that has not finished presenting. The first
|
||||
# capture taken this way was visibly darker than the one before it, and
|
||||
# nothing in the log said why.
|
||||
var ends_at := maxf(view.settle_time(), overlay.settle_time()) / view.units_per_second
|
||||
_overlay_quit_at = _elapsed - (view.time_units / view.units_per_second) + ends_at
|
||||
print(" boot ends at %.2f s, once both builds have arrived (t=%d)"
|
||||
% [_overlay_quit_at, int(maxf(view.settle_time(), overlay.settle_time()))])
|
||||
# `spec` is read only for the log; the reasoning lives in flow.json where a
|
||||
# reader looking for a decision will find it.
|
||||
if spec.has("why"):
|
||||
|
||||
Reference in New Issue
Block a user