
LibGDX 1.0 released - octopus
http://www.badlogicgames.com/wordpress/?p=3412
======
sdfjkl
For those as ignorant of the Java/Android scene as me:

 _LibGDX is a game-development application framework written in Java with some
C /C++ components for performance dependent code. It allows for the
development of desktop and Android games by using the same code base. It is
cross-platform, supporting Windows, Linux, Mac OS X, Android, WebGL enabled
browser and iOS._ \--
[https://en.wikipedia.org/wiki/Libgdx](https://en.wikipedia.org/wiki/Libgdx)

------
pplante
I found LibGDX to be an incredible framework to quickly iterate with. I really
miss working with it as much as I did in 2012. The core developers are some
really great guys who are always willing to lend a hand. I probably wouldn't
have finished Droid Towers if it wasn't for their continued encouragement.

------
Kaedon
Good timing! I just started working with libGDX yesterday with my little
brother. We decided it would be better to use it than roll our own Java
framework and I think that was the right choice. It's been fairly straight-
forward to work through the install and demo game located here:
[https://github.com/libgdx/libgdx/wiki/A-simple-
game](https://github.com/libgdx/libgdx/wiki/A-simple-game)

------
bmoresbest55
I used this framework back on version 0.95 for a school project. We started
late (of course) and got stuck on an API call that we could not figure out.
Emailed a dev at like 10 or 11pm and got a response. Act of heroism...

~~~
Uehreka
It wouldn't happen to have been an Asteroids clone with motion controls, would
it?

------
Rezo
LibGDX is a lot of fun to work with, and a great way to target both Android
and iOS with the same code base.

What you might not have thought of, is that you don't have to limit yourself
to games. I created a successful productivity app entirely in LibGDX
(shameless plug,
[https://play.google.com/store/apps/details?id=com.absoluteat...](https://play.google.com/store/apps/details?id=com.absoluteattention.timer)).
Features common in games and LibGDX, such as the very good performance and the
rich animation capabilities can add a bit of flair to an otherwise boring app
and make it stand out from the crowd.

I see that with the 1.0 release, you can now even embed a LibGDX fragment into
your otherwise 'native' Android app. I can see this being very useful for apps
where you want to have your animated custom gauges and widgets surrounded by
the native OS chrome.

~~~
hedron
I found the most powerful feature is that you can create an app without a need
to deploy it to a real device over and over again. It saves a lot of time even
creating a multi touch game like Sum and Blossom
[https://play.google.com/store/apps/details?id=com.carrotfiel...](https://play.google.com/store/apps/details?id=com.carrotfield.sumandblossom)

~~~
Rezo
I agree fully, it's a huge productivity win. I built a small layer that
simulates or at least stubs out all the device-only APIs for the desktop
target; switching resolutions & DPI dependent assets (works), loading
translated strings from Android XML files (works), opening the marketplace
(stub), setting alarms and timers, etc.

I estimate I spent 99% of the development time on the desktop target with a
redeployment cycle of just a few seconds, and only test on the device
occasionally.

------
aaronsnoswell
Been working with LibGDX since 2010 - I still remember buying the Newton
physics game on my Motorola Droid. This was the best 2D Android game engine
back then, and it still is in my opinion :) Congrats to the devs!

------
chaghalibaghali
I recently managed to release my first game
([https://play.google.com/store/apps/details?id=com.thomshutt....](https://play.google.com/store/apps/details?id=com.thomshutt.bom))
using LibGDX and it really was a pleasure to work with - lightweight and not
too opinionated, but with some nice abstractions over the more fiddly aspects
such as out of the box Desktop/Web/Android/iOS support, input handling, app
lifecycles etc.

------
z3phyr
I would love to use this with clojure!

~~~
Jach
You can. [https://github.com/libgdx/libgdx/wiki/Using-libgdx-with-
Cloj...](https://github.com/libgdx/libgdx/wiki/Using-libgdx-with-Clojure)
(Bounce Away is a pretty fun game that uses both.) The problem I'm waiting for
someone else to solve though (and maybe I'll just make it a side-project one
day...) is a more idiomatic Clojure interface to LibGDX. Something like PyGame
would be pretty sweet too, though PyGame is wrapped around SDL and the whole
"blitting" pattern of getting stuff to the screen (which doesn't care if
you're writing functional, oop, or procedural code) doesn't really work
outside of 2D games.

~~~
georgeoliver
wait no more (I haven't tried it)? [https://github.com/oakes/play-
clj](https://github.com/oakes/play-clj)

~~~
gw
Thanks for mentioning my project. I just updated it tonight to support 1.0!

------
nubbee
I'd love to see a benchmark between LibGDX and OpenFL to test if either is
noticeably faster on the various platforms they support.

------
mentos
Great framework, great developers! Really enjoyed reading the summary of their
past 4 years, sounds like it was a really great ride.

------
gagege
If you're interested in an entity-component architecture for game development,
here's a nice example project to get you started with learning how to do it.
It uses libgdx for graphics and Artemis
([http://gamadu.com/artemis/](http://gamadu.com/artemis/)) for the entity
component system:

[http://code.google.com/p/spaceship-
warrior/source/browse/src...](http://code.google.com/p/spaceship-
warrior/source/browse/src/com/gamadu/spaceshipwarrior/#spaceshipwarrior)

------
jokoon
looks like a really big effort to make developing on android a better
experience, by clumping libs together, rather than just a game engine. I was
not able to find out if the scene2d thing has a partitioning algorithm of some
sort. Maybe It's irrelevant for an android device ?

Seems like good stuff though. Sadly I don't really "like" java...

~~~
terhechte
You can use any of the JVM languages with libgdx, such as Clojure, Scala,
Kotlin even JRuby [1]

[1] [https://github.com/mickey/libgdx-jruby-
exemple](https://github.com/mickey/libgdx-jruby-exemple)

~~~
jokoon
I've often considered C++ as a mandatory requirement for game development.
Java is fine though, but I just don't use it, and if I have to choose between
java and C++, I go for C++...

~~~
marktangotango
I've often considered Assembler as a mandatory requirement for game
development. C++ is fine though, but I just don't use it, and if I have to
choose between C++ and Assembler, I go for Assembler...

What a difference two decades makes eh?

~~~
omarhegazy
It really depends on what you're doing. Triple-A games and most graphically
advanced 3D games pretty much require you to use C++.

~~~
FreezerburnV
And assembly. I've heard from my boss (who did games a while ago at a very
notable company that still makes very well-known Triple-A games) that when
they were making a sequel to their first game, getting an assembly programmer
who really knew the CPU pipeline increased the performance of their graphics
pipeline by 40-50%. (at least) I would imagine that modern games continue to
need people who can program extremely optimized assembly, especially for
consoles.

------
omarhegazy
My favorite part about 1.0 is Gradle. No more Eclipse! Time to start writing
my games in Emacs, maybe even Sublime Text ...

Great fucking work, guys! Congratulations.

------
tosinaf
It's a really good framework, just need to give it a chance.

