From 4c3e811b62cfe9a2300065fabf0d4f2355440a2f Mon Sep 17 00:00:00 2001 From: heinezen Date: Mon, 25 Nov 2024 23:55:19 +0100 Subject: [PATCH 1/2] doc: Changlog for release 0.6.0. --- doc/changelogs/engine/v0.6.0.md | 76 +++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 doc/changelogs/engine/v0.6.0.md diff --git a/doc/changelogs/engine/v0.6.0.md b/doc/changelogs/engine/v0.6.0.md new file mode 100644 index 0000000000..18e981abc0 --- /dev/null +++ b/doc/changelogs/engine/v0.6.0.md @@ -0,0 +1,76 @@ +# [0.6.0] - 2024-11-26 +All notable changes for version [0.6.0] are documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) since release [0.4.0]. + +## Added + +- Flow field pathfinder +- Activity system for controlling the behavior of game entities +- Drag selection of game entities in the UI +- `clang-format` comment formatting +- Log messages for creation of uniform buffers +- nix flake +- GDB pretty printers for various internal data types + - Time types (`time::time_t`) + - Fixed point values + - Coordinate types + - openage arrays (`util::Vector`) + - Curve keyframes + - Flow field types +- Support for multiple meshes per terrain +- Frustum culling +- Example screenshots for the renderer demos +- Check for outdated modpacks on startup +- Camera boundaries to prevent camera movement outside of the map terrain +- Creation of temporary files/directories +- [Windows] Default paths for DLL searching on startup +- [Windows] DLL manager class in converter to support loading DLLs in multi-threaded conversion + +## Changed + +- Use multithreading for media export in the converter +- Rework curve container `Queue` to be more user-friendly + - `front(t)`/`pop_front(t)` now return the most recently added element before time `t` + - track lifetime of elements by storing insertion time (`alive` time) and erasure time (`dead` time) + - queue elements are now sorted by insertion time +- Curves now use `std::vector` for their keyframe storage to increase performance +- Window settings are passed as `struct` instead of arguments +- Sprite scaling is now handled in shader +- Replace `constexpr` with `consteval` where appropriate +- Optimize renderer + - Vectorize shader uniform (buffer) input storage + - Replace shared pointer usage with references +- Use raw pointers instead of shared pointers in pairing heap implementation + + +## Deprecated + +- Old pathfnder code (`libopenage/pathfinding`) + +## Removed + +- Exception propagation to Python with `_PyTraceback_Add` + +## Fixed + +- Bullet point formatting in event system documentation +- Uniform alignment in uniform buffers +- Input contexts are now handled in the correct order (top to bottom) +- Support for GCC 14 +- Support for Clang 19 +- DE2 conversion + - *The Mountain Royals* DLC + - *Battle for Greece* DLC +- Thread-safety of render entity +- Documentation for the single file converter +- Numerous documentation typos and mistakes +- [Windows] Order of inclusion for `DbgHelp.h` +- [Windows] Build instructions +- [macOS] Build instructions + + +## Full commit log + +https://github.com/SFTtech/openage/compare/v0.5.3...v0.6.0 From 1baaa9b90dbe8feeac9eddca32152e5bffb6b5b8 Mon Sep 17 00:00:00 2001 From: heinezen Date: Mon, 25 Nov 2024 23:55:51 +0100 Subject: [PATCH 2/2] Bump version to 0.6.0. --- openage_version | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openage_version b/openage_version index be14282b7f..a918a2aa18 100644 --- a/openage_version +++ b/openage_version @@ -1 +1 @@ -0.5.3 +0.6.0