github flame-engine/flame flame-v2.0.0-dev.0
flame v2.0.0-dev.0

Note: This release has breaking changes.

  • REFACTOR: Update _TestBlock on collision_callback_benchmark_test to use named parameters (#3975). (9601dd71)
  • PERF: Skip lifecycle processing work when the queue is empty (#3978). (e2fe2006)
  • PERF: Compose one transform for polygon global vertices and hoist the circle center out of the edge loop (#4046). (0bd4ba81)
  • PERF: Cache camera render closures instead of allocating per frame (#3979). (f212fbca)
  • PERF: Only test polygon edges inside the hitbox overlap and drop allocations from segment intersection (#4045). (a9a3dd92)
  • PERF: Cache the rotation and skip redundant work in Transform2D (#4024). (569b1737)
  • PERF: Insertion-sort the sweep broadphase and swap-remove its active list (#3983). (55eaec4d)
  • PERF: Replace generator-based tree teardown and propagation with an explicit collection pass (#3981). (f7246c10)
  • PERF: Make render contexts and debug caches lazily allocated (#3980). (8f6bb045)
  • FIX: Unwind the context trace consistently after event delivery (#4037). (f219f7f6)
  • FIX: Recognize every input callbacks mixin when hit testing (#3994). (58247cbb)
  • FIX: Reset AdvancedButtonComponent state when a tap is cancelled (#4049). (04358b21)
  • FIX: Adapt to Flutter 3.47 (#3995). (0453bad6)
  • FIX: Keep TextComponent glyphs in place when its paint changes (#4041). (5390a7db)
  • FIX: Scan the lifecycle queue without its iterator in dequeueAdd/dequeueRemove (#4021). (b4578fc6)
  • FIX: Clear removing state on the moved child instead of its new parent (#3958). (8bd84750)
  • FIX: Add a version constraint to the material_ui dependency (#4075). (7ce35d85)
  • FIX: Correct parent context lookup on LocationContextEvent (#4036). (5b5c6063)
  • FIX: Keep currentCameras balanced when componentsAtPoint is not fully iterated (#3971). (783f4041)
  • FIX: Require touch slop before DragCallbacks accepts a drag (#4017). (a4c39877)
  • FIX: Prevent text layouting to break punctuation on adjacent spans (#4060). (ba16cf80)
  • FEAT: Add support to use convex/concave Path shapes in PolygonComponent, PolygonHitbox and Polygon (#4048). (95bc6120)
  • FEAT: Add inspect, set, pause, resume, step, debug and overlay commands to flame_cli (#4055). (8bbd6b3a)
  • FEAT: Add game snapshots and a new flame_cli package to take them from the terminal (#4054). (1d17085f)
  • FEAT: Add input, world snapshot and diff commands to flame_cli (#4057). (60996d95)
  • FEAT: Add WidgetComponent to render Flutter widgets in the component tree (#4053). (e2d8edc3)
  • FEAT: Lock random seeds in the flutter/tests customer testing run (#4052). (c35f9d80)
  • FEAT: Adding the package attribute to widgets missing it (#4034). (fa41947b)
  • FEAT: Promote PathComponent to a standard component (#4050). (e98199fb)
  • FEAT: Removing prefix from asset loaders (#4015). (11972dfb)
  • FEAT: Support allowsMultiPointerDrag on DragCallbacks (#4033). (0b608950)
  • DOCS: Correct docs about drag/scale events on pointer leave (#4035). (00ab4c57)
  • BREAKING REFACTOR: Kill old gesture listener shared interfaces (#4038). (4fec3774)
  • BREAKING REFACTOR: Remove events handled property (#3976). (98e65544)
  • BREAKING REFACTOR: Clean up deprecated MultiDragDispatcher / MultiDragDispatcher aliases (#3977). (9196241b)
  • BREAKING PERF: Flatten the update traversal behind a CustomTraversal seam (#3960). (9510e09f)
  • BREAKING PERF: Replace the OrderedSet children container with a flat sorted-array ComponentList (#4019). (ab6ef3e3)
  • BREAKING FIX: Remove middle intersection point on shared line segments in collision detection (#4004). (e7daba34)
  • BREAKING FIX: Do not delegate onDragCancel to onDragEnd by default (#3934). (d5be1122)
  • BREAKING FIX: Wait for the whole component tree to load before starting the game (#3998). (34dcedc4)
  • BREAKING FIX: Wait for children added in onLoad before marking a component as loaded (#3999). (6f2e2b78)
  • BREAKING FEAT: Kill MouseMovementDetector and rename PointerMove* to MouseMove* (#4011). (7fd33dee)
  • BREAKING FEAT: Return a list instead of a set from the collision detection methods (#4003). (698f2619)
  • BREAKING FEAT: Make Timer and TimerComponent APIs consistent (#4076). (87a0265a)
  • BREAKING FEAT: Kill ScrollDetector in favour of ScrollCallbacks (#4005). (d415867b)
  • BREAKING FEAT: Rename GameWidget.controlled to GameWidget.managed (#3961). (d99224e5)
  • BREAKING FEAT: Kill MultiTouchTapDetector and MultiTouchDragDetector (#4000). (167da17d)
  • BREAKING FEAT: Replace the particle system with a data-oriented particle system (#3948). (2e7a11dd)
  • BREAKING FEAT: Kill ScaleDetector in favour of ScaleCallbacks (#3996). (4dd8782f)
  • BREAKING FEAT: Migrate flame_forge2d to the Box2D v3 based forge2d (#3952). (9081a0f9)
  • BREAKING FEAT: Making add,addAll sync methods (#3968). (52710ca6)
  • BREAKING FEAT: Rename Game.paused to Game.isPaused (#3992). (b261be32)
  • BREAKING FEAT: Make transparent hit-test opt-in via DeferHitTestToComponents (#4062). (94f692f6)
  • BREAKING CHORE: Kill legacy Force Press event API (#3989). (d6d4bfa2)
  • BREAKING CHORE: Kill legacy Vertical/Horizontal drag detectors (#3993). (e291f1cf)
  • BREAKING CHORE: Kill HasGameReference (#4030). (0f5ca11d)
  • BREAKING CHORE: Kill PanDetector and the old event system (#4031). (4e9e50f4)
  • BREAKING CHORE: Rename HasWorldReference to HasWorldRef for consistency with HasGameRef (#4039). (cced5ccd)
  • BREAKING CHORE: Remove deprecated old event classes with replacements (#3987). (619d7b5d)

Published to pub.dev: https://pub.dev/packages/flame/versions/2.0.0-dev.0

Don't miss a new flame release

NewReleases is sending notifications on new releases.