feat: a dense trace's columns are graded by dwell, so density reads as brightness
Stage 1 cured the moire by collapsing a dense gathered window onto one vertical segment per pixel column; this is the information that collapse throws away. A column's min and max are the same whether its samples are spread evenly or piled at its two ends, so the flat parts of a square wave and the edges between them drew as one ink. Style::intensity_grading, which the library leaves off and this app turns on at the first tick (the renderer does not exist until the area is realized), grades each column by the time the signal spent at each row -- the digital-phosphor look. frame path: gains a graded= field, which must equal columns=: grading is a way of drawing the reduction, not a third path. UDPSCOPE_NO_PHOSPHOR=1 puts the style back to the library's default and is the A/B, since a frame mean cannot attribute its own cost -- measured on the fast mock, draw 3.24 ms graded against 2.30 ms, with segments 1340/4157 against 131/4306 over the same lod=453 frames. That A/B is also what found the level-floor regression now fixed upstream. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
5f5b87ca60
commit
b4b26d3e31
5 files changed
+112
-4
No files matched your search
@@ -42,6 +42,12 @@ The full table is in the shortcut overview (<tt>Ctrl+/</tt>).
|
||||
pixel grid — which reads as bands of light and dark that <i>crawl</i> as you pan. One line per
|
||||
column removes the beat, and it is also much faster: a 1 MS/s view costs a couple of thousand
|
||||
line segments a frame instead of a couple of hundred thousand.
|
||||
• Those columns are <i>graded by brightness</i>, the way a digital-phosphor scope reads: bright
|
||||
where the signal spent its time, faint where it only passed through. A column's highest and
|
||||
lowest value are the same whether the samples in it are spread evenly or piled at its two ends,
|
||||
so the grading is what tells the two apart — the flat parts of a square wave come out solid and
|
||||
the edges between them faint. It is read from a finer division of each column rather than from
|
||||
the line that is drawn, and it costs about a millisecond a frame.
|
||||
|
||||
<b>Example</b>
|
||||
|
||||
|
||||
Reference in new issue
Block a user