Commit graph

19342 commits

Author SHA1 Message Date
Ben Richards
e920b1a961 Create and use wrappers for WebGLUniformLocation and WebGLAttribLocation. 2024-01-30 22:13:51 +13:00
Robert Kowalski
be5223936a Update CHANGELOG-v3.80.md 2024-01-29 23:33:19 -05:00
Robert Kowalski
6c55aba8d9
Merge pull request #6714 from dhashvir/master
fix nineslice hit areas
2024-01-29 20:04:33 -05:00
Ben Richards
0f9fb3177d Fix incorrect WebGL calls. 2024-01-30 11:23:27 +13:00
Robert Kowalski
ddc43fcbee
Merge pull request #6694 from Byvire/master
Check for undefined to avoid a crash in the examples at phaser3-custo…
2024-01-29 15:27:08 -05:00
Robert Kowalski
e0e3de008a
Merge pull request #6722 from samme/feature/setTilesetImage-warnings
Improve the warnings in addTilesetImage()
2024-01-29 12:38:05 -05:00
samme
002fa6300a Improve the warnings in addTilesetImage() 2024-01-29 09:17:41 -08:00
Ben Richards
2382f7c1eb Create and use WebGLProgramWrapper.
This handles shader programs.
Also tweak the documentation in WebGLBufferWrapper and
WebGLFramebufferWrapper to better reflect purpose.
2024-01-29 17:35:57 +13:00
Ben Richards
377221de35 Create and use WebGLBufferWrapper.
This mostly handles VertexBuffers, but there's an IndexBuffer which
is not internally used that uses the same wrapper.
2024-01-29 16:40:18 +13:00
Ben Richards
842d666ebf Use and document WebGLFramebufferWrapper.
Also tweak WebGLTextureWrapper to have more standard destroyers
in itself and WebGLRenderer.
2024-01-29 14:53:23 +13:00
Ben Richards
68671f0d8a Create WebGLFramebufferWrapper to encapsulate state. 2024-01-29 14:48:28 +13:00
Ben Richards
b591c3674a Document usage of WebGLTextureWrapper in place of WebGLTexture. 2024-01-29 11:47:39 +13:00
Ben Richards
216b7564f6 Update systems to use WebGLTextureWrapper and Uint8Array textures.
This is mostly hooking up gl calls to look inside the wrapper.
A few other things have changed.
Spector metadata is set the new way.
`Frame` changed `glTexture` to a getter, simplifying bookkeeping.
`LightPipeline` and `Plane` use standard methods to create textures.
`WebGLRenderer` maintains a list of wrappers, and automatically
manages it through `createTexture2D` and `deleteTexture`. The update
methods `updateCanvasTexture` and `updateVideoTexture` have been
delegated to the wrapper.
2024-01-29 11:45:12 +13:00
Ben Richards
a8dff1f990 Add Uint8Array texture creation methods. 2024-01-29 11:30:54 +13:00
Ben Richards
3b2aeaf18b Create WebGLTextureWrapper to encapsulate texture state. 2024-01-29 11:08:16 +13:00
Robert Kowalski
2e4b43be4e AnimationFrame duration is the duration of the frame if set, msPerFrame is not added 2024-01-26 13:19:54 -05:00
Robert Kowalski
1bfdcfe922 TileSprite textures are now stored in the TextureManager 2024-01-24 19:54:46 -05:00
Robert Kowalski
6ea40f8b32 Text textures are now stored in the TextureManager 2024-01-24 17:25:42 -05:00
Richard Davey
91b2b0c531 lint fix 2024-01-23 00:46:53 +00:00
Dhashvir Lalla
835d77cb85 fix nineslice hit areas 2024-01-15 05:16:56 +11:00
Richard Davey
91986c58e5 Update CHANGELOG-v3.80.md 2024-01-12 18:22:02 +00:00
Richard Davey
95df650f71 The Time.Timeline class didn't show as extending the Event Emitter, or have config as an optional argument in the docs / TS defs. Fix #6673 2024-01-12 18:21:59 +00:00
Richard Davey
828de95e2f Update CHANGELOG-v3.80.md 2024-01-12 18:18:09 +00:00
Richard Davey
786a3933cd Factory.staticBody had the wrong return type in the docs/TS defs. Fix #6693 2024-01-12 18:18:06 +00:00
Richard Davey
81d985b7ef Update CHANGELOG-v3.80.md 2024-01-12 18:08:47 +00:00
Richard Davey
2c4df2488b Update SCALE_MODE_CONST.js 2024-01-12 18:08:42 +00:00
Richard Davey
099919102a Update CHANGELOG-v3.80.md 2024-01-12 18:06:26 +00:00
Richard Davey
d6d4fc9705
Merge pull request #6703 from rexrainbow/expand-scale-mode
Add EXPAND scale mode
2024-01-12 18:05:39 +00:00
Richard Davey
d137a4782f
Merge pull request #6683 from paxperscientiam/patch-2
Update GetFirst.js
2024-01-12 18:03:57 +00:00
Richard Davey
546a0bfa06 Update CHANGELOG-v3.80.md 2024-01-12 18:03:16 +00:00
Richard Davey
9febc6b44a Update version number 2024-01-12 18:03:09 +00:00
Richard Davey
e91551b4c5
Merge pull request #6686 from samme/fix/container-destroy-child
Fix removing destroyed Container children
2024-01-12 17:57:57 +00:00
Richard Davey
8cae5a33e7 Update TextureManager.js 2024-01-12 17:56:30 +00:00
Richard Davey
4700a80fff Update CHANGELOG-v3.80.md 2024-01-12 17:56:17 +00:00
Richard Davey
08f340c438
Merge pull request #6670 from stevenwithaph/master
Added correct parameters for create
2024-01-12 17:55:22 +00:00
Richard Davey
9018430e30
Merge pull request #6666 from PresentCreativeLLC/typofix/NineSlice
Update NineSlice.js correcting a typo
2024-01-12 17:51:16 +00:00
Richard Davey
8287d44a04
Merge pull request #6679 from somechris/touch-move-coordinates-on-scrolled-down-page
Fix `InputManager.onTouchMove` to work on scrolled-down pages
2024-01-12 17:48:05 +00:00
Richard Davey
b6c7b51f3d
Merge pull request #6685 from samme/docs/dragend-dropped
Docs: add `dropped` argument in DRAG_END, GAMEOBJECT_DRAG_END
2024-01-12 17:46:38 +00:00
Richard Davey
98efe679df Create CHANGELOG-v3.80.md 2024-01-12 17:43:55 +00:00
Richard Davey
74515f6437 The TweenChainBuilder was incorrectly setting the persist flag on the Chain to true, which goes against what the documentation says. It now correctly sets it to false. This means if you previously had a Tween Chain that was persisting, it will no longer do so, so add the property to regain the feature. 2024-01-12 17:43:51 +00:00
Rex
3b8d019b97 Add EXPAND scale mode 2023-12-31 17:11:38 +08:00
Oliver Kisielius
9ac03cd565 Check for undefined to avoid a crash in the examples at phaser3-custom-build. 2023-12-13 15:06:21 -05:00
samme
3b2ed4a4fe Exclude the renderers 2023-12-11 17:33:57 -08:00
samme
7b648c64d2 Docs: add dropped arg in DRAG_END 2023-12-04 14:57:45 -08:00
samme
5cd5cadf79 Fix removing destroyed Container child 2023-12-03 16:14:46 -08:00
Chris
c048c1bb54
Update GetFirst.js
Improve type accuracy for GetFirst
2023-12-02 15:38:05 -05:00
Christian Aistleitner
66901b32d3 Fix InputManager.onTouchMove to work on scrolled-down pages
`document.elementFromPoint` expects plain viewport coordinates [1],
while we used `page[XY]`, which are viewport coordinates with added
scroll offsets [2].

So on pages where no scrolling had yet occurred,
`InputManager.onTouchMove` worked as expected. But as soon as one
scrolled down/right on the page, the element detection was off by the
scroll offset.

We switch from `page[XY]` to `client[XY]` which are plain viewport
coordinates [3] and thereby make element detection work also on pages
that have been scrolled around.

[1] https://drafts.csswg.org/cssom-view/#dom-document-elementfrompoint
[2] https://w3c.github.io/touch-events/#dom-touch-pagex
[3] https://w3c.github.io/touch-events/#dom-touch-clientx
2023-11-24 14:12:20 +01:00
Steven Adams
6a28ccbee1 Added correct parameters for create 2023-11-14 08:38:05 -05:00
Alvaro Estrada
0b22354afd Update NineSlice.js
Fixed the horiztonal typo
2023-11-10 13:43:50 -06:00
Richard Davey
47d393ac29 Update NineSlice.js 2023-11-10 16:44:16 +00:00