Pan/zoom gestures move the drawing as a CSS-transformed layer, a picture at the scale last drawn. A long touchpad pinch showed an ever more stretched, blurry view (3.6x at the end of a 1.2 s pinch), and every zoom ended with a blur-then-snap 180 ms after its last step. Now the view is drawn anew during the gesture once the picture is 30% off in scale (at most every 120 ms; draw() keeps the gesture state), and at its true scale 90 ms after the last step. Measured in Brave at 1.5x pixel density: sharp ~130 ms instead of ~240 ms after a pinch, crisp on the way. Cost at 6x CPU slowdown: 11.4 -> 14.6 ms per wheel step in the Studio, 9.1 -> 10.5 on a page, still no frame over 50 ms. check_web: a long pinch is drawn anew on the way and sharp within 150 ms.
This commit is contained in:
1 parent
cddf834e56
commit
ccfd619a99
3 files changed
+50
-9
No files matched your search
@@ -101,6 +101,13 @@ the tags only); hover 22 → 15 ms per move (tooltip placed once per frame on it
|
||||
readout ten times a second); rotate 226 → 154 ms, edit 409 → 305 ms until painted (WASM built with
|
||||
opt-level 3: engine render 11.7 → 9.4 ms at full speed).
|
||||
|
||||
Sharp zooming: the moved layer is a picture at the scale last drawn, so a long touchpad pinch showed
|
||||
an ever more stretched, blurry view (3.6x at the end of a 1.2 s pinch) and every zoom ended with a
|
||||
blur-then-snap 180 ms after its last step. Now the view is drawn anew during the gesture once the
|
||||
picture is 30% off in scale (at most every 120 ms), and at its true scale 90 ms after the last step:
|
||||
sharp about 130 instead of 240 ms after a pinch, at a cost of 11.4 → 14.6 ms per wheel step at 6x
|
||||
slowdown (still no frame over 50 ms).
|
||||
|
||||
Production lines: Producer (a press making cartons, crates, drums, sacks or parts at a set rate
|
||||
per minute, its ram going down once per item) and Conveyor (drawn the way it runs, belt width,
|
||||
height, rise, speed; corners join without overlap). A conveyor starting at a producer's output, or
|
||||
|
||||
Reference in new issue
Block a user