Ofcourse some kind of GUI will be needed at some point of the game,
but before displaying buttons,drop-down lists or whatever, you should
first concentrate on the basics of your engine/game.
Cross Platform Game Development
if you're writing from scratch, because it's turn based speed should be your least concern. Personally I would do it in python with like OGRE or the likes as it requires the least knowledge to get going.
But IMHO it's far too early to even care what language you're going to use as it sounds like you don't have a concrete design down. Right now your focus should be making the design as specific as you can. Outline everything that will happen in your game(spare no detail), open up your modelling program/paint program and create some mock-ups of how it will look, and once you have your design fleshed out making decisions on what to use to make the game.
But IMHO it's far too early to even care what language you're going to use as it sounds like you don't have a concrete design down. Right now your focus should be making the design as specific as you can. Outline everything that will happen in your game(spare no detail), open up your modelling program/paint program and create some mock-ups of how it will look, and once you have your design fleshed out making decisions on what to use to make the game.
O.K., I might have to give JAVA a little more thought.
However, I read the relevant parts of this paper:
Evaluating Java for Game Development (PDF)
Noteworthy is the conclusion where it says that tweaked Java code
is usually 20-50% slower than tweaked C++, with big variations
in practise (p. 85). That paper suggests mixing Java with
C++ for game programming to not get more than 22-32% slow down.
But if I have to mix and use C++, I might as well do it all in C++.
While I don't want or need top-notch graphics, I want
a lot of portability even to older and slower systems.
So speed might turn out to be important sometime down
the road.
Yes, it should be turn-based, but only in combat.
While moving, I want it to be able to render entire worlds
(not turn based!) with a lot of distance viewing abilities...
;-) And that's going to boog a LOT of speed in any case.
What's much more important though is that I plan to make
this game open source. And Java is just not generally used
in open source game programming for large projects yet,
at least what I've come to understand so far. It's just not
such a safe bet as C and C++, but I rest the case.
I'll think about it some more though.
So here's my updated cross platform game development
shopping list, just to give this thread some value:
Programming language: C, C++, perhaps (some) Java.
Cross platform libraries / API needed:
OpenGL
SDL
GLUT
Boost
Thanks all again for the tips!
Greetings,
Markie
However, I read the relevant parts of this paper:
Evaluating Java for Game Development (PDF)
Noteworthy is the conclusion where it says that tweaked Java code
is usually 20-50% slower than tweaked C++, with big variations
in practise (p. 85). That paper suggests mixing Java with
C++ for game programming to not get more than 22-32% slow down.
But if I have to mix and use C++, I might as well do it all in C++.
While I don't want or need top-notch graphics, I want
a lot of portability even to older and slower systems.
So speed might turn out to be important sometime down
the road.
Yes, it should be turn-based, but only in combat.
While moving, I want it to be able to render entire worlds
(not turn based!) with a lot of distance viewing abilities...
;-) And that's going to boog a LOT of speed in any case.
What's much more important though is that I plan to make
this game open source. And Java is just not generally used
in open source game programming for large projects yet,
at least what I've come to understand so far. It's just not
such a safe bet as C and C++, but I rest the case.
I'll think about it some more though.
So here's my updated cross platform game development
shopping list, just to give this thread some value:
Programming language: C, C++, perhaps (some) Java.
Cross platform libraries / API needed:
OpenGL
SDL
GLUT
Boost
Thanks all again for the tips!
Greetings,
Markie
Quote:Original post by CableGuy
Just to clarify, most 'professional' games are not cross-platform.
Most professional games are cross platform. The majority of console games are not exclusives, and the majority of PC games are either written for Windows/Mac or (more often) Java/Web based titles that are written in cross-platform languages.
Most independent/hobby games and some core/hardcore games are not cross-platform. Console exclusives are not cross-platform (unless they are limited exclusives, like the GTA games) Most of the rest of them are.
You're planning on making an FPS, and you want cross platform? Sounds like you need Torque. You'll still need to take a year or two and learn how to write the code, but this is a well documented engine (and there are complete books on it on Amazon) that was designed for first and third person shooters (it was originally used for Tribes 2, and has full network/multiplayer support). Finally, it's really cheap for a full featured game engine.
Good luck!
First of all, ye who knows not "HTML (with variables)" need not critique other REAL programming languages (ie. fix your link).
Secondly, we're in 2007 and that paper was written in 2002; over 5 years ago. Java technology has matured and improved since then. (by the way, I'm pretty sure the author is a member here. so he can, officially, set his own record and findings straight)
Third, I'm not trying to bust your chops too hard but you have to be more objective when comparing, analyzing, and assessing programming languages or anything IT, CS, CE, and/or SE related. (ie. a favorite among the GameDevvers is: (s-expression vs. XML); oh happy days [smile])
Secondly, we're in 2007 and that paper was written in 2002; over 5 years ago. Java technology has matured and improved since then. (by the way, I'm pretty sure the author is a member here. so he can, officially, set his own record and findings straight)
Third, I'm not trying to bust your chops too hard but you have to be more objective when comparing, analyzing, and assessing programming languages or anything IT, CS, CE, and/or SE related. (ie. a favorite among the GameDevvers is: (s-expression vs. XML); oh happy days [smile])
If you check out the screenshots on wxWidgets' webpage you'll see the type of GUI it provides. It provides cross-platform GUI controls for business applications, ie windows, buttons, scrollbars, tab controls, textboxes etc. All the things you take for granted when using your operating system. When creating a game you usually only have a single window and all your GUI is drawn with your graphics engine in that window.
You have a pretty decent list there, it should get you started. You'll probably end up throwing in a few more libraries in there though.
The best advice I can give on C++ is to be very very very rigorous. Always make sure that your approach is a good one, if not the best. Always double-check your code, it's worth the time you save trying to debug later on when a small error creeps in. Whenever using libraries always check the references carefully to make sure you're using it correctly and that your assumptions are true.
I wish you the best of luck on this journey! [smile]
You have a pretty decent list there, it should get you started. You'll probably end up throwing in a few more libraries in there though.
The best advice I can give on C++ is to be very very very rigorous. Always make sure that your approach is a good one, if not the best. Always double-check your code, it's worth the time you save trying to debug later on when a small error creeps in. Whenever using libraries always check the references carefully to make sure you're using it correctly and that your assumptions are true.
I wish you the best of luck on this journey! [smile]
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement