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
Added arbitrary non-convex polygon support (only non-self intersecting) with ex.PolygonCollider(...).triangulate() which builds a new ex.CompositeCollider composed of triangles.
ex.IsometricTile now come with a ex.IsometricEntityComponent which can be applied to any entity that needs to be correctly sorted to preserve the isometric illusion
ex.IsometricEntitySystem generates a new z-index based on the elevation and y position of an entity with ex.IsometricEntityComponent
Added draw call sorting new ex.Engine({useDrawSorting: true}) to efficiently draw render plugins in batches to avoid expensive renderer switching as much as possible. By default this is turned on, but can be opted out of.
Added new parameter to ex.Raster({quality: 4}) to specify the internal scaling for the bitmap, this is useful for improving the rendering quality of small rasters due to sampling error.
Added new performance fallback configuration to ex.Engine for developers to help players experiencing poor performance in non-standard browser configurations
This will fallback to the Canvas2D rendering graphics context which usually performs better on non hardware accelerated browsers, currently postprocessing effects are unavailable in this fallback.
By default if a game is running at 20fps or lower for 100 frames or more after the game has started it will be triggered, the developer can optionally show a player message that is off by default.
vargame=newex.Engine({
...
configurePerformanceCanvas2DFallback: {allow: true,// opt-out of the fallbackshowPlayerMessage: true,// opt-in to a player pop-up messagethreshold: {fps: 20,numberOfFrames: 100}// configure the threshold to trigger the fallback}});
Added new ex.ParallaxComponent for creating parallax effects on the graphics, entities with this component are drawn differently and a collider will not be where you expect. It is not recommended you use colliders with parallax entities.
constactor=newex.Actor();// The actor will be drawn shifted based on the camera position scaled by the parallax factoractor.addComponent(newParallaxComponent(ex.vec(0.5,0.5)));
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
This was a big release! We have a ton of new features and a lot of improvements to performance especially around Firefox
See migration guide for v0.25.x -> v0.26.0
Added Features!
feat: Add arbitrary non-convex polygon support by @eonarheim in feat: Add arbitrary non-convex polygon support #2239
Added arbitrary non-convex polygon support (only non-self intersecting) with
ex.PolygonCollider(...).triangulate()
which builds a newex.CompositeCollider
composed of triangles.feat: Fast BoundingBox overlap and transform by @eonarheim in feat: Fast BoundingBox overlap and transform #2241
perf: Add
zIndexChanged$
+ Improve pointer system perf by @eonarheim in perf: AddzIndexChanged$
+ Improve pointer system perf #2242feat: Implement IsometricMap & refactor TileMap with some perf boosts by @eonarheim in feat: Implement IsometricMap & refactor TileMap with some perf boosts #2254
ex.TileMap
now supports per Tile custom colliders!New
ex.IsometricMap
for drawing isometric grids! (They also support custom colliders via the same mechanism asex.TileMap
)ex.IsometricTile
now come with aex.IsometricEntityComponent
which can be applied to any entity that needs to be correctly sorted to preserve the isometric illusionex.IsometricEntitySystem
generates a new z-index based on theelevation
and y position of an entity withex.IsometricEntityComponent
feat: Add pixelRatio override for Text rendering by @eonarheim in feat: Add pixelRatio override for Text rendering #2294
perf(motion): Improve capture transform perf by @eonarheim in perf(motion): Improve capture transform perf #2278
perf(graphics): Implement sorted draw calls by @eonarheim in perf(graphics): Implement sorted draw calls #2277
new ex.Engine({useDrawSorting: true})
to efficiently draw render plugins in batches to avoid expensive renderer switching as much as possible. By default this is turned on, but can be opted out of.feat(graphics): [Add SpriteSheet creator funtion from variable sized sprites image #2288] Implement SpriteSheet builder with custom sourceViews by @eonarheim in feat(graphics): [#2288] Implement SpriteSheet builder with custom sourceViews #2302
SpriteSheet
s from a list of different sized source views usingex.SpriteSheet.fromImageSourceWithSourceViews(...)
feat: FitScreenAndFill and FitContainerAndFill Display Modes by @Joshua-Beatty in feat: contentFitScreen and contentFitContainer Display Modes #2272
feat: [feat: contentFitScreen and contentFitContainer Display Modes #2272] Add Fit Screen/Container and Zoom by @eonarheim in feat: [#2272] Add Fit Screen/Container and Zoom #2312
feat: [equivilant of Phaser 3 Graphics.lineBetween ? #2313] Add New Line Graphics Object by @eonarheim in feat: [#2313] Add New Line Graphics Object #2314
feat: Add Raster quality + lineCap by @eonarheim in feat: Add Raster quality + lineCap #2315
ex.Raster({quality: 4})
to specify the internal scaling for the bitmap, this is useful for improving the rendering quality of small rasters due to sampling error.feat(graphics): Add canvas 2d fallback mechanism by @eonarheim in feat(graphics): Add canvas 2d fallback mechanism #2310
ex.Engine
for developers to help players experiencing poor performance in non-standard browser configurationsfeat: Implement parallax motion component and system by @eonarheim in feat: Implement parallax motion component and system #2303
Added new
ex.ParallaxComponent
for creating parallax effects on the graphics, entities with this component are drawn differently and a collider will not be where you expect. It is not recommended you use colliders with parallax entities.perf: Various performance improvements by @eonarheim in perf: Various performance improvements #2309
Added
ex.Vector.min(...)
andex.Vector.max(...)
to find the min/max of each vector component between 2 vectors.Added
ex.TransformComponent.zIndexChange$
observable to watch when z index changes.Fixes
wasPressed
works inonPostUpdate
lifecycle by @eonarheim in fix: #2263 keyboardwasPressed
works inonPostUpdate
lifecycle #2270What's Changed
New Contributors
FitContentAndFill
,FitScreenAndFill
implementation, and the zoom discussion!Line
graphic improvement discussion!Full Changelog: v0.25.3...v0.26.0
This discussion was created from the release Excalibur v0.26.0 Release.
Beta Was this translation helpful? Give feedback.
All reactions