Skip to content
  • Alejandro Piñeiro's avatar
    shader_runner: add xfb testing support · 728dde0e
    Alejandro Piñeiro authored and Arcady Goldmints-Orlov's avatar Arcady Goldmints-Orlov committed
    
    
    Limited to capture doubles and floats, for simplicity. This patch
    introduces the following [test] commands:
    
       * "xfb buffer object <n_buffer> <size>": generates and allocates
         one TRANSFORM_FEEDBACK_BUFFER buffer object, with declared buffer
         <n_buffer> (so xfb_buffer = <n_buffer> on the shader) and a given
         <size> in bytes.
    
       * "xfb draw arrays <mode> <first> <count>": equivalent to the
         already existing command "draw arrays", but under a transform
         feedback operation, and enabling GL_RASTERIZER_DISCARD.
    
       * "probe xfb buffer <element_type> <n_buffer> <n_components> <value>":
         compares <n_components> of the expected value buffer with the xfb
         buffer <n_buffer>. It does a comparison using <element_type>,
         being the allowed values "float" or "double". Both expected
         buffer and the xfb buffer are expected to be already allocated,
         and of the proper size.
    
    v2: fix wrong sizeof value when using snprintf (Caio Marcelo)
    
    v3: Change the xfb probing syntax to not use an "expected buffer"
        and instead probe the xfb buffer directly
    
    Signed-off-by: default avatarArcady Goldmints-Orlov <agoldmints@igalia.com>
    Reviewed-by: default avatarCaio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
    728dde0e