It is possible to render the scene and save it to hard disk. Are you using OpenGL or DirectX or ... I think you are not coding low level functions or you wouldn't be asking this? If you use OpenGL you can use
void glCopyTexSubImage2D(GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint xCoordinate,
GLint yCoordinate,
GLsizei width,
GLsizei height)
(Precise description about this function can be found from for example
http://molt.zdv.uni-mainz.de/doc_link/en_US/a_doc_lib/libs/openglrf/glCopyTexSubImage2D.htm#F2uDp1fcbolt)
to get your scene into OpenGL texture and then use
void glGetTexImage(GLenum Target,
GLint Level,
GLenum Format,
GLenum Type,
GLvoid *Pixels)
(Precise description about this function can be found from
http://molt.zdv.uni-mainz.de/doc_link/en_US/a_doc_lib/libs/openglrf/glGetTexImage.htm
Google search :)
to get pixels into your own array of same type as OpenGL texture (RGB or RGBA or indexed color or whatever type it is)
Then you can save your array into a file.
At least I think it should work this way. If I am wrong about something, then please let me know, I am also in the middle of game creation, but I am not so familiar with OpenGL as I would like to be.
Anyway I hope it helps you.
XLoom