Both libGDX and Unity try to solve the same problem.
- How can you write your game once and deploy it to many different platforms.
The differences are:
* Unity is closed source with a company behind it trying to make money. libGDX is an open source project.
* Unity compiles the projects to native code for all the platforms. libGDX mostly does this, with Desktop applications being a Java jar and needing a JVM to run.
* Unity and libGDX both have a large community, but help for Unity problems will be easier to find.
I know that even though both of these engines say you can "write once, run anywhere" that is never the case. There are always weird things on each platform that need to be handled. But does that even matter? If you just want to release on iOS and Android, it is probably nothing to worry about.
Last time I checked, ~50% of all iOS games are made with Unity. Java has been on the decline for years now and isn't getting any better.
I am currently using Unity for prototypes (even though I'm a Java fanboy).
Hope this helps.
Actually i'm impressed with your response .. all of it refers to using libGDX .. but at the end i saw your phrase "I am currently using Unity for prototypes" .. my question is Why ?
although of almost all of your works are built by JAVA and you have a book for 2D games in Java
I am using Unity because I am working on only Desktop games (Mac, Windows, Linux) and I don't want them to need a jvm or have to worry about weird JDK/JVM issues with different versions. I have not used libGDX much but it looks comparable to Unity.
There isn't a "right" answer here. Use what you like. If one is more appealing than another, then go with that.
Thank you so much .. my concern is about the graphic quality in libGDX , i saw the demos in libGDX by comparing the Graphics quality to those made by Unity .. i noticed some difference ? is that related to libGDX or to the design itself ? Also my 2nd concern is about making the animation effects , would it be easy to be done by libGDX like Unity3D ? or i'll face dark way until i do it ?
I'm not that familiar with libGDX, but Unity, for 2d, it doesn't really do anything special, so I would be surprised if libGDX couldn't match it for effects. Though perhaps we should define what you mean by effects? shaders? animation frames? Getting a good artist will make all the difference.
Honestly, if I was doing 2D iOS and Android games, I'd seriously consider Cocos2d