excalibur 0.26.0-alpha.372 → 0.26.0-alpha.376
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.nvmrc +1 -1
- package/CHANGELOG.md +1 -0
- package/build/dist/Graphics/Font.js +15 -14
- package/build/dist/Graphics/Font.js.map +1 -1
- package/build/dist/Graphics/Graphic.d.ts +21 -7
- package/build/dist/Graphics/Graphic.js +76 -23
- package/build/dist/Graphics/Graphic.js.map +1 -1
- package/build/dist/Graphics/ImageSource.d.ts +1 -0
- package/build/dist/Graphics/ImageSource.js +5 -1
- package/build/dist/Graphics/ImageSource.js.map +1 -1
- package/build/dist/Graphics/Sprite.d.ts +1 -0
- package/build/dist/Graphics/Sprite.js +3 -2
- package/build/dist/Graphics/Sprite.js.map +1 -1
- package/build/dist/Graphics/Text.js +7 -5
- package/build/dist/Graphics/Text.js.map +1 -1
- package/build/dist/excalibur.js +176 -115
- package/build/dist/excalibur.js.map +1 -1
- package/build/dist/excalibur.min.js +1 -1
- package/build/dist/excalibur.min.js.LICENSE.txt +1 -1
- package/build/dist/excalibur.min.js.map +1 -1
- package/build/dist/index.js +2 -2
- package/build/esm/Graphics/Graphic.d.ts +21 -7
- package/build/esm/Graphics/ImageSource.d.ts +1 -0
- package/build/esm/Graphics/Sprite.d.ts +1 -0
- package/build/esm/excalibur.js +176 -115
- package/build/esm/excalibur.js.map +1 -1
- package/build/esm/excalibur.min.js +1 -1
- package/build/esm/excalibur.min.js.LICENSE.txt +1 -1
- package/build/esm/excalibur.min.js.map +1 -1
- package/package.json +5 -5
package/.nvmrc
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
16.13.
|
|
1
|
+
16.13.2
|
package/CHANGELOG.md
CHANGED
|
@@ -87,6 +87,7 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
|
|
87
87
|
- Refactor camera/screen interaction to utilize transforms instead of bespoke coordinate conversion
|
|
88
88
|
### Changed
|
|
89
89
|
|
|
90
|
+
- Updated Graphics to improve general performance
|
|
90
91
|
- Updated the webgl primitives to make building `ex.Shader`s, `ex.VertexBuffer`s, and `ex.VertexLayout`s much easier
|
|
91
92
|
- Broke up the internal monolithic shader into separate internal renderer plugins
|
|
92
93
|
- Changed the debug system to separate displaying the debug position point (`game.debug.transform.showPosition = true`) and debug position label (`game.debug.transform.showPositionLabel = true`)
|
|
@@ -150,14 +150,12 @@ export class Font extends Graphic {
|
|
|
150
150
|
right: x + Math.abs(metrics.actualBoundingBoxRight) + this.padding
|
|
151
151
|
});
|
|
152
152
|
}
|
|
153
|
-
_setDimension(
|
|
154
|
-
const textBounds = this.measureText(text);
|
|
153
|
+
_setDimension(textBounds, bitmap) {
|
|
155
154
|
// Changing the width and height clears the context properties
|
|
156
155
|
// We double the bitmap width to account for all possible alignment
|
|
157
156
|
// We scale by "quality" so we render text without jaggies
|
|
158
157
|
bitmap.canvas.width = (textBounds.width + this.padding * 2) * 2 * this.quality;
|
|
159
158
|
bitmap.canvas.height = (textBounds.height + this.padding * 2) * 2 * this.quality;
|
|
160
|
-
return textBounds;
|
|
161
159
|
}
|
|
162
160
|
_postDraw(ex) {
|
|
163
161
|
ex.restore();
|
|
@@ -246,23 +244,26 @@ export class Font extends Graphic {
|
|
|
246
244
|
}
|
|
247
245
|
this.checkAndClearCache();
|
|
248
246
|
const bitmap = this._getTextBitmap(text, colorOverride);
|
|
249
|
-
const
|
|
250
|
-
this._textBounds =
|
|
251
|
-
|
|
252
|
-
|
|
247
|
+
const isNewBitmap = !this._bitmapUsage.get(bitmap);
|
|
248
|
+
this._textBounds = this.measureText(text);
|
|
249
|
+
if (isNewBitmap) {
|
|
250
|
+
this._setDimension(this._textBounds, bitmap);
|
|
251
|
+
}
|
|
253
252
|
this._preDraw(ex, x, y);
|
|
254
253
|
const lines = text.split('\n');
|
|
255
|
-
const lineHeight =
|
|
256
|
-
// draws the text to the bitmap
|
|
257
|
-
this._drawText(bitmap, text, colorOverride, lineHeight);
|
|
258
|
-
// Cache the bitmap for certain amount of time
|
|
259
|
-
this._bitmapUsage.set(bitmap, performance.now());
|
|
254
|
+
const lineHeight = this._textBounds.height / lines.length;
|
|
260
255
|
const rasterWidth = bitmap.canvas.width;
|
|
261
256
|
const rasterHeight = bitmap.canvas.height;
|
|
262
|
-
|
|
263
|
-
|
|
257
|
+
if (isNewBitmap) {
|
|
258
|
+
// draws the text to the bitmap
|
|
259
|
+
this._drawText(bitmap, text, colorOverride, lineHeight);
|
|
260
|
+
// draws the bitmap to excalibur graphics context
|
|
261
|
+
TextureLoader.load(bitmap.canvas, this.filtering, true);
|
|
262
|
+
}
|
|
264
263
|
ex.drawImage(bitmap.canvas, 0, 0, rasterWidth, rasterHeight, x - rasterWidth / this.quality / 2, y - rasterHeight / this.quality / 2, rasterWidth / this.quality, rasterHeight / this.quality);
|
|
265
264
|
this._postDraw(ex);
|
|
265
|
+
// Cache the bitmap for certain amount of time
|
|
266
|
+
this._bitmapUsage.set(bitmap, performance.now());
|
|
266
267
|
}
|
|
267
268
|
/**
|
|
268
269
|
* Get the internal cache size of the font
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Font.js","sourceRoot":"","sources":["../../../src/engine/Graphics/Font.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAExC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAe,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAgB,MAAM,cAAc,CAAC;AAC/G,OAAO,EAAE,OAAO,EAAkB,MAAM,WAAW,CAAC;AAEpD,OAAO,EAAE,aAAa,EAAE,MAAM,GAAG,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C;;;;;;GAMG;AACH,MAAM,OAAO,IAAK,SAAQ,OAAO;IAO/B,YAAY,UAAwD,EAAE;;QACpE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,yBAAyB;QAP3C;;;;WAIG;QACI,cAAS,GAAmB,cAAc,CAAC,OAAO,CAAC;QAoD1D;;;;;;;WAOG;QACI,YAAO,GAAG,CAAC,CAAC;QAEnB,8BAA8B;QACvB,YAAO,GAAG,CAAC,CAAC;QACZ,cAAS,GAAG,KAAK,CAAC;QAClB,cAAS,GAAG,CAAC,CAAC;QACd,aAAQ,GAAa,EAAE,CAAC;QACxB,UAAK,GAAU,KAAK,CAAC,KAAK,CAAC;QAG3B,WAAM,GAAW,YAAY,CAAC;QAC9B,UAAK,GAAc,SAAS,CAAC,MAAM,CAAC;QACpC,SAAI,GAAY,KAAK,CAAC;QACtB,SAAI,GAAa,QAAQ,CAAC,EAAE,CAAC;QAC7B,cAAS,GAAc,SAAS,CAAC,IAAI,CAAC;QACtC,cAAS,GAAc,SAAS,CAAC,UAAU,CAAC;QAC5C,cAAS,GAAc,SAAS,CAAC,WAAW,CAAC;QAC7C,SAAI,GAAW,EAAE,CAAC;QAClB,WAAM,GAAsD,IAAI,CAAC;QAMhE,gBAAW,GAAgB,IAAI,WAAW,EAAE,CAAC;QA0J7C,kBAAa,GAAG,IAAI,GAAG,EAAoC,CAAC;QAC5D,iBAAY,GAAG,IAAI,GAAG,EAAoC,CAAC;QA3OjE,oBAAoB;QACpB,IAAI,CAAC,SAAS,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,mCAAI,IAAI,CAAC,SAAS,CAAC;QACtD,IAAI,CAAC,OAAO,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,mCAAI,IAAI,CAAC,OAAO,CAAC;QAChD,IAAI,CAAC,KAAK,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,mCAAI,IAAI,CAAC,KAAK,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,mCAAI,IAAI,CAAC,WAAW,CAAC;QAC5D,IAAI,CAAC,QAAQ,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,mCAAI,IAAI,CAAC,QAAQ,CAAC;QACnD,IAAI,CAAC,SAAS,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,mCAAI,IAAI,CAAC,SAAS,CAAC;QACtD,IAAI,CAAC,SAAS,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,mCAAI,IAAI,CAAC,SAAS,CAAC;QAEtD,yBAAyB;QACzB,IAAI,CAAC,MAAM,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,mCAAI,IAAI,CAAC,MAAM,CAAC;QAC7C,IAAI,CAAC,KAAK,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,mCAAI,IAAI,CAAC,KAAK,CAAC;QAC1C,IAAI,CAAC,IAAI,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,IAAI,CAAC,IAAI,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,IAAI,CAAC,IAAI,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,IAAI,CAAC,IAAI,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,mCAAI,IAAI,CAAC,SAAS,CAAC;QACtD,IAAI,CAAC,SAAS,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,mCAAI,IAAI,CAAC,SAAS,CAAC;QACtD,IAAI,CAAC,SAAS,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,mCAAI,IAAI,CAAC,SAAS,CAAC;QACtD,IAAI,CAAC,OAAO,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,mCAAI,IAAI,CAAC,OAAO,CAAC;QAChD,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,EAAE;YACnB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;YACjB,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,MAAA,OAAO,CAAC,MAAM,CAAC,IAAI,mCAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YAC3D,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,MAAA,OAAO,CAAC,MAAM,CAAC,MAAM,mCAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YACjE,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,MAAA,OAAO,CAAC,MAAM,CAAC,KAAK,mCAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;SAC/D;IACH,CAAC;IAEM,KAAK;QACV,OAAO,IAAI,IAAI,CAAC;YACd,GAAG,IAAI,CAAC,mBAAmB,EAAE;YAC7B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACjB,CAAC,CAAC;oBACA,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;oBACtB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;oBAC1B,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;iBACzB;gBACD,CAAC,CAAC,IAAI;SACT,CAAC,CAAC;IACL,CAAC;IA8BD,IAAW,UAAU;QACnB,OAAO,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;IAC5F,CAAC;IAID,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAGS,UAAU,CAAC,GAA6B,EAAE,EAAU,EAAE,EAAU;QACxE,iCAAiC;IACnC,CAAC;IAGS,OAAO,CAAC,EAA4B;;QAC5C,6DAA6D;QAC7D,MAAM,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;QACtD,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;QACjC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzB,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC;IAES,KAAK,CAAC,EAA4B;QAC1C,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACvD,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SACjB;QAED,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC7D,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;SACjB;IACH,CAAC;IAGD;;;;;;OAMG;IACI,WAAW,CAAC,IAAY;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/B,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACzC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAEtC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,oDAAoD;QAC1E,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAC9C,IAAI,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QAExG,8CAA8C;QAC9C,MAAM,kBAAkB,GAAG,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC;QACrD,UAAU,GAAG,kBAAkB,CAAC;QAChC,MAAM,YAAY,GAAG,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QACpF,MAAM,CAAC,GAAG,CAAC,CAAC;QACZ,MAAM,CAAC,GAAG,CAAC,CAAC;QACZ,OAAO,IAAI,WAAW,CAAC;YACrB,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAAG,IAAI,CAAC,OAAO;YAChE,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAC,GAAG,IAAI,CAAC,OAAO;YACjE,MAAM,EAAE,CAAC,GAAG,YAAY,GAAG,IAAI,CAAC,OAAO;YACvC,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,sBAAsB,CAAC,GAAG,IAAI,CAAC,OAAO;SACnE,CAAC,CAAC;IACL,CAAC;IAEO,aAAa,CAAC,IAAY,EAAE,MAAgC;QAClE,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAE1C,8DAA8D;QAC9D,mEAAmE;QACnE,0DAA0D;QAC1D,MAAM,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;QAC/E,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;QAEjF,OAAO,UAAU,CAAC;IACpB,CAAC;IAES,SAAS,CAAC,EAA4B;QAC9C,EAAE,CAAC,OAAO,EAAE,CAAC;IACf,CAAC;IAED;;;;OAIG;IACK,wBAAwB,CAAC,KAAa;;QAC5C,MAAM,IAAI,GAAG,cAAc;YAC3B,IAAI,CAAC,UAAU;YACf,IAAI,CAAC,SAAS;YACd,IAAI,CAAC,SAAS;YACd,IAAI,CAAC,SAAS;YACd,IAAI,CAAC,SAAS;YACd,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;YAC3B,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE;gBACxB,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;gBACzB,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;gBACzB,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;iBACxB,MAAA,IAAI,CAAC,WAAW,0CAAE,QAAQ,EAAE,CAAA;gBAC5B,CAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAA,IAAI,CAAC,KAAK,0CAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QACjE,OAAO,IAAI,CAAC;IACd,CAAC;IAES,sBAAsB,CAAC,GAA6B,EAAE,KAAY;;QAC1E,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1C,GAAG,CAAC,qBAAqB,GAAG,IAAI,CAAC,SAAS,CAAC;QAC3C,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC/B,GAAG,CAAC,WAAW,CAAC,MAAA,IAAI,CAAC,QAAQ,mCAAI,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;QACpD,GAAG,CAAC,WAAW,GAAG,MAAA,IAAI,CAAC,WAAW,0CAAE,QAAQ,EAAE,CAAC;QAC/C,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAA,IAAI,CAAC,KAAK,0CAAE,QAAQ,EAAE,CAAC;IACpE,CAAC;IAEO,UAAU,CAAC,GAA6B;QAC9C,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACzF,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACtC,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC/B,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC;QAClC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;QAC3B,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAE/B,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC/C,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YAClC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YACzC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;SAC1C;IACH,CAAC;IAEO,SAAS,CAAC,GAA6B,EAAE,IAAY,EAAE,aAAoB,EAAE,UAAkB;QACrG,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,sBAAsB,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAErB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACrC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,IAAI,IAAI,CAAC,KAAK,EAAE;gBACd,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC;aACvC;YAED,IAAI,IAAI,CAAC,WAAW,EAAE;gBACpB,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC;aACzC;SACF;QAED,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,kBAAkB;YAClB,0BAA0B;YAC1B,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YAC3E,gBAAgB;YAChB,0BAA0B;YAC1B,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;SAC9E;IACH,CAAC;IAIO,cAAc,CAAC,IAAY,EAAE,KAAa;QAChD,MAAM,WAAW,GAAG,IAAI,GAAG,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACnD,IAAI,MAAM,EAAE;YACV,OAAO,MAAM,CAAC;SACf;QAED,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QACzC,OAAO,GAAG,CAAC;IACb,CAAC;IAEM,MAAM,CAAC,EAA4B,EAAE,IAAY,EAAE,aAAoB,EAAE,CAAS,EAAE,CAAS;QAClG,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,IAAI,CAAC,UAAU,EAAE,CAAC;SACnB;QACD,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;QAE1B,MAAM,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;QAC3E,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;QAE7E,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAExB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/B,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAEhD,+BAA+B;QAC/B,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QACxD,8CAA8C;QAC9C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC;QAEjD,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;QACxC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;QAE1C,iDAAiD;QACjD,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACxD,EAAE,CAAC,SAAS,CACV,MAAM,CAAC,MAAM,EACb,CAAC,EACD,CAAC,EACD,WAAW,EACX,YAAY,EACZ,CAAC,GAAG,WAAW,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,EAClC,CAAC,GAAG,YAAY,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,EACnC,WAAW,GAAG,IAAI,CAAC,OAAO,EAC1B,YAAY,GAAG,IAAI,CAAC,OAAO,CAC5B,CAAC;QAEF,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;IAChC,CAAC;IAED;;OAEG;IACI,UAAU;QACf,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACI,kBAAkB;QACvB,KAAK,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE;YACxD,kDAAkD;YAClD,IAAI,IAAI,GAAG,IAAI,GAAG,WAAW,CAAC,GAAG,EAAE,EAAE;gBACnC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;aAClC;SACF;IACH,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"Font.js","sourceRoot":"","sources":["../../../src/engine/Graphics/Font.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Vector } from '../Math/vector';
|
|
2
2
|
import { ExcaliburGraphicsContext } from './Context/ExcaliburGraphicsContext';
|
|
3
3
|
import { BoundingBox } from '../Collision/BoundingBox';
|
|
4
|
+
import { Matrix } from '..';
|
|
4
5
|
export interface GraphicOptions {
|
|
5
6
|
/**
|
|
6
7
|
* The width of the graphic
|
|
@@ -46,34 +47,47 @@ export interface GraphicOptions {
|
|
|
46
47
|
export declare abstract class Graphic {
|
|
47
48
|
private static _ID;
|
|
48
49
|
readonly id: number;
|
|
50
|
+
transform: Matrix;
|
|
51
|
+
private _transformStale;
|
|
52
|
+
isStale(): boolean;
|
|
49
53
|
/**
|
|
50
54
|
* Gets or sets wether to show debug information about the graphic
|
|
51
55
|
*/
|
|
52
56
|
showDebug: boolean;
|
|
57
|
+
private _flipHorizontal;
|
|
53
58
|
/**
|
|
54
59
|
* Gets or sets the flipHorizontal, which will flip the graphic horizontally (across the y axis)
|
|
55
60
|
*/
|
|
56
|
-
flipHorizontal: boolean;
|
|
61
|
+
get flipHorizontal(): boolean;
|
|
62
|
+
set flipHorizontal(value: boolean);
|
|
63
|
+
private _flipVertical;
|
|
57
64
|
/**
|
|
58
65
|
* Gets or sets the flipVertical, which will flip the graphic vertically (across the x axis)
|
|
59
66
|
*/
|
|
60
|
-
flipVertical: boolean;
|
|
67
|
+
get flipVertical(): boolean;
|
|
68
|
+
set flipVertical(value: boolean);
|
|
69
|
+
private _rotation;
|
|
61
70
|
/**
|
|
62
71
|
* Gets or sets the rotation of the graphic
|
|
63
72
|
*/
|
|
64
|
-
rotation: number;
|
|
73
|
+
get rotation(): number;
|
|
74
|
+
set rotation(value: number);
|
|
65
75
|
/**
|
|
66
76
|
* Gets or sets the opacity of the graphic, 0 is transparent, 1 is solid (opaque).
|
|
67
77
|
*/
|
|
68
78
|
opacity: number;
|
|
79
|
+
private _scale;
|
|
69
80
|
/**
|
|
70
81
|
* Gets or sets the scale of the graphic, this affects the width and
|
|
71
82
|
*/
|
|
72
|
-
scale: Vector;
|
|
83
|
+
get scale(): Vector;
|
|
84
|
+
set scale(value: Vector);
|
|
85
|
+
private _origin;
|
|
73
86
|
/**
|
|
74
87
|
* Gets or sets the origin of the graphic, if not set the center of the graphic is the origin
|
|
75
88
|
*/
|
|
76
|
-
origin: Vector | null;
|
|
89
|
+
get origin(): Vector | null;
|
|
90
|
+
set origin(value: Vector | null);
|
|
77
91
|
constructor(options?: GraphicOptions);
|
|
78
92
|
cloneGraphicOptions(): GraphicOptions;
|
|
79
93
|
private _width;
|
|
@@ -115,8 +129,8 @@ export declare abstract class Graphic {
|
|
|
115
129
|
* @param y
|
|
116
130
|
*/
|
|
117
131
|
protected _preDraw(ex: ExcaliburGraphicsContext, x: number, y: number): void;
|
|
118
|
-
protected _rotate(ex: ExcaliburGraphicsContext): void;
|
|
119
|
-
protected _flip(ex: ExcaliburGraphicsContext): void;
|
|
132
|
+
protected _rotate(ex: ExcaliburGraphicsContext | Matrix): void;
|
|
133
|
+
protected _flip(ex: ExcaliburGraphicsContext | Matrix): void;
|
|
120
134
|
/**
|
|
121
135
|
* Apply any addtional work after [[Graphic._drawImage]] and restore the context state.
|
|
122
136
|
* @param ex
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { Vector, vec } from '../Math/vector';
|
|
2
2
|
import { BoundingBox } from '../Collision/BoundingBox';
|
|
3
|
+
import { Matrix } from '..';
|
|
4
|
+
import { watch } from '../Util/Watch';
|
|
3
5
|
/**
|
|
4
6
|
* A Graphic is the base Excalibur primitive for something that can be drawn to the [[ExcaliburGraphicsContext]].
|
|
5
7
|
* [[Sprite]], [[Animation]], [[GraphicsGroup]], [[Canvas]], [[Rectangle]], [[Circle]], and [[Polygon]] all derive from the
|
|
@@ -12,34 +14,21 @@ export class Graphic {
|
|
|
12
14
|
constructor(options) {
|
|
13
15
|
var _a, _b, _c, _d, _e, _f;
|
|
14
16
|
this.id = Graphic._ID++;
|
|
17
|
+
this.transform = Matrix.identity();
|
|
18
|
+
this._transformStale = true;
|
|
15
19
|
/**
|
|
16
20
|
* Gets or sets wether to show debug information about the graphic
|
|
17
21
|
*/
|
|
18
22
|
this.showDebug = false;
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
this.flipHorizontal = false;
|
|
23
|
-
/**
|
|
24
|
-
* Gets or sets the flipVertical, which will flip the graphic vertically (across the x axis)
|
|
25
|
-
*/
|
|
26
|
-
this.flipVertical = false;
|
|
27
|
-
/**
|
|
28
|
-
* Gets or sets the rotation of the graphic
|
|
29
|
-
*/
|
|
30
|
-
this.rotation = 0;
|
|
23
|
+
this._flipHorizontal = false;
|
|
24
|
+
this._flipVertical = false;
|
|
25
|
+
this._rotation = 0;
|
|
31
26
|
/**
|
|
32
27
|
* Gets or sets the opacity of the graphic, 0 is transparent, 1 is solid (opaque).
|
|
33
28
|
*/
|
|
34
29
|
this.opacity = 1;
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
*/
|
|
38
|
-
this.scale = Vector.One;
|
|
39
|
-
/**
|
|
40
|
-
* Gets or sets the origin of the graphic, if not set the center of the graphic is the origin
|
|
41
|
-
*/
|
|
42
|
-
this.origin = null;
|
|
30
|
+
this._scale = Vector.One;
|
|
31
|
+
this._origin = null;
|
|
43
32
|
this._width = 0;
|
|
44
33
|
this._height = 0;
|
|
45
34
|
if (options) {
|
|
@@ -51,6 +40,63 @@ export class Graphic {
|
|
|
51
40
|
this.scale = (_f = options.scale) !== null && _f !== void 0 ? _f : this.scale;
|
|
52
41
|
}
|
|
53
42
|
}
|
|
43
|
+
isStale() {
|
|
44
|
+
return this._transformStale;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Gets or sets the flipHorizontal, which will flip the graphic horizontally (across the y axis)
|
|
48
|
+
*/
|
|
49
|
+
get flipHorizontal() {
|
|
50
|
+
return this._flipHorizontal;
|
|
51
|
+
}
|
|
52
|
+
set flipHorizontal(value) {
|
|
53
|
+
this._flipHorizontal = value;
|
|
54
|
+
this._transformStale = true;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Gets or sets the flipVertical, which will flip the graphic vertically (across the x axis)
|
|
58
|
+
*/
|
|
59
|
+
get flipVertical() {
|
|
60
|
+
return this._flipVertical;
|
|
61
|
+
}
|
|
62
|
+
set flipVertical(value) {
|
|
63
|
+
this._flipVertical = value;
|
|
64
|
+
this._transformStale = true;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Gets or sets the rotation of the graphic
|
|
68
|
+
*/
|
|
69
|
+
get rotation() {
|
|
70
|
+
return this._rotation;
|
|
71
|
+
}
|
|
72
|
+
set rotation(value) {
|
|
73
|
+
this._rotation = value;
|
|
74
|
+
this._transformStale = true;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Gets or sets the scale of the graphic, this affects the width and
|
|
78
|
+
*/
|
|
79
|
+
get scale() {
|
|
80
|
+
return this._scale;
|
|
81
|
+
}
|
|
82
|
+
set scale(value) {
|
|
83
|
+
this._scale = watch(value, () => {
|
|
84
|
+
this._transformStale = true;
|
|
85
|
+
});
|
|
86
|
+
this._transformStale = true;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Gets or sets the origin of the graphic, if not set the center of the graphic is the origin
|
|
90
|
+
*/
|
|
91
|
+
get origin() {
|
|
92
|
+
return this._origin;
|
|
93
|
+
}
|
|
94
|
+
set origin(value) {
|
|
95
|
+
this._origin = watch(value, () => {
|
|
96
|
+
this._transformStale = true;
|
|
97
|
+
});
|
|
98
|
+
this._transformStale = true;
|
|
99
|
+
}
|
|
54
100
|
cloneGraphicOptions() {
|
|
55
101
|
return {
|
|
56
102
|
origin: this.origin ? this.origin.clone() : null,
|
|
@@ -75,9 +121,11 @@ export class Graphic {
|
|
|
75
121
|
}
|
|
76
122
|
set width(value) {
|
|
77
123
|
this._width = value;
|
|
124
|
+
this._transformStale = true;
|
|
78
125
|
}
|
|
79
126
|
set height(value) {
|
|
80
127
|
this._height = value;
|
|
128
|
+
this._transformStale = true;
|
|
81
129
|
}
|
|
82
130
|
/**
|
|
83
131
|
* Gets a copy of the bounds in pixels occupied by the graphic on the the screen. This includes scale.
|
|
@@ -105,9 +153,14 @@ export class Graphic {
|
|
|
105
153
|
_preDraw(ex, x, y) {
|
|
106
154
|
ex.save();
|
|
107
155
|
ex.translate(x, y);
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
156
|
+
if (this._transformStale) {
|
|
157
|
+
this.transform.reset();
|
|
158
|
+
this.transform.scale(Math.abs(this.scale.x), Math.abs(this.scale.y));
|
|
159
|
+
this._rotate(this.transform);
|
|
160
|
+
this._flip(this.transform);
|
|
161
|
+
this._transformStale = false;
|
|
162
|
+
}
|
|
163
|
+
ex.multiply(this.transform);
|
|
111
164
|
// it is important to multiply alphas so graphics respect the current context
|
|
112
165
|
ex.opacity = ex.opacity * this.opacity;
|
|
113
166
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Graphic.js","sourceRoot":"","sources":["../../../src/engine/Graphics/Graphic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"Graphic.js","sourceRoot":"","sources":["../../../src/engine/Graphics/Graphic.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,7 @@ export declare class ImageSource implements Loadable<HTMLImageElement> {
|
|
|
15
15
|
* The original height of the source image in pixels
|
|
16
16
|
*/
|
|
17
17
|
get height(): number;
|
|
18
|
+
private _src;
|
|
18
19
|
/**
|
|
19
20
|
* Returns true if the Texture is completely loaded and is ready
|
|
20
21
|
* to be drawn.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ImageSource.js","sourceRoot":"","sources":["../../../src/engine/Graphics/ImageSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,GAAG,CAAC;AAGlC,MAAM,OAAO,WAAW;
|
|
1
|
+
{"version":3,"file":"ImageSource.js","sourceRoot":"","sources":["../../../src/engine/Graphics/ImageSource.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,6 +38,7 @@ export declare class Sprite extends Graphic {
|
|
|
38
38
|
image: ImageSource;
|
|
39
39
|
sourceView: SourceView;
|
|
40
40
|
destSize: DestinationSize;
|
|
41
|
+
private _dirty;
|
|
41
42
|
static from(image: ImageSource): Sprite;
|
|
42
43
|
constructor(options: GraphicOptions & SpriteOptions);
|
|
43
44
|
get width(): number;
|
|
@@ -6,6 +6,7 @@ export class Sprite extends Graphic {
|
|
|
6
6
|
constructor(options) {
|
|
7
7
|
var _a, _b;
|
|
8
8
|
super(options);
|
|
9
|
+
this._dirty = true;
|
|
9
10
|
this.image = options.image;
|
|
10
11
|
const { width, height } = options;
|
|
11
12
|
this.sourceView = (_a = options.sourceView) !== null && _a !== void 0 ? _a : { x: 0, y: 0, width: width !== null && width !== void 0 ? width : 0, height: height !== null && height !== void 0 ? height : 0 };
|
|
@@ -50,14 +51,14 @@ export class Sprite extends Graphic {
|
|
|
50
51
|
this.height = Math.ceil(this.destSize.height) * this.scale.y;
|
|
51
52
|
}
|
|
52
53
|
_preDraw(ex, x, y) {
|
|
53
|
-
if (this.image.isLoaded()) {
|
|
54
|
+
if (this.image.isLoaded() && this._dirty) {
|
|
55
|
+
this._dirty = false;
|
|
54
56
|
this._updateSpriteDimensions();
|
|
55
57
|
}
|
|
56
58
|
super._preDraw(ex, x, y);
|
|
57
59
|
}
|
|
58
60
|
_drawImage(ex, x, y) {
|
|
59
61
|
if (this.image.isLoaded()) {
|
|
60
|
-
this._updateSpriteDimensions();
|
|
61
62
|
ex.drawImage(this.image.image, this.sourceView.x, this.sourceView.y, this.sourceView.width, this.sourceView.height, x, y, this.destSize.width, this.destSize.height);
|
|
62
63
|
}
|
|
63
64
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sprite.js","sourceRoot":"","sources":["../../../src/engine/Graphics/Sprite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAoB7C,MAAM,OAAO,MAAO,SAAQ,OAAO;
|
|
1
|
+
{"version":3,"file":"Sprite.js","sourceRoot":"","sources":["../../../src/engine/Graphics/Sprite.ts"],"names":[],"mappings":"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"}
|
|
@@ -75,11 +75,13 @@ export class Text extends Graphic {
|
|
|
75
75
|
if (this.font instanceof Font) {
|
|
76
76
|
color = (_a = this.color) !== null && _a !== void 0 ? _a : this.font.color;
|
|
77
77
|
}
|
|
78
|
-
this.
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
78
|
+
if (this.isStale() || this.font.isStale()) {
|
|
79
|
+
this.font.flipHorizontal = this.flipHorizontal;
|
|
80
|
+
this.font.flipVertical = this.flipVertical;
|
|
81
|
+
this.font.rotation = this.rotation;
|
|
82
|
+
this.font.origin = this.origin;
|
|
83
|
+
this.font.opacity = this.opacity;
|
|
84
|
+
}
|
|
83
85
|
const { width, height } = this.font.measureText(this._text);
|
|
84
86
|
this._textWidth = width;
|
|
85
87
|
this._textHeight = height;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Text.js","sourceRoot":"","sources":["../../../src/engine/Graphics/Text.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAkB,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAmB9B;;;;GAIG;AACH,MAAM,OAAO,IAAK,SAAQ,OAAO;IAE/B,YAAY,OAAqC;;QAC/C,KAAK,CAAC,OAAO,CAAC,CAAC;QAeT,UAAK,GAAW,EAAE,CAAC;QAoBnB,eAAU,GAAW,CAAC,CAAC;QASvB,gBAAW,GAAW,CAAC,CAAC;QA3C9B,iDAAiD;QACjD,IAAI,CAAC,IAAI,GAAG,MAAA,OAAO,CAAC,IAAI,mCAAI,IAAI,IAAI,EAAE,CAAC;QACvC,IAAI,CAAC,KAAK,GAAG,MAAA,OAAO,CAAC,KAAK,mCAAI,IAAI,CAAC,KAAK,CAAC;QACzC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC3B,CAAC;IAEM,KAAK;;QACV,OAAO,IAAI,IAAI,CAAC;YACd,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACvB,KAAK,EAAE,MAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,KAAK,EAAE,mCAAI,KAAK,CAAC,KAAK;YACzC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;SACxB,CAAC,CAAC;IACL,CAAC;IAGD,IAAW,IAAI;QACb,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAW,IAAI,CAAC,KAAa;QAC3B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjD,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;IACnC,CAAC;IAGD,IAAW,IAAI;QACb,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IACD,IAAW,IAAI,CAAC,IAAuB;QACrC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAID,IAAW,KAAK;QACd,IAAI,IAAI,CAAC,UAAU,KAAK,CAAC,EAAE;YACzB,IAAI,CAAC,mBAAmB,EAAE,CAAC;SAC5B;QACD,OAAO,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACxC,CAAC;IAGD,IAAW,MAAM;QACf,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC,EAAE;YAC1B,IAAI,CAAC,mBAAmB,EAAE,CAAC;SAC5B;QACD,OAAO,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACzC,CAAC;IAEO,mBAAmB;QACzB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5D,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;IAC5B,CAAC;IAED,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC;IAEkB,OAAO,CAAC,GAA6B;QACtD,iCAAiC;QACjC,4CAA4C;IAC9C,CAAC;IAEkB,KAAK,CAAC,GAA6B;QACpD,iCAAiC;QACjC,4CAA4C;IAC9C,CAAC;IAEkB,UAAU,CAAC,EAA4B,EAAE,CAAS,EAAE,CAAS;;QAC9E,IAAI,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QACxB,IAAI,IAAI,CAAC,IAAI,YAAY,IAAI,EAAE;YAC7B,KAAK,GAAG,MAAA,IAAI,CAAC,KAAK,mCAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;SACvC;
|
|
1
|
+
{"version":3,"file":"Text.js","sourceRoot":"","sources":["../../../src/engine/Graphics/Text.ts"],"names":[],"mappings":"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"}
|