mesa/src
Nanley Chery dab0936141 mesa: Simplify UNORM8 conversions for sRGB ASTC textures
The ASTC extension specs state that a vector of UNORM8 values are
returned when decoding sRGB ASTC textures. For the alpha channel
however, they don't seem to specify how to get there from the UNORM16
produced after interpolation (or returned from a void-extent block).

The ASTC decoder in the VK-GL-CTS project treats the alpha channel like
the RGB channels and simply uses the top 8 bits of the UNORM16. For
better performance, we choose to do the same.

In a texture upload microbenchmark, this decreases the upload time for
textures in the sRGB color space by about 13%.

Ref: https://gitlab.khronos.org/egl/DataFormat/-/merge_requests/32
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17195>
2022-07-11 21:59:42 +00:00
..
amd aco: fix packed 16bit fneg/fsat optimization 2022-07-11 10:10:00 +00:00
android_stub
asahi panfrost,asahi: Use util_sign_extend for unpacking 2022-07-06 11:23:18 +00:00
broadcom broadcom/compiler: don't over-estimate latency of TMU instructions 2022-07-11 10:34:58 +00:00
c11 c11: reinstate the original license and authorship 2022-06-27 11:46:22 +00:00
compiler nir+ir3: Rename load_size_ir3 to load_center_rhw_ir3. 2022-07-11 16:56:05 +00:00
drm-shim drm-shim: Cleanup on device file close 2022-05-02 19:50:33 +00:00
egl egl/wayland: Don't try to access modifiers u_vector as dynarray 2022-06-23 16:12:15 +00:00
etnaviv etnaviv: drm: rename etna_drm_table_lock 2022-07-03 17:41:55 +00:00
freedreno ir3: Use non-persp interpolation when appropriate for interpolateAtOffset. 2022-07-11 16:56:05 +00:00
gallium freedreno: Rename the "SIZE" regs for interpolateAtOffset to "CENTERRHW" 2022-07-11 16:56:05 +00:00
gbm gallium: Learn about kopper 2022-04-07 00:17:40 +00:00
getopt
glx glx/dri: Fix DRI drawable release at MakeCurrent time 2022-06-27 20:03:26 +00:00
gtest gtest: Fix maybe-uninitialized compiler warning 2022-06-29 21:02:18 +00:00
hgl
imagination pvr: Make pvr_cmd_pack() macro clearly internal 2022-07-11 11:57:23 +00:00
imgui
intel anv: move gfx12+ CCS_E clear color restriction 2022-07-11 14:57:26 +00:00
loader
mapi mesa: Stub out GL_APPLE_object_purgeable 2022-07-11 16:37:34 -04:00
mesa mesa: Simplify UNORM8 conversions for sRGB ASTC textures 2022-07-11 21:59:42 +00:00
microsoft dzn: Use fabs on floating point input 2022-07-09 14:04:48 +00:00
nouveau nouveau: Drop C++03 compat code 2022-07-05 13:23:12 +00:00
panfrost panfrost/ci: Disable T760 jobs 2022-07-08 21:33:19 +00:00
tool meson/pps: Check if libdrm exists to compile pps 2022-06-22 11:52:36 +03:00
util radv: remove the radv_report_apu_as_dgpu workaround for Red Dead Redemption 2 2022-07-11 06:04:03 +00:00
virtio venus: Use maintenance4 to get max_size_buffer 2022-07-08 04:27:51 +00:00
vulkan vulkan: Add a vk_pipeline_shader_stage_is_null() helper 2022-07-08 22:47:22 +00:00
meson.build meson: Use cc.get_argument_syntax instead cc.get_id when possible. 2022-06-16 19:59:58 +00:00