General
I built a free browser tool that turns 2 ground tiles into a full 47-tile autotile set
0 views

You draw a grass tile. You draw a dirt tile. Then you try to put a dirt path on the grass and realize the two tiles do not meet: you also need every edge, every inner corner, every outer corner, the one-tile-wide path and the single island.
Counted properly, that is 47 tiles per terrain pair. Draw them by hand once and you will not want to do it for the second pair.
So I built a tool that generates the full set from the two source tiles: 47-Tile Terrain Autotile Maker. Free, no sign-up, and nothing is uploaded; it all runs in your browser.
Why 47 and not 256
A tile has 8 neighbors, so there are 256 possible neighbor combinations. Most of them cannot happen on a real map. A diagonal neighbor only matters when both adjacent sides are also connected; a tile that touches only its top-right corner has no visible corner to draw.
Remove those impossible diagonals and 256 collapses to 47. This is the "3x3 minimal" blob set that Godot's terrain system and Unity's Rule Tile both expect. The tool enumerates the 47 masks mechanically, so the narrow path and the island never go missing.
What you get
Pick two ground types. Six pairs are built in (grass to dirt, grass to water, sand to water, snow to rock, cave floor to wall, cobblestone to grass), and A and B can be swapped.
Choose a tile size: 16, 32, 48 or 64 px.
Pick a boundary style: natural, shore (a light and dark rim against water) or cliff (top face, cliff edge, shadow below).
Adjust corner roundness, edge roughness and border width.
The set is placed on a sample map with an island, a winding path and inside corners, so you can see whether the edges actually connect before you download anything. You can also paint on the map yourself.
Exports:
the 47 tiles as an 8 x 6 PNG sheet at 1x, 2x, 4x or 8x (nearest-neighbor, no blur)
the sample map as PNG
a JSON manifest with each tile's neighbor mask, Godot peering bits and Unity This / NotThis conditions
The rule that matters most: no new colors
The tempting shortcut is to anti-alias the boundary. It looks smooth in a preview and wrong in a real tilemap, because the in-between colors exist in neither source tile and they break the palette.
So the boundary only uses colors that already exist in tile A or tile B, including the shore rim and the cliff shadow. One of the automated checks counts unique RGB values in every output and fails if a color appears that was not in the inputs.
What it does not do
It does not write Godot .tres files or Unity RuleTile assets. The JSON is a mapping table; you still assign the tiles in the editor.
It does not produce RPG Maker MZ A2 sheets. MZ uses its own 6-part autotile layout, which is a separate converter I have not built yet.
Numbers
256 neighbor masks in, 47 tiles out
generation of the full set takes about 10 ms at 32 px (engine only, Apple M2 Pro, measured in Node 26)
57 automated assertions, including "same seed gives byte-identical output"
Try it here: https://holometer.net/autotile-maker/en/?utm_source=devto&utm_medium=article&utm_campaign=tools
It is one of a set of small pixel-art tools I keep on the same site (sprite sheet fixer, GB Studio converter, palette tools). If the boundaries come out wrong for your tiles, a screenshot in the comments helps me more than a description.
Read original: https://dev.to/mojah2929mojaha/i-built-a-free-browser-tool-that-turns-2-ground-tiles-into-a-full-47-tile-autotile-set-87m
PreviousI Built a Financial Dashboard for Indie Devs and Digital Creators and It is FreeNextI built a free founders' agreement tool that stays in the browser
Related posts
Best Early Black Friday Espresso Machine Deals (2026)
0Wired
I Read the Clankers' Code
0Hacker News
A Right-Wing Think Tank Has a Plan to Prevent Democrats From Being Seated in Congress
0Wired
White Noise Machines Worthy of Your Nightstand in 2026: Snooz, Hatch, and More
0Wired
F1 in Mexico City: Yet another Ferrari fiasco, but that’s not all
0Ars Technica
China publicly discloses plan for a lunar landing within three years
0Ars Technica