[Mesa-dev] [PATCH] swr: support layer output in geometry shaders

Ilia Mirkin imirkin at alum.mit.edu
Sun Mar 5 23:24:44 UTC 2017


This makes bin/gl-3.2-layered-rendering-gl-layer-render fail only with
2DMS_ARRAY, which is expected given the lackluster MSAA support. However
all the regular types pass.

Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
---

Note - away from keys atm. Please push if you're happy with it.

 src/gallium/drivers/swr/swr_shader.cpp | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/gallium/drivers/swr/swr_shader.cpp b/src/gallium/drivers/swr/swr_shader.cpp
index 09d8145..09a0629 100644
--- a/src/gallium/drivers/swr/swr_shader.cpp
+++ b/src/gallium/drivers/swr/swr_shader.cpp
@@ -391,6 +391,8 @@ BuilderSWR::swr_gs_llvm_emit_vertex(const struct lp_build_tgsi_gs_iface *gs_base
           attribSlot = VERTEX_POINT_SIZE_SLOT;
        else if (iface->info->output_semantic_name[attrib] == TGSI_SEMANTIC_PRIMID)
           attribSlot = VERTEX_PRIMID_SLOT;
+       else if (iface->info->output_semantic_name[attrib] == TGSI_SEMANTIC_LAYER)
+          attribSlot = VERTEX_RTAI_SLOT;
 
        Value *vOffsetsAttrib =
           ADD(vOffsets, MUL(vVertexSlot, VIMMED1((uint32_t)sizeof(simdvertex))));
-- 
2.10.2



More information about the mesa-dev mailing list