Tuesday, April 15, 2008

Java and Game Development

It really bothered me that a lot of people couldn't run NSR. I knew XNA was exclusive to Windows which I thought was fair enough thinking most people would have access to a copy (or use an emulator). However even if we ignore the non-windows demographic so many didn't have a video card that supported shaders 1.1, what a bummer.

Well while I wait for the end of the exam period and for Zedix and I to have time to fully commit ourselves to our new project I decided to explore java game development. I decided to install Eclipse and use java's own java2d stuff. From what I read it's not the best for game programming, especially when there are APIs dedicated to graphics like JOGL or GTGE, but for what time I have to invest in this project I think it will be just fine.

As far as design goes I figured that I didn't want to divert too far from the way XNA works. Now I know I can't develop something as fancy as XNA (ooh-la-la) but I could design a simple architecture that would emulate the coding feel of it.

Seeing how the major architectural feature that I use in XNA is the drawable component I made an abstract GameComponent class with the basic update and drawing functions. From there I implemented the MainComponent which would hold a list of all updatable and drawable components and iterate through them in every iteration of the game loop.

I'm unexperienced in the whole field of game loops but for how simple my project will be I will simply define a default frame per second (60) and make sure that only one frame can be executed per 1/60 seconds. I'd post some code but nothing in my design is concrete just yet.

Here are a few links that I found useful:

No comments: