I'm coming to the end of the development of my game, and I'm wanting to push up the performance. I made it for a mobile phone, then decided I could keep the concept the same and improve the graphics and it'd make a pretty good pc game. So I made it work great as an Applet, but when I want to go high-res and full screen, it doesn't quite cut it.
Almost the only time I ever do anything with Graphics2D in real time is drawImage(Image image, int x, int y, ImageObserver io); and drawImage(Image image, AffineTransform trans, ImageObserver io);
I'm thinking if I use something like LWJGL or JOGL or something I could improve on my draw speeds and keep my frame rate high and constant, but I really don't know what I should do. I'd like to make it pluggable... so I could say... create my own class that determines where drawImage gets redirected to, or something like that. The point being I could switch between software or hardware rendering modes easily.
The game is practically done, I don't need any real logic support from a library. I just want it to manipulate images fast. Oh, and something with good audio support would be nice. I'd love to have a background track along with a heck of a lot of sounds playing at once. Like I'd really be pushing the limit of the number of sounds that could play at one time.
So what library would I need and what resources do I need to look up to learn how to use it? Also, how fast could I implement the graphics portion? The audio portion I'd be putting in from scratch as it doesn't exist in my game yet, but I do have the sounds I want to use (is there a particular audio file format that would be best?). I'd like to think that within a week of daily hard work I could be able to switch between software and hardware rendering modes at the touch of a button and all be well. Is that realistic?
Thanks for any answers
Oh, and to see the current stage of the game, go here (800x600 Applet):http://www.gamelizard.com/test/rimscape.html