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 e6d0706226fc5e351ecaedd99b68f4b5f713dc1d..fec4a10c539064690d30028a98563dad1d3bdaeb 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 a8ff17e742fc2bf200053874fb331ad5e813367d..12de59a4d80b603ea698fb7386011557c3413f52 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 c926544688d095f52383b740b27d5b99c52a85a1..c706f9819f8b23f08687e4e1daed1cc1f2f66daa 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 867ec49eb1c0b7c5764958079f23c8cf7aaf7fd1..72a6d843ae9895a65c138e32424388028f257db0 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            },