- Introduced export schema for JSON data structure. - Created renderer contract detailing canvas/SVG rendering requirements. - Defined IndexedDB storage schema and migration strategies. - Documented data model including entities and relationships. - Developed implementation plan outlining execution flow and project structure. - Provided quickstart guide for development environment setup. - Compiled research documentation on performance, accessibility, and theming. - Established feature specification with user scenarios and functional requirements.
42 lines
1.4 KiB
Markdown
42 lines
1.4 KiB
Markdown
# Research: Canvas/SVG Performance on Mobile
|
||
|
||
## Hypothesis
|
||
We can sustain 60 fps for 150–365 tiles with glow/overlay on mid-range devices by batching draws and minimizing per-frame allocations.
|
||
|
||
## Questions
|
||
- FPS across tile counts (30, 90, 180, 365) and DPR (1.0, 2.0, 3.0)
|
||
- Cost of static overlay and glyph rendering
|
||
- Breakpoints for reduced motion or static rendering
|
||
|
||
## Method
|
||
- Use `/packages/viz/poc/index.html` harness
|
||
- Test devices: low-end Android, mid Android, iPhone
|
||
- Record FPS and memory; profile with devtools
|
||
|
||
## Test Matrix (fill during runs)
|
||
| DPR | Animate | Tiles | FPS | Notes |
|
||
|-----|---------|-------|-----|-------|
|
||
| 1 | false | 30 | | |
|
||
| 1 | false | 90 | | |
|
||
| 1 | false | 180 | | |
|
||
| 1 | false | 365 | | |
|
||
| 1 | true | 30 | | |
|
||
| 1 | true | 90 | | |
|
||
| 1 | true | 180 | | |
|
||
| 1 | true | 365 | | |
|
||
| 2 | false | 30 | | |
|
||
| 2 | false | 90 | | |
|
||
| 2 | false | 180 | | |
|
||
| 2 | false | 365 | | |
|
||
| 2 | true | 30 | | |
|
||
| 2 | true | 90 | | |
|
||
| 2 | true | 180 | | |
|
||
| 2 | true | 365 | | |
|
||
|
||
## Acceptance
|
||
- 55–60 fps at 180 tiles on mid devices
|
||
- Document fallback thresholds and settings
|
||
|
||
## Deliverables
|
||
- Metrics table; recommendations for renderer design
|