Richard Davey
d92195a8b8
Default rotation as well
2020-09-02 22:55:51 +01:00
Richard Davey
1562525a51
When using Camera.setRenderToTexture
its zoom
value would be applied twice. Fix #4221
2020-09-02 22:50:27 +01:00
Richard Davey
cf17dbe7e9
Previously, the easeParams
array within a Tweens props
object, or a multi-object tween, were ignored and it was only used if set on the root Tween object. It will now work correctly set at any depth. Fix #4292
2020-09-02 22:27:40 +01:00
Richard Davey
5e9b629a97
Merge pull request #5284 from samme/feature/scene-resume-wake-reset-keys
...
Reset keys when scene sleeps or pauses
2020-09-02 21:50:42 +01:00
Richard Davey
070fc70fe7
Lint fix
2020-09-02 18:07:21 +01:00
Richard Davey
e01f310d16
Added new properties, support for config playback and better delayed handling
2020-09-02 17:56:09 +01:00
Richard Davey
a2f0c2e7e3
Added getTotalFrames
and calculateDuration
methods.
2020-09-02 17:43:44 +01:00
Richard Davey
90fbb0f13d
Updated jsdocs for play
to show it can take the new config
2020-09-02 17:41:43 +01:00
Richard Davey
fe74eb70f7
Create PlayAnimationConfig.js
2020-09-02 17:41:23 +01:00
Richard Davey
f58f94ecf6
Formatting
2020-09-02 14:42:26 +01:00
Richard Davey
ace0ee7bab
Fixed JSDoc event names
2020-09-02 12:34:58 +01:00
Richard Davey
8f8a90bedd
Utils.Array.StableSort
has been recoded. It's now based on Two-Screens stable sort 0.1.8 and has been updated to fit into Phaser better and no longer create any window bound objects. The inplace
function has been removed, just call StableSort(array)
directly now. All classes that used StableSort.inplace
have been updated to call it directly.
2020-09-02 12:24:27 +01:00
Richard Davey
27fd496e8f
Updated to stablesort 0.1.8 and recoded to fit our style. Removed inplace
static function.
2020-09-02 12:21:36 +01:00
Richard Davey
0d934c730e
Every single Tilemap.Component
function has now been made public. This means you can call the Component functions directly, should you need to, outside of the Tilemap system.
2020-09-02 11:54:24 +01:00
Richard Davey
2980a416c9
Merge pull request #5278 from samme/fix/arcade-body-resetFlags
...
Reset flags when resetting an Arcade Body
2020-09-02 11:11:34 +01:00
samme
288d023bab
Reset keys when scene sleeps or pauses #5281
2020-09-01 12:42:57 -07:00
Richard Davey
07865a5823
Final set of namespace changes. Fix #5062
2020-09-01 20:28:42 +01:00
Richard Davey
d2cc809fdb
Exported functions to namespace
2020-09-01 18:56:01 +01:00
Richard Davey
da3f9b22c3
Exposed on the main API namespace
2020-09-01 18:38:57 +01:00
Richard Davey
302a49863b
Improved jsdocs
2020-09-01 18:38:44 +01:00
Richard Davey
5b96ade1c7
Types.GameObjects.Text.GetTextSizeObject
2020-09-01 18:38:35 +01:00
Richard Davey
506426f706
The Color.HSVToRGB
function has been rewritten to use the HSL and HSV formula from Wikipedia, giving much better results. Fix #5089
2020-09-01 18:06:23 +01:00
Richard Davey
02ac6bcb7d
If inputWindowEvents
is set in the Game Config, then the MouseManager
will now listen for the events on window.top
instead of just window
, which should help in situations where the pointer is released outside of an embedded iframe. Fix #4824
2020-09-01 17:51:17 +01:00
Richard Davey
4c353571ca
Removed protected status
2020-09-01 17:44:07 +01:00
Richard Davey
84a867c2ac
ArcadePhysics.disableUpdate
is a new method that will prevent the Arcade Physics World update
method from being called when the Scene updates. By disabling it, you're free to call the update method yourself, passing in your own delta and time values.
...
`ArcadePhysics.enableUpdate` is a new method that will make the Arcade Physics World update in time with the Scene update. This is the default, so only call this if you have specifically disabled it previously.
2020-09-01 17:42:38 +01:00
Richard Davey
d3778bb4bb
ArcadeWorldConfig.customUpdate
is a new boolean property you can set in the Arcade Physics config object, either in the Scene or in the Game Config. If true
the World update will never be called, allowing you to call it yourself from your own component. Close #5190
2020-09-01 17:42:19 +01:00
Richard Davey
18cdb5e618
The Animation.play
and playReverse
methods have a new optional parameter timeScale
. This allows you to set the Animations time scale as you're actually playing it, rather than having to chain two calls together. Close #3963
2020-09-01 17:00:16 +01:00
Richard Davey
6aef37572d
WebGLRenderer.previousPipeline
is a new property that is set during a call to clearPipeline
and used during calls to rebindPipeline
, allowing the renderer to rebind any previous pipeline, not just the Multi Pipeline.
...
The `WebGLRenderer.rebindPipeline` method has been changed slightly. Previously, you had to specify the `pipelineInstance`, but this is now optional. If you don't, it will use the new `previousPipeline` property instead. If not set, or none given, it will now return without throwing gl errors as well.
2020-09-01 13:05:31 +01:00
samme
11c0520d36
Clear wasTouching when resetting body
2020-08-29 11:56:15 -07:00
Richard Davey
9451ac0285
Group.getMatching
is a new method that will return any members of the Group that match the given criteria, such as getMatching('visible', true)
2020-08-29 11:00:55 +01:00
samme
57ee895437
Reset flags during reset
2020-08-27 12:35:01 -07:00
Richard Davey
ab83fd7e38
Tween.seek
will no longer issue a console warning for 'Tween.seek duration too long'
, it's now up to you to check on the performance of tween seeking.
2020-08-26 13:50:54 +01:00
Richard Davey
80c571963c
Textures.Parsers.JSONHash
will now perform a hasOwnProperty
check when iterating the frames, skipping anything that isn't a direct property. This should allow you to use generated atlas data that comes from JSON.parse
. Fix #4768
2020-08-26 13:06:04 +01:00
Richard Davey
55e56b1eff
Clock.addEvent
can now take an existing TimerEvent
object, as well as a config object. If a TimerEvent
is given it will be removed from the Clock, reset and then added. This allows you to pool TimerEvents rather than constantly create and delete them. Fix #4115
...
`Clock.removeEvent` is a new method that allows you to remove a `TimerEvent`, or an array of them, from all internal lists of the current Clock.
2020-08-26 10:58:06 +01:00
Richard Davey
809b8a41d9
The WebGLRenderer.updateCanvasTexture
method will now set gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL
to true, which should stop issues where you update a Text Game Object, having added a Render Texture or Spine Game Object to the Scene after it, which switches the PMA setting. Fix #5064
2020-08-26 00:19:19 +01:00
Richard Davey
791704febe
WebGLRenderer.finalType
is a new boolean property that signifies if the current Game Object being rendered is the final one in the list.
2020-08-25 18:24:42 +01:00
Richard Davey
0bbe67dafd
When using the GameObjectCreator
for Containers
you can now specify the children
property in the configuration object.
2020-08-25 15:51:11 +01:00
Richard Davey
de0133e3cc
Spine Game Objects can now be rendered to Render Textures. Fix #5184
2020-08-25 14:11:37 +01:00
Richard Davey
ca99c4564f
Added reset
property to Bind to get new vertex attrib locations
2020-08-25 13:24:56 +01:00
Richard Davey
e4ec0bd182
Bumped version (and added source-map)
2020-08-25 13:24:20 +01:00
Richard Davey
7d1ad38b4a
Updated shader names
2020-08-25 13:23:59 +01:00
Richard Davey
7e572c3577
Improves JSDocs
2020-08-25 09:54:09 +01:00
Richard Davey
1f50b49eff
Earcut has now been exposed and is available via Geom.Polygon.Earcut
and is fully documented.
2020-08-25 09:54:03 +01:00
Richard Davey
795a190ce3
The BaseShader
default vertex shader now includes the outTexCoord
vec2 varying, mapped to be the same as that found in the pipeline shaders. Fix #5120
2020-08-24 19:51:20 +01:00
Richard Davey
cda4f05fb9
Merge pull request #5272 from jaabberwocky/fix-animationmanager-docs
...
Fix typo for documentation on create method of AnimationManager
2020-08-24 19:33:33 +01:00
Richard Davey
157be83f7c
The Container
will now test to see if any Game Object added to it is already on the display list, or not, and emit its ADDED and REMOVED events accordingly. Fix #5267 #3876
2020-08-24 19:26:19 +01:00
Richard Davey
3bd91ea3de
Update ParticleManagerCreator.js
2020-08-24 19:24:11 +01:00
Richard Davey
a9072cadf2
Sprite
, Rope
, ParticleEmitterManager
, Extern
and DOMElement
now all override the addedToScene
and removedFromScene
callbacks to handle further set-up tasks.
2020-08-24 19:24:02 +01:00
Richard Davey
f4259deb37
DOMElementFactory
, ExternFactory
, ParticleManagerFactor
, RopeFactory
and SpriteFactory
all no longer add the objects to the Update List, this is now handled by the ADDED events instead.
2020-08-24 19:22:58 +01:00
Richard Davey
7b83d31cae
The Update List
now uses the new checkQueue
property to ensure no duplicate objects are on the active list.
2020-08-24 19:21:35 +01:00
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