   2d with Ortho "zoom"
  For the record, I'm using (and trying to fully comprehend) the 2d code out of this fantastic post: link.Say for instance I want to emulate zooming in and out from what ever I've drawn while in 2d mode? Is there a way to do this? I've tried putting glTranslated(0.0,0.0,(GLdouble)z) in various places of my code and I see *no* change. However, if I give glTranslated an x or y value, I can see it shift left or right, up or down.If I translate with a value of z that exceeds the z-bounds set by glOrtho, what I've rendered disappears...suggesting it's doing *something*. I've boosted the bounds for z to some substantial levels, and translates of some absurd levels have nil effect.Is the "camera" shifting along the z axis with my translate?? I'm at an utter loss here.Thanks.   
  Ortho projection is a box (unlike the pyramid you'd usually use), so translating in z does not scale the image (unless you translate outside of your z bounds, in which case your image disappears as you have noticed.) The function you are looking for is probably glScale. Try scaling in x and y, I suppose this is a "fake" kind of zoom but it should give the results you want.   ;  To reiterate: the whole _point_ of ortho/parallel projection is that it is NOT perspective and z doesn't matter for anything but clipping and/or "layering".A typical way of zooming (which I consider way more useful than just "going closer" or scaling) is to change the projection to show a smaller region. Which is pretty much how zooming on cameras work. You see less, but as it still has to fill the whole viewport it will look bigger. And the benefit is that you can't go so close or scale so much that it will be clipped.If you want 2x zoom and your projection (x) was set to 0-800 you change it to 200-600. And if you want to completely go nuts, set it to 399-401.Short: if you want to zoom, then don't go closer and if you want to go closer, then don't zoom.   ;  OH GOD this will work like a charm. (glScale)Thanks a ton, my friend.   ;  the correct way of doing a zoom isglOrtho( L * zoom, R * zoom, T * zoom, B * zoom, .. )scale can screw things up eg lighting   