I am in the process of making a simple 2d game engine. My original setup consisted of a JFrame with a Canvas and then using .getVSyncedBufferCaps() option when creating my buffer strategy to get smooth 60fps in windowed mode. I draw all my stuff to an int array which is tied to a buffered image which then gets drawn. I've been reading more and more and even though its not really an issue anymore there is this debate about mixing AWT and Swing components. [snip]
Swing is basically meant for GUI's - built on top of AWT. And AWT is there to give you basic tools for drawing stuff. Also, Swing components are double buffered (uses a buffer strategy, if you will) by default. Swing uses its own thread to draw stuff iirc and so you should use/override its update/paint/paintcomponents - all of which serve a specific purpose. [HINT: Read the Swing Manual)
This is more of a learning experiment anyways as I try to understand and learn the nuances of Java.
It's not really much of a learning experiment in Java - only a meddling with the dark arts of Swing.
If it ain't broke - don't fix it.