0
\$\begingroup\$

I am starting a 2D side scroller, tile based RPG sort of game in Java. I do have lots of knowledge in Java, so that's not a problem, but I have NO experience in game development, at all. I had found a couple of books / tutorials and I am trying to decide between using LWJGL or doing everything myself. What do you guys suggest?

Thanks!

\$\endgroup\$
3
  • \$\begingroup\$ What do you mean by "doing everything yourself"? The only thing lower than using OpenGL/LWJGL is writing your own software renderer and that is not (usually) part of making a game. If you want to make a game I don't think even LWJGL is even a good choice for you, you should probably find a 2D framework for Java and use that. \$\endgroup\$
    – Luke B.
    Oct 13 '13 at 4:52
  • \$\begingroup\$ Well I mean using the built in Java drawing methods etc would not be using LWJGL right? That is what I meant when I said "do everything myself." Which frameworks do you recommend? One reason I was leaning towards LWJGL was because if I ever wanted to start 3D development, I would have had prior experience with LWJGL. \$\endgroup\$ Oct 13 '13 at 5:12
  • 1
    \$\begingroup\$ I posted and answer to your question. Just a minor nitpick tho: Java's drawing functions are actually higher level than OpenGL, so you woudn't be actually doing everything yourself, but using what is already there. OpenGL on the other hand does very little, using it would be closer to doing everything yourself. \$\endgroup\$
    – Luke B.
    Oct 13 '13 at 5:31
1
\$\begingroup\$

For a beginner? I can't see any advantage besides learning OpenGL (which is always useful).

OpenGL (and by extension LWJGL) is hard, does your game NEED the extra power you can get from OpenGL? If your goal is to make a game, just make a game and use whatever is the easiest/most simple tool. Don't waste time trying to understand OpenGL.

On the other hand, if making the game is not actually your priority, you just want an excuse to learn something new, try OpenGL. It is very powerful and you will learn a lot about what happens behind the scenes, but very little of your learning will be oriented towards making games.

\$\endgroup\$
1
  • \$\begingroup\$ The game that I am making does not NEED OpenGL or LWJGL at all, it is fairly simple. I actually thought that using something like LWJGL would provide for more fine "details" that make the game look nice (fog, glow, etc.), but I suppose I can do those with native java. \$\endgroup\$ Oct 13 '13 at 6:22
0
\$\begingroup\$

I can only give you advice from experience but I suggest starting off by using Java2D (awt & swing libraries). By doing that you'll learn a lot of the basic core concepts which frameworks such as Slick2D and LibGDX do for you, such as creating the main loop, sub-pixel rendering, timesteps and so on. You'll also have to think for yourself when you get to creating tile based maps and more complex things, as there isn't much information that can spoonfeed you.

I would suggest using the LibGDX framework for a 2D side-scroller though once you've done the above, because of the features it inherits off the LWJGL.

Don't rush through things. Be a perfectionist. Then once you're confident, move on to 3D if you like. That might be a good time to use the LWJGL.

I think this might be a good question to read.

\$\endgroup\$
0
\$\begingroup\$

I created my first Java game (a 2d platformer) using just simple Java (I think the graphics tutorial was at "Thenewboston") and when it started to lag, it wasn't really difficult to switch to LWJGL. You won't need to chnage any game logic, but only the function that draws the sprites.

\$\endgroup\$

Not the answer you're looking for? Browse other questions tagged or ask your own question.