Amethyst v0.13.0 Release Notes

Release Date: 2019-09-26 // over 4 years ago
  • ๐Ÿš€ 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 defining SystemDescs. (#1780)
    • UiButtonData is now exported from amethyst_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 in SystemDescs through with_system_desc. (#1882)
    • AmethystApplication::with_thread_local_desc takes in RunNowDesc. (#1882)
    • โž• Add NineSlice support to UiImage. (#1896)
    • RenderingBundle for full manual control of the rendering pipeline via a custom GraphCreator. (#1839)
    • CameraOrtho::new takes in CameraOrthoWorldCoordinates, which can be set to custom dimensions. (#1916)
    • Camera::screen_ray method added, returning an appropriate Ray structure (#1918).
    • โœ… amethyst_test: InMemorySource and WaitForLoad helpers (#1933).
    • Animations are available with UiTransforms. ([#1935])

    ๐Ÿ”„ Changed

    • ๐Ÿ— All -Builder structs in amethyst_ui/prefab.rs are now called -Data. (#1859)
    • AmethystApplication takes in a System instead of a closure for with_system. (#1882)
    • AmethystApplication::with_thread_local constraint relaxed to RunNow (previously System). (#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 generate SystemDesc implementations for common case systems. (#1887)
    • DispatcherOperation stores system name and dependencies as Strings. (#1891)
    • TextureProcessor renamed to TextureProcessorSystem. (#1839)
    • MeshProcessor renamed to MeshProcessorSystem. (#1839)
    • AmethystApplication::with_setup now takes in FnOnce(&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 renamed Camera::screen_to_world_point and its API has changed to a Point3 (#1918).

    ๐Ÿ›  Fixed

    • RenderingBundle is registered last in all examples. (#1881)