fix(deps): update dependency excalibur to v0.27.0 (main) #45
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.26.0
->0.27.0
Release Notes
excaliburjs/Excalibur
v0.27.0
Compare Source
Breaking Changes
ex.Engine.snapToPixel
now defaults tofalse
, it was unexpected to have pixel snapping on by default it has now been switched.ex.Physics.useRealisticPhysics()
physics solver has been updated to fix a bug in bounciness to be more physically accurate, this does change how physics behaves. Settingex.Body.bounciness = 0
will simulate the old behavior.ex.TransformComponent.posChanged$
has been removed, it incurs a steep performance costex.EventDispatcher
meta events 'subscribe' and 'unsubscribe' were unused and undocumented and have been removedex.TileMap
tlies are now drawn from the lower left by default to match withex.IsometricMap
and Tiled, but can be configured withrenderFromTopOfGraphic
to restore the previous behavior.onActivate
andonDeactivate
methods have been changed to receive a single parameter, an object containing thepreviousScene
,nextScene
, and optionaldata
passed in fromgoToScene()
Deprecated
Added
Added new configurable
ex.TileMap
option for rendering from the bottom or the top of the graphic, this matches withex.IsometricMap
and how Tiled rendersrenderFromTopOfGraphic
, by defaultfalse
and renders from the bottom.Added new
ex.Future
type which is a convenient way of wrapping a native browser promise and resolving/rejecting laterAdded new
ex.Semaphore
type to limit the number of concurrent cans in a section of code, this is used internally to work around a chrome browser limitation, but can be useful for throttling network calls or even async game events.Added new
ex.WatchVector
type that can observe changes to x/y more efficiently thanex.watch()
Added performance improvements
ex.Vector.distance
improvementex.BoundingBox.transform
improvementAdded ability to clone
ex.Vector.clone(destVector)
into a destination vectorAdded new
ex.Transform
type that is a light weight container for transformation data. This logic has been extracted from theex.TransformComponent
, this makes it easy to passex.Transform
s around. Additionally the extractedex.Transform
logic has been refactored for performance.Added new
ex.AffineMatrix
that is meant for 2D affine transformations, it uses less memory and performs less calculations than theex.Matrix
which uses a 4x4 Float32 matrix.Added new fixed update step to Excalibur! This allows developers to configure a fixed FPS for the update loop. One advantage of setting a fix update is that you will have a more consistent and predictable physics simulation. Excalibur graphics will be interpolated automatically to avoid any jitter in the fixed update.
Allowed setting playback
ex.Sound.duration
which will limit the amount of time that a clip plays from the current playback position.Added a new lightweight
ex.StateMachine
type for building finite state machinesAdded
ex.Sound.seek(positionInSeconds)
which will allow you to see to a place in the sound, this will implicitly pause the soundAdded
ex.Sound.getTotalPlaybackDuration()
which will return the total time in the sound in seconds.Allow tinting of
ex.Sprite
's by setting a newtint
property, renderers must support the tint property in order to function.Added
ex.Sound.getPlaybackPosition()
which returns the current playback position in seconds of the currently playing sound.Added
ex.Sound.playbackRate
which allows developers to get/set the current rate of playback. 1.0 is the default playback rate, 2.0 is twice the speed, and 0.5 is half speed.Added missing
ex.EaseBy
action type, usesex.EasingFunctions
to move relative from the current entity position.Added 2 new
Action
types to enable running parallel actions.ex.ActionSequence
which allows developers to specify a sequence of actions to run in order, andex.ParallelActions
to run multiple actions at the same time.Add target element id to
ex.Screen.goFullScreen('some-element-id')
to influence the fullscreen element in the fullscreen browser API.Added optional
data
parameter togoToScene
, which gets passed to the target scene'sonActivate
method.Fixed
Fixed issue with
ex.Canvas
andex.Raster
graphics that forced their dimensions to the next highest power of two.Fixed issue with
ex.Engine.snapToPixel
where positions very close to pixel boundary created jarring 1 pixel oscillations.Fixed bug where a deferred
goToScene
would preserve the incorrect scene soengine.add(someActor)
would place actors in the wrong scene after transitioning to another.Fixed usability issue and log warning if the
ex.ImageSource
is not loaded and a draw was attempted.Fixed bug in
ex.Physics.useRealisticPhysics()
solver whereex.Body.bounciness
was not being respected in the simulationFixed bug in
ex.Physics.useRealisticPhysics()
solver whereex.Body.limitDegreeOfFreedom
was not working all the time.Fixed bug in
Clock.schedule
where callbacks would not fire at the correct time, this was because it was scheduling using browser time and not the clock's internal time.Fixed issue in Chromium browsers where Excalibur crashes if more than 256
Image.decode()
calls are happening in the same frame.Fixed issue where
ex.EdgeCollider
were not working properly inex.CompositeCollider
forex.TileMap
'sFixed issue where
ex.BoundingBox
overlap return false due to floating point rounding error causing multiple collisions to be evaluated sometimesFixed issue with
ex.EventDispatcher
where removing a handler that didn't already exist would remove another handler by mistakeFixed issue with
ex.EventDispatcher
where concurrent modifications of the handler list where handlers would or would not fire correctly and throwTweak to the
ex.ArcadeSolver
to produce more stable results by adjusting by an infinitesimal epsilonFixed issue with
ex.ArcadeSolver
based collisions where colliders were catching on seams when sliding along a floor of multiple colliders. This was by sorting contacts by distance between bodies.Fixed issue with
ex.ArcadeSolver
where corner contacts would zero out velocity even if the bodies were already moving away from the contact "divergent contacts".Fixed issue where
ex.Sound
wasn't being paused when the browser window lost focusUpdates
Changed
ex.Engine.configurePerformanceCanvas2DFallback
no longer requiresthreshold
orshowPlayerMessage
ex.Engine.snapToPixel
now defaults tofalse
ex.Matrix
was used have been switched toex.AffineMatrix
ex.TransformComponent
was used have been switched toex.Transform
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.