diff -rauNp Desktop/mesa-demos-8.0.1//src/demos/Makefile.am mesa-demos-8.0.1//src/demos/Makefile.am --- Desktop/mesa-demos-8.0.1//src/demos/Makefile.am 2010-07-13 14:46:40.000000000 -0400 +++ mesa-demos-8.0.1/src/demos/Makefile.am 2011-06-04 15:34:18.000000000 -0400 @@ -62,7 +62,6 @@ bin_PROGRAMS = \ morph3d \ multiarb \ paltex \ - pointblast \ projtex \ ray \ readpix \ @@ -71,7 +70,6 @@ bin_PROGRAMS = \ shadowtex \ singlebuffer \ spectex \ - spriteblast \ stex3d \ teapot \ terrain \ diff -rauNp Desktop/mesa-demos-8.0.1//src/demos/Makefile.in mesa-demos-8.0.1//src/demos/Makefile.in --- Desktop/mesa-demos-8.0.1//src/demos/Makefile.in 2010-07-13 14:53:23.000000000 -0400 +++ mesa-demos-8.0.1/src/demos/Makefile.in 2011-06-04 15:35:32.000000000 -0400 @@ -73,11 +73,10 @@ host_triplet = @host@ @HAVE_GLUT_TRUE@ ipers$(EXEEXT) isosurf$(EXEEXT) \ @HAVE_GLUT_TRUE@ lodbias$(EXEEXT) morph3d$(EXEEXT) \ @HAVE_GLUT_TRUE@ multiarb$(EXEEXT) paltex$(EXEEXT) \ -@HAVE_GLUT_TRUE@ pointblast$(EXEEXT) projtex$(EXEEXT) \ -@HAVE_GLUT_TRUE@ ray$(EXEEXT) readpix$(EXEEXT) reflect$(EXEEXT) \ -@HAVE_GLUT_TRUE@ renormal$(EXEEXT) shadowtex$(EXEEXT) \ -@HAVE_GLUT_TRUE@ singlebuffer$(EXEEXT) spectex$(EXEEXT) \ -@HAVE_GLUT_TRUE@ spriteblast$(EXEEXT) stex3d$(EXEEXT) \ +@HAVE_GLUT_TRUE@ projtex$(EXEEXT) ray$(EXEEXT) readpix$(EXEEXT) \ +@HAVE_GLUT_TRUE@ reflect$(EXEEXT) renormal$(EXEEXT) \ +@HAVE_GLUT_TRUE@ shadowtex$(EXEEXT) singlebuffer$(EXEEXT) \ +@HAVE_GLUT_TRUE@ spectex$(EXEEXT) stex3d$(EXEEXT) \ @HAVE_GLUT_TRUE@ teapot$(EXEEXT) terrain$(EXEEXT) \ @HAVE_GLUT_TRUE@ tessdemo$(EXEEXT) texcyl$(EXEEXT) \ @HAVE_GLUT_TRUE@ texenv$(EXEEXT) textures$(EXEEXT) \ @@ -188,9 +187,6 @@ multiarb_DEPENDENCIES = ../util/libutil. paltex_SOURCES = paltex.c paltex_OBJECTS = paltex.$(OBJEXT) paltex_LDADD = $(LDADD) -pointblast_SOURCES = pointblast.c -pointblast_OBJECTS = pointblast.$(OBJEXT) -pointblast_LDADD = $(LDADD) projtex_SOURCES = projtex.c projtex_OBJECTS = projtex.$(OBJEXT) projtex_DEPENDENCIES = ../util/libutil.la @@ -215,9 +211,6 @@ singlebuffer_LDADD = $(LDADD) spectex_SOURCES = spectex.c spectex_OBJECTS = spectex.$(OBJEXT) spectex_LDADD = $(LDADD) -spriteblast_SOURCES = spriteblast.c -spriteblast_OBJECTS = spriteblast.$(OBJEXT) -spriteblast_LDADD = $(LDADD) stex3d_SOURCES = stex3d.c stex3d_OBJECTS = stex3d.$(OBJEXT) stex3d_LDADD = $(LDADD) @@ -285,21 +278,20 @@ SOURCES = arbfplight.c arbfslight.c arbo fbo_firecube.c fbotexture.c fire.c fogcoord.c fplight.c \ fslight.c gamma.c gearbox.c gears.c geartrain.c glinfo.c \ gloss.c gltestperf.c ipers.c isosurf.c lodbias.c morph3d.c \ - multiarb.c paltex.c pointblast.c projtex.c ray.c readpix.c \ - reflect.c renormal.c shadowtex.c singlebuffer.c spectex.c \ - spriteblast.c stex3d.c teapot.c terrain.c tessdemo.c texcyl.c \ - texenv.c textures.c trispd.c $(tunnel_SOURCES) tunnel2.c \ - vao_demo.c winpos.c + multiarb.c paltex.c projtex.c ray.c readpix.c reflect.c \ + renormal.c shadowtex.c singlebuffer.c spectex.c stex3d.c \ + teapot.c terrain.c tessdemo.c texcyl.c texenv.c textures.c \ + trispd.c $(tunnel_SOURCES) tunnel2.c vao_demo.c winpos.c DIST_SOURCES = arbfplight.c arbfslight.c arbocclude.c bounce.c \ clearspd.c copypix.c cubemap.c dinoshade.c dissolve.c \ drawpix.c engine.c fbo_firecube.c fbotexture.c fire.c \ fogcoord.c fplight.c fslight.c gamma.c gearbox.c gears.c \ geartrain.c glinfo.c gloss.c gltestperf.c ipers.c isosurf.c \ - lodbias.c morph3d.c multiarb.c paltex.c pointblast.c projtex.c \ - ray.c readpix.c reflect.c renormal.c shadowtex.c \ - singlebuffer.c spectex.c spriteblast.c stex3d.c teapot.c \ - terrain.c tessdemo.c texcyl.c texenv.c textures.c trispd.c \ - $(tunnel_SOURCES) tunnel2.c vao_demo.c winpos.c + lodbias.c morph3d.c multiarb.c paltex.c projtex.c ray.c \ + readpix.c reflect.c renormal.c shadowtex.c singlebuffer.c \ + spectex.c stex3d.c teapot.c terrain.c tessdemo.c texcyl.c \ + texenv.c textures.c trispd.c $(tunnel_SOURCES) tunnel2.c \ + vao_demo.c winpos.c ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -653,9 +645,6 @@ multiarb$(EXEEXT): $(multiarb_OBJECTS) $ paltex$(EXEEXT): $(paltex_OBJECTS) $(paltex_DEPENDENCIES) @rm -f paltex$(EXEEXT) $(AM_V_CCLD)$(LINK) $(paltex_OBJECTS) $(paltex_LDADD) $(LIBS) -pointblast$(EXEEXT): $(pointblast_OBJECTS) $(pointblast_DEPENDENCIES) - @rm -f pointblast$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(pointblast_OBJECTS) $(pointblast_LDADD) $(LIBS) projtex$(EXEEXT): $(projtex_OBJECTS) $(projtex_DEPENDENCIES) @rm -f projtex$(EXEEXT) $(AM_V_CCLD)$(LINK) $(projtex_OBJECTS) $(projtex_LDADD) $(LIBS) @@ -680,9 +669,6 @@ singlebuffer$(EXEEXT): $(singlebuffer_OB spectex$(EXEEXT): $(spectex_OBJECTS) $(spectex_DEPENDENCIES) @rm -f spectex$(EXEEXT) $(AM_V_CCLD)$(LINK) $(spectex_OBJECTS) $(spectex_LDADD) $(LIBS) -spriteblast$(EXEEXT): $(spriteblast_OBJECTS) $(spriteblast_DEPENDENCIES) - @rm -f spriteblast$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(spriteblast_OBJECTS) $(spriteblast_LDADD) $(LIBS) stex3d$(EXEEXT): $(stex3d_OBJECTS) $(stex3d_DEPENDENCIES) @rm -f stex3d$(EXEEXT) $(AM_V_CCLD)$(LINK) $(stex3d_OBJECTS) $(stex3d_LDADD) $(LIBS) @@ -756,7 +742,6 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/morph3d.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/multiarb.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/paltex.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pointblast.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/projtex.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ray.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/readpix.Po@am__quote@ @@ -765,7 +750,6 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/shadowtex.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/singlebuffer.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/spectex.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/spriteblast.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stex3d.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/teapot.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/terrain.Po@am__quote@ diff -rauNp Desktop/mesa-demos-8.0.1//src/demos/pointblast.c mesa-demos-8.0.1//src/demos/pointblast.c --- Desktop/mesa-demos-8.0.1//src/demos/pointblast.c 2010-07-07 13:57:15.000000000 -0400 +++ mesa-demos-8.0.1/src/demos/pointblast.c 1969-12-31 19:00:00.000000000 -0500 @@ -1,504 +0,0 @@ - -/* Copyright (c) Mark J. Kilgard, 1997. */ - -/* This program is freely distributable without licensing fees - and is provided without guarantee or warrantee expressed or - implied. This program is -not- in the public domain. */ - -/* This example demonstrates how to render particle effects - with OpenGL. A cloud of pinkish/orange particles explodes with the - particles bouncing off the ground. When the EXT_point_parameters - is present , the particle size is attenuated based on eye distance. */ - - -#include -#include -#include -#include /* for cos(), sin(), and sqrt() */ -#ifdef _WIN32 -#include -#endif -#include -#include - -/* Some files do not define M_PI... */ -#ifndef M_PI -#define M_PI 3.14159265 -#endif - -#if 0 /* For debugging. */ -#undef GL_EXT_point_parameters -#endif - -static GLfloat angle = -150; /* in degrees */ -static int spin = 0; -static int moving, begin; -static int newModel = 1; -static float theTime; -static int repeat = 1; -static int blend = 1; -int useMipmaps = 1; -int linearFiltering = 1; - -static GLfloat constant[3] = { 1/5.0, 0.0, 0.0 }; -static GLfloat linear[3] = { 0.0, 1/5.0, 0.0 }; -static GLfloat theQuad[3] = { 0.25, 0.0, 1/60.0 }; - -#define MAX_POINTS 2000 - -static int numPoints = 200; - -static GLfloat pointList[MAX_POINTS][3]; -static GLfloat pointTime[MAX_POINTS]; -static GLfloat pointVelocity[MAX_POINTS][2]; -static GLfloat pointDirection[MAX_POINTS][2]; -static int colorList[MAX_POINTS]; -static int animate = 1, motion = 0; - -static GLfloat colorSet[][4] = { - /* Shades of red. */ - { 0.7, 0.2, 0.4, 0.5 }, - { 0.8, 0.0, 0.7, 0.5 }, - { 1.0, 0.0, 0.0, 0.5 }, - { 0.9, 0.3, 0.6, 0.5 }, - { 1.0, 0.4, 0.0, 0.5 }, - { 1.0, 0.0, 0.5, 0.5 }, -}; - -#define NUM_COLORS (sizeof(colorSet)/sizeof(colorSet[0])) - -#define DEAD (NUM_COLORS+1) - - -#if 0 /* drand48 might be better on Unix machines */ -#define RANDOM_RANGE(lo, hi) ((lo) + (hi - lo) * drand48()) -#else -static float float_rand(void) { return rand() / (float) RAND_MAX; } -#define RANDOM_RANGE(lo, hi) ((lo) + (hi - lo) * float_rand()) -#endif - -#define MEAN_VELOCITY 3.0 -#define GRAVITY 2.0 - -/* Modeling units of ground extent in each X and Z direction. */ -#define EDGE 12 - -static void -makePointList(void) -{ - float angle, velocity, direction; - int i; - - motion = 1; - for (i=0; i EDGE) { - /* Particle has hit ground past the distance duration of - the particles. Mark particle as dead. */ - colorList[i] = NUM_COLORS; /* Not moving. */ - continue; - } - - pointVelocity[i][1] *= 0.8; /* 80% of previous up velocity. */ - pointTime[i] = 0.0; /* Reset the particles sense of up time. */ - } - motion = 1; - pointTime[i] += dt; - } - theTime += dt; - if (!motion && !spin) { - if (repeat) { - makePointList(); - } else { - glutIdleFunc(NULL); - } - } -} - -static void -idle(void) -{ - updatePointList(); - if (spin) { - angle += 0.3; - newModel = 1; - } - glutPostRedisplay(); -} - -static void -visible(int vis) -{ - if (vis == GLUT_VISIBLE) { - if (animate && (motion || spin)) { - glutIdleFunc(idle); - } - } else { - glutIdleFunc(NULL); - } -} - -static void -recalcModelView(void) -{ - glPopMatrix(); - glPushMatrix(); - glRotatef(angle, 0.0, 1.0, 0.0); - newModel = 0; -} - -static void -redraw(void) -{ - int i; - - glDepthMask(GL_TRUE); - glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); - if (newModel) - recalcModelView(); - - - /* Draw the floor. */ -/* glEnable(GL_TEXTURE_2D);*/ - glColor3f(0.5, 1.0, 0.5); - glBegin(GL_QUADS); - glTexCoord2f(0.0, 0.0); - glVertex3f(-EDGE, -0.05, -EDGE); - glTexCoord2f(20.0, 0.0); - glVertex3f(EDGE, -0.05, -EDGE); - glTexCoord2f(20.0, 20.0); - glVertex3f(EDGE, -0.05, EDGE); - glTexCoord2f(0.0, 20.0); - glVertex3f(-EDGE, -0.05, EDGE); - glEnd(); - - /* Allow particles to blend with each other. */ - glDepthMask(GL_FALSE); - - if (blend) - glEnable(GL_BLEND); - - glDisable(GL_TEXTURE_2D); - glBegin(GL_POINTS); - for (i=0; i -#include -#include -#include /* for cos(), sin(), and sqrt() */ -#ifdef _WIN32 -#include -#endif -#include -#include - -/* Some files do not define M_PI... */ -#ifndef M_PI -#define M_PI 3.14159265 -#endif - -#if 0 /* For debugging. */ -#undef GL_EXT_point_parameters -#endif - -static GLfloat angle = -150; /* in degrees */ -static int spin = 0; -static int moving, begin; -static float theTime; -static int repeat = 1; -static int blend = 1; -int useMipmaps = 1; -int linearFiltering = 1; - -static GLfloat constant[3] = { .2, 0.0, 0.0 }; -static GLfloat linear[3] = { .0, .1, 0.0 }; -static GLfloat theQuad[3] = { .005, 0.1, 1/600.0 }; - -#define MAX_POINTS 2000 - -static int numPoints = 200; - -static GLfloat pointList[MAX_POINTS][3]; -static GLfloat pointTime[MAX_POINTS]; -static GLfloat pointVelocity[MAX_POINTS][2]; -static GLfloat pointDirection[MAX_POINTS][2]; -static int colorList[MAX_POINTS]; -static int animate = 1, motion = 0, org = 0, sprite = 1, smooth = 1; - -static GLfloat colorSet[][4] = { - /* Shades of red. */ - { 0.7, 0.2, 0.4, 0.5 }, - { 0.8, 0.0, 0.7, 0.5 }, - { 1.0, 0.0, 0.0, 0.5 }, - { 0.9, 0.3, 0.6, 0.5 }, - { 1.0, 0.4, 0.0, 0.5 }, - { 1.0, 0.0, 0.5, 0.5 }, -}; - -#define NUM_COLORS (sizeof(colorSet)/sizeof(colorSet[0])) - -#define DEAD (NUM_COLORS+1) - - -/* GL */ -static GLint spritePattern[16][16] = { - { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 }, - { 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0 }, - { 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0 }, - { 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 }, - { 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 }, - { 0, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 0 }, - { 0, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 0 }, - { 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0 }, - { 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0 }, - { 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0 }, - { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } -}; - - - - -#if 0 /* drand48 might be better on Unix machines */ -#define RANDOM_RANGE(lo, hi) ((lo) + (hi - lo) * drand48()) -#else -static float float_rand(void) { return rand() / (float) RAND_MAX; } -#define RANDOM_RANGE(lo, hi) ((lo) + (hi - lo) * float_rand()) -#endif - -#define MEAN_VELOCITY 3.0 -#define GRAVITY 2.0 - -/* Modeling units of ground extent in each X and Z direction. */ -#define EDGE 12 - -static void -makePointList(void) -{ - float angle, velocity, direction; - int i; - - motion = 1; - for (i=0; i EDGE) { - /* Particle has hit ground past the distance duration of - the particles. Mark particle as dead. */ - colorList[i] = NUM_COLORS; /* Not moving. */ - continue; - } - - pointVelocity[i][1] *= 0.8; /* 80% of previous up velocity. */ - pointTime[i] = 0.0; /* Reset the particles sense of up time. */ - } - motion = 1; - pointTime[i] += dt; - } - theTime += dt; - if (!motion && !spin) { - if (repeat) { - makePointList(); - } else { - glutIdleFunc(NULL); - } - } -} - -static void -idle(void) -{ - updatePointList(); - if (spin) { - angle += 0.3; - } - glutPostRedisplay(); -} - -static void -visible(int vis) -{ - if (vis == GLUT_VISIBLE) { - if (animate && (motion || spin)) { - glutIdleFunc(idle); - } - } else { - glutIdleFunc(NULL); - } -} - -static void -redraw(void) -{ - int i; - - glDepthMask(GL_TRUE); - glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); - - glPushMatrix(); - glRotatef(15.0, 1.0, 0.0, 0.0); - glRotatef(angle, 0.0, 1.0, 0.0); - - - /* Draw the floor. */ -/* glEnable(GL_TEXTURE_2D);*/ - glColor3f(0.1, 0.5, 1.0); - glBegin(GL_QUADS); - glTexCoord2f(0.0, 0.0); - glVertex3f(-EDGE, -0.05, -EDGE); - glTexCoord2f(20.0, 0.0); - glVertex3f(EDGE, -0.05, -EDGE); - glTexCoord2f(20.0, 20.0); - glVertex3f(EDGE, -0.05, EDGE); - glTexCoord2f(0.0, 20.0); - glVertex3f(-EDGE, -0.05, EDGE); - glEnd(); - - /* Allow particles to blend with each other. */ - glDepthMask(GL_FALSE); - - if (blend) - glEnable(GL_BLEND); - - if (sprite) { - glEnable(GL_TEXTURE_2D); -#ifdef GL_ARB_point_sprite - glEnable(GL_POINT_SPRITE_ARB); -#endif - } - - glColor3f(1,1,1); - glBegin(GL_POINTS); - for (i=0; i