LoVisual/mod/docs
loki5512344 d5f17eb0ac
refactor(mod): dispatch RenderBackendOps.current() by active backend (Stage 4 kickoff)
Stage 4 Vulkan groundwork. Before this, RenderBackendOps.current() unconditionally
returned GlRenderBackendOps.INSTANCE with a 'Stage 3-prep' comment. Under Vulkan
the GL impl is still harmless (its methods all short-circuit on OptimizeToggles
and the GL mixins never fire), but the interface lied about the active backend.

- New misc/optimize/vulkan/VulkanRenderBackendOps: singleton, no-op stub, all
  *Supported() return false, cache/map methods do nothing. This is the skeleton
  the Stage 4 items (persistent VkPipelineCache, VulkanRenderPass state cache)
  will grow into.
- RenderBackendOps.current() inspects RenderSystem.getDevice().getClass().getName()
  and returns VulkanRenderBackendOps for com.mojang.blaze3d.vulkan.* devices,
  GlRenderBackendOps otherwise. Class-name check (not instanceof) so this method
  itself does not force linking of GlDevice/VulkanDevice.
- Wrapped getDevice() in try/catch: unit tests call current() before RenderSystem
  has a device and previously took the GL path; now they still do via the fallback.

Doc: Stage 4 kickoff entry in the changelog.
2026-10-12 22:10:10 +02:00
..
api chore(history): squash 59 commit(s) from 2026-09-23 2026-09-23 22:38:08 +02:00
EVO_REPORT.md feat: frontend perf and a11y pass, plus mod visuals, hero main menu, Simple Voice Chat and vanilla chat autocomplete 2026-10-01 21:29:54 +02:00
optimize-layer-design.md refactor(mod): dispatch RenderBackendOps.current() by active backend (Stage 4 kickoff) 2026-10-12 22:10:10 +02:00
README.md chore(history): squash 59 commit(s) from 2026-09-23 2026-09-23 22:38:08 +02:00
TODO_HISTORY.md feat: GuiPresence (chat-service presence backend, gateway route, mod module); restore TODO history 2026-10-02 13:41:49 +02:00

docs

  • DEV_GUIDE.md — единый справочник разработчика (сборка, правила ≤200/≤4, пакеты, модули/HUD/команды/миксины/рендер/тесты). Объединён из DEV_GUIDE.md+DEVELOPMENT.md 2026-09-23.
  • api/addons.md — API аддонов (lovisual:addon, жизненный цикл, что может аддон). Публичный API можно ломать свободно при рефакторинге (KISS > совместимость).
  • TODO.md в корне — план фаз (сейчас 8.5/9.1/9.2/10/11).