gallium: Add PIPE_CAP_TEXTURE_SHADOW_LOD
authorSagar Ghuge <sagar.ghuge@intel.com>
Thu, 25 Jul 2019 21:05:58 +0000 (14:05 -0700)
committerSagar Ghuge <sagar.ghuge@intel.com>
Tue, 30 Jul 2019 17:42:20 +0000 (10:42 -0700)
v2: Line wrap to 80 char (Marek Olsak)

Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/gallium/auxiliary/util/u_screen.c
src/gallium/docs/source/screen.rst
src/gallium/include/pipe/p_defines.h
src/mesa/state_tracker/st_extensions.c

index e6d0706..fec4a10 100644 (file)
@@ -367,6 +367,9 @@ u_pipe_screen_get_param_defaults(struct pipe_screen *pscreen,
    case PIPE_CAP_MAX_FRAMES_IN_FLIGHT:
       return 1;
 
+   case PIPE_CAP_TEXTURE_SHADOW_LOD:
+      return 0;
+
    case PIPE_CAP_DMABUF:
 #if defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD)
       return 1;
index a8ff17e..12de59a 100644 (file)
@@ -542,6 +542,8 @@ The integer capabilities:
   derivatives in fragment shaders.
 * ``PIPE_CAP_VERTEX_SHADER_SATURATE``: True if the driver supports saturate
   modifiers in the vertex shader.
+* ``PIPE_CAP_TEXTURE_SHADOW_LOD``: True if the driver supports shadow sampler
+  types with texture functions having interaction with LOD of texture lookup.
 
 .. _pipe_capf:
 
index c926544..c706f98 100644 (file)
@@ -894,6 +894,7 @@ enum pipe_cap
    PIPE_CAP_FRAGMENT_SHADER_TEXTURE_LOD,
    PIPE_CAP_FRAGMENT_SHADER_DERIVATIVES,
    PIPE_CAP_VERTEX_SHADER_SATURATE,
+   PIPE_CAP_TEXTURE_SHADOW_LOD,
 };
 
 /**
index 867ec49..72a6d84 100644 (file)
@@ -755,6 +755,7 @@ void st_init_extensions(struct pipe_screen *screen,
       { o(EXT_texture_array),                PIPE_CAP_MAX_TEXTURE_ARRAY_LAYERS         },
       { o(EXT_texture_filter_anisotropic),   PIPE_CAP_ANISOTROPIC_FILTER               },
       { o(EXT_texture_mirror_clamp),         PIPE_CAP_TEXTURE_MIRROR_CLAMP             },
+      { o(EXT_texture_shadow_lod),           PIPE_CAP_TEXTURE_SHADOW_LOD               },
       { o(EXT_texture_swizzle),              PIPE_CAP_TEXTURE_SWIZZLE                  },
       { o(EXT_transform_feedback),           PIPE_CAP_MAX_STREAM_OUTPUT_BUFFERS        },
       { o(EXT_window_rectangles),            PIPE_CAP_MAX_WINDOW_RECTANGLES            },