[gameprogrammer] Re: Fast development over multiple platforms, which language?
- From: brianevans <brianevans@xxxxxxxxxxxxxxx>
- To: gameprogrammer@xxxxxxxxxxxxx
- Date: Tue, 08 Mar 2005 12:01:10 -0600
>Cause all the game programmers learned C++ in school and when people
>asked them what language they used they said C++ and so all the people
>who wanted to be game programmers learned C++. Nothing to do with the
>language, every thing to do with fashion.
Hey Bob,
I'm not sure I believe that is only because of fashion. It may be more
to do with habit. It was not that long ago that we had sub Ghz processors
and memory was expensive, compared to now. On Win95/98 era hardware
(100-500 Mhz machines, 64-128MB ram), the only choice that made sense for
serious games was C/C++. Java has just recently (2001+ at least ;) )
become viable for games, IMO, because the JVM's have gotten better, and/or
the increase in hardware performance and available memory hides the
performance hit. I would not have considered it viable for any but the
most basic of games in 2001.
I'm not talking about mobile games. Any mobile class game will get laughed
out of the serious PC game arena.
Anyway, that kind of history will lead to reputation and prejudice. Its no
wonder people automatically think C/C++ when considering serious game
programming. And I think when you really get down to it, it is about control.
Correct me if I'm wrong, but given the higher degree of control over memory
in C/C++ it is possible to program with greater memory efficiency than
Java. It is also possible to create memory leaks, but if you only have 64
megs of memory to use, memory efficiency is important. Controlling when to
deallocate memory is important in games (and real time apps especially) so
you don't get hiccups or long pauses while the garbage collector goes to
work. Last time I used Java, that was a problem. Now, with machines
getting a 512-1024 megs of memory, it may not be.
Java also will not give you the control down to the metal. Some people who
really push the edge may require that. I very much doubt Carmack will ever
write a engine in Java. Maybe you will do something that requires
hand-optimized Assembly loops? Maybe the JVM can optimize it enough for
you? Granted, most of us will probably never need that control.
If you're writing a Bejeweled clone, I doubt any of this matters. If you
were writing Quake 2 in 1997, you had to pick C/C++. If you were writing
Quake 2 now, maybe you could use Java. If you were writing Doom 3 now, I'd
think you'd have to use C/C++. But for most of the games most of us can
make right now, it really doesn't matter, though its nice not to have to
worry about a JVM being installed. But then again, it would be nice not to
worry about memory leaks. Ahhh, tradeoffs.
But, ahem, back on topic. There's so many ENGINES out there that really
the discussion should be on what engine to use for rapid development rather
than what language to develop a engine in, or what language a particular
engine is written in. Developing an engine yourself is not rapid game
development. :)
Geez, I write too much.
brian.
---------------------
To unsubscribe go to http://gameprogrammer.com/mailinglist.html
Other related posts:
- » [gameprogrammer] Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?
- » [gameprogrammer] Re: Fast development over multiple platforms, which language?