• Show log

    Commit

  • Hash : 7b1b8a01
    Author : Le Hoang Quyen
    Date : 2023-09-21T20:15:29

    Metal: Allow using GL_RGB with either RGBA/BGRA IOSurface.
    
    Previously we only allowed GL_RGB internal format to be used with BGRA
    IOSurface and GL_RGBX8_ANGLE to be used with RGBA IOSurface
    respectively.
    
    However, there are currently many places in Chrome prefer GL_RGB to be
    able to be used with both RGBA and BGRA IOSurface.
    
    This CL allows such combinations. Instead of deducing angle::FormatID of
    the IOSurface pbuffer based on the input GL internal format & type, we
    will take into account the pixel format of the IOSurface as well.
    
    For example, when we call eglCreatePbufferFromClientBuffer with GL_RGB
    internal format attribute:
    - if IOSurface's pixel format is 'RGBA' ->
      deduced angle::FormatID is R8G8B8A8_UNORM.
    - if IOSurface's pixel format is 'BGRA' ->
      deduced angle::FormatID is B8G8R8A8_UNORM.
    
    This CL also removes GL_RGBX8_ANGLE support from Metal backend. Because
    there are many places in Chrome that use this format enum for both RGBA
    & BGRA IOSurface when the extension is available. It's redundant to
    support that since GL_RGB already covers most of the required cases.
    
    Bug: angleproject:8350
    Change-Id: I5a121a97e031a42d0779721d4348f373dfaee9a0
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4881742
    Reviewed-by: Kenneth Russell <kbr@chromium.org>
    Commit-Queue: Quyen Le <lehoangquyen@chromium.org>
    Reviewed-by: Sunny Sachanandani <sunnyps@chromium.org>
    

  • Properties

  • Git HTTP https://git.kmx.io/kc3-lang/angle.git
    Git SSH git@git.kmx.io:kc3-lang/angle.git
    Public access ? public
    Description

    A conformant OpenGL ES implementation for Windows, Mac, Linux, iOS and Android.

    Homepage

    Github

    Users
    thodg_m kc3_lang_org thodg_w www_kmx_io thodg thodg_l
    Tags