If you don't feel the need to change don't do it.Honestly using LWJGL over LibGDX is just making everything harder unless you really know what you're doing (modern OpenGL and the working of computer graphics in and out), also you won't really see any performance benefits as long as you're only making 2D games from switching to LWJGL.LibGDX is already heavily optimized (not saying it couldn't be better) for what it does plus it has the portability (android, iOS, web, desktop...) that LWJGL lacks, so I would not recommend you to switch.

If you don't feel the need to change don't do it.Honestly using LWJGL over LibGDX is just making everything harder unless you really know what you're doing (modern OpenGL and the working of computer graphics in and out), also you won't really see any performance benefits as long as you're only making 2D games from switching to LWJGL.LibGDX is already heavily optimized (not saying it couldn't be better) for what it does plus it has the portability (android, iOS, web, desktop...) that LWJGL lacks, so I would not recommend you to switch.

I see what you mean however with libgdx I hate how you have to follow with there starter class it just doesn't feel like you have done anything if you understand what I meanand also I want to move to 3d as soon as i can but i will need to learn opengl for java and I thought lwjgl will be for me and also you say libgdx is good for android and ios but I struggle with the aspect ratio but altogether I think lwjgl will be good for me. However im not sure

I'd also recommend you stick with LibGDX, not liking the starter LibGDX classes isn't a very good reason to switch (you could always wrap them with your own API).

With LWJGL you'll have to write your own starter classes and rewrite much of the utility code that LibGDX already provides (which is time you could probably better spend on a game). In any event switching could be a fun learning exercise if you enjoy writing engine/library code rather than actual game code.

Also looking at some reasons why you should use lwjgl rather then libgdx I found a post http://www.java-gaming.org/index.php?topic=28840.0 and "Cero" say "Only reason you would only use LWJGL and not Libgdx is when you already have LWJGL classes and libraries or are not comfortable with the Libgdx ones or whatever"I am not comfortable with libgdx as it just annoys me that none of the code is mine and im using someone elses code

If you don't want to use libgdx, then simply don't use it. Why are you looking for a justification if you don't like it? Another one question. Why do you want to write everything yourself? I understand that rolling your own might be a nice learning opportunity, but if you want to make a game, concentrate on the game. Libgdx doesn't mean you write less code. It means that you can shift your focus to other things, like refining game mechanics, instead of using your valuable time to solve problems that already have been solved a tousand of times.

I'm working on a small game, using libgdx, box2d, box2d lights etc. You can believe me, while I'm using libraries where applicable, there is still enough things to code. And to be honest, it is much more interesting to develop an ai system or pathfinding algorithm, than developing an ui or input system from scratch.

I'm not seeing anything in what the OP is actually doing that justifies anything beyond Java2D/AWT or JavaFX.

Cas

LibGDX is better than Java2D in every way and also easier to use (in my opinion).If he wants to add any kind of advanced effects or postprocessing it's a pain to hack together those in Java2D instead of just using shaders.Also he can pick up some OpenGL on the way that can be useful later.

As others have said if he doesn't want to use LibGDX then don't use it, but he is going to make things harder for himself.There are some other options to look into too like Slick2D or MERCury (the latter one is highly WIP as far as I know).

It's easier to use if you want to do anything remotely fancy but look what the OP is creating.

Well the example is something the OP created. The reason for the post is because he wants to move beyond that. And really you can do anything 2D in Java2D but you have to move on at some point, why not when you aren't too ambitious to overreach yourself in OpenGL straight away. I really don't think more experience with Java2D helps with learning OpenGL.

In terms of LibGDX (used as a general graphics abstraction library) vs LWJGL (used as a general OpenGL binding/windowing library), and this is a general statement not necessarily applicable here: it's all very well saying that using LibGDX makes your life easier because you don't have to cope with learning OpenGL or writing boilerplate code, but someone has to learn OpenGL and someone has to write the boilerplate code. And if you don't then you will never know what you are missing.

I havent missed any lwjgl content in libgdx,if you want to go for modern opengl you have enough to learn If you just want to create desktop-games you can go for lwjgl but anyways I would stick with libgdx, if you want to create gamesYaay if if if if if if

Why not just buy a bunch of logic gates and build a computer from that, in order to build your own kernel, OS, and language?Or wait... you might want to make your own gates.

Enough of sarcasm already. That's far from helpful or constructive.

It's totally understandable that someone who's relatively newbie to programming is afraid of Not-Invented-Here stuff. I did the same when I was newbie and thanks to the fact that I've started to write my own engines and got interested in OpenGL today I've a solid understanding of computer graphics. Yes, 3 years has been spent since then - I have to mention that I was doing game development at a hobbyist level ever until lately, probably that's why it took so long to get here -, but some people spend twice as many years in the game industry and couldn't even write his own spritebatch.

Reinventing the wheel does not reinforce productivity but it can be a helpful learning experience. If making games is what matters to you stick with LibGDX but if you feel like making your own engine for your games go ahead, just make sure not to get stuck at the "making an engine" part.

I will often roll my own solution because (1) I am uncertain of the wider implications of adding Library X to my project, and (2) I'm in a hurry and I can get the basics working quickly, while with the library I have to spend a couple of night comparing alternatives and doing tutorials. But I'm equally happy ripping out my code and adding in the library when I have the extra time to do the thinking and research.

I am not comfortable with libgdx as it just annoys me that none of the code is mine and im using someone elses code

In that case you can't use LWJGL either. You'll have to write your own OpenGL library from scratch.

Really, there's nothing wrong with using these libraries, they don't make you a "lesser programmer". This isn't like graphics or web design where using a template/google images is frowned upon and makes you look like an amateur. I mean hell, look at all the Triple-A titles built up on someone else's 3D engine? It's commonplace to use other people's boilerplate work and build on top of it in the programming world. No one will think any less of you.

In my project, I use Slick2D and Trove. No one thinks less of my project because of it. It saved me countless, and countless hours of boilerplate junk code that would of not had any real impact on the final product's quality. ..and like Cas said, based on the screenshots you provided, you're way over thinking this. You could probably do what you're wanting to do in Java2D/FX if you wanted to. Although I would recommend using LWJGL/LibGDX though. Be silly not to.

Now, if you just want to learn lower level OpenGL code, sure, toss LibGDX aside. But really, unless you want to learn for the sake of learning; don't bother.

Final after-post though: Think of LWJGL, LibGDX, Slick2D, Trove and all the other libraries as "tools". Not "shortcuts".

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