Commit graph

12784 commits

Author SHA1 Message Date
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
Richard Davey
221eb1ae5d Added base64 property and onBase64Load method and removed data URI warnings 2024-02-01 19:23:26 +00:00
Richard Davey
324dcfba97 The XHRLoader will now return a fake XHR result object containing the decoded base64 data if a base64 file is detected, skipping the creation of a real XML Http Request object. 2024-02-01 19:23:26 +00:00
Richard Davey
aa0d60786f Update XMLFile.js 2024-02-01 19:23:26 +00:00
Richard Davey
8e4ea336c0 The ImageFile will now default to using the Image Load Element if a base64 file is detected, instead of throwing a console warning about unsupported types. 2024-02-01 19:23:26 +00:00
Robert Kowalski
d967da83d2 Merge branch 'master' of https://github.com/phaserjs/phaser 2024-02-01 13:10:42 -05:00
Robert Kowalski
0f55324632 pointerConstraint can't getWorldPoint with no camera. Fix #6684 2024-02-01 13:10:30 -05:00
Richard Davey
5bda070c98 The XHRLoader will now listen for ontimeout and if triggered it will hand over to the File.onError handler. This prevents the Loader from stalling if a file times out. Fix #6472 2024-02-01 17:30:10 +00:00
Richard Davey
ceb92cb366 If you enable a Game Object for Input Debugging, the debug shape will no longer be rendered if the Game Object itself is not visible. Fix #6364 2024-02-01 17:25:52 +00:00
Richard Davey
d6d812fc86 Update Polygon docs re: getBounds. Fix #5441 2024-02-01 16:42:55 +00:00
Robert Kowalski
86b8364dd2 preventDefault in onTouchEndWindow when DOM elements are over input 2024-02-01 11:18:54 -05:00
Ben Richards
a0f066c543 Restore WebGL context.
All textures and shaders should automatically recover from WebGL
context loss.
Dynamic textures will lose their contents, unfortunately, as the texture
was stored on the GPU.
Frame buffers still have some bugs to work out.
2024-02-01 16:59:00 +13:00
Ben Richards
587b6e7bcd Merge branch 'master' into webgl-wrappers 2024-02-01 11:00:08 +13:00
Richard Davey
a2f47d65c1 Modified RandomDataGenerator.weightedPick method to avoid sampling past the last element. Fix #6701 2024-01-31 21:33:47 +00:00
Richard Davey
45f553d8af x and y are non-optional. Fix #6518 2024-01-31 21:22:39 +00:00
Richard Davey
9bf53dd7c9 Added WebGLPipeline[] as a valid type for the pipeline property 2024-01-31 21:18:11 +00:00
Robert Kowalski
bfce4b7269 Merge branch 'master' of https://github.com/phaserjs/phaser 2024-01-31 15:34:22 -05:00
Robert Kowalski
a48db68b53 The PlaceOnLine Action now supports ease functions 2024-01-31 15:34:19 -05:00
Richard Davey
cf27547793 The Matter.Body function scale has been updated so if the Body originally had an inertia of Infinity this will be restored at the end of the call. This happens if you set a Matter Body to have fixed rotation. Fix #6369 2024-01-31 20:32:10 +00:00
Richard Davey
51074c4567 The PostFXPipeline.postBatch method will now skip onDraw is the pipeline hasn't booted, introducing an artificial frame skip. This should potentially fix glitch errors on mobile devices where Post FX would appear corrupted for a single frame. Fix #6681 2024-01-31 20:23:43 +00:00
Richard Davey
c6c7fd60a6 The BloomFX and BlurFX and any custom pipeline that relies on using the UtilityPipeline full or half frame targets will now correctly draw even after the renderer size changes. Fix #6677 2024-01-31 19:35:10 +00:00
Richard Davey
92065facf0 You can now specify an autoResize boolean in the RenderTargetConfig which is passed to the Render Targets when they are created by a pipeline. 2024-01-31 19:15:21 +00:00
Richard Davey
97967288b6 DynamicTexture.setSize will now check to see if the glTexture bound to the current frame is stale, and if so, destroy it before binding the one from the Render Target. This fixes an issue where constantly destroy and creating Dynamic Textures would cause a memory leak in WebGL. Fix #6669 2024-01-31 18:12:51 +00:00
Richard Davey
4ea4e55e0f DynamicTexture will now automatically call setSize(width, height) for both WebGL and Canvas. Previously it only did it for WebGL. This fixes an issue where DynamicTextures in Canvas mode would have a width and height of -1. Fix #6682 2024-01-31 17:36:21 +00:00
Richard Davey
f258e11cb7
Merge pull request #6723 from samme/feature/renderer-custom-builds
Exclude the renderers by feature flag
2024-01-31 17:24:22 +00:00