I am creating an application with multiple viewports. I was researching methods as to how I could store multiple projection matrices and all I found was the glPushMatrix and glPopMatrix functions which don't seem to be adequate for what I need (although I may be wrong). Would computing the individual projection matrices each frame give a large performance loss? If so then what method can I use to store and recall them? If I have to use the aforementioned functions then could I please have an example of the implementation. I understand that the projection matrix stack can store a maximum of two matrices on some hardware. How would I circumvent this? Thanks.