As a java game developer, why do you think that java is used very less in game development?
Software Engineering
Why isn't Java more widely used for game development? [closed]
Asked 11 years, 1 month ago
Modified 8 months ago
Viewed 162k times
85
38
Want to improve this post? Provide detailed answers to this question, including citations and an explanation of why your answer is correct. Answers without enough detail may be edited or deleted.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 6 years ago.
I'm not a game developer or anything, but I know that Java is not very widely used for game development. Java should be fast enough for most games, so where's the catch? I can think of some reasons:
Lack of game developers with expertise in Java
Lack of good game development frameworks
Programmers don't want to accept Java as a games programming language. Most only accept C++ as that?
No support for game consoles (though the PC market still exists)
It could of course be something else. Could someone who knows the business better than me explain why Java isn't getting momentum when it comes to game development?
As a java developer, I think there are several reasons:
In the old days, you needed "direct access" for performance and UI. This predates VM languages like Java and C#.
Most consoles (e.g., 360, PS3) do not have a JVM, so you cannot reuse code from the PC version. It is much easier to compile C++ code to support various devices.
Most mainstream game engines (e.g., Unreal) have C++ bindings. There are some Java connectors (e.g., for OpenGL) but nothing like it.
For PC gaming, DirectX doesn't really have strong Java support (if at all).
Web based games run in JavaScript or Flash. You could write them in Java though using things like GWT.
The iPhone runs an Objective-C variant.
Java is primarily used in Android games these days, simply because it's the primary language for that platform.