[Mesa-dev] [PATCH 2/2] i915: fix wrong rendering of gl_PointSize on Pineview

Yuanhan Liu yuanhan.liu at linux.intel.com
Tue Feb 28 17:50:40 PST 2012


ping......

comments?

Thanks,
Yuanhan Liu


On Thu, Feb 23, 2012 at 02:19:19PM +0800, Yuanhan Liu wrote:
> The current code would ignore the point size specified by gl_PointSize
> builtin variable in vertex shader on Pineview. This patch servers as
> fixing that.
> 
> This patch fixes the following issues on Pineview:
> webglc: https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/conformance/rendering/point-size.html
> piglit: glsl-vs-point-size
> 
> NOTE: This is a candidate for stable release branches.
> 
> v2: pick Eric's nice tip for fixing this issue in hardware rendering.
> 
> Signed-off-by: Yuanhan Liu <yuanhan.liu at linux.intel.com>
> ---
>  src/mesa/drivers/dri/i915/i915_fragprog.c |    4 ++++
>  1 files changed, 4 insertions(+), 0 deletions(-)
> 
> diff --git a/src/mesa/drivers/dri/i915/i915_fragprog.c b/src/mesa/drivers/dri/i915/i915_fragprog.c
> index 4f016a3..2d60523 100644
> --- a/src/mesa/drivers/dri/i915/i915_fragprog.c
> +++ b/src/mesa/drivers/dri/i915/i915_fragprog.c
> @@ -1361,6 +1361,10 @@ i915ValidateFragmentProgram(struct i915_context *i915)
>        EMIT_ATTR(_TNL_ATTRIB_POS, EMIT_3F_VIEWPORT, S4_VFMT_XYZ, 12);
>     }
>  
> +   /* Handle gl_PointSize builtin var here */
> +   if (ctx->Point._Attenuated || ctx->VertexProgram.PointSizeEnabled)
> +      EMIT_ATTR(_TNL_ATTRIB_POINTSIZE, EMIT_1F, S4_VFMT_POINT_WIDTH, 1);
> +
>     if (inputsRead & FRAG_BIT_COL0) {
>        intel->coloroffset = offset / 4;
>        EMIT_ATTR(_TNL_ATTRIB_COLOR0, EMIT_4UB_4F_BGRA, S4_VFMT_COLOR, 4);
> -- 
> 1.7.4.4


More information about the mesa-dev mailing list