zink/spirv: implement point-sprites

This passes glsl-fs-pointcoord_gles2 from piglit.

Acked-by: Jordan Justen <jordan.l.justen@intel.com>
This commit is contained in:
Erik Faye-Lund 2018-11-12 13:20:15 +01:00
parent c3bd0274c6
commit 4249e4a598
2 changed files with 7 additions and 0 deletions

View file

@ -134,6 +134,10 @@ emit_input(struct ntv_context *ctx, struct nir_variable *var)
spirv_builder_emit_builtin(&ctx->builder, var_id, SpvBuiltInFragCoord);
break;
case VARYING_SLOT_PNTC:
spirv_builder_emit_builtin(&ctx->builder, var_id, SpvBuiltInPointCoord);
break;
default:
spirv_builder_emit_location(&ctx->builder, var_id,
var->data.driver_location);

View file

@ -96,6 +96,9 @@ zink_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
case PIPE_CAP_MAX_DUAL_SOURCE_RENDER_TARGETS:
return screen->props.limits.maxFragmentDualSrcAttachments;
case PIPE_CAP_POINT_SPRITE:
return 1;
case PIPE_CAP_MAX_RENDER_TARGETS:
return screen->props.limits.maxColorAttachments;