Commit graph

917 commits

Author SHA1 Message Date
Felipe Alfonso
195a59d3ba Dynamic Tilemap rendering 2018-01-24 19:29:57 -03:00
Felipe Alfonso
06fa0afcc8 Dynamic Bitmap Text webgl rendering 2018-01-24 15:55:23 -03:00
Felipe Alfonso
326bdd5204 Fixed camera effects 2018-01-24 00:57:33 -03:00
Felipe Alfonso
12a1ef34f4 Fixed pipeline binding 2018-01-24 00:08:14 -03:00
Felipe Alfonso
5170784338 Graphics WebGL Rendering 2018-01-24 00:03:43 -03:00
Felipe Alfonso
99d850346f Text rendering added 2018-01-23 21:40:20 -03:00
Felipe Alfonso
502ce8ddea Static BitmapText rendering. Added rect culling to TextureTintPipeline 2018-01-23 20:36:49 -03:00
Felipe Alfonso
dd9cef61cf Image WebGL rendering 2018-01-23 17:32:20 -03:00
Felipe Alfonso
070d946dca Mesh and Sprite rendering 2018-01-23 16:29:47 -03:00
Felipe Alfonso
822fc052ee Sprite batching 2018-01-23 13:38:58 -03:00
Felipe Alfonso
6153a34103 Moved shader source to text files 2018-01-22 20:01:00 -03:00
Felipe Alfonso
0f0b422fd7 FlatTint Pipeline progress 2018-01-22 19:51:15 -03:00
Felipe Alfonso
a171968558 WebGLRenderer render function update 2018-01-22 18:37:47 -03:00
Felipe Alfonso
961f00ac11 BlitterPipeline added 2018-01-22 18:21:47 -03:00
Felipe Alfonso
a4e79875d4 Merge branch 'master' into rendering-cleanup
# Conflicts:
#	src/gameobjects/blitter/BlitterWebGLRenderer.js
2018-01-21 11:14:27 -03:00
Felipe Alfonso
31be6fa51d WebGLRenderer cleanup 2018-01-20 01:05:56 -03:00
Felipe Alfonso
1da31fb2a5 WebGLRenderer resource creation 2018-01-19 21:37:52 -03:00
Felipe Alfonso
cfe07706e6 Cleaning up WebGLRenderer 2018-01-17 18:25:43 -03:00
Felipe Alfonso
fd4f441146 DynamicBitmapText WebGL renderer updated 2018-01-16 16:32:27 -03:00
Felipe Alfonso
8bb9b1309f SpriteBatch pipeline re-implementation 2018-01-12 21:13:41 -03:00
Felipe Alfonso
5ca2805dbc Fixed issue with blitter batch incorrect instruction order and forced unsigned int result for color tint operation 2018-01-12 13:46:46 -03:00
Felipe Alfonso
54274b782a BlitterBatch pipeline working 2018-01-10 17:03:01 -03:00
Felipe Alfonso
15c45bda0e BlitterBatch2 base rendering. Still missing Texture binding 2018-01-09 19:51:22 -03:00
Richard Davey
d8f1ba03e9 Moved repository location 2018-01-09 21:43:56 +00:00
Richard Davey
0d90f75b5f Splitting the dev branch up into versions. 2016-11-22 01:36:56 +00:00
Richard Davey
7a155f66fe Added Tilemap back in and tested with Blitter object, and it works really fast. 2016-11-15 03:11:21 +00:00
photonstorm
aac31f6858 FBOs are bound to parents. 2016-11-10 17:05:04 +00:00
photonstorm
49c57089b3 Quick test. 2016-11-10 17:04:37 +00:00
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
efebd79e30 Added State.pause. 2016-11-06 16:50:45 +00:00
Richard Davey
f2cb384da0 State indexing added. 2016-11-06 13:59:48 +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
c60eae4ee1 Fixed vert dimensions, texture still needs to be based on renderer size. 2016-11-04 04:11:47 +00:00
Richard Davey
893d35ea89 Multiple States now rendering together, with their own systems and managers :) 2016-11-04 03:09:48 +00:00
Richard Davey
2326b331f1 States now have their own FBO (under WebGL) which the renderer uses. 2016-11-04 02:24:49 +00:00
Richard Davey
a366ef8f3c New State Manager up and running. 2016-11-04 02:08:17 +00:00
Richard Davey
89ece19c78 Disabled twirl. 2016-11-03 22:25:55 +00:00
Richard Davey
16e687cb2a Fixed issue with FBO leaving no bound texture on unit zero. 2016-11-03 21:50:14 +00:00
Richard Davey
181e08a1f9 Testing fix. 2016-11-03 21:32:06 +00:00
Richard Davey
8971d8eaf4 Updated comments 2016-11-03 21:13:48 +00:00
Richard Davey
b65a9bec42 Tidying up. 2016-11-03 21:10:53 +00:00
Richard Davey
e0c6a0c470 Using createEmptyTexture again. 2016-11-03 21:06:14 +00:00
photonstorm
57e12415cc Removing test code. 2016-11-03 17:25:14 +00:00
photonstorm
a86b02d55a Finally! Fixed the multi texture + FBO pipeline. 2016-11-03 17:19:16 +00:00
photonstorm
a3d9cf9b6d Tiny Batch! 2016-11-03 13:47:37 +00:00
Richard Davey
def3a93b5f Trying to debug fbo + multi-texture 'cannot draw to same texture' issue. 2016-11-03 05:10:50 +00:00
Richard Davey
106a55e642 Lots of tidying up. Renamed properties, removed loads of stuff no longer needed in the main class. 2016-11-03 04:22:07 +00:00
Richard Davey
8439cf0c15 Added QuadFBO class, which encapsulates the whole frame buffer + quad + shader flow. Exposed quad dimensions and position via setters, allowing you to place the FBO anywhere when it renders. 2016-11-03 04:04:34 +00:00
Richard Davey
6e70669e28 Added getVerticesFromRect so the fbo is calculated from pixel values. 2016-11-03 02:50:52 +00:00
Richard Davey
8603374316 More docs. 2016-11-03 02:07:15 +00:00
Richard Davey
0b070822d3 Updated the FBO quad to use a vec2 for position instead, cutting down on vert data a little. Also removed array length look-ups and hard coded values in. 2016-11-03 01:51:31 +00:00
Richard Davey
9600ed038d Updated destroy method. 2016-11-03 01:49:55 +00:00
Richard Davey
e2b7e54c5f Testing twirl shader :) 2016-11-02 01:47:59 +00:00
Richard Davey
b5faa8843d Finally, FBO for main renderer working! 2016-11-02 01:22:27 +00:00
Richard Davey
4b0c028200 Adding FBO support. 2016-11-02 01:00:56 +00:00
Richard Davey
03b651f79f Loads of tweaks re: Transform inheritance. 2016-11-01 00:31:45 +00:00
Richard Davey
c681abbea8 Removed duplicate flush methods from the batch processors. 2016-10-31 21:46:31 +00:00
Richard Davey
19d9241dc7 Removed un-needed shaders.
Added batch processor switching and tested it.
2016-10-31 21:42:23 +00:00
Richard Davey
7477599005 Refactored ImageBatch into the more accurately named SingleTextureBatch. 2016-10-31 19:44:46 +00:00
photonstorm
5ef7fd3377 Moved flush to BaseBatch. 2016-10-31 17:15:36 +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
3c248d1cb4 Added in the FX Batch processor. 2016-10-30 22:57:29 +00:00
Richard Davey
5ec168a741 Added the multi texture batch processor, and tested it working. 2016-10-30 22:57:19 +00:00
Richard Davey
525c3e1a44 Removed all the redundant methods and added in the new batch processors. 2016-10-30 22:56:06 +00:00
Richard Davey
577b81580a New batch system working. 2016-10-30 14:57:38 +00:00
Richard Davey
7051557e21 Merging the functions into the right classes. Nearly ready to test. 2016-10-29 21:29:16 +01:00
Richard Davey
44f7629cc8 Tidying up the new batch. 2016-10-29 14:41:43 +01:00
Richard Davey
30dea30601 Splitting the batch processors into their own classes. 2016-10-29 13:38:57 +01:00
photonstorm
863efde5ed Getting ready to move the shaders out. 2016-10-28 18:35:23 +01: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
33c618d30e Fixed issue where changing blend mode didn't correctly reset the batch. 2016-10-27 15:14:22 +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
photonstorm
a271a52ec7 Added glLastUsed property to TextureSource. 2016-10-25 13:23:14 +01:00
Richard Davey
120b6eb2bd Blend Modes work. More optimisations in the batch manager. 2016-10-25 03:57:34 +01:00
Richard Davey
dae0b2c124 Fixed Multi Texture support across split texture atlases. 2016-10-25 01:54:49 +01:00
Richard Davey
8ab7dc80dc Sorted out swapping WebGL textures in a non-multi texture environment. 2016-10-25 01:40:16 +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
Richard Davey
7cfe3b3919 Exploring using addVert / addVerts to allow for shadow injection from the Game Objects layer. 2016-10-22 18:02:43 +01:00
photonstorm
4af0fb3247 Added offset vector back in. 2016-10-20 15:01:22 +01:00
photonstorm
ef5e23abad Fixed TI attribute. 2016-10-20 14:33:31 +01:00
Richard Davey
35373da918 Adding texture index 2016-10-20 05:04:06 +01:00
photonstorm
64cd88f7b4 Trying out flash effect. 2016-10-19 17:17:26 +01:00
photonstorm
d19148aec0 Getting to the point where the 'render' call is just array population, no calculation. 2016-10-19 14:31:35 +01:00
photonstorm
079f81a639 Opps - blend mode needed :) 2016-10-19 14:30:33 +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
3d753255e4 Added support for the Background Color component values in the WebGL Sprite Batch shader. 2016-10-19 03:55:28 +01:00
Richard Davey
91ee135208 Fixed tint order and exposed via getters. 2016-10-19 03:10:30 +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
Richard Davey
1aebdb9dd7 Fixed the Batch renderer at last. Just need to add multi-texture support back in. 2016-10-19 01:56:31 +01:00
Richard Davey
238c2fc8aa Trying more things to get it working! 2016-10-19 00:23:40 +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
Richard Davey
271aab1844 Removed the GPU texture handlers out of the Texture Manager, and into the WebGL Renderer. 2016-10-11 23:48:22 +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
0abf9d958d Updated scaleMode global. 2016-10-07 03:22:59 +01:00
Richard Davey
f6047763fa Fixed Graphics rendering. 2016-10-07 02:53:34 +01:00
Richard Davey
39a8d71027 Fixed, and now rendering properly. 2016-10-07 02:31:35 +01:00
Richard Davey
2630a48266 Added TileSprite to the renderer. 2016-10-07 02:09:12 +01:00
Richard Davey
b18bdab447 UID is set by the Renderer now, removing another Phaser global. 2016-10-07 01:33:01 +01:00
Richard Davey
c67904311c Moved default vertex shader to the sprite shader.
Added multi-texture support back in.
2016-10-07 01:12:31 +01:00
Richard Davey
ea9c9ae7b3 Removed gl texture ID. 2016-10-07 00:59:10 +01:00
Richard Davey
b254d085cd All of the WebGL Graphics draw ops have been split out, tidied up and merged. 2016-10-07 00:40:31 +01:00
Richard Davey
97b1ac9d4f Typo fix. 2016-10-06 23:37:44 +01:00
Richard Davey
8a72f0ff35 FilterTexture converted. 2016-10-06 23:36:00 +01:00
Richard Davey
281e9287d1 FilterManager converted. Temp. stencil buffer needs adding. 2016-10-06 23:19:26 +01:00
Richard Davey
caffc9ca5f Added FilterManager and StencilManager to new renderer. 2016-10-06 22:59:42 +01:00
Richard Davey
dc92c92a30 Removed all instances of gl.id. 2016-10-05 01:45:22 +01:00
Richard Davey
a12ba9fa10 Added WebGL Sprite Batch. 2016-10-05 01:40:25 +01:00
Richard Davey
fe92b4e388 WebGL using mixins. 2016-10-05 01:25:06 +01:00
Richard Davey
28eb7a5f40 Adding in more renderer game objects. 2016-10-04 22:36:07 +01:00
photonstorm
482bb96056 Added in SpriteBatch, Graphics and Strip shaders. 2016-10-04 16:51:47 +01:00
photonstorm
03f67a2677 Refactored WebGL renderer working for Sprites and Containers. 2016-10-04 15:39:54 +01:00