Richard Davey
48f90fec34
Implemented a State based MainLoop system, with fully split logic / render cycles and frame rate. Each State can now set its own frame rate. Added in more Camera commands, moved the Tween Manager into the State Systems, and started work on the new heavily reduced Game object.
2016-11-08 01:50:57 +00:00
Richard Davey
4b42972a9b
Comment out some parts that don't work yet.
2016-11-07 00:33:42 +00:00
Richard Davey
d568d2bede
Moved _sys to a StateSystems class to keep things much cleaner, and avoid setter inheritance mess.
2016-11-06 12:18:08 +00:00
Richard Davey
268e40ea7e
Add to 'state' by default now.
2016-11-03 22:26:39 +00:00
Richard Davey
a15747203e
Moved boot into Game, and added State property.
2016-11-03 22:26:16 +00:00
Richard Davey
6e284cf4f9
Removed test code.
2016-11-01 01:19:32 +00:00
Richard Davey
03b651f79f
Loads of tweaks re: Transform inheritance.
2016-11-01 00:31:45 +00:00
Richard Davey
8e2c5b7669
Removed dead code.
2016-10-31 00:03:57 +00:00
Richard Davey
c27b2f9fca
Changed batch limits. Currently running 20,000 pixels in 1 draw call.
2016-10-30 23:59:47 +00:00
Richard Davey
c4a79bfadc
Pixel Batch rendering working, and passing through properly.
2016-10-30 23:40:18 +00:00
Richard Davey
bd80999b33
Refined the Image and WebGL Renderers.
2016-10-30 22:58:14 +00:00
Richard Davey
a55df3f143
Added in the Pixel Field batch processor and start of the Game Object.
2016-10-30 22:57:50 +00:00
Richard Davey
577b81580a
New batch system working.
2016-10-30 14:57:38 +00:00
Richard Davey
f1760f961d
Working through splitting the Batch shader out of the manager, and into its own class. Got multi-shader swapping working.
2016-10-28 02:42:58 +01:00
Richard Davey
2b850ad4e8
Setting the anchor dirties the Transform.
2016-10-27 15:14:09 +01:00
photonstorm
fd3898742f
Added ability to toggle multi-texture support at run-time.
2016-10-25 16:44:23 +01:00
photonstorm
8de992175e
Renamed Renderer spriteBatch to just batch.
2016-10-25 14:30:29 +01:00
Richard Davey
120b6eb2bd
Blend Modes work. More optimisations in the batch manager.
2016-10-25 03:57:34 +01:00
Richard Davey
4c6691863c
Fixed Multi Texture support in the new batch manager.
2016-10-25 00:41:45 +01:00
photonstorm
2af81bdfba
Masses of refactoring in BatchManager, making it as compact and fast as possible.
2016-10-24 17:14:10 +01:00
Richard Davey
3cb806c86e
New addVerts method working.
2016-10-23 11:25:44 +01:00
photonstorm
64cd88f7b4
Trying out flash effect.
2016-10-19 17:17:26 +01:00
photonstorm
f1e8396b6f
Tidying up.
2016-10-19 14:30:43 +01:00
photonstorm
0a659bcf67
No longer needed.
2016-10-19 14:29:38 +01:00
photonstorm
fb3bb4b32f
Refactored into new Base Game Object class, that Image and Sprite (and everything else) will now extend. Much more versatile, and a lot less code duplication.
2016-10-19 11:54:00 +01:00
Richard Davey
5273799912
Added Color component to Stage and Image.
...
Added tint support into the Batch Manager.
2016-10-19 02:21:20 +01:00
photonstorm
18b12dfc3e
Huge amount of work getting the WebGL renderer sorted out, tidied up and merged with the latest Texture and Transform components.
2016-10-18 17:03:25 +01:00
photonstorm
3020e3b8cf
Updating core objects.
2016-10-14 08:59:24 +01:00
photonstorm
bfd391b251
Using Color component.
2016-10-14 08:58:26 +01:00
photonstorm
f9ffe098c3
Check the worldAlpha when rendering.
2016-10-14 06:32:03 +01:00
photonstorm
386e22b0fd
Commented out all the bg color stuff. It now just changes the canvas CSS.
2016-10-14 06:31:26 +01:00
photonstorm
9961eeee6b
Added worldAlpha property.
2016-10-14 06:31:01 +01:00
photonstorm
582d705b1f
Updated base game objects.
2016-10-14 04:09:22 +01:00
photonstorm
ff2caeeb1c
Some quick Image tests (will need to move to Sprite soon)
2016-10-14 02:21:21 +01:00
photonstorm
c5088d4ba6
Updated Factory to add to parent.
2016-10-14 02:21:04 +01:00
photonstorm
f6903df104
Stage now extends Container.
2016-10-14 02:20:01 +01:00
photonstorm
680ce51842
Updated Container methods, renamed renderers, added Factory.
2016-10-14 02:19:35 +01:00
Richard Davey
483c3eb34b
Updated to work with new Image properties.
2016-10-13 01:54:40 +01:00
Richard Davey
559126d7b5
Moved to using new Transform component, and adjusted other properties.
2016-10-13 01:54:18 +01:00
Richard Davey
72ee3c7a84
Updating Image game object to use the new Transform component.
2016-10-13 00:08:26 +01:00
photonstorm
9ed542781b
Added the new Data Component.
2016-10-12 15:19:04 +01:00
photonstorm
ce3308ea1d
Hooking the Loader and Cache into the new Texture Manager.
2016-10-11 14:52:17 +01:00
Richard Davey
3ac8c4fcc5
Tidied up the Children component.
2016-10-09 23:39:27 +01:00
Richard Davey
0af16817a5
Refactored GameObjects
to GameObject
.
2016-10-09 22:27:58 +01:00
Richard Davey
fb13151959
Start of the container.
2016-10-08 17:19:55 +01:00
Richard Davey
d137d3e989
Swapped over to using the new Factory.
2016-10-08 16:31:08 +01:00
Richard Davey
380e717e52
Finished off missing factories. Moved over the docs. Changed rogue @returns to @return everywhere.
2016-10-08 16:17:46 +01:00
Richard Davey
6d0dc5e003
Added BitmapText Factory.
2016-10-08 13:18:35 +01:00
Richard Davey
729020477a
New Game Objects structure in place, and starting to take shape.
...
Moved BitmapData and RenderTexture into the textures folder for now.
All Game Objects now have their own sub-folder, with their Factory and renderer functions alongside them, plus any other files they need.
New Factory class added. Currently hooked into `game.factory` for testing, but will swap to `game.add` when complete.
2016-10-08 03:05:42 +01:00
Richard Davey
f9fe6a3e94
Fixed canvas SpriteBatch and removed duplicate render functions.
2016-10-07 03:41:48 +01:00
Richard Davey
5b4280d694
Removed the matrix.
2016-10-07 03:34:42 +01:00
Richard Davey
35fd29a45a
Removed Pixi globals, and moved constructors above the prototype.
2016-10-07 03:32:37 +01:00
Richard Davey
0abf9d958d
Updated scaleMode global.
2016-10-07 03:22:59 +01:00
Richard Davey
3fab1ce385
Working through the Pixi globals and removing them.
2016-10-07 03:21:39 +01:00
Richard Davey
f6047763fa
Fixed Graphics rendering.
2016-10-07 02:53:34 +01:00
Richard Davey
ea9c9ae7b3
Removed gl texture ID.
2016-10-07 00:59:10 +01:00
Richard Davey
4cd0e833d5
Sorted out the mixin needed for the Canvas renderer.
2016-10-05 01:09:23 +01:00
Richard Davey
047a994334
Canvas and WebGL rendering Text again.
2016-10-04 22:47:05 +01:00
Richard Davey
28eb7a5f40
Adding in more renderer game objects.
2016-10-04 22:36:07 +01:00
Richard Davey
d55cc215ee
Moving more rendering functionality over.
2016-10-04 00:58:52 +01:00
photonstorm
1da95994a5
First pass of the newly re-structured Canvas Renderer (still using old texture system though).
2016-10-03 12:44:54 +01:00
Richard Davey
0aa6650422
Re-arranged methods and added parent.
2016-09-29 03:10:16 +01:00
Richard Davey
5cb7cc8e92
Start of the new Children component.
2016-09-29 02:29:56 +01:00
Richard Davey
6ce28658f6
PIXI.Float32Array, PIXI.Uint16Array, PIXI.Uint32Array and PIXI.ArrayBuffer have all been removed, and replaced with their own proper native versions. The polyfill now captures any instances where the browser needs to fall back to an Array instead.
2016-09-28 19:02:59 +01:00
photonstorm
c836d4bfbd
PIXI.PI_2, PIXI.RAD_TO_DEG and PIXI.DEG_TO_RAD have all been removed, as they are no longer used internally, and are all available under Phaser.Math.
...
PIXI.VERSION has been removed, as it's no longer relevant and misleading.
2016-09-28 16:57:08 +01:00
photonstorm
f9a2c2a79e
PIXI.Graphics and PIXI.GraphicsData have been removed, and all functionality merged in to Phaser.Graphics, to cut down on the number of internal classes and inheritance going on.
...
WebGLGraphics and CanvasGraphics have been updated so that it checks for Phaser Geometry shape types internally.
2016-09-28 16:42:33 +01:00
photonstorm
69db3632d6
PIXI.Rope and PIXI.Strip have been removed, and all functionality merged in to Phaser.Rope, to cut down on the number of internal classes and inheritance going on.
2016-09-28 15:10:43 +01:00
photonstorm
879bcffc88
Removed PIXI.Utils and remapped functions to their new locations.
2016-09-28 14:02:02 +01:00
photonstorm
1e15012a91
PIXI.CanvasPool has been moved into the Phaser utils
folder, and renamed to Phaser.CanvasPool
. All references to PIXI.CanvasPool have been updated to match the new namespace.
2016-09-28 12:53:04 +01:00
photonstorm
508e5ae723
PIXI.TilingSprite has been removed, and all functionality merged in to Phaser.TileSprite, to cut down on the number of internal classes and inheritance going on.
2016-09-28 11:57:11 +01:00
Richard Davey
2005c9d86d
PIXI.RenderTexture has been removed, and all functionality merged in to Phaser.RenderTexture, to cut down on the number of internal classes and inheritance going on.
2016-09-28 01:40:29 +01:00
Richard Davey
1d7b54b7d4
Merged Sprite Batch updates.
2016-09-27 23:22:26 +01:00
Richard Davey
41ad0873d4
Fixing the Sprite Batch.
2016-09-27 23:20:38 +01:00
Richard Davey
2bc9c73838
The Video.playing property didn't check to see if the Video existed, and would throw the error Uncaught TypeError: Cannot read property 'paused' of null
if you called it after destroying the video (thanks @Tetley #2740 )
2016-09-26 23:35:41 +01:00
Richard Davey
0692bf01b5
If you called Video.changeSource, and then immediately called Video.play after it, it would fire the onComplete
event twice (thanks @jaraiza #2543 )
2016-09-26 23:28:41 +01:00
Richard Davey
f331697fee
Text.splitRegExp is a new property that allows you to control the regular expression that is used to split the text into multiple lines (@dai-shi #1403 )
2016-09-26 22:35:54 +01:00
Richard Davey
feb1b980c0
Text.width and Text.height now divide the result by the Text.resolution, to avoid incorrect dimensions on High DPI devices (thanks @mattahj #2146 )
2016-09-26 22:22:31 +01:00
Richard Davey
3f4decd59e
First pass at adding rotated atlas frame support in to the Canvas renderer.
2016-09-20 00:53:00 +01:00
photonstorm
a84021679b
Tidied up how crop destroys itself.
2016-08-25 16:41:26 +01:00
photonstorm
94a0dbe547
Text.updateText now sets Text.dirty = false
, which stops Text objects from having updateText
called twice on them after creation.
2016-08-25 14:16:48 +01:00
Richard Davey
d8cb40aa5e
Merge pull request #2700 from kjav/patch-2
...
Fixed typo in TileSprite.js comment
2016-08-25 13:04:31 +01:00
photonstorm
cbef6d6648
Formatting fix.
2016-08-22 18:38:40 +01:00
photonstorm
4382944a2e
A tinted Texture in Canvas mode wouldn't be updated properly if it was also cropped, beyond the initial crop. Now a cropped texture will re-tint itself every time the crop is updated, and has changed (thanks @phoenixyjll #2688 )
2016-08-18 15:55:13 +01:00
kjav
314b088975
Fixed typo in TileSprite.js comment
...
Changed typo 'etch' in TileSprite.js to 'etc'. Related to pull request #2699
2016-08-18 15:40:19 +01:00
Richard Davey
a4de55c419
Merge pull request #2685 from valent-novem/dev
...
Fix rendering text with bounds and resolution
2016-08-16 21:12:57 +01:00
Richard Davey
49e40fc2d4
Typo
2016-08-16 20:59:59 +01:00
Sergey Z
68fe8b8058
Fix rendering text with bounds and resolution
2016-08-08 16:51:07 +03:00
Richard Davey
a0c6ae6c51
Phaser.Image now has the ScaleMinMax component.
2016-08-03 05:00:09 +01:00
Richard Davey
ce764e098d
As a result of changes in #2573 Graphics objects were calling updateLocalBounds
on any shape change, which could cause dramatic performances drops in Graphics heavy situations ( #2618 ). Graphics objects now have a new flag _boundsDirty
which is used to detect if the bounds have been invalidated, i.e. by a Graphics being cleared or drawn to. If this is set to true then updateLocalBounds
is called once in the postUpdate
method (thanks @pengchuan #2618 )
2016-07-23 12:52:35 +01:00
Richard Davey
b405570833
Docs fix #2624
2016-07-17 11:26:09 +01:00
Tomáš Blatný
2b90f2cb3b
BitmapData.js: fixed fluent interface
2016-07-15 20:16:35 +02:00
Richard Davey
4548d70369
Experimenting with new MainLoop + position interpolation. (reverted from commit e49d45e278
)
2016-07-13 02:44:35 +01:00
Richard Davey
e49d45e278
Experimenting with new MainLoop + position interpolation.
2016-07-12 03:05:29 +01:00
photonstorm
ee202667ed
Huge docs update for all of the Game Object events.
2016-07-08 11:28:30 +01:00
Richard Davey
0014201917
Groups now have the following properties, which are getters and setters: centerX
, centerY
, left
, right
, top
and bottom
. These calculate the bounds of the Group, based on all visible children, and then allow you to apply positioning based on that. This means you can, for example, now get the horizontal center of a Group by called Group.centerX
. These properties are also setters, so you can position the Groups, and it will take scale and rotation into consideration.
...
Groups have a new method `alignIn`. It allows you to align the Group within another Game Object, or a Rectangle. You can specify one of 9 positions which are the new position constants such as: `Phaser.TOP_LEFT` or `Phaser.CENTER` (see docs for the complete list). The Groups are positioned based on their child bounds, which takes rotation and scaling into consideration. You can easily place Groups into the corners of the screen, or game world, or align them within other Sprites, using this method.
Groups have a new method `alignTo`. It allows you to align a Group to the side of another Game Object, or a Rectangle. You can specify one of 11 positions which are the new position constants such as: `Phaser.TOP_LEFT` or `Phaser.LEFT_BOTTOM` (see docs for the complete list). The Groups are positioned based on their child bounds, which takes rotation and scaling into consideration. You can easily align Groups next to other Sprites using this method.
2016-07-08 01:33:42 +01:00
Richard Davey
c4d7870a31
* PIXI.Texture.fromImage, PIXI.BaseTexture.fromImage and PIXI.Sprite.fromImage have all been removed. They should never have actually been used, as they bypass the Phaser Loader, and don't factor in CORs or any other advanced loader settings.
...
* The PIXI.BaseTexture.imageUrl property has been removed, as it was never actually populated.
* The PIXI.BaseTexture._UID property has been removed, as it was never actually used internally.
* All references to PIXI.BaseTextureCache have been removed (primarily from BaseTexture.destroy and Texture.destroy), as the BaseTextureCache was never used internally by Phaser, or by our custom version of Pixi.
* PIXI.TextureCache has been removed. It was only ever used by the __default and __missing images that Phaser generates on start-up. It wasn't used internally by Phaser anywhere else, and the only references Pixi has to it have all been removed. If you need it in your own game, please refactor it to avoid it, or re-create the object on the PIXI global object.
* Canvases created by `BaseTexture.fromCanvas` no longer have the `_pixiId` property attached to them, as this was never used internally by Phaser or Pixi.
* PIXI.BaseTexture.updateSourceImage is now deprecated. Please use `Sprite.loadTexture` instead.
* The property PIXI.BaseTextureCacheIdGenerator has been removed, as it is no longer used internally by Phaser or Pixi.
* PIXI.Texture.addTextureToCache has been removed. The PIXI Texture Cache was never actually used by Phaser, and was leading to complications internally.
* PIXI.Texture.removeTextureFromCache has been removed. The PIXI Texture Cache was never actually used by Phaser, and was leading to complications internally.
* PIXI.Texture.fromFrame and PIXI.Sprite.fromFrame have been removed. They relied on the PIXI Texture Cache, which was never actually used by Phaser, and was never used internally by Pixi either.
* The property PIXI.TextureCacheIdGenerator has been removed, as it was not used internally.
* The property PIXI.FrameCache has been removed, as it was not used internally.
2016-07-06 21:47:27 +01:00
Richard Davey
33150018ad
Text.fontPropertiesCanvas no longer uses a CanvasPool entry.
2016-07-06 20:59:28 +01:00
photonstorm
0036bf747f
BitmapData has a new, optional, fifth argument: skipPool
. By default BitmapData objects will ask for the first free canvas found in the CanvasPool, but this behavior can now be customized on a per object basis.
2016-07-04 12:57:08 +01:00
photonstorm
32bec66031
Docs update.
2016-06-29 16:18:54 +01:00
Richard Davey
a0c771d47e
Text.setText has a new optional argument immediate
which will re-create the texture immediately upon call, rather than wait for the next render pass to do so (thanks @Scraft #2594 )
2016-06-27 22:42:01 +01:00