Pixel v0.6 Release Notes
Release Date: 2017-05-30 // almost 7 years ago-
Finally, approximately a month since the first public Pixel release, we're releasing Pixel 0.6.
Big thanks to everyone who contributed by sharing ideas, opening issues, or sending pull requests.
Stats
- ๐ Pixel 0.5 was released on April 25
- โ Since then we added 1981 LOC and deleted 469 LOC in 105 commits
- Gained 478 GitHub stars
- Closed 19 issues
๐ New features
The main goal of 0.6 was text drawing. This goal was quickly accomplished and perfected over the last month. Few more features landed too.
- Text drawing using the new text package. Accompanied by the new tutorial and the new typewriter example
- โ Added ability to set Window icon
- โ Added ability to hide the mouse cursor
- ๐ New Rect.Union method
- ๐ New advanced Canvas.Frame method
๐ฅ Breaking changes
๐ Unfortunately, there are a few very important breaking changes in this release too. I decided to included them, because the old ways were starting to annoy me and I felt like these were the right changes to do. Hopefully, there will be no more breaking changes after this.
โก๏ธ All tutorials and examples were updated according to the breaking changes.
- ๐ Changed Vec implementation from
complex128
to a simplestruct
. This choice was made because although thecomplex128
implementation allowed for a very nice addition and subtraction using+
and-
operators, it complicated pretty much every other operation. - โ Removed
SetMatrix
andSetColorMask
fromSprite
and replaced the simplesprite.Draw(target)
signature withsprite.Draw(target, matrix)
andsprite.DrawColorMask(target, matrix, mask)
methods. This choice was made, because it avoids a lot of typing and eliminates some state. The same change was done forCanvas
, althoughSetMatrix
andSetColorMask
methods were kept there , because they serve a different purpose. IMDraw
properties were changed from methods to fields. So now, instead ofimd.Color(colornames.Red)
you writeimd.Color = colornames.Red
. This is more convenient and allows for retrieving the value easily.
๐ Improvements
- โ Added
examples/community
directory, for community examples: right now, there's a maze generator by Stephen Chavez - ๐ Improved documentation in several places
- ๐ Fixed numerous bugs