Files
mrgameeng/docs/roadmap.md
T
Leonid Pershin b3415120c3
CI / build-test (push) Failing after 1m4s
Add MrGameEng.Tilemaps: code-built tile grids rendered through the batcher
TileSet maps ids to texture regions with tints (0 = empty), TileGrid is a
bounds-checked dense ushort grid, and the Tilemap component places a grid
in the world per render layer. UseTilemaps() inserts TilemapRenderSystem
before the flush; it submits only the camera-visible cell range
(TilemapMath.VisibleCells), so frame cost scales with the screen, not the
grid. Demonstrated in the sample as a checkerboard floor; Tiled loading
stays on the roadmap on top of this API.
2026-06-11 10:24:47 +03:00

1.9 KiB

Roadmap

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

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

Ближайшее

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

Бэклог

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