Am 22.06.2014 17:10, schrieb Ilia Mirkin: > Signed-off-by: Ilia Mirkin <imir...@alum.mit.edu> > --- > docs/GL3.txt | 2 +- > docs/relnotes/10.3.html | 2 +- > src/gallium/drivers/nouveau/nvc0/nvc0_program.c | 2 ++ > src/gallium/drivers/nouveau/nvc0/nvc0_screen.c | 2 +- > 4 files changed, 5 insertions(+), 3 deletions(-) > > diff --git a/docs/GL3.txt b/docs/GL3.txt > index c47a54b..8cfa247 100644 > --- a/docs/GL3.txt > +++ b/docs/GL3.txt > @@ -161,7 +161,7 @@ GL 4.3: > GL_ARB_copy_image not started > GL_KHR_debug DONE (all drivers) > GL_ARB_explicit_uniform_location DONE (all drivers > that support GLSL) > - GL_ARB_fragment_layer_viewport DONE (nv50) > + GL_ARB_fragment_layer_viewport DONE (nv50, nvc0) > GL_ARB_framebuffer_no_attachments not started > GL_ARB_internalformat_query2 not started > GL_ARB_invalidate_subdata DONE (all drivers) > diff --git a/docs/relnotes/10.3.html b/docs/relnotes/10.3.html > index 5e29f2d..b65e347 100644 > --- a/docs/relnotes/10.3.html > +++ b/docs/relnotes/10.3.html > @@ -53,7 +53,7 @@ Note: some of the new features are only available with > certain drivers. > <li>GL_ARB_texture_query_levels on nv50, nvc0, llvmpipe, r600, radeonsi, > softpipe</li> > <li>GL_ARB_texture_query_lod on radeonsi</li> > <li>GL_ARB_viewport_array on nvc0</li> > -<li>GL_ARB_fragment_layer_viewport on nv50</li> > +<li>GL_ARB_fragment_layer_viewport on nv50, nvc0</li> > </ul> > > > diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_program.c > b/src/gallium/drivers/nouveau/nvc0/nvc0_program.c > index 667fbc8..ad8d1b0 100644 > --- a/src/gallium/drivers/nouveau/nvc0/nvc0_program.c > +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_program.c > @@ -36,6 +36,8 @@ nvc0_shader_input_address(unsigned sn, unsigned si, > unsigned ubase) > switch (sn) { > case NV50_SEMANTIC_TESSFACTOR: return 0x000 + si * 0x4; > case TGSI_SEMANTIC_PRIMID: return 0x060; > + case TGSI_SEMANTIC_LAYER: return 0x064; > + case TGSI_SEMANTIC_VIEWPORT_INDEX:return 0x068; > case TGSI_SEMANTIC_PSIZE: return 0x06c; > case TGSI_SEMANTIC_POSITION: return 0x070; > case TGSI_SEMANTIC_GENERIC: return ubase + si * 0x10; > diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c > b/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c > index 2c8f1ca..c02e10a 100644 > --- a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c > +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c > @@ -164,6 +164,7 @@ nvc0_screen_get_param(struct pipe_screen *pscreen, enum > pipe_cap param) > case PIPE_CAP_SAMPLE_SHADING: > case PIPE_CAP_TEXTURE_GATHER_OFFSETS: > case PIPE_CAP_TEXTURE_GATHER_SM5: > + case PIPE_CAP_TGSI_FS_LAYER_VIEWPORT: > return 1; > case PIPE_CAP_SEAMLESS_CUBE_MAP_PER_TEXTURE: > return (class_3d >= NVE4_3D_CLASS) ? 1 : 0; > @@ -181,7 +182,6 @@ nvc0_screen_get_param(struct pipe_screen *pscreen, enum > pipe_cap param) > case PIPE_CAP_TGSI_VS_LAYER: > case PIPE_CAP_FAKE_SW_MSAA: > case PIPE_CAP_TGSI_VS_WINDOW_SPACE_POSITION: > - case PIPE_CAP_TGSI_FS_LAYER_VIEWPORT: > return 0; > } > >
Is that cap bit really required? Everybody who can do layered viewports ought to be able to do this (as it's required by d3d10). Though I can't say if right now all drivers which support layered viewports can already do it (llvmpipe can), but it might be trivial to fix those up which can't. Roland _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev