feat(mod): parallel-particles plumbing (CORES>=4 auto + -D tri-state)
Stage 1 item 4 from optimize-layer-design.md, simplified to what the reference does (auto|true|false) instead of the original 'measure first' plan. Workers now holds the resolved flag: - Workers.PARALLEL_MIN_CORES = 4 gate for AUTO mode - Workers.configureParallelParticles(Boolean forced, boolean moduleEnabled) - Workers.shouldParallelParticles() read by the future particle-extraction mixin (26.2 QuadParticleGroup/SpriteBillboardParticle wiring is separate) - Workers.resetParallelParticles() called by Optimize.onDisable Optimize gains a parallel_particles BooleanValue (default true = AUTO). OptimizePropertyBridge parses -Dlovisual.opt.parallel_particles as tri-state: null (unset or 'auto' -> defer to module + cores gate), TRUE, FALSE; the key is now part of OVERRIDE_KEYS so hasOverrides() sees it and toString() includes it. Docs: 'Что делаем лучше' item 4 marked done — no measurement gate, matching the new plan direction. Tests: 5 new WorkersTest cases for resolveParallelParticles + configure/reset round trip; 4 new OptimizePropertyBridgeTest cases for the tri-state parser (unset / explicit 'auto' / forced true|false / hasOverrides pickup). gradle compileJava compileTestJava test checkFolderLimit green.
This commit is contained in:
parent
ecde09560d
commit
e85c4fc10a
6 changed files with 141 additions and 2 deletions
|
|
@ -65,6 +65,9 @@ optimize/
|
|||
2. **Профилировщик секций** (сущности, частицы, HUD, эффекты, текст) в debug-оверлее.
|
||||
3. **Один конфиг** в `Optimize`, без отдельного экрана референса.
|
||||
4. **Авто-порог параллельных частиц** по замеру (в референсе порог 4+ ядра взят из одного прогона).
|
||||
→ **Упрощено 2026-10-12**: сделано как в референсе — `CORES >= 4` + `-Dlovisual.opt.parallel_particles=auto|true|false`.
|
||||
Модуль `Optimize.parallel_particles` (default true = AUTO) и `Workers.shouldParallelParticles()` — plumbing готов,
|
||||
mixin-точка на vanilla extraction приложится позже (26.2 `QuadParticleGroup`/`SpriteBillboardParticle`).
|
||||
5. **Кэш статичных HUD-виджетов в текстуру** (перерисовка только при изменении).
|
||||
6. Флаги для бенчмарков: `-Dlovisual.opt.<key>`.
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue