Confusing: What graphic tool to start off with.

I have learned the basics of java, and messsed around with it for a while in a console.
Now I would like to get more into making games or applications with graphics.
After some research, I can’t really figure out where to start… I have used the vertexes of openGL11/lwjgl, but I read they are deprecated and shouldn’t be used anymore. (?)
So I’m asking here what would be the best graphic tool for java (2D and/or 3D) to follow tutorials on, and maybe even read a book about?
It doesn’t have to be the simpliest one, but the one that is the most recent with a lot of possibilities, and not deprecated.
Some good links/tutorials or your own experiences are always welcome :slight_smile:
I learn these things in my free time, pure as hobby, so excuse my noobiness :wink:

Thanks for reading,
Hellgast

“Hardcore” way - learn modern LWJGL.

Easier way - learn LibGDX (for 2d) or jMonkeyEngine (for 3d).

I would learn Java’s original graphical stuff just to get introduced to graphical programming but then i would go to libgdx

Thanks both of you, I will probably start with libGDX.

Also,
if you say “modern lwjgl”, what versions of openGL does this include?

There is no something like “proper version” - even when you use OpenGL 4> you NEED to use part of 1.1, too. :wink:

By modern LWJGL I mean VBO and shader based rendering.

Okey,
thanks for helping me out :slight_smile:

If you want to learn modern OpenGL, I can recommend you the following:

  • use lwjgl as OpenGL library (easy to get started)
  • tutorials: mbsoftworks (very good), NeHe
    [list][li]projection-matrix: robertokoci (careful: it’s about DirectX, matrix multiplications differs from OpenGL), songo (mathematical stuff)[/li]
  • overview of OpenGL functions: delphigl (in german)
  • quick reference for shaders: opengl.org (pdf)
    [/list]

edit: Although delphigl is in german, you still can see what function belongs to what OpenGL version. This helps using lwjgl.

Thanks, those links seem like a very good information supply to keep me busy for a while :slight_smile:
I don’t speak german tho, but … ooo well whatever

Don’t forget this :slight_smile:

Hardcore way: learn JMonkey Engine, Blender etc. Don’t reinvent the wheel.

I don’t want to start another flame war but in my humble opinion there is almost no difference between the 2 Java bindings for the OpenGL API impacting the “easiness” to get started (as soon as you understand their respective native windowing tool kits, the rest is very similar) and the most difficult thing isn’t the use of a binding but OpenGL itself. Both have tons of examples ported from C/C++, especially those of the Red Book.

I think if you reinvent the wheel a little bit, you understand the wheel a lot more too, and believe me, understanding where you work with gives nice results, however…

I say, dont start in LibGDX but in Java, and when you mastered normal Java maybe go to LibGDX, you will learn about Java graphics, become more familiar with graphics itself, and then learning opengl/libgdx is peanuts. Java is really really good developed language, so graphics libraries are not necessary for beginners, only confusing…

I agree with Herjan. I’m experienced game developer coming from C++ world (SDL), and I spent time trying to grasp how all libGDX concepts fit together. You have World, Screen, Scene, etc. This goes deep into game-making logic and the way to organize code. libGDX is excellent, but it could be too much for beginner to chew on at once. Better learn basics first. Once you try to create your own classes, you would appreciate what libGDX has to offer.

On the other hand, you can still do the really straightforward stuff with libgdx (like drawing an image and such) without worrying about the more intricate concepts behind libgdx. And that will usually be easier than doing the same thing with pure java, and much more usable in the context of games.