Commit graph

672 commits

Author SHA1 Message Date
Richard Davey
2a19a02d0b Added window focus and blur handler to catch raf throttling outside of page visibility changes. 2017-05-09 15:39:30 +01:00
Richard Davey
253dc76081 Added delta history cool down period to avoid spikes flooding the values. 2017-05-09 10:42:43 +01:00
Richard Davey
21882a24ec Added Page Visibility handler and hooked into TimeStep. 2017-05-09 01:24:46 +01:00
Felipe Alfonso
946266d715 Render to texture 2017-05-08 18:03:18 -03:00
Felipe Alfonso
6511b4b0d5 Internal Transform Stack for Graphics 2017-05-08 17:13:48 -03:00
photonstorm
e9eefa6314 TS updates. 2017-05-04 17:32:05 +01:00
Felipe Alfonso
d3b1081da7 Added destroy to tileSprite 2017-05-03 21:28:49 -03:00
Felipe Alfonso
ee4e0bf8e9 Merge branch 'master' of https://github.com/photonstorm/phaser 2017-05-03 21:28:18 -03:00
Felipe Alfonso
da9a6de007 Canvas TileSprite 2017-05-03 21:14:14 -03:00
Richard Davey
54f95a3cff Removed old timesteps and renamed Variable to TimeStep. 2017-05-04 01:08:50 +01:00
photonstorm
9ee41603a2 Exposed game loop settings via game config object. 2017-05-03 17:07:15 +01:00
Richard Davey
9eb1676482 Seed history properly and dt clamp. 2017-05-03 02:21:32 +01:00
Richard Davey
e5b82eb9b9 Fixed delta spike handling. 2017-05-03 01:34:29 +01:00
Richard Davey
02a06bc7e3 Moved the Animation functions into the components folder where they are a better fit. 2017-05-03 00:54:09 +01:00
Richard Davey
08a5b4969a Split the Animation functions up to make them more manageable. Fixed bug in AddFrameAt. 2017-05-03 00:31:36 +01:00
Richard Davey
4ad87957bf Added Animation.removeFrame, removeFrameAt and getFrameAt. 2017-05-02 23:58:15 +01:00
Richard Davey
ed5eda4bdc Optmized the addFrameAt method. 2017-05-02 22:07:08 +01:00
Felipe Alfonso
12d3771c0a Tile Sprite rendering on WebGL 2017-05-02 17:57:21 -03:00
Richard Davey
d787bfbf78 Added Animation.addFrame and addFrameAt including sequence updating. 2017-05-02 19:49:03 +01:00
Richard Davey
1bfec64f2e Animation Manager now has Pause All and Resume All events and handlers, and all child Animations listen for and respect it. 2017-05-02 16:49:48 +01:00
Richard Davey
2c9be48a73 Add Animation Event + handler. 2017-05-02 16:18:58 +01:00
Richard Davey
47c4df66e6 Added Remove Animation event and handler. 2017-05-02 16:02:49 +01:00
Richard Davey
a8bc0c0c27 Merge pull request #3013 from rblopes/upgrade-tooling
[Phaser 3] Upgrade of development dependencies
2017-05-01 22:51:56 +01:00
Rafael Barbosa Lopes
1b77dc4fa4 Upgraded development dependencies, some clean up.
This commit brings the following updates:

- Removal of the following redundant or unused packages:

  - `json-loader`: Webpack 2 can handle JSON files by default;
  - `copy-webpack-plugin`: unused;
  - `webpack-dev-server`: unused.

- Upgrade of the following packages to their latest versions:

  - `fs-extra`;
  - `webpack`: upgraded to the latest stable version;
  - `webpack-shell-plugin`.

- Addition of the following packages:

  - `uuid`, in replacement of the deprecated `node-uuid`, with no
    changes to the public API.

  - `eslint`, with ESLint linting utility.

- Addition of two runnable scripts to help development tasks:

  - `build`: An alias for running `webpack`.
  - `eslint`: Alias for running ESLint using the provided configuration
    in the project.

- Fix the package entry point, so package consumers will be capable to use
  library in a future release.

- Update `.npmignore`, so npm will include only the relevant package
  files.

- Some clean-up and a few code fixes.
2017-04-30 21:52:22 -03:00
Richard Davey
9663a4022e Start of shuffle action. 2017-05-01 01:44:29 +01:00
Richard Davey
9d1640063b Added tabIndex property. 2017-05-01 01:27:35 +01:00
Felipe Alfonso
e6fefdab24 Using canvas buffer for generating tile texture 2017-04-28 15:10:32 -03:00
photonstorm
456809e8dd GetFrames can now handle you setting just a string for the frames array, and it'll get all the frames from the texture for it. 2017-04-28 04:31:08 +01:00
photonstorm
3647e28427 Added Texture.getFrameNames which is handy for things like atlas imports or sprite sheets. 2017-04-28 04:30:32 +01:00
photonstorm
17d6667c63 Swapped to perf.now. 2017-04-28 03:15:08 +01:00
photonstorm
54442c59d4 Forcing Variable Timer for further testing. 2017-04-28 03:15:02 +01:00
photonstorm
119ae11736 Using perf.now and tidying it all up. 2017-04-28 03:14:30 +01:00
photonstorm
4d142ad026 Updated Animation so it now uses the delta values, rather than the time. Smoother and no longer suffers duration peak errors. 2017-04-28 03:14:09 +01:00
photonstorm
1eda6229be Moved the raf after the callback. 2017-04-28 03:13:32 +01:00
photonstorm
960acce62c eslint fixes 2017-04-28 03:13:22 +01:00
photonstorm
ba2e5ffc26 Added Format String util. 2017-04-28 01:52:46 +01:00
photonstorm
a232e6c97d Created VariableTimeStep loop and integrated it into the Game and State Systems.
Added GetSpeed Math util.
2017-04-27 17:03:19 +01:00
Richard Davey
07f72f489a Added TickerLoop and made it optional via config. 2017-04-27 03:11:56 +01:00
photonstorm
d2fa3779f4 Working on the new TickerLoop. 2017-04-26 17:13:56 +01:00
photonstorm
8264351f75 Renamed GetObjectValue to GetValue and replaced through-out entire codebase. More consistent now with GetAdvancedValue, etc. 2017-04-26 16:03:22 +01:00
photonstorm
427018d291 You can now provide the TextMetrics as part of the config object, to avoid the expensive canvas scanning needed.
Text.getTextMetrics and TextStyle.getTextMetrics added to faciliate this. Plus added to toJSON.
2017-04-26 15:54:23 +01:00
photonstorm
e2576fe512 Text.padding supported and working. 2017-04-26 15:34:15 +01:00
Richard Davey
3f6c74c1f7 More work on Text Metrics. 2017-04-26 03:55:42 +01:00
Felipe Alfonso
4073db3551 TileSprite base and renderer 2017-04-25 19:09:13 -03:00
Richard Davey
0df585f7d5 Testing various text measuring options. 2017-04-25 19:46:13 +01:00
Richard Davey
a4dc2d28aa Added TextStyle.toJSON and merged the output with Text.toJSON. 2017-04-25 18:24:37 +01:00
Richard Davey
ad0ff4d64b Added BuildFromConfig for Text object.
Updated TextStyle to use advanced object getter.
2017-04-25 18:07:23 +01:00
Richard Davey
c0254bbbf0 Added setScaleMode and setBlendMode functions. 2017-04-21 03:12:25 +01:00
Felipe Alfonso
d4e4509e22 Render off-screen and on-screen for EffectLayer 2017-04-20 21:30:19 -03:00
Felipe Alfonso
3c476ae26b Fixed EffectRenderer 2017-04-20 21:25:31 -03:00
Richard Davey
b3fb6d64f2 Added ability to create EffectLayer via config object. 2017-04-21 00:54:57 +01:00
Felipe Alfonso
8df65e7270 changed renderTexture name 2017-04-20 20:50:47 -03:00
Felipe Alfonso
1742ec0f12 RenderPass Update 2017-04-20 15:06:57 -03:00
Felipe Alfonso
18e3b9379d Render Pass rendering on the screen 2017-04-20 13:18:14 -03:00
Richard Davey
e631c2031b Merge pull request #2990 from johnfn/patch-1
Fix typo in Color
2017-04-20 12:47:08 +01:00
Felipe Alfonso
fd4d25a3b6 RenderPass update 2017-04-18 19:15:10 -03:00
photonstorm
6aa2fb009b Renamed Texture Parsers to follow conventions elsewhere in the library. Started on SS from Atlas. 2017-04-18 15:31:30 +01:00
Felipe Alfonso
88c599cb28 Fixed render target issue with BitmapText 2017-04-13 12:55:25 -03:00
Felipe Alfonso
bcbec418b1 Fixed Graphics and Blitter issue with renderTarget 2017-04-13 12:45:01 -03:00
Richard Davey
81c6124a4d Added more toJSON GameObject functions. 2017-04-13 00:35:27 +01:00
Richard Davey
5eee8225bf Added ToJSON Game Object component. 2017-04-13 00:05:21 +01:00
Richard Davey
929d6fc8ef Enforced GameObjects to specify their type (a string based const) 2017-04-13 00:05:12 +01:00
Richard Davey
612db78818 Added AnimationJSON Loader File type.
Fixed ToJSON component.
2017-04-12 15:27:05 +01:00
Richard Davey
fa4192e1f0 Moved Animation Manager functions into its own components folder for clarity.
Added FromJSON.
Updated Create so you only pass in a config object now, not a key AND config.
2017-04-12 14:39:11 +01:00
Richard Davey
ee5e4f5195 Tidied up the Animation folder.
Animation Manager now in its own folder, with all methods split out to their own files.
Animation Components moved to components folder.
AnimationFrame renamed to Frame and moved inside the frame folder, as it's frame specific.
2017-04-12 13:53:55 +01:00
Richard Davey
da3496a71d Added toJSON support to the Animation Manager and Animations. 2017-04-12 13:14:42 +01:00
photonstorm
01a542303a Config based SS rip. 2017-04-11 17:22:22 +01:00
photonstorm
4b4ef1dcfd eslint fix. 2017-04-11 17:21:50 +01:00
photonstorm
93b4d33a78 Suffix support in multiatlas call. 2017-04-11 17:21:42 +01:00
Felipe Alfonso
581fdb50ee RenderTarget added to renderable game objects 2017-04-11 10:15:38 -03:00
Richard Davey
5cdf2f0e96 Fixed animation values being overridden on load. 2017-04-11 03:28:39 +01:00
Richard Davey
1abf6e7b1e Sprite now uses BuildAnimation function. 2017-04-11 03:13:51 +01:00
Richard Davey
e96dabf0cd Fixed paths 2017-04-11 03:13:41 +01:00
Richard Davey
dabfbc0ae1 Added animation build function. 2017-04-11 03:13:30 +01:00
Richard Davey
fcc01d28aa eslint fixes. 2017-04-11 02:49:13 +01:00
Richard Davey
2c4a697665 Expose the GameObjectCreator. 2017-04-11 02:49:13 +01:00
Richard Davey
05920eae8e An advanced object property extraction function. Allows you to defined property callbacks, arrays to pick from, random ints and random floats. 2017-04-11 02:49:13 +01:00
Richard Davey
9ee3e759b5 Gets a value from an object with a min / max clamp. 2017-04-11 02:49:13 +01:00
Richard Davey
c8d22fe881 Added BuildGameObject and related functions. Allows you to create a game object via a configuration object, rather than having to call all the functions directly. Applied to Images and Sprites so far. Accessed via this.make.sprite or this.make.image. 2017-04-11 02:49:13 +01:00
Felipe Alfonso
d08e23f4f4 Reset renderTarget to null when rendering camera effects 2017-04-10 16:15:18 -03:00
Felipe Alfonso
48782ec751 calling GameObject constructor on EffectLayer 2017-04-10 13:12:54 -03:00
photonstorm
294b110c61 Comment 2017-04-10 17:04:24 +01:00
photonstorm
ffa50f27f6 Added in all of the animation callbacks (start, repeat, update and complete), and user-defined arguments for each of them + callback scope. 2017-04-10 16:27:38 +01:00
Felipe Alfonso
5095e66fa7 Int and Matrix uniform setting 2017-04-10 12:05:56 -03:00
photonstorm
223a40c3dd README update. 2017-04-10 14:49:07 +01:00
photonstorm
f303996f07 Removed ability to set alpha per animation frame (you do it via onUpdate if needed)
Added showOnStart and hideOnComplete config options to set visible state of sprite.
2017-04-10 14:38:44 +01:00
Richard Davey
e462def9bd Added PlayAnimation action. 2017-04-08 01:59:44 +01:00
Richard Davey
ecbc428917 Loader shouldn't append a hypen for multi-atlases. 2017-04-08 01:13:38 +01:00
Felipe Alfonso
92cd873d85 uniform managment added to EffectLayer 2017-04-07 15:50:44 -03:00
photonstorm
198101c683 Added Layer.getChildren. 2017-04-07 15:44:04 +01:00
Felipe Alfonso
0370ebf15e Fixed clearing render target issue 2017-04-07 02:06:55 -03:00
Felipe Alfonso
b1b184aed4 render target dimensions don't affect viewport 2017-04-07 01:34:35 -03:00
Felipe Alfonso
e83db4445f Fixed issue with attribute order on osx and ios 2017-04-07 01:23:44 -03:00
Felipe Alfonso
511781bdb0 More granular errors and warnings 2017-04-07 00:42:06 -03:00
Richard Davey
2d5d75d97d Get from sys instead. 2017-04-07 03:11:19 +01:00
Felipe Alfonso
8c479a56c0 Effect Layer 2017-04-06 22:49:15 -03:00
Felipe Alfonso
6fe063b1d2 Merge branch 'master' of https://github.com/photonstorm/phaser 2017-04-06 22:48:31 -03:00
Richard Davey
b981f626e5 Added Play and StaggerPlay to the AnimationManager. 2017-04-07 00:41:05 +01:00
Richard Davey
24b223af86 Added TimeScale component. 2017-04-07 00:34:06 +01:00
Richard Davey
20c230d804 Added Animation.delay, repeat and repeatDelay, and fixed scoping issues and return values. 2017-04-07 00:29:20 +01:00
Richard Davey
98fa6ec24d Split all the Animation functions out into their own files for easier management.
The Sprite Animation component now maintains its own set of animation properties (like repeat, yoyo, etc) so you can modify it on a local basis without messing up anything else using the same animation. These are reset if you load a new animation into the Sprite.
2017-04-07 00:07:20 +01:00
Felipe Alfonso
63a614ef74 fixed issues with Text rendering 2017-04-06 14:40:43 -03:00
Richard Davey
105a2234e7 Frames can now set the alpha and visible properties of the sprites. Frame.onUpdate now called. 2017-04-06 03:45:45 +01:00
Richard Davey
c4924fbd70 Added Animation pause, resume and paused methods. Also remove animation, and includeDelay option to getFirstTick. 2017-04-06 00:58:56 +01:00
Felipe Alfonso
aa8f0820c0 Resource clean up and adapted batches to allow shader swapping 2017-04-05 19:01:44 -03:00
Felipe Alfonso
85a3830f1a Shader resource creation added to webgl renderer 2017-04-05 14:59:59 -03:00
Richard Davey
d34a3256ed Init the prevTick to avoid ffwd glitches. 2017-04-05 17:05:51 +01:00
Richard Davey
e588ff511a Added Texture.has(frame) check 2017-04-05 17:04:55 +01:00
Richard Davey
4314fb095f Added Frame progress slice. 2017-04-05 17:04:43 +01:00
Richard Davey
f7b6b357db Added progress float. 2017-04-05 17:04:21 +01:00
Richard Davey
59787a154f Generate methods now take config objects. 2017-04-05 17:04:10 +01:00
Richard Davey
baf69828a5 Working through progress support. 2017-04-05 15:27:31 +01:00
Richard Davey
5dd08c73be Allows you to provide an array for the generate methods. 2017-04-05 15:27:31 +01:00
Richard Davey
7f1f2437e4 Now passes in the index to the AnimationFrame. 2017-04-05 15:27:31 +01:00
Felipe Alfonso
b755fe06b9 Removed RenderPass 2017-04-05 11:23:34 -03:00
Richard Davey
3356cecc0b Added Sprite.play 2017-04-05 04:41:53 +01:00
Richard Davey
3a3ad562ab Added generateFrameNames method and reduced in size.
Fixed Pad bug.
Fixed Animation framerate delta speed.
2017-04-05 04:18:08 +01:00
Richard Davey
4dae85e27c Animation repeat and yoyo now working properly. 2017-04-05 03:22:54 +01:00
Richard Davey
336ea77587 Fixed GO extends. 2017-04-05 02:10:48 +01:00
Richard Davey
701c4b317f Animation repeat and yoyo support. 2017-04-05 02:06:28 +01:00
Richard Davey
101e4f5be5 Animations working :) 2017-04-05 01:15:53 +01:00
Richard Davey
0ed1de6546 Lots of work updating the Animation system. 2017-04-04 23:59:37 +01:00
Richard Davey
ea0af28983 Default preUpdate function. 2017-04-04 23:59:27 +01:00
Richard Davey
b5e8e183b8 Animation Component added. 2017-04-04 23:59:16 +01:00
Richard Davey
86d048b079 Lots of tidying up + preUpdate call added back in. 2017-04-04 23:59:02 +01:00
Richard Davey
05bbfd9bd8 Animation Manager boot state call. 2017-04-04 23:58:45 +01:00
Richard Davey
8ec9061b43 Removed 'group' / 'parent' argument and forced to the State children component. You should use 'make' if you wish to add elsewhere. 2017-04-04 23:58:33 +01:00
Richard Davey
f79dcd0a07 Removed debug code. 2017-04-04 23:57:44 +01:00
Richard Davey
96a7811df7 jshint fixes 2017-04-04 23:57:37 +01:00
Richard Davey
7157d577f5 Updated GetFrames 2017-04-04 16:50:28 +01:00
Richard Davey
679dd1091e Lots more work on the Animation Manager. New Animation format defined, properties added, frame splitter added and starting to plan out update loop. 2017-04-04 16:32:33 +01:00
Richard Davey
acea677424 Added ability to load HTML files into textures. 2017-04-04 14:54:22 +01:00
Richard Davey
6f115a60e3 Added ability for the Loader to handle loading SVG files and creating Images from them (for use as Sprite textures) 2017-04-04 02:54:27 +01:00
Richard Davey
9c3ce047b8 Fixed typo in RectToTriangle and added in easy bounding box escape checks. 2017-04-04 01:22:23 +01:00
Richard Davey
3c12e15054 Added Rectangle to Triangle, and Triangle to Triangle intersection functions. Detects for face intersection and also point within point (so a triangle fully enclosed inside a rectangle for example) 2017-04-04 01:04:05 +01:00
Richard Davey
4914895509 Added Triangle and Rectangle decomposition functions to convert them into an array of points. 2017-04-04 01:03:28 +01:00
Richard Davey
895f7b054a Updated ContainsArray to include the returnFirst argument. 2017-04-04 01:02:56 +01:00
Richard Davey
b7c895c862 Added Triangle.CenterOn to place a triangle on an xy coord. 2017-04-04 01:02:41 +01:00
Richard Davey
4ec898aaa9 Added Phaser.Geom.Triangle.BuildFromPolygon to convert polygon into triangle objects.
Added latest build of Earcut (unminified + license)
2017-04-03 23:30:14 +01:00
Richard Davey
dcab0e1e18 Added Triangle.ContainsArray method, which is an optimized method of checking a whole array of points to see if they lie within a triangle. 2017-03-31 04:58:28 +01:00
Richard Davey
3d323836be Added Line.getPointA and getPointB methods. 2017-03-31 04:58:03 +01:00
Richard Davey
3618214331 Added TriangleToLine intersection test (based on the new LineToLine method) 2017-03-31 04:57:49 +01:00
Richard Davey
a2ba500cbe Changed the LineToLine intersection method to use the version created by Paul Bourke (smaller, faster, simpler). 2017-03-31 04:33:51 +01:00
Richard Davey
e6c431bfed Added Triangle to Circle intersection method. 2017-03-31 03:09:06 +01:00
Richard Davey
bda50e9d27 Added Triangle.getLineA, B and C because we're using those so often in various methods it just makes sense. 2017-03-31 03:08:54 +01:00
Richard Davey
08d0398f52 Fixed Graphics.strokeLineShape 2017-03-31 02:34:43 +01:00
Richard Davey
d3830445cc Added Triangle left, right, top and bottom setters. 2017-03-31 02:34:32 +01:00
Richard Davey
d61bcad272 Added LineToCircle intersection method. 2017-03-31 02:34:13 +01:00
Richard Davey
7bcdf669b8 Added Line.Offset, Triangle.Offset and Triangle.Equals. 2017-03-31 01:40:38 +01:00
Richard Davey
b3bced081a Added Triangle.Random to get a uniformly distributed point from within a Triangle.
Added RandomTriangle Action.
2017-03-31 01:21:55 +01:00