Richard Davey
4b27b37a0c
Added texture and unit arguments to batchQuad
and batchTri
, fixing the y2k bug.
2018-12-12 11:08:52 +00:00
Richard Davey
bacff65177
Refactoring texture batch creation
2018-12-11 15:00:12 +00:00
Richard Davey
6f8759c186
Whenever Camera.roundPixels
was enabled it would use a bitwise operation to truncate the float (x |= 0
) - this has been replaced across all files that used it, with a call to Math.round
instead. This gives far better results when zooming cameras both in and out of a Scene, stopping thin gaps appearing between closely packed Game Objects.
2018-11-30 10:27:25 +00:00
Sercan Turkmen
03ffe7842f
Fix rotating normal map bug (issue #3870 )
2018-10-31 02:17:11 +02:00
Richard Davey
32a22140a6
Use the predefined variable
2018-10-29 23:06:51 +00:00
Richard Davey
956a0913b8
Added new jsdocs
2018-10-22 12:12:31 +01:00
Richard Davey
4c4421c47f
Docjam merge
2018-10-19 12:32:43 +01:00
Richard Davey
4beffe842a
Texture batching during the batch flush has been implemented in the TextureTintPipeline which resolves the issues of very low frame rates, especially on iOS devices, when using non-batched textures such as those used by Text or TileSprites.
2018-10-12 15:06:10 +01:00
Richard Davey
4b1c762296
Updated @memberOf to @memberof
2018-10-10 10:49:13 +01:00
Richard Davey
143957d24a
You can now set the maxLights
value in the Game Config, which controls the total number of lights the Light2D shader can render in a single pass. The default is 10. Be careful about pushing this too far. More lights = less performance. Close #4081
2018-10-02 11:09:58 +01:00
Richard Davey
3944e580cc
Fixed an error in the batchSprite
methods in the Canvas and WebGL Renderers that would incorrectly set the frame dimensions on Sprites with the crop component. This was particularly noticeable on Sprites with trimmed animation frames
2018-09-27 16:49:52 +01:00
Richard Davey
945a2eb0fb
TextureTintPipeline.batchTexture
has a new optional argument skipFlip
which allows you to control the internal render texture flip Y check.
2018-09-26 16:32:41 +01:00
Richard Davey
c704dc450a
Fixed jsdoc definitions
2018-09-25 11:36:36 +01:00
Richard Davey
8bc4d06831
Added IsoTriangle and project setting
2018-09-07 14:23:25 +01:00
Richard Davey
5e126b80fa
Parent matrix and now optional and it won't draw a line cap unless the first point has been set
2018-09-06 15:07:36 +01:00
Richard Davey
0b95ed0478
Fixed scissors when using a small cam with render texture
2018-08-31 16:25:04 +01:00
Richard Davey
5270b463d0
Removed visible check as it's no longer needed
2018-08-31 14:39:38 +01:00
Richard Davey
cb0eeb3d63
Added default blank frame for custom pipelines #3978
2018-08-24 23:58:27 +01:00
Richard Davey
1d4b2ed01a
Removed un-needed methods and fixed TileSprite and Tilemap Lights. Fix #3949
2018-08-23 17:30:27 +01:00
Richard Davey
22bc6d2a86
The batchTexture
method in the Texture Tint Pipeline now supports cropped Game Objects and will adjust the drawn texture frame accordingly.
2018-08-03 18:54:48 +01:00
Richard Davey
2220faba49
Removed un-used method
2018-08-01 15:20:10 +01:00
Richard Davey
be379fd3a1
Added batchTextureFrame method
2018-07-31 17:10:02 +01:00
Richard Davey
6749417ef3
lint fix
2018-07-27 11:19:19 +01:00
Richard Davey
9331c15c48
Updated to use tint object.
2018-07-27 02:14:08 +01:00
Richard Davey
4481795d32
Swapped to using getX / getY
2018-07-27 00:53:00 +01:00
Richard Davey
6877582531
Removed un-used pipeline and shaders
2018-07-26 23:43:49 +01:00
Richard Davey
4bdecf488b
jsdocs tweaks
2018-07-26 23:41:52 +01:00
Richard Davey
d093f35e5c
Merged all of the required FTP methods into TTP.
2018-07-26 16:34:04 +01:00
Richard Davey
e0c0db5f8e
Final bit of tidying up before merging this with the TTP.
2018-07-26 16:33:43 +01:00
Richard Davey
90219d46b3
Removed all references to the FlatTintPipeline.
2018-07-26 16:33:29 +01:00
Richard Davey
947d301f42
Removed the unit batch from TTP and put it into FDLP
2018-07-26 15:31:44 +01:00
Richard Davey
bda9159cb0
Textures now use the frame UV values.
2018-07-26 15:05:10 +01:00
Richard Davey
7acbbcf58a
Fixed linejoin, added arc and triangle, tidying up code
2018-07-26 13:49:05 +01:00
Richard Davey
39a6622623
Working on joints
2018-07-26 09:58:33 +01:00
Richard Davey
3a2fcd0951
Updated path drawing, sorting out line-cap differences with Canvas
2018-07-25 17:04:44 +01:00
Richard Davey
4c25d12b44
Recoding the FTP. Rects and Tris working again.
2018-07-25 01:27:03 +01:00
Richard Davey
0516fd47f7
The Flat Tint Pipeline is now using the same shader as the Texture Tint
...
Time to make sure no texture swaps happen and we can finally have Graphics mixed with Sprites in the display list with no swapping cost (and soon, no flush cost either when we unify the pipelines)
2018-07-24 17:07:26 +01:00
Richard Davey
ac108db9cc
Moving towards tidying up the FTP
2018-07-24 16:40:29 +01:00
Richard Davey
42c3fc5f6b
Better normal map handling
2018-07-13 11:14:22 +01:00
Richard Davey
2924874236
Added docs
2018-07-12 01:13:47 +01:00
Richard Davey
a0bf5b6ad2
Removed all the batch functions and consolidated into a single function and callback
2018-07-11 16:55:18 +01:00
Richard Davey
efb5eb09c5
Starting refactor
2018-07-11 16:24:58 +01:00
Richard Davey
05985417b3
Allow config setting values. Gets custom pipelines working again.
2018-07-11 16:24:45 +01:00
Richard Davey
82b15c8695
Removed drawEmitterManager
and moved to emitter render function
2018-07-11 14:40:36 +01:00
Richard Davey
853281fe56
Double flusher
2018-07-11 13:22:07 +01:00
Richard Davey
373d01c602
Fixed emitter batch. Now to optimize it.
2018-07-11 13:20:02 +01:00
Richard Davey
e2efa469ae
Removed drawTexture and added drawTextureFrame - fixed Render Texture flip Y issue
2018-07-11 12:34:53 +01:00
Richard Davey
5b3a5e115b
Started consolidating drawTexture method
2018-07-10 17:18:00 +01:00
Richard Davey
340c53875c
Added new temp matrix, fixed typo, removed old function
2018-07-10 16:32:44 +01:00
Richard Davey
434c8d1413
Fixed issue with sprite matrix and camera scaling
2018-07-10 13:59:49 +01:00
Richard Davey
85a32d54be
Typo
2018-07-09 17:06:27 +01:00
Richard Davey
5c554f3f69
Started moving dynamic bitmap text renderer to its own function
2018-07-07 12:34:24 +01:00
Richard Davey
dd0490dd57
Removed batchBitmapText, tidied up and moved to its own renderer
2018-07-07 12:22:45 +01:00
Richard Davey
8b13631107
Removed batchMesh
and moved to the Mesh WebGL Renderer. Another one bites the dust.
2018-07-06 19:35:46 +01:00
Richard Davey
c1bc928a73
Removed un-used vars
2018-07-06 17:29:49 +01:00
Richard Davey
a6ff0d54bb
Removed angle calculations from renderer as we only need do it when the arc is first defined
2018-07-06 17:16:09 +01:00
Richard Davey
325fb4681e
Tidying up
2018-07-05 23:55:00 +01:00
Richard Davey
5063fe30e5
Fixed cropping when texture frame is flipped
2018-07-05 23:01:26 +01:00
Richard Davey
341ecf42cd
Testing flip + atlas frame + trim cropping
2018-07-04 17:01:45 +01:00
Richard Davey
43fc988034
Moved crop UV handler to the Frame method. Cleaner and easier.
2018-07-04 15:18:08 +01:00
Richard Davey
ee8c1b403a
Fixed cropping with flipped images
2018-07-04 14:50:26 +01:00
Richard Davey
d44c54e5ed
batchSprite supports cropping (flipXY todo)
2018-07-03 16:48:14 +01:00
Richard Davey
d328f14be0
Fixed vertex calculation
2018-07-03 12:38:45 +01:00
Richard Davey
187328ea1a
UVs are passed directly now
2018-07-03 00:14:23 +01:00
Richard Davey
265852fc75
Removed test code
2018-07-02 17:09:21 +01:00
Richard Davey
35686657ce
Tidied up the batchVertices method and removed old stuff
2018-07-02 17:06:49 +01:00
Richard Davey
c1020c6dbb
Refactoring TTP to remove so much redundant stuff
2018-07-02 16:44:24 +01:00
Richard Davey
fe61cfe2d1
You can now set the WebGL batch size in the Game Config via the property batchSize
. The default is 2000 before the batch will flush, which is a happy average between desktop and mobile. If targeting desktop specifically, you may wish to increase this value to reduce draw calls.
2018-07-02 12:33:46 +01:00
Richard Davey
1941d8a494
Removed drawStaticTilemapLayer
method and updated layer vertex code
2018-07-02 12:07:39 +01:00
Richard Davey
fdead2af16
Added the tint effect attribute and merged with all the various batches
2018-06-30 11:33:52 +01:00
Richard Davey
e22b1a7b9c
Removed stubs from pipelines
2018-06-29 12:33:44 +01:00
Richard Davey
39c3866179
lint fix
2018-06-28 13:07:59 +01:00
Richard Davey
217779604c
Added tileScaleX and tileScaleY support for Tile Sprites
2018-06-28 12:59:27 +01:00
Richard Davey
8c312090da
Solidified use of pixelArt mode
2018-06-27 15:27:16 +01:00
Richard Davey
7a23378015
Unified use of roundPixels, antialias and pixelArt modes
2018-06-27 15:15:00 +01:00
Richard Davey
7aa46657c2
Tidying up jsdocs and changing float to number
2018-06-26 23:19:14 +01:00
Richard Davey
bb7b99a4db
Updated log and formatting
2018-06-25 22:53:42 +01:00
Richard Davey
c6c9b25fdc
Camera.alpha
(and its related method Camera.setAlpha
) allows you to get an alpha level for the entire camera. This impacts everything it is rendering, even if those objects also have their own alpha values too. You can tween the property to make the camera contents fade in / out, or you can set it as needed in your game.
2018-06-25 17:35:36 +01:00
Richard Davey
98b1cc2dbc
Although the Blitter object had the Alpha component, setting it made no difference. Setting Blitter alpha now impacts the rendering of all children, in both Canvas and WebGL, and you can also specify an alpha per Bob as well.
2018-06-25 16:06:22 +01:00
Richard Davey
f45ab89f8d
The ForwardDiffuseLightPipeline, used by the Lights system, now sets a flag if the Scene doesn't contain any lights. All of the Game Objects now check this flag and don't even bother adding themselves to the batch if there are no lights in the Scene, as they'd never render anyway. This also avoids the ghost-image problem if you swap Scenes to a new Scene with the Light Manager enabled, but no actual lights defined. Fix #3707
2018-05-31 16:57:30 +01:00
Richard Davey
9429a28574
The Particle tint value was incorrectly calculated, causing the color channels to be inversed. Fix #3643
2018-05-18 13:16:17 +01:00
Richard Davey
835bc37e32
Optimized TextureTintPipeline.drawBlitter so it skips bobs that have alpha of zero and only calls setTexture2D
if the bob sourceIndex has changed, previously it called it for every single bob.
2018-05-09 15:13:06 +01:00
Richard Davey
6ec1a580eb
typo fix
2018-05-09 14:30:31 +01:00
Richard Davey
57918bb50f
Removed the need for raw-loader
in webpack. Shaders now build to standard JS files. Removed fs requirement.
2018-05-08 23:04:57 +01:00
Richard Davey
97dd683ea1
The Forward Diffuse Light Pipeline was hard coded to assume the normal map would be stored in the source index zero. It now correctly obtains the normal map from the frame source index, which means all Game Objects that used frames from multi-atlas textures will now work with lights properly.
2018-05-04 14:31:19 +01:00
Felipe Alfonso
d2da10c1a9
Added jsdoc comments to TextureTintPipeline
2018-04-25 13:06:19 -03:00
Felipe Alfonso
f64b4b9b20
added jsdoc comments to ForwardDiffuseLightPipeline
2018-04-24 16:52:57 -03:00
Felipe Alfonso
7e90dab82f
FlatTintPipeline jsdoc comments
2018-04-24 16:30:00 -03:00
Felipe Alfonso
e385d018c5
added comments to ModelViewProjection pipeline component
2018-04-24 16:00:35 -03:00
Felipe Alfonso
426bc4ffd4
BitmapMaskPipeline jsdoc descriptions
2018-04-24 13:53:10 -03:00
Richard Davey
ef24982301
Pending dos
2018-04-24 15:34:55 +01:00
Richard Davey
741d1f5793
Doc pending tags
2018-04-24 15:32:08 +01:00
Richard Davey
176b085402
jsdoc fix
2018-04-19 13:28:10 +01:00
Felipe Alfonso
504ba9e133
Fixed eslint errors on TextureTintPipeline.js
2018-04-18 18:54:06 -03:00
Felipe Alfonso
aef538d61b
Added parent transform matrix to Light2D pipieline to allow support for containers
2018-04-18 18:40:27 -03:00
Felipe Alfonso
47bee69b3b
Fixed transformation matrix order for batchGraphics
2018-04-18 18:35:18 -03:00
Felipe Alfonso
18e178a72f
Fixed matrix transformation order for batchTexture
2018-04-18 18:30:54 -03:00
Felipe Alfonso
f3e0ae8d44
Fixed order of transformation for dynamic bitmap text
2018-04-18 18:28:08 -03:00
Felipe Alfonso
dbafd9a70c
Fixed order of matrix transformation on:
...
-emitter
-blitter
-sprite
-mesh
-bitmap text
2018-04-18 18:15:43 -03:00
Richard Davey
55965c748f
jsdoc fixes
2018-04-18 12:13:49 +01:00