views:

800

answers:

6

We're a team of a designer and a programmer. Me, the programmer, is hopeless on design of all sorts, so the user interface of the game must be created by the designer. We were thinking of a main screen, where the character walks around, a small minimap in the top, an inventory section, etc.

All these things would have to be designed in a way that looks pretty, i.e nice graphics/buttons/colors etc. I'm assuming that the designer will create an outline of this interface in photoshop/illustrator, then send me the file in .png or .jpeg format and I'll implement it into the program, making sure the buttons all work, etc.

My question is, is this the correct method for doing this? Should he send me the interface's layout in a .png/.jpeg format, or send me only the buttons and I have to code the rest of the interface manually in java, putting the buttons/icons where they need to be, etc. If so, how can I do this? Any classes/frameworks that do this?

Any guidelines at all will be helpful. Thanks!

A: 

Think up some weird XML format that completely describes the interface and make him create it. :)

Bombe
+2  A: 

take a look at this:

http://www.cs.qub.ac.uk/~P.Hanna/CSC207/lectures/lectures.htm

Alterlife
A: 

The designer will also have to learn something about game development, how to produce textures that will work fine at different resolutions, if it's a platformer, to create sprites that lend themselves properly to animation and so on and so forth.

Answering your question, he'll probably need to do both (send you buttons, sprites, etc. and a global view to see how it all fits together).

I suggest you both check http://www.gamedev.net/reference/ and http://www.gamasutra.com

Vinko Vrsalovic
+1  A: 

It really depends on a few things..Is it for J2ME or are you considering this for desktop (OpenGL/JOGL)?

For J2ME you have to really know a bit about making games for devices with constrained memory. J2ME comes with its own GameCanvas and Sprite related classes that you can utilise. I Would recommend you read up on J2ME game development either through google or buy a book. While there are 3D libraries for the J2ME environment, I have never been impressed by it.

For a desktop based game, I would recommend using some form of accelerated hardware based libraries for 2D or 3D based games. Bit of a steep learning curve but better in the long run. Plenty of libraries out there to help you get started(Jogl and JAva3D for example) You should look into using some called a scene graph, which will help you provide a good foundation to start from. Once again steep learning curve but much easier to maintain and develop with.

In regards to your design/implementation question, it seems you dont have much experience in this area.Generally graphic designers/UI interaction designer will have a better understanding of how to provide an interface for the game. They will generally develop a mock of some sort,you will implement it, a test will be done with user's and feedback will determine where you go from there. If you dont have some form of interaction designer, you or your designers will need to read up on it. Interaction through an interface,especially for games, is not an easy thing, and can make or break your game.

But it seems that you should definitely do some reading up on game architectures before proceeding to implementation phase if you do not have experience in this area. It will help you understand some theory and get a foundation before going ahead and building something which inevitably turns out to be completely wrong.

+1  A: 

You've described one of the primary use cases stated for JavaFX. There's at least one visual design tool already out for it as well. I've also seen articles on this blog that address the idea of taking visual assets from a graphic designer and working with them in an app.

And, of course, you can drop into Java for the heavy lifting at any point.

joel.neely
A: 

I suggest you look at java games which do this already for examples of how this is done. e.g.

http://sourceforge.net/projects/freecol/#item3rd-2

http://sourceforge.net/projects/megamek/#item3rd-2

http://sourceforge.net/project/screenshots.php?group_id=1111

Peter Lawrey