cad-editor/src/app
Repository files (latest commit first)
Filename Latest commit message Latest commit date
sLuCHa a55e1ac4f8 perf(render): skip hatch pass while navigating (interaction LOD)
The batched hatch pass evaluates its fill procedurally per fragment — a
point-in-polygon test over the whole boundary plus the pattern test, with a
`discard` that disables early-Z. When the view sits inside a hatch its quad
covers the screen, so panning / zooming re-runs that full-screen shader every
frame (~40 ms/frame on a hatch-heavy plan) even though the rest of the scene
is cheap — the wire pass and CPU prepare are negligible by comparison.

Suppress the hatch pass while the view is actively panning / zooming /
orbiting, detected from `camera_generation` plus a short settle timer
(`Scene::navigating_lod`), and fold that state into the render signature so
the moment the view settles it renders hatches once and the scene-render
cache holds that full-quality frame. A brief `is_settling` subscription keeps
requesting frames just past the settle point so the hatched frame renders
even when no input event would otherwise fire. Mirrors AutoCAD's adaptive
degradation. The paper sheet keeps its fills.
2026-07-05 09:48:49 +02:00
..
commands feat(plugin): surface loaded plugin commands in command-line autocomplete 2026-07-04 23:01:53 +03:00
update perf(xref): fix O(n²) AcDs parse and skip host re-tessellation 2026-07-05 00:38:38 +03:00
view perf(render): skip hatch pass while navigating (interaction LOD) 2026-07-05 09:48:49 +02:00
automation.rs fix(rotate): apply a typed angle right after the centre (#159) 2026-06-25 19:58:45 +03:00
command_driver.rs fix(insert): place block attributes by their ATTDEF geometry, follow the block (#255) 2026-07-03 16:47:39 +03:00
document.rs feat(commands): expand standard CAD command coverage 2026-06-29 08:23:58 +03:00
expr_eval.rs fix(expr-eval): bound eval_to_string against super-linear DoS 2026-06-28 22:41:02 +03:00
helpers.rs build(deps): bump acadrust to 486c0a9; handle the Helix entity 2026-07-02 23:28:37 +03:00
history.rs perf(hash): swap std HashMap/HashSet for rustc-hash FxHash 2026-06-05 00:35:53 +03:00
layers.rs refactor: move resource/IO root modules under io/ 2026-06-26 23:06:40 +03:00
mod.rs feat(ui): bulk layer on/off, lock, freeze, transparency + Ctrl+A (#236) 2026-07-03 16:06:10 +03:00
model_ops.rs fix(web): restore wasm build broken by SECTION + file association 2026-06-29 17:13:17 +03:00
mtext_editor.rs refactor: remove remaining world_offset vestiges in app/ 2026-06-24 19:01:25 +03:00
plugin_host.rs fix(plugin): auto-register unknown layers so added entities survive DWG save (#252) 2026-07-02 20:36:16 +03:00
properties.rs fix(commands): ADDSELECTED keeps CLAYER, adopts dimension style (#239) 2026-07-03 16:05:54 +03:00
recent.rs feat(ui): replace app-menu logo with a quick-access file toolbar 2026-07-03 09:51:49 +03:00
settings.rs feat(io): autosave to .sv$ recovery files (SAVETIME command) (#205) 2026-06-29 13:17:40 +03:00
style_ops.rs chore: clear compiler warnings 2026-06-18 21:18:09 +03:00
text_inline.rs feat(ucs): orient text-bearing annotations to the active UCS 2026-06-22 18:18:35 +03:00
visibility.rs refactor(scene): group modules into role-based subfolders 2026-06-16 11:33:46 +03:00