aboutsummaryrefslogtreecommitdiff
path: root/samples/OpenGL/x11argb_opengl/x11argb_opengl.c
diff options
context:
space:
mode:
Diffstat (limited to 'samples/OpenGL/x11argb_opengl/x11argb_opengl.c')
-rw-r--r--samples/OpenGL/x11argb_opengl/x11argb_opengl.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/samples/OpenGL/x11argb_opengl/x11argb_opengl.c b/samples/OpenGL/x11argb_opengl/x11argb_opengl.c
index a110a9b..41a7ad0 100644
--- a/samples/OpenGL/x11argb_opengl/x11argb_opengl.c
+++ b/samples/OpenGL/x11argb_opengl/x11argb_opengl.c
@@ -23,12 +23,16 @@
\_____/ FTB.
------------------------------------------------------------------------*/
+#define _GNU_SOURCE
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <math.h>
+#include <sys/types.h>
+#include <time.h>
+
#include <GL/gl.h>
#include <GL/glx.h>
#include <GL/glxext.h>
@@ -184,7 +188,7 @@ static void createTheWindow()
KeyReleaseMask;
attr_mask =
- CWBackPixmap|
+ // CWBackPixmap|
CWColormap|
CWBorderPixel|
CWEventMask;
@@ -423,8 +427,10 @@ static void redrawTheWindow()
glEnable(GL_DEPTH_TEST);
glEnable(GL_CULL_FACE);
+#if 0
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
+#endif
glLightfv(GL_LIGHT0, GL_POSITION, light0_dir);
glLightfv(GL_LIGHT0, GL_DIFFUSE, light0_color);
@@ -459,7 +465,13 @@ static void redrawTheWindow()
b = fmod(b+0.5, 360.);
c = fmod(c+0.25, 360.);
+ struct timespec Ta, Tb;
+
+ clock_gettime(CLOCK_MONOTONIC_RAW, &Ta);
glXSwapBuffers(Xdisplay, glX_window_handle);
+ clock_gettime(CLOCK_MONOTONIC_RAW, &Tb);
+
+ fprintf(stderr, "glXSwapBuffers returned after %f ms\n", 1e3*((double)Tb.tv_sec + 1e-6*(double)Tb.tv_nsec) - 1e3*((double)Ta.tv_sec + 1e-6*(double)Ta.tv_nsec));
}
int main(int argc, char *argv[])