Пример #1
5
static void CALLBACK Paint(void)
{
	glViewport(0,0,windW,windH);
	glDisable(GL_SCISSOR_TEST);

	glPushAttrib(GL_COLOR_BUFFER_BIT);

	glColorMask(1,1,1,1);
	glIndexMask((GLuint)~0);

	glClearColor(0.0,0.0,0.0,0.0);
	glClear(GL_COLOR_BUFFER_BIT);

	glPopAttrib();

	if(mode1)glShadeModel(GL_SMOOTH);
	else glShadeModel(GL_FLAT);

	if(mode2)glPolygonMode(GL_FRONT_AND_BACK,GL_FILL);
	else glPolygonMode(GL_FRONT_AND_BACK,GL_LINE);

	Viewport(0,0); Point();
	Viewport(0,1); Lines();
	Viewport(0,2); LineStrip();
	Viewport(0,3); LineLoop();

	Viewport(1,0); Bitmap();

	Viewport(1,1); TriangleFan();
	Viewport(1,2); Triangles();
	Viewport(1,3); TriangleStrip();
	Viewport(2,0); Rect();
	Viewport(2,1); xPolygon();
	Viewport(2,2); Quads();
	Viewport(2,3); QuadStrip();

	glFlush();

	if(doubleBuffer)auxSwapBuffers();
}
Пример #2
0
static void Draw(EGLDisplay dpy, EGLSurface surf)
{

    glViewport(0, 0, windW, windH);
    glDisable(GL_SCISSOR_TEST);

    glPushAttrib(GL_COLOR_BUFFER_BIT);

    glColorMask(1, 1, 1, 1);
    glIndexMask(~0);

    glClearColor(0.0, 0.0, 0.0, 0.0);
    glClear(GL_COLOR_BUFFER_BIT);

    glPopAttrib();

    if (mode1) {
	glShadeModel(GL_SMOOTH);
    } else {
	glShadeModel(GL_FLAT);
    }

    if (mode2) {
	glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
    } else {
	glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
    }

    Viewport(0, 0); Point();
    Viewport(0, 1); Lines();
    Viewport(0, 2); LineStrip();
    Viewport(0, 3); LineLoop();

    Viewport(1, 0); Bitmap();

    Viewport(1, 1); TriangleFan();
    Viewport(1, 2); Triangles();
    Viewport(1, 3); TriangleStrip();

    Viewport(2, 0); Rect();
    Viewport(2, 1); PolygonFunc();
    Viewport(2, 2); Quads();
    Viewport(2, 3); QuadStrip();

    glFlush();

    if (doubleBuffer) {
	eglSwapBuffers(dpy, surf);
    }
}