Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon

13. May 2016


One of the challenges with prototyping games is finding assets to work with.  Simple boxes are fine, but if you are working on a game with animations this proves a bit more challenging.  Therefore I created a simple sequence of spritesheets you can use in your game.   The package includes an idle, walk cycle, jump up and forward, death and duck animations.  This animation shows all of the various frames of animation.  The character was created using Fuse then animated using Mixamo and finally exported to sprite sheets using TexturePacker.



There are several different options here. 


Raw Sprites

( Download Link 18MB )

These are all of the raw sprites as individual files, each sprite is 512x512 pixels in size.


Phaser Sprite Sheets

( Download Link 13MB )

This is a set of sprite atlases and a JSON Array format for consuming in the Phaser game engine.  (See below for code)


Generic Sprite Sheets

( Download Link 14MB )

This is simply all of the frames of animation across several separate images, usable in any game engine.



CC0 icon These files are released under the Creative Commons CC0 license.  Basically do what you will, how you will, when you will, with whomever you will.  I on the other hand assume no responsibility for anything that may happen as a result.


Using In Code

The following is a example of using the generated spritesheet in Phaser, a popular HTML5 game library.  The entire project is available here as a zip.  If you are interested in learning more about Phaser I have a complete tutorial series available here.

function Game() {}

var character;

Game.prototype.preload = function () {'walkSS','assets/walk.png','assets/walk.json', Phaser.Loader.TEXTURE_ATLAS_JSON_ARRAY);'dieSS','assets/die.png','assets/die.json', Phaser.Loader.TEXTURE_ATLAS_JSON_ARRAY);'idleSS','assets/idle.png','assets/idle.json', Phaser.Loader.TEXTURE_ATLAS_JSON_ARRAY);'jumpForwardSS','assets/jumpForward.png','assets/jumpForward.json', Phaser.Loader.TEXTURE_ATLAS_JSON_ARRAY);'jumpUpSS','assets/jumpUp.png','assets/jumpUp.json', Phaser.Loader.TEXTURE_ATLAS_JSON_ARRAY);'rollSS','assets/roll.png','assets/roll.json', Phaser.Loader.TEXTURE_ATLAS_JSON_ARRAY);

Game.prototype.create = function () {
  this.input.onDown.add(this.onInputDown, this);
    character =,0,'idleSS',0);

Game.prototype.update = function () {};

Game.prototype.onInputDown = function () {

module.exports = Game;


All of the binaries used to generate this project, including the FBX animations, a fully configured Blend file, etc. are available for download by Patreon backers.  Simply log in to your Patreon account for the download link and password.


13. May 2016


Amazon just added Substance Integration to their Lumberyard game engine in the form of an extension.  Lumberyard is Amazon’s fork of CryEngine released several months ago.  You can see Lumberyard in action in this video.  Substance is a pair of products from Allegrothimic composed of Substance Designer and Substance Painter.  They enable you to recreate real world materials for physically based rendering (PBR) and is proving extremely popular among texture artists.  Substance Painter was featured in our GameDev Toolbox series earlier if you want more details.


Amazon announced the new extension on their blog:

To enable the Lumberyard Substance Editor tool, go to your Project Settings inside the Project Configurator and select “Enable Packages” on the top right. This will let you enable the Substance extension for your project.

Working with .sbsar files within the Lumberyard Substance Editor grants many advantages over standard workflows. Ceramic tile textures, for example, could have sliders for adjusting the size of tiles, how they’re arranged together, and how they’re lined up. In the editor, you can make changes to these variables and see the results update in real time. To do this, use the editor to import your .sbsar file, which will then generate a .smtl (our file format for Lumberyard Substance materials) and .sub files (Substance textures). When selecting your .sbsar file, you’ll see your Substance file’s exposed settings as well as all the textures that can be generated from it.

From the Lumberyard Substance Editor, you can also change parameters at run-time using Lumberyard’s Flow Graph. As you configure a texture applied to an object in your game world, Lumberyard will show you real-time previews of the end result, both from the editor window and on the actual object. Substance works within Lumberyard as a project extension, which includes the ability to use the Substance API, the Lumberyard Substance Editor plugin, and Flow Graph nodes.

GameDev News

12. May 2016


Epic have just released another update on Unreal Engine, this time it’s UE 4.12 Preview 3.  Note once again, this is a preview release, so you should expect bugs and shouldn’t use it for production code.  There be dragons!   The single biggest new feature of this preview is the addition of experimental Vulkan support.  Of course this release also has loads of bug fixes including:

Fixed! UE-30343 Project fails to compile after adding child class of AIController (C++)
Fixed! UE-30120 Investigate Crash during Garbage Collection in travel mode with InitProperties() optimization
Fixed! UE-29351 Crash attempting to PIE in QAGame after deleting BP_QAPawn
Fixed! UE-30062 (Regression) BP editor - SCS component tree display is not updated after Undo/Redo of component attachment.
Fixed! UE-30253 Cubes do not react to projectiles in Nativized First Person Code Template
Fixed! UE-30196 Unable to package a copy of project with Nativize Blueprints enabled
Fixed! UE-30235 Mac QAGame fails to package with nativization
Fixed! UE-29888 Hot Reloading an up to date project in Xcode causes the build to fail
Fixed! UE-30150 Crash undoing the selection of an actor while in Mesh Paint mode.
Fixed! UE-28172 Opening asset editor with Ctrl down (including hotkey use) causes editor to act like ctrl still pressed
Fixed! UE-30309 Tabbing to a new row in the details panel selects the blank space to the left of the section
Fixed! UE-30201 Open a copy of a project, results in illegal characters and incorrect filepath warnings when packaging
Fixed! UE-29345 Crash occurs exiting the editor after enabling mesh paint mode and PIEing
Fixed! UE-30218 Build Step Async Step Infinite Loop
Fixed! UE-30318 Crash on mesh reimport after converting brushes to static mesh
Fixed! UE-27087 Crash when pasting MaterialFunctionCall expressions into the material editor between projects
Fixed! UE-30186 SplineComponent has issues shipping
Fixed! UE-30332 "show collision" console command does not render the collision capsule on character
Fixed! UE-30093 Animations created from recorded gameplay are in default pose
Fixed! UE-30039 Crash when removing cloth apb's assigned to asset
Fixed! UE-30100 Destructible meshes can render incorrectly during PiE with Accurate velocities from Vertex Deformation enabled
Fixed! UE-25634 Crash undoing when using component whitelist
Fixed! UE-30142 Landscape3 in ContentExamples Landscape crashes when using erosion tool
Fixed! UE-30400 Sun Temple Fails to launch on PowerVR SGX540 Tablets
Fixed! UE-29569 bReceiveCSMFromDynamicObjects needs a better name, tooltip and to be in a Mobile section
Fixed! UE-29807 Major corruption in ProtoStar in Vulkan PC with VULKAN_ENABLE_PIPELINE_CACHE=1
Fixed! UE-29557 iOS - Packaged Windows BP Template Crashes on Metal Devices
Fixed! UE-30047 Materials that use 5 unique textures do not compile for ES2
Fixed! UE-30331 CompressFileToWorkingBuffer may fail due to block size overhead
Fixed! UE-30258 Packaging for HTML5 in DebugGame fails BuildSettings not cached
Fixed! UE-26057 4.12 regression: UE4Editor-PS4Tracker.dll is always out of date
Fixed! UE-30381 Fatal error in GarbageCollection.cpp file when launching ShooterGame on Xbox One.
Fixed! UE-26495 Crash opening editor on Linux
Fixed! UE-30325 Ads not appearing on full Shipping Distribution Android package of Match3
Fixed! UE-30402 Error in Vulkan.Build.cs check in
Fixed! UE-30401 Add fallback to third party Windows Vulkan SDK for Android if other options not available
Fixed! UE-28862 Xbox One: Cant type in console command
Fixed! UE-30383 Disable MRT on A7 devices for GPU particles
Fixed! UE-30297 iOS from Mac Quick Launch fails at cook on the fly
Fixed! UE-30340 Fix num instances not getting reset after draw indirect calls on PS4
Fixed! UE-30130 [CrashReport] Vulkan Preview Crashes When Running Vulkan Preview PIE
Fixed! UE-30151 Vulkan UI should be gated by Experimental
Fixed! UE-30231 Engine crashes on Android device after being paused for a while
Fixed! UE-30271 Fix bsd_signal linking error for NDK11 and android-21
Fixed! UE-29263 Flying Pawn renders incorrectly while flying on XboxOne
Fixed! UE-30230 Textures aren't getting initialized correctly on PS4
Fixed! UE-30222 Remove glMapBufferOES and glUnmapBufferOES link warnings for Android builds
Fixed! UE-30277 GitHub 2354 : Fix for Git Source Control not working anymore in 4.12, master
Fixed! UE-30190 Adjusting Default Light Settings for Atmospheric Fog causes Crash
Fixed! UE-29150 UT EDITOR: CRASH: Crash occurs when launching Editor on MAC
Fixed! UE-30121 Experimental GPU defragging is enabled by default for PS4
Fixed! UE-29234 Crash when building lighting on Mac with M_EyeRefractive in the scene
Fixed! UE-30208 Ensure taking high resolution screenshot
Fixed! UE-30223 Skylight reflections not rendering correctly on translucent materials
Fixed! UE-30354 CrossCompilerTool does not compile
Fixed! UE-29824 Texture group LOD Bias might be applied several time
Fixed! UE-30115 Indirect Lighting Transition is delayed one frame.
Fixed! UE-29454 M_Water_Drops_Master material failing to compile
Fixed! UE-30112 Standalone Game presents with black bar
Fixed! UE-30266 In Elemental, the lava drip has parts that appear to be cut off
Fixed! UE-30304 In Vehicle Game, the buggy hits collision at the start of the track
Fixed! UE-30246 Content Examples Material_Nodes lighting needs to be rebuilt
Fixed! UE-30386 Dragging Shot_002 down a row causes the shot not to spawn in MasterSequence
Fixed! UE-30367 Crash Auto Saving after using material track
Fixed! UE-30360 Crash converting to spawnable when object is missing
Fixed! UE-30344 Master sequence settings have no bounds
Fixed! UE-29321 Adding a material track sets material to MaterialInstanceDynamic_#
Fixed! UE-30404 Modifications to Android OnCreate delegates
Fixed! UE-29264 Get Screen Percentage does not return values in –game


As always this release is available from the game launcher.

GameDev News

12. May 2016


Cocos2d-x is a popular, cross platform C++ based game engine.  If you are interested in learning more about Cocos2d-x, I have done a complete tutorial series here.  Cocos2d-x just released a new version, 3.11.


This release is primarily bug fixes and API maintenance, consisting of:

* upgrade Chipmunk to v7.0.1.
* use new memory model in JSB, don't have to invoke retain/release in JavaScript. It is disabled by default.
* upgrade Curl to v7.48.
* upgrade OpenSSL to 1.0.2g.
* use VSCode and new Firefox to debug Cocos2d-x JSB programs.
* new WebGL Renderer: activate WebGL on Android by default, Sprite auto-batching and a shared rendering buffer for Sprites


Cocos2d-x is available for download here.

GameDev News

12. May 2016


mínt is a renderer agnostic ui library for the Haxe language that is part of the snõwkit family of libraries.  Put more simply, it’s a Haxe based cross platform UI library.  As the headline above suggests, they just released Alpha 2.0.  The major feature of this release is the addition of a scaling factor, making high DPI monitor support easy to implement.  There is also the beginnings of a UI editor which you can try right here in your browser.


This release also included several minor changes including:

  • control added children_at_point for a sorted list
  • window fixed close handle being a label
  • textedit fixed/added alignment options
  • margins added fixed offset to the anchor layout
  • examples added an empty luxe testbed and an AutoCanvas helper
  • lib added focus model, allowing user/platform specified focus handling
  • textedit add/enable IME entry (+ in
  • luxe added color options to most controls
  • slider josuigoa added invert flag
  • textedit added display_char for password type entry
  • lib fixed usage of luxe types in mint core code


More information about this release is available here while mint itself is available on Github.

GameDev News

Month List

Popular Comments

All you need is LÖVE. LÖVE 0.9 released
Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon

Home > News >

13. December 2013


Sorry for the bad pun, I really am.  Not sorry enough not to make it mind you!

Anyways… Love 0.9.0 was released today.  In case you haven’t heard of it, Love is a 2D Lua based game development framework that was previously featured in the Battle of the Lua Game Engines post.  From the release notes:


After a very long year-and-eight-months since the previous version’s release, LÖVE 0.9.0 is out at last!

The full changelog is massive, easily the biggest in LÖVE’s history (when counting by number of individual changes listed). It can be viewed down below as well as in the Wiki. Here are some of the more noteworthy items:
LuaJIT is now being used by LÖVE by default for most operating systems. Depending on what’s bottlenecking your game’s performance right now, your framerate could skyrocket just by updating to 0.9.0!

ENet: real-time networking in games is a complicated topic. Thankfully, people have created libraries to help deal with some of the lower-level nuts and bolts. One such library is ENet. LÖVE 0.9.0 includes the lua-enet wrapper for the ENet library (alongside the existing general-purpose LuaSocket library), so you can easily use ENet’s features in your games with require("enet").

love.joystick: previous versions of LÖVE had support for joysticks and gamepads, but the love.joystick module was lacking in some key areas.
Version 0.9.0’s joystick module has been completely revamped – Joysticks are now actual LÖVE objects, they can be hot-plugged and removed at will (with event callbacks to match), gamepad motor vibration is now supported, and issues with differences in gamepad buttons and axes across operating systems and gamepad models is now much easier to deal with thanks to the new abstracted Gamepad API.

Windows (not the Microsoft variety): functions for dealing with LÖVE’s window have been split from into the brand-new love.windowmodule. The new module also includes new functionality (and better handling of the window in general, thanks to SDL 2): it’s now possible to use resizable, borderless, and “fullscreen-desktop” / “fullscreen-windowed” windows, as well as to choose which monitor the window will use. Along with some general house-cleaning of this module and performance improvements to, ParticleSystems, and SpriteBatches, lots of new graphics functionality has been added. Arbitrarily textured and colored polygons can be created thanks to Mesh objects.Shader objects (renamed from PixelEffects) can now be vertex shaders as well as pixel shaders. Mipmapping support has been added to images, compressed texture formats can be used now, and that’s only a handful of the new features in

love.math: Another new module! This one includes mathematical functionality relevant to games: a PRNG (and random number generator objects), polygon triangulation, Bézier curve objects, a Simplex noise generator, and more goodies.

love.thread: The thread module has an entirely new way to communicate between threads: Channel objects. It's much more flexible than the old API.
There are many more new features, but reading paragraphs about them can get tedious. Check them out on the wiki!

LÖVE 0.9.0 breaks compatibility with nearly every 0.8.0 game.

Several functions have been renamed (and some functionality has been changed or removed) in order to provide a more consistent and clean API experience. Often this will mean simply renaming some functions your game uses, but it will be rare for a game to work completely in both 0.8.0 and 0.9.0 unless it is written to do so.
Check the wiki! It will tell you what the new name of a renamed function is.

0.9.0’s Mac OS X system requirements are higher than 0.8.0’s: it now requires Mac OS 10.6+ and at least an Intel Core 2 CPU (~september 2006 or newer).


Full change log available here

Head on over here to get started.


blog comments powered by Disqus

Month List

Popular Comments