Qwaitumin.LibreAutoTile 1.0.0-alpha.4

This is a prerelease version of Qwaitumin.LibreAutoTile.
dotnet add package Qwaitumin.LibreAutoTile --version 1.0.0-alpha.4
                    
NuGet\Install-Package Qwaitumin.LibreAutoTile -Version 1.0.0-alpha.4
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Qwaitumin.LibreAutoTile" Version="1.0.0-alpha.4" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Qwaitumin.LibreAutoTile" Version="1.0.0-alpha.4" />
                    
Directory.Packages.props
<PackageReference Include="Qwaitumin.LibreAutoTile" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Qwaitumin.LibreAutoTile --version 1.0.0-alpha.4
                    
#r "nuget: Qwaitumin.LibreAutoTile, 1.0.0-alpha.4"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Qwaitumin.LibreAutoTile@1.0.0-alpha.4
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Qwaitumin.LibreAutoTile&version=1.0.0-alpha.4&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Qwaitumin.LibreAutoTile&version=1.0.0-alpha.4&prerelease
                    
Install as a Cake Tool

LibreAutoTile Core Library

Implementation of an autotile algorithm for tilemaps with JSON configuration, supporting various tile ID terrain transitions.

Features

  • Autotiling pipeline
  • Fully async-compatible
  • Game engine-agnostic core library
  • High performance

Example usage

Note: MyTileMap is your engine’s tilemap implementation. The library only provides the autotiling logic.

Implement a binding for your engine:

public class MyTileMapDrawerImplementation(MyTileMap myTileMap) : ITileMapDrawer
{
  public void Clear() => myTileMap.Clear();

  public void DrawTiles(
    int tileLayer, IEnumerable<(Configuration.Vector2, TileData)> positionsToTileData)
  {
    foreach (var (position, tileData) in positionsToTileData)
    {
      // Draw tile on the screen at 'position', on layer 'tileLayer', from image file 'ImageFileName' at 'atlasPosition'
      myTileMap.DrawTile(
        tileLayer,
        tileData.TileAtlas.ImageFileName,
        position,
        tileData.TileAtlas.Position);
    }
  }
}

Load configuration and compose drawer:

AutoTileConfiguration autoTileConfiguration = AutoTileConfiguration.LoadFromFile("file/path.json");
MyTileMapDrawerImplementation drawer = new(myTileMap);

AutoTilerComposer autoTilerComposer = new(autoTileConfiguration);
var autoTileDrawer = new AutoTileDrawer(drawer, autoTilerComposer.GetAutoTiler(layerCount));

Use drawer to draw on TileMap:

int layer = 0;
int tileId = 0;
Vector2 position = new(0,0);

autoTileDrawer.DrawTiles(layer, [(position, tileId)])
Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net9.0

    • No dependencies.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Qwaitumin.LibreAutoTile:

Package Downloads
Qwaitumin.LibreAutoTile.GodotBindings

Autotile algorithm implementation bindings for godot

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0-alpha.4 50 7/4/2025
1.0.0-alpha.3 81 6/20/2025
1.0.0-alpha.2 115 6/19/2025
1.0.0-alpha.1 113 6/19/2025