You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This issue doesn't mean that we are soon to release v2, it's not even on the horizon yet.
In here we'll track breaking changes that we would want to do for Flame v2 so that they are not forgotten.
More efficient event system (currently the events go through the whole component tree).
Discuss changing anchor system so that children's 0,0 is at parents anchor.
Convert the use of ShapeComponent in the collision detection to use pure shapes instead.
Return a list instead of a set from the collision detection methods.
Completely rewrite ParallaxComponent to have the layers based on PositionComponent and make it more intuitive to use.
Clean-up the HasPaint mixin.
ColorEffect should not take in an Offset, but separate doubles.
Use a more efficient data structure than OrderedSet for children.
Create a MarginComponent that can replace HudMarginComponent and work when added to the viewport (or any sized parent).
Call onGameResize only when the game actually resizes.
Component.add() should return void.
Whoever wants to wait for the component to load can wait for component.loaded, and who wants to wait for it to mount can await component.mounted.
Figure out what to do with Game's mount/attach and remove/detach.
Component.children should return a nullable ComponentSet?, so that it won't be instantiated when there are no children.
Flame v2 changes
This issue doesn't mean that we are soon to release v2, it's not even on the horizon yet.
In here we'll track breaking changes that we would want to do for Flame v2 so that they are not forgotten.
OrderedSet, possibly one tree for updating and one for rendering. (see Make the Flame Component System core more efficient #3957)RenderLayersystem. (see Add a RenderLayer system for global render ordering #3967)ShapeComponentin the collision detection to use pure shapes instead.ParallaxComponentto have the layers based onPositionComponentand make it more intuitive to use.HasPaintmixin.ColorEffectshould not take in anOffset, but separate doubles.OrderedSetfor children.MarginComponentthat can replaceHudMarginComponentand work when added to the viewport (or any sized parent).onGameResizeonly when the game actually resizes.Component.add()should return void.Whoever wants to wait for the component to load can wait for
component.loaded, and who wants to wait for it to mount can awaitcomponent.mounted.mount/attachandremove/detach.Component.childrenshould return a nullableComponentSet?, so that it won't be instantiated when there are no children.GameWidget.controlledtoGameWidget.managed.onPressedandonReleasedtoonTapDownandonTapUpinAdvancedButtonComponent.CameraComponenttype inFlameGame.SpawnComponentshould only have one factory that returns a list of components.SpriteBatchshould take anAnchorin relation to size instead ofVector2with exact pixels for the anchor.prefix, so it become more in-line with Flutter (especially for the widgets).packagefor the caches and for the widgets'.assetconstructors.Iterable<Component>fromchildrenand have query etc directly on the Component.game.paused->game.isPausedonDragCancelshould not delegate toonDragEndby default (see fix: onDragCancel should not delegate to onDragEnd by default #3926).onLoadin theFlameGame.