Bot releases are hidden (Show)
Published by hecrj over 4 years ago
Task::succeed
, which replaces the old Task::new
. #66Default
implementation for ui::widget::slider::State
.Default
, Clone
, Copy
, PartialEq
, and Eq
implementations for ui::widget::button::State
.Color::RED
, Color::GREEN
, and Color::BLUE
. #77Color::from_rgb_u32
, which allows to constructs a Color
using an hexadecimal literal (0xRRGGBB
). #77From<nalgebra::Matrix3>
and Into<nalgebra::Matrix3>
implementations for Transformation
. #78Game::is_finished
, which allows to gracefully quit the game on demand. #79Canvas::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. #100Game::cursor_icon
, which allows customization of the mouse cursor icon.Mesh::stroke
now takes an f32
as line_width
instead of a u16
.Task::new
now supports a lazy operation that can fail. #66Transformation::nonuniform_scale
now takes a Vector
. #78KeyboardAndMouse
has been split into the new Keyboard
and Mouse
input trackers. The new mouse
and keyboard
methods can be used to obtain them, respectively. #69Mouse
type can now track additional input:
mesh
example now has a slider to control the tolerance. #100Game::TICKS_PER_SECOND
is set as 0
. #99Published by hecrj about 5 years ago
Mesh
pipeline. This caused vertices to entirely disappear when rendering big meshes, leading to a potential crash. 79651405673ecd16da21b887a622f6650b29f38f
Published by hecrj over 5 years ago
ui
module can be used to extend a Game
and build a user interface. #35
stretch
.ui::core
module can be used to implement custom widgets and renderers.input::Event
enum now has a Gamepad
variant. #29
Shape
and Mesh
have been introduced. Rectangles, circles, ellipses, and polylines can now be drawn with ease using fill or stroke modes. #50
Game::LoadingScreen
associated type. Given that all the Game
associated types implement a trait with a load
method, wiring a loading screen now is as simple as writing its name. Because of this, the Game::new
method is no longer necessary and it is dropped. #35
Input
trait. It allows to implement reusable input handlers. #35
KeyboardAndMouse
input handler. Useful to quickstart development and have easy access to the keyboard and the mouse from the get-go. #35
CursorTaken
and CursorReturned
mouse input events. They are fired when the cursor is used/freed by the user interface. #35
Font::draw
now supports any Target
instead of a window Frame
. #25
Game::debug
performance tracking. Time spent on this method is now shown in the built-in debug view. #26
Default
trait for Text
. #25
Transformation::rotate
. Creates a transformation representing a rotation. #28
Batch::clear
. Clears the batch contents, useful to reuse batches in different frames.Extend
for Batch
. #37
ParallelExtend
for Batch
. A Batch
can now be populated using multiple threads, useful to improve performance when dealing with many thousands of quads. #37
Text
alignment. It can be defined using the new HorizontalAlignment
and VerticalAlignment
types in the graphics
module. #35
Font::measure
. It allows to measure the dimensions of any Text
. #35
Rectangle::contains
. It returns whether or not a Rectangle
contains a given Point
. #35
Sprite::scale
. It can be used to change the Sprite
size when drawed.Default
implementation for Sprite
. #35
Debug::ui_duration
. It returns the average time spent running the UI runtime.Mesh
and Shape
types. #50
Game::Input
associated type now has to implement the new Input
trait. This splits code quite nicely, as the on_input
method moves away from Game
. It also makes Input
implementors reusable. For instance, a KeyboardAndMouse
type has been implemented that can be used out of the box! #35
Game::draw
now takes a Frame
directly instead of a Window
. #35
LoadingScreen::on_progress
has been renamed to LoadingScreen::draw
and it now receives a Frame
instead of a Window
. #35
input::Event
is now split into four different variants representing input sources: Keyboard
, Mouse
, Gamepad
, and Window
. Each one of these sources has its own module inside input
with an Event
type where the old variants can be found. #29
input::KeyCode
has been moved to input::keyboard::KeyCode
. #29
input::MouseButton
has been moved to input::mouse::Button
. #29
Batch::draw
and texture_array::Batch::draw
do not take a position
argument anymore. Using Target::transform
before drawing is preferred. #53
Font::load
has been renamed to Font::load_from_bytes
for consistency. #55
input
example uses the new ui
module now.Game::View
associated type. Implementors of the Game
trait are also meant to hold the game assets now. This simplifies the API considerably, and it helps model your game state-view relationship with precision, avoiding inconsistencies. #35
Game::new
. Game::load
should be used instead. #35
Game::on_input
. Input handlers now must be implemented using the new Input
trait. #35
Published by hecrj over 5 years ago
Game::on_close_request
to control whether the game should be closed when the window receives a close request by the OS. #14
input::Event::TextInput
event, which triggers on text entry. Contains the character typed as a char
. #15
input::Event::CursorEntered
and input::Event::CursorLeft
events, which trigger when the mouse cursor enters or leaves the game window, respectively. #15
input::Event::MouseWheel
, which triggers when the mouse wheel is scrolled. Contains the number of horizontal and vertical lines scrolled as f32
. #15
input::Event::WindowFocused
and input::Event::WindowUnfocused
, which trigger when the game window gains or loses focus, respectively. #15
input::Event::WindowMoved
, which triggers when the game window is moved. Contains the new X and Y coordinates of the window as f32
. #15
wgpu
graphics backend. Vulkan, Metal, D3D11 and D3D12 now support text rendering. OpenGL already supported text rendering. #18
debug
feature is enabled.Published by hecrj over 5 years ago
README
has been improved.debug_assertions
and the debug
feature were disabled.Published by hecrj over 5 years ago