acdream/src/AcDream.App/Rendering
Erik 707d2803a4 feat(render): S2 chunk 2 - render statics borrow the registry's retail cell array
WalkProductionWorldData no longer floods; its indoor and outdoor static
sweeps read ShadowObjectRegistry.TryGetRetailCellArray (retail's
calc_cross_cells_static @0x00515160 -> AddPartsShadow @0x00517e40
CELLARRAY, computed once at registration). The App-owned render flood
(ResolveStaticRenderCells, its fingerprint cache, the primitive-Setup
special case) and Core's ComputeStaticRenderCells are deleted. The one
remaining fallback, an entity the physics publisher has not registered yet
while the projection journal already published it, buckets to the authored
parent cell and is counted per frame (UnregisteredStaticRenderFallbackCount)
for chunk 5 to judge on the connected route.

The Facility stair pin now registers at the projection's own entity id
(the old pure-function test never carried identity) and reads the retail
array; the installed-DAT comparator compares retail against collision.

Gates (run in the implementer's isolated worktree at identical content):
Release build 0/0; Core Physics 2,202/2,202; App hermetic 6,760/6,760 (the
two added WalkProductionWorldData tests); installed-DAT walk/flood/stair
family 24/24; Runtime 1,884/1,884.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-02 22:31:46 +02:00
..
Gpu checkpoint(render): preserve pre-overhaul investigation state 2026-09-01 18:04:24 +02:00
Packs fix #451: stabilize portal seam rendering 2026-08-27 14:30:21 +02:00
Residency Revert "Campaign V slice V4a" - it lost world multisampling 2026-07-27 18:29:28 +02:00
Scene refactor(render): remove stale portal products from frame exchange 2026-08-31 06:28:26 +02:00
Selection feat(render): implement Campaign AR and terrain fidelity 2026-08-22 13:13:29 +02:00
Shaders checkpoint(render): preserve pre-overhaul investigation state 2026-09-01 18:04:24 +02:00
Sky fix: complete retail parity stability pass 2026-08-28 20:01:39 +02:00
Vfx feat(audio): Ctrl+M instant mute + inn-chatter investigation closed as server content 2026-08-09 14:09:24 +02:00
Walk feat(render): S2 chunk 2 - render statics borrow the registry's retail cell array 2026-09-02 22:31:46 +02:00
Wb fix(render): pair cell-shell index segments with their reordered batches 2026-09-02 20:31:59 +02:00
AnimationPresentationDiagnostics.cs refactor(animation): extract live PartArray presenter 2026-07-21 09:37:02 +02:00
AttachmentUpdateOrder.cs refactor(app): key live projections by runtime identity 2026-07-25 21:50:58 +02:00
BackendNeutralWorldTextures.cs feat(render): Campaign V slice V6i-2 commit 2 — world texture creation crosses to IGpuTexture 2026-07-28 13:57:43 +02:00
BitmapFont.cs feat(render): put the retained UI and debug lines on both backends 2026-07-28 08:51:32 +02:00
BoundedUnownedResourceCache.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
CameraController.cs fix #414: cursor disappears at character select after the in-world logoff 2026-08-17 15:17:50 +02:00
CameraFrameController.cs fix(camera): port retail offset adjustment laws 2026-08-31 05:42:23 +02:00
CellVisibility.cs refactor(render): delete the dead cell visibility bfs 2026-08-31 04:46:20 +02:00
ChargenPreviewAnimator.cs fix(chargen): Campaign CC CC6b-PRE review fix round — F1-F7 + F11 concession rewrite 2026-08-15 19:32:48 +02:00
ChargenPreviewCamera.cs feat(chargen): Campaign CC slice CC6b-MOUNT — Appearance page + preview mount 2026-08-15 21:00:10 +02:00
ChargenPreviewController.cs fix(chargen): Campaign CC gate round 1 closeout — Group 3: round review fixes (F4-F11, F14, F16) 2026-08-16 15:34:07 +02:00
ChargenPreviewEntityBuilder.cs fix(chargen): Campaign CC gate round 1 closeout — Group 3: round review fixes (F4-F11, F14, F16) 2026-08-16 15:34:07 +02:00
ChargenPreviewRenderer.cs fix(chargen): Campaign CC gate round 1 closeout — Group 3: round review fixes (F4-F11, F14, F16) 2026-08-16 15:34:07 +02:00
ChargenPreviewRotationController.cs fix(chargen): Campaign CC CC6b-MOUNT review fix round — F1-F13 2026-08-15 22:19:02 +02:00
ChargenPreviewZoomController.cs fix(chargen): Campaign CC CC6b-PRE review fix round — F1-F7 + F11 concession rewrite 2026-08-15 19:32:48 +02:00
ChaseCamera.cs fix(client): restore retail interaction parity 2026-08-26 20:45:11 +02:00
ClipFrame.cs checkpoint(render): preserve pre-overhaul investigation state 2026-09-01 18:04:24 +02:00
ClipFrameAssembler.cs refactor(render): remove the production portal frame carrier 2026-08-31 05:34:46 +02:00
ClipPlaneSet.cs Revert "Campaign V slice V4a" - it lost world multisampling 2026-07-27 18:29:28 +02:00
CompositeTextureArrayCache.cs feat(render): implement Campaign AR and terrain fidelity 2026-08-22 13:13:29 +02:00
CreatureAppraisalPresentation.cs docs+fix(ui): Campaign AS CLOSED — connected gate PASSED; AS-GF1 probes stripped; #443 narrowed 2026-08-25 14:15:26 +02:00
DatLiveEntityProjectionMaterializer.cs fix #435 (part 2, closes it): attribute the unowned probes — delete 7, reclassify 8, restore 1 2026-08-24 12:32:42 +02:00
DebugLineRenderer.cs feat(render): Campaign V slice V6l commit 1 - particles draw on Vulkan 2026-07-28 17:20:59 +02:00
DebugVmRenderFactsPublisher.cs refactor(render): extract frame presentation diagnostics 2026-07-22 05:02:31 +02:00
DevToolsRuntimeSources.cs refactor(runtime): close simulation ownership 2026-07-26 15:53:31 +02:00
DirectionalShadowCascadeFitter.cs feat(render): implement Campaign AR and terrain fidelity 2026-08-22 13:13:29 +02:00
DirectionalShadowQuality.cs feat(render): implement Campaign AR and terrain fidelity 2026-08-22 13:13:29 +02:00
DirectionalShadowReceiver.cs fix(render): foliage wind no longer depends on the directional-shadow gate (Campaign VM VM6 review 4) 2026-08-23 03:29:57 +02:00
DirectionalShadowTransformBufferSet.cs feat(render): implement Campaign AR and terrain fidelity 2026-08-22 13:13:29 +02:00
DirectionalShadowUniforms.cs feat(render): implement Campaign AR and terrain fidelity 2026-08-22 13:13:29 +02:00
DirectionalSunShadowRenderer.cs feat(render) Campaign FW2: OrderedDrawStream + walk-order submitter 2026-08-30 12:31:31 +02:00
DisplayFramePacingController.cs feat(linux): add graphical platform services 2026-07-27 11:54:59 +02:00
DisplayModeCatalog.cs fix: make locale-independence real, not assumed — parsing, casing, comparison 2026-08-19 20:11:32 +02:00
DollCamera.cs Revert "Campaign V slice V4a" - it lost world multisampling 2026-07-27 18:29:28 +02:00
DollEntityBuilder.cs Revert "Campaign V slice V4a" - it lost world multisampling 2026-07-27 18:29:28 +02:00
DynamicBufferCapacity.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
EquippedChildRenderController.cs fix(physics): bind a parented child to the parent's live incarnation (#319) 2026-08-05 11:56:31 +02:00
FixedEntityTextureOwnerLease.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
FlyCamera.cs fix #389: port retail's SmartboxFOV law; retire AD-89 (display slice 1) 2026-08-13 17:08:41 +02:00
FramebufferResizeController.cs test: replace campaign labels with behavior names 2026-08-18 12:25:00 +02:00
FramePacingController.cs feat(linux): add graphical platform services 2026-07-27 11:54:59 +02:00
FramePacingPolicy.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
FramePacingWaiterFactory.cs feat(linux): add graphical platform services 2026-07-27 11:54:59 +02:00
FrustumCuller.cs fix(render): the near plane is col3, not col4 + col3 (#248) 2026-07-29 03:33:20 +02:00
GameFrameGraphSlot.cs refactor(app): compose atomic frame roots 2026-07-22 19:02:08 +02:00
GameRenderResourceLifetime.cs feat(render): Vulkan campaign V11 step 2 — delete the OpenGL backend 2026-07-29 02:19:53 +02:00
GameWindow.cs feat(mosstank): add VTank-style automation PoC 2026-08-27 18:57:21 +02:00
GameWindowLifetime.cs feat(chargen): Campaign CC slice CC5 — Summary page, Finish flow, RandomizeCharacter port 2026-08-16 00:01:07 +02:00
GlfwCursorCache.cs fix(app): #348 — cursor switches ride a process-lifetime native cache; the per-flip Win32 handle leak is closed 2026-08-07 18:26:17 +02:00
GpuDeviceFrameLifetime.cs feat(render): Campaign V slice V4a - port TextRenderer/BitmapFont/DebugLineRenderer/TextureCache UI path onto IGpuDevice 2026-07-27 19:37:19 +02:00
GpuFrameFlightController.cs feat(render): Vulkan campaign V11 step 3 — drop the GL packages and shaders 2026-07-29 02:58:15 +02:00
GpuRetiredTerrainSlotAllocator.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
HostQuiescenceGate.cs refactor(app): own native window callback lifetime 2026-07-22 09:59:10 +02:00
IAnimationHookCaptureSink.cs refactor(runtime): extract the live object frame 2026-07-22 00:42:26 +02:00
ICamera.cs Revert "Campaign V slice V4a" - it lost world multisampling 2026-07-27 18:29:28 +02:00
ICameraCollisionProbe.cs Revert "Campaign V slice V4a" - it lost world multisampling 2026-07-27 18:29:28 +02:00
ILiveAnimationPresentationContext.cs refactor(animation): extract live PartArray presenter 2026-07-21 09:37:02 +02:00
ILiveStaticPartFrameSource.cs fix(animation): harden presentation phase handoffs 2026-07-21 10:01:25 +02:00
IndoorDrawPlan.cs Revert "Campaign V slice V4a" - it lost world multisampling 2026-07-27 18:29:28 +02:00
InteriorEntityPartition.cs fix: complete retail parity stability pass 2026-08-28 20:01:39 +02:00
LinuxMonotonicFramePacingWaiter.cs feat(linux): add graphical platform services 2026-07-27 11:54:59 +02:00
LiveAnimationPresentationContext.cs fix(runtime): restore interaction completion ownership 2026-07-23 05:51:51 +02:00
LiveEntityAnimationPresenter.cs fix: complete retail parity stability pass 2026-08-28 20:01:39 +02:00
LiveEntityAnimationScheduler.cs refactor(runtime): own projectile simulation 2026-07-26 14:17:42 +02:00
LiveEntityAnimationState.cs fix(animation): harden presentation phase handoffs 2026-07-21 10:01:25 +02:00
LiveEntityAppearanceBinding.cs refactor(physics): hoist the live-entity collision builder to Runtime (#330 groundwork) 2026-08-07 01:49:13 +02:00
LiveEntityCreateSupersessionRecovery.cs refactor(world): extract live entity hydration 2026-07-21 17:32:45 +02:00
LiveEntityPartArrayLifecycle.cs refactor(update): cut over the frame orchestrator 2026-07-22 03:31:38 +02:00
LiveStaticAnimationResidency.cs refactor(runtime): extract the live object frame 2026-07-22 00:42:26 +02:00
LoginPresentationFrameProbe.cs feat(ui): AD-109 — arm the login wormhole at the char-select Enter click 2026-08-17 13:42:30 +02:00
NdcScissorRect.cs Revert "Campaign V slice V4a" - it lost world multisampling 2026-07-27 18:29:28 +02:00
OrbitCamera.cs fix #389: port retail's SmartboxFOV law; retire AD-89 (display slice 1) 2026-08-13 17:08:41 +02:00
OrderedResourceTeardown.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
OutdoorCellNode.cs Revert "Campaign V slice V4a" - it lost world multisampling 2026-07-27 18:29:28 +02:00
OwnerScopedResourceRegistry.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
PaperdollFramePresenter.cs fix(render) #443: private viewports take the ring transform path 2026-08-29 16:51:32 +02:00
PaperdollViewportRenderer.cs fix(client): restore retail interaction parity 2026-08-26 20:45:11 +02:00
ParticleEmitterRetirementTracker.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
ParticleRenderer.cs refactor(render): remove Campaign FW probes 2026-08-31 09:14:47 +02:00
ParticleRenderer.Rhi.cs feat(render) Campaign FW2: OrderedDrawStream + walk-order submitter 2026-08-30 12:31:31 +02:00
ParticleSubmissionOrdering.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
PhysicsCameraCollisionProbe.cs Revert "Campaign V slice V4a" - it lost world multisampling 2026-07-27 18:29:28 +02:00
PortalDepthMaskRenderer.cs checkpoint(render): preserve pre-overhaul investigation state 2026-09-01 18:04:24 +02:00
PortalDepthMaskRenderer.Rhi.cs checkpoint(render): preserve pre-overhaul investigation state 2026-09-01 18:04:24 +02:00
PortalProjection.cs Revert "Campaign V slice V4a" - it lost world multisampling 2026-07-27 18:29:28 +02:00
PortalTunnelCamera.cs Revert "Campaign V slice V4a" - it lost world multisampling 2026-07-27 18:29:28 +02:00
PortalTunnelPresentation.cs fix(render): harden portal exit handoff 2026-08-25 17:39:44 +02:00
PortalView.cs Revert "Campaign V slice V4a" - it lost world multisampling 2026-07-27 18:29:28 +02:00
PortalVisibilityBuilder.cs feat(render) Campaign FW3.3: ShellDrawLiftZ is RETIRED - cells draw at the dat origin 2026-08-30 16:08:52 +02:00
PrivateEntityViewportRenderer.cs fix(render) #443: private viewports take the ring transform path 2026-08-29 16:51:32 +02:00
PrivatePresentationRenderer.cs fix(render) #443: private viewports take the ring transform path 2026-08-29 16:51:32 +02:00
QuadClipper.cs fix(ui): render live component counts 2026-07-15 18:11:02 +02:00
RenderFrameDiagnosticsController.cs fix(render): harden portal exit handoff 2026-08-25 17:39:44 +02:00
RenderFrameDiagnosticSources.cs refactor(runtime): own world environment state 2026-07-26 16:45:04 +02:00
RenderFrameOrchestrator.cs fix #424: a zero-area viewport skips the frame before any GPU work (alt-tab out of exclusive fullscreen crashed the pack-on client) 2026-08-23 09:49:56 +02:00
RenderFramePreparationController.cs fix(render) #443: private viewports take the ring transform path 2026-08-29 16:51:32 +02:00
RenderFrameResourceController.cs feat(ui): AD-109 — arm the login wormhole at the char-select Enter click 2026-08-17 13:42:30 +02:00
ResourceCleanupGroup.cs feat(render): Vulkan campaign V11 step 2 — delete the OpenGL backend 2026-07-29 02:19:53 +02:00
ResourceShutdownTransaction.cs refactor(app): extract focused window lifetime 2026-07-22 19:43:52 +02:00
RestoredTextureBindingMutation.cs refactor(lifetime): own render resource prefixes 2026-07-22 14:42:14 +02:00
RetailAlphaQueue.cs refactor(render): remove Campaign FW probes 2026-08-31 09:14:47 +02:00
RetailChaseCamera.cs fix(camera): complete retail in-head adjustment behavior 2026-08-31 06:18:37 +02:00
RetailCursorManager.cs fix(app): #348 — cursor switches ride a process-lifetime native cache; the per-flip Win32 handle leak is closed 2026-08-07 18:26:17 +02:00
RetailCursorResolver.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
RetailDetailTextureContract.cs fix(render): detail overlay is fogged after the combine like retail; VM1 review fixes 2026-08-22 22:39:58 +02:00
RetailFieldOfView.cs fix #389 review round: settings v3 FOV migration + live apply; AD-90 2026-08-13 17:27:15 +02:00
RetailHeldPose.cs feat(chargen): Campaign CC slice CC6b-PRE — idle loop, rotation, zoom (mount-independent half) 2026-08-15 19:05:56 +02:00
RetailParticleGeometryClassifier.cs Revert "Campaign V slice V4a" - it lost world multisampling 2026-07-27 18:29:28 +02:00
RetailPViewPassExecutor.cs checkpoint(render): preserve pre-overhaul investigation state 2026-09-01 18:04:24 +02:00
RetailPViewPassExecutor.WalkLeaf.cs checkpoint(render): preserve pre-overhaul investigation state 2026-09-01 18:04:24 +02:00
RetailPViewRenderer.cs checkpoint(render): preserve pre-overhaul investigation state 2026-09-01 18:04:24 +02:00
RetailStaticAnimatingObjectScheduler.cs Fix ambient flyer cadence and rotating shadows 2026-08-22 17:39:38 +02:00
RollingTimingSampleWindow.cs refactor(render): extract frame presentation diagnostics 2026-07-22 05:02:31 +02:00
RuntimeResourceSlots.cs refactor(lifetime): own render resource prefixes 2026-07-22 14:42:14 +02:00
SceneLightingUboBinding.cs feat(render): Vulkan campaign V11 step 2 — delete the OpenGL backend 2026-07-29 02:19:53 +02:00
ScreenPolygonClip.cs Revert "Campaign V slice V4a" - it lost world multisampling 2026-07-27 18:29:28 +02:00
SilkWindowCallbackBinding.cs refactor(app): own native window callback lifetime 2026-07-22 09:59:10 +02:00
SkyPesFrameController.cs fix: complete retail parity stability pass 2026-08-28 20:01:39 +02:00
SpawnMotionInitializer.cs refactor(world): extract live entity hydration 2026-07-21 17:32:45 +02:00
StandaloneBindlessTextureCache.cs feat(render): Campaign V slice V6l commit 1 - particles draw on Vulkan 2026-07-28 17:20:59 +02:00
StaticLiveRootCommitter.cs refactor(runtime): extract the live object frame 2026-07-22 00:42:26 +02:00
SyntheticEntityMeshReferenceOwner.cs fix(streaming): preserve portal destination ownership 2026-07-25 08:35:12 +02:00
TeleportViewPlaneController.cs fix(render): harden portal exit handoff 2026-08-25 17:39:44 +02:00
TerrainAtlas.cs docs(vm1): closeout - AP-232 for the translucent detail blend weight; sampler test pins the production constant 2026-08-22 22:50:06 +02:00
TerrainDrawDiagnosticsController.cs refactor(app): key live projections by runtime identity 2026-07-25 21:50:58 +02:00
TerrainModernRenderer.cs refactor(render): cull terrain by walk in-view cells 2026-08-31 04:54:03 +02:00
TerrainModernRenderer.DirectionalShadowReceivers.cs feat(render) Campaign FW2: OrderedDrawStream + walk-order submitter 2026-08-30 12:31:31 +02:00
TerrainModernRenderer.DirectionalShadows.cs feat(render): implement Campaign AR and terrain fidelity 2026-08-22 13:13:29 +02:00
TerrainModernRenderer.Rhi.cs feat(render) Campaign FW2: OrderedDrawStream + walk-order submitter 2026-08-30 12:31:31 +02:00
TerrainTextureTilingTable.cs feat(render): Campaign V slice V6f-2 - terrain's tiling table becomes a buffer 2026-07-28 10:11:00 +02:00
TextRenderer.cs fix(ui): Campaign LA gate round 2 — fixed-canvas stretch filters bilinearly like retail's presentation blit 2026-08-15 11:05:59 +02:00
TextureCache.cs fix(ui): Campaign LA gate round 2 — fixed-canvas stretch filters bilinearly like retail's presentation blit 2026-08-15 11:05:59 +02:00
UiTextureTableHandle.cs feat(render): put the retained UI and debug lines on both backends 2026-07-28 08:51:32 +02:00
ViewconeCuller.cs refactor(render): remove Campaign FW probes 2026-08-31 09:14:47 +02:00
VolumetricShaftQuality.cs fix(render): VM3 review fixes - pin the filmic decodes, re-derive vignette for linear, name the authored sun colour 2026-08-22 23:40:48 +02:00
WindowIconLoader.cs fix(app): apply the window icon from Load, not beside Window.Create 2026-08-20 15:13:29 +02:00
WindowsHighResolutionFramePacingWaiter.cs fix #225: stabilize render pacing and frame CPU 2026-07-19 06:29:30 +02:00
WorldDepthContract.cs feat(render) Campaign FW2: OrderedDrawStream + walk-order submitter 2026-08-30 12:31:31 +02:00
WorldPassScope.cs feat(render): Campaign V slice V6l commit 3 - the offscreen viewports draw on Vulkan 2026-07-28 18:05:24 +02:00
WorldPassSurface.cs feat(render): Vulkan campaign V11 step 2 — delete the OpenGL backend 2026-07-29 02:19:53 +02:00
WorldRenderDiagnostics.cs refactor(render): remove the production portal frame carrier 2026-08-31 05:34:46 +02:00
WorldRenderFrameBuilder.cs checkpoint(render): preserve pre-overhaul investigation state 2026-09-01 18:04:24 +02:00
WorldRevealRenderResourceScheduler.cs fix(streaming): preserve portal destination ownership 2026-07-25 08:35:12 +02:00
WorldSceneDiagnosticsController.cs refactor(render): remove the production portal frame carrier 2026-08-31 05:34:46 +02:00
WorldScenePassExecutor.cs fix #451: stabilize portal seam rendering 2026-08-27 14:30:21 +02:00
WorldSceneRenderer.cs refactor(render): remove the production portal frame carrier 2026-08-31 05:34:46 +02:00
WorldSceneRuntimeSources.cs feat(render): implement Campaign AR and terrain fidelity 2026-08-22 13:13:29 +02:00