Richard Davey
b11e5fe1fb
Tilemaps.Components.RunCull
is a new function that runs the culling process from the combined bounds and tilemap.
2020-10-02 13:47:10 +01:00
Richard Davey
da651dc650
Fixed require filename
2020-10-02 12:06:07 +01:00
Richard Davey
d5561ad97a
Use cached vec2s to avoid constant vector creation
2020-10-02 11:41:11 +01:00
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
Svipal
3997cad5a7
same work
2020-09-19 13:05:56 +02:00
Svipal
299f83c13d
fixed conflicts
2020-09-19 10:56:05 +02:00
svipal
79fe9abc6e
finished updating culling system
2020-09-18 17:16:52 +02:00
Svipal
1994185d6f
merged master
2020-09-08 22:17:04 +02: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
07865a5823
Final set of namespace changes. Fix #5062
2020-09-01 20:28:42 +01:00
Svipal
809d0b7495
merged master
2020-08-09 13:13:09 +02:00
Svipal
241d4193e8
let's try again
2020-08-09 12:33:52 +02:00
Svipal
b4a1473fea
test
2020-08-09 12:13:29 +02:00
Svipal
b4d9d71009
fixed orthogonal world to tile
2020-06-25 15:04:57 +02:00
Svipal
e6d468cda7
worldToTile fixed
2020-06-06 00:23:16 +02:00
samme
c963768c1e
Docs: SetCollisionByExclusion() and friends
...
Fixes #5179
Thanks @BoltKey
2020-06-05 10:01:30 -07:00
svipal
5911b94d35
Revert "clean up"
...
This reverts commit 854589ddbe
.
woops
2020-04-10 20:55:31 +02:00
svipal
854589ddbe
clean up
2020-04-10 20:40:52 +02:00
Svipal
8665e08f13
refactored things so that there is no more switching at runtime depending on orientation
2020-04-03 19:36:13 +02:00
Svipal
1ccc815ce7
removed a few debug prints, moved isoBounds to a new component, started to add constants
2020-03-22 12:35:24 +01:00
Svipal
72cb3343d6
cleaning up debug prints and such
2020-03-21 11:25:04 +01:00
Svipal
cec71a85ea
added hexagonal support
2020-03-21 10:19:03 +01:00
Svipal
406e6eb093
fixed worldtotilex on odd tiles
2020-03-14 10:57:19 +01:00
Svipal
66e99bccc6
changed a few things, preparing tiles
2020-03-14 10:23:13 +01:00
Svipal
a7d4816564
added staggered support
2020-03-14 10:11:04 +01:00
svipal
8e30c5ef1c
Update TileToWorldX.js
2020-02-08 15:53:53 +01:00
svipal
cf622269e8
Update PutTileAt.js
2020-02-08 15:51:12 +01:00
svipal
7122ea0b6b
Update GetTilesWithinShape.js
2020-02-08 11:56:38 +01:00
svipal
e4c43e59ba
Update CullTiles.js
2020-02-08 11:55:33 +01:00
svipal
4007e92be0
Update GetTileAt.js
2020-02-08 10:32:35 +01:00
svipal
f48e4aa9aa
Update GetTileAt.js
2020-02-08 10:31:59 +01:00
Svipal
9b86c5e6ed
commented
2020-02-07 15:31:15 +01:00
Svipal
1573e25214
added isoCullDistances parameter to DynamicTilemapLayer
2020-02-07 15:21:11 +01:00
Svipal
d7a857697f
fixed worldToTileXY and tileToWorldXY undefined point mistakes. Fixed getTilesWithinXY incorrect snaptoFloor setting
2020-02-07 14:05:42 +01:00
Svipal
dc330aaf4a
linted everything
2020-02-06 11:02:44 +01:00
Svipal
5747f7102d
fixed problems with removeTileAt
2020-02-05 18:42:20 +01:00
Svipal
aaf512b9cd
fixed problems with putting tiles from null tiles
2020-02-05 18:37:40 +01:00
Svipal
a8b60cf946
fixed dynamic layer rendering
2020-02-04 04:57:28 +01:00
Svipal
fd29e96a5d
changed orientation to be part of the layer, really cleaned up API. Started tests on the dynamic layer. Trying to understand getTileAt bug
2020-01-30 15:58:07 +01:00
Svipal
050325bff0
tried to pin down where the orientation became undefined, no success.
2020-01-29 17:42:39 +01:00
Svipal
95d2ff9996
need to compare across commits to understand regression regarding this.x
2020-01-27 20:12:53 +01:00
Svipal
e4857ce48a
yoyuee
2020-01-19 20:55:09 +01:00
Svipal
fbe3345e54
Updated RemoveTileAtWorldXy, PutTileAtWorldXY, GetTilesWithinShape and GetTilesWithinWorldXY
2020-01-19 20:50:57 +01:00
svipal
eb90fc2ab4
Merge pull request #2 from photonstorm/master
...
keeping up with master #2
2020-01-18 14:21:26 +01:00
No
1a88ff95ba
updated dynamic layer and tilemap
2020-01-17 16:15:59 +01:00
No
f17aef0abf
wordtotileX or Y cannot be called independently either
2020-01-17 15:15:15 +01:00
No
ddbcf85194
woops
2020-01-17 14:49:02 +01:00
No
83bbf08902
changed world to tile and tile to world in isometric mode
2020-01-17 14:47:33 +01:00
Richard Davey
ff65e69cd1
Changed copyright date to 2020
2020-01-15 12:07:09 +00:00
Josh Soref
013ece9373
spelling: indices
2019-10-29 02:22:43 -04:00
Richard Davey
3a3ce8b914
Merge branch 'master' into tile-collision-update
2019-10-02 15:15:18 +01:00
Fabadiculous
255232dd2a
Fix bug where graphics methods were not renamed
2019-06-22 16:55:50 +10:00
Richard Davey
c91ed91ce3
License link update
2019-05-10 16:15:04 +01:00
Richard Davey
a6341a97a8
Fixed Types references
2019-05-09 15:32:53 +01:00
Richard Davey
44faa01578
Tilemap Types
2019-05-09 12:39:19 +01:00
Richard Davey
73617da673
Tidied up the formatting
2019-03-05 14:41:35 +00:00
Richard Davey
4fc817c519
Final batch of typedefs
2019-02-13 16:06:00 +00:00
Richard Davey
aa341854c7
Happy New Year
2019-01-15 16:20:22 +00:00
Nicolas Rouvière
7b9f7f0217
Fix: Cannot read property 'index' of undefined at GetTileAt and RemoveTileAt
2018-11-19 00:08:36 +01:00
foobar
e481ea4cfd
Fix reference error when culling
2018-10-15 20:31:46 +02:00
Richard Davey
5115847791
Finished all the Tilemap component descriptions
2018-09-28 14:32:36 +01:00
Richard Davey
b4e59405b4
Calling Tilemap.renderDebug
ignored the layer scale when drawing to the Graphics object. It will now scale the layer before drawing. Fix #4026
2018-09-26 16:18:44 +01:00
Richard Davey
df8c0d8673
Calling Tilemap.renderDebug
ignored the layer world position when drawing to the Graphics object. It will now translate to the layer position before drawing. Fix #4061
2018-09-25 15:37:46 +01:00
Richard Davey
89b9f42f3e
Adding jsdocs
2018-09-24 23:20:43 +01:00
Richard Davey
f8b3fcf539
Cull Tiles now needs a render order for the layer data.
2018-08-21 18:02:00 +01:00
rootasjey
e2c505554a
Fix JSDoc in Tilemap
2018-08-20 13:20:23 +02:00
Richard Davey
fcf5d20d7b
Disable culling if layer has non-1 scroll factor #3893
2018-08-06 22:22:32 +01:00
Richard Davey
86965c28e4
The Tilemap Culling function now uses the Tilemap tile dimensions for its bounds calculations, instead of the layer tile sizes, as they two don't have to match and it's the underlying grid size that takes precedence when calculating visible tiles. Fix #3893
2018-08-06 13:31:27 +01:00
Richard Davey
31421ee00a
The CullTiles
updates from 3.11 didn't factor in the position of the Tilemap Layer to its bounds calculations, causing Static layers displayed out of the Camera viewport to never render in Canvas mode. The method has also been optimized further, with less divisions and less checks if culling is disabled.
2018-08-03 00:40:56 +01:00
ampled
50c787a9c8
- add typedef for SpriteConfig extends GameObjectConfig
...
- allow update-function signature to be overriden by GameObject subclasses
2018-07-29 12:19:04 +02:00
Skysteed
5cd60b3378
Major Optimization for Tilemap Collision Indexing
...
This update optimizes an existing feature (Tilemap Collision Indexing).
This optimization will apply to [nearly] everyone using procedural generation tilemaps, infinite tilemaps, multiplayer tilemaps, particularly large tilemaps (especially those dyanmic in nature) or who otherwise intend to index collisions before the tiles are loaded.
Benchmarking:
Using the standard approach, indexing collisions for a 500x450 tileset took 2530ms. By pre-building the collision index array in its entirety, I was able to reduce that to 259ms. However, this implementation reduces it to 8 ms. Larger tilemaps would be exponentially affected.
There are some considerations to make here since there are better implementations, but it would require deprecating some existing code. The advantage would be that the standard approach itself would be optimized, (thus avoiding the sort of 2500+ms costs here), rather than fairly obscured as it is with this implementation.
2018-07-19 10:59:35 -05:00
Richard Davey
20f1b37256
eslint fix and log update
2018-07-18 15:06:56 +01:00
Richard Davey
5ada70409e
Modified tile sizes.
2018-07-16 15:20:46 +01:00
Richard Davey
0cc52f6002
Swapped 4 ternaries for a single conditional #3834
2018-07-16 14:55:51 +01:00