diff --git a/cubereflex.c b/cubereflex.c index b4ebc3e..c6fd9ef 100644 --- a/cubereflex.c +++ b/cubereflex.c @@ -155,28 +155,28 @@ static void cubereflexPaintTransformedOu if (xRotate >= angle / 2.0) xRotate = angle - xRotate; if (xRotate2 >= angle / 2.0) - xRotate2 = angle - xRotate2; - - matrixRotate (&pTransform, xRotate, 0.0f, 1.0f, 0.0f); + xRotate2 = angle - xRotate2; + +matrixRotate (&pTransform, xRotate, 0.0f, 1.0f, 0.0f); matrixRotate (&pTransform, vRotate, cosf (xRotate * DEG2RAD), 0.0f, sinf (xRotate * DEG2RAD)); - MULTMV(pTransform.m, point); + /*MULTMV(pTransform.m, point); pTransform = identity; matrixRotate (&pTransform, xRotate2, 0.0f, 1.0f, 0.0f); matrixRotate (&pTransform, vRotate, cosf (xRotate2 * DEG2RAD), 0.0f, sinf (xRotate2 * DEG2RAD)); - MULTMV(pTransform.m, point2); - - matrixTranslate(&rTransform, 0.0, point[1] - 0.5, - -point2[2] + cs->distance); + MULTMV(pTransform.m, point2);*/ + matrixTranslate(&rTransform, 0.0, -1.8, -point2[2] + cs->distance); matrixScale(&rTransform, 1.0, -1.0, 1.0); + glPushMatrix(); glLoadIdentity(); glScalef(1.0, -1.0, 1.0); + glTranslatef(0.0, -1.0, 0.0); glLightfv (GL_LIGHT0, GL_POSITION, light0Position); glPopMatrix(); @@ -191,8 +191,9 @@ static void cubereflexPaintTransformedOu glLightfv (GL_LIGHT0, GL_POSITION, light0Position); glPopMatrix(); - matrixTranslate(&sTransform, 0.0, -point[1] - 0.5, - -point2[2] + cs->distance); + matrixTranslate(&sTransform, 0.0, -point[1] - 0.5, -point2[2] + cs->distance); + + } rs->reflection = FALSE;