Releases: gaea-godot/gaea
v2.0.0-beta5 (Hotfix)
Added missing contributor to the credits and updated the version in the plugin's config file.
To read about v2.0.0-beta5, go to https://github.com/gaea-godot/gaea/releases/tag/v2.0.0-beta5
Full Changelog: v2.0.0-beta5...v2.0.0-beta5.hotfix
v2.0.0-beta5
This is a smaller update meant to serve as the last Godot 4.4.x version preparing for an update to 4.5.
What's Changed
✨ New Features
- Add GdUnit4 to the repository for unit/integration testing and implement first tests by @BenjaTK in #393
- Add Operation node checks and fix
GaeaNodeDataOpby @BenjaTK in #402 - Don't clamp gradient material sampling to 0.0-1.0 by @BenjaTK in #406
- Add the
ToHeight2D/3Dnode, used to create side-view or 3D terrain. by @BenjaTK in #403
🐛 Bug Fixes
- Abstract frames into a
GaeaGraphFrameclass by @BenjaTK in #394 - Fix prepare_sample error message in mappers by @Zehir in #398
- Fix
TilemapGaeaRendererrendering wrong terrain by @Zehir in #401 - Fix clearing functionality of
GridMapGaeaRendererby @BenjaTK in #405
Other
- Fix GradientGaeaMaterial by @Zehir in #397
- Add
GaeaNodeResourcetests by @BenjaTK in #400 - Move
_log_datacall totraverse()by @BenjaTK in #399 - Cleanup warnings in tests by @Zehir in #411
- Update _get_data function signatures to specify return type by @Zehir in #410
- Add
GaeaRenderertests by @BenjaTK in #408 - Fix
.gitattributesto include addon by @Zehir in #413 - fix export build with gaea 2.0 by @gumpdev in #417
- Add support for TileMap pattern rendering by @Zehir in #414
- Added move_up and move_down, added arrow keys to movement inputs by @cullumi in #428
- Fix tilemap rendering of terrains for neighbor tiles by @Zehir in #430
New Contributors
Full Changelog: v2.0.0-beta4...v2.0.0-beta5
v2.0.0-beta4
Highlights
- Rework
GaeaNodes to be configured from their script instead of.tresfiles by @BenjaTK in #344:- Before this update, nodes were created through resource files, meaning they'd have to have both a
.tresfile and a.gdfile, and it was harder to implement dynamic features. Now, with this new system which takes inspiration fromVisualShaderNodeCustom, nodes are created through scripts, and can be dynamically rebuilt to change their outputs, arguments, etc. based on context. This allows for more complex nodes like theFloatOpnode. - The migration system will attempt to migrate any existing graphs and will mostly do it correctly but we still recommend to backup your files before updating.
- Before this update, nodes were created through resource files, meaning they'd have to have both a
What's Changed
✨ New Features
- Add lerp to
DatasOpby @BenjaTK in #371 - Add new shapes to
GaeaNodeFalloffby @Zehir in #367 - Rework
GaeaMaterials to allow them to be sampled and makeGaeaMaterialGradientinto a material by @Zehir in #359 - Add a Texture data type and a TextureSampler node by @BenjaTK in #373
🔨 Quality Of Life
- Add generation button on demo scene and fix runtime generation by @Zehir in #351
- Rebuild graph nodes when their resource script is changed by @Zehir in #379
- Make categories collapsable by @BenjaTK in #370
- Add documentation button to GaeaGraphNode by @Zehir in #378
- Add slider when number argument is min/maxed by @BenjaTK in #374
- Enable select all on focus for text editor fields by @Zehir in #384
- Save opened preview state on rebuild by @Zehir in #383
🐛 Bug Fixes
- Fix
GaeaNodeDatasOpif cell is missing by @Zehir in #358 - Add GridMapGaeaRenderer missing methods by @Zehir in #354
- Removed uid prefix in migration by @Zehir in #360
- Avoid preloading graph-related resources by @Zehir in #386
- Improve display of Vector argument editor and fix 2D type switching to 3D when connecting by @BenjaTK in #385
- Fix
NumberArgumentEditorsetting min and max incorrectly by @BenjaTK in #392
Other
- Clean up warnings by @Zehir in #350
- Fix return type of
get_datafunction inGaeaNodeConstantby @Zehir in #352 - Separate value casting into its own class by @Zehir in #353
- Simplify description format to match Godot's documentation comments by @Zehir in #356
- Remove old saved properties from
BoolArgumentEditorby @Zehir in #368 - Update enum cases to uppercase by @Zehir in #372
- Update missing enum cases to uppercase by @Zehir in #375
- Hide tooltip when no description is provided by @Zehir in #382
- Validate Script Type Before Adding to Node Tree by @Zehir in #380
- Rename GaeaData to GaeaGraph by @Zehir in #377
- Change the way parameter names are edited by @BenjaTK in #387
- Change GaeaGraph icon to graph icon by @BenjaTK in #389
- Change usages of
AxiswithVector3i.Axisby @BenjaTK in #390
Full Changelog: v2.0.0-beta3...v2.0.0-beta4
v2.0.0-beta3
This release is in preparation for a larger release that will rework the system for making nodes and will most likely break any alread existing graphs. Please back-up your graphs before updating to this version and before upgrading to the next version.
What's Changed
✨ New Features
- Add more value casting by @BenjaTK in #292
- Implement new save system and data handling improvements by @Zehir in #305
- Refactor node input and outputs by @Zehir in #319
🔨 Quality Of Life
- Add online docs button by @Zehir in #290
- Hide arguments when input is connected by @BenjaTK in #293
- Add Gaea editor settings by @BenjaTK in #301
- Add fuzzy search to add node popup by @Zehir in #307
- Add "Open In Inspector" context action by @BenjaTK in #308
- Add shortcut to cycle between nodes in the 'Create Node' tree by @BenjaTK in #309
- Add 'About' window by @BenjaTK in #313
- Pressing 'Enter' when search bar is focused now creates selected node by @BenjaTK in #318
🐛 Bug Fixes
- Don't clear data before saving by @Zehir in #284
- Fix reroute node by @Zehir in #295
- Fix operating on 2 datas by @BenjaTK in #297
- Fix casting not working when a non-input argument is present by @BenjaTK in #296
- Fix output node label by @Zehir in #321
- Await
_remove_childrento avoid nodes 'leaking' into other graphs when switching generators by @BenjaTK in #324
Other
- Re-organize
panel.gdby @BenjaTK in #283 - Add debug group to
GaeaDataby @BenjaTK in #288 - Force slot properties for input and output by @Zehir in #289
- Add documentation and remove unused stored property by @Zehir in #286
- Add vector2 and range casting functionality by @Zehir in #287
- Clamp Add node popup inside the main window by @Zehir in #302
- Cleanup parameter scenes by @Zehir in #320
- Save scroll offset during sessions, not in GaeaData by @BenjaTK in #323
- Add documentation to most scripts and update naming of certain symbols by @BenjaTK in #326
Full Changelog: v2.0.0-beta2...v2.0.0-beta3
v1.4.1
What's Changed
- Fix invalid world_size (y checking x) check in NoiseGenerator by @kreivi in #185
- Expanded Modifier Filtering + Walls Backward Compatibility Fix by @cullumi in #186
- Remove 1.X docs and update its README.md to match 2.0 by @BenjaTK in #229
- Prioritize updates in the same branch, warn when updating from 1.X to 2.0 by @Zehir in #294
New Contributors
Full Changelog: v1.4.0...v1.4.1
v2.0.0-beta2
WARNING: Updating from 1.X to this WILL break your project.
Highlights
Generation Caching and Traversal by @cullumi in #252
- This PR is the start for greatly improving generation speeds and optimizing the addon.
Add RulesPlacer node, inspired by LDtk by @BenjaTK in #215
- Very useful for very specific decorations, for walls, and more.
2025-03-29_13-18-35.mp4
Add separate icons for each slot type by @Zehir in #245 & Color titlebars & add missing icons by @BenjaTK in #248
- These 2 PRs took the look of the addon to the next level, and improved the accessibility of the addon's interface.

What's Changed
New Features
- Allow changing Frame's tint color by @BenjaTK in #191
- Implement 'salt' for nodes by @BenjaTK in #190
- Add FloorWalkerXY and FloorWalkerXZ by @BenjaTK in #192
- Remove test scene folder from .gitignore by @BenjaTK in #194
- Add Vector2/3-related nodes by @BenjaTK in #195
- Add map previews by @BenjaTK in #196
- Add constants and WorldSize nodes by @BenjaTK in #197
- Reduce minimum node X size by @BenjaTK in #201
- Make mapper functionality abstract & add a basic and a value mapper by @BenjaTK in #203
- Add filter nodes by @BenjaTK in #204
- Update TileMapGaeaRenderer and TileMapMaterial by @BenjaTK in #205
- Add RandomScatter node by @BenjaTK in #206
- Rename Merge to Union and add Intersection, Difference and Complement nodes by @BenjaTK in #207
- Add Border2D node by @BenjaTK in #209
- Make RandomMaterial use weights for better modularity by @Raftatul in #219
- Improve display for Output Node with name and state by @Zehir in #220
- Allow making the Gaea editor floating by @BenjaTK in #231
- Add RandomFilter nodes by @BenjaTK in #237
- Add new operation nodes by @BenjaTK in #241
- Automatically add previews & allow multiple previews by @BenjaTK in #246
- Implement reroute node functionality by @Zehir in #259
- Add MaterialGradient and GradientMapper by @BenjaTK in #268
- Add Falloff node by @BenjaTK in #240
Bug Fixes
- Remove wrong information from SnakePath2D description by @BenjaTK in #193
- Fix some problems when passing-in data by @BenjaTK in #208
- Fix for Node Popup position breaking when the editor window is on a second monitor. by @cullumi in #210
- Fix idx bug, allow sub-frames and fix frames not saving attached nodes correctly by @BenjaTK in #212
- Remove all warnings by @BenjaTK in #214
- Fix ThresholdMapper by @BenjaTK in #239
- Improve
weightsArray Handling inRandomMaterialby @Zehir in #235 - Add missing UID by @Zehir in #254
- Fix generator data assignment to prevent null reference errors by @Zehir in #257
- Fix Create Node popup not resizing by making it a Window by @BenjaTK in #270
- Prevent code execution during scene editing and free old bottom panel resources by @Zehir in #276
Other
- Optimize preview by @BenjaTK in #211
- Upload Walker demo by @BenjaTK in #213
- Remove docs in favor of the new repository by @BenjaTK in #227
- Fix terrain data type in tilemap renderer by @Zehir in #234
- Add ability to detach nodes from parent frame and to disable auto shrink in frames by @BenjaTK in #238
- Add context menu for link interactions by @Zehir in #249
New Contributors
Full Changelog: v2.0.0-beta1...v2.0.0-beta2
v2.0.0-beta1
WARNING: Updating to this version WILL break your existing projects.
Gaea 2.0 is still in beta so it's not ready for production.
Gaea 2.0
Presenting Gaea 2.0! In this new and improved version of Gaea, generation will now be configured with graphs, similar to VisualShaders.
This system brings with it more flexibility, more customization and more opportunities. You can read how to use it in the new documentation!
Some other changes include:
- Renaming
TileInfotoGaeaMaterial. - Unifying all generator nodes into one.
- A more flexible system for creating custom nodes.
Why the Change
Procedural generation is an inherently visual process. Having graph nodes with previews, obvious connections and more makes the process of using Gaea much more satisfying and easy.
Gaea 1.X was becoming hard to maintain, too. Modifiers were hard to create, and having to make a new generation node for every generation type was annoying. With this version, there's only one node: GaeaGenerator. It works for both 2D AND 3D, and all graph nodes do too, which means you can mix elements and customize your generations as you should've been able to from the start.
Iiirc too, this was the original idea I had for Gaea, I just wasn't experienced enough to do it.
Why Beta
I want to get to feature parity with 1.X before calling it an official version. Plus, the codebase probably needs some cleaning up to do, so I'd love to get feedback from anyone who can. Feel free to make PRs, issues, etc!
I'm really excited about this change, and my excitement for this addon is back. Hope y'all like the new workflow, any feedback is appreciated and encouraged.
Full Changelog: v1.3.2...v2.0.0-beta1
v1.4.0
What's Changed
- Fixed Carver2D logic by @ARedSnail in https://github.com/BenjaTK/Gaea/pull/173
- Pattern Support by @cullumi in https://github.com/BenjaTK/Gaea/pull/184
- Fixed the Getting Started Link in walker.md by @cullumi in https://github.com/BenjaTK/Gaea/pull/183
- Removed unnecessary guard in GenerateBorders.gd by @cullumi in https://github.com/BenjaTK/Gaea/pull/182
New Contributors
- @ARedSnail made their first contribution in https://github.com/BenjaTK/Gaea/pull/173
Full Changelog: BenjaTK/gaea-fork@v1.3.2...v1.4.0
v1.3.2
What's Changed
- Fix generate_on_ready not working by @BenjaTK in https://github.com/BenjaTK/Gaea/pull/167
Full Changelog: BenjaTK/gaea-fork@v1.3.1...v1.3.2
v1.3.1 - Gaea is out in the Asset Library!
Asset Library
Finally, Gaea has been added to the Godot Asset Library! You can download it from your editor (starting from 4.3)
https://godotengine.org/asset-library/asset/3272

What's Changed
- Produce error if GaeaRenderer doesn't have a generator assigned by @adadgio in https://github.com/BenjaTK/Gaea/pull/163
- Fix layering in NoiseGenerator by @BenjaTK in https://github.com/BenjaTK/Gaea/pull/166
New Contributors
- @adadgio made their first contribution in https://github.com/BenjaTK/Gaea/pull/163
Full Changelog: BenjaTK/gaea-fork@v1.3.0...v1.3.1
