Richard Davey
7f5e4d4538
ProcessQueue.checkQueue
is a new boolean property that will make sure only unique objects are added to the Process Queue.
2020-08-24 19:21:01 +01:00
Richard Davey
19c4980c5b
GameObjectFactory.events
is a new property that references the Scene's Event Emitter. This is now used internally.
2020-08-24 19:20:20 +01:00
Richard Davey
0b9dd4aae7
GameObjectCreator.events
is a new property that references the Scene's Event Emitter. This is now used internally.
2020-08-24 19:19:19 +01:00
Richard Davey
671c92e450
Added addedToScene
and removedFromScene
methods
...
* `GameObject.addedToScene` is a new method that custom Game Objects can use to perform additional set-up when a Game Object is added to a Scene. For example, Sprite uses this to add itself to the Update List.
* `GameObject.removedFromScene` is a new method that custom Game Objects can use to perform additional tear-down when a Game Object is removed from a Scene. For example, Sprite uses this to remove themselves from the Update List.
* Game Objects no longer automatically remove themselves from the Update List during `preDestroy`. This should be handled directly in the `removedFromScene` method now.
2020-08-24 19:18:29 +01:00
Richard Davey
bc93416ec7
Added events property and new add and remove callbacks
...
* `DisplayList.events` is a new property that references the Scene's Event Emitter. This is now used internally.
* `DisplayList.addChildCallback` is a new method that overrides the List callback and fires the new ADDED events.
* `DisplayList.removeChildCallback` is a new method that overrides the List callback and fires the new REMOVED events.
2020-08-24 19:15:53 +01:00
Richard Davey
ae4ed0ac54
Expose the new events
2020-08-24 19:13:18 +01:00
Richard Davey
48f94be449
Scenes.Events.REMOVED_FROM_SCENE
is a new event, emitted by a Scene, when it a Game Object is removed from the display list in the Scene, or a Container that is on the display list.
2020-08-24 19:13:06 +01:00
Richard Davey
1423ade7b3
Scenes.Events.ADDED_TO_SCENE
is a new event, emitted by a Scene, when a new Game Object is added to the display list in the Scene, or a Container that is on the display list.
2020-08-24 19:12:54 +01:00
Richard Davey
98cd70cd6c
GameObjects.Events.REMOVED_FROM_SCENE
is a new event, emitted by a Game Object, when it is removed from a Scene, or a Container that is part of the Scene.
2020-08-24 19:11:22 +01:00
Richard Davey
ef91518da5
GameObjects.Events.ADDED_TO_SCENE
is a new event, emitted by a Game Object, when it is added to a Scene, or a Container that is part of the Scene.
2020-08-24 19:10:50 +01:00
tobias
9f1cd22882
Fix typo for documentation on create method of AnimationManager on line 190
2020-08-25 00:43:22 +08:00
Richard Davey
e93d36f38e
The Pointer.getDuration
method now uses the new Pointer downTime
and upTime
values, meaning it will accurately report the duration of when any button is being held down, not just the primary one. Fix #5112
...
* `Pointer.downTime` now stores the event timestamp of when the first button on the input device was pressed down, not just when button 1 was pressed down.
* `Pointer.upTime` now stores the event timestamp of when the final depressed button on the input device was released, not just when button 1 was released.
2020-08-24 17:32:21 +01:00
Richard Davey
2af65b2a1d
Improved JSDocs and types. Fix #5217
2020-08-24 15:04:00 +01:00
Richard Davey
1766f66984
Update JSDocs
2020-08-24 14:58:24 +01:00
Richard Davey
f586cd472a
global.Phaser = Phaser
has been removed, as it's no longer required by the UMD loader, which should make importing in Angular 10 easier. Fix #5212
2020-08-24 14:47:53 +01:00
halilcakar
7593a80880
Merge branch 'master' of https://github.com/photonstorm/phaser
2020-08-22 13:25:32 +03:00
Richard Davey
3484ded2b7
You can now use this.renderer
from within a Scene, as it's now a Scene-level property and part of the Injection Map.
2020-08-22 10:33:46 +01:00
Richard Davey
0cd4d0fc54
Update WebGLRenderer.js
2020-08-21 16:23:04 +01:00
Richard Davey
9a1dc640f8
Fix gl access
2020-08-21 16:17:29 +01:00
Richard Davey
0dd07333af
Updated to use MultiPipeline
2020-08-21 16:14:59 +01:00
Richard Davey
5c39254f36
Testing new config approach
2020-08-21 16:04:26 +01:00
Richard Davey
209b39b38c
New pipeline names and single texture flag
2020-08-21 16:03:29 +01:00
Richard Davey
468c03dfe5
Much better docs and handling of config values
2020-08-21 16:03:07 +01:00
Richard Davey
4b4af50ca9
Quicker return
2020-08-21 16:02:43 +01:00
Richard Davey
37fdde7911
New typedefs for pipeline configs
2020-08-21 16:02:30 +01:00
Richard Davey
600385ac29
A brand new pipeline for single-texture custom pipelines
2020-08-21 16:01:53 +01:00
Richard Davey
57040554ef
Renamed the pipelines to make them less ambiguous and sorted out lots of config properties
2020-08-21 16:01:39 +01:00
Richard Davey
8f5ee5391f
Removed redundant consts
2020-08-21 15:59:41 +01:00
Richard Davey
6435772646
Shaders renamed to match new pipeline names
2020-08-21 15:41:12 +01:00
Richard Davey
14ad202adc
Use new Utils function
2020-08-21 09:44:52 +01:00
Richard Davey
8edbbb2e2d
Renderer.WebGL.Utils.parseFragmentShaderMaxTextures
is a new function that will take fragment shader source and search it for %count%
and %forloop%
declarations, replacing them with the required GLSL for multi-texture support, returning the modified source.
2020-08-21 09:44:43 +01:00
halilcakar
8aa54e86a0
Remove console.log
2020-08-20 23:29:15 +03:00
halilcakar
b4e1b5af77
Fix for #5019
2020-08-20 15:27:29 +03:00
Richard Davey
84ef02743b
The WebGL Renderer will now add the pipelines during the boot
method, instead of init
.
2020-08-20 10:48:30 +01:00
Richard Davey
e3142f313f
WebGLPipeline.hasBooted
is a new boolean property that tracks if the pipeline has been booted or not, which is now far more important in 3.5 than in previous versions. This is checked in the WebGLRenderer.addPipeline
method, and if not set, the pipeline is booted. Fix #5251 #5255
2020-08-20 10:47:21 +01:00
Richard Davey
50c629dca8
Merge branch 'master' of https://github.com/photonstorm/phaser
2020-08-20 10:22:43 +01:00
Richard Davey
8c55fc7ee2
TweenManager.getTweensOf
has a new parameter includePending
. If set, it will also check the pending tweens for the given targets and return those in the results as well. Fix #5260
2020-08-20 10:22:35 +01:00
Richard Davey
ed33253fb1
Merge pull request #5235 from mk360/text-padding
...
[types] allow Text#setPadding to receive an object
2020-08-20 10:04:35 +01:00
Richard Davey
c98a43c9d4
Merge pull request #5258 from khasanovbi/font
...
Allow to pass font in TextStyle
2020-08-20 10:03:02 +01:00
Richard Davey
733de64d46
Merge pull request #5257 from halilcakar/master
...
Fix incorrect event names in ProcessQueue.js#205, 222
2020-08-20 09:57:08 +01:00
Richard Davey
ab605eed78
Remove false import
2020-08-19 13:19:07 +01:00
Richard Davey
b1b8a74cf9
RenderTexture.fill
would fail to fill the correct area under WebGL if the RenderTexture wasn't the same size as the Canvas. It now fills the given region properly.
2020-08-19 13:14:36 +01:00
Richard Davey
2db1496511
Geom.Polygon.Simplify
is a new function that takes a polygon and simplifies the points by running them through a combination of Douglas-Peucker and Radial Distance algorithms, potentially dramatically reducing the number of points while retaining its shape.
2020-08-18 18:05:45 +01:00
Richard Davey
305ea40baf
Update GetRaysFromPointToPolygon.js
2020-08-18 18:05:38 +01:00
Richard Davey
616dbfceb5
Earcut, used for polygon triangulation, has been updated from 2.1.4 to 2.2.2.
2020-08-18 17:24:45 +01:00
Richard Davey
995cfb6271
Expose new function
2020-08-18 17:05:12 +01:00
Richard Davey
74f24a06f3
Use new GetLineToPoints function
2020-08-18 17:05:06 +01:00
Richard Davey
1a1275958f
Only test unique angles
2020-08-18 17:04:55 +01:00
Richard Davey
4678fc7186
Geom.Intersects.GetLineToPoints
is a new function that checks for the closest point of intersection between a line segment and an array of points, where each pair of points form a line segment.
2020-08-18 17:04:32 +01:00
Richard Davey
06c92f9af8
Geom.Intersects.GetRaysFromPointToPolygon
is a new function that emits rays out from the given point and detects for intersection against all given polygons, returning the points of intersection in the results array.
2020-08-17 15:05:46 +01:00
Richard Davey
ceb96665b8
Bumped version
2020-08-17 15:05:39 +01:00
mk360
748e699d43
update setPadding jsdoc
2020-08-10 08:21:26 +03:00
Bulat Khasanov
8e1b5e757d
Allow to pass font in TextStyle
2020-08-09 23:34:31 +03:00
halilcakar
6915fd3420
Fix incorrect event names in ProcessQueue.js#205, 222
2020-08-09 19:55:09 +03:00
Svipal
40a26256c4
oop
2020-08-09 15:55:00 +02:00
Svipal
809d0b7495
merged master
2020-08-09 13:13:09 +02:00
Svipal
241d4193e8
let's try again
2020-08-09 12:33:52 +02:00
Svipal
97bb9b4a8f
bad bad idea
2020-08-09 12:33:26 +02:00
Svipal
c77731d127
bad idea
2020-08-09 12:24:56 +02:00
Svipal
b4a1473fea
test
2020-08-09 12:13:29 +02:00
Svipal
a72efc8ac8
Update ParseTileLayers.js
2020-08-09 11:50:25 +02:00
Richard Davey
7cc616c7b8
Bump version
2020-08-06 17:07:16 +01:00
Richard Davey
75da5b2f22
Reset all textures on rebind, which is what Externs need when finishing
2020-08-06 17:06:26 +01:00
Richard Davey
e77639561b
Use charIndex, not i
2020-08-06 17:06:10 +01:00
Richard Davey
6aaf54e8a7
Don't add frame if empty
2020-08-05 14:15:01 +01:00
Richard Davey
96a64eae4e
ParseXMLBitmapFont
has a new optional parameter texture
. If defined, this Texture is populated with Frame data, one frame per glyph. This happens automatically when loading Bitmap Text data in Phaser.
2020-08-05 12:46:28 +01:00
Richard Davey
d98d305e2f
Frame.setUVs
is a new method that allows you to directly set the canvas and UV data for a frame. Use this if you need to override the values set automatically during frame creation.
2020-08-05 12:45:07 +01:00
Richard Davey
a2c9c3cef6
Fix char right adjustment
2020-08-05 11:48:25 +01:00
Richard Davey
00e5c5fe0f
Update BitmapTextSize.js
2020-08-04 11:25:10 +01:00
Richard Davey
ee01d36918
Update BitmapTextCharacter.js
2020-08-04 11:25:07 +01:00
Richard Davey
1db3ba72f8
Cache shadow values
2020-08-04 11:25:03 +01:00
Richard Davey
50dcc624df
Get Character using char top, right and bottom
2020-08-04 11:24:56 +01:00
Richard Davey
1ae0cfc619
Include char top, right and bottom values
2020-08-04 11:24:43 +01:00
Richard Davey
380cc422b2
The ScaleManager.updateBounds
method is now called every time the browser fires a 'resize' or 'orientationchange' event. This will update the offset of the canvas element Phaser is rendering to, which is responsible for keeping input positions correct. However, if you change the canvas position, or visibility, via any other method (i.e. via an Angular route) you should call the updateBounds
method directly, yourself.
2020-08-04 10:35:29 +01:00
samme
981a4b1a0a
Rename all setInteractive() arguments, and docs
2020-08-03 13:33:30 -07:00
Richard Davey
0d04e40e28
Updated jsdocs
2020-08-03 17:54:40 +01:00
Richard Davey
111a4e1ce2
Calling Rectangle.setSize()
wouldn't change the underlying geometry of the Shape Game Object, causing any stroke to be incorrectly rendered after a size change.
2020-08-03 17:54:29 +01:00
Richard Davey
47a62cd30c
If you apply setSize
to the Dynamic BitmapText the scissor is now calculated based on the parent transforms, not just the local ones, meaning you can crop Bitmap Text objects that exist within Containers. Fix #4653
2020-08-03 11:33:41 +01:00
Richard Davey
2f574070d5
Setting the color
value in the DynamicBitmapText.setDisplayCallback
would inverse the red and blue channels if the color was not properly encoded for WebGL. It is now encoded automatically, meaning you can pass normal hex values as the colors in the display callback. Fix #5225
2020-08-03 10:53:27 +01:00
Richard Davey
0402717834
Expose new function
2020-08-03 10:49:27 +01:00
Richard Davey
ec845ce015
Use GetColorFromValue
2020-08-03 10:49:05 +01:00
Richard Davey
6a32ff56f3
Display.Color.GetColorFromValue
is a new function that will take a hex color value and return it as an integer, for use in WebGL. This is now used internally by the Tint component and other classes.
2020-08-03 10:48:52 +01:00
Richard Davey
0266c7f0a2
Updated docs #5231
2020-08-03 10:37:01 +01:00
Richard Davey
8db2543e27
Merge pull request #5242 from samme/fix/collide-with-friction
...
Fix collisions for objects moved by friction
2020-08-03 10:27:01 +01:00
Richard Davey
08e346952a
Merge pull request #5234 from samme/patch-4
...
Docs: Phaser.Physics.Arcade.Group#defaults
2020-08-03 10:23:15 +01:00
Richard Davey
da05cfa1ad
Merge pull request #5244 from 16patsle/Fix_Text_types
...
Fix types for Text, TextFactory and TextCreator
2020-08-03 10:20:40 +01:00
Richard Davey
c9330fd469
Merge pull request #5241 from samme/docs/add-existing
...
Docs: generic return for add.existing()
2020-08-03 10:19:42 +01:00
Richard Davey
4ac240f280
Added String.RemoveAt
2020-08-02 23:52:45 +01:00
Richard Davey
2810396dc7
The KeyboardPlugin
will now track the key code and timestamp of the previous key pressed and compare it to the current event. If they match, it will skip the event. On some systems if you were to type quickly, you would sometimes get duplicate key events firing (the exact same event firing more than once). This is now prevented from happening.
2020-08-01 21:06:42 +01:00
Richard Davey
c4000843ec
The KeyboardManager
and KeyboardPlugin
were both still checking for the InputManager.useQueue
property, which was removed several versions ago.
2020-08-01 20:54:45 +01:00
Richard Davey
fccd00e8c5
Remove deprecated events
2020-08-01 20:32:50 +01:00
Patrick Sletvold
edf0c17703
Use TextPadding type in Text game object
2020-08-01 13:35:02 +02:00
Patrick Sletvold
87e8eba213
Correctly type style in TextFactory
2020-08-01 13:34:37 +02:00
Patrick Sletvold
a525e43dcf
Add TextConfig type for TextCreator
2020-08-01 13:34:07 +02:00
Richard Davey
42d6456993
Encode dropshadow color
2020-08-01 11:24:26 +01:00
Richard Davey
959645d1f0
Always render drop shadow behind text
2020-08-01 11:24:15 +01:00
Richard Davey
22e8d22e3f
BitmapText.setWordTint
is a new method that allows you to set a tint color (either additive, or fill) on all matching words within a static Bitmap Text. You can specify the word by string, or numeric offset, and the number of replacements to tint.
2020-07-31 18:36:27 +01:00
Richard Davey
b9407967e3
If you give an invalid Bitmap Font key, the Bitmap Text object will now issue a console.warn
.
2020-07-31 18:00:31 +01:00
Richard Davey
79e985dd93
Updated docs
2020-07-31 17:09:40 +01:00
Richard Davey
c0109c1ec9
BatchChar
is a new internal private function for batching a single character of a Bitmap Text to the pipeline.
2020-07-31 16:54:29 +01:00
Richard Davey
2e378b68d1
Apply the dropShadow
2020-07-31 16:39:21 +01:00
Richard Davey
c228dd596a
BitmapText.setDropShadow
is a new method that allows you to apply a drop shadow effect to a Bitmap Text object. You can set the horizontal and vertical offset of the shadow, as well as the color and alpha levels. Call this method with no parameters to clear a shadow.
2020-07-31 16:39:05 +01:00
Richard Davey
aac2276692
BitmapText.preDestroy
is a new method that will tidy-up all of the BitmapText data during object destruction.
2020-07-31 16:22:53 +01:00
Richard Davey
7ce39b991c
Removed un-used properties
2020-07-31 16:17:36 +01:00
Richard Davey
9419606f12
BitmapText.setCharacterTint
is a new method that allows you to set a tint color (either additive, or fill) on a specific range of characters within a static Bitmap Text. You can specify the start and length offsets and a per-corner tint color.
2020-07-31 16:17:23 +01:00
Richard Davey
fc6e7ef759
Removed un-used properties
2020-07-31 15:46:05 +01:00
Richard Davey
2ef28cd0e4
Added getXRound
and getYRound
2020-07-31 15:45:55 +01:00
Richard Davey
4baa0522b9
Bumping to 3.50
2020-07-31 13:41:29 +01:00
Richard Davey
d16d8dc9ce
BitmapTextWebGLRenderer
has been rewritten from scratch to make use of the new pre-cached WebGL uv texture and character location data generated by GetBitmapTextSize
. This has reduced the number of calculations made in the function dramatically, as it no longer has work out glyph advancing or offsets during render, but only when the text content updates.
2020-07-31 13:39:49 +01:00
Richard Davey
49682e744d
Update BitmapText.js
2020-07-31 13:34:50 +01:00
Richard Davey
72654e04d3
Fixed bounds sizes
2020-07-31 13:34:28 +01:00
Richard Davey
c166976fcc
Update BitmapTextCharacter.js
2020-07-31 12:06:57 +01:00
Richard Davey
a4577e2135
The GetBitmapTextSize
function has a new boolean parameter updateOrigin
, which will adjust the origin of the parent BitmapText if set, based on the new bounds calculations.
2020-07-31 12:06:45 +01:00
Richard Davey
a682b83b7c
BitmapText.getCharacterAt
is a new method that will return the character data from the BitmapText at the given x
and y
corodinates. The character data includes the code, position, dimensions and glyph information.
2020-07-31 11:36:48 +01:00
Richard Davey
a72fdd44f8
Bumping to 3.50
2020-07-31 11:32:47 +01:00
Richard Davey
e195aac919
ParseXMLBitmapFont
will now calculate the WebGL uv data for the glyphs during parsing. This avoids it having to be done during rendering, saving CPU cycles on an operation that never changes.
2020-07-31 11:32:37 +01:00
Richard Davey
0385d108a8
Transform.getLocalPoint
is a new method, available on all Game Objects, that takes an x
/ y
pair and translates them into the local space of the Game Object, factoring in parent transforms and display origins.
2020-07-31 10:28:09 +01:00
Richard Davey
214b383fcd
Use correct scale and added start of getCharacterAt method
2020-07-30 23:59:06 +01:00
Richard Davey
a39bcfe69a
Always return chars
2020-07-30 22:38:06 +01:00
Richard Davey
a678f723c6
Always calculate includeChars
2020-07-30 22:37:34 +01:00
Richard Davey
1579069c50
Pixel accurate character data
2020-07-30 18:24:04 +01:00
Richard Davey
eef67b6c11
Update BitmapTextWebGLRenderer.js
2020-07-30 18:23:50 +01:00
Richard Davey
77feb773fd
Fixed descriptions
2020-07-30 18:23:45 +01:00
Richard Davey
bf4c475e85
Floor drawFillRect values
2020-07-30 18:10:23 +01:00
Richard Davey
b108cd03f0
Fix call to GetBitmapTextSize
2020-07-30 15:43:43 +01:00
Richard Davey
408a545aac
BitmapTextWord
, BitmapTextCharacter
and BitmapTextLines
are three new type defs that are now part of the BitmapTextSize
config object, as returned by getTextBounds
. This improves the TypeScript defs and JS Docs for this object.
2020-07-30 15:24:49 +01:00
Richard Davey
286be7df49
The GetBitmapTextSize
and BitmapText.getTextBounds
functions have a new boolean parameter includeChars
. When set to true
it will include a characters
array in the returned bounds object that contains the scaled position coordinates of each character in the BitmapText, which you could use for tasks such as determining which character of the object was clicked.
2020-07-30 15:14:25 +01:00
Richard Davey
cc3d3f7da3
The GetBitmapTextSize
function used Math.round
on the values, if the round
parameter was true
, which didn't create integers. It now uses Math.ceil
instead to give integer results.
2020-07-30 14:47:31 +01:00
Richard Davey
841389628e
The BitmapText.getTextBounds
method was being called every frame, even if the bounds didn't change, potentially costing a lot of CPU depending on the text length and quantity of them. It now only updates the bounds if they change.
2020-07-30 14:46:32 +01:00
Richard Davey
ce9c750175
Geom.Polygon.Translate
is a new function that allows you to translate all the points of a polygon by the given values.
2020-07-30 12:58:35 +01:00
samme
f653a51cc0
Docs: generic return for add.existing()
2020-07-29 12:19:09 -07:00
Richard Davey
ee92d1dac9
Geom.Intersects.GetLineToPolygon
is a new function that checks for the closest point of intersection between a line segment and an array of polygons.
2020-07-29 18:12:40 +01:00
Richard Davey
771509d6c2
Phaser.Types.Math.Vector4Like
is a new data type representing as Vector 4 like object.
2020-07-29 17:42:12 +01:00
Richard Davey
23c00d148d
Phaser.Types.Math.Vector3Like
is a new data type representing as Vector 3 like object.
2020-07-29 17:41:59 +01:00
Richard Davey
517183fd2e
Geom.Intersects.GetLineToLine
is a new function that will return a Vector3 containing the point of intersection between 2 line segments, with the z
property holding the distance value.
2020-07-29 17:15:57 +01:00
mk360
a7371b9a85
[types] allow Text#setPadding to receive an object
2020-07-24 18:48:17 +03:00
Richard Davey
41c76d88b1
Beta tag
2020-07-24 15:34:00 +01:00
Richard Davey
fb1306e8f2
The MatterAttractors
plugin, which enables attractors between bodies, has been fixed. The original plugin only worked if the body with the attractor was _first_ in the world bodies list. It can now attract any body, no matter where in the world list it is. Fix #5160
2020-07-23 18:06:17 +01:00
samme
7685067310
Docs: Phaser.Physics.Arcade.Group#defaults
...
#4171 , #5153
2020-07-23 09:48:53 -07:00
Richard Davey
86f35ef9cf
Updated docs
2020-07-23 17:35:47 +01:00
Richard Davey
b6b570fb91
Merge pull request #5233 from samme/patch-3
...
Docs: protect ScaleManager#onFullScreenChange
2020-07-23 17:10:14 +01:00
Richard Davey
b51a40c1a1
Update RenderTexture.js
2020-07-23 17:01:37 +01:00
Richard Davey
bb3b67c16f
Update RenderTextureWebGLRenderer.js
2020-07-23 17:01:25 +01:00
Richard Davey
c31a9ad4e5
WebGLRenderer.unbindTextures
is a new method that will activate and then null bind all WebGL textures.
2020-07-23 16:24:44 +01:00
Richard Davey
556b5b05be
Update TextureSource.js
2020-07-23 16:23:14 +01:00
Richard Davey
9607ce89c7
Update RenderTextureWebGLRenderer.js
2020-07-23 16:22:46 +01:00
Richard Davey
9b278554d3
RenderTexture.resize
(which is called from setSize
) wouldn't correctly set the TextureSource.glTexture
property, leading to bindTexture: attempt to use a deleted object
errors under WebGL.
2020-07-23 16:22:38 +01:00
samme
02f6c51ff5
Docs: protect ScaleManager#onFullScreenChange
...
#5229
2020-07-22 11:22:43 -07:00
Richard Davey
27426dd0b6
Testing RenderTextures (currently broken, will fix next week)
2020-07-17 18:08:39 +01:00
Richard Davey
0ff08a2994
Update RopeWebGLRenderer.js
2020-07-17 17:07:34 +01:00