Files
mrgameeng/docs/roadmap.md
T
Leonid PershinandClaude Fable 5 af319d1276 Add MrGameEng.UI module integrating Myra
scene.UseUI() creates a per-scene Myra Desktop and registers
UiRenderSystem last in the draw phase (UI on top, window pixels).
GameHost now exposes itself as a Game service (Myra needs the instance;
useful for games too). Myra was picked over Gum/ImGui for the
FontStashSharp ecosystem fit, pipeline-free assets and maturity; its
internal SpriteBatch use is a documented exception to the engine rule.

Sample: on-screen HUD replaces window-title-only stats — live FPS label,
music volume slider and scene-switch buttons on both scenes.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 04:51:12 +03:00

2.0 KiB

Roadmap

Базовый движок (ядро, рендер, ассеты с кодогенерацией, ввод, звук, демо) реализован — текущие возможности описаны в architecture.md. Здесь — только планы.

Пункт считается завершённым, когда покрыт тестами и показан в MrGameEng.Sample; после завершения он убирается отсюда и фиксируется в architecture.md.

Ближайшее

  • Текст: рендер шрифтов FontStashSharp через батчер движка (новый модуль MrGameEng.Text, потребует зависимости от Graphics)
  • MSBuild target для автоматической компиляции .fx.mgfx через dotnet-mgfxc (лоадер .mgfx в AssetManager уже готов; target — когда появится первый кастомный шейдер)

Бэклог

  • Physics2D (выбор библиотеки: Aether.Physics2D / своя)
  • Tilemap (поддержка Tiled)
  • Particles
  • UI: загрузка MML-разметки Myra через AssetManager + хендлы в кодогенераторе
  • UI: рендер Myra через наш батчер (IMyraRenderer), если UI станет узким местом по draw call'ам
  • DevTools-модуль на ImGui.NET: инспектор сущностей, дебаг-панели
  • Бенчмарки BenchmarkDotNet для систем (сейчас производительность контролируется стресс-сценой)
  • Spatial hash для culling на очень больших мирах (если профилирование покажет необходимость)
  • Параллельная запись вершин (Parallel.For по чанкам), если упрёмся в CPU на ещё больших сценах