Releases: AlexeyBond/godot-constraint-solving
Releases · AlexeyBond/godot-constraint-solving
1.7
New features:
- Mappers now can define initial WFC rules. For
TilemapLayer
maps, rules can now be inferred from tilesets terrain settings (as suggested in #24), see example. But it currently works with square tilemaps only yet. Adding support for other shapes and layouts shouldn't be difficult. - Added a "remap" precondition for 2D WFC, which covers the use-case discussed in #26. See the example.
1.6.1
1.6
New Godot 4.3 features supported/used:
- new
TileMapLayer
nodes are now supported. This includes multi-layer maps, consisting of multipleTileMapLayer
s - but they should be grouped under a specialWFC2DLayeredTileMap
node. - non-user-editable exported properties are hidden using
@export_storage
(those properties are exported to make rules and related objects serializable, mostly for future rule editor support)
Exampes/demos:
- added
TileMapLayer
(andWFC2DLayeredTileMap
) usage examples - fixed multitile mapper example location
1.5
New features:
- Added "edge conditions" to WFC rules. See this example.
- Added multi-tile mapper. This mapper treats each N*M (configurable) rectangle of underlying map as a single tile.
- Added "sparse history" settings for solver. When both backtracking and sparse history are enabled, the solver will not store all the previous states, but just some of them - X first states and every Y'th state after them. This reduces memory usage at cost of additional solution steps performed when backtracking happens.
- Added experimental AC4-like constraint propagation algorithm. Currently, it works better in some cases but beheaves much worse than old AC3 implementation in others, so it is marked experimental and disabled by default.
Fixes:
- Solver state history is no longer stored when solution is completed. This reduces memory usage approximately twice during multithreaded WFC solver run and frees a lot of memory after solution is completed.
Examples:
- Layered TileMap example now also shows scene tiles usage.
1.4
New features:
- Added mesh metadata in 2d gridmap mapper
- Dungeon generator precondition now can use a map instead of metadata attributes as tile class configuration.
Examples:
- Added examples of 2D WFC with dungeon generator precondition
- Added camera controls in gridmap examples
Fixes:
- Fixed unsafe memory access in multithreaded runner
1.3
1.2
- Added preconditions for 2D WFC generator
1.1
1.0
Update README; random changes in scenes/resources