Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon Join the GFS Discord Server!
24. January 2020


Tiled, the open source map editing software, just released version 1.3.2.  Along side that release was a development snapshot with new features that will be available in the next release.  If you want learn Tiled we have an in-depth tutorial series available here.

Details of the 1.3.2 release:

  • Fixed initialization of selected layers (#2719)
  • Fixed stamp action shortcuts not being configurable (#2684)
  • Fixed the tileset view to respect the 'wheel zooms by default' preference
  • Fixed insertion position when using drag-n-drop to rearrange layers
  • Fixed displayed layer data format in Properties
  • Fixed repeating of export when map is saved by a custom command (#2709)
  • Fixed issue when multiple worlds are loaded that use pattern matching
  • Issues view can now be hidden by clicking the status bar counters
  • macOS: Fixed black toolbar when enabling OpenGL rendering (#1839)
  • Windows: Fixed context menus activating first item on release (#2693)
  • Windows installer: Include the 'defoldcollection' plugin (#2677)
  • Windows installer: Signed by SignPath
  • libtiled: Avoid inheriting Properties from QVariantMap (#2679)
  • docs: Added some notes to Python and JavaScript pages (#2725)
  • Updated Qt from 5.12.5 to 5.12.6
  • Updated Finnish translation (by Tuomas Lähteenmäki and odamite)
  • Updated part of Italian translation (by Katia Piazza)

As well as details from the developmental release:

Tinting Layers

Layers can now be tinted by multiplying their pixels with a color. This way you can darken or colorize your graphics in various ways without needing to set up separate images for it! The new "Tint Color" property is supported on tile layers, object layers and image layers, and is inherited from group layers.

Object Alignment

Ever since tile objects were added as a feature, their alignment has been inconsistent with the other shapes. Whereas a rectangle had its origin in the top-left, tile objects had their origin in the bottom-left (or even bottom-center, on isometric maps). While useful in some contexts, this inconsistency has annoyed many people over the years.

Now, a new tileset property specifies which alignment to use for tile objects using that tileset. If you set it to top-left, the tile objects will align consistently with the other objects. But of course you could also choose for bottom-center or center alignment depending on your needs.

Object Reference Properties

This change is a big step towards the Connecting Objects feature, which is planned for Tiled 1.4. You can now choose "object" as the type when adding a custom property, and the property will be interpreted as a reference to an object on the map, referring to it by its unique ID. A special dialog makes it easy to search for the object you want to refer to and the name of the referenced object will be displayed.

Tiled is available as a free download for Mac, Windows and Linux here.  The source code for Tiled is available on GitHub.

GameDev News


22. January 2020


Material Maker 0.8 was just released.  Material Maker is a free procedural texture generation software that was built on top of the Godot game engine.  We previously covered Material Maker in this video.  The 0.8 release brings several new features including several new nodes and examples.

Details from the itch.io page:

Regressions and incompatibilities

Bad news come first, as always:

  • 2D SDF nodes do not output greyscale information and cannot be directly connected to greyscale/color/RGBA inputs anymore. you will have to use the sdShow Node
User interface
  • the 2D and 3D previews are now in separate tabs
  • the 3D preview in the background of the graph pane can now be shown and hidden using the "cube" button at the bottom left of the graph view and controlled independently,
  • the 2D preview now shows a tiled version of the selected node (so it's easy to check the result is seamless)
  • the 2D preview now has controls that can be associated to (float) node parameters (this applies mainly to shape/transform nodes)the UI will now be dimmed when exiting the application (this change was contributed by Calinou)
Nodes and code generation
  • 2 new types of node inputs/outputs have been added for 2D and 3D signed distance functions. Both types have a custom preview (distance field for 2DSDF and shaded scene for 3DSDF)
  • shader nodes inputs now have a "function" attribute. When this option is selected, the input is generated as a function and is usable in instance Functions. This feature made all 3D SDF nodes possible.
  • a few problems in convolution nodes have been fixed
New and improved nodes
  • all 2D signed distance functions have been modified to use the 2DSDF inputs/outputs (that are shown in orange). The sdShow node is now the only way to generate an image. Added 2DSDF transform and morph nodes.
  • the new 3D signed distance functions nodes can be used to describe 3D shapes. Many shapes (sphere, box, capsule, torus, cylinder...), transforms (translate, rotate, scale), operators (boolean, repeat, extrusion, revolution...) are provided and the Render node can be used to generate a height map and a normal map from 3DSDF information. All this is based on ray marching and can be used to describe 3D objects that can then be spread on the textures, as demonstrated in the "skulls" and "pile_of_bricks" examples.
  • the new 3D box and a sphere nodes are not based on 3DSDF and just output a height map
  • the new "workflow" nodes can be used to define base materials and mix them using height/orientation/offset maps, and to ultimately create complex materials without drawing spaghetti monsters in the graph view. A few simple base materials are provided in the node library as templates. The new "marble" and the updated "medieval_wall" examples show how to use all those nodes.


  • the bricks node has been improved with round brick corners and output UV information for each brick and each brick corner. Also added an output that gives brick orientation.
  • the new CustomUV node uses one of its input as coordinates to read the other input and can thus be used to implement psychedelic image transforms
  • the new generic truchet node tiles its input, randomly flipping it horizontally, vertically or both
  • the beehive node just outputs hexagonal tiles
  • the new convolution nodes are 3 edge detectors and a sharpen filter
  • the normal map node has a new option to disable its input buffer. The buffer should still be used when the input is complex, but disabling it will generate smoother normal maps
  • the new greyscale node converts color input to greyscale with a choice of 5 algorithms
  • the new swap channels node replaces all channels (R, G, B, A) of its output with 0, 1 or a (optionnally inverted) channel of its input

Material Maker 0.8 is available for download for Windows and Linux here.  You can learn more about Material Maker 0.8 in the video below.

GameDev News


11. January 2020


ArmorPaint just released version 0.7 containing several new features including additional texture file formats, plugin support and even live preview support for Unity and Unreal game engines.  ArmorPaint is built on top of the Armory3D game engine (tutorial available here) and is an open source alternative to Substance Painter.

Details from the release notes:

  • Added support for .psd, .bmp, .gif formats
  • Added single material export
  • Added blend modes for layers
  • Added blend modes for brush
  • Added plugin manager
  • Added 'auto-save' plugin
  • Added 'hello-node' plugin - custom material node
  • Added 'console' plugin - run commands
  • Added 'profiler' plugin - performance graph
  • Added 'converter' plugin - convert .arm files into .json
  • Added 'import_tiff' plugin - support for .tiff format
  • Added 'import_stl' plugin - support for .stl format
  • Added 'import_gltf' plugin - support for .gltf/.glb format (alpha)
  • Added 'uv_unwrap' plugin - auto-generate uvs / unwrap active mesh
  • Added 'theme-editor' plugin
  • Added box selection to node editor
  • Added per-fill-layer uv control
  • Added option to split .obj mesh by groups or materials
  • Added 'decal tool - scale x' option for non-square decals
  • Added 'menu - file - reimport mesh'
  • Added 'menu - viewport - split view'
  • Added 'preferences - restore' button
  • Added 'preferences - native file browser' option
  • Added 'preferences - viewport - vignette' option
  • Added 'preferences - usage - dilate radius' option
  • Added texture export presets
  • Added 'layer' material node - drop layer onto node canvas
  • Added 'layer mask' material node - drop layer mask onto node canvas
  • Added 'blur (image)' material node
  • Added experimental dxr build
  • Added path-trace (dxr) viewport mode
  • Added ao (dxr) bake
  • Added bent normal (dxr) bake
  • Added lightmap (dxr) bake
  • Added thickness (dxr) bake
  • Added normal-map bake from high-poly
  • Added height bake from high-poly
  • Added dilation pass to baking
  • Added 'up axis' option for relevant bake types
  • Added support for drag and dropping multiple files at once
  • Added popup for editing RGBA node sockets
  • Improved gizmo
  • Improved height paint
  • Improved .obj importer
  • Improved .blend importer
  • Improved outliner
  • Improved node drawing performance
  • Improved layer handling performance
  • Improved key detection on linux
  • Fixed handling of accented filepaths
  • Fixed brush mask on linux
  • Fixed copy-paste on linux
  • Fixed window title updating on linux
  • Fixed file association
  • Fixed envmap import
  • Fixed object mask for fill layers
  • Fixed height displacement scale
  • Fixed blurry text on windows
  • Fixed texture filtering option for image node
  • Fixed key repeat for text edit
  • Updated dark and light themes
  • Updated menu bar structure
  • Reduced gpu memory usage
  • Faster texture loading
  • Undo for layer opacity and blending
  • Undo for node canvas
  • Adjustable viewport clip distance
  • Remember window size and position
  • Open node search on link drag
  • Resizable ui panels
  • Duplicate material
  • Use brush ruler (shift) to draw lines
  • Auto-set 2x scale on high-res displays
  • Flat shading for viewport modes inspecting pbr channels
  • Picker tool works on non-base layer
  • Picker tool shows texture coordinate in 2d view
  • Export single texture from textures tab
  • Eraser takes hardness and opacity into account
  • Export textures as udim tiles for udim projects
  • Download 'texture-synthesis' plugin preview
  • Download Unreal Engine live-link preview
  • Download Unity Engine live-link preview

If you want to build ArmorPaint from source you can learn more about the process here.  You can see ArmorPaint in action in the video below.

GameDev News Art


10. January 2020


ArmorPaint is an open source competitor to Substance Painter, from the creator of the Armory game engine (tutorial series available here).  It is available for just 16 Euro in binary form, but can also be built from source code.  This guide walks you step by step through the process of building ArmorPaint from source.

There are a few requirements before you can build.  Download and install the following programs if not already installed:

First step, we clone the repository.  Make sure to add the –recursive flag(that’s two ‘-‘ by the way).

Open a command prompt, cd to the directory where you want to install ArmorPaint’s source code and run the command:

git clone –recursive https://github.com/armory3d/armorpaint.git

Depending on your internet speed this could take a minute to several minutes while all of the files are downloaded. 

In Explorer, go the installation directory, then navigate to armorpaint\Kromx\V8\Libraries\win32\release and using 7zip extract v8_monolith.7z to the same directory as the .7z file.

Next in the command prompt run the following commands

(Assuming you are reusing the same CMD that you did the git clone from)

cd armorpaint

node Kromx/make –g direct3d11

cd Kromx

node Kinc/make –g direct3d11

explorer .

If you receive any errors above, the most likely cause is node not being installed.  The final command will now open a Windows Explorer window in the Kromx subdirectory.  Open the build directory and load the file Krom.sln.

image

This will open the project in Visual Studio.  If you haven’t run VS yet,you may have to do some initial installation steps.  Worst case scenario run through the initial install, close and double click Krom.sln again.

First make sure that you are building for x64 and Release mode at the top:

image

In the Solution Explorer, select Krom then hit ALT + ENTER or right click and select Properties.

Then select Debugging, in Command Arguments enter ..\..\build.krom then click Apply.

image

You are now ready to build ArmorPaint.  Select Ctrl + SHIFT + B or select Build->Build Solution.

image

Assuming no errors, are exe should be built.  Now go to the folder armorpaint\Kromx\build\x64\Release and copy the file Krom.exe, then copy to armorpaint\build\krom.  You can now run Krom.exe and you’re good to go. 

image

Step by step instructions are available in the video below.

Art Programming


8. January 2020


BrashMonkey have just launched a Kickstarter campaign Spriter 2 Alchemist.  Alchemist is an extension to the upcoming Spriter 2 Pro 2D animation system that adds procedural content generation and animation support.  Existing Spriter Pro customers are offered a preferred rate when backing Spriter 2 Alchemist.  The tiers break down as follows:

As of writing the Kickstarter is about 10% of the way towards it $50,000USD goal with 27 days to go.  Full details of the features of Spriter 2 Alchemist are available on the Kickstarter page, as well as discussed in more detail in the video below.

Spriter is not the only 2D animation package available and we have covered a number of them previously here on GameFromScratch.  A run-down of free 2D animation tools is available here on DevGa.me, while we have done feature videos on Spine, Creature(video), COATools for Blender (video) and Dragonbones(video) if you are looking for an alternative.

GameDev News


AppGameKit Studio

See More Tutorials on DevGa.me!

Month List