Here is the latest snapshot of the code. Also I am developing on WindowsXP SP2 and using ATI Mobility Radeon 9600 (64MB RAM) as the video graphics card.
Source Code:
###################################################################################include <stdio.h>#include <C:\Program Files\NVIDIA Corporation\Cg\include\GL\glut.h>#define XSCREEN 4 // width#define YSCREEN 4 // heightGLubyte buffer[YSCREEN * XSCREEN * 4];void GLUTInit (int*, char**);void Init (void);void Display (void);void Draw (void);void ReadBack (void);void Error (void);int main (int argc, char** argv){ GLUTInit (&argc, argv); Init (); glutDisplayFunc (Display); Draw (); ReadBack (); glutMainLoop (); return 0;} // mainvoid GLUTInit (int* argc, char** argv){ glutInit (argc, argv); glutInitWindowSize (XSCREEN, YSCREEN); glutInitDisplayMode (GLUT_RGBA); glutCreateWindow ("glReadPixels");} // GLUTInitvoid Init (void){ glClearColor (0.0, 0.0, 0.0, 1.0); glClearDepth (1.0f);} // Initvoid Display (void){ glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); Draw ();} // Displayvoid Draw (void){ glViewport (0, 0, XSCREEN, YSCREEN); glMatrixMode (GL_PROJECTION); glLoadIdentity (); glOrtho (0, XSCREEN, 0, YSCREEN, 0, 1); glMatrixMode (GL_MODELVIEW); glLoadIdentity (); glBegin (GL_QUADS); glColor4ub (127, 127, 127, 1); glVertex2f (0, 0); glVertex2f (XSCREEN, 0); glVertex2f (XSCREEN, YSCREEN); glVertex2f (0, YSCREEN); glEnd (); glFinish ();} // Drawvoid ReadBack (void){ Error (); glPixelStorei (GL_PACK_ALIGNMENT, 1); glReadPixels (0, 0, XSCREEN, YSCREEN, GL_RGBA, GL_UNSIGNED_BYTE, buffer); Error ();} // ReadTexturevoid Error (void){ GLenum errCode; const GLubyte* errString; if ((errCode = glGetError ()) != GL_NO_ERROR) { errString = gluErrorString (errCode); printf ("GL Error : %s\n", errString); }} // Error##################################################################################
Please let me know anyways and I really appreciate your help.
Thanks.
- FMS
Edited to add source tags, please use them in future for large code blocks. See the Forum FAQ for details of the tags in use on this forum
[Edited by - phantom on August 15, 2005 8:26:12 AM]