Skip to content

Releases: TheDuckCow/godot-road-generator

v0.5.2 (Godot 4.2-4.3) | Error, undo, and resource fixes

26 Oct 00:50
Compare
Choose a tag to compare

What's Changed

  • Auto generate new curve resources if needed by @TheDuckCow in #197
  • Fixed curve offset rotation by using local instead of global space by @TheDuckCow in #199
    • This resolves an issue where offset curves would appear to be over-rotated when parents or grandparents have rotated transforms, which would mess with traffic following and road-side edge curves for things elements like barriers or railings
  • Fixing undo redo stack issues in godot4 by @TheDuckCow in #200
  • Applying discovered fix to make resources editable and avoid errors by @TheDuckCow in #201
    • Some users cited this would cause accessing custom or nested resources impossible while the road generator is active, this is now fixed

Full Changelog: 0.5.1.gd4...0.5.2.gd4

v0.5.2 (Godot 3.5) | Fix for curve parent rotation

26 Oct 00:47
Compare
Choose a tag to compare

What's Changed

  • Fixed curves and AI paths endpoints being over-rotated when parents or grandparents have rotated transforms, which would mess with traffic following and road-side edge curves for things elements like barriers or railings - by @TheDuckCow in #198
  • Non-user impacting backports of other Godot 4 bug fixing

Full Changelog: 0.5.1...0.5.2

v0.5.1 (Godot 3.5) | Prior release fixes, improved demo scene

29 Sep 06:38
Compare
Choose a tag to compare

What's Changed

  • Patches to the v0.5.1 along with godot4 migration improvements by @TheDuckCow in #192
    • Reduces the number of errors in the console window with general usage, primarily when adding a RoadPoint via the Roads menu or on left-click in add mode while a RoadContainer was initially selected
    • Ensures that you are allowed to add a RoadPoint by the Roads menu even if a RoadContainer is selected (this was true in 0.4.x, but a bug in 0.5.0 prevented this)
    • Ensures that when using left click to add or by using the Roads menu to add new nodes, the newly added nodes are consistently selected, letting you continue left-clicking to continue adding road features.
    • Also added some random height placement in the procgen demo, to help highlight the curves are solving in proper 3D space.

Full Changelog: v0.5.0...0.5.1

v0.5.1 (Godot 4.2-4.3) | First Godot 4 beta release

29 Sep 06:42
1b88b6f
Compare
Choose a tag to compare

While the godot4 branch has been around for awhile, this release represents the first beta version, which will intend to be added to the Godot Asset Library soon after the release. Be sure to report bugs if any are found!

Tested on Godot 4.2 and 4.3, both found to be working well. Marked as a beta as unit tests have not been fully migrated, which won't happen until v1.0.

What's Changed

  • Migrate forward v0.5.0 into godot4 by @TheDuckCow in #190
    • See v0.5.0 and v0.5.1 changelogs for full details - there are many here, this represents the bulk of the changes here!
  • This change is to catch empty gizmos array before it spam floods the console (godot 4.3rc3) and cancels before emitting on_transform signal by @FishOfTheNorthStar in #177
  • 4.x Reducing console errors on adding RoadPoint via menu or click by @TheDuckCow in #194

New Contributors

Full Changelog: v0.5.0...0.5.1.gd4

v0.5.0 (Godot 3.5) | Agents, Snapping, and Edge Curves

22 Sep 01:36
Compare
Choose a tag to compare

Changed behavior:

  • Per #182, the RoadManager's rebuild_all_containers function is now blocking instead of deferring generation to an idle cycle. This change was made as part of an effort to reduce potential unnecessary rebuilds and ensuring atomic operations when necessary. Use the newly added rebuild_all_containers_deferred on the RoadManager to get the old functionality if needed.

New features:

  • Introduction of a new RoadLaneAgent object, now included in the Roads 3D toolbar menu by @TheDuckCow in #188
    • The actual agent code was added as a part of #174
    • There are plans to improve and extend the functionality of this agent over time, but for now acts as a simpler way to interface with following lanes and the transitions between one RoadSegment and the next.
  • New procedural demo project in the demo folder by @TheDuckCow in #174
    • Showcases how to create an infinite road generator along with how to use the RoadLaneAgent in practice.
    • to view, you must clone the repository, it will not be distributed to you via the Godot Library.
  • Implemented a new tick box on RoadContainers for "Generate Edge curves" by @bdog2112 in #156, #158, and #160
    • Purpose is to create curves on the left, right, and middle which are directly added to the editor. These are approximations of the road curves, allowing you to use your own procedural tools via placement along these curves. Off by default.
  • RoadPoint inspector panel bulk tools and copy properties by @TheDuckCow in #162
    • Hold shift to apply addition or removal of lanes for the entire RoadContainer instead of just the selected RoadPoint
    • Press "Copy Settings" to copy all relevant RoadPoint settings like lane width, lane counts, shoulder size, and gutter profile. Press Apply with another RoadPoint selected, or hold shift to apply these settings to all RoadPoints of the selected RoadPoint's RoadContainer
  • RoadContainer snapping and unsnapping by @bdog2112 in #166
    • This allows you to take one RoadContainer - whether a previously saved scene, or defined in the same scene - and move it around until one of its edge RoadPoints overlaps an edge RoadPoint of another container. This is an alternative to using the connection tool, and allows you to easily link together all prefab made pieces of road, if that's your preference.
  • Added collider to group with assigned meta for easier script fetching by @TheDuckCow in #181
  • Revamped the readme page to include animated visuals of features by @TheDuckCow in #189
    • Also added a section for "Games made with this plugin" - be sure to let us know if you use it for your project!

Fixes:

Full Changelog: 0.4.0...v0.5.0

0.4.0 (Godot 3.5) | Interactive tools and node restructure

26 Nov 21:34
Compare
Choose a tag to compare

This update represents a lot of new work and structure necessary to support having custom prefab/hand modeled scenes, as well as be a stepping stone to procedural intersections.

NOTE: This is not a backwards compatible update. Nodes have been renamed, and therefore you will need to fix references. View the project migration guide here or watch this video guide

Improvements

  • Renaming of nodes for consistency and visibility, and new folder structure. Now all primary nodes by this plugin have the prefix "Road" for discoverability. More context here #74
    • Moved the RoadPoint into the nodes/road_point.gd location
    • Renamed RoadNework to be RoadContainer (nodes/road_container.gd)
    • Renamed LaneSegment to be RoadLane (done in a prior release actually)
    • RoadLanes are name direct children of RoadPoints, instead of children of RoadSegments. Eventually, we will have the option to visibly expose them in the editor in a default locked mode.
  • Long awaited introduction to "tool modes" and being able to point and click to add new roads quickly. #64
    • There is now a Select, Add, and Delete (dissolve) mode in the 3D toolbar when any road node is selected
  • Created interactive tools to connect/disconnect RoadPoints in the 3D view #117
    • This is available when the Add mode is on in the 3D view
  • Established the concept of connections between different RoadContainers
    • Previously, nothing stopped someone from connecting two point belonging to different controllers (ie what used to be called RoadNetworks and are now called RoadContainers). This is now strictly enforced through the tool modes.
    • In order to connect two RoadContainers together, one or both of which might be saved subscenes, you must use the Add mode's built in connection tooling. See demo here.
    • This includes tools to connect and perform validations of connections between different RoadContainers. There are some nuances and making changes in one Container and result in validation warnings in the other, but these are mostly auto resolved by pressing the Refresh Roads button.
  • Wiki updates: The wiki pages have all been updated to reflect the new structures, including a better sidebar for navigation between pages: https://github.com/TheDuckCow/godot-road-generator/wiki

Fixes

  • You can now arbitrarily rotate RoadContainers (previously RoadNetwork) without artifacts. Previously you would get weird bends and geometry warpping. #73
  • Disabled LFS so that downloads from the github branches page contain all files necessary #138
  • Toggling visibility on RoadLanes in the editor/game performs much faster, as it won't rebuild all segments.

Generated Changelogs

Full Changelog: 0.3.4...0.4.0

0.3.4

20 Jul 05:33
Compare
Choose a tag to compare

What's Changed

  • Fixed critical issue where roads would not generate in game exports due to an editor-only typing hint
  • Add "Refresh roads" and "select network" buttons to Create menu. by @TheDuckCow in #114

Full Changelog: 0.3.3...0.3.4

0.3.3

08 Jul 04:06
f3c7932
Compare
Choose a tag to compare

road_generator_splash

What's Changed

  • Improved install experience from Godot Asset Library by @TheDuckCow in #98
  • Update export vars so that shoulders and lane width are floats by @TheDuckCow in #99
  • Fix repeated names visible in the add node menu by @TheDuckCow in #103
  • Renamed LaneSegment class and file to RoadLane by @TheDuckCow in #104
  • Auto connect RoadLane ends and sides to neighbors to support car AI by @TheDuckCow in #101
  • Adding dirty flag to fix duplicate rebuilds on scene open by @TheDuckCow in #107
  • Generate signals on road updated by @TheDuckCow in #105
  • Enforce bi-directional RoadPoint connections, and improved validation flexibility on next/prior RoadPoint NodePath updates by @TheDuckCow in #108
  • Fixed persistent lane width and improved easing by @TheDuckCow in #112

Full Changelog: v0.3.2...0.3.3

Published 2023-07-07, publish state to Asset Library TBD

v0.3.2 | Polished release and fresh icon

15 Jun 06:05
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.3.1...v0.3.2

v0.3.1 | Alpha release

27 Mar 05:23
Compare
Choose a tag to compare

This is the first publicly available version of the road generator, in a state that we believe other users are safe to try it out under the guise of it being still in alpha. Some things still may change, but this is already a big step forward over completely manual road creation.

See milestone for issue-oriented list of updates:

https://github.com/TheDuckCow/godot-road-generator/milestone/6?closed=1

What's Changed via PRs

Full Changelog: v0.3.0...v0.3.1