コード例 #1
0
ファイル: smooth.c プロジェクト: bbw2008good/ftk
void display(UGWindow uwin)
{
   glClear (GL_COLOR_BUFFER_BIT);
   triangle ();
   glFlush ();
   ugSwapBuffers(uwin);
}
コード例 #2
0
ファイル: hello.c プロジェクト: bbw2008good/ftk
void display(UGWindow uwin)
{
/* clear all pixels  */
   glClear (GL_COLOR_BUFFER_BIT);

/* draw white polygon (rectangle) with corners at
 * (0.25, 0.25, 0.0) and (0.75, 0.75, 0.0)  
 */
   glColor4f (1.0, 1.0, 1.0, 1.0);
   glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
   glRotatef(10., 0.5, 0.5, 1.0);
//   glTranslatef(-0.25, -0.25, 0);
#if 0   
   glTranslatef(0.25, 0.25, 0);
   glScalef(0.5, 0.5, 1);
   glTranslatef(-0.5, -0.5, 0);
   glScalef(2, 2, 1);
//   glScalef(0.5, 0.5, 1);
   glColor4f (1.0, 1.0, 0, 1.0);
#endif   
   //glRotatef(10, 0, 0, 1.0);
   glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);

/* don't wait!  
 * start processing buffered OpenGL routines 
 */
   glFlush ();
   ugSwapBuffers(uwin);
}
コード例 #3
0
ファイル: colormat.c プロジェクト: bbw2008good/ftk
void display(UGWindow uwin)
{
   glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
   ugSolidSpheref(1.0, 20, 16);
   glFlush ();
   ugSwapBuffers(uwin);
}
コード例 #4
0
ファイル: model.c プロジェクト: thisisadu/vincent-opengles1.1
void display(UGWindow uwin)
{
   glClear (GL_COLOR_BUFFER_BIT);
   glColor4f (1.0, 1.0, 1.0, 1.0);

   glLoadIdentity ();
   glColor4f (1.0, 1.0, 1.0, 1.0);
   draw_triangle ();

   /*glEnable (GL_LINE_STIPPLE);*/
   /*glLineStipple (1, 0xF0F0);*/
   glColor4f(1.0f, 0.f, 0.f, 1.f);
   glLoadIdentity ();
   glTranslatef (-20.0, 0.0, 0.0);
   draw_triangle ();

   /*glLineStipple (1, 0xF00F);*/
   glColor4f(0.0f, 1.f, 0.f, 1.f);
   glLoadIdentity ();
   glScalef (1.5, 0.5, 1.0);
   draw_triangle ();

   /*glLineStipple (1, 0x8888);*/
   glColor4f(0.0f, 0.f, 1.f, 1.f);
   glLoadIdentity ();
   glRotatef (90.0, 0.0, 0.0, 1.0);
   draw_triangle ();
   /*glDisable (GL_LINE_STIPPLE);*/

   glFlush ();
   ugSwapBuffers(uwin);
}
コード例 #5
0
void display(UGWindow uwin)
{
   glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
   glBindTexture(GL_TEXTURE_2D, texName[0]);
   glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
   glBindTexture(GL_TEXTURE_2D, texName[1]);
   glDrawArrays(GL_TRIANGLE_STRIP, 4, 4);
   glFlush();
   ugSwapBuffers(uwin);
}
コード例 #6
0
ファイル: fog.c プロジェクト: bbw2008good/ftk
/* display() draws 5 spheres at different z positions.
 */
static void display(UGWindow uwin)
{
   glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
   renderSphere (-2., -0.5, -1.0);
   renderSphere (-1., -0.5, -2.0);
   renderSphere (0., -0.5, -3.0);
   renderSphere (1., -0.5, -4.0);
   renderSphere (2., -0.5, -5.0);
   glFlush();
   ugSwapBuffers(uwin);
}
コード例 #7
0
ファイル: cube.c プロジェクト: bbw2008good/ftk
void display(UGWindow uwin)
{
   glClear (GL_COLOR_BUFFER_BIT);
   glColor4f (1.0, 1.0, 1.0, 1.0);
   glLoadIdentity ();             /* clear the matrix */
           /* viewing transformation  */
   ugluLookAtf(0.0, 0.0, 5.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0);
   glScalef (1.0, 2.0, 1.0);      /* modeling transformation */ 
   ugWireCubef(1.0);
   glFlush();
   ugSwapBuffers(uwin);
}
コード例 #8
0
ファイル: planet.c プロジェクト: bbw2008good/ftk
void display(UGWindow uwin)
{
   glClear (GL_COLOR_BUFFER_BIT);
   glColor4f (1.0f, 1.0f, 1.0f, 1.0f);

   glPushMatrix();
   ugWireSpheref(1.0, 20, 16);   /* draw sun */
   glRotatef ((GLfloat) year, 0.0, 1.0, 0.0);
   glTranslatef (2.0, 0.0, 0.0);
   glRotatef ((GLfloat) day, 0.0, 1.0, 0.0);
   ugWireSpheref(0.2, 10, 8);    /* draw smaller planet */
   glPopMatrix();
   ugSwapBuffers(uwin);
}
コード例 #9
0
ファイル: alpha.c プロジェクト: thisisadu/vincent-opengles1.1
void display(UGWindow uwin)
{
   glClear(GL_COLOR_BUFFER_BIT);

   if (leftFirst) {
      drawLeftTriangle();
      drawRightTriangle();
   }
   else {
      drawRightTriangle();
      drawLeftTriangle();
   }

   glFlush();
   ugSwapBuffers(uwin);
}
コード例 #10
0
ファイル: movelight.c プロジェクト: bbw2008good/ftk
/*  Here is where the light position is reset after the modeling
 *  transformation (glRotated) is called.  This places the
 *  light at a new position in world coordinates.  The cube
 *  represents the position of the light.
 */
void display(UGWindow uwin)
{
   GLfloat position[] = { 0.0, 0.0, 1.5, 1.0 };

   glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
   glPushMatrix ();
   ugluLookAtf(0.0, 0.0, 5.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0);

   glPushMatrix ();
   glRotatef ((GLfloat) spin, 1.0, 0.0, 0.0);
   glLightfv (GL_LIGHT0, GL_POSITION, position);

   glTranslatef (0.0, 0.0, 1.5);
   glDisable (GL_LIGHTING);
   glColor4f (0.0, 1.0, 1.0, 1.0);
   ugWireCubef(0.1);
   glEnable (GL_LIGHTING);
   glPopMatrix ();

   ugSolidTorusf(0.275, 0.85, 8, 15);
   glPopMatrix ();
   glFlush ();
   ugSwapBuffers(uwin);
}
コード例 #11
0
ファイル: material.c プロジェクト: mew-cx/Vincent_ES_1.x
void display(UGWindow uwin)
{
   GLfloat no_mat[] = { 0.0, 0.0, 0.0, 1.0 };
   GLfloat mat_ambient[] = { 0.7, 0.7, 0.7, 1.0 };
   GLfloat mat_ambient_color[] = { 0.8, 0.8, 0.2, 1.0 };
   GLfloat mat_diffuse[] = { 0.1, 0.5, 0.8, 1.0 };
   GLfloat mat_specular[] = { 1.0, 1.0, 1.0, 1.0 };
   GLfloat no_shininess[] = { 0.0 };
   GLfloat low_shininess[] = { 5.0 };
   GLfloat high_shininess[] = { 100.0 };
   GLfloat mat_emission[] = {0.3, 0.2, 0.2, 0.0};

   glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

/*  draw sphere in first row, first column
 *  diffuse reflection only; no ambient or specular  
 */
   glPushMatrix();
   glTranslatef (-3.75, 3.0, 0.0);
   glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, no_mat);
   glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, mat_diffuse);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, no_mat);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SHININESS, no_shininess);
   glMaterialfv(GL_FRONT_AND_BACK, GL_EMISSION, no_mat);
   ugSolidSpheref(1.0, 16, 16);
   glPopMatrix();

/*  draw sphere in first row, second column
 *  diffuse and specular reflection; low shininess; no ambient
 */
   glPushMatrix();
   glTranslatef (-1.25, 3.0, 0.0);
   glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, no_mat);
   glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, mat_diffuse);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, mat_specular);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SHININESS, low_shininess);
   glMaterialfv(GL_FRONT_AND_BACK, GL_EMISSION, no_mat);
   ugSolidSpheref(1.0, 16, 16);
   glPopMatrix();

/*  draw sphere in first row, third column
 *  diffuse and specular reflection; high shininess; no ambient
 */
   glPushMatrix();
   glTranslatef (1.25, 3.0, 0.0);
   glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, no_mat);
   glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, mat_diffuse);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, mat_specular);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SHININESS, high_shininess);
   glMaterialfv(GL_FRONT_AND_BACK, GL_EMISSION, no_mat);
   ugSolidSpheref(1.0, 16, 16);
   glPopMatrix();

/*  draw sphere in first row, fourth column
 *  diffuse reflection; emission; no ambient or specular reflection
 */
   glPushMatrix();
   glTranslatef (3.75, 3.0, 0.0);
   glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, no_mat);
   glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, mat_diffuse);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, no_mat);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SHININESS, no_shininess);
   glMaterialfv(GL_FRONT_AND_BACK, GL_EMISSION, mat_emission);
   ugSolidSpheref(1.0, 16, 16);
   glPopMatrix();

/*  draw sphere in second row, first column
 *  ambient and diffuse reflection; no specular  
 */
   glPushMatrix();
   glTranslatef (-3.75, 0.0, 0.0);
   glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, mat_ambient);
   glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, mat_diffuse);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, no_mat);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SHININESS, no_shininess);
   glMaterialfv(GL_FRONT_AND_BACK, GL_EMISSION, no_mat);
   ugSolidSpheref(1.0, 16, 16);
   glPopMatrix();

/*  draw sphere in second row, second column
 *  ambient, diffuse and specular reflection; low shininess
 */
   glPushMatrix();
   glTranslatef (-1.25, 0.0, 0.0);
   glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, mat_ambient);
   glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, mat_diffuse);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, mat_specular);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SHININESS, low_shininess);
   glMaterialfv(GL_FRONT_AND_BACK, GL_EMISSION, no_mat);
   ugSolidSpheref(1.0, 16, 16);
   glPopMatrix();

/*  draw sphere in second row, third column
 *  ambient, diffuse and specular reflection; high shininess
 */
   glPushMatrix();
   glTranslatef (1.25, 0.0, 0.0);
   glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, mat_ambient);
   glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, mat_diffuse);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, mat_specular);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SHININESS, high_shininess);
   glMaterialfv(GL_FRONT_AND_BACK, GL_EMISSION, no_mat);
   ugSolidSpheref(1.0, 16, 16);
   glPopMatrix();

/*  draw sphere in second row, fourth column
 *  ambient and diffuse reflection; emission; no specular
 */
   glPushMatrix();
   glTranslatef (3.75, 0.0, 0.0);
   glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, mat_ambient);
   glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, mat_diffuse);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, no_mat);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SHININESS, no_shininess);
   glMaterialfv(GL_FRONT_AND_BACK, GL_EMISSION, mat_emission);
   ugSolidSpheref(1.0, 16, 16);
   glPopMatrix();

/*  draw sphere in third row, first column
 *  colored ambient and diffuse reflection; no specular  
 */
   glPushMatrix();
   glTranslatef (-3.75, -3.0, 0.0);
   glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, mat_ambient_color);
   glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, mat_diffuse);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, no_mat);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SHININESS, no_shininess);
   glMaterialfv(GL_FRONT_AND_BACK, GL_EMISSION, no_mat);
   ugSolidSpheref(1.0, 16, 16);
   glPopMatrix();

/*  draw sphere in third row, second column
 *  colored ambient, diffuse and specular reflection; low shininess
 */
   glPushMatrix();
   glTranslatef (-1.25, -3.0, 0.0);
   glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, mat_ambient_color);
   glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, mat_diffuse);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, mat_specular);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SHININESS, low_shininess);
   glMaterialfv(GL_FRONT_AND_BACK, GL_EMISSION, no_mat);
   ugSolidSpheref(1.0, 16, 16);
   glPopMatrix();

/*  draw sphere in third row, third column
 *  colored ambient, diffuse and specular reflection; high shininess
 */
   glPushMatrix();
   glTranslatef (1.25, -3.0, 0.0);
   glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, mat_ambient_color);
   glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, mat_diffuse);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, mat_specular);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SHININESS, high_shininess);
   glMaterialfv(GL_FRONT_AND_BACK, GL_EMISSION, no_mat);
   ugSolidSpheref(1.0, 16, 16);
   glPopMatrix();

/*  draw sphere in third row, fourth column
 *  colored ambient and diffuse reflection; emission; no specular
 */
   glPushMatrix();
   glTranslatef (3.75, -3.0, 0.0);
   glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, mat_ambient_color);
   glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, mat_diffuse);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, no_mat);
   glMaterialfv(GL_FRONT_AND_BACK, GL_SHININESS, no_shininess);
   glMaterialfv(GL_FRONT_AND_BACK, GL_EMISSION, mat_emission);
   ugSolidSpheref(1.0, 16, 16);
   glPopMatrix();

   glFlush();
   ugSwapBuffers(uwin);
}
コード例 #12
0
ファイル: lines.c プロジェクト: bbw2008good/ftk
void display(UGWindow uwin)
{
   int i;

   glClear (GL_COLOR_BUFFER_BIT);

/* select white for all lines  */
   glColor4f (1.0, 1.0, 1.0, 1.0);

/* in 1st row, 3 lines, each with a different stipple  */
   //glEnable (GL_LINE_STIPPLE);
   
   //glLineStipple (1, 0x0101);  /*  dotted  */
   glColor4f(1., 0., 0., 1.);
   drawOneLine (50.0, 125.0, 150.0, 125.0);
   //glLineStipple (1, 0x00FF);  /*  dashed  */
   glColor4f(0., 1., 0., 1.);
   drawOneLine (150.0, 125.0, 250.0, 125.0);
   //glLineStipple (1, 0x1C47);  /*  dash/dot/dash  */
   glColor4f(0., 0., 1., 1.);
   drawOneLine (250.0, 125.0, 350.0, 125.0);

   glColor4f(1., 1., 1., 1.);
/* in 2nd row, 3 wide lines, each with different stipple */
   glLineWidth (5.0);
   //glLineStipple (1, 0x0101);  /*  dotted  */
   drawOneLine (50.0, 100.0, 150.0, 100.0);
   //glLineStipple (1, 0x00FF);  /*  dashed  */
   glColor4f(1., 1., 0., 1.);
   drawOneLine (150.0, 100.0, 250.0, 100.0);
   //glLineStipple (1, 0x1C47);  /*  dash/dot/dash  */
   glColor4f(0., 1., 1., 1.);
   drawOneLine (250.0, 100.0, 350.0, 100.0);
   glLineWidth (1.0);
   glColor4f(1., 0., 1., 1.);

/* in 3rd row, 6 lines, with dash/dot/dash stipple  */
/* as part of a single connected line strip         */
   //glLineStipple (1, 0x1C47);  /*  dash/dot/dash  */
#if 0
   glBegin (GL_LINE_STRIP);
   for (i = 0; i < 7; i++)
      glVertex2f (50.0 + ((GLfloat) i * 50.0), 75.0);
   glEnd ();
#else
   {
   GLfloat v[14];
   for (i = 0; i < 7; i++) {
      v[2*i] = 50.0 + ((GLfloat) i * 50.0); v[2*i+1] = 75.0;
   }
   glVertexPointer(2, GL_FLOAT, 0, v);
   glEnableClientState(GL_VERTEX_ARRAY);
   glDrawArrays(GL_LINE_STRIP, 0, 7);
   }
#endif

   glColor4f(1., 1., 1., 1.);
/* in 4th row, 6 independent lines with same stipple  */
   for (i = 0; i < 6; i++) {
      drawOneLine (50.0 + ((GLfloat) i * 50.0), 50.0,
         50.0 + ((GLfloat)(i+1) * 50.0), 50.0);
   }

   glColor4f(.8, .8, .8, 1.);
/* in 5th row, 1 line, with dash/dot/dash stipple    */
/* and a stipple repeat factor of 5                  */
   //glLineStipple (5, 0x1C47);  /*  dash/dot/dash  */
   drawOneLine (50.0, 25.0, 350.0, 25.0);

   //glDisable (GL_LINE_STIPPLE);
   glFlush ();
   ugSwapBuffers(uwin);
}