diff options
Diffstat (limited to 'tests/glfw/triangle.c')
-rw-r--r-- | tests/glfw/triangle.c | 108 |
1 files changed, 0 insertions, 108 deletions
diff --git a/tests/glfw/triangle.c b/tests/glfw/triangle.c deleted file mode 100644 index db9d9ab1..00000000 --- a/tests/glfw/triangle.c +++ /dev/null @@ -1,108 +0,0 @@ -//======================================================================== -// This is a small test application for GLFW. -// The program opens a window (640x480), and renders a spinning colored -// triangle (it is controlled with both the GLFW timer and the mouse). -//======================================================================== - -#include <stdio.h> -#include <stdlib.h> -#include <GL/glfw.h> - -#ifdef EMSCRIPTEN -#include <emscripten/emscripten.h> -#endif - -void -iteration () -{ - int width, height, x; - double t; - - t = glfwGetTime (); - glfwGetMousePos (&x, NULL); - - // Get window size (may be different than the requested size) - glfwGetWindowSize (&width, &height); - - // Special case: avoid division by zero below - height = height > 0 ? height : 1; - - glViewport (0, 0, width, height); - - // Clear color buffer to black - glClearColor (0.0f, 0.0f, 0.0f, 0.0f); - glClear (GL_COLOR_BUFFER_BIT); - - // Select and setup the projection matrix - glMatrixMode (GL_PROJECTION); - glLoadIdentity (); - gluPerspective (65.0f, (GLfloat) width / (GLfloat) height, 1.0f, 100.0f); - - // Select and setup the modelview matrix - glMatrixMode (GL_MODELVIEW); - glLoadIdentity (); - gluLookAt (0.0f, 1.0f, 0.0f, // Eye-position - 0.0f, 20.0f, 0.0f, // View-point - 0.0f, 0.0f, 1.0f); // Up-vector - - // Draw a rotating colorful triangle - //glTranslatef (0.0f, 14.0f, 0.0f); - glTranslatef (0.0f, 1.0f, 0.0f); - glRotatef (0.3f * (GLfloat) x + (GLfloat) t * 100.0f, 0.0f, 0.0f, 1.0f); - glBegin (GL_TRIANGLES); - glColor3f (1.0f, 0.0f, 0.0f); - glVertex3f (-5.0f, 0.0f, -4.0f); - glColor3f (0.0f, 1.0f, 0.0f); - glVertex3f (5.0f, 0.0f, -4.0f); - glColor3f (0.0f, 0.0f, 1.0f); - glVertex3f (0.0f, 0.0f, 6.0f); - glEnd (); - - // Swap buffers - glfwSwapBuffers (); - -} - -int -main (void) -{ - // Initialise GLFW - if (!glfwInit ()) - { - fprintf (stderr, "Failed to initialize GLFW\n"); - exit (EXIT_FAILURE); - } - - // Open a window and create its OpenGL context - if (!glfwOpenWindow (640, 480, 0, 0, 0, 0, 0, 0, GLFW_WINDOW)) - { - fprintf (stderr, "Failed to open GLFW window\n"); - - glfwTerminate (); - exit (EXIT_FAILURE); - } - - glfwSetWindowTitle ("Spinning Triangle"); - - // Ensure we can capture the escape key being pressed below - glfwEnable (GLFW_STICKY_KEYS); - - // Enable vertical sync (on cards that support it) - glfwSwapInterval (1); - -#ifdef EMSCRIPTEN - emscripten_set_main_loop (iteration, 0, 1); -#else - do - { - iteration (); - } // Check if the ESC key was pressed or the window was closed - while (glfwGetKey (GLFW_KEY_ESC) != GLFW_PRESS && - glfwGetWindowParam (GLFW_OPENED)); -#endif - - // Close OpenGL window and terminate GLFW - glfwTerminate (); - - exit (EXIT_SUCCESS); -} |