Commit graph

2814 commits

Author SHA1 Message Date
Richard Davey
4d872e2e9d RenderTexture.erase has never worked when using the Canvas Renderer and a texture frame, only with Game Objects. It now works with both. Fix #5422 2020-12-03 15:46:26 +00:00
Richard Davey
6bb6ff8ef4 Updated JSDocs to clarify issue. Fix #4692 2020-12-03 15:14:34 +00:00
Richard Davey
38b6d83462 Fixed Canvas Alpha RenderTexture issue. Fix #5426 2020-12-03 14:48:21 +00:00
Richard Davey
8ff62d40af Moved event emitter. Fix #5427 2020-12-03 14:34:32 +00:00
Richard Davey
0d6d7848cd No need for dirty property 2020-12-03 14:31:54 +00:00
Richard Davey
103b91a69d Add attenuation parameter and fixed color divisor 2020-12-03 12:52:36 +00:00
Richard Davey
8174ec2daf Fixed light distance and max test 2020-12-03 11:11:41 +00:00
Richard Davey
732b188691 Removed light pool, used RGB object, much better light culling. 2020-12-02 17:57:12 +00:00
Richard Davey
97fd175e73 Extends Circle, because it is! Removed loads of pointless setters. 2020-12-02 17:56:53 +00:00
Richard Davey
639b9bfc84 Added beginDraw, batchDraw, batchDrawFrame and endDraw methods for full batch control over the drawing. 2020-12-02 16:07:58 +00:00
Richard Davey
35146e72ed Removed Light Layer and moved Point Light to its own Game Object 2020-12-02 13:48:38 +00:00
Richard Davey
375d6fa196 Updated docs 2020-12-02 13:15:27 +00:00
Richard Davey
361704f048 Only reset post pipeline if it has one. Fix #5421 2020-12-02 12:23:59 +00:00
Richard Davey
9f8f76c690 Removed unused property 2020-12-02 12:23:40 +00:00
Richard Davey
1868a749cb Enable Lights Plugin again 2020-12-02 11:11:34 +00:00
Richard Davey
e29626ab2c Testing Light Layer 2020-12-01 17:24:30 +00:00
Richard Davey
ce6a81c97d Updated JSDocs 2020-12-01 17:23:53 +00:00
Richard Davey
c1bf08de70 New Point Light class 2020-12-01 17:23:42 +00:00
Richard Davey
35829bcf0d Added removePostPipeline. Fix #5419 2020-11-30 10:07:41 +00:00
Richard Davey
15b47e6a54 Testing new Light Layer 2020-11-30 09:46:28 +00:00
Rex
cdfee008ec Typo 2020-11-29 20:29:38 +08:00
Richard Davey
41a0c192a4 Fix #5413 2020-11-28 15:42:23 +00:00
Richard Davey
6dd40df318 Update LayerCreator.js 2020-11-27 15:14:10 +00:00
Richard Davey
3ec63c6dec Only remove from displayList if set. Fix #5413 2020-11-27 15:14:04 +00:00
Richard Davey
e96cbde8d6 Added new displayList property and Layer documentation 2020-11-27 11:13:59 +00:00
Richard Davey
aa06070644 Added the new Layer Game Object 2020-11-26 16:21:21 +00:00
Richard Davey
fdae90089c Use the new depthList property 2020-11-26 16:21:09 +00:00
Richard Davey
e5f9066072 GameObjects.Components.Depth.depthList is a new property that all Game Objects that have the Depth Component now have. It contains a reference to the List responsible for managing the depth sorting of the Game Object. This is typically the Scene Display List, but can also be a Layer. It allows the Depth component to queue a depth sort directly on the list it belongs to now, rather than just the Scene. 2020-11-26 16:20:54 +00:00
Richard Davey
a2f0a815d6 Reset textures before draw 2020-11-26 14:20:01 +00:00
Richard Davey
c8cdf9fde2 Fixed Render Texture crop 2020-11-26 11:28:25 +00:00
Richard Davey
0ee1338765 Better post pipeline call (less code) 2020-11-26 09:51:40 +00:00
Richard Davey
09c49ac288 Fixed emitter mask pipeline 2020-11-24 14:52:57 +00:00
Richard Davey
d2e2e86ef1 Updated accessor 2020-11-23 16:22:11 +00:00
Richard Davey
2e4cfde102 Updated post pipeline 2020-11-23 16:18:30 +00:00
Richard Davey
ec5da6930c Added post pipeline support to all Game Objects 2020-11-23 16:17:13 +00:00
Richard Davey
28d925b875 JSDoc fixes 2020-11-23 15:06:45 +00:00
Richard Davey
417f7684c3 More integer to number changes 2020-11-23 10:32:00 +00:00
Richard Davey
3f511a73cd Replace integer[] with number[] 2020-11-23 10:23:10 +00:00
Richard Davey
02c34cd64e Replace integer with number 2020-11-23 10:22:13 +00:00
Richard Davey
5ca5a63038 Testing new Lights 2020-11-23 10:19:31 +00:00
Richard Davey
30c2eb5d0e Ability to link Post Pipeline to owner object 2020-11-20 17:29:42 +00:00
Richard Davey
78b75efb8c JSDoc fix 2020-11-20 16:03:03 +00:00
Richard Davey
df3b7d5f79 JSDoc fixes 2020-11-20 15:47:35 +00:00
Richard Davey
ebf6b254dd Fixed JSDocs 2020-11-20 15:31:43 +00:00
Richard Davey
b64f2cc4d0 Added ability to skip post pipeline per object 2020-11-20 15:18:19 +00:00
Richard Davey
e7b85b08af Fixed batchLight 2020-11-20 13:05:32 +00:00
Richard Davey
c603db23ce Fix docs and lint errors #5374 2020-11-20 11:43:45 +00:00
Richard Davey
5233366190
Merge pull request #5374 from pirateksh/patch-2
Added loadMediaStream method
2020-11-20 11:41:10 +00:00
Richard Davey
401487d4b1
Merge pull request #5367 from rexrainbow/bugfix-text.basicWordWrap
Don't add white space when measure last word of a line
2020-11-20 11:37:21 +00:00
Richard Davey
299e105f6e Update RenderTexture.js 2020-11-20 10:05:33 +00:00
Richard Davey
951b284c6e Fixed RenderTexture.fill 2020-11-20 10:05:19 +00:00
Richard Davey
e2f7ca40b2 Fixed camera zoom and origin. draw and drawFrame work now. 2020-11-19 23:04:25 +00:00
Richard Davey
c33a5598ab Trying to align drawFrame 2020-11-19 18:16:18 +00:00
Richard Davey
500d33f6b9 Set camera zoom 2020-11-19 18:07:33 +00:00
Richard Davey
91924be2ee Update RenderTextureWebGLRenderer.js 2020-11-19 16:40:35 +00:00
Richard Davey
7562683cfb Lots of tiny fixes and updates 2020-11-19 16:40:31 +00:00
Richard Davey
216f74bb58 Use Single Pipeline and force texture refresh 2020-11-19 11:43:55 +00:00
Richard Davey
d848a5e2ba Now using new Render Target. Removed lots of out-dated properties and tidied up methods. 2020-11-19 11:38:09 +00:00
Richard Davey
7ad580dd29 Using new Render Target 2020-11-19 11:37:49 +00:00
Richard Davey
e36a086e5d Updated data types 2020-11-17 16:50:36 +00:00
Richard Davey
00c7b1d79e Destroy on reset! 2020-11-17 16:34:52 +00:00
Richard Davey
782a841eeb Added getPostPipeline method 2020-11-17 16:19:40 +00:00
Richard Davey
0658820b79 Clear post pipelines 2020-11-17 16:19:30 +00:00
Richard Davey
26a1d0185a Update RenderTexture.js 2020-11-17 16:19:18 +00:00
Richard Davey
080677f28c Set on creation, not in the component 2020-11-17 14:08:09 +00:00
Richard Davey
dfabaac634 Allow Rope to have post-pipeline 2020-11-10 16:27:12 +00:00
Richard Davey
cccf9bb163 Fixed Rope 2020-11-10 16:17:28 +00:00
Richard Davey
f02325fff0
Merge pull request #5386 from PhaserEditor2D/patch-1
Updates geom, width and height of the Ellipse GO
2020-11-09 17:03:56 +00:00
Richard Davey
eee3feb667 Pass Game Object to batchQuad 2020-11-09 13:19:31 +00:00
Richard Davey
39b381d6cc Clearer responsibility via method parameters 2020-11-09 11:50:41 +00:00
Phaser Editor 2D
60541e861b
Updates geom, width and height of the Ellipse GO
Updates the `width`, `height`, and geometric position of the Ellipse in the `setSize()` method.

This code shows the wrong positioning of the Ellipse: https://codepen.io/phasereditor2d/pen/jOrvexM

To fix it, uncomment lines `21`, `24`, and `25`.
2020-11-07 11:25:30 -05:00
Richard Davey
06c90137c8 Empty parameter means reset pipeline 2020-11-06 15:35:18 +00:00
Richard Davey
d3c70002ea Removed use of _tempMatrix from all renderers 2020-11-06 09:44:29 +00:00
Richard Davey
19f3ae5a81 Testing RT mini refactor 2020-11-05 18:06:33 +00:00
Richard Davey
2b92e95735 Testing new RT draw 2020-11-05 18:06:23 +00:00
Richard Davey
fc84b19d3d Update MeshWebGLRenderer.js 2020-11-05 13:03:36 +00:00
Richard Davey
c65e516e94 Fixed shaders 2020-11-05 12:58:00 +00:00
Richard Davey
e29fc62a98 Handle pre and post pipelines 2020-11-05 10:19:15 +00:00
Richard Davey
fb47d2f9e8 Added Pipeline component 2020-11-05 10:18:53 +00:00
Richard Davey
a00e169400 Added all the handlers needed for the post pipeline feature 2020-11-04 18:00:50 +00:00
Richard Davey
26421bde82 Removed Graphics.setTexture and related commands as no longer supported 2020-11-03 11:47:42 +00:00
Richard Davey
6af80708d0 Fixed all of the Shape WebGL rendering issues 2020-11-03 11:22:30 +00:00
Richard Davey
e0295e8521 Make use of GetCalcMatrix and remove texture related stuff 2020-11-02 22:40:12 +00:00
Richard Davey
881019e55d No longer requires temp matrices 2020-11-02 22:39:42 +00:00
Richard Davey
47ec3d33c7 Remove texture setters 2020-11-02 16:20:22 +00:00
Richard Davey
bf7e7f352a Container can how set a pipeline that overrides all children 2020-10-29 17:22:16 +00:00
Richard Davey
ce69c22e86 Added new private forcePipeline property and pipeline methods 2020-10-29 17:22:04 +00:00
Richard Davey
60c834e2c8 Use the new Graphics Pipeline 2020-10-28 17:39:06 +00:00
Richard Davey
4ba2b0eb7b All swapped to using renderer matrices to make pipelines smaller 2020-10-28 16:52:59 +00:00
Richard Davey
4b3cc7145e Testing new pipelineData object. 2020-10-27 18:06:53 +00:00
Richard Davey
ba9b837739 You can now pass a pipeline instance to the GameObject.setPipeline method, as well as a string. 2020-10-27 14:05:37 +00:00
Richard Davey
d670edd708 No need to reference via game 2020-10-27 13:55:27 +00:00
Richard Davey
371425a5d2 Use new pipeline resize method 2020-10-26 14:04:55 +00:00
Richard Davey
af01b23696 JSDocs fix 2020-10-26 14:03:35 +00:00
Kshitiz Srivastava
4941ca3b64
Added loadMediaStream method 2020-10-25 01:24:55 +05:30
Richard Davey
6ed84e2f34 Added Mesh.ignoreDirtyCache flag. 2020-10-21 10:15:12 +01:00
Rex
34635c582e Don't add white space when measure last word 2020-10-20 14:52:20 +08:00
Richard Davey
8bb1151aca Fixed RenderTexture.fill rgb order. Fix #5364 2020-10-20 00:50:49 +01:00
Richard Davey
48d9eb6321 The GameObjects.Graphics.fillGradientStyle method can now accept a different alpha value for each of the fill colors. The default is still 1. If you only provide a single alpha, it'll be used for all colors. Fix #5044 2020-10-16 18:08:31 +01:00
Richard Davey
85a284d095 Particles.EmitterOp now cleanly separates between the different types of property configuration options. start | end will now ease between the two values, min | max will pick a random value between them and random: [] will pick a random element. They no longer get mixed together. Fix #3608 2020-10-16 17:52:59 +01:00
Richard Davey
1aaecbe703 Particles.EmitterOp.setMethods will now reset both onEmit and onUpdate to their default values. This allows you to reconfigure an emitter op with a new type of value and not have it stuck on the previous one. Fix #3663 2020-10-16 17:32:22 +01:00
Richard Davey
ae6112297a Default tint value should now be 0xffffff. Fix #5358 2020-10-15 12:19:17 +01:00
Richard Davey
0f87981f47 Improved docs 2020-10-15 11:07:22 +01:00
Richard Davey
f17743dadf Changed updateProjectionMatrix to setPerspective and added setOrtho counterpart 2020-10-14 16:32:29 +01:00
Richard Davey
cc167e158f Much better effect from the light shader 2020-10-14 11:57:58 +01:00
Richard Davey
b1a5ce7f55 Testing new batched lights 2020-10-13 18:17:30 +01:00
Richard Davey
61c0e1c499 Moved Text out of 'static' folder, as it doesn't need to be in there 2020-10-13 11:04:46 +01:00
Richard Davey
8708255948 Removed Layer3D Game Object and old MeshPipeline 2020-10-13 10:56:21 +01:00
Richard Davey
9d23735a23 Lint fix 2020-10-13 10:51:17 +01:00
Richard Davey
19f581327e Removed Animation component because it would reset the UV coords every frame, so makes things overly complex 2020-10-13 10:50:42 +01:00
Richard Davey
caa69b673d Better debug rendering 2020-10-09 14:57:07 +01:00
Richard Davey
65e4a7734a Updated docs 2020-10-09 12:07:37 +01:00
Richard Davey
abdd62dd57 Will no longer render Faces it cannot see in the Camera 2020-10-09 11:54:37 +01:00
Richard Davey
88feadb577 Fixed JSDocs, added totalRendered property. 2020-10-09 11:54:19 +01:00
Richard Davey
bf8cd60aab Added ability to rotate data on import 2020-10-08 15:53:13 +01:00
Richard Davey
af0a4dbd37 Updated Mesh to include new functions and docs 2020-10-08 13:24:23 +01:00
Richard Davey
e3f7048e22 Removed moved defs 2020-10-08 13:23:44 +01:00
Richard Davey
2e988801ce Made obj material parsing external 2020-10-08 10:45:03 +01:00
Richard Davey
324fa6a3b2 Removed MeshCamera, updated Mesh to focus on ortho projections 2020-10-07 22:27:04 +01:00
Richard Davey
8f67ffca5f Starting to add materials 2020-10-07 18:06:33 +01:00
Richard Davey
90824e1485 Removed normalMatrix 2020-10-07 18:06:22 +01:00
Richard Davey
dda4431366 Merged the Layer3D Game Object and pipeline back in for now 2020-10-07 17:44:36 +01:00
Richard Davey
75fd64ace7 Modified cam layout 2020-10-07 13:16:24 +01:00
Richard Davey
f6a0a8d96b Transform based on z value 2020-10-07 13:16:10 +01:00
Richard Davey
55d7b36217 Pass in the z value 2020-10-07 13:16:01 +01:00
Richard Davey
8ff78ef08a Fixed addVerts face addition 2020-10-07 12:45:31 +01:00
Richard Davey
caf545d042 Added position, rotation and scale vectors, caching and removed old methods 2020-10-07 12:04:46 +01:00
Richard Davey
7a0b056fef Trying out MeshCamera 2020-10-06 18:05:14 +01:00
Richard Davey
4b7c344497 Added parseOBJMaterial method and set default texture to __WHITE 2020-10-06 16:00:22 +01:00
Richard Davey
dff414fe82 Added Grid Config typedefs 2020-10-06 13:47:49 +01:00
Richard Davey
1f1edd3742 addGrid now takes config object and works with texture frames, with or without repeating 2020-10-06 13:42:44 +01:00
Richard Davey
440c33deb8 Use config object 2020-10-06 11:11:28 +01:00
Richard Davey
7287a760ae Added ParseOBJ type defs 2020-10-06 10:38:21 +01:00
Richard Davey
816c45937d Removed the Quad Game Object. Mesh can do it better now. 2020-10-06 10:16:46 +01:00
Richard Davey
a0020b2ad4 Fixed paths and addGrid 2020-10-05 17:40:42 +01:00
Richard Davey
b774df9426 More documentation 2020-10-05 17:25:24 +01:00
Richard Davey
57974c120a Updated docs 2020-10-05 17:12:18 +01:00
Richard Davey
7aaf77a2c6 Merged the Mesh Game Object back in 2020-10-05 16:52:01 +01:00
Richard Davey
8091f09c10 Don't set OutlineStyle if undefined 2020-10-05 13:53:11 +01:00
Richard Davey
2b99623cdc Group now extends EventEmitter, allowing you to emit custom events from within a Group. 2020-10-03 10:05:38 +01:00
Patrick Sletvold
c1d63d32dd
Add Config typedefs for a bunch of GO Creators 2020-10-03 10:40:24 +02:00
Richard Davey
3baecb19d4 Moved old mesh pipeline and code into own folder 2020-10-01 17:56:49 +01:00
Richard Davey
1907bda5ee Update GameObjectFactory.js 2020-09-30 16:30:12 +01:00
Richard Davey
8823f7f0e4 Removed Layer3D and Quad Game Objects 2020-09-30 11:03:19 +01:00
Richard Davey
0e72b3d3a0 Container doesn't need to be on the updateList, so remove the handler. 2020-09-30 09:20:16 +01:00
Richard Davey
24de03ca96 Added missing ADDED_TO_SCENE handlers 2020-09-29 20:14:30 +01:00
Richard Davey
12c8ddfd05 Use getXRound 2020-09-29 18:05:39 +01:00
Richard Davey
9619995527 Add to UpdateList if not on Display List 2020-09-29 18:05:29 +01:00
Richard Davey
8119ce7da1 Fixed use of old camera private properties 2020-09-29 16:44:11 +01:00
Richard Davey
83542ff51d
Merge pull request #5330 from somnolik/fix-render-texture-group
Fix drawing Group to RenderTexture
2020-09-29 12:22:07 +01:00
Richard Davey
f9803774dd The Line Game Object will now default its width and height to 1, rather than zero. This allows you to give Line objects a physics body (although you will still need to re-adjust the center of the body manually). Fix #4596 2020-09-28 17:00:15 +01:00
Stefan Karner
f4b2b34535 Fix drawing Group to RenderTexture
Group children (generic GameObjects) expect a 'camera' argument
in their 'willRender' function
2020-09-26 10:25:22 +02:00
Patrick Sletvold
79114a00e5
Add return type for ParseRetroFont 2020-09-25 18:26:44 +02:00
Richard Davey
e004fa47fc Creating a Bitmap Mask from a texture atlas that was then used to mask another Game Object also using that same texture atlas would throw the error GL_INVALID_OPERATION : glDrawArrays: Source and destination textures of the draw are the same.. It now renders as expected. Fix #4675 2020-09-23 18:10:12 +01:00
Richard Davey
c6f533b872 Fixed legacy interpolation parameters 2020-09-23 17:55:29 +01:00
Richard Davey
212e7aa301 The Shape class now includes the ComputedSize component properties and methods directly in the class, rather than applying as a mixin. setSize is now flagged as being private, because it shouldn't be used on Shape classes, which was leading to confusion as it appeared in the public-facing API. Fix #4811 2020-09-23 12:46:55 +01:00
Richard Davey
f16e1c09f3 Lint fix 2020-09-23 12:39:21 +01:00
Richard Davey
e7926674b8 The Graphics WebGL Renderer will now default to pathOpen = true. This fixes issues under WebGL where, for example, adding an arc and calling strokePath, without first calling beginPath will no longer cause rendering artefacts when WebGL tries to close the path with a single tri. 2020-09-23 12:34:20 +01:00
Richard Davey
559127a53f Graphics.strokeRoundedRect now issues moveTo commands as part of the drawing sequence, preventing issues under WebGL where on older Android devices it would project additional vertices into the display. Fix #3955 2020-09-23 12:34:06 +01:00
Richard Davey
b86d982c00 The ParticleManagerCanvasRenderer now calculates its transform matrix differently, splitting out the parent matrix and factoring in the follow offsets separately. It also uses setToContext internally. This fixes numerous issues with particle emitters being incorrectly offset when added to Containers, or having the Camera zoomed, running under Canvas. Fix #4908 #4531 #4131 2020-09-23 12:06:29 +01:00
Richard Davey
a459ec090f Fixed lint issue 2020-09-23 11:50:07 +01:00
Richard Davey
fb849ae0dc The ParticleManagerWebGLRenderer now calculates its transform matrix differently, splitting out the parent matrix and factoring in follow offsets separately. This fixes numerous issues with particle emitters being incorrectly offset when added to Containers. Fix #5319 #5195 #4739 #4691 2020-09-23 11:50:00 +01:00
Richard Davey
d5de353890 You can now use setMaxWidth on DynamicBitmapText, which wasn't previously possible. Fix #4997 2020-09-22 16:52:36 +01:00
Richard Davey
6bf36083a8 Added setMaxWidth docs. Fix #4997 2020-09-22 16:48:38 +01:00
Richard Davey
5a6dec237c Fixed RetroFont Parser. Fix #5310 2020-09-22 16:47:05 +01:00
Richard Davey
4fd46f4d1f Fixed DynamicBitmapText WebGL Renderer. Fix #5303 2020-09-22 16:38:17 +01:00
Richard Davey
b317f89404 Renderer updates the camera 2020-09-22 15:25:09 +01:00
Richard Davey
674966280e
Merge pull request #5320 from vforsh/master
Add reserve property to particle emitter config
2020-09-22 15:24:16 +01:00
Richard Davey
6ff21af807 Added start of controls 2020-09-22 12:48:32 +01:00
Richard Davey
6cf95f3548 Updated missing docs 2020-09-22 12:48:15 +01:00
Richard Davey
06b3a01d87 Added layer property 2020-09-22 12:48:03 +01:00
Richard Davey
183e68580f Fixed dirty flag reset 2020-09-22 11:45:49 +01:00
Richard Davey
9ec300d618 Updated JSDocs 2020-09-22 11:12:40 +01:00
Richard Davey
820ea7799c Completed JSDocs 2020-09-22 11:12:32 +01:00
Richard Davey
248d2352b6 Update the camera if dirty 2020-09-22 10:59:36 +01:00
Richard Davey
d08a6c657c Added all documentation and dirty flag handling 2020-09-22 10:59:28 +01:00
Richard Davey
4945fc95e1 Not yet fixed, but no longer crashes build 2020-09-21 18:25:02 +01:00
Richard Davey
333945a89e Remove Mesh Game Object and add Layer3D 2020-09-21 18:24:38 +01:00
Richard Davey
33734309f1 Clean the mesh after rendering 2020-09-21 15:57:21 +01:00
Richard Davey
989e3e6e07 Swapped to use RGB objects 2020-09-21 15:57:11 +01:00
Richard Davey
82c8ada236 Added fog, dirty refresh and preUpdate handler 2020-09-21 15:56:58 +01:00
Richard Davey
27eafe3661 New Face and Vertex typedefs 2020-09-21 15:56:21 +01:00
Vladislav Forsh
4d7301a4be Improve types for particle emitter deathZone and emitZone 2020-09-21 12:38:29 +03:00
Vladislav Forsh
530c7a3d92 Add reserve property to particle emitter config 2020-09-21 12:06:49 +03:00
Richard Davey
99953b94b6
Merge pull request #5311 from vforsh/master
Add ability to use custom easing function(s) with particle emitters
2020-09-21 09:40:26 +01:00
Richard Davey
48272312ed
Merge pull request #5318 from samme/fix/getMatching
Fix Group#getMatching()
2020-09-21 09:34:03 +01:00
Richard Davey
78c1eb7934 Removed debug, modified signatuers, added fog 2020-09-21 00:17:58 +01:00
samme
d4059c8f6e Fix Group#getMatching 2020-09-19 10:10:25 -07:00
Richard Davey
374cc84be8 Now the pipeline does it all 2020-09-18 17:52:41 +01:00
Richard Davey
561a1b54a2 Handle vertex normals too 2020-09-18 17:52:30 +01:00
Richard Davey
640ce49d93 Update MeshCamera.js 2020-09-18 17:52:20 +01:00
Richard Davey
6e62ada207 Created new MeshLight class 2020-09-18 17:52:15 +01:00
Richard Davey
5b8e490c7e Flush during render so we can have models with more vertices than the batch allows 2020-09-17 18:08:25 +01:00
Richard Davey
5ff9894925 MeshCamera now supports orbit and pan modes 2020-09-17 18:08:07 +01:00
Richard Davey
6ce58ed73b Let them define the orientation 2020-09-17 10:08:15 +01:00
Richard Davey
c5412df09e Fix docs 2020-09-16 17:48:56 +01:00
Richard Davey
8085952507 Expose MeshCamera 2020-09-16 17:35:54 +01:00
Richard Davey
c306229478 Final JSDocs 2020-09-16 17:33:17 +01:00
Richard Davey
1d0b5cc6a9 Added Size component 2020-09-16 17:15:37 +01:00
Richard Davey
a38166ce2b Now allows a texture per model, not mesh 2020-09-16 16:39:06 +01:00
Richard Davey
851775ae19 New MeshCamera class 2020-09-16 16:38:39 +01:00
Richard Davey
8ff008b740 Removed un-used components, refactored method names and added MeshCamera 2020-09-16 16:38:32 +01:00
Richard Davey
da6a300474 Iterates and renders the new models array 2020-09-16 13:51:39 +01:00
Richard Davey
4f7442ee96 Moving all dependencies to the Model object 2020-09-16 13:51:30 +01:00
Richard Davey
a96d380933 Created new Geom.Mesh namespace for all of the Mesh related functions and classes 2020-09-16 13:50:36 +01:00
Vladislav Forsh
8fd4754b03 Add ability to use custom easing function(s) with particle emitters 2020-09-16 12:43:38 +03:00
Richard Davey
45412157c2 Added JSDocs 2020-09-16 09:50:24 +01:00
Richard Davey
b74928b2f8 Added hideCCW, addOBJ, addModel, sortByDepth, rotateX, rotateY, rotateZ, depthSort, addVertex and addFace methods. 2020-09-15 18:09:19 +01:00
Richard Davey
431eb69b42 Much cleaner rendering function, skipping invalid faces 2020-09-15 18:07:51 +01:00
Richard Davey
3e133c900a New method signature order 2020-09-15 18:07:24 +01:00
Richard Davey
a2a199818e Added contains and isCounterClockwise methods and depth property 2020-09-15 18:07:14 +01:00
Richard Davey
229d27dc9e Updated docs and added load method 2020-09-15 18:06:48 +01:00
Richard Davey
d8a8aa8448 Added clearVertices and renamed to addVertices so you can append on more verts post-creation 2020-09-15 11:57:44 +01:00
Richard Davey
b763fa0f18 The Mesh now renders by iterating through the Faces array, not the vertices. This allows you to use Array methods such as BringToTop to reposition a Face, thus changing the drawing order without having to repopulate all of the vertices. 2020-09-15 11:57:22 +01:00
Richard Davey
92982d810b Added ability to get InCenter. translate and rotate Face 2020-09-14 17:35:06 +01:00
Richard Davey
52d5b00fe5 Added setPosition and translate methods 2020-09-14 17:34:47 +01:00
Richard Davey
6a966e3f3b Removed interpolationPercentage parameter from all render methods, as it has never been used. 2020-09-14 15:33:58 +01:00
Richard Davey
83f8f007d1 Now uses GetCalcMatrix 2020-09-14 15:22:16 +01:00
Richard Davey
1057ead114 Dump all of the old mega arrays and replace with an array of Vertex instances. 2020-09-14 15:09:34 +01:00
Richard Davey
36a33745b6 Expose Vertex and Face 2020-09-14 15:09:12 +01:00
Richard Davey
6a3ce21702 GameObject.Face is a new micro class that consists of references to the three Vertex instances that construct the single Face. 2020-09-14 15:08:36 +01:00
Richard Davey
8fc969088c GameObject.Vertex is a new micro class that encapsulates all of the data required for a single vertex, such as position, uv, color and alpha. This class is now created internally by the Mesh Game Object. 2020-09-14 15:08:25 +01:00
Richard Davey
87c8e75ece Updated JSDocs 2020-09-14 15:02:21 +01:00
Richard Davey
951457c881 As a result of the change to the shader, all uses of the WebGL Util function getTintAppendFloatAlphaAndSwap have been replaced with getTintAppendFloatAlpha instead. 2020-09-14 15:02:13 +01:00
Richard Davey
194257d199 Create GetCalcMatrixResults.js 2020-09-14 15:01:45 +01:00
Richard Davey
8d25510b61 GameObjects.GetCalcMatrix is a new function that is used to calculate the transformed Game Object matrix, based on the given Game Object, Camera and Parent. This function is now used by the following Game Objects: BitmapText (Static and Dynamic), Graphics, Mesh, Rope, Shader, Arc, Curve, Ellipse, Grid, IsoBox, IsoTriangle, Line, Polygon, Rectangle, Star and Triangle. This dramatically reduces the amount of duplicate code across the API. 2020-09-14 15:01:40 +01:00
Richard Davey
81b63cdf20 The Rope.tintFill property is now a boolean, not an integer, and can no longer take 2 as a value for a complete fill. Instead, you should provide a solid color texture with no alpha. 2020-09-14 11:12:41 +01:00
Richard Davey
e5ce83aebd New direct tint value 2020-09-14 11:06:16 +01:00
Richard Davey
4ade25fc79 No longer read private values for tint
The `Multi Pipeline`, `Bitmap Text`, `Render Texture`, `Text`, `TileSprite` and `Camera` now all read the tint values from the public properties instead of the private `_tintTL` etc ones. They also now set the `tintEffect` value directly from the `tintFill` property, removing another conditional check.
2020-09-14 11:05:09 +01:00
Richard Davey
6d09f1fe40 Refactored Tint component
* `Tint.tintTopLeft` is now a normal property in RGB order, not a setter, and no longer passes through the `GetColorFromValue` function. This directly replaces the private property `_tintTL` which has now been removed.
* `Tint.tintTopRight` is now a normal property in RGB order, not a setter, and no longer passes through the `GetColorFromValue` function. This directly replaces the private property `_tintTR` which has now been removed.
* `Tint.tintBottomLeft` is now a normal property in RGB order, not a setter, and no longer passes through the `GetColorFromValue` function. This directly replaces the private property `_tintBL` which has now been removed.
* `Tint.tintBottomRight` is now a normal property in RGB order, not a setter, and no longer passes through the `GetColorFromValue` function. This directly replaces the private property `_tintBR` which has now been removed.
* The property `Tint._isTinted` has been removed as it's no longer required.
2020-09-14 10:59:32 +01:00
Richard Davey
25b5c2d1d1 Loads of new Mesh updates
* `Mesh.setVertices` is a new method that allows you to set the verts of a Mesh Game Object from the given parameters. This allows you to modify a mesh post-creation, or populate it with data at a later stage.
* The Mesh constructor signature has changed to `scene, x, y, vertices, uvs, indicies, colors, alphas, texture, frame`, where `indicies` is the new parameter added to the list. It allows you to provide indexed vertex data to create the Mesh from, where the `indicies` array holds the vertex index information. The final list of vertices is built from this index along with the provided vertices and uvs arrays.
* You can now supply just a single numerical value as the `color` parameter in the constructor, factory method and `setVertices` method. If a number, instead of an array, it will be used as the color for all vertices created.
* You can now supply just a single numerical value as the `alpha` parameter in the constructor, factory method and `setVertices` method. If a number, instead of an array, it will be used as the alpha for all vertices created.
* The `Mesh` Game Object now extends the `SingleAlpha` component and the alpha value is factored into the final alpha value per vertex during rendering. This means you can now set the whole alpha across the Mesh using the standard `setAlpha` methods. But, if you wish to, you can still control the alpha on a per-vertex basis as well.
* The `Mesh` Game Object now has the Animation State Component. This allows you to create and play animations across the texture of a Mesh, something that previously wasn't possible. As a result, the Mesh now adds itself to the Update List when added to a Scene.
* `Mesh.setDebug` is a new method that allows you to render a debug visualisation of the Mesh vertices to a Graphics Game Object. You can provide your own Graphics instance and optionally callback that is invoked during rendering. This allows you to easily visualise the vertices of your Mesh to help debug UV mapping.
* `Mesh.debugGraphic` is a new property that holds the debug Graphics instance reference.
* `Mesh.debugCallback` is a new property that holds the debug render callback.
* `Mesh.renderDebugVerts` is a new method that acts as the default render callback for `setDebug` if none is provided.
* `Mesh.preDestroy` is a new method that will clean-up the Mesh arrays and debug references on destruction.
2020-09-13 23:11:04 +01:00
Richard Davey
3fd52ecdd3 Added debug draw 2020-09-13 17:16:17 +01:00
Richard Davey
c76b084f2e Merge branch 'master' of https://github.com/photonstorm/phaser 2020-09-13 15:17:13 +01:00
Richard Davey
cd0a27acfa Fix #5308 2020-09-13 15:17:07 +01:00
Rex
0cb806c11e Fix add.existing bug
Add game object to updateList if it dose not add to displayList.
( Group game object dose not have `renderCanvas` or `renderWebGL` method)
2020-09-13 17:05:55 +08:00
Richard Davey
d6f5aabb7e The TextStyle.resolution property is no longer read from the Game Config. You can still set it via the Text Style config to a value other than 1, but it will default to this now. 2020-09-12 11:55:06 +01:00
Richard Davey
0acdf4373f Formatting update 2020-09-12 11:53:36 +01:00
Richard Davey
5d4fe0a466 Fixed a few linting errors 2020-09-12 10:34:57 +01:00
Richard Davey
36cf9c456a
Merge pull request #5270 from rexrainbow/text-measureText
Get ascent and descent from context.measureText method
2020-09-12 10:30:19 +01:00
samme
ad0c5ad5db Docs: since 2020-09-11 10:01:43 -07:00
samme
f05129f30c Add Transform#copyPosition
Needs JSDoc types for Vector3Like, Vector4Like
2020-09-11 09:44:31 -07:00
Richard Davey
00b799db23 Use Event const, not string. 2020-09-11 12:23:33 +01:00
Richard Davey
3969d6e45a Updated JSDocs to cover situation in #3858 2020-09-11 10:08:22 +01:00
Rex
f513f5bf31 Remove duplicated code
Adding game object  to UpdateList has been invoked in `displayList.add` by new ADDED_TO_SCENE event already.
2020-09-10 23:44:21 +08:00
Richard Davey
e450bf2f1f Swap to using constants for pipeline names 2020-09-09 13:05:18 +01:00
Richard Davey
d198818d80 Game Objects now call the new Pipeline Manager methods directly 2020-09-09 13:05:18 +01:00
Richard Davey
4ea080e8a8 JSDoc fix 2020-09-09 13:05:17 +01:00
Richard Davey
bd56b0bd59 Updated JSDocs 2020-09-08 12:17:45 +01:00
Richard Davey
cdd612a273 AnimationState has moved namespace to keep things logically together 2020-09-08 09:31:59 +01:00
Richard Davey
98dc69ed23 Added in support for blending animations with addMix, getMix and removeMix. 2020-09-07 15:33:57 +01:00
Richard Davey
438fe3c0d1 No Update unless playing 2020-09-07 14:50:33 +01:00
Rex
a9e6604eb2 Support IE
IE and Firefox for Android do not have actualBoundingBoxAscent and actualBoundingBoxDescent properties.
Use origin solution to get ascent and descent.
2020-09-07 21:36:27 +08:00
Richard Davey
94298efc4d Because do/while loops are quite dangerous 2020-09-07 11:54:08 +01:00
Richard Davey
ec06e79b26 Catch stops 2020-09-07 11:52:37 +01:00
Richard Davey
2b374c7e14 AnimationState.skipMissedFrames is now used when playing an animation, allowing you to create animations that run at frame rates far exceeding the refresh rate, or that will update to the correct frame should the game lag. Close #4232 2020-09-07 11:32:55 +01:00
Richard Davey
24beb01963 Update AnimationState.js 2020-09-07 10:26:16 +01:00
Richard Davey
ad4f0ce0c4 Updated docs 2020-09-05 12:01:11 +01:00
Richard Davey
2cabbbd504 Renamed to AnimationState for clarity. 2020-09-05 11:45:00 +01:00
Richard Davey
b0872c188a The Component.Animation.updateFrame method has now been removed. Everything is handled by setCurrentFrame instead, which removes one extra step out of the update process. 2020-09-05 11:12:52 +01:00
Richard Davey
af0f207cbb Update BuildGameObjectAnimation.js 2020-09-04 17:16:51 +01:00
Richard Davey
a2d395661c GameObjects.Shape.Grid would render a white fill even if you passed undefined as the fill color in the constructor. It now doesn't render cells if no fill color is given. 2020-09-04 15:29:22 +01:00
Richard Davey
89332aad5f You can now create Animations directly on Sprite
* `Component.Animation.create` is a new method that allows you to create animations directly on a Sprite. These are not global and never enter the Animation Manager, instead risiding within the Sprite itself. This allows you to use the same keys across both local and global animations and set-up Sprite specific local animations.
* All playback methods: `play`, `playReverse`, `playAfterDelay` and `playAfterRepeat` will now check to see if the given animation key exists locally on the Sprite first. If it does, it's used, otherwise it then checks the global Animation Manager for the key instead.
* `Component.Animation.remove` is a new method that will remove a locally stored Animation instance from a Sprite.
* `Component.Animation.get` is a new method that will return a locally stored Animation instance from the Sprite.
* `Component.Animation.exists` is a new method that will check if a locally stored Animation exists on the Sprite.
* The internal `Component.Animation.remove` method has been renamed to `globalRemove`.
* `Component.Animation.textureManager` is a new property that references the global Texture Manager.
* `Component.Animation.anims` is a new property that contains locally created Animations in a Custom Map.
2020-09-04 14:03:57 +01:00
Richard Davey
cee9ca00eb Improved docs 2020-09-04 13:58:34 +01:00
Richard Davey
cebd1d0101 Tidy up order 2020-09-04 11:52:19 +01:00
Richard Davey
858ae68841 Removed startFrame, chain can take arrays, delayedPlay rename, playAfterRepeat method and playAfterDelay method. 2020-09-04 11:49:16 +01:00
Richard Davey
afef6da59c Exposed all of the new animation methods on a Sprite level 2020-09-04 11:48:17 +01:00
Richard Davey
1515357039 Lots of updates (see full description)
* `Component.Animation.timeScale` is a new public property that replaces the old private `_timeScale` property.
* `Component.Animation.delay` is a new public property that replaces the old private `_delay` property.
* `Component.Animation.repeat` is a new public property that replaces the old private `_repeat` property.
* `Component.Animation.repeatDelay` is a new public property that replaces the old private `_repeatDelay` property.
* `Component.Animation.yoyo` is a new public property that replaces the old private `_yoyo` property.
* `Component.Animation.inReverse` is a new public property that replaces the old private `_reverse` property.
* `Component.Animation.startAnimation` is a new public method that replaces the old private `_startAnimation` method.
* The `Component.Animation.getProgress` method has been fixed so it will return correctly if the animation is playing in reverse.
* The `Component.Animation.remove` method will now always be called when an animation is removed, not just once.
* The `Component.Animation.getRepeat` method has now been removed. You can get the value from the `repeat` property.
* The `Component.Animation.setRepeatDelay` method has now been removed. You can set the value using the `repeatDelay` config property, or changing it at run-time.
* `Component.Animation.complete` is a new method that handles the completion in animation playback.
* The `Component.Animation.setTimeScale` method has now been removed. You can set the value using the `timeScale` config property, or changing it at run-time.
* The `Component.Animation.getTimeScale` method has now been removed. You can read the value using the `timeScale` property.
* The `Component.Animation.getTotalFrames` method has been fixed and won't error if called when no animation is loaded.
* The `Component.Animation.setYoyo` method has now been removed. You can set the value using the `yoyo` config property, or changing it at run-time.
* The `Component.Animation.getYoyo` method has now been removed. You can read the value using the `yoyo` property.
2020-09-03 17:56:22 +01:00
Richard Davey
b4b5338f28 Added playReverse, delayedPlay and stop methods and better docs. 2020-09-03 17:38:36 +01:00
Richard Davey
33cc87121c The BuildGameObjectAnimation function now uses the PlayAnimationConfig object to set the values. 2020-09-03 17:37:21 +01:00
Richard Davey
b9e5f3e9bc GroupCreateConfig, which is used when calling Group.createMultiple or Group.createFromConfig, can now accept the following new properties: setOrigin: { x, y, stepX, stepY } which are applied to the items created by the Group. 2020-09-03 17:36:05 +01:00
Richard Davey
070fc70fe7 Lint fix 2020-09-02 18:07:21 +01:00
Richard Davey
e01f310d16 Added new properties, support for config playback and better delayed handling 2020-09-02 17:56:09 +01:00
Richard Davey
90fbb0f13d Updated jsdocs for play to show it can take the new config 2020-09-02 17:41:43 +01:00
Richard Davey
ace0ee7bab Fixed JSDoc event names 2020-09-02 12:34:58 +01:00
Richard Davey
8f8a90bedd Utils.Array.StableSort has been recoded. It's now based on Two-Screens stable sort 0.1.8 and has been updated to fit into Phaser better and no longer create any window bound objects. The inplace function has been removed, just call StableSort(array) directly now. All classes that used StableSort.inplace have been updated to call it directly. 2020-09-02 12:24:27 +01:00
Richard Davey
d2cc809fdb Exported functions to namespace 2020-09-01 18:56:01 +01:00
Richard Davey
da3f9b22c3 Exposed on the main API namespace 2020-09-01 18:38:57 +01:00
Richard Davey
302a49863b Improved jsdocs 2020-09-01 18:38:44 +01:00
Richard Davey
5b96ade1c7 Types.GameObjects.Text.GetTextSizeObject 2020-09-01 18:38:35 +01:00
Richard Davey
18cdb5e618 The Animation.play and playReverse methods have a new optional parameter timeScale. This allows you to set the Animations time scale as you're actually playing it, rather than having to chain two calls together. Close #3963 2020-09-01 17:00:16 +01:00
Richard Davey
9451ac0285 Group.getMatching is a new method that will return any members of the Group that match the given criteria, such as getMatching('visible', true) 2020-08-29 11:00:55 +01:00
Richard Davey
0bbe67dafd When using the GameObjectCreator for Containers you can now specify the children property in the configuration object. 2020-08-25 15:51:11 +01:00
Richard Davey
7e572c3577 Improves JSDocs 2020-08-25 09:54:09 +01:00
Richard Davey
157be83f7c The Container will now test to see if any Game Object added to it is already on the display list, or not, and emit its ADDED and REMOVED events accordingly. Fix #5267 #3876 2020-08-24 19:26:19 +01:00
Richard Davey
3bd91ea3de Update ParticleManagerCreator.js 2020-08-24 19:24:11 +01:00
Richard Davey
a9072cadf2 Sprite, Rope, ParticleEmitterManager, Extern and DOMElement now all override the addedToScene and removedFromScene callbacks to handle further set-up tasks. 2020-08-24 19:24:02 +01:00
Richard Davey
f4259deb37 DOMElementFactory, ExternFactory, ParticleManagerFactor, RopeFactory and SpriteFactory all no longer add the objects to the Update List, this is now handled by the ADDED events instead. 2020-08-24 19:22:58 +01:00
Richard Davey
7b83d31cae The Update List now uses the new checkQueue property to ensure no duplicate objects are on the active list. 2020-08-24 19:21:35 +01:00
Richard Davey
19c4980c5b GameObjectFactory.events is a new property that references the Scene's Event Emitter. This is now used internally. 2020-08-24 19:20:20 +01:00
Richard Davey
0b9dd4aae7 GameObjectCreator.events is a new property that references the Scene's Event Emitter. This is now used internally. 2020-08-24 19:19:19 +01:00
Richard Davey
671c92e450 Added addedToScene and removedFromScene methods
* `GameObject.addedToScene` is a new method that custom Game Objects can use to perform additional set-up when a Game Object is added to a Scene. For example, Sprite uses this to add itself to the Update List.
* `GameObject.removedFromScene` is a new method that custom Game Objects can use to perform additional tear-down when a Game Object is removed from a Scene. For example, Sprite uses this to remove themselves from the Update List.
* Game Objects no longer automatically remove themselves from the Update List during `preDestroy`. This should be handled directly in the `removedFromScene` method now.
2020-08-24 19:18:29 +01:00
Richard Davey
bc93416ec7 Added events property and new add and remove callbacks
* `DisplayList.events` is a new property that references the Scene's Event Emitter. This is now used internally.
* `DisplayList.addChildCallback` is a new method that overrides the List callback and fires the new ADDED events.
* `DisplayList.removeChildCallback` is a new method that overrides the List callback and fires the new REMOVED events.
2020-08-24 19:15:53 +01:00
Richard Davey
ae4ed0ac54 Expose the new events 2020-08-24 19:13:18 +01:00
Richard Davey
98cd70cd6c GameObjects.Events.REMOVED_FROM_SCENE is a new event, emitted by a Game Object, when it is removed from a Scene, or a Container that is part of the Scene. 2020-08-24 19:11:22 +01:00
Richard Davey
ef91518da5 GameObjects.Events.ADDED_TO_SCENE is a new event, emitted by a Game Object, when it is added to a Scene, or a Container that is part of the Scene. 2020-08-24 19:10:50 +01:00
Richard Davey
1766f66984 Update JSDocs 2020-08-24 14:58:24 +01:00
Richard Davey
0dd07333af Updated to use MultiPipeline 2020-08-21 16:14:59 +01:00
Rex
29e317db39 Get ascent and descent from context.measureText method
Get ascent and descent from context.measureText method instead of scanning image data.
2020-08-21 10:42:24 +08:00
Richard Davey
ed33253fb1
Merge pull request #5235 from mk360/text-padding
[types] allow Text#setPadding to receive an object
2020-08-20 10:04:35 +01:00
Richard Davey
c98a43c9d4
Merge pull request #5258 from khasanovbi/font
Allow to pass font in TextStyle
2020-08-20 10:03:02 +01:00
Richard Davey
ab605eed78 Remove false import 2020-08-19 13:19:07 +01:00
Richard Davey
b1b8a74cf9 RenderTexture.fill would fail to fill the correct area under WebGL if the RenderTexture wasn't the same size as the Canvas. It now fills the given region properly. 2020-08-19 13:14:36 +01:00
mk360
748e699d43 update setPadding jsdoc 2020-08-10 08:21:26 +03:00
Bulat Khasanov
8e1b5e757d Allow to pass font in TextStyle 2020-08-09 23:34:31 +03:00
Richard Davey
e77639561b Use charIndex, not i 2020-08-06 17:06:10 +01:00
Richard Davey
6aaf54e8a7 Don't add frame if empty 2020-08-05 14:15:01 +01:00
Richard Davey
96a64eae4e ParseXMLBitmapFont has a new optional parameter texture. If defined, this Texture is populated with Frame data, one frame per glyph. This happens automatically when loading Bitmap Text data in Phaser. 2020-08-05 12:46:28 +01:00
Richard Davey
a2c9c3cef6 Fix char right adjustment 2020-08-05 11:48:25 +01:00
Richard Davey
00e5c5fe0f Update BitmapTextSize.js 2020-08-04 11:25:10 +01:00
Richard Davey
ee01d36918 Update BitmapTextCharacter.js 2020-08-04 11:25:07 +01:00
Richard Davey
1db3ba72f8 Cache shadow values 2020-08-04 11:25:03 +01:00
Richard Davey
50dcc624df Get Character using char top, right and bottom 2020-08-04 11:24:56 +01:00
Richard Davey
1ae0cfc619 Include char top, right and bottom values 2020-08-04 11:24:43 +01:00
samme
981a4b1a0a Rename all setInteractive() arguments, and docs 2020-08-03 13:33:30 -07:00
Richard Davey
111a4e1ce2 Calling Rectangle.setSize() wouldn't change the underlying geometry of the Shape Game Object, causing any stroke to be incorrectly rendered after a size change. 2020-08-03 17:54:29 +01:00
Richard Davey
47a62cd30c If you apply setSize to the Dynamic BitmapText the scissor is now calculated based on the parent transforms, not just the local ones, meaning you can crop Bitmap Text objects that exist within Containers. Fix #4653 2020-08-03 11:33:41 +01:00
Richard Davey
2f574070d5 Setting the color value in the DynamicBitmapText.setDisplayCallback would inverse the red and blue channels if the color was not properly encoded for WebGL. It is now encoded automatically, meaning you can pass normal hex values as the colors in the display callback. Fix #5225 2020-08-03 10:53:27 +01:00
Richard Davey
ec845ce015 Use GetColorFromValue 2020-08-03 10:49:05 +01:00
Richard Davey
0266c7f0a2 Updated docs #5231 2020-08-03 10:37:01 +01:00
Richard Davey
da05cfa1ad
Merge pull request #5244 from 16patsle/Fix_Text_types
Fix types for Text, TextFactory and TextCreator
2020-08-03 10:20:40 +01:00
Richard Davey
c9330fd469
Merge pull request #5241 from samme/docs/add-existing
Docs: generic return for add.existing()
2020-08-03 10:19:42 +01:00
Patrick Sletvold
edf0c17703
Use TextPadding type in Text game object 2020-08-01 13:35:02 +02:00
Patrick Sletvold
87e8eba213
Correctly type style in TextFactory 2020-08-01 13:34:37 +02:00
Patrick Sletvold
a525e43dcf
Add TextConfig type for TextCreator 2020-08-01 13:34:07 +02:00
Richard Davey
42d6456993 Encode dropshadow color 2020-08-01 11:24:26 +01:00
Richard Davey
959645d1f0 Always render drop shadow behind text 2020-08-01 11:24:15 +01:00
Richard Davey
22e8d22e3f BitmapText.setWordTint is a new method that allows you to set a tint color (either additive, or fill) on all matching words within a static Bitmap Text. You can specify the word by string, or numeric offset, and the number of replacements to tint. 2020-07-31 18:36:27 +01:00
Richard Davey
b9407967e3 If you give an invalid Bitmap Font key, the Bitmap Text object will now issue a console.warn. 2020-07-31 18:00:31 +01:00
Richard Davey
79e985dd93 Updated docs 2020-07-31 17:09:40 +01:00
Richard Davey
c0109c1ec9 BatchChar is a new internal private function for batching a single character of a Bitmap Text to the pipeline. 2020-07-31 16:54:29 +01:00
Richard Davey
2e378b68d1 Apply the dropShadow 2020-07-31 16:39:21 +01:00
Richard Davey
c228dd596a BitmapText.setDropShadow is a new method that allows you to apply a drop shadow effect to a Bitmap Text object. You can set the horizontal and vertical offset of the shadow, as well as the color and alpha levels. Call this method with no parameters to clear a shadow. 2020-07-31 16:39:05 +01:00
Richard Davey
aac2276692 BitmapText.preDestroy is a new method that will tidy-up all of the BitmapText data during object destruction. 2020-07-31 16:22:53 +01:00
Richard Davey
7ce39b991c Removed un-used properties 2020-07-31 16:17:36 +01:00
Richard Davey
9419606f12 BitmapText.setCharacterTint is a new method that allows you to set a tint color (either additive, or fill) on a specific range of characters within a static Bitmap Text. You can specify the start and length offsets and a per-corner tint color. 2020-07-31 16:17:23 +01:00
Richard Davey
fc6e7ef759 Removed un-used properties 2020-07-31 15:46:05 +01:00
Richard Davey
2ef28cd0e4 Added getXRound and getYRound 2020-07-31 15:45:55 +01:00
Richard Davey
4baa0522b9 Bumping to 3.50 2020-07-31 13:41:29 +01:00
Richard Davey
d16d8dc9ce BitmapTextWebGLRenderer has been rewritten from scratch to make use of the new pre-cached WebGL uv texture and character location data generated by GetBitmapTextSize. This has reduced the number of calculations made in the function dramatically, as it no longer has work out glyph advancing or offsets during render, but only when the text content updates. 2020-07-31 13:39:49 +01:00
Richard Davey
49682e744d Update BitmapText.js 2020-07-31 13:34:50 +01:00
Richard Davey
72654e04d3 Fixed bounds sizes 2020-07-31 13:34:28 +01:00
Richard Davey
c166976fcc Update BitmapTextCharacter.js 2020-07-31 12:06:57 +01:00
Richard Davey
a4577e2135 The GetBitmapTextSize function has a new boolean parameter updateOrigin, which will adjust the origin of the parent BitmapText if set, based on the new bounds calculations. 2020-07-31 12:06:45 +01:00
Richard Davey
a682b83b7c BitmapText.getCharacterAt is a new method that will return the character data from the BitmapText at the given x and y corodinates. The character data includes the code, position, dimensions and glyph information. 2020-07-31 11:36:48 +01:00
Richard Davey
e195aac919 ParseXMLBitmapFont will now calculate the WebGL uv data for the glyphs during parsing. This avoids it having to be done during rendering, saving CPU cycles on an operation that never changes. 2020-07-31 11:32:37 +01:00
Richard Davey
0385d108a8 Transform.getLocalPoint is a new method, available on all Game Objects, that takes an x / y pair and translates them into the local space of the Game Object, factoring in parent transforms and display origins. 2020-07-31 10:28:09 +01:00
Richard Davey
214b383fcd Use correct scale and added start of getCharacterAt method 2020-07-30 23:59:06 +01:00
Richard Davey
a39bcfe69a Always return chars 2020-07-30 22:38:06 +01:00
Richard Davey
a678f723c6 Always calculate includeChars 2020-07-30 22:37:34 +01:00
Richard Davey
1579069c50 Pixel accurate character data 2020-07-30 18:24:04 +01:00