Coffee v0.4.1 Release Notes

Release Date: 2020-05-11 // about 4 years ago
  • ๐Ÿ›  Fixed

    • Crashes when using Metal or DirectX. #126

Previous changes from v0.4.0

  • โž• Added

    • Task::succeed, which replaces the old Task::new. #66
    • 0๏ธโƒฃ Default implementation for ui::widget::slider::State.
    • 0๏ธโƒฃ Default, Clone, Copy, PartialEq, and Eq implementations for ui::widget::button::State.
    • โž• Additional color constants: Color::RED, Color::GREEN, and Color::BLUE. #77
    • Color::from_rgb_u32, which allows to constructs a Color using an hexadecimal literal (0xRRGGBB). #77
    • From<nalgebra::Matrix3> and Into<nalgebra::Matrix3> implementations for Transformation. #78
    • Game::is_finished, which allows to gracefully quit the game on demand. #79
    • Canvas::read_pixels, a method to read the contents of a Canvas as a DynamicImage from the image crate.
    • ๐Ÿ’ป ui::Panel, a dark box that can be used to wrap a widget.
    • ๐Ÿ’ป ui::ProgressBar, a progress bar to give visual feedback to your users when performing a slow task.
    • ๐Ÿ’ป ui::Image, a simple widget to display a graphics::Image in your user interface.
    • Mesh::new_with_tolerance, which allows to control the tolerance of line segment approximations. #100
    • Game::cursor_icon, which allows customization of the mouse cursor icon.

    ๐Ÿ”„ Changed

    • Mesh::stroke now takes an f32 as line_width instead of a u16.
    • ๐Ÿ‘ Task::new now supports a lazy operation that can fail. #66
    • Face culling has been disabled for Vulkan, Metal, D3D11, and D3D12 backends. In OpenGL, face culling was already disabled.
    • Transformation::nonuniform_scale now takes a Vector. #78
    • The logic of KeyboardAndMouse has been split into the new Keyboard and Mouse input trackers. The new mouse and keyboard methods can be used to obtain them, respectively. #69
    • The Mouse type can now track additional input:
      • any button click #67
      • wheel movements #67
      • the cursor leaving/entering the game window #67
    • The mesh example now has a slider to control the tolerance. #100

    ๐Ÿ›  Fixed

    • Hang when Game::TICKS_PER_SECOND is set as 0. #99