Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon
11. December 2016


LibGDX, the cross platform Java powered open source game framework, just released version 1.9.5.  This release is mostly about upgrading under the hood libraries and tooling support including GWT, RoboVM and LWJGL version updates.  The release is also compatible with iOS 10 and Xcode 8.  If you want to learn more about LibGDX we have a comprehensive tutorial series available here as well as a video tutorial series available here.


Details of the update from the release announcement:

- Upgraded to MobiDevelop's RoboVM fork version 2.3.0, update your[sic] 
- Upgraded to GWT 2.8.0 for faster compiles and better compile output
- Fix NPE swallowing "video driver unsupported" error on LWJGL 2 backend.
- Allow window icons to be set in Lwjgl3ApplicationConfiguration or Lwjgl3WindowConfiguration.
- Allow window icon and title to be changed in Lwjgl3Window
- API Addition: ApplicationLogger interface, allowing easier access to custom logging
- DefaultRenderableSorter accounts for center of Renderable mesh, see
- Bullet: added FilterableVehicleRaycaster, see
- Bullet: updated to 2.85, see:
- Updated iOS native build scripts to iOS 10.1 and TVOS 10.0
- API Addition: BitmapFont#blankLineScale.
- Fixed rounding of Drawables in ProgressBar. Allow rounding to be disabled with setRound().
- Updated LWJGL3 backend to LWJGL 3.1.0, see
- LWJGL3 backend now supports non-continuous rendering, see
- API Change: Lwjgl3WindowListener.refreshRequested() is called when the windowing system (GLFW) reports contents of a window are dirty and need to be redrawn.
- API Change: Lwjgl3WindowListener.maximized() is called when a window enters or exits a maximized state.
- API Change: Lwjgl3WindowListener.deiconified() removed, combined with .iconified().
- API Change: Lwjgl3Window.deiconify() renamed to .restore() since it can also be used to de-maximize a window.
- Lwjgl3Window now has a maximize() method, and windows can be started maximized using the window or app configuration's setMaximized() method.
- NinePatch can now be drawn rotated or scaled.
- NinepatchDrawable is now a TransformDrawable.
- API Change: Group add* methods no longer remove and re-add the actor if it is already in the group, instead they do nothing.
- API Change: g2d.Animation is now generic so it can support Drawables, PolygonRegions, NinePatches, etc. To fix existing code, specify the TextureRegion type in animation declarations (and instantiations in Java 6), i.e. Animation myAnimation = new Animation(...);
- TiledDrawable throws unsupported operation if trying to draw rotated/scaled. #4005
- API Change: DragAndDrop now puts default position of drag actor at pointer location. The original default offset from the pointer was (14, -20).
- Added ShaderProgramLoader for AssetManager.
- BoundingBox#isValid now returns also true when min==max, see:

For details on updating your LibGDX project to the latest version see here.

GameDev News

8. December 2016


Epic have released a hotfix for Unreal Engine, 4.14.1.  Composed entirely of fixes, over 50 issues were revolved.


The hotfix consists of:

Fixed in 4.14.1
Fixed! UE-35609 Delay nodes used in a macro cause subsequent macro calls during the delay to never complete
Fixed! UE-38690 Regression - Nested scene component subobjects are no longer being registered when the owning scene component is added to an existing Actor instance as an instanced component.
Fixed! UE-38835 Rename "Visual Studio '15'" to "Visual Studio 2017"
Fixed! UE-39298 UE4 and UnrealLightmass fail to build Module.SwarmInterface.cpp due to an error trying to open include file 'metahost.h' in SwarmInterface.cpp
Fixed! UE-39284 Running GenerateProjectFiles.bat -2017 completes with warnings
Fixed! UE-38898 UE4 is not compatible with Visual Studio 2017 RC
Fixed! UE-38604 PS4 Platform Staging copies debug files (not allowed)
Fixed! UE-38992 [CrashReport] UE4Editor_Core!FString::Mid() [unrealstring.h:1154]
Fixed! UE-37249 MallocPoisonProxy can result in a memory stomp for aligned allocations in Debug and Development
Fixed! UE-38991 [CrashReport] UE4Editor_Engine!FUObjectAnnotationSparse<FBoolAnnotation,1>::AddAnnotation() [uobjectannotation.h:76]
Fixed! UE-38752 Cannot Delete Folder Containing Sub Folders from Content Browser
Fixed! UE-38721 Mouse cursor position is locked to center of screen when bShowMouseCursor is false
Fixed! UE-38599 User Defined Struct Editor Hides Long Variable Lists
Fixed! UE-38706 Dropdowns display incorrectly in non 1:1 zoom in BP on Mac and PC
Fixed! UE-38806 Potential fatal assert when using a custom MID with a TextRenderComponent
Fixed! UE-39059 No scrollbar in Structure UI
Fixed! UE-39198 Limited range of motion when controlling the camera view with the mouse
Fixed! UE-11796 Deleting folders in the Content Browser will not delete them permanently from Project Folder
Fixed! UE-38925 Reimport for a single FBX with multiple meshes will add all mesh pieces instead of the single mesh.
Fixed! UE-38935 Crash with FBX Import as Skeletal Mesh
Fixed! UE-38749 Pressing enter does not appear to activate OnClicked events in UMG When a button is focused
Fixed! UE-37698 Widgets can no longer take focus after clicking somewhere other than the widget itself
Fixed! UE-36766 Crash attempting to open an asset from Aim Offset graph in Persona
Fixed! UE-38811 Camera attached to a Spring Arm jitters when put at a +90 or -90 degree angle on the Y axis.
Fixed! UE-38906 Crash when streaming in a level with a child actor
Fixed! UE-38518 Animation Blueprint: Default values cannot be changed after compiling if node is currently selected
Fixed! UE-39197 Delay node of 0.0 causes crash
Fixed! UE-39137 Crash when Dragging Skeletal Mesh with Apex Clothing into Level
Fixed! UE-38998 [CrashReport] UE4Editor_Engine!UMaterialInterface::GetBaseMaterial() [materialinterface.cpp:268]
Fixed! UE-38716 Physics are popping in Vehicle Advanced Template
Fixed! UE-38989 [CrashReport] PhysX3PROFILE_x64!physx::PxcDiscreteNarrowPhase() [pxcnpbatch.cpp:293]
Fixed! UE-38694 Landscape Grasstype warning causes log spam when landscape is streamed in or out
Fixed! UE-39278 Assertion failed: !LandscapeActor || LandscapeActor == Landscape
Fixed! UE-38900 Paper2d Plugin Content Missing from Content Browser
Fixed! UE-39120 ETC2 Android devices are no longer supported in the Google Play Store as of 4.14
Fixed! UE-37101 Xbox One: Issues updating texture subregions
Fixed! UE-35738 IPv6 implementation is not working on IOS
Fixed! UE-39420 QAGame crashes when launched onto Android
Fixed! UE-38709 Using Deferred Decal Material With Dbuffer Decal Enabled Crashes Editor
Fixed! UE-38223 Crash In Material Editor When Previewing A Node
Fixed! UE-39051 Engine crash when Scene Capture Component 2D is added to viewport with forward rendering
Fixed! UE-39123 Mac Editor crashes when opening Realistic Rendering sample - FMetalRHICommandContext::RHISetShaderUniformBuffer
Fixed! UE-38609 DFAO runs out of memory on xb1 (DX11 RHI) due to an RHI bug
Fixed! UE-38699 Material Expression comparison keys incorrect, produces duplicate code
Fixed! UE-38325 Tangent Update Feature Not Working
Fixed! UE-38768 Contact Shadow artifacts with ray lengths despite length
Fixed! UE-34264 Procedural Mesh Component Crashes on XB1
Fixed! UE-39132 Crash when adding actors to the level
Fixed! UE-38353 Crash while deleteing a UMG Animation Track referencing a deleted UMG asset with duplicated BSPs in-scene
Fixed! UE-39067 Oculus Touch controllers jitter when the gamethread runs quickly
Fixed! UE-39113 Post process material needs a full RT clear with hmd mask.
Fixed! UE-39122 Crash when Simulating in Editor after Painting Foliage
Fixed! UEVR-381 Interleaved Compositor: Execute init views before late update
Fixed! UEVR-379 Interleaved Compositor: Implementing Post-Present handoff
Fixed! UE-38670 New IsA() code can be thread-unsafe during saving

You can read more about the release here.

GameDev News

7. December 2016


The following is a recap of major events in the world of game development for the week ending December 7th, 2016.  I do a weekly video recapping the news available here with this week’s video embedded below.  This post is a collection of links mentioned in the recap.


The Video


GameDev News

7. December 2016


Microsoft have just released a new version of TypeScript.  TypeScript is a superset of JavaScript that ultimately compiles down to JavaScript.  It adds several features to the JavaScript language, acting as a bridge of sorts until the new version of ECMAScript is released.  The most important feature is the type system, thus the name TypeScript.  TypeScript aims to solve several of the problems JavaScriptimage developers face as their code becomes more complex.  If you want to see TypeScript in action in game development, I used it for our Phaser tutorial series.


So, what new features does TypeScript 2.1 bring to the table?

  • downlevel async functions
  • object rest & spread
  • keyof and Lookup types
  • mapped types
  • Partial, Readonly, Record and Pick types
  • easier imports


Of course many of those additions probably make very little sense without a bit of description.  Thankfully the Microsoft blog thoroughly documents all of these new features.

GameDev News

7. December 2016


Following fast on the release of Unity 5.5, Unity 5.5.0P1 was just released.  As always the patch is available for download here.  As should be expected after a new major release, there are a number of fixes and improvements in this patch.


  • Graphics: An assert message is now shown in the console for platforms that don't support linear rendering with OpenGL ES API.
  • macOS/iOS/tvOS: Enhancement to allow developers to use Xcode's manual signing paradigm by specifying a provisioning profile in Player Settings.
  • Metal: Improved handling of transparent rendering after post-opaque image effects when using MSAA.
  • Shaders: Optimized in-editor import, load time and memory usage for shaders with massive amounts of potential variants.
  • Unity Ads: Updated native binaries to version 2.0.6.
  • (855550) - Test Runner: Removed script templates for test runner (as it is not released).
  • (833396) - AI: Fix for "!InCrowdSystem" and "!handle.IsValid()" errors seen in console when calling Warp and enabling a disabled NavMeshAgent.
  • (854739) - Android: Fixed auto-rotation on Android 4.1 and older.
  • (845646) - Android: Input.backButtonLeavesApp = true now exits gracefully.
  • (824462) - Android: The platform setting for Android plugins now defaults to "Android" instead of "Any Platform".
  • (793711) - Asset Import: Fixed an issue where deleting asset labels manually from .meta files would not be picked up by the editor.
  • (668043, 837519) - Asset Pipeline: Fixed an issue where asset and timestamp maps could get out of sync.
  • (741525) - AssetBundles: Fixed redundant asset bundles rebuild when external dll changes.
  • (853618) - Build Pipeline: VR Splash Screen texture will no longer be included when building a project for a non-VR platform.
  • (836131) - Collab: Fixed case of sign-in window getting stuck when launched from the toolbar menu.
  • (791434) - Core: Fixed hangs in the job system when running on certain platforms with a low number of cores e.g. older Windows Phones, UWP dual core machines.
  • (849022) - Editor: Fixed case of some properties being set to a single value when entering multi select mode for Trails and Lines.
  • (849138) - Editor: Fixed disappearing tab when closing 3 or more of them successively.
  • (857037) - Editor: Fixed NullReferenceException when undocking preview window.
  • (833866) - Editor: Tweaked the output of the generated Visual Studio solution file to better match Visual Studio standard format, in order to fix problems opening Unity generated projects with Rider GUI.
  • (805221, 605171) - Graphics: Disabled GPU skinning on GL and GLES based graphics APIs for desktop & mobiles.
  • (821298) - Graphics: Fix to ensure that ETC1 alpha split option only shows for ETC1 4bit format in texture importer.
  • (846989) - Graphics: Fixed a crash during shutdown when using the DX9 graphics API.
  • (829120) - Graphics: Fixed a problem where the Windows standalone would appear on a different display from that selected in the game launcher.
  • (840897) - Graphics: Fixed a problem with objects not rendering after resolution changes or entering/exiting fullscreen when using DX9 graphics API.
  • Graphics: Fixed case of the Windows player build being disabled when using linear rendering and OpenGL ES graphics API in the editor.
  • (849671) - Graphics: Fixed lightmap decoding in the editor when the target platform is mobile.
  • (823371) - Graphics: Fixed the GPU Profiler to work in the MacOS Editor using the GLcore graphics API. Can only profile a single game window whilst it is in play mode.
  • (825046, 824894) - Graphics: Fixed warped lens flare and halo effects when not in stereo.
  • (850383) - IL2CPP: A more useful error message is now returned from IL2CPP when trying to build a WebGL project with the Facebook SDK.
  • (852445) - IL2CPP: Added proper support for a class that is marshalled as a field of another class or struct, including the proper return value for a call to Marshal.Sizeof in this case.
  • (846956) - IL2CPP: Added support for managed stack traces on Android.
  • (849701) - IL2CPP: Corrected a crash that can occur in the player when a virtual method is called on a value type and that value type implements an interface which has an overload of that virtual method.
  • (845666) - IL2CPP: Corrected managed stack traces when Xcode 8 is used to build on iOS with link-time optimization enabled.
  • (847838) - IL2CPP: Fix to prevent a compiler error in generated C++ code when calling Interlocked.CompareExchange from some managed code.
  • (845174) - IL2CPP: Fix to prevent a stack overflow exception in the player at run time when an infinitely nested generic method is used.
  • (853468) - IL2CPP: Fixed an issue with attribute classes that have overridden properties.
  • (849072) - IL2CPP: Implemented the array SetValue method for arrays of nullable types.
  • (851098) - IL2CPP/Android: Fixed issue where the error output from the compiler/linker was not captured.
  • (820587) - Lighting: Fixed a problem with reflection probes updating during runtime even when "Refresh Mode" was set to "Via Scripting".
  • (812479) - Multiplayer: Fixed InvalidOperationException when selecting NeworkManager in Hierarchy for the first time.
  • (719672) - Networking: Fix to prevent using a packet size greater than defined in global config.
  • (837602) - Particles: Added animation support for simulation speed property.
  • (849084) - Particles: Fixed occasional crash when using external forces module.
  • (835334) - Physics: Continuously setting Rigidbody2D 'bodyType' or 'IsKinematic' to the same value should not cause contact recalculations; this can cause instabilities.
  • (850059) - Physics: Fixed an accuracy issue where a capsule would jitter and bounce erratically after being placed on top of a scaled mesh at specific locations when the PCM collision mode was enabled.
  • (853163) - Physics: Scaling a CapsuleCollider2D using a Transform component scale in X or Y of zero in the inspector no longer causes a warning in the console.
  • (801761) - Prefabs : Fixed an issue where a prefab instance could be incorrectly marked inactive when first loading a scene.
  • (836589) - Profiler: Fixed isse where taking a detailed memory snapshot did not work in some circumstances.
  • (759338) - Scripting: Fixed case of WaitForSeconds waiting forever when receiving NaN as the parameter.
  • (850350) - Scripting: Fixed MonoDevelop build errors when building UnityScript and Boo projects.
  • (825418) - Shaders: Automatically upgrade any shaders using unity_SpecCube1. This fixes unity_SpecCube1 related shader compile errors after a project upgrade.
  • Shaders: Fixed a problem when compiling shaders using windows style directory separator ("\") in #include paths and compiling on MacOS.
  • (814063, 812479) - Shaders: Fixed a rare problem on DX11 with NaNs happening during the depth pass of forward rendering mode, resulting in shadow artefacts.
  • (844355) - Shaders: Fixed a shader compiler crash for shaders which had extra "}" tokens in them.
  • (825408) - Shaders: Fixed crash when compiling very complex surface shaders. Optimised the memory usage during surface shader compilation.
  • (829162) - Substance: Fixed case of ProceduralTexture inspector preview sometimes showing invalid size and format.
  • (840177) - Substance: Fixed case of SubstanceArchive inspector unselecting ProceduralMaterials after being renamed.
  • (842999) - Substance: Fixed crash when loading a substance with corrupted data,
  • (840181) - Substance: Fixed issue where the emission shader parameter was not properly set on import when emission global illumination was set to realtime.
  • (819300) - UI: Fixed jittery movement when scrolling ScrollRect.
  • (826626) - UnityWebRequest: Fixed case of incorrect Content-Type request header for multipart form data in POST requests.
  • (851921) - UnityWebRequest: Fixed case of POST requests not working with empty data.
  • (850018) - UnityWebRequest: Fixed issue where escaped characters in URL would get unescaped.
  • (657131) - VCS: Fixed null reference exception that could occur after resolving an asset (e.g. prefab) whilst the asset is selected and displaying in the inspector.
  • (824508) - VR: Fixed a memory leak when using a canvas and VRFocus is lost.
  • (851967) - VR: Fixed an issue where only the shadows from the first light would render in both eyes when using single pass instancing.
  • (851891) - VR: Fixed case of error shader rendering in one eye only when using single pass instancing.
  • (845179) - VR: Fixed crash when checking for Stereo VR Device during build.
  • (822480) - Windows Store: Fixed duplicate assembly warning when building Universal 8.1.
  • (820871) - Windows: Fixed issue where Application.systemLanguage would return the region language rather than the UI language.

Correct me if I am wrong here, but didn’t Unity just blow their naming convention.  Should the patch version not be 5.5.1p1?  As in, it’s the first patch on the way to the 5.5.1 release?

GameDev News

AppGameKit Studio

See More Tutorials on!

Month List