Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon Join the GFS Discord Server!
12. July 2016


OpenFL, a Haxe library previously known as NME, just released version 4.  OpenFL is a media framework often used for creating games that is designed to give Flash developers a transitional path to Haxe development.  A major component of the OpenFL 4 release is to be more consistent with Flash APIs as well as a commitment to support the Stage3D API.  If you are interested in learning more I wrote a multipart tutorial series on using Haxe and NME before it was rebranded OpenFL.


From the release notes:

New OpenGL Renderer

We went to the drawing board to make a lightweight, clean, easy-to-understand OpenGL renderer in the core of OpenFL. This has resulted in a number of great benefits, not only for maintenance and development, but also this has enabled support for WebGL by default in our HTML5 builds. We have working ShaderFilter support in Bitmap, TextField,DisplayObject and Tilemap, and plan to add support to Sprite in the future.

WebGL builds will fallback to 2D canvas automatically if WebGL is not supported by a user's browser, but if you would prefer to force the use of 2D canvas when targeting HTML5, use -Dcanvas when compiling.

Greater Consistency with Flash APIs

There are many subtle little differences we are changing in order to better support the behavior you expect when using an open-source Flash library. These will not hurt ordinary projects, but can make all the difference when you port an existing ActionScript project over to use OpenFL. We are on the road to continue to remove the tiny differences that unnecessarily make some porting projects complicated.

Commitment to the Stage3D API

In the past, the Stage3D compatibility layer was developed by our friends on the Away3D project, and maintained by generous contributors through pull requests. As an API, this was not supported by the core OpenFL team, but with our new OpenGL renderer, and continuing commitment to providing the functionality you expect, we have begun the process of improving our Stage3D APIs to conform more closely with the original API. We are partnering with the developers of the Haxe Starling port to continue to make improvements to our core Stage3D implementation so that we can grow to support modern ActionScript projects using Stage3D with as little headache as possible.

Continued Graphics Improvements

OpenFL continues to improve in its support for the APIs, with minor edits to improve accuracy, as well as changes to our renderer to support scaled graphics and full fidelity. For projects that are designed for set pixel dimensions, OpenFL 4 is now able to automatically upscale and letterbox projects, bringing full quality graphics to projects that may have been designed only for a lower-resolution screen.


Along with this release there was also an update to Lime, the underlying technology on which OpenFL is built.

GameDev News

12. July 2016


Godot is a popular open source 2D/3D game engine.  If you are interested in learning more I did a closer look review as well as a complete tutorial series.  They just released Godot 2.0.4 in advance of the soon to be released 2.1.


From the 2.0.4 release notes:


  • Many new classes documented! Thanks to all those that got involved after our call for contributors! Feel free to join us as there's still a lot to do, but the progress is heart-warming!
  • Updated libraries: GLEW 1.13.0, libogg 1.3.2, libvorbis 1.3.5, libtheora 1.1.1, libpng 1.5.27
  • Ability to rotate controls using tool
  • Added classes' short descriptions as tooltips in the create dialog
  • Added 'fat' option for bits param on scons for osx, produces a binary containing both 32 bits and 64 bits binaries
  • Added InputMap.get_actions()
  • Change low processor usage mode to cap to 60 FPS rather than 40 FPS
  • Change the default comment color to #676767
  • Debugger: show error message if description is not available
  • Dynamic property list for control margins allowing floating point properties to be used with ratio anchors
  • iOS: added "arch" parameter, made iphone use it to build isim
  • OSX: Key modifiers (Ctrl, Alt, Meta and Shift) may be used as Input keys now
  • OSX export: Default to fat format, make it an enum
  • Prettier str() for arrays
  • Rename CanvasItem.edit_get() to edit_get_state()
  • The create dialog starts collapsed now. The original behavior can be reactivated in the editor settings
  • Various enhancements to the script editor, such as member variables highlighting, breakpoint markers, caret blinking, etc.

Bug fixes:

  • Avoid crash if setting modifiers fails
  • Avoid mirroring to go negative to fix crash
  • Change invalid characters when get user data dir on Windows & Unix
  • Correctly parse utf8 from zip_io open, also fixes issues when exporting or opening android apk files
  • Editor: Fix base dir when going back to project manager
  • Fix a inherited transform bug with Camera2D preview drawing
  • Fix bug in String==StrRange comparison
  • Fix CanvasItem.get_global_transform() andCanvasItem.get_local_transform()
  • Fix crashes in code completion and SamplePlayer
  • Fix error storing path for children of instanced nodes in .tscn
  • Fix errors while exporting to Android
  • Fix File.get_as_text() to return the whole file
  • Fix OpenSSL connections on 64-bit Windows
  • Fix own world option of Viewport
  • Fix parsing of floats in scientific notation
  • Fix several bugs related to node duplication and signals
  • Fix Theora video playback without a Vorbis stream
  • Fix unsaved modifications in scripts being overwritten on filesystem changes
  • Fix visual server error when minimizing the window
  • Fixed ancient bug that prevented proper theme editing
  • Fixed bug using DirAccess in Android Marshmallow due to data dir being a symlink
  • Fixed various bugs with inner classes
  • LineEdit: Fix and improve selection behaviour
  • Make Input Actions config not affect the editor
  • Properly deliver localized coordinates when passing gui events through parents
  • Resolve numerical error when comparing instancing an inheritance to avoid wrongly saving unchanged properties
  • Windows: prevent freeze while moving or resizing the game window.
  • And many other nice changes that we can't possibly list here without boring you to the end of times!

Godot is available for download here.  Stay tuned for the 2.1 release which should arrive any day now.

GameDev News

11. July 2016


The following is a recap of major events in the world of game development for the week ending July 11th, 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

11. July 2016


nVidia just released version 3 of their Gameworks OpenGL/Vulkan samples.  The GameWorks samples is described as:

The NVIDIA GameWorks™ Graphics samples are a comprehensive set of OpenGL, OpenGL ES and Vulkan samples that programmers of all levels can use to bettervulkan2 understand modern 3D graphics techniques and enhance games, simulations and other 3D projects.


New to the 3.0 release are:

  • Vulkan support on Windows, Android, Linux for desktop x86_64 and Linux for Tegra available NOW!
  • Full source code and assets to the popular Vulkan "Fish!" demo
  • Threaded rendering in Vulkan and OpenGL (using AZDO) with matching versions of the Fish demo
  • Additional Vulkan Samples
  • Single-pass Cubemap Rendering Sample
  • Metaball Rendering Sample
  • MSAA with Deferred Shading Sample
  • OpenGL Command Lists Sample

The homepage for the samples is available here.  The source code of the samples is available on Github while the documentation is available here.

GameDev News

8. July 2016


Mesa is a key component of OpenGL support on open source platforms and just announced release 12.0.0.  Major features of this release are Vulkan drivers for Intel chipsets, OpenGL 4.3 support on modern GPUs, OpenGL ES 3.1 support and more.

The 12.0.0 announcement from the Mesa developer mailing list:

It's a real honour to announce Mesa 12.0.0.

This release has massive amount of features, but without a doubt the biggest
ones are:
 - Vulkan driver for Intel hardware from Ivy Bridge onward.
 - OpenGL 4.3 for nvc0, radeonsi and i965 (Gen8+)
 - OpenGL ES 3.1 on nvc0 and radeonsi
 - GLVND support for GLX, OpenGL
 - New gallium software driver - SWR.
 - DRI3 enablement for VDPAU, OMX and VAAPI

 - Gallium radeon drivers (r300, r600 and radeonsi) now require kernel 3.2 and
LLVM 3.6 or later.
 - Building SWR requires python2, since some of the generated files cannot be
distributed as part of the release tarball.

GameDev News

See More Tutorials on!

Month List