Italian translation update
[neverball] / share / back.c
index 62c74ae..37a0ec9 100644 (file)
@@ -30,13 +30,13 @@ static GLuint back_text;
 
 /*---------------------------------------------------------------------------*/
 
-void back_init(const char *s, int b)
+void back_init(const char *s)
 {
-    int i, slices = b ? 32 : 16;
-    int j, stacks = b ? 16 :  8;
+    int i, slices = 32;
+    int j, stacks = 16;
 
     back_free();
-    back_text = make_image_from_file(NULL, NULL, NULL, NULL, s);
+    back_text = make_image_from_file(s);
 
     glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
 
@@ -44,9 +44,10 @@ void back_init(const char *s, int b)
 
     glNewList(back_list, GL_COMPILE);
     {
-        glColor3f(1.f, 1.f, 1.f);
         glBindTexture(GL_TEXTURE_2D, back_text);
 
+        glColor3f(1.0f, 1.0f, 1.0f);
+
         for (i = 0; i < stacks; i++)
         {
             float k0 = (float)  i      / stacks;
@@ -65,12 +66,10 @@ void back_init(const char *s, int b)
                     float s = fsinf(V_PI * k * 2.0);
                     float c = fcosf(V_PI * k * 2.0);
 
-                    glTexCoord2f(k, k1);
-                    glNormal3f(s * c1, c * c1, s1);
+                    glTexCoord2f(k, 1.0f - k1);
                     glVertex3f(s * c1, c * c1, s1);
 
-                    glTexCoord2f(k, k0);
-                    glNormal3f(s * c0, c * c0, s0);
+                    glTexCoord2f(k, 1.0f - k0);
                     glVertex3f(s * c0, c * c0, s0);
                 }
             }
@@ -95,22 +94,22 @@ void back_free(void)
 void back_draw(float t)
 {
     glPushMatrix();
-    glPushAttrib(GL_LIGHTING_BIT | GL_DEPTH_BUFFER_BIT);
     {
         GLfloat dx =  60.f * fsinf(t / 10.f) + 90.f;
         GLfloat dz = 180.f * fsinf(t / 12.f);
 
         glDisable(GL_LIGHTING);
         glDepthMask(GL_FALSE);
+        {
+            glScalef(BACK_DIST, BACK_DIST, BACK_DIST);
+            glRotatef(dz, 0.f, 0.f, 1.f);
+            glRotatef(dx, 1.f, 0.f, 0.f);
 
-        glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
-        glScalef(BACK_DIST, BACK_DIST, BACK_DIST);
-        glRotatef(dz, 0.f, 0.f, 1.f);
-        glRotatef(dx, 1.f, 0.f, 0.f);
-
-        glCallList(back_list);
+            glCallList(back_list);
+        }
+        glDepthMask(GL_TRUE);
+        glEnable(GL_LIGHTING);
     }
-    glPopAttrib();
     glPopMatrix();
 }