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
|
`TextureCache`, `GlobalMeshBuffer`, shader infrastructure, and the
|
||||||
EnvCell/portal/scenery/terrain-blending pipeline classes.
|
EnvCell/portal/scenery/terrain-blending pipeline classes.
|
||||||
|
|
||||||
**Modern rendering path is MANDATORY** as of the N.5 ship amendment.
|
**Modern rendering path is MANDATORY.** The N.5 ship amendment deleted
|
||||||
`WbFoundationFlag`, `InstancedMeshRenderer`, and `StaticMeshRenderer`
|
`WbFoundationFlag`, `InstancedMeshRenderer`, and `StaticMeshRenderer`;
|
||||||
are deleted. Missing `GL_ARB_bindless_texture` or
|
Campaign V (`docs/plans/2026-07-27-vulkan-campaign.md`, closed
|
||||||
`GL_ARB_shader_draw_parameters` throws `NotSupportedException` at
|
2026-07-29) then ported the renderer to Vulkan behind the RHI contract
|
||||||
startup. There is no legacy fallback. Engineering cribs (WbMeshAdapter
|
and deleted the OpenGL backend outright — `AcDream.App` references only
|
||||||
seams, N.5 SSBO layout, translucency model, gotchas) live in
|
`Silk.NET.Vulkan`. There is no legacy fallback. Engineering cribs
|
||||||
`memory/reference_modern_rendering_pipeline.md`.
|
(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
|
Before re-implementing any AC-specific rendering or dat-handling
|
||||||
algorithm, **read `docs/architecture/worldbuilder-inventory.md` FIRST**.
|
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
|
Obsidian via the `claude-memory/` junction in the repo root; see
|
||||||
`memory/reference_obsidian_vault.md`).
|
`memory/reference_obsidian_vault.md`).
|
||||||
|
|
||||||
**UI strategy:** two coexisting presentation stacks over shared state,
|
**UI strategy:** one presentation stack — the retained retail
|
||||||
ViewModels, events, and commands. ImGui.NET +
|
`UiHost`/`UiRoot` tree in `AcDream.App/UI`, imported from LayoutDesc/DAT
|
||||||
`Silk.NET.OpenGL.Extensions.ImGui` is the permanent
|
assets and bound by focused controllers over shared state, ViewModels,
|
||||||
`ACDREAM_DEVTOOLS=1` developer stack using `IPanel`/`IPanelRenderer`.
|
events, and commands (the ViewModels/commands seam from the earlier
|
||||||
Retail gameplay UI is the independent retained `UiHost`/`UiRoot` tree in
|
two-stack era remains the stable boundary between state and
|
||||||
`AcDream.App/UI`, imported from LayoutDesc/DAT assets and bound by focused
|
presentation). The ImGui.NET developer-tools frontend
|
||||||
controllers. The stable cross-stack seam is ViewModels/commands, not a backend
|
(`AcDream.UI.ImGui`) and the OpenGL backend it required were deleted at
|
||||||
swap. `TextRenderer` + `BitmapFont` also serve D.6 world-space HUD elements
|
Campaign V slice V11 (`docs/plans/2026-07-27-vulkan-campaign.md`);
|
||||||
where ImGui cannot reach the 3D scene. Plugin gameplay UI uses the BCL-only
|
`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
|
`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).
|
[`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
|
Memory cribs: `claude-memory/project_chat_pipeline.md` (chat pipeline as of
|
||||||
Phase I), `claude-memory/project_input_pipeline.md` (input pipeline as of
|
Phase I), `claude-memory/project_input_pipeline.md` (input pipeline as of
|
||||||
|
|
|
||||||
38
CLAUDE.md
38
CLAUDE.md
|
|
@ -43,13 +43,14 @@ in `src/AcDream.*` references it as a project dependency.
|
||||||
`TextureCache`, `GlobalMeshBuffer`, shader infrastructure, and the
|
`TextureCache`, `GlobalMeshBuffer`, shader infrastructure, and the
|
||||||
EnvCell/portal/scenery/terrain-blending pipeline classes.
|
EnvCell/portal/scenery/terrain-blending pipeline classes.
|
||||||
|
|
||||||
**Modern rendering path is MANDATORY** as of the N.5 ship amendment.
|
**Modern rendering path is MANDATORY.** The N.5 ship amendment deleted
|
||||||
`WbFoundationFlag`, `InstancedMeshRenderer`, and `StaticMeshRenderer`
|
`WbFoundationFlag`, `InstancedMeshRenderer`, and `StaticMeshRenderer`;
|
||||||
are deleted. Missing `GL_ARB_bindless_texture` or
|
Campaign V (`docs/plans/2026-07-27-vulkan-campaign.md`, closed
|
||||||
`GL_ARB_shader_draw_parameters` throws `NotSupportedException` at
|
2026-07-29) then ported the renderer to Vulkan behind the RHI contract
|
||||||
startup. There is no legacy fallback. Engineering cribs (WbMeshAdapter
|
and deleted the OpenGL backend outright — `AcDream.App` references only
|
||||||
seams, N.5 SSBO layout, translucency model, gotchas) live in
|
`Silk.NET.Vulkan`. There is no legacy fallback. Engineering cribs
|
||||||
`memory/reference_modern_rendering_pipeline.md`.
|
(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
|
Before re-implementing any AC-specific rendering or dat-handling
|
||||||
algorithm, **read `docs/architecture/worldbuilder-inventory.md` FIRST**.
|
algorithm, **read `docs/architecture/worldbuilder-inventory.md` FIRST**.
|
||||||
|
|
@ -76,17 +77,20 @@ and `~/.claude/projects/.../memory/` (the latter is browsable in
|
||||||
Obsidian via the `claude-memory/` junction in the repo root; see
|
Obsidian via the `claude-memory/` junction in the repo root; see
|
||||||
`memory/reference_obsidian_vault.md`).
|
`memory/reference_obsidian_vault.md`).
|
||||||
|
|
||||||
**UI strategy:** two coexisting presentation stacks over shared state,
|
**UI strategy:** one presentation stack — the retained retail
|
||||||
ViewModels, events, and commands. ImGui.NET +
|
`UiHost`/`UiRoot` tree in `AcDream.App/UI`, imported from LayoutDesc/DAT
|
||||||
`Silk.NET.OpenGL.Extensions.ImGui` is the permanent
|
assets and bound by focused controllers over shared state, ViewModels,
|
||||||
`ACDREAM_DEVTOOLS=1` developer stack using `IPanel`/`IPanelRenderer`.
|
events, and commands (the ViewModels/commands seam from the earlier
|
||||||
Retail gameplay UI is the independent retained `UiHost`/`UiRoot` tree in
|
two-stack era remains the stable boundary between state and
|
||||||
`AcDream.App/UI`, imported from LayoutDesc/DAT assets and bound by focused
|
presentation). The ImGui.NET developer-tools frontend
|
||||||
controllers. The stable cross-stack seam is ViewModels/commands, not a backend
|
(`AcDream.UI.ImGui`) and the OpenGL backend it required were deleted at
|
||||||
swap. `TextRenderer` + `BitmapFont` also serve D.6 world-space HUD elements
|
Campaign V slice V11 (`docs/plans/2026-07-27-vulkan-campaign.md`);
|
||||||
where ImGui cannot reach the 3D scene. Plugin gameplay UI uses the BCL-only
|
`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
|
`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).
|
[`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
|
Memory cribs: `claude-memory/project_chat_pipeline.md` (chat pipeline as of
|
||||||
Phase I), `claude-memory/project_input_pipeline.md` (input 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