Skip to content

Kraken Engine v1.4.0

Choose a tag to compare

@durkisneer1 durkisneer1 released this 18 Dec 06:09
· 19 commits to main since this release
0970c80

What's New

  • Orchestrator class for timeline-based transform animations.
    • With this comes the fx submodule which needs to be explicitly imported from pykraken,
    • Each effect function returns an Effect object to give the orchestrator via its next or parallel methods.
  • Transform object encapsulating position, size, scale, angle, positional anchor, and rotational pivot.
  • Inheritable Sprite class for drawable game objects, encapsulates:
    • Attributes for texture, transform, velocity, and an optional "clip" (src) rect.
    • Methods for updating (must be implemented), drawing, and moving.
  • log submodule for logging errors, warnings, and general information.
    • kn.init's new optional debug parameter must be set to True for log messages to output.
    • Enabling debug mode includes logging of device information on launch.
  • Added new event types for pinch gestures, screen keyboard showing/hiding, and if display's usable bounds were changed.
  • SheetStrips can now accept floats for fps values.
  • event.start_text_input and event.stop_text_input now available for use with the TEXT_INPUT user event.
  • The window is now resizable during runtime.

2025-12-1721-10-38-ezgif com-video-to-webp-converter

Breaking Changes

  • Frame object (from AnimationController.current_frame) removed.
    • This means each animation in the controller holds a list of src rects instead of frames.
    • AnimationController[.texture/.clip] takes the place of AnimationController.current_frame[.tex/.src], respectively.
  • The two old renderer.draw functions have been replaced with a unified one, utilizing the Transform object.
  • Old transform submodule functions for manipulating PixelArray objects have moved to the pixel_array submodule.

Bug Fixes

  • Creating a window of equal size as the display while having scaled set to True no longer makes a 0x0 window.
  • Texture's angle property moved to the Transform object.
  • AnimationController.progress can now reach 1.0 when not looping.
  • Rect.clamp would squish the rect when clamped, now fixed.
  • If a Text's internal font pointer goes out of scope or was unset, the text throws an error instead of silently failing.
  • When window is fullscreen, the mouse coordinates are now returned correctly adjusted to the visual dimensions.

Full Changelog: v1.3.1...v1.4.0