If somebody believes the Earth is flat, I guess there is no convincing them otherwise. But that doesn't mean I'm going to shut up about the Earth being round. Catch my drift?

Laziness has nothing to do with this equation. Ignorance and stubbornness, yes.

EDIT: I should note, Java2D isn't a bad library, in fact it's a really solid 2D rasterizer and has spawned a pretty incredible GUI toolkit. But if you aspire to learn modern graphics programming, or you want to spend more time making games and less time writing boilerplate, or you want a platform that will deliver reliable performance, then Java2D is not the best choice. Of course, at the end of the day, you can choose whatever platform you want -- be it Java2D, or LibGDX, or even Brainf**k.

If somebody believes the Earth is flat, I guess there is no convincing them otherwise. But that doesn't mean I'm going to shut up about the Earth being round. Catch my drift?

Laziness has nothing to do with this equation. Ignorance and stubbornness, yes.

You don't have to shut up about it. But don't bother other people with your pointless argument (even if you are right).If they want to believe the Earth is flat, they can. It doesn't effect anything for 99.9999% of people anyway.

EDIT: in response to your edit.

Thank you for seeing what I was really trying to get at:

You can't force other people to do things like you.

The use-existing-wheel vs. make-own-wheel argument does not effect making games. Just judge the game by the game itself, not by looking at how they were created.

I am 15 and for me it is much easier to use Java2D to begin with, because, like a lot of people here have already stated, I can find simplistic, easy to follow answers to my problems with code that is easy to follow.

These libraries such as libGDX etc probably do have a ton of advantages, but the thought of having to write a lot of lines of code for the simple things is extremely daunting.

Counter-Argument:

Just like the time when I used XNA two years ago. The framework was solid and yes, I needed to write a couple more lines that necessary but after learning it once, I could do it. I'm sure these libraries are probably the same and are more than likely well worth looking into and using, but until they come with the support required by newbies( like me ) they won't be used by newbies, for now.

Bold:Um, no. Java 2d is not simplistic (at least swing isn't). It takes way to many lines to do anything

Completely off topic, but why do people use slick2d? It is deprecated, under managed and kind of plainly sucks.

Uhh, masteryoom, you might want to know what you're talking about before you talk about it. Why is Java2D simple? Because it provides only basic features. Lines of code != simplicity. Slick2D may be a bit outdated but there is no way it is as bad as Java2D.

Swing is just about the easiest GUI library you'll ever use. It's easy - frame, panel, etc., pre-coded layouts. I mean, with libgdx, scene2d is about the same, but with tableLayout or TWL - you actually have to know the stuff.

Also, what is with you and copying HeroesGraveDev? First you mirror his project name and posts, now this.

I have great respect for all computer languages. OpenGL, Java, JavaScript, C++, etc. There is one problem though...

None of these technologies were originally made for game creation. You heard me right... none of them. We are essentially using these technologies in an attempt to create games. There lies potential to create really good games out of Java2D, just like there lies great potential to create good games out of OpenGL, C, BASIC, or Python.

I, personally, would like to see a healthy community creating games, regardless of the platform. What people use to create those games is irrelevant. I am just happy that people are choosing Java to create these games, and in reality, that is what people on a "Java" forum is supposed to be promoting.

Remember this thread. Java has a lot of bad publicity from the other languages as it is. I think as a community, we owe quite a lot to the Java Programming language.

Not a lot of experience of it anywhere yet - certainly no pro-level games made. It looks good at what it does but ultimately it's still a user interface paradigm rather than a game rendering one - it's there to replace Swing rather than raw Java2D blitting.

There's a Canvas node in JavaFX 2.2. I haven't used it yet, but it looks like there isn't anything you can do with Java2D that you can't do with JavaFX. Reference here. There's also support for image operations now.

So yeah, Java2D over OpenGL makes sense for people new to graphics. Java2D over JavaFX, not so much. You get better performance out of the box, nice effects, audio and video support, a very clean and sensible API, both retained and immediate mode rendering, a scenegraph that performs transformations, culling and render-caching the way it should.

JavaFX scares me. I haven't tried it at all, it's just by this time I expect Oracle to come up with things are bad. I could easily be wrong I suppose.

Likewise. It has too much of a 'second system syndrome' smell to me, where it's allegedly going to fix all the problems of both Swing and AWT, as well as having a scripting language and a gui tool, whilst simultaneously trying to be a flash-beater, Unity-beater and OpenGL-beater. Oh and it's internal to Oracle so it could implode and vanish without any warning.

Funniest thing I've read catching up on this thread - you're kidding right? Java2D is probably the most featured library mentioned - that's why it's slow. It's a general, all-purpose graphics library, so it's not a surprise that it can be outperformed by things that are more specialist. What I've learnt from coding Praxis' software pipeline, and from using the (unfortunately defunct) PulpCore, is that even a specialised software renderer will often outperform Java2D over a limited range of features.

JavaFX 2.0 does not have a scripting language, it is part of the JDK, it ships with all current JDKs and JREs on the big three platforms, and the source is in the openjfx tree in the openjdk repo. Probably missing some video codecs because of IP bullpucky, but the rest is there.

I know that I am personally using Java2D because I want to make a game that does not need any extra libraries. Sure its not too bad to add extra jars, but having natives gets a bit annoying. I tried using LWJGL and kept getting UnsatisfiedLinkErrors claiming wrong ELF type. No such thing with Java2D. Sure the Java2D api is a bit annoying, but all it takes is a little wrapper class (i.e. a Sprite class) and you never have to worry about it again. The main concern, and the one why I am considering switching to LibGDX is performance with a bunch of rotated images. It works nice and smoothly until I had 10 simultaneously rotating images, then it just started stuttering.

I know that I am personally using Java2D because I want to make a game that does not need any extra libraries. Sure its not too bad to add extra jars, but having natives gets a bit annoying. I tried using LWJGL and kept getting UnsatisfiedLinkErrors claiming wrong ELF type. No such thing with Java2D.

Something like LibGDX streamlines the process for you. They have a GUI tool where you select the folder to save your Eclipse project, and then when you open it in Eclipse it "Just Works."

Anyways... It's your funeral. At the end of the day, almost everybody who is serious about game development and has given both Java2D and LibGDX a try will not prefer to use Java2D. Not only is it less performant and more verbose, but it ports to less platforms and includes zero utilities that almost all games will need (game loops, GUI, input polling, bitmap fonts, asset management, texture atlases, animated sprites, particles, physics, tiled maps, or whatever).

but having natives gets a bit annoying [snip] The main concern, and the one why I am considering switching to LibGDX is performance with a bunch of rotated images. It works nice and smoothly until I had 10 simultaneously rotating images, then it just started stuttering.

libgdx handles native loading for you, so you'll never have to deal with it. libgdx can display 50,000+ rotating sprites at 60fps on an average desktop computer -- your code must have been doing something terrible, such as loading a new image each frame.

but having natives gets a bit annoying [snip] The main concern, and the one why I am considering switching to LibGDX is performance with a bunch of rotated images. It works nice and smoothly until I had 10 simultaneously rotating images, then it just started stuttering.

libgdx handles native loading for you, so you'll never have to deal with it. libgdx can display 50,000+ rotating sprites at 60fps on an average desktop computer -- your code must have been doing something terrible, such as loading a new image each frame.

java-gaming.org is not responsible for the content posted by its members, including references to external websites,
and other references that may or may not have a relation with our primarily
gaming and game production oriented community.
inquiries and complaints can be sent via email to the info‑account of the
company managing the website of java‑gaming.org