docs: sync UI/rendering instructions with Campaign V reality
The instruction files still described ImGui.NET + the OpenGL ImGui extension as the permanent ACDREAM_DEVTOOLS=1 developer stack and gated the modern rendering path on GL_ARB_bindless_texture / GL_ARB_shader_draw_parameters. Campaign V (V11) deleted the OpenGL backend and the ImGui developer-tools frontend with it; AcDream.App references only Silk.NET.Vulkan, and ACDREAM_DEVTOOLS=1 now only selects the optional Vulkan validation/debug-utils extensions (Program.cs logs exactly this). Update the two stale paragraphs in both synchronized files; shared content remains byte-identical. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
bb1640f777
commit
9fc6e7de7c
2 changed files with 42 additions and 34 deletions
38
AGENTS.md
38
AGENTS.md
|
|
@ -45,13 +45,14 @@ in `src/AcDream.*` references it as a project dependency.
|
|||
`TextureCache`, `GlobalMeshBuffer`, shader infrastructure, and the
|
||||
EnvCell/portal/scenery/terrain-blending pipeline classes.
|
||||
|
||||
**Modern rendering path is MANDATORY** as of the N.5 ship amendment.
|
||||
`WbFoundationFlag`, `InstancedMeshRenderer`, and `StaticMeshRenderer`
|
||||
are deleted. Missing `GL_ARB_bindless_texture` or
|
||||
`GL_ARB_shader_draw_parameters` throws `NotSupportedException` at
|
||||
startup. There is no legacy fallback. Engineering cribs (WbMeshAdapter
|
||||
seams, N.5 SSBO layout, translucency model, gotchas) live in
|
||||
`memory/reference_modern_rendering_pipeline.md`.
|
||||
**Modern rendering path is MANDATORY.** The N.5 ship amendment deleted
|
||||
`WbFoundationFlag`, `InstancedMeshRenderer`, and `StaticMeshRenderer`;
|
||||
Campaign V (`docs/plans/2026-07-27-vulkan-campaign.md`, closed
|
||||
2026-07-29) then ported the renderer to Vulkan behind the RHI contract
|
||||
and deleted the OpenGL backend outright — `AcDream.App` references only
|
||||
`Silk.NET.Vulkan`. There is no legacy fallback. Engineering cribs
|
||||
(WbMeshAdapter seams, N.5 SSBO layout, translucency model, gotchas)
|
||||
live in `memory/reference_modern_rendering_pipeline.md`.
|
||||
|
||||
Before re-implementing any AC-specific rendering or dat-handling
|
||||
algorithm, **read `docs/architecture/worldbuilder-inventory.md` FIRST**.
|
||||
|
|
@ -78,17 +79,20 @@ and `~/.claude/projects/.../memory/` (the latter is browsable in
|
|||
Obsidian via the `claude-memory/` junction in the repo root; see
|
||||
`memory/reference_obsidian_vault.md`).
|
||||
|
||||
**UI strategy:** two coexisting presentation stacks over shared state,
|
||||
ViewModels, events, and commands. ImGui.NET +
|
||||
`Silk.NET.OpenGL.Extensions.ImGui` is the permanent
|
||||
`ACDREAM_DEVTOOLS=1` developer stack using `IPanel`/`IPanelRenderer`.
|
||||
Retail gameplay UI is the independent retained `UiHost`/`UiRoot` tree in
|
||||
`AcDream.App/UI`, imported from LayoutDesc/DAT assets and bound by focused
|
||||
controllers. The stable cross-stack seam is ViewModels/commands, not a backend
|
||||
swap. `TextRenderer` + `BitmapFont` also serve D.6 world-space HUD elements
|
||||
where ImGui cannot reach the 3D scene. Plugin gameplay UI uses the BCL-only
|
||||
**UI strategy:** one presentation stack — the retained retail
|
||||
`UiHost`/`UiRoot` tree in `AcDream.App/UI`, imported from LayoutDesc/DAT
|
||||
assets and bound by focused controllers over shared state, ViewModels,
|
||||
events, and commands (the ViewModels/commands seam from the earlier
|
||||
two-stack era remains the stable boundary between state and
|
||||
presentation). The ImGui.NET developer-tools frontend
|
||||
(`AcDream.UI.ImGui`) and the OpenGL backend it required were deleted at
|
||||
Campaign V slice V11 (`docs/plans/2026-07-27-vulkan-campaign.md`);
|
||||
`ACDREAM_DEVTOOLS=1` now only selects the optional Vulkan
|
||||
validation/debug-utils extensions (see the flag's log line in
|
||||
`Program.cs`). `TextRenderer` + `BitmapFont` serve D.6 world-space HUD
|
||||
elements in the 3D scene. Plugin gameplay UI uses the BCL-only
|
||||
`AcDream.Plugin.Abstractions.IUiRegistry.AddMarkupPanel` contract; plugins
|
||||
never import App or ImGui namespaces. Full design:
|
||||
never import App namespaces. Full design:
|
||||
[`docs/plans/2026-04-24-ui-framework.md`](docs/plans/2026-04-24-ui-framework.md).
|
||||
Memory cribs: `claude-memory/project_chat_pipeline.md` (chat pipeline as of
|
||||
Phase I), `claude-memory/project_input_pipeline.md` (input pipeline as of
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue