Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon Join the GFS Discord Server!
27. June 2017

Defold Engine 1.2.107 has just been released.  The Defold Engine is a Lua powered 2D focused game engine made freely available by King.  If you want to learn more about the Defold Engine, we have a full tutorial series available here.  The 1.2.107 release improves asset pre-loading, texture loading/creation performance and more.

Details from the release notes:


  • DEF-2772 - Added: Async decoding of WebP images
  • DEF-2651 - Added: Async texture GPU upload
  • DEF-2770 - Added: Added LuaSocket documentation
  • DEF-2688 - Fixed: The particle spawn rate spread is now working
  • DEF-2768 - Fixed: Libraries with unusual folder structure crashed Bob
  • DEF-2756 - Fixed: Small improvement on error handling if the generated doesn't compile
  • DEF-2625 - Fixed: Increased buffer used to parse game.project values to 2048


  • We've added a brand new tutorial of how to make a classic 15 puzzle game
  • we've also added documentation for LuaSocket in both editors
  • Lots of smaller fixes

There was also some discussion on features that are currently in the works:

Native Extensions

The work on Windows support is progressing nicely.
The main parts of the build pipeline is functional, with some cleanup left to do.
Planning for a release in the next sprint.

Facebook Gameroom

Another upcoming big feature is support for Facebook's Gameroom.
This will allow you to use Facebook and in app puchases on the Windows platform through their new platform.
This feature is estimated to arrive in the next release.

Particles in GUI

A long awaited feature is support for particles in GUI.
It is a big task with some big refactoring involved, but it is going well.
A recent benefit from this was the batching of particle systems.

One other small part of this release is anonymous usage tracking, something many are surely not going to like.

We have also added anonymous tracking of how the editor is being used* in order for us to better understand our users, help us with prioritisation and improve the product.

(*Clarification edit: it tracks what version is running and what parts of the editor that are used)

People REALLY hate this stuff, myself included, so if it can’t be toggled off, this new feature strikes me as a mistake.

GameDev News

27. June 2017

Starling 2.2 was just released today.  Several new features were added including inverted masks, stronger blurs, binding scale9 grids to texture, async bitmap upload and more.  Starling is an open source game framework for ActionScript (Flash)  offering an easy 2D api with graphics acceleration.  The Starling framework has been used to power several popular games including titles in the Angry Birds series.

Details from the changelogs:

  • added 'DisplayObject.isMaskInverted' (thanks to Ehsan Marufi)
  • added support for stronger blurs with fewer passes to BlurFilter
  • added 'Image.bindScale9GridToTexture' for automated scale9Grid setup (thanks to Kevin Foley)
  • added 'Image.bindPivotPointToTexture' for automated pivot point setup
  • added 'Image.automateSetupForTexture' for automated setup of all the rest ;)
  • added workaround for memory issue on iOS concerning BatchPools
  • added 'padding' to TextField class → allowing injection of 'TextOptions' into TextField
  • added convenience methods and properties to 'Padding' class
  • added 'Painter.setupContextDefaults' and using it in 'DisplayObject.drawToBitmapData'
  • added support for asynchronous bitmap texture uploads (via 'Texture.asyncBitmapUploadEnabled')
  • added support for specifying the alpha value with which the context is cleared each frame
  • added support for overriding 'updateTransformationMatrix' in display objects
  • added methods for quickly checking the current platform in SystemUtil (thanks to Kevin Foley)
  • added 'numSides' parameter in 'Polygon.createEllipse' and 'createCircle' (thanks to Ehsan Marufi)
  • added 'StringUtil.parseBoolean' and using it for XML parsing in TextureAtlas
  • added 'TextureAtlas.addSubTexture' (thanks to Ehsan Marufi)
  • added 'RectangleUtil.extendToWholePixels' and using it to optimize area processed by fragment filter
  • added 'DisplayObject.drawToBitmapData' method
  • added link to new manual to README
  • added iPad support and auto-orientation to scaffold project
  • added 'Field Agent' utility for simple distance field creation
  • added depth test settings to RenderState (thanks to Alexander Mokretsov)
  • added 'styleSheet' property to TextField
  • added color component setter functions to 'Color' class (thanks to Alexander Mokretsov)
  • added 'letterSpacing' property to 'TextFormat' class (thanks to pbalmasov)
  • added 'antiAliasing' property to FragmentFilter
  • changed 'TextField.setRequiresRecomposition' to be public
  • changed that Travis build now always uses the latest AIR SDK
  • changed that Starling now stops with an error if AIR/Flash runtime version is not supported
  • changed 'scaffold_mobile' project to be better suited for current mobile device
  • changed that 'copyFrom' is called before setting the new style in MeshBatch (thanks to Robert Carone)
  • changed IntelliJ IDEA resource utility so it's easier to use
  • changed that 'depthAndStencil' warning is printed out on first use of masks
  • optimized MiniBitmapFont: replaced XML with compressed ByteArray to save space
  • optimized masking: now using depth test to prevent masks from being drawn (thanks to Ehsan Marufi)
  • optimized transformation matrix workflow
  • optimized 'removeEventListener' by avoiding duplicate vector creation (thanks to Josh Tynjala)
  • optimized pushing and popping of state stack in DisplayObjectContainer (thanks to vroad)
  • fixed that objects were not notified if HOVER phase ended due to display list changes
  • fixed possible null reference error in Sprite3D instances
  • fixed that back buffer could be left in unknown state after disabling 'Starling.shareContext'
  • fixed that 'alignPivot' did not force transformation matrix update on Sprite3D
  • fixed that internal 'dispose' was called twice on empty TextField (thanks to 5k0rp)
  • fixed that render context was disposed before the stage (thanks to neuronix)
  • fixed that changing camera settings did not force redraw
  • fixed 'drawToBitmapData' when called on the stage with negative viewPort.x/y
  • fixed that DisplacementMapFilter did not clamp edge pixels
  • fixed that 'copy_resources.rb' script could not handle multiple configurations
  • fixed that helper matrix was not initialized in FragmentFilter (thanks to bwhiting)
  • fixed iPad logic of mobile scaffold
  • fixed that 'Juggler.removeDelayedCalls' didn't remove the id of the delayed call
  • fixed that disposing video texture did not always cut connections to camera and net stream
  • fixed some class references in the API documentation
  • fixed that 'setRequiresRedraw' was not called after resizing native window (thanks to Josh Tynjala)
  • fixed that masking a filtered object with a clipRect did not work
  • fixed exception on rendering of mesh occurring when its style was changed
  • fixed that back buffer sizes below 32x32 lead to an exception (now forcing this minimal size)
  • fixed null pointer exception in Pool.getPoint3D

You can read a great deal more about this release here.  Starling is available for download here.

GameDev News

27. June 2017

Microsoft just launched Win2D version 1.21.0.  Win2D is an immediate mode GPU accelerated 2D library using C++, C# or VB.Net on Windows platforms.  By far the biggest new feature of this release is the ability to draw SVG (Scalable Vector Graphics) graphics. 

From the release announcements:

Win2D version 1.21.0 is now available on NuGet (for Windows 10 or Windows / Phone 8.1) and GitHub.

New in this release:

  • Load, draw, and manipulate SVG (scalable vector graphics) documents  (requires Windows 10 Creators Update)
  • Load and save JpegXR images using extended precision pixel formats  (16 and 32 bit floating point, or 16 bit normalized integer)
  • ColorManagementProfile now supports Simple and Extended types as well as ICC color profiles  (requires Windows 10 Creators Update)
  • Added a CanvasComposition.CreateDrawingSession overload that allows specifying DPI
  • Building Win2D for UWP now requires Visual Studio 2017  (but if you are just using it in an app rather than compiling it yourself, both VS 2015 and 2017 continue to be supported)


  • #479 – CanvasVirtualControl OnRegionsInvalidated not triggered when launching app
  • #486 – Crash when resource loading completes after Canvas is already unloaded
  • #487 – ComputeHistogram does not take into account the SourceRectangle
  • #491 – CanvasControl & CanvasVirtualControl do not disable the accessibility view
  • #496 – Crash in Microsoft_Graphics_Canvas RegisteredEvent::Release
  • #498 – CanvasGradientMesh TensorPatch Colors documented incorrectly
  • #515 – Crash when passing a CanvasCommandList to CanvasImage.SaveAsync

Win2D supports a subset of SVG 1.1. For more details, see Direct2D’s page about SVG support.

Win2D is available on Github as well as NuGet.

GameDev News

26. June 2017

The Esenthel Game Engine has been under development for more than a decade and yet I had never actually tried it before now.  They recently released a Fantasy Tech Demo illustrating recent functionality added to the engine.  After trying out the demo, I decided to give Esenthel a shot.  The following video is a quick hands-on with the Esenthel Game Engine. Esenthel is a C++ powered/scripted game engine with a full editing environment as well as Visual Studio integration.

The Essenthel Engine has a free trial available for download and is available for Windows, Mac and possibly Linux.  The full version is a commercial subscription for 11.40$ a month or 114$ annually.  A source license costs double that amount.


23. June 2017

It’s once again that time of year!  The Steam Summer sale is on, so its time to load up on cheap games that you will probably never actually have the time to play!  In addition to a ton of games however, more and more Game Development related software has been showing up on Steam and as part of the sales.  Do keep in mind however, that most of the items you see on sale will be on sale again. 

The following are a few (somewhat random) highlights of what is currently on sale and of interest to game developers.

There are of course several dozen more programs for sale in the sale.

GameDev News

AppGameKit Studio

See More Tutorials on!

Month List