Commit graph

12808 commits

Author SHA1 Message Date
Richard Davey
5a12f2a193 Preparing for v3.80 release 2024-02-21 13:31:13 +00:00
Richard Davey
ff945e1595 Fix merge error 2024-02-21 13:25:08 +00:00
Richard Davey
c445303ffb Revert define changes as they don't work 2024-02-21 13:23:52 +00:00
Richard Davey
d25d65835a Update NineSliceRender.js 2024-02-21 12:59:40 +00:00
Richard Davey
509f78ed72 Merge branch 'master' of https://github.com/phaserjs/phaser 2024-02-21 12:57:55 +00:00
Richard Davey
7aaa976a4e Updated webpack config DefinePlugin use and corresponding defs to allow those crazy souls who import source directly on node to have a better life #6644 2024-02-21 12:57:48 +00:00
Robert Kowalski
9d155d8dde Revert "Add bounce event to arcade physics Fix #6406"
This reverts commit 542bac2d02.
2024-02-21 07:22:57 -05:00
Richard Davey
d70e3f453c The ArcadePhysics.World.collideSpriteVsTilemapLayer method has been modified so that the body bounds are now expanded by the size of the scaled base tile in the Tilemap Layer. This fixes an issue where the check would skip over-sized tiles that were outside the bounds of the body. Mostly noticeable on layers that had a different base tile size to the map itself. Fix #4479 2024-02-21 01:11:43 +00:00
Richard Davey
d855fa73d3 The TilemapWebGLRenderer function has been fixed so it now uses the TileSet width and height for the tile draw command. This fixes an issue where the Tilemap would render incorrectly if the base tile size was different to the tile size. Fix #5988 2024-02-21 00:17:09 +00:00
Richard Davey
c273a1c9af Handle non-sprite sheets 2024-02-21 00:01:28 +00:00
Richard Davey
862f75089e Merge branch 'master' of https://github.com/phaserjs/phaser 2024-02-20 23:56:21 +00:00
Richard Davey
133073a55e The Tileset.updateTileData method has two new optional parameters offsetX and offsetY which allow you to set the offset that the tile data starts from within the base source texture. 2024-02-20 23:56:14 +00:00
Richard Davey
724ed7ec17 Texture#getFrameBounds is a new method that will return the bounds that all of the frames of a given Texture Source encompass. This is useful for things like calculating the bounds of a Sprite Sheet embedded within a Texture Atlas. 2024-02-20 23:53:26 +00:00
Richard Davey
085bfa0cac Use the TextureManager 2024-02-20 23:53:11 +00:00
Richard Davey
4df43d7bed Math.RectangleLike is a new typedef that defines a rectangle-like object with public x, y, width and height properties. 2024-02-20 23:52:54 +00:00
Ben Richards
60176e4b39 Merge remote-tracking branch 'origin/master' 2024-02-21 11:49:15 +13:00
Ben Richards
13d6defb33 Fix rare text sizes failing to render.
If initialized at a power-of-two resolution, then resized to a
non-power-of-two resolution, some extra parameters must be updated.
2024-02-21 11:48:59 +13:00
Richard Davey
5d0c50c704 Merge branch 'master' of https://github.com/phaserjs/phaser 2024-02-20 22:46:12 +00:00
Richard Davey
68e089a380 The ScaleManager.orientationChange event listener will now directly refresh the Scale Manager internals. This fixes an issue where the orientation change event would fire after the window resize event, causing the Scale Manager to incorrectly report the new orientation on Chrome on iOS. Fix #6484 2024-02-20 22:46:05 +00:00
Robert Kowalski
542bac2d02 Add bounce event to arcade physics Fix #6406 2024-02-20 17:16:32 -05:00
Richard Davey
ebe627836e Fixed object creation, sprite origin and added useSpriteSheet property 2024-02-20 21:38:42 +00:00
Richard Davey
0002c009f7 Updated jsdocs 2024-02-20 21:38:19 +00:00
Robert Kowalski
77778a07aa Just updateDisplayOrigin without defaults Fix #6655 2024-02-20 14:21:36 -05:00
Richard Davey
89811d7388 The Tilemap.createFromTiles method has been updated. It will now copy the following properties, if set in the Tile, to the Sprites it creates: rotation, flipX, flipY, alpha, visible and tint. If these properties are declared in the spriteConfig passed to the method, those will be used instead, otherwise the Tile values are used. Fix #6711 2024-02-20 18:39:52 +00:00
Richard Davey
2dfd421495 WebAudioSound will now set hasEnded = false as part of stopAndRemoveBufferSource, after the source has been stopped and disconnected. This should prevent it from being left in a true state if the source onended callback fired late, after the sound had been re-played. Fix #6657 2024-02-20 17:50:44 +00:00
Richard Davey
429dcf0ed0 Clarified docs. Fix #6516 2024-02-20 16:47:18 +00:00
Richard Davey
38da7de892 Fix Tilemap properties JSDoc type. Fix #6331 2024-02-20 16:35:18 +00:00
Richard Davey
76a1062d50 Clarify container level. Fix #6699 2024-02-20 16:23:37 +00:00
Robert Kowalski
371a8b31a9 Add documentation on crop functionality Fix #6589 2024-02-20 11:21:47 -05:00
Ben Richards
a74f99563b Fix spritesheet from atlas from compressed texture. 2024-02-20 21:45:06 +13:00
Ben Richards
93b4b083f1 Fix setting unnecessarily high texture filters. 2024-02-20 13:10:08 +13:00
Ben Richards
a2178c8466 Fix MIPMaps being disabled for compressed textures. 2024-02-20 13:02:19 +13:00
Richard Davey
1f8276ac76 Updated copyright year, company and author 2024-02-19 17:12:24 +00:00
Robert Kowalski
7a6845f6bf Use GetFastValue so all children are added to the container via GameObjectCreator Fix #6743 2024-02-19 12:09:07 -05:00
Richard Davey
5dc286268f A new property is available in the Game Configuration specifically for setting the 'snap' values for the Scale Manager. You can now set snap: { width, height } in the game config. This is then passed to the display size by the Scale Manager and used to control the snap values. Fix #6629 (thanks @musjj @samme) 2024-02-19 16:35:42 +00:00
Richard Davey
d2ce0f9358 Config#snapWidth and Config#snapHeight are new properties in the Game Config that hold the parsed snap config values, as used by the Scale Manager. 2024-02-19 16:35:27 +00:00
Richard Davey
1199178eff beta 3 tag for safety 2024-02-19 16:27:19 +00:00
Richard Davey
0ee06b65b3 Docs fix 2024-02-19 16:27:07 +00:00
Richard Davey
55b4c8db4a The Browser Device class will no longer think that Chrome is Mobile Safari on iOS devices. Fix #6739 2024-02-19 15:36:37 +00:00
Richard Davey
21a10b736a
Merge pull request #6728 from moufmouf/fix-postfxpipeline
Fixing the Postfix pipeline without introducing a skip frame
2024-02-19 15:30:34 +00:00
Richard Davey
56213a5f7e Update WebGLRenderer.js 2024-02-19 15:28:21 +00:00
Richard Davey
de0a22964e WebGLPipeline.resizeUniform is a new property that is defined in the WebGLPipelineConfig. This is a string that defines a uResolution property, or similar, within the pipeline shader. If the WebGL Renderer resizes, this uniform will now be updated automatically as part of the pipeline resize method. It has been added to both the Multi and Mobile pipelines as default. This fixes issues where the pipelines were rendering with old resolution values, causing graphical glitches in mostly pixel-art games. Fix #6674 2024-02-19 15:28:18 +00:00
Richard Davey
82b1a3e2aa Added missing copyright block 2024-02-19 15:01:56 +00:00
Richard Davey
a9012b19b4 The BitmapText.setFont method will now set the texture, size and alignment even if the same font key has been given as is already in use. Fix #6740 2024-02-19 14:41:59 +00:00
Richard Davey
76903fcdb9
Merge pull request #6719 from Stan-Stani/master
docs: clarify overlapOnly param
2024-02-19 14:31:29 +00:00
Richard Davey
9a175caa39
Merge pull request #6734 from yaustar/master
File creation checks if URL is a string before seeing if its Base64
2024-02-19 14:29:57 +00:00
Richard Davey
6d82af183c
Merge pull request #6741 from samme/docs/tween-chain-callbacks
Docs: remove unused TweenChainBuilderConfig props
2024-02-19 14:28:48 +00:00
Ben Richards
747c961632 Remove documentation requiring linear color space in ASTC textures.
This is no longer true.
2024-02-19 15:09:39 +13:00
Robert Kowalski
a7f00773ff Properly detect mesh like gameObjects when supplying an input configuration 2024-02-18 08:01:22 -05:00
Ben Richards
89543c9880 Change S3TCRGB to S3TCSRGB. 2024-02-17 20:59:00 +13:00
Ben Richards
f8ebbf38ef Verify compressed texture compatibility with WebGL and improve warnings. 2024-02-17 20:43:43 +13:00
Ben Richards
27f61c25e9 Merge remote-tracking branch 'origin/master' 2024-02-17 18:16:14 +13:00
Ben Richards
6c8c432fbf Add support for sRGB color in ETC compressed PVR files. 2024-02-17 18:15:56 +13:00
Robert Kowalski
b4c9cc92c2 Call the Time.Timeline loop callback earlier 2024-02-16 16:31:05 -05:00
Ben Richards
d70c107fde Add experimental support for BPTC compressed textures in PVR files.
These haven't been verified to work, but PVR format 15
(COMPRESSED_RGBA_BPTC_UNORM_EXT or COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT)
conforms to the specification, and PVR format 14
(COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT or
COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT) is a best guess.
2024-02-16 17:55:44 +13:00
Ben Richards
14bea5a995 Support sRGB compressed textures in PVR files.
ASTC format textures would previously be defaulted to linear RGB.
S3TC format textures would either default to linear RGB,
or not load at all.
2024-02-16 17:48:43 +13:00
Robert Kowalski
6bb3138c03 Path lineTo and moveTo now support Vector2Like Fix #6557 2024-02-15 20:24:49 -05:00
samme
5500c2170b Docs: TweenChainBuilderConfig descriptions 2024-02-15 17:01:49 -08:00
samme
55fb8a4ad8 Docs: remove unused TweenChainBuilderConfig props 2024-02-15 16:58:55 -08:00
Richard Davey
61a8fda08c Merge branch 'master' of https://github.com/phaserjs/phaser 2024-02-14 22:34:22 +00:00
Richard Davey
43954cf89b The Device.Browser.safari regular expression has been strenghtened so it now captures versions with double or triple periods in. Previously it would fail for Version/17.2.1 due to the minor value 2024-02-14 22:32:42 +00:00
Robert Kowalski
b9a7b3ed33 Cleanup and added loop callback to Time.Timeline 2024-02-14 10:21:06 -05:00
Ben Richards
878d3d2211 Fix support for BPTC and RGTC texture compression.
They use different WebGL extension name formats.
2024-02-13 17:38:19 +13:00
Robert Kowalski
e999c5a911 Add repeating functionality to Time.Timeline Fix #6560 2024-02-12 18:00:36 -05:00
Robert Kowalski
480cccb19e Add hitAreaCallback workaround back to Input.InputPlugin#setHitArea 2024-02-12 10:03:54 -05:00
Robert Kowalski
51dfa7866e Adds metadata event to Video Game Objects and a starting texture Fix #6475 2024-02-09 22:36:52 -05:00
Steven Yau
a25d61068e File creation checks if URL is a string before seeing if its Base64
Fixes #6733
2024-02-09 21:42:22 +00:00
Richard Davey
3015fe11eb v3.80 Beta 2 2024-02-09 14:39:41 +00:00
Ben Richards
5ac59c1890 Fix headless renderer compatibility. 2024-02-09 18:57:13 +13:00
Ben Richards
9ab82970c7 Fix inappropriate default type of Shader._deferSetShader. 2024-02-09 18:40:37 +13:00
Ben Richards
2e8a8f8081 Add default normal map texture __NORMAL.
Remove `LightPipeline.defaultNormalMap`, as this universal texture is
now available to use.
2024-02-09 15:51:53 +13:00
Ben Richards
23a672bc48 Improve resize handling.
Although the `resize` function does make GL calls,
they will have no effect during context loss.
2024-02-09 12:28:20 +13:00
Ben Richards
6d56791568 Fix incorrect type on WebGLAttribLocationWrapper.wegGLAttribLocation.
A uniform uses a `WebGLUniformLocation`, but an attrib uses a `GLint`.
2024-02-09 11:06:47 +13:00
Ben Richards
4353a1e175 Improve safety around context loss.
Clarify notes on drawing dynamic textures during context loss.
Allow `Shader` to initialize and operate during context loss.
Improve resize handling on context loss and recovery.
2024-02-08 18:53:10 +13:00
Robert Kowalski
b762b28575 Use built in HasAny to check for Mesh Game Objects 2024-02-07 21:05:31 -05:00
Robert Kowalski
827d6320e7 Remove old Mesh based Game Object detection for input and check if interactive config is empty 2024-02-07 15:52:17 -05:00
Robert Kowalski
798082c6c6 Mesh based Game Objects can use an input configuration Fixes #6510 2024-02-06 23:44:02 -05:00
Ben Richards
36a05e268a Merge remote-tracking branch 'origin/master' 2024-02-07 12:00:45 +13:00
Ben Richards
719e7a5e73 Remove unnecessary checks around Text WebGL texture. 2024-02-07 11:50:33 +13:00
Robert Kowalski
d35e69ce25 Move resetCursor so it does not lose input Fix #6387 2024-02-05 18:38:42 -05:00
Ben Richards
7ed40fdf7d Allow WebGL wrapper operations during context loss. 2024-02-05 16:40:16 +13:00
Ben Richards
06d463e92e Fix text initialization in WebGL.
As `frame.glTexture` is now a getter, this would error out in strict mode.
Repeated texture updates would also generate new wrappers.
2024-02-05 15:39:17 +13:00
Ben Richards
a4e96855fc Correct documentation of LightPipeline.currentNormalMap. 2024-02-05 14:30:24 +13:00
biometricPsychography
27f0a822c8 docs: move overlapOnly caveat to the @classdesc 2024-02-03 13:26:22 -06:00
Robert Kowalski
39b35580c9 Keep temp hit test when disabling interactivity Fix #6601 2024-02-02 17:56:45 -05:00
Robert Kowalski
2cf82a9b54
Merge pull request #6730 from samme/fix/static-body-reset-offset
Reapply offset when resetting static body
2024-02-02 16:17:23 -05:00
David Négrier
e5454a1203 Fixing the Postfix pipeline without introducing a skip frame
Due to #6681, we introduced a skip frame to wait for the PostFX pipeline to be correctly booted.
While this fixed the display issue, it introduced a "skip" frame.
The pipeline would only be visible one frame after being introduced.

The root issue is a binding issue on currentRenderTarget.

Here, we fix the root issue and remove the skip frame.
2024-02-02 16:05:08 +01:00
Richard Davey
604c34c13b Stop tsgen from crashing! 2024-02-02 13:56:24 +00:00
Richard Davey
e00d12195d Fixed incorrect jsdocs 2024-02-02 13:03:38 +00:00
Richard Davey
7bac75a2f4 Fixed some jsdoc name references and minor lint errors 2024-02-02 13:01:03 +00:00
Richard Davey
56f4c89938
Merge pull request #6725 from phaserjs/webgl-wrappers
Merge WebGL Context Loss work
2024-02-02 12:36:57 +00:00
Ben Richards
49e9d45435 Emit LOSE_WEBGL event.
Also rearrange RESTORE_WEBGL event code.
2024-02-02 21:57:28 +13:00
Ben Richards
d57b46e690 Tidy up wrappers on WebGLRenderer destroy. 2024-02-02 20:55:09 +13:00
Ben Richards
4fd8fc94c3 Fix WebGLShader recovery from WebGL context loss. 2024-02-02 20:50:39 +13:00
Ben Richards
6f36e8201d Fix Shader recovery from WebGL context loss. 2024-02-02 17:43:53 +13:00
Ben Richards
1ad6a64a81 Ensure that Shader render target is correctly updated. 2024-02-02 16:52:50 +13:00
Ben Richards
ade7b57e3d Restore WebGL extensions. 2024-02-02 16:29:24 +13:00
Ben Richards
b66028ec8e Handle more invalidated state on WebGL context restore. 2024-02-02 15:53:03 +13:00
Ben Richards
4c849cb2f7 Tidy up WebGL Wrappers.
Dispose of all references on destroy.
Properly name WebGLProgramWrapper#initialize.
Remove renderer dependence in WebGLFramebufferWrapper.
2024-02-02 15:30:38 +13:00
Ben Richards
24d739ed72 Emit RESTORE_WEBGL event. 2024-02-02 11:33:27 +13:00