diff options
author | Brian Paul <[email protected]> | 2014-04-17 09:00:29 -0700 |
---|---|---|
committer | Brian Paul <[email protected]> | 2014-04-17 11:29:33 -0700 |
commit | 851645a3e7f06348d60180ec122b9ad0dc3cf432 (patch) | |
tree | 6ff45de67a75286fd7fa9ca94636f67f3887d9c8 /src/gallium/drivers/svga/svga_context.h | |
parent | 615a356ee38d882e9f073dba0b8918a903094124 (diff) |
svga: add VS code to set attribute W component to 1
There's a few 3-component vertex attribute formats that have no
equivalent SVGA3D_DECLTYPE_x format. Previously, we had to use
the swtnl code to handle them. This patch lets us use hwtnl for
more vertex attribute types by fetching 3-component attributes as
4-component attributes and explicitly setting the W component to 1.
This lets us handle PIPE_FORMAT_R16G16B16_SNORM/UNORM and
PIPE_FORMAT_R8G8B8_UNORM vertex attribs without using the swtnl path.
Fixes piglit normal3b3s GL_SHORT test.
Reviewed-by: Charmaine Lee <[email protected]>
Diffstat (limited to 'src/gallium/drivers/svga/svga_context.h')
-rw-r--r-- | src/gallium/drivers/svga/svga_context.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gallium/drivers/svga/svga_context.h b/src/gallium/drivers/svga/svga_context.h index 55642773f89..4ff0ed7e66f 100644 --- a/src/gallium/drivers/svga/svga_context.h +++ b/src/gallium/drivers/svga/svga_context.h @@ -202,6 +202,7 @@ struct svga_velems_state { struct pipe_vertex_element velem[PIPE_MAX_ATTRIBS]; SVGA3dDeclType decl_type[PIPE_MAX_ATTRIBS]; /**< vertex attrib formats */ unsigned adjust_attrib_range; /* bitmask of attrs needing range adjustment */ + unsigned adjust_attrib_w_1; /* bitmask of attrs needing w = 1 */ }; /* Use to calculate differences between state emitted to hardware and |