4.0.0
Major update that introduces the separate tileset file!
Additions
- Added a new separate Tileset Definition File (
.ldtkt
)- LDtk will run a custom command to write these files to the same location as separate levels.
- This tileset file now generates the sprites and tiles instead of the project file
- Will only reimport when the tileset was changed in LDtk, saving on iteration time
- Interacts with the sprite editor window:
- Can change pivot point / border
- Can define collision shapes
- Can now access the
customData
andenumTags
that are associated with tiles through the tilemap components
- Added a new
LDtkComponentWorld
to the project's hierarchy - Added
Identifier
toLDtkNeighbour
- Added a new field into the project importer inspector to specify the geometry type for composite colliders
- Added support for blocking backups at a custom backup path
Quality of Life
- Optimized the loading speed when separate levels lookup their dependencies
- Failed imports will now display an error icon in the Project window
- Updated codebase to support Unity 2023.1's various API changes
- Largely improved the error/warning handling when importing
- Less spam, more clear indications when something's wrong, displayed in the importer's UI.
- Recreated a feature from Unity 2022.2+ for older unity versions to show errors/warnings in the importer inspectors to help point out issues
- IntGrid tile fields in the inspector can now accept TileBase instead.
- This allows more versatility. However, continue using the IntGridTile type to still utilize the Tag/Layer/PhysicsMaterial.
Fixes
- Fixed a bug causing a failure to draw scene entity references and logging error spam
- Fixed backups not blocking importing properly
- The single
World
GameObject will now have it'sdummyWorldIid
set when using MultiWorlds
Breaking Changes
- Generating Tileset definitions will be a hard requirement in order to import LDtk projects properly.
- They are not automatically generated and need a quick one-time setup (It's relatively quick and painless)
- To generate these, follow along with the guide displayed in the project import inspector
- Changed the default tile for an empty tile field back to
None
collision. Make any fixes to reflect this change.- Because there are now two options for defining collision, turning off grid collision by default became more sensible.
- Removed the SpriteAtlas field from the project importer
- Instead, you can directly add a tileset file into a sprite atlas to pack it's sprites, much like the normal Unity workflow
- Because sprites and tiles are now generated from each respective tileset file, the references to these assets will be lost if they were referenced prior
- Level background sprites are now keyed by the level's identifier instead of the
{name}{x}{y}{w}{h}
format, so any prior references to these sprites may be lost - Removed the
Export
Button in the importer inspector until the feature is supported again
Note
At the moment, there isn't an easy way to define Tag, Layer, or Physics Material for Tile/Auto layers.