c8705d5052b5b64ea32e2811069123967ff1408f
21 for (iter
= 0; iter
< 20; iter
++) {
22 GLint p
= (iter
% 6) + 4;
25 GLubyte data
[512*512*4];
26 GLubyte data2
[512*512*4];
30 printf("Testing %d x %d tex image\n", w
, h
);
32 for (i
= 0; i
< w
* h
* 4; i
++) {
37 glTexImage2D(GL_TEXTURE_2D
, level
, GL_RGBA
, w
, h
, 0,
38 GL_RGBA
, GL_UNSIGNED_BYTE
, data
);
45 glGetTexImage(GL_TEXTURE_2D
, level
, GL_RGBA
, GL_UNSIGNED_BYTE
, data2
);
48 for (i
= 0; i
< w
* h
* 4; i
++) {
49 if (data2
[i
] != data
[i
]) {
56 glutDestroyWindow(Win
);
64 glClear(GL_COLOR_BUFFER_BIT
| GL_DEPTH_BUFFER_BIT
);
73 Reshape(int width
, int height
)
75 glViewport(0, 0, width
, height
);
76 glMatrixMode(GL_PROJECTION
);
78 glFrustum(-1.0, 1.0, -1.0, 1.0, 5.0, 25.0);
79 glMatrixMode(GL_MODELVIEW
);
81 glTranslatef(0.0, 0.0, -15.0);
86 Key(unsigned char key
, int x
, int y
)
92 glutDestroyWindow(Win
);
103 glTexParameteri(GL_TEXTURE_2D
, GL_TEXTURE_MIN_FILTER
, GL_NEAREST
);
104 glTexParameteri(GL_TEXTURE_2D
, GL_TEXTURE_MAG_FILTER
, GL_NEAREST
);
105 glEnable(GL_TEXTURE_2D
);
110 main(int argc
, char *argv
[])
112 glutInit(&argc
, argv
);
113 glutInitWindowPosition(0, 0);
114 glutInitWindowSize(400, 400);
115 glutInitDisplayMode(GLUT_RGB
| GLUT_DOUBLE
| GLUT_DEPTH
);
116 Win
= glutCreateWindow(argv
[0]);
117 glutReshapeFunc(Reshape
);
118 glutKeyboardFunc(Key
);
119 glutDisplayFunc(Draw
);