I allways noticed that in the SDL mode, the gradient was sometimes different than...
authorRicardo Cruz <rick2@aeiou.pt>
Sat, 15 May 2004 14:19:01 +0000 (14:19 +0000)
committerRicardo Cruz <rick2@aeiou.pt>
Sat, 15 May 2004 14:19:01 +0000 (14:19 +0000)
Finally, gone to the code and corrected that. It was just a typo (screen->w was being used in green and blue calculation, instead of screen->h).

SVN-Revision: 1195

src/screen.cpp

index 52071d2..66248b3 100644 (file)
@@ -82,11 +82,14 @@ void drawgradient(Color top_clr, Color bot_clr)
   {
 #endif
 
+//void fillrect(float x, float y, float w, float h, int r, int g, int b, int a)
+
     for(float y = 0; y < screen->h; y += 2)
       fillrect(0, (int)y, screen->w, 2,
-                     (int)(((float)(top_clr.red-bot_clr.red)/(0-screen->h)) * y + top_clr.red),
-                     (int)(((float)(top_clr.green-bot_clr.green)/(0-screen->w)) * y + top_clr.green),
-                     (int)(((float)(top_clr.blue-bot_clr.blue)/(0-screen->w)) * y + top_clr.blue), 255);
+       (int)(((float)(top_clr.red-bot_clr.red)/(0-screen->h)) * y + top_clr.red),
+       (int)(((float)(top_clr.green-bot_clr.green)/(0-screen->h)) * y + top_clr.green),
+       (int)(((float)(top_clr.blue-bot_clr.blue)/(0-screen->h)) * y + top_clr.blue),
+       255);
 /* calculates the color for each line, based in the generic equation for functions: y = mx + b */
 
 #ifndef NOOPENGL