[Openchrome-users] misplacement of GL viewport -- doubled coordinates

Miguel Marte miguelmarte
Fri Feb 23 07:09:42 PST 2007


sorry for the non diff, only thing i have on my laptop right now is nano and
X.  Thomas can you check to see if its correct and up to mesa git for me?
Oh and if its correct you can take out that note about using drawXoff from
via_state.c.

via_ioctrl.c
change
         b.x1 = pbox[i].x1 - (vrb->drawX + vrb->drawXoff);
         b.x2 = pbox[i].x2 - (vrb->drawX + vrb->drawXoff);
         b.y1 = pbox[i].y1 - vrb->drawY;
         b.y2 = pbox[i].y2 - vrb->drawY;

to
     b.x1 = pbox[i].x1 - vrb->drawXoff;
     b.x2 = pbox[i].x2 - vrb->drawXoff;
     b.y1 = pbox[i].y1;
     b.y2 = pbox[i].y2;


via_context.c
change
   vmesa->front.orig = (vmesa->front.offset +
                        draw_buffer->drawY * vmesa->front.pitch +
                        draw_buffer->drawX * bytePerPixel);

   vmesa->front.origMap = (vmesa->front.map +
                           draw_buffer->drawY * vmesa->front.pitch +
                           draw_buffer->drawX * bytePerPixel);

   vmesa->back.orig = vmesa->back.offset;
   vmesa->depth.orig = vmesa->depth.offset;
   vmesa->back.origMap = vmesa->back.map;
   vmesa->depth.origMap = vmesa->depth.map;

to
   vmesa->front.orig = vmesa->front.orig;
   vmesa->front.origMap = vmesa->front.map;
   vmesa->back.orig = vmesa->back.offset;
   vmesa->depth.orig = vmesa->depth.offset;
   vmesa->back.origMap = vmesa->back.map;
   vmesa->depth.origMap = vmesa->depth.map;


via_state.c
change
    m[MAT_SX] =   v[MAT_SX];
    m[MAT_TX] =   v[MAT_TX] + SUBPIXEL_X + vrb->drawXoff;
    m[MAT_SY] = - v[MAT_SY];
    m[MAT_TY] = - v[MAT_TY] + dPriv->h + SUBPIXEL_Y;
    m[MAT_SZ] =   v[MAT_SZ] * (1.0 / vmesa->depth_max);
    m[MAT_TZ] =   v[MAT_TZ] * (1.0 / vmesa->depth_max);

to
    m[MAT_SX] =   v[MAT_SX];
    m[MAT_TX] =   v[MAT_TX] + SUBPIXEL_X + dPriv->x;
    m[MAT_SY] =  -v[MAT_SY];
    m[MAT_TY] =  -v[MAT_TY] + dPriv->y + dPriv->h + SUBPIXEL_Y;
    m[MAT_SZ] =   v[MAT_SZ] * (1.0 / vmesa->depth_max);
    m[MAT_TZ] =   v[MAT_TZ] * (1.0 / vmesa->depth_max);
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://wiki.openchrome.org/pipermail/openchrome-users/attachments/20070223/a65e2619/attachment.html



More information about the Openchrome-users mailing list