Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon
21. July 2019


The cross platform open source Java based game framework libGDX just released version 1.9.10.  If you are interested in learning libGDX we have a comprehensive tutorial series available here and a video series available here.  While the tutorials are a few years old, libGDX is a mature framework that has stayed relatively stable over time, so they should still be perfectly valid.  This release updates several of the dependencies to newer versions as well as an update to the Gradle build system.

Highlight details of the release include:

  • GWT update to 2.8.2
  • MobiVM release 2.3.7
  • Lwjgl 3.2.1
  • Lots of QOL and bug fixes for GWT backend
  • Better iOS backend customization
  • PixmapPacker features like NinePatch and whitespace stripping
  • InstancedRendering support via Mesh and InstanceBufferObjects
  • SCENE2D (Standard tweaks and improvements across the board)
  • Gradle updates to latest

Full release notes and details are available here.

GameDev News


23. October 2017

LibGDX have just released version 1.9.7.  LibGDX is a popular open source Java based game framework, although releases have been somewhat infrequent of late.  We have extensively covered it in the past with text and video tutorials available here and here if you are interested in learning more.  This release includes several compatibility upgrades including iOS 11 support, RoboVM 2.3.3 support, a bump up to LWJGL 3.1.3 and several improvements and features.  Be aware that in order to support LWJGL code breaking changes were made to the GLFrameBuffer class.


Details from the release notes:

- Update to MobiVM(RoboVM) 2.3.3

- Add iOS 11 support

- Update to Lwjgl 3.1.3

- Update to MOE 1.4.0

- API Change: GLFrameBuffer has been refactored https://github.com/libgdx/libgdx/pull/4882. Create standard FrameBuffers with static methods. Customized FBOS with FrameBufferBuilder

- API addition: Tiled group layer support

- Fix Tiled properties, offset parsing for image layers

- API addition: Added utility methods for Vector equals with epsilon

- Fix Animation backing array type

- Fix Mesh copying with 0 indices

- Fix restoration of pooled particle effects scale

- Fix loss of controller listeners on reconnect

- Added basic kotlin project generation support in the setup tool

- API addition: Allow APK expansion to be used in fragments and activities

- API addition: Added color properties support from tiled maps

- API Change: Added rotation vector sensor support on Android

- API Change: GLProfiler refactored for OOP and lwjgl3 multi windows

- LWJGL3: The creation of additional windows via Lwjgl3Application.newWindow() is now deferred, with postRunnable(), until all existing windows have been updated. This fixes a potential native crash with NVidia GL drivers on Windows, presumably caused by a GL context conflict.

- API addition: Lwjgl3WindowListener.created() is called after a new window has been created. It's unsafe to call Lwjgl3Window functions in between Lwjgl3Application.newWindow() and this callback.

- Updated LWJGL3 backend to 3.1.3.

- Lwjgl3Graphics.setUndecorated() and Lwjgl3Graphics.setResizable() now delegate their work to the respective GLFW functions.

- API addition: ProgressBar.isVertical() - returns whether a progress bar is vertical or horizontal.

- API Change: SplitPane now by default does not allow the split amount to shrink children below their minimum sizes (cropping them). This behavior can be reverted by overriding clampSplitAmount or wrapping the children in Containers set to minSize(0) and fill(). SplitPane also now correctly includes the handle min size in its own min size calculations.

- API Change: SplitPane.getSplit() renamed to SplitPane.getSplitAmount() to match other getter and setter names.

- Improved internal Timer synchronization.

- API Change: List#drawItem, added float width parameter.

- API Addition: Make it possible to disable sound on the GWT-Backend with disableSound=true.

- API Change: ScrollPane setWidget deprecated in favor of setActor to match other APIs.

- API Change: removed JGLFW backend

- Fixed mixed up use of TexturePacker.Settings.stripWhitespaceX|Y.

- Added joystick POV support to LWJGL3 controller backend.

- Added support for 2d particles sprite animation.

- API Change: ParticleEmitter getSprite, setSprite, getImagePath, setImagePath are now getSprites, setSprites, getImagePaths, setImagePaths.

- Added support for 2d particles independant scale X and Y.

- API Change: ParticleEmitter getScale, matchSize are now getScaleX/getScaleY, matchSizeX/matchSizeY. Added scaleSize(float scaleX, float scaleY)

GameDev News


21. August 2016

 

LibGDX just released version 1.9.4 composed primarily of bug fixes.  LibGDX is a cross platform Java based 2D/3D game framework.  If you are interested in learning more we did a Closer Look at LibGDX review.  Additionally there is a full tutorial series available both text based and video based.

 

While not exactly a massive release, here are 1.9.4’s release notes: 

 

[1.9.4]
- Moved snapping from ProgressBar to Slider to prevent snapping when setting the value programmatically.
- Bullet: added btSoftBody#getLinkCount() and btSoftBody#getLink(int), see https://github.com/libgdx/libgdx/issues/4152
- API Change: Wrapping for scene2d's HorizontalGroup and VerticalGroup.
- Fix hiero problem with certain unicode characters. See https://github.com/libgdx/libgdx/issues/4202
- Switched to RoboVM fork 2.2.0, fixes incompatibility with Android Gradle plugin and iOS 9.3.4
 

There were several other bug fixes that can be viewed on the Github commits

 

LibGDX is available for download here.

GameDev News


25. July 2016

 

BDX can best be though of as a mashup between Blender and LibGDX, a game engine built on top of the LibGDX framework, directly integrated inside the Blender application.  This enables you to create levels directly in Blender and take advantage of Blender features such as physics, but code your game using Java and LibGDX.  I took a look at a very early version of the engine available here and it’s come a long way since.

 

Version 0.25 is primarily a bug fix release, but brings some new features to the table.  From the /r/gamedev announcement:

 

  • Render-to-texture is now supported.
  • GameObjects can now be invisible on select cameras, simply by adding a reference to the GameObject to the camera's "ignoreObjects" list. This, when combined with render-to-texture support, allows for some nice shader effects.
  • Texture loading and texture switching on Materials is now supported.
  • A new Mesh class has been added, allowing you to easily alter vertex information for GameObjects' meshes.
  • Fog / mist is now fully supported.
  • Support for a Viewport has been added to allow you to tweak how your game scales onscreen.
  • Many bug-fixes, and other tiny added features.

For more detail, see the commit log over on GitHub.

 

It’s a cool engine, one I highly recommend you check out if Blender is core to your workflow.

GameDev News


16. May 2016

 

There was a new release of the popular open source Java based LibGDX game framework today, version 1.9.3.  If you are interested in learning more about LibGDX I have done extensive tutorial series covering it available here.  This series brings a number of small changes, but by far the biggest update is on iOS compatibility, which I will get to in a moment.  First the changes:

[1.9.3]
- Switched to MobiDevelop's RoboVM fork (http://robovm.mobidevelop.com)
- Addition of Intel Multi-OS Engine backend for deploying to iOS
- Updated iOS native build scripts to iOS 9.3 and TVOS 9.2
- API Addition: GestureDetector#pinchStop() called when no longer pinching
- API Addition: Gdx.graphics.setUndecorated/setResizable API added to Graphics https://github.com/libgdx/libgdx/pull/3847
- API Addition: Gdx.graphics.getGLVersion(), grab the GL version and implementation type. https://github.com/libgdx/libgdx/pull/3788
- API Change: Lwjgl3WindowListener -> filesDropped(String[] files) adds drag'n drop support for the lwjgl3 backend
- Added isComplete() to ParticleEffect to make it easier to know when all the emitters are done, behaves the same as in the 2D API.
- API Change: renamed Lwjgl3WindowListener.windowIsClosing() to closeRequested() to better communicate its intent.
- Add IndexData.updateIndices method to increase performance when used with IndexBufferObjectSubData. 
- Added FlushablePool
- Added ShapeCache see https://github.com/libgdx/libgdx/pull/3953
- API Change: moved shape builder logic out of MeshBuilder, see: https://github.com/libgdx/libgdx/pull/3996
- API Change: Table reset now calls clearChildren, not clear.
- Fixed crashes in AndroidMusic.java when isPlaying is called. Errors are now logged only rather than crashing the app.
- Added emulation of ScreenUtils for GWT
- Improved performance of glReadPixels() on GWT. New method is 20-30 times faster
- Fixed crash on Mac when using LWJGL2, custom cursors and embedding the game in an AWT window
- Fixed getDisplayModes(Monitor monitor) returning wrong data on LWJGL2 backend
- Fixed Gdx.input.getCurrentEventTime() not being set on LWJGL3, fixes GestureDetector and flick scroll not working
- Fixed not being able to select non-latin characters in TextFields
- Bullet: added CustomActionInterface, see https://github.com/libgdx/libgdx/pull/4025
- Add window size limits option to LWJGL3 app and window configurations
 
 

Perhaps the biggest component of the 1.9.3 release is how they are handling iOS support.  As you may recall the technology they relied on for iOS support, RoboVM, recently was killed off by Microsoft.  This left the LibGDX team in a bit of a bind and they found not one, but two solutions.  The first is a new RoboVM like technology from Intel called Multi-OS Engine (Moe?) and the second is to go back and fork the last known good version of RoboVM and bring it up to date.  Both have some advantages and drawbacks that are discussed on the LibGDX blog.

GameDev News


GFS On YouTube

See More Tutorials on DevGa.me!

Month List