aboutsummaryrefslogtreecommitdiff
path: root/mesalib/src/mesa/math/m_matrix.c
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2014-11-29 12:44:10 +0100
committermarha <marha@users.sourceforge.net>2014-11-29 12:44:10 +0100
commit0dbe845b2f4ba08924d6fcb9634d09dc3dde13d6 (patch)
tree4fc0c706447f18bc522bb503273ec9e10f6c2ba5 /mesalib/src/mesa/math/m_matrix.c
parentd17578910169acabae7e67a3da8f26b5ed608ce6 (diff)
parentd6d5581d5fba846c8476ad4d593da662306765d7 (diff)
downloadvcxsrv-0dbe845b2f4ba08924d6fcb9634d09dc3dde13d6.tar.gz
vcxsrv-0dbe845b2f4ba08924d6fcb9634d09dc3dde13d6.tar.bz2
vcxsrv-0dbe845b2f4ba08924d6fcb9634d09dc3dde13d6.zip
Merge remote-tracking branch 'origin/released'
Conflicts: xorg-server/hw/xwin/winclip.c xorg-server/hw/xwin/winengine.c xorg-server/hw/xwin/winfont.c xorg-server/hw/xwin/wingc.c xorg-server/hw/xwin/wingetsp.c xorg-server/hw/xwin/winmisc.c xorg-server/hw/xwin/winnativegdi.c xorg-server/hw/xwin/winpfbdd.c xorg-server/hw/xwin/winpixmap.c xorg-server/hw/xwin/winpolyline.c xorg-server/hw/xwin/winscrinit.c xorg-server/hw/xwin/winsetsp.c xorg-server/hw/xwin/winwindow.c
Diffstat (limited to 'mesalib/src/mesa/math/m_matrix.c')
-rw-r--r--mesalib/src/mesa/math/m_matrix.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/mesalib/src/mesa/math/m_matrix.c b/mesalib/src/mesa/math/m_matrix.c
index e512e456f..9c9310d93 100644
--- a/mesalib/src/mesa/math/m_matrix.c
+++ b/mesalib/src/mesa/math/m_matrix.c
@@ -1110,16 +1110,15 @@ _math_matrix_translate( GLmatrix *mat, GLfloat x, GLfloat y, GLfloat z )
* Transforms Normalized Device Coords to window/Z values.
*/
void
-_math_matrix_viewport(GLmatrix *m, GLfloat x, GLfloat y,
- GLfloat width, GLfloat height,
- GLdouble zNear, GLdouble zFar, GLdouble depthMax)
+_math_matrix_viewport(GLmatrix *m, const double scale[3],
+ const double translate[3], double depthMax)
{
- m->m[MAT_SX] = width / 2.0F;
- m->m[MAT_TX] = m->m[MAT_SX] + x;
- m->m[MAT_SY] = height / 2.0F;
- m->m[MAT_TY] = m->m[MAT_SY] + y;
- m->m[MAT_SZ] = (GLfloat) (depthMax * ((zFar - zNear) / 2.0));
- m->m[MAT_TZ] = (GLfloat) (depthMax * ((zFar - zNear) / 2.0 + zNear));
+ m->m[MAT_SX] = scale[0];
+ m->m[MAT_TX] = translate[0];
+ m->m[MAT_SY] = scale[1];
+ m->m[MAT_TY] = translate[1];
+ m->m[MAT_SZ] = depthMax*scale[2];
+ m->m[MAT_TZ] = depthMax*translate[2];
m->flags = MAT_FLAG_GENERAL_SCALE | MAT_FLAG_TRANSLATION;
m->type = MATRIX_3D_NO_ROT;
}