void drawtiles(int nx, int ny) { int x, y; float xf, yf; char sub[16]; int osnapno = snapno; snapno = -1; xf = 2*(mysiz * xt/yt) / nx; yf = 2*mysiz / ny; for(y = 0; y < ny; y++) { for(x = 0; x < nx; x++) { glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glViewport(0,0,xt,yt); glMatrixMode(GL_PROJECTION); glLoadIdentity(); glFrustum(xf*(x - .5*nx), xf*(x+1 - .5*nx), yf*(ny-1-y - .5*ny), yf*(ny-y - .5*ny), mysiz*focal, farclip); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); drawstars(); glMultMatrixf(aff); drawall(realtope,phase); if(msg) messages(); sprintf(sub, ".%02d.%02d", y, x); snapshot(sub); glutSwapBuffers(); } } snapno = osnapno; }