Phaser 3.61.0 Beta 1 #6554
photonstorm
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
New Features
Text.setRTLis a new method that allows you to set a Text Game Object as being rendered from right-to-left, instead of the default left to right (thanks @rexrainbow)FX.Circle.backgroundAlphais a new property that allows you to set the amount of the alpha of the background color in the Circle FX (thanks @rexrainbow)Physics.Arcade.World.singleStepis a new method that will advance the Arcade Physics World simulation by exactly 1 step (thanks @monteiz)Tilemaps.ObjectLayer.idis a new property that returns the ID of the Object Layer, if specified within Tiled, or zero otherwise. You can now access the unique layer ID of Tiled layers if the event a map doesn't have unique layer names (thanks @rui-han-crh)Tilemaps.LayerData.idis a new property that returns the ID of the Data Layer, if specified within Tiled, or zero otherwise (thanks @rui-han-crh)Text.setLetterSpacingis a new method andText.lineSpacingis the related property that allows you to set the spacing between each character of a Text Game Object. The value can be either negative or positive, causing the characters to get closer or further apart. Please understand that enabling this feature will cause Phaser to render each character in this Text object one by one, rather than use a draw for the whole string. This makes it extremely expensive when used with either long strings, or lots of strings in total. You will be better off creating bitmap font text if you need to display large quantities of characters with fine control over the letter spacing (thanks @Ariorh1337)ParticleEmitter.clearDeathZonesis a new method that will clear all previously created Death Zones from a Particle Emitter (thanks @rexrainbow)ParticleEmitter.clearEmitZonesis a new method that will clear all previously created Emission Zones from a Particle Emitter (thanks @rexrainbow)Updates
WebAudioSoundManagerwill now bind thebodyto theremoveEventListenermethod, if it exists, to prevent memory leaks (thanks @wjaykim)AnimationManager.globalTimeScaleproperty is now applied to all Game Objects using the Animation component, allowing you to globally speed-up or slow down all animating objects (thanks @TJ09)RopeGame Object now callsinitPostPipelineallowing you to use Post FX directly on it, such as glow, blur, etc. Fix PostFX of Rope game object #6550 (thanks @rexrainbow)Tween.stopmethod will now check to see ifTween.parentis set. If not, it won't try to set a pending removal state or dispatch an event, which should help guard against errors whereTween.stopis called by mistake on already destroyed tweens (thanks @orcomarcio)Tween.removemethod will now check to see ifTween.parentexists before trying to remove it from the parent. This should help guard against errors whereTween.removeis called by mistake on already removed or destroyed tweens. Fix Tween.remove() causes error "Cannot read properties of null (reading 'remove')" #6539 (thanks @orcomarcio)Particle.alphais now clamped to the range 0 to 1 within theupdatemethod, preventing it from going out of range. Fix Particles' alpha value "wraps" if greater than 1 (ex. 1.7 behaves like 0.7) #6551 (thanks @orcomarcio)Math.Wraphas been reverted to the previous version. Fix Phaser.Math.Wrap inconsitent behaviour #6479 (thanks @EmilSV)Bug Fixes
Particle.scaleYwould always be set to thescaleXvalue, even if given a different one within the config. It will now use its own value correctly.Array.Matrix.RotateLeftwas missing thetotalparameter, which controls how many times to rotate the matrix.Array.Matrix.RotateRightwas missing thetotalparameter, which controls how many times to rotate the matrix.Array.Matrix.TranslateMatrixdidn't work with any translation values above 1 due to missing parameters inRotateLeftandRotateRightFX.Blurdidn't set thequalityparameter to its property, meaning it wasn't applied in the shader, causing it to always use a Low Blur quality (unless modified post-creation).BlurFXPipelinedidn't bind the quality of shader specified in the controller, meaning it always used the Low Blur shader, regardless of what the FX controller asked for.FXBlurLowfragment shader didn't have theoffsetuniform. This is now passed in and applued to the resulting blur, preventing it from creating 45 degree artifacts (thanks Wayfinder)Tilemap.createFromObjectsmethod wouldn't always copy custom properties to the target objects or Data Manager. FixcreateFromObjects()doesn't copy custom properties #6391 (thanks @samme @paxperscientiam)scale.minandscale.maxwidthandheightproperties in Game Config were ignored by the Game constructor, which was expectingminWidthandminHeight. This now matches the documnentation. Fix Min/max width and height in game config are ignored by Phaser.Game constructor #6501 (thanks @NikitaShpanko @wpederzoli)Actions.GetLastfunction had the same code as theGetFirstfunction. It now does what you'd expect it to do. Fix Error: GetLast function not implemented correctly #6513 (thanks @dmokel)TilemapLayer.PutTileAtmethod would use an incorrect local GID if the Tilemap Layer wasn't using all available tilesets. Fix PutTileAt sid wrong if layer does not use all tilesets #5931 (thanks @christianvoigt @wjaykim)TextureManager.addSpriteSheetmethod would fail if aTextureinstance was given as the second parameter, throwing aCannot read property 'key' of null(thanks @charlieschwabacher)HexagonalCullBoundsfunction incorrectly referencedthiswithin it, instead oflayer(thanks @DaliborTrampota)HexagonalGetTileCornersfunction incorrectly referencedthiswithin it, instead oflayer(thanks @DaliborTrampota)HexagonalTileToWorldXYfunction incorrectly referencedthiswithin it, instead oflayer(thanks @DaliborTrampota)BitmapTextGame Object will now reset the WebGL Texture unit on flush, which fixes an issue of a flush happened part-way during the rendering a BitmapText (thanks @EmilSV)x: { values: [ 50, 500, 200, 800 ] }it would fail to set the final value unless you specified theinterpolationproperty as well. It now defaults tolinearif not given. Fix Particles' alpha value "wraps" if greater than 1 (ex. 1.7 behaves like 0.7) #6551 (thanks @orcomarcio)ignoreGravityboolean is now checked during the Matter Engine internal functions, allowing this property to now work again. Fix Ignore gravity is not working for matter physics #6473 (thanks @peer2p)Group.createFromConfigwill now check to see if the config contains eitherinternalCreateCallbackorinternalRemoveCallbackand set them accordingly. This fixes an issue where the callbacks would never be set if specified in an array of single configuration objects. Fix Arcade Physics group create from array config result is incorrect #6519 (thanks @samme)PhysicsGroupwill now set theclassTypeand null theconfigwhen an array of single configuration objects is given in the constructor. Fix Arcade Physics group create from array config result is incorrect #6519 (thanks @samme)PathFollower.pathUpdatemethod will now check if thetweenproperty has a validdatacomponent before running the update. This prevents a call toPathFollower.stopFollowfrom throwing aCannot read properties of null (reading '0')error as it tried to do a single update post stop. Fix stopFollow() throws Cannot read properties of null Error #6508 (thanks @francois-dibulo)Examples, Documentation, Beta Testing and TypeScript
My thanks to the following for helping with the Phaser 3 Examples, Beta Testing, Docs, and TypeScript definitions, either by reporting errors, fixing them, or helping author the docs:
@samme
This discussion was created from the release Phaser 3.61.0 Beta 1.
Beta Was this translation helpful? Give feedback.
All reactions