From: Marek Olšák <marek.ol...@amd.com> --- src/gallium/docs/source/screen.rst | 5 +++++ src/gallium/include/pipe/p_defines.h | 11 +++++++++++ 2 files changed, 16 insertions(+)
diff --git a/src/gallium/docs/source/screen.rst b/src/gallium/docs/source/screen.rst index b7b5f3504b2..41008816ee2 100644 --- a/src/gallium/docs/source/screen.rst +++ b/src/gallium/docs/source/screen.rst @@ -449,24 +449,29 @@ The integer capabilities: * ``PIPE_CAP_FENCE_SIGNAL``: True if the driver supports signaling semaphores using fence_server_signal(). * ``PIPE_CAP_CONSTBUF0_FLAGS``: The bits of pipe_resource::flags that must be set when binding that buffer as constant buffer 0. If the buffer doesn't have those bits set, pipe_context::set_constant_buffer(.., 0, ..) is ignored by the driver, and the driver can throw assertion failures. * ``PIPE_CAP_PACKED_UNIFORMS``: True if the driver supports packed uniforms as opposed to padding to vec4s. * ``PIPE_CAP_CONSERVATIVE_RASTER_POST_SNAP_TRIANGLES``: Whether the ``PIPE_CONSERVATIVE_RASTER_POST_SNAP`` mode is supported for triangles. + The post-snap mode means the conservative rasterization occurs after + the conversion from floating-point to fixed-point coordinates + on the subpixel grid. * ``PIPE_CAP_CONSERVATIVE_RASTER_POST_SNAP_POINTS_LINES``: Whether the ``PIPE_CONSERVATIVE_RASTER_POST_SNAP`` mode is supported for points and lines. * ``PIPE_CAP_CONSERVATIVE_RASTER_PRE_SNAP_TRIANGLES``: Whether the ``PIPE_CONSERVATIVE_RASTER_PRE_SNAP`` mode is supported for triangles. + The pre-snap mode means the conservative rasterization occurs before + the conversion from floating-point to fixed-point coordinates. * ``PIPE_CAP_CONSERVATIVE_RASTER_PRE_SNAP_POINTS_LINES``: Whether the ``PIPE_CONSERVATIVE_RASTER_PRE_SNAP`` mode is supported for points and lines. * ``PIPE_CAP_CONSERVATIVE_RASTER_POST_DEPTH_COVERAGE``: Whether ``PIPE_CAP_POST_DEPTH_COVERAGE`` works with conservative rasterization. * ``PIPE_CAP_MAX_CONSERVATIVE_RASTER_SUBPIXEL_PRECISION_BIAS``: The maximum subpixel precision bias in bits during conservative rasterization. * ``PIPE_CAP_PROGRAMMABLE_SAMPLE_LOCATIONS``: True is the driver supports programmable sample location through ```get_sample_pixel_grid``` and ```set_sample_locations```. * ``PIPE_CAP_MAX_GS_INVOCATIONS``: Maximum supported value of diff --git a/src/gallium/include/pipe/p_defines.h b/src/gallium/include/pipe/p_defines.h index 9909e7f3ac1..72dc448aecc 100644 --- a/src/gallium/include/pipe/p_defines.h +++ b/src/gallium/include/pipe/p_defines.h @@ -637,21 +637,32 @@ enum pipe_reset_status PIPE_UNKNOWN_CONTEXT_RESET, }; /** * Conservative rasterization modes. */ enum pipe_conservative_raster_mode { PIPE_CONSERVATIVE_RASTER_OFF, + + /** + * The post-snap mode means the conservative rasterization occurs after + * the conversion from floating-point to fixed-point coordinates + * on the subpixel grid. + */ PIPE_CONSERVATIVE_RASTER_POST_SNAP, + + /** + * The pre-snap mode means the conservative rasterization occurs before + * the conversion from floating-point to fixed-point coordinates. + */ PIPE_CONSERVATIVE_RASTER_PRE_SNAP, }; /** * resource_get_handle flags. */ /* Requires pipe_context::flush_resource before external use. */ #define PIPE_HANDLE_USAGE_EXPLICIT_FLUSH (1 << 0) /* Expected external use of the resource: */ -- 2.17.1 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev