Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor defining MTLPixelFormat and GPU capabilities. #2308

Merged
merged 1 commit into from
Aug 19, 2024

Commits on Aug 14, 2024

  1. Refactor defining MTLPixelFormat and GPU capabilities.

    - Add MVKMTLDeviceCapabilities to encapsulate Metal GPU family
      capabilities, and use it in MVKPhysicalDevice and MVKPixelFormats
      to identify GPU capabilities.
    - Remove all references to MTLGPUFamily and MTLFeatureSet
      outside MVKMTLDeviceCapabilities.
    - Blend or select AppleGPU and MacGPU format capabilities.
    - Simplify MVKPixelFormats::modifyMTLFormatCapabilities()
      based on MVKMTLDeviceCapabilities.
    - Add guard code to ensure MTLPixelFormatInvalid &
      MTLVertexFormatInvalid capabilities are not overwritten
      by other formats that don't exist on some platforms.
    - Update MTLPixelFormat capabilities based on latest Metal docs.
    - Remove some variations tied to very older OS versions,
      or MTLFeatureSets that have the same GPU family, including
      setting MSL 2.0 as the earliest supported version.
    - Enable VkPhysicalDeviceFeatures::vertexPipelineStoresAndAtomics
      & fragmentStoresAndAtomics on all platforms.
    - During startup, only log the highest GPU family.
    billhollings committed Aug 14, 2024
    Configuration menu
    Copy the full SHA
    5afeaa4 View commit details
    Browse the repository at this point in the history