acdream/src/AcDream.App/Rendering/Wb
Erik 3718e341be fix #225: stabilize render pacing and frame CPU
Replace scheduler-quantized software sleeps with a reusable Windows high-resolution deadline timer, expose pacing in the frame profiler, and make shutdown wake every persistent mesh worker without losing the shared signal.

Preserve retail alpha order while using a stable radix, skip duplicate deferred-alpha SSBO packing, pack light sets, cache static selection descriptors, and retire historical material groups at the whole-frame boundary. The fixed dense-Caul sample improved from roughly 9-12 ms CPU to 5.3-6.2 ms without reducing visual quality.

Release build succeeds with zero warnings and all 6,300 tests pass with five intentional skips. Three independent retail, architecture, and adversarial reviews are clean; the post-review connected route remains pending because local ACE is offline.

Co-authored-by: OpenAI Codex <codex@openai.com>
2026-07-19 06:29:30 +02:00
..
AcSurfaceMetadata.cs phase(N.4): AcSurfaceMetadata side-table for WB-pristine surface props 2026-05-08 13:08:56 +02:00
AcSurfaceMetadataTable.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
ActiveParticleEmitter.cs feat(O-T7): drop WB project references; complete extraction 2026-05-21 17:17:33 +02:00
AnimatedEntityState.cs phase(N.4) Tasks 16+18+19: AnimatedEntityState + AnimPartChange + HiddenParts 2026-05-08 14:37:09 +02:00
BindlessSupport.cs fix(N.5b): black terrain — switch to uvec2 handle + sampler constructor 2026-05-09 12:53:21 +02:00
BufferUsageExtensions.cs feat(O-T3): extract GL infrastructure to AcDream.App 2026-05-21 16:00:31 +02:00
Building.cs feat(render): Phase A8 — indoor visibility + streaming fixes batch 2026-05-29 10:14:50 +02:00
BuildingLoader.cs feat(render): Phase A8 — indoor visibility + streaming fixes batch 2026-05-29 10:14:50 +02:00
BuildingRegistry.cs feat(render): Phase A8 RR3 — Building + BuildingRegistry + BuildingLoader 2026-05-27 11:08:43 +02:00
CachedBatch.cs fix #225: stabilize render pacing and frame CPU 2026-07-19 06:29:30 +02:00
ContiguousRangeAllocator.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
DebugRenderSettings.cs feat(O-T3): extract GL infrastructure to AcDream.App 2026-05-21 16:00:31 +02:00
DrawElementsIndirectCommand.cs phase(N.5) Task 7: dispatcher SSBO + indirect buffer infrastructure 2026-05-08 20:25:29 +02:00
EmbeddedResourceReader.cs fix(O-T4): address spec-review findings — InstanceData + using cleanups 2026-05-21 16:50:05 +02:00
EntityClassificationCache.cs fix #225: stabilize render pacing and frame CPU 2026-07-19 06:29:30 +02:00
EntitySpawnAdapter.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
EnvCellLandblockBuild.cs fix(streaming): commit EnvCell landblocks atomically (#214) 2026-07-13 18:45:24 +02:00
EnvCellMeshPreparationScheduler.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
EnvCellRenderer.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
EnvCellSceneryInstance.cs fix(streaming): commit EnvCell landblocks atomically (#214) 2026-07-13 18:45:24 +02:00
EnvCellVisibilitySnapshot.cs fix(render): Phase A8 — pool aliasing in EnvCellRenderer (visual chaos root cause) 2026-05-27 19:08:49 +02:00
GeometryUtils.cs feat(O-T7): drop WB project references; complete extraction 2026-05-21 17:17:33 +02:00
GLHelpers.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
GlobalMeshBuffer.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
GLSLShader.cs feat(O-T3): extract GL infrastructure to AcDream.App 2026-05-21 16:00:31 +02:00
GLStateScope.cs feat(O-T3): extract GL infrastructure to AcDream.App 2026-05-21 16:00:31 +02:00
GpuMemoryTracker.cs feat(O-T3): extract GL infrastructure to AcDream.App 2026-05-21 16:00:31 +02:00
GpuRetiredRangeAllocator.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
GroupKey.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
IEntityTextureLifetime.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
InstanceData.cs fix(O-T4): address spec-review findings — InstanceData + using cleanups 2026-05-21 16:50:05 +02:00
IWbMeshAdapter.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
LandblockSpawnAdapter.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
ManagedGLFrameBuffer.cs feat(O-T3): extract GL infrastructure to AcDream.App 2026-05-21 16:00:31 +02:00
ManagedGLIndexBuffer.cs feat(O-T7): drop WB project references; complete extraction 2026-05-21 17:17:33 +02:00
ManagedGLTexture.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
ManagedGLTextureArray.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
ManagedGLUniformBuffer.cs feat(O-T3): extract GL infrastructure to AcDream.App 2026-05-21 16:00:31 +02:00
ManagedGLVertexArray.cs feat(O-T3): extract GL infrastructure to AcDream.App 2026-05-21 16:00:31 +02:00
ManagedGLVertexBuffer.cs feat(O-T3): extract GL infrastructure to AcDream.App 2026-05-21 16:00:31 +02:00
MeshUploadCaches.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
MeshUploadFrameBudget.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
ModernRenderData.cs feat(O-T4): extract ObjectMeshManager + mesh pipeline closure into AcDream.App.Rendering.Wb 2026-05-21 16:37:55 +02:00
ObjectMeshManager.cs fix #225: stabilize render pacing and frame CPU 2026-07-19 06:29:30 +02:00
OpenGLGraphicsDevice.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
ParticleBatcher.cs feat(O-T7): drop WB project references; complete extraction 2026-05-21 17:17:33 +02:00
ParticleEmitterRenderer.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
RenderStateCache.cs chore(O-T7): code-review housekeeping after WB extraction 2026-05-21 17:29:06 +02:00
RetryableResourceReleaseLedger.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
SceneData.cs feat(O-T3): extract GL infrastructure to AcDream.App 2026-05-21 16:00:31 +02:00
TextureAtlasManager.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
TextureAtlasSlotAllocator.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
TextureFormatExtensions.cs feat(O-T3): extract GL infrastructure to AcDream.App 2026-05-21 16:00:31 +02:00
TextureParameters.cs feat(O-T3): extract GL infrastructure to AcDream.App 2026-05-21 16:00:31 +02:00
TrackedGlResource.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
WbDrawDispatcher.cs fix #225: stabilize render pacing and frame CPU 2026-07-19 06:29:30 +02:00
WbFrustum.cs feat(render): Phase A8 Wave 1 — WB scaffolding extraction + stencil low-level method 2026-05-27 14:46:07 +02:00
WbMeshAdapter.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00
WbRenderPass.cs feat(render): Phase A8 Wave 1 — WB scaffolding extraction + stencil low-level method 2026-05-27 14:46:07 +02:00
WbTextureResolutionPolicy.cs fix(rendering): bound portal resource lifetime 2026-07-18 21:35:16 +02:00