CNA-PLAT-005: SDL_GPU cannot create OcclusionQuery objects because SDL_gpu 3.5.0 has no occlusion-query commands

CNA snapshot 3b43bd86  ·  Known Issues › Platform limitations  ·  source links pinned to 3b43bd86

✓

Evidence basis: source-verified at the pinned commit; tests exist (not executed for this page). Claims on this page were checked by reading the CNA source at commit 3b43bd86; unless a sentence says otherwise, nothing here was built or executed. Nothing on this page was executed unless the Evidence section says so.

SdlGpuRenderer::CreateOcclusionQuery throws NotSupportedException: SDL_gpu exposes no query pools, and its fences report only command-buffer completion.

Identifier
CNA-PLAT-005
Category
Platform limitation
Subsystem
Graphics & renderers
Status
Open
Verified against
CNA 3b43bd86 (3b43bd8687ed46523d873f9bec4b32bd8481dcb5)
Evidence basis
Source-verified: read at TARGET, not executed
Tests touching this area
Yes: see Current tests
Affected contract
Microsoft::Xna::Framework::Graphics::OcclusionQuery on SDL_GPU

Expected behaviour

XNA HiDef supports occlusion queries.

Actual behaviour at TARGET

SdlGpuRenderer.cpp throws NotSupportedException("... vendored SDL_gpu 3.5.0 exposes no occlusion-query or query-pool commands ...") from CreateOcclusionQuery.

Source locations

Evidence

Checked by reading the named sources at 3b43bd86; nothing was built or executed for this entry. CNA's own tests assert the refusal (sdlgpu_occlusionquery_limitation_test.cpp and the SDL_GPU row of GraphicsDeviceCapabilityTest).

Focused reproduction

No focused reproduction is known. Nothing has been invented here; the evidence above is what exists.

Current tests

SDL_GPU capability tests pin the refusal.

Regression test

None needed until SDL_gpu gains query support.

Blast radius

Games that use occlusion queries on SDL_GPU.

Workaround

Check the OcclusionQuery capability and fall back (for example to CPU-side visibility tests).

The same subject is explained at several altitudes. These are the neighbouring pages at each one.

Deep dives
SDL_GPU: limits