Porting Doom to Java
While Java has grown enormously over the years, the fundamentals have stagnated.
The motivation for this talk and underlying project, was the following question: why is Java, with it’s 20 years of age, and (at least)6 billion running JVM’s not a major player in the video-game development universe?
So everybody knows the Doom games, right? Every new installment brought brand new ideas, and groundbreaking graphics. But more importantly, they brought the source code of the prior installment to the public eye.
Naturally, people have played and hacked the code to oblivion, as much as they played the games themselves. And I have the honor to be one of those people.
I (naively) endeavored to port the Doom 3 C++ code to our fantabulous Java. In doing so, I hoped to learn, among other things, more about 3D graphics. … what I didn’t expect though, was for djoom3(cool name huh!) to teach me more about Java!?
Aside from the basic game development intro, this talk focuses on the following:
- Some areas where Java should learn from its nemesis, C++.
- Other areas where the student(Java) becomes the master(C++).
- And some promises that were made, but never kept.
Mahmoud Abdelghany likes to tinker around with games and emulators. Most recently, he has spent about ~3 years on the djoom3 project, and interestingly enough, he thinks he has learned more in those ~3 years than the rest of his ~15-year career.
Die Folien zum Vortrag findet ihr auf Speakerdeck