[Mesa-dev] [PATCH 1/2] anv: Advertise support for two more sRGB formats

Lionel Landwerlin lionel.g.landwerlin at intel.com
Wed Aug 2 09:35:25 UTC 2017


Both are :

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>

On 02/08/17 02:16, Jason Ekstrand wrote:
> Unreal Engine 4 seems to really like VK_FORMAT_R8_SRGB for some reason.
> We don't technically have the hardware format but we do have L8_SRGB.
> It's easy enough to fake with that and a swizzle.  While we're at it, we
> may as well support R8G8_SRGB using L8A8_SRGB.
> ---
>   src/intel/vulkan/anv_formats.c | 6 ++++--
>   1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/src/intel/vulkan/anv_formats.c b/src/intel/vulkan/anv_formats.c
> index c656d7e..2309dfe 100644
> --- a/src/intel/vulkan/anv_formats.c
> +++ b/src/intel/vulkan/anv_formats.c
> @@ -74,14 +74,16 @@ static const struct anv_format anv_formats[] = {
>      fmt(VK_FORMAT_R8_SSCALED,              ISL_FORMAT_R8_SSCALED),
>      fmt(VK_FORMAT_R8_UINT,                 ISL_FORMAT_R8_UINT),
>      fmt(VK_FORMAT_R8_SINT,                 ISL_FORMAT_R8_SINT),
> -   fmt(VK_FORMAT_R8_SRGB,                 ISL_FORMAT_UNSUPPORTED),
> +   swiz_fmt(VK_FORMAT_R8_SRGB,            ISL_FORMAT_L8_UNORM_SRGB,
> +                                          _ISL_SWIZZLE(RED, ZERO, ZERO, ONE)),
>      fmt(VK_FORMAT_R8G8_UNORM,              ISL_FORMAT_R8G8_UNORM),
>      fmt(VK_FORMAT_R8G8_SNORM,              ISL_FORMAT_R8G8_SNORM),
>      fmt(VK_FORMAT_R8G8_USCALED,            ISL_FORMAT_R8G8_USCALED),
>      fmt(VK_FORMAT_R8G8_SSCALED,            ISL_FORMAT_R8G8_SSCALED),
>      fmt(VK_FORMAT_R8G8_UINT,               ISL_FORMAT_R8G8_UINT),
>      fmt(VK_FORMAT_R8G8_SINT,               ISL_FORMAT_R8G8_SINT),
> -   fmt(VK_FORMAT_R8G8_SRGB,               ISL_FORMAT_UNSUPPORTED), /* L8A8_UNORM_SRGB */
> +   swiz_fmt(VK_FORMAT_R8G8_SRGB,          ISL_FORMAT_L8A8_UNORM_SRGB,
> +                                          _ISL_SWIZZLE(RED, ALPHA, ZERO, ONE)),
>      fmt(VK_FORMAT_R8G8B8_UNORM,            ISL_FORMAT_R8G8B8_UNORM),
>      fmt(VK_FORMAT_R8G8B8_SNORM,            ISL_FORMAT_R8G8B8_SNORM),
>      fmt(VK_FORMAT_R8G8B8_USCALED,          ISL_FORMAT_R8G8B8_USCALED),




More information about the mesa-dev mailing list