[Mesa-dev] [RFC v2 00/15] Add support for 2D ASTC

Nanley Chery nanleychery at gmail.com
Mon Jun 1 10:13:38 PDT 2015


From: Nanley Chery <nanley.g.chery at intel.com>

In this revision, comments have been taken into account and most rendering
issues have been fixed. Unfortunately, when rendering the reference sRGB
textures, the HW-loaded compressed versions are still rendered darker than
the pre-decoded SW ones. The Piglit tests for this extension can still be
found here: cgit.freedesktop.org/~nchery/piglit

Here's a description of the additional commits:
* Two commits fix mipmap rendering issues.
   - i965: change the meaning of cpp for compressed textures
   - i965: correct VALIGN for 2d textures on Skylake
 
* One commit ensures that assertions for macros that are involved in mipmap
  layouts are actually there in software form and not just code comments. The
  lack of asserts let some alignment issues dealing with ASTC slip by initially.
   - mesa/macros: add power-of-two assertions for ALIGN and ROUND_DOWN_TO
 
* Two refactoring commits are included that touch parts of mesa dealing with
  compressed textures and the laying out of mipmaps.
   - i965: refactor miptree alignment calculation code
   - swrast: add a new macro, FETCH_COMPRESSED


Nanley Chery (15):
  mesa/formats: define the 2D ASTC formats
  glapi: add support for KHR_texture_compression_astc_ldr
  mesa: disable online compression for ASTC formats
  mesa: add ASTC extensions to the extensions table
  mesa/glformats: recognize ASTC formats as compressed
  mesa/texcompress: enable translation between MESA and GL ASTC formats
  mesa/teximage: return the base internal format of the ASTC formats
  mesa/formats: store whether or not a format is sRGB in gl_format_info
  i965/surface_formats: add support for 2D ASTC surface formats
  i965: enable ASTC support for Skylake
  i965: change the meaning of cpp for compressed textures
  i965: correct VALIGN for 2d textures on Skylake
  mesa/macros: add power-of-two assertions for ALIGN and ROUND_DOWN_TO
  i965: refactor miptree alignment calculation code
  swrast: add a new macro, FETCH_COMPRESSED

 .../glapi/gen/KHR_texture_compression_astc.xml     |  40 +++
 src/mapi/glapi/gen/Makefile.am                     |   1 +
 src/mapi/glapi/gen/gl_API.xml                      |   2 +-
 src/mesa/drivers/dri/i965/brw_defines.h            |  34 +++
 src/mesa/drivers/dri/i965/brw_surface_formats.c    |  67 ++++-
 src/mesa/drivers/dri/i965/brw_tex_layout.c         | 191 +++++++--------
 src/mesa/drivers/dri/i965/intel_copy_image.c       |  12 -
 src/mesa/drivers/dri/i965/intel_extensions.c       |   5 +
 src/mesa/drivers/dri/i965/intel_mipmap_tree.c      |  10 +-
 src/mesa/drivers/dri/i965/intel_mipmap_tree.h      |   2 +-
 src/mesa/main/extensions.c                         |   2 +
 src/mesa/main/format_info.py                       |   5 +
 src/mesa/main/formats.c                            | 158 ++++++++++--
 src/mesa/main/formats.csv                          |  31 +++
 src/mesa/main/formats.h                            |  30 +++
 src/mesa/main/glformats.c                          |  29 +++
 src/mesa/main/macros.h                             |  22 +-
 src/mesa/main/mtypes.h                             |   2 +
 src/mesa/main/texcompress.c                        | 136 +++++++++++
 src/mesa/main/teximage.c                           |  64 +++++
 src/mesa/swrast/s_texfetch.c                       | 269 ++++++---------------
 21 files changed, 762 insertions(+), 350 deletions(-)
 create mode 100644 src/mapi/glapi/gen/KHR_texture_compression_astc.xml

-- 
2.4.1



More information about the mesa-dev mailing list