Skip to content

Graphics: choose swapchain composite alpha and format from surface capabilities #239

Closed

Description

@brmassa

Current State

CompositeAlpha is hardcoded to OpaqueBitKhr (SwapChain.Resources.cs) and the format selection prefers B8G8R8A8Srgb, otherwise takes formats[0] (SwapChain.Selection.cs:5-40). Android usually offers R8G8B8A8 and often only INHERIT composite alpha.

Tasks

  • Pick composite alpha from supportedCompositeAlpha (Opaque, then Inherit, then any)
  • Prefer any 8-bit sRGB format (B8G8R8A8_SRGB, R8G8B8A8_SRGB) before falling back
  • Extract both selections into pure functions with unit tests over fake capability sets

Acceptance Criteria

  • Unit tests cover Android-like and desktop-like capability sets
  • Desktop behavior unchanged

Related

Activity

  1. added
    c:graphicsGraphics pipeline: Vulkan, RHI, shaders, rendering
    p:mediumMedium priority — fix in next sprint
    size:S~1-2 days — focused task
    t:enhancementImprovement to existing functionality
    on Oct 12, 2026
  2. moved this to Backlog in ROADMAPon Oct 12, 2026
  3. added a commit that references this issue on Oct 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    c:graphicsGraphics pipeline: Vulkan, RHI, shaders, renderinggood first issueGood for newcomersp:mediumMedium priority — fix in next sprintsize:S~1-2 days — focused taskt:enhancementImprovement to existing functionality

    Type

    No type

    Projects

    • Status
      Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions