Skip to content

VOID Engine 2.2.0

Choose a tag to compare

@Shmellyorc Shmellyorc released this 23 Sep 20:19
· 43 commits to master since this release

VOID Engine 2.2.0

VOID Engine 2.2.0 adds new Beacon subscription features, improves InputAction and hashing performance, and includes several rendering, LDtk, and collision fixes.

Beacons

  • Added timed Beacon subscriptions.
  • Added TimeSpan lifetime overloads.
  • Added SubscribeOnce for string and enum topics.
  • Added timed one-shot subscriptions.
  • Timed subscriptions use Game.Instance.FrameTime.TotalTime.
  • Expired subscriptions are cleaned up lazily without requiring a per-frame Beacon update.
  • Existing multicast Beacon dispatch behavior remains unchanged.

Input Actions

  • InputAction now uses cached 64-bit action identifiers internally.
  • InputActionState snapshots now use ulong action identifiers.
  • Reduced repeated string lookup and comparison work.
  • Public string and enum APIs remain unchanged.
  • Retained snapshot and input transition behavior remain unchanged.

Hashing

  • Optimized HashHelper.Cache32 and Cache64 to avoid creating unused Lazy values on cache hits.
  • Preserved existing FNV-1a hashing and thread-safe cached initialization.
  • Reduced unnecessary allocations during repeated cached lookups.

Spritesheets

  • Fixed Aseprite nine-patch center data being interpreted as border sizes.
  • Nine-patch borders are now calculated correctly from the Aseprite center rectangle.
  • Fixed incorrect corner sizing with smaller nine-patch sprites.

LDtk

  • Fixed IntGrid world positions using layer grid dimensions instead of tile size.
  • IntGrid positions now correctly use grid location and tile size.

Collision

  • Fixed MoveAndSlideCircle corner jitter and touching behavior.
  • Improved circle-vs-rectangle and circle-vs-circle penetration handling.
  • Improved radial push-out behavior.
  • Limited circle collision resolution to four passes for more stable corner handling.

Install

dotnet add package Void.Engine --version 2.2.0