Oak v2.4.0
2.4.0 Changelog:
buttons:
- support fitting text within the button
collision:
- added a helper for 2d rectangular spaces.
config:
- added option for targeting a specific screen pixel ratio width/height when not in fullscreen (helps for osx retina displays)
dlog:
- added an example for non-default logger (regex logger)
- small efficiency boost to standard logger
- ErrorCheck now returns the error consumes
oak:
-viewports can now be shifted by a relative amount rather than having to be set to an absolute location with ShiftScreen
- improved screenshake logic
- expose keypress functionality to allow for software simulated keyboard interactions
render:
- our default font is now baked into our binary, to support use while vendoring.
- added
NewStrPtrText
toFont
. - added
Reverting.Get
to support subSwitch
types. - added
Polygon.GetThickOutline
- added
Polygon.GetGradientOutline
- added
Polygon.GetColoredOutline
- added
ParticleLimit
to particle generators - added
particle.InfiniteLifeSpan
generation option - added
NoopStackable
, for tests to disable rendering anything. - added
mod.StripOuterAlpha
- renamed
NewLineColored
toNewColoredLine
. The old name is deprecated for removal in 3.0. - added
Replace
, analogous toDraw
, to replace one renderable with another without dropping frames. - renamed
DrawPolygon.DrawPolygonDim
toDrawPolygonBounds
. The old name is deprecated for removal iun 3.0 - composite updates to allow for subslices of compositeM and have compositeR implement stackable
scene:
- scenes will now use default NOP scene functions for start, loop, and end, if sent
nil
.
timing:
- added
DoAfterContext
dependencies:
- upgrade to use new shiny 0.4.2 https://github.com/oakmound/shiny/releases/tag/v0.4.2
- upgrade to use klangsynthese 2.1.0
https://github.com/200sc/klangsynthese/releases/tag/v0.2.1
examples:
- new examples were added illustrating viewport locked rooms, zooming on renderables, capturing keyboard presses