I'm a beginner programmer taking a game programming class here in good ole Seattle. I'm ahead of my assignments and my teacher wanted me to find something to do and I decided that a particle system would be a good occupation of my time since the game I'm desining at the moment is very mega man esque (boy do I really want the charge up effect on his blaster).
So after reading multiple OpenGL tutorials I've found that I could either generate a particle system using instancing or a combination of geometry shaders and transform feedback. I've heard arguments for both, instancing will work on almost every computer but uses CPU side processing and therefore would be slower in a more graphic intensive game (not important to my 2D game at the moment), whilst geometry shaders and transform feedback would provide an immense performance increase by taking advantage of GPU processing and would be more useful to me in the future.
So, which do you guys think is a better idea?