Hi,
First, let me introduce myself, as this is my first topic. I’ve been reading the forums for some time now, never posted a question or answered one, but have been around for some time. I’m from Portugal, so if any if there is any Portuguese out there feel free to say hi 
I’m a student, finishing my bachelor degree in computer science, and have learned to program using games, most of my classes asked us to make some kind of game to teach us something about programming. So, games are something I like, a lot!, and, currently, am starting a small project to create various games using Java, as this is my favorite language of all. But I’m facing some questions that I would like to your help with.
I have no problem with Java, what I have some problem is understanding where to begin.
I have a small game I want to write, it will feature some elements running from one end of the screen to the other, most likely some sharks, that the user needs to stop before they get to some treasure/food/whatever. The game is very simple and, as I don’t have any graphics, I’ll most like use any image that will allow me to test the game and learn.
So:
- should I use a game engine, and if so what are your suggestions?
- I’ve read some topics about lwjgl and I’m stating to read more on the official page, I understand it is aimed at 3D games, is it also useful for 2D games? Are there any immediate problems with the library, like multiplatform issues? Or I’m is it also good for 2D games?
- any good tutorials out there, that explain how and why to structure the code instead of the ins/outs of Java language, some that would offer solutions to common problems like performance, image flickering, optimizing dirty rectangles, etc.
- I want to use Swing on some games, mostly because it fits better than creating my own menus, is there any problem I should be aware of?
- any advices that you can offer?
I’m going to follow the Space Invaders tutorial, from www.cokeandcode.com, maybe some questions will be answered there, mostly I have no idea how to start creating the games I want.
Thanks for reading the all thing 



