Commit graph

9895 commits

Author SHA1 Message Date
Richard Davey
aafd5c6cee Use cached vec2s to avoid constant vector creation 2020-10-02 11:36:44 +01:00
Richard Davey
f03ddf033b Formatting fix #4992 2020-10-02 11:27:50 +01:00
Richard Davey
a3f67973cd Corrected documentation and tidied up #4992 2020-10-02 11:25:48 +01:00
Richard Davey
ffb49bdb3a Tilemaps.Components.StaggeredTileToWorldXY is a new function that converts staggered tile coordinates to world coordinates. 2020-10-02 11:22:48 +01:00
Richard Davey
4281bc1763 Tilemaps.Components.IsometricTileToWorldXY is a new function that converts isometric tile coordinates to world coordinates. 2020-10-02 11:22:39 +01:00
Richard Davey
3c3c01d4d5 Tilemaps.Components.HexagonalTileToWorldXY is a new function that converts hexagonal tile coordinates to world coordinates. 2020-10-02 11:22:30 +01:00
Richard Davey
a51e0b8a68 Tilemaps.Components.GetWorldToTileXYFunction is a new function that returns the correct conversion function to use. 2020-10-02 11:22:18 +01:00
Richard Davey
6049701d91 Restored previous function 2020-10-02 11:22:02 +01:00
Richard Davey
a89a58bd6c Restore previous function 2020-10-02 11:16:32 +01:00
Richard Davey
769850a400 Tilemaps.Components.StaggeredTileToWorldY is a new function that converts a staggered Y coordinate to a world coordinate. 2020-10-02 11:16:18 +01:00
Richard Davey
0b7d3236b4 Tilemaps.Components.HexagonalTileToWorldY is a new function that converts a hexagonal Y coordinate to a world coordinate. 2020-10-02 11:16:07 +01:00
Richard Davey
0b630754f7 Tilemaps.Components.GetTileToWorldYFunction is a new function that returns the correct conversion function to use. 2020-10-02 11:15:54 +01:00
Richard Davey
00603c0d39 Tilemaps.Components.GetTileToWorldXFunction is a new function that returns the correct conversion function to use. 2020-10-02 11:03:56 +01:00
Richard Davey
3eaacffb37 Restore previous function #4992 2020-10-02 11:03:03 +01:00
Richard Davey
0952421bfb Expose the new functtions #4992 2020-10-02 11:00:30 +01:00
Richard Davey
da3d0108f4 Restore back to previous version 2020-10-02 10:59:24 +01:00
Richard Davey
9c22133bb2 Tilemaps.Components.StaggeredWorldToTileXY is a new function that converts world coordinates to staggered tile coordinates. 2020-10-02 10:58:36 +01:00
Richard Davey
b8520f3b0d Tilemaps.Components.IsometricWorldToTileXY is a new function that converts world coordinates to isometric tile coordinates. 2020-10-02 10:58:18 +01:00
Richard Davey
7402d22c53 Tilemaps.Components.HexagonalWorldToTileXY is a new function that converts world coordinates to hexagonal tile coordinates. 2020-10-02 10:57:57 +01:00
Richard Davey
7d39bf9217 Tidy return statements 2020-10-02 10:57:14 +01:00
Richard Davey
ef2d4f6d7a Tilemaps.Components.GetWorldToTileXYFunction is a new function that returns the correct conversion function to use. 2020-10-02 10:56:44 +01:00
Richard Davey
2537e3ff70 Tilemaps.Components.GetWorldToTileXFunction is a new function that returns the correct conversion function to use. 2020-10-02 10:37:41 +01:00
Richard Davey
3352bd800c Restored previous version #4992 2020-10-02 10:37:30 +01:00
Richard Davey
92b431646a Tilemaps.Components.GetWorldToTileYFunction is a new function that returns the correct type of translation to use. 2020-10-02 10:31:02 +01:00
Richard Davey
f1c85fc220 Tilemaps.Components.HexagonalWorldToTileY is a new function that converts world Y coordinates from pixels to hexagonal tile Y coordinates. 2020-10-02 10:30:53 +01:00
Richard Davey
cb09374f9d Tilemaps.Components.StaggeredWorldToTileY is a new function that converts world Y coordinates from pixels to staggered tile Y coordinates. 2020-10-02 10:30:43 +01:00
Richard Davey
17df0f7135 Restored to previous version. #4992 2020-10-02 10:30:30 +01:00
Richard Davey
398bdf4314 Tilemap.hexSideLength is a new property that holds the length of the hexagon sides, if using Hexagonal Tilemaps. 2020-10-02 10:30:08 +01:00
Richard Davey
24437485af Fixed static function #4992 2020-10-02 10:19:13 +01:00
Richard Davey
ba4be029be Create TilemapOrientationType.js 2020-10-02 10:18:57 +01:00
Richard Davey
a8bd2204f2 Fixed updatePixelXY and prioritied orthogonal maps. #4992 2020-10-02 09:52:40 +01:00
Richard Davey
9caadeb364 Lint fix. #4992 2020-10-02 09:49:39 +01:00
Richard Davey
555c47e773 Moved Tilemap const declarations to the correct place. #4992 2020-10-02 09:48:44 +01:00
Richard Davey
c3c35322c4
Merge pull request #4992 from svipal/master
Preliminary PR for isometric support
2020-10-02 09:42:47 +01:00
samme
2223aebffb Don't update center before separation
Should be unnecessary now
2020-10-01 10:44:40 -07:00
samme
9a348409e3 Update center after separation 2020-10-01 10:42:30 -07:00
Richard Davey
6bc858e332 Moved out OBJFile and updated PipelineManager 2020-10-01 18:00:02 +01:00
Richard Davey
3baecb19d4 Moved old mesh pipeline and code into own folder 2020-10-01 17:56:49 +01:00
Richard Davey
239edd5296 Preparing for beta 8 2020-10-01 17:38:47 +01:00
Richard Davey
4b5450d136 Expose Basic ShaderLib, add Program, Attribute and Uniform handlers 2020-10-01 17:19:13 +01:00
Richard Davey
21cf8bcf78 Create ShaderChunk.js 2020-10-01 16:16:18 +01:00
Richard Davey
6c1a9282c6 Added all of the shader chunks 2020-10-01 16:16:12 +01:00
Richard Davey
8c3226dc91 New shader bundler script 2020-10-01 16:15:00 +01:00
Richard Davey
bf17d061f7 Geometry, VAO and Renderer updated ready for shader build 2020-10-01 14:29:53 +01:00
Richard Davey
2d43561e1a WebGLRenderer.vaoExtension is a new property that holds a reference to the Vertex Array Object WebGL Extension, if supported by the browser. 2020-10-01 13:48:27 +01:00
Richard Davey
0a695e6061 Material can store its own transient properties, rather than using a Map 2020-10-01 12:16:08 +01:00
Richard Davey
4238505ee2 Update Renderer.js 2020-10-01 12:15:54 +01:00
Richard Davey
f9617bd0be The RenderState class 2020-10-01 12:15:47 +01:00
Richard Davey
dd99853cdb Created all of the WebGL state handling functions 2020-10-01 12:15:29 +01:00
Richard Davey
d8992ccf9d WebGLRenderer.instancedArraysExtension is a new property that holds the WebGL Extension for instanced array drawing, if supported by the browser. 2020-10-01 10:57:13 +01:00
Richard Davey
23d6c68f1c Update Renderer.js 2020-09-30 17:45:12 +01:00
Richard Davey
b05d7f5481 Starting core renderer 2020-09-30 17:45:05 +01:00
Richard Davey
c0bfb6a61c Added basic Camera and Frustum 2020-09-30 17:07:57 +01:00
Richard Davey
3baa34bea5 Create Mesh.js 2020-09-30 17:07:40 +01:00
Richard Davey
ee7804f515 Matrix4.getInverse is a new method that takes a Matrix4, copies it to the current matrix, then returns the inverse of it. 2020-09-30 17:07:32 +01:00
Richard Davey
1907bda5ee Update GameObjectFactory.js 2020-09-30 16:30:12 +01:00
Richard Davey
5313356fb0 Added basic Geometry 2020-09-30 15:30:50 +01:00
Richard Davey
6ab0803469 Fixed path 2020-09-30 15:11:42 +01:00
Richard Davey
abf7756e19 Starting to flesh out the Layer3D Plugin basics 2020-09-30 15:10:48 +01:00
Richard Davey
1c2c479689 Include Layer3D if feature enabled 2020-09-30 15:09:57 +01:00
Richard Davey
f8d7e823d7 Quaternion.setFromRotationMatrix is a new method that will set the rotation of the quaternion from the given Matrix4. 2020-09-30 15:09:35 +01:00
Richard Davey
9afaf5f2c0 Moved RGB class 2020-09-30 14:16:13 +01:00
Richard Davey
7f3e6798e4 Added multiplyMatrices and premultiply methods and removed unused method. 2020-09-30 14:02:16 +01:00
Richard Davey
06d359dc25 Matrix4.transform is a new method that will generate a transform matrix from the given position and scale vectors and a rotation quaternion.
Removed un-used methods.
2020-09-30 13:48:59 +01:00
Richard Davey
d3e318a51c Added projectViewMatrix and unprojectViewMatrix. 2020-09-30 13:39:48 +01:00
Richard Davey
40a808cb50 Matrix4.lookAtRH is a new method that will generate a right-handed look-at matrix from the given eye, target and up positions. 2020-09-30 13:36:14 +01:00
Richard Davey
51ab68573f Matrix4.getMaxScaleOnAxis is a new method that will return the maximum axis scale from the Matrix4. 2020-09-30 13:19:20 +01:00
Richard Davey
7896bb4157 Added new methods.
* `Vector3.setFromMatrixPosition` is a new method that will set the components of the Vector3 based on the position of the given Matrix4.
* `Vector3.setFromMatrixColumn` is a new method that will set the components of the Vector3 based on the specified Matrix4 column.
* `Vector3.fromArray` is a new method that will set the components of the Vector3 based on the values in the given array, at the given offset.
* `Vector3.min` is a new method that will set the components of the Vector3 based on the `Main.min` between it and the given Vector3.
* `Vector3.max` is a new method that will set the components of the Vector3 based on the `Main.max` between it and the given Vector3.
* `Vector3.addVectors` is a new method that will set the components of the Vector3 based on the addition of the two Vector3s given.
* `Vector3.addScalar` is a new method that will multiply the components of the Vector3 by the scale value given.
* `Vector3.applyMatrix3` is a new method that will take a Matrix3 and apply it to the Vector3.
* `Vector3.applyMatrix4` is a new method that will take a Matrix4 and apply it to the Vector3.
2020-09-30 13:18:45 +01:00
Richard Davey
c299c9e108 Renamed method to setFromEuler 2020-09-30 11:23:01 +01:00
Richard Davey
3b8c78cca2 Quaternion.fromEuler is a new method that will set the quaternion from the given Euler object, optionally calling the onChangeCallback in the process.
The `Quaternion.set` method has a new optional boolean parameter `update` (defaults to `true`), which will call the `onChangeCallback` if set.
2020-09-30 11:21:28 +01:00
Richard Davey
8823f7f0e4 Removed Layer3D and Quad Game Objects 2020-09-30 11:03:19 +01:00
Richard Davey
11e6101f8d Added Math.Euler class 2020-09-30 11:02:54 +01:00
Richard Davey
368df2acef Quaternion now has a new property onChangeCallback which, if set, will be invoked each time the quaternion is updated. This allows you to link change events to other objects.
Internally, the `Quaternion` class now has 4 new private properties: `_x`, `_y`, `_z` and `_w` and 4 new getters and setters for the public versions. It also now passes most methods via `set` to allow for the onChange callback to be invoked. This does not change the public-facing API.
2020-09-30 11:02:33 +01:00
Richard Davey
4dfa49fc05 Fix return states 2020-09-30 09:23:58 +01:00
Richard Davey
0e72b3d3a0 Container doesn't need to be on the updateList, so remove the handler. 2020-09-30 09:20:16 +01:00
Richard Davey
24de03ca96 Added missing ADDED_TO_SCENE handlers 2020-09-29 20:14:30 +01:00
Richard Davey
12c8ddfd05 Use getXRound 2020-09-29 18:05:39 +01:00
Richard Davey
9619995527 Add to UpdateList if not on Display List 2020-09-29 18:05:29 +01:00
Richard Davey
8119ce7da1 Fixed use of old camera private properties 2020-09-29 16:44:11 +01:00
Richard Davey
76d2630f8b Fixed Shake effect 2020-09-29 16:43:42 +01:00
Richard Davey
83542ff51d
Merge pull request #5330 from somnolik/fix-render-texture-group
Fix drawing Group to RenderTexture
2020-09-29 12:22:07 +01:00
Richard Davey
780e1d9adb Texture parsed files no longer store their data in the data caches as well.
You can now use `TextureManager.remove` to remove a texture and not have to worry about clearing the corresponding JSON or XML cache entry as well in order to reload a new texture using the same key. Fix #5323
2020-09-29 10:38:44 +01:00
Richard Davey
90096a6b64 Added mention about tint to the docs. Fix #5327 2020-09-29 09:31:09 +01:00
samme
e639bb73d8 Correct Arcade Body types
For TypeScript

Fixes #5328
2020-09-28 11:42:21 -07:00
Richard Davey
f9803774dd The Line Game Object will now default its width and height to 1, rather than zero. This allows you to give Line objects a physics body (although you will still need to re-adjust the center of the body manually). Fix #4596 2020-09-28 17:00:15 +01:00
Richard Davey
1d66284a22 Removed debug logs and finished JSDocs 2020-09-28 15:25:43 +01:00
Richard Davey
34be82a20c Added processX and processY methods 2020-09-28 15:25:28 +01:00
Richard Davey
4d484e2c0c Updated to handle face blocking and all possible checks 2020-09-28 13:07:32 +01:00
Richard Davey
731e661d56 No longer needed 2020-09-28 13:07:11 +01:00
Richard Davey
4785953368 Merge branch 'master' of https://github.com/photonstorm/phaser 2020-09-28 08:07:23 +01:00
Richard Davey
09c2a2d622 Testing new separation 2020-09-28 08:07:19 +01:00
Richard Davey
30b514fc58
Merge pull request #5326 from samme/fix/body-setOffset
Remove Arcade.Body#updateCenter() in Arcade.Body#setOffset()
2020-09-26 10:19:53 +01:00
Stefan Karner
f4b2b34535 Fix drawing Group to RenderTexture
Group children (generic GameObjects) expect a 'camera' argument
in their 'willRender' function
2020-09-26 10:25:22 +02:00
samme
639a93583f Remove updateCenter() in setOffset() 2020-09-25 14:42:56 -07:00
samme
d0f6070e14 Docs: Arcade.Body#setOffset 2020-09-25 14:37:26 -07:00
samme
13c27064a8 Docs: Arcade.Body#reset
Only game object receives the passed coordinates
2020-09-25 14:19:12 -07:00
Richard Davey
bed716e382 X Separation working properly in all cases. Now to adjust Y. 2020-09-25 21:25:01 +01:00
Richard Davey
7630b8e28d Testing new Separation logic (Y done, X in progress) 2020-09-25 18:01:40 +01:00
Richard Davey
2bcf1f70be Testing new separation logic (incomplete atm) 2020-09-24 18:10:11 +01:00
Richard Davey
da78d3ee42 Tidy up docs 2020-09-24 18:10:00 +01:00