Changelog History
-
v0.15.3 Changes
August 23, 20200.15.3 is the new 0.15.2
0.15.2 was published off the wrong commit. As fate would have it, the commit wasn't just trivially wrong, like a typo in a changelog...it was flat out broken. ๐คฆโโ๏ธ As we don't want any accidental use of it, 0.15.2 has been yanked from crates.io.
0.15.3 is the new 0.15.2 that actually works. Enjoy!
-
v0.15.2 Changes
August 22, 2020Note
Please note that after the 0.15.x series Amethyst will switch from specs to legion for the ECS subsystem. This will be a significant breaking change.
๐ Changed
- ๐ท Internal CI improvements
- ๐ Recommend
cargo new pong
instead of deprecatedamethyst new pong
in the book tutorial (#2448)
๐ Fixed
- ๐ Fix
Camera::screen_ray
bug introduced in 0.15.1 (#2447)
-
v0.15.1 Changes
August 18, 2020Note
Please note that after the 0.15.x series Amethyst will switch from
specs
tolegion
for the ECS subsystem. This will be a significant breaking change.โ Added
- ๐ New
optional_graphics
example demonstrating running an app with and without graphics (#2282) - ๐ Return a standalone
Dispatcher
fromGameDataBuilder::build_dispatcher
๐ instead of usingDataInit
to build aGameData
(#2294) - ๐ Added User Interface chapter to The Book (#2311, #2346, #2347, #2368, #2373)
- ๐ Support text alignment in
UiButton
andUiLabel
(#2316) - You can now bind multiple inputs to a single axis via
Axis::Multiple
(#2341) - ๐ Support layer to be set in
UiLabelBuilder
(#2358) - ๐ Support line mode to be set in
UiLabelBuilder
andUiButtonBuilder
(#2358) GltfPrefab
now also imports lights from a glTF source (#2362)- Added Tiles chapter to The Book (#2391)
- โ Added
SpriteRender::new
for cleaner instantiation (#2395, #2419) - 0๏ธโฃ
amethyst_ui::UiButtonActionRetrigger
now derivesDefault
andClone
. (#2388)
๐ Changed
- โ Removed far plane from perspective projection (#2118)
- ๐ท Experimented with CI solutions, selected GitHub Actions. Fixed bors & stalebot. (#2262, #2380, #2382, #2410, #2413, #2414, #2415)
amethyst_rendy::shape::Shape::upload
takes&ShapeUpload
. (#2264)- โก๏ธ Updated examples, with special attention to the pong example. Improved readmes, updated screenshots, colocated assets with example code (#2248, #2289, #2305, #2201, #2310, #2312, #2349, #2384, [#2396], #2422)
UiText
now requires 2 more argumentsline_mode
andalign
(#2358)- ๐ Updated the style of The Book (#2355)
๐ Fixed
- ๐ Fix tile example's
MapMovementSystem
to look for the correct components (#2209) - ๐ Fix issue where all
TileMap
s were rendered with the same transformation. (#2210) - ๐ Fix the bind method for
DynamicVertexBuffer::<B,u32>
(#2221) - ๐ Fix examples which would not run due to incorrect system order. (#2213, #2223, #2239, #2243, #2267)
- ๐ Fix Texture asset debugging representation (#2231)
- ๐ Fix fixed updates being tied to time_scale (#2255)
- ๐ Fix incorrect assets being used when asset handles get reused (#2258)
- ๐ Fix bug causing only one TileMap to be rendered (#2296)
- ๐ Fix
UiButtonBuilder
so buttons it builds get rendered (#2299) - ๐ Fix
Tint
so its color is converted from sRGBA to linear RGBA so shader color is correct. Also update various documentation regarding linear RGBA (#2314, #2398) - ๐ Fix text alignment in
UiText
(#2316, #2358) - ๐ Fix release build path resolution on Windows (#2337)
- ๐ Fix textures sometimes showing up incorrectly or not at all. (#2339)
- ๐ New
-
v0.15.0 Changes
March 24, 2020โ Added
- ๐ Support settings module log levels from a RON file. (#2115)
- Export the
get_parent_pixel_size
functions from the ui module. ([#2128) - Export the
pixel_width
andpixel_height
methods on theUiTransform
. ([#2128) - ๐ Support UiEvents targeting multiple overlapping entities. (#2138)
"storage-event-control"
feature enables thespecs
"storage-event-control"
feature. (#2152)
๐ Changed
- Re-export
TargetedEvent
fromamethyst_ui
. (#2114) - ๐ป
amethyst::ui::Anchor
is nowCopy
. (#2148) - ๐ป
amethyst::ui::LineMode
is nowCopy
. (#2148) - ๐
UiButtonBuilder::build
takes in&mut UiButtonBuilderResources
. (#2148) - _ Breaking: _
UiBundle
depends onInputBundle
being registered with the dispatcher first. (#2151) - Re-export
UiImageLoadPrefab
fromamethyst_ui
. (#2169, #2181) - ๐ Don't remove
HiddenPropagate
components set by users manually. (#2155)
โ Removed
- ๐
"nightly"
feature is removed, missing resource panic message includes type name on stable. (#2136)
๐ Fixed
- ๐ Fixed an issue with
states_ui
example loading items incorrectly. (#2117) - Editable text fields now correctly highlight strings containing spaces. (#2108, #2143)
- Caret for editable text box is drawn in correct position. (#2146, #2149)
- Caret for editable text box is positioned correctly on first click. (#2151)
- Editable text is correctly blurred / unfocused when clicking outside its bounds. (#2091, #2151)
- โ
amethyst_test
crate features now map 1-1 toamethyst
features. (#2153)
-
v0.14.0 Changes
January 30, 2020โ Added
- Implement
Debug
forProgressCounter
andProgressCounterTracker
. (#1973) - โ Added a custom render pass Example. (#1904)
- โ Add an entry for
examples/tiles
to the examples readme. (#1978) - โ Added UI states/menu example. #1986
- ๐ Allow user to specify custom completion function in
amethyst_test::WaitForLoad
. (#1984) - โ
Log warning when
amethyst_test::WaitForLoad
has not completed in 10 seconds. (#1984) - Derive
Copy
andPartialEq
foramethyst::renderer::resources::Tint
. (#2033) - Derive
Hash
foramethyst::input::{Button, ControllerButton, ScrollDirection}
. (#2041) - โ Added Trans::Replace, Trans::NewStack, and Trans::Sequence to the State Machine Transitions. (#2067,#2071)
- โ Add rendy/gfx-backend log verbosity through configuration. (#1652) (#2048)
- โ Add
Draggable
component that can be used withUiTransform
to make widgets draggable. (#2080)
๐ Changed
- ๐ Use a premultiplied view_proj matrix in vertex shaders. (#1964)
- ๐ amethyst_network completely rewritten to provide a new baseline with which to build. ([#1917])
- ๐ Cleaned up tiles example. Added rotation and translation tests, fixed raycast debug box. Added default zoom to PROJECT
perspective projection since no one knew to zoom out. (#1974) - TileMaps to_tile and to_world now take an Option<&Transform> that allows them to work if the entire map in
translated. (#1987,#1991) AmethystApplication::with_fn
constraint relaxed fromFn
toFnOnce
. (#1983)- ScreenDimensions now consistently reports window size in physical pixels. ([#1988])
Config::load
now returns an error or failure rather than silently falling back to the default config. Same is true for thefrom_config_file
methods onRenderToWindow
,WindowBundle
, andWindowSystem
(#1989)- โ Adds
get
methods to the underlying net::transport resources (#2005) - ๐ Changed
SpriteSheetFormat::import_simple
to allow importing grid basedSpriteSheets
(#2023)
Migration Note: Rons need to wrap their content in either Grid() or List() - TileMap to_tile doesn't panic in debug mode. It instead return Result<Point,TileOutOfBounds>. (#2020,#2070)
- โ Added new Error options for
NetworkSimulationEvent
. - ๐ Changed amethyst config directory from
$HOME/.amethyst
to$HOME/.config/amethyst
(#2079) - Changed
world_to_screen
camera transformation to match inverse of the one inscreen_ray
(#2057) amethyst_input::Axis::Mouse
now only has a single radius value. One of the two values was guaranteed to be unused. (#2099)
๐ Deprecated
Config::load_no_fallback
, useConfig::load
instead (#1989)
๐ Fixed
- ๐ Tilemap rotation was incorrect and not transposed. Fixed and uses component rotation. (#1974)
- 0๏ธโฃ
Config
types no longer require aDefault
impl (#1989) - Fixed Incorrect path for sprite_camera_follow example (#2004)
- โ Run
System::setup
for pausable systems' delegate. (#2029) - ๐ Fixed an incorrect dimensions being used in Tile Encoders, causing bad lookups in assymetric maps in any Z-level besides 0 (#2017)
- ๐ Fix encoders dimensional cases and optimize storage space (#2059)
- ๐ Fixed off by one issue in to_tile function (#2103)
- ๐ Fix dragging UI widgets that have ScaleMode::Percent (#2111)
- Implement
-
v0.13.2 Changes
October 05, 2019๐ This release simply fixes a yanked dependency in the amethyst-locale crate.
๐ Fixed
- ๐ Fix fluent and unic-langid alignment (#1966)
-
v0.13.1 Changes
October 04, 2019This release fixes some bugs in
amethyst_locale
andamethyst_tiles
.โ Added
- โก๏ธ
FlatEncoder
added to amethyst_tiles for flat linear encoding which is optimized for space. (#1950)
๐ Changed
- โก๏ธ Updated
syn
,quote
, andproc-macro2
to1.0
. (#1952)
๐ Fixed
TileMap
was not allocating enough space for to compensate for morton encoding alignment. This means that
all tilemap allocation must occur on 2n boundary aligned on all axis (or x-y axis for Morton2D) (#1950)- โ Add missing re-export for HideHierarchySystemDesc (#1945)
TileArgs
POD had incorrect format fortile_coordinate
argument, caused a crash on metal backend. (#1957)
- โก๏ธ
-
v0.13.0 Changes
September 26, 2019๐ This release, on top of the changes below, adds the
amethyst_tiles
crate, which provides utilities that makes handling and drawing stuff in tiles a lot easier! ๐Major breaking changes
- ๐ Systems needing initialization with world resources must go through a
SystemDesc
intermediate builder. (#1780)
โ Added
- ๐ 'amethyst_tiles' crate added supporting 2d and 3d tile map rendering with sprites. (#1820)
SystemDesc
proc macro derive to simplify definingSystemDesc
s. (#1780)UiButtonData
is now exported fromamethyst_ui
and can be used for custom widgets. (#1859)- โ Add an audio subchapter to the pong chapter. (#1842)
- โ Add
DispatcherOperation
to store dispatcher build logic, which can be executed lazily. (#1870) AmethystApplication
takes inSystemDesc
s throughwith_system_desc
. (#1882)AmethystApplication::with_thread_local_desc
takes inRunNowDesc
. (#1882)- โ Add
NineSlice
support toUiImage
. (#1896) RenderingBundle
for full manual control of the rendering pipeline via a customGraphCreator
. (#1839)CameraOrtho::new
takes inCameraOrthoWorldCoordinates
, which can be set to custom dimensions. (#1916)Camera::screen_ray
method added, returning an appropriateRay
structure (#1918).- โ
amethyst_test
:InMemorySource
andWaitForLoad
helpers (#1933). - Animations are available with
UiTransform
s. ([#1935])
๐ Changed
- ๐ All
-Builder
structs in amethyst_ui/prefab.rs are now called-Data
. (#1859) AmethystApplication
takes in aSystem
instead of a closure forwith_system
. (#1882)AmethystApplication::with_thread_local
constraint relaxed toRunNow
(previouslySystem
). (#1882)SystemDesc
proc macro supports#[system_desc(event_reader_id)]
to register event reader. (#1883)SystemDesc
proc macro supports#[system_desc(flagged_storage_reader(Component))]
. (#1886)- ๐ Use
SystemDesc
derive to generateSystemDesc
implementations for common case systems. (#1887) DispatcherOperation
stores system name and dependencies asString
s. (#1891)TextureProcessor
renamed toTextureProcessorSystem
. (#1839)MeshProcessor
renamed toMeshProcessorSystem
. (#1839)AmethystApplication::with_setup
now takes inFnOnce(&mut World) + Send + 'static
. (#1912)AmethystApplication::with_setup
runs the function before the dispatcher. (#1912)UiImage:PartialTexture
&UiImage:Sprite
texture coordinates are correct. Clarified types. (#1906,#1919)Camera::screen_to_world
renamedCamera::screen_to_world_point
and its API has changed to a Point3 (#1918).
๐ Fixed
RenderingBundle
is registered last in all examples. (#1881)
- ๐ Systems needing initialization with world resources must go through a
-
v0.12.0 Changes
July 30, 2019๐ New release! ๐
๐ฅ Breaking changes
- ๐
Float
newtype removed, moved back tof32
primitive for all values (#1747) TextureProcessor
andMeshProcessor
systems are now separated fromRenderingSystem
(#1772)
โ Added
- โ Add a feature flag
sentry
to disable the sentry dependency. (#1804) (#1825) - Fixes and renames regression from ([#1442]) added back
position_from_world
asscreen_to_world
. Also added
world_to_screen
. Also addsTransform::copy_local_to_global()' for
debug_assertion` builds (#1733) - Add
add_rectangle
,add_rotated_rectangle
,add_box
,add_rotated_box
,add_circle
,add_rotated_circle
,
add_cylinder
,add_rotated_cylinder
andadd_sphere
functions toDebugLinesComponent
and the corresponding draw functions toDebugLines
, to draw simple shapes with debug lines. (#1766) - ๐
InputEvent::AxisMoved
is sent upon button press / release. (#1512, #1797) - โก๏ธ
UiImage
is updated to allow for partial textures and sprites. (#1809,#1811) - โ Added
RenderingBundle
with a rendering plugin system, making rendering setup easier (#1772) - ๐ Documentation for
Tint
component. (#1802)
๐ Changed
- ๐ฑ Splitted the
/resources
directory of amethyst projects into/assets
and/config
. ([#1806]) - ๐ Rename FPSCounter, FPSCounterBundle, FPSCounterSystem to FpsCounter, FpsCounterBundle, FpsCounterSystem. (#1719)
- โ Add Tint component support for sprites. (#1756)
- โ Remove remaining <N: RealField> type parameter on GameDataBuilder, add Debug derive to LoggerConfig (#1758)
- Inverted mouse wheel scroll direction event. Now using winit's standard. (#1767)
- Add
load_from_data_async
to Asset Loader. (#1753) - โ Add
SerializableFormat
marker trait which is now needed to be implemented for all the formats that are supposed to be serialized. (#1720) - ๐ Make the GltfSceneOptions field of GltfSceneFormat public. (#1791)
- โก๏ธ Updated fluent to version 0.6. (#1800)
InputEvent<T>
now takes in theBindingTypes
as a type parameter. (#1797) - ๐ Use
crossbeam-queue
crate directly. (#1822)
๐ Fixed
- ๐
-
v0.11.1 Changes
June 22, 2019๐ This release does not come with any API changes or additions, it only contains documentation fixes and a fix to make docs.rs build
amethyst
again.