Clamp a requested element capacity to the per-node texture bound,
reporting each distinct clamped size once (data loss — the tail of the
node's elements will never render; the layout's clampHint names the
fix). Identically sized offenders of one geometry type share that report.
Reported at ERROR level, not warning. A clamp means part of the scene the
author asked for is not on screen and never will be, and because elements
are written in spatial (Hilbert / BSP) order the dropped tail is one
COMPACT REGION rather than a thin scatter — it reads as a hole in the data,
not as degraded quality. That is indistinguishable from a broken dataset
unless the message stands out from the couple of hundred ordinary log lines
a scene load emits (#1957, where an ocean-currents node lost the North
Atlantic and the one console.warn saying so went unnoticed).
The Python writers warn about the same overflow at AUTHORING time
(io/_compiler/node_common.py::warn_if_over_element_cap, #1957), but only
against the 4096-class floor and only for scenes Luxar authored. This is the
load-time backstop: it knows the REAL device bound and fires for any store,
however it was produced.
Clamp a requested element capacity to the per-node texture bound, reporting each distinct clamped size once (data loss — the tail of the node's elements will never render; the layout's
clampHintnames the fix). Identically sized offenders of one geometry type share that report.Reported at ERROR level, not warning. A clamp means part of the scene the author asked for is not on screen and never will be, and because elements are written in spatial (Hilbert / BSP) order the dropped tail is one COMPACT REGION rather than a thin scatter — it reads as a hole in the data, not as degraded quality. That is indistinguishable from a broken dataset unless the message stands out from the couple of hundred ordinary log lines a scene load emits (#1957, where an ocean-currents node lost the North Atlantic and the one
console.warnsaying so went unnoticed).The Python writers warn about the same overflow at AUTHORING time (
io/_compiler/node_common.py::warn_if_over_element_cap, #1957), but only against the 4096-class floor and only for scenes Luxar authored. This is the load-time backstop: it knows the REAL device bound and fires for any store, however it was produced.