A native performance showcase (examples/photo_grid). Build it with the SDK and run ./build/photo_grid — press Space for the continuous auto-scroll.
20,000 Photos
Twenty thousand photos in a virtualized grid with spring-driven scroll and pinch-zoom, holding 120fps with a bounded LRU texture cache. Only the visible set is ever touched — per-frame cost is a function of the screen, not the collection.
- Virtualized culling (working set bounded)
- Bounded LRU GPU texture cache
- Spring scroll + pinch zoom
- 5.3× headroom under the 120fps budget
A native performance showcase (examples/photo_grid). Build it with the SDK and run ./build/photo_grid — press Space for the continuous auto-scroll.
// examples/photo_grid/PhotoGrid.h — spring scroll + virtualized cull Motion<float> scroll_; // velocity-preserving spring void onScroll(Point, float, float dy) override { scroll_.springTo(clamp(scroll_.target() - dy*60, 0, maxScroll_), springs::gentle); // silky inertial fling } // only the visible rows are decoded + drawn; the ImageCache LRU // evicts off-screen textures so VRAM stays flat at 20k photos.