From db705f406ccd85dc170beb89f0f35fd3398a0a46 Mon Sep 17 00:00:00 2001 From: Derek Foreman Date: Sun, 25 May 2003 03:36:12 +0000 Subject: [PATCH] all grads done --- render/gradient.c | 54 ++++++++++++++++++++++++++++++++++++++++++++++- render/test.c | 2 +- 2 files changed, 54 insertions(+), 2 deletions(-) diff --git a/render/gradient.c b/render/gradient.c index ce066b21..6b22c6ba 100644 --- a/render/gradient.c +++ b/render/gradient.c @@ -621,7 +621,59 @@ void render_gl_gradient(Surface *sf, int x, int y, int w, int h) glEnd(); break; case Background_Pyramid: -printf("pyramid\n"); + ar = (pr + sr) / 2.0; + ag = (pg + sg) / 2.0; + ab = (pb + sb) / 2.0; + glBegin(GL_TRIANGLES); + glColor3f(pr, pg, pb); + glVertex2i(x, y); + glColor3f(sr, sg, sb); + glVertex2i(x+w/2, y+h/2); + glColor3f(ar, ag, ab); + glVertex2i(x, y+h/2); + + glVertex2i(x, y+h/2); + glColor3f(sr, sg, sb); + glVertex2i(x+w/2, y+h/2); + glColor3f(pr, pg, pb); + glVertex2i(x, y+h); + + glVertex2i(x, y+h); + glColor3f(sr, sg, sb); + glVertex2i(x+w/2, y+h/2); + glColor3f(ar, ag, ab); + glVertex2i(x+w/2, y+h); + + glVertex2i(x+w/2, y+h); + glColor3f(sr, sg, sb); + glVertex2i(x+w/2, y+h/2); + glColor3f(pr, pg, pb); + glVertex2i(x+w, y+h); + + glVertex2i(x+w, y+h); + glColor3f(sr, sg, sb); + glVertex2i(x+w/2, y+h/2); + glColor3f(ar, ag, ab); + glVertex2i(x+w, y+h/2); + + glVertex2i(x+w, y+h/2); + glColor3f(sr, sg, sb); + glVertex2i(x+w/2, y+h/2); + glColor3f(pr, pg, pb); + glVertex2i(x+w, y); + + glVertex2i(x+w, y); + glColor3f(sr, sg, sb); + glVertex2i(x+w/2, y+h/2); + glColor3f(ar, ag, ab); + glVertex2i(x+w/2, y); + + glVertex2i(x+w/2, y); + glColor3f(sr, sg, sb); + glVertex2i(x+w/2, y+h/2); + glColor3f(pr, pg, pb); + glVertex2i(x, y); + glEnd(); break; case Background_PipeCross: glBegin(GL_TRIANGLES); diff --git a/render/test.c b/render/test.c index f737748f..7c3c83b3 100644 --- a/render/test.c +++ b/render/test.c @@ -51,7 +51,7 @@ int main() render_startup(); look = appearance_new(Surface_Planar, 0); - look->surface.data.planar.grad = Background_PipeCross; + look->surface.data.planar.grad = Background_Pyramid; look->surface.data.planar.secondary = color_parse("Yellow"); look->surface.data.planar.primary = color_parse("Blue"); look->surface.data.planar.interlaced = FALSE; -- 2.39.2