@lightningjs/renderer 2.21.0 → 2.22.0

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.
Files changed (82) hide show
  1. package/dist/src/core/Autosizer.js +1 -3
  2. package/dist/src/core/Autosizer.js.map +1 -1
  3. package/dist/src/core/renderers/CoreShaderNode.d.ts +4 -0
  4. package/dist/src/core/renderers/CoreShaderNode.js +15 -0
  5. package/dist/src/core/renderers/CoreShaderNode.js.map +1 -1
  6. package/dist/src/core/renderers/canvas/CanvasRenderer.d.ts +3 -3
  7. package/dist/src/core/renderers/canvas/CanvasRenderer.js +38 -33
  8. package/dist/src/core/renderers/canvas/CanvasRenderer.js.map +1 -1
  9. package/dist/src/core/renderers/canvas/CanvasShaderNode.d.ts +1 -2
  10. package/dist/src/core/renderers/canvas/CanvasShaderNode.js.map +1 -1
  11. package/dist/src/core/renderers/webgl/SdfRenderOp.d.ts +33 -0
  12. package/dist/src/core/renderers/webgl/SdfRenderOp.js +97 -0
  13. package/dist/src/core/renderers/webgl/SdfRenderOp.js.map +1 -0
  14. package/dist/src/core/renderers/webgl/WebGlCtxTexture.js +11 -7
  15. package/dist/src/core/renderers/webgl/WebGlCtxTexture.js.map +1 -1
  16. package/dist/src/core/renderers/webgl/WebGlRenderer.d.ts +6 -18
  17. package/dist/src/core/renderers/webgl/WebGlRenderer.js +48 -61
  18. package/dist/src/core/renderers/webgl/WebGlRenderer.js.map +1 -1
  19. package/dist/src/core/renderers/webgl/WebGlShaderNode.d.ts +2 -4
  20. package/dist/src/core/renderers/webgl/WebGlShaderNode.js.map +1 -1
  21. package/dist/src/core/renderers/webgl/WebGlShaderProgram.d.ts +3 -4
  22. package/dist/src/core/renderers/webgl/WebGlShaderProgram.js +40 -29
  23. package/dist/src/core/renderers/webgl/WebGlShaderProgram.js.map +1 -1
  24. package/dist/src/core/renderers/webgl/shaders/effects/LinearGradientEffect.js +8 -24
  25. package/dist/src/core/renderers/webgl/shaders/effects/LinearGradientEffect.js.map +1 -1
  26. package/dist/src/core/renderers/webgl/shaders/effects/RadialGradientEffect.js +8 -25
  27. package/dist/src/core/renderers/webgl/shaders/effects/RadialGradientEffect.js.map +1 -1
  28. package/dist/src/core/shaders/canvas/Border.d.ts +8 -2
  29. package/dist/src/core/shaders/canvas/Border.js +62 -23
  30. package/dist/src/core/shaders/canvas/Border.js.map +1 -1
  31. package/dist/src/core/shaders/canvas/HolePunch.js +2 -1
  32. package/dist/src/core/shaders/canvas/HolePunch.js.map +1 -1
  33. package/dist/src/core/shaders/canvas/LinearGradient.js +5 -3
  34. package/dist/src/core/shaders/canvas/LinearGradient.js.map +1 -1
  35. package/dist/src/core/shaders/canvas/RadialGradient.js +7 -5
  36. package/dist/src/core/shaders/canvas/RadialGradient.js.map +1 -1
  37. package/dist/src/core/shaders/canvas/Rounded.js +2 -2
  38. package/dist/src/core/shaders/canvas/Rounded.js.map +1 -1
  39. package/dist/src/core/shaders/canvas/RoundedWithBorder.d.ts +6 -3
  40. package/dist/src/core/shaders/canvas/RoundedWithBorder.js +39 -9
  41. package/dist/src/core/shaders/canvas/RoundedWithBorder.js.map +1 -1
  42. package/dist/src/core/shaders/canvas/RoundedWithBorderAndShadow.d.ts +2 -3
  43. package/dist/src/core/shaders/canvas/RoundedWithBorderAndShadow.js +44 -7
  44. package/dist/src/core/shaders/canvas/RoundedWithBorderAndShadow.js.map +1 -1
  45. package/dist/src/core/shaders/canvas/RoundedWithShadow.js +5 -4
  46. package/dist/src/core/shaders/canvas/RoundedWithShadow.js.map +1 -1
  47. package/dist/src/core/shaders/canvas/Shadow.js +4 -2
  48. package/dist/src/core/shaders/canvas/Shadow.js.map +1 -1
  49. package/dist/src/core/shaders/canvas/utils/render.d.ts +1 -1
  50. package/dist/src/core/shaders/canvas/utils/render.js +31 -18
  51. package/dist/src/core/shaders/canvas/utils/render.js.map +1 -1
  52. package/dist/src/core/shaders/templates/BorderTemplate.d.ts +10 -0
  53. package/dist/src/core/shaders/templates/BorderTemplate.js +20 -0
  54. package/dist/src/core/shaders/templates/BorderTemplate.js.map +1 -1
  55. package/dist/src/core/shaders/webgl/Border.js +66 -14
  56. package/dist/src/core/shaders/webgl/Border.js.map +1 -1
  57. package/dist/src/core/shaders/webgl/RoundedWithBorder.js +90 -31
  58. package/dist/src/core/shaders/webgl/RoundedWithBorder.js.map +1 -1
  59. package/dist/src/core/shaders/webgl/RoundedWithBorderAndShadow.js +98 -38
  60. package/dist/src/core/shaders/webgl/RoundedWithBorderAndShadow.js.map +1 -1
  61. package/dist/src/core/shaders/webgl/RoundedWithShadow.js +5 -4
  62. package/dist/src/core/shaders/webgl/RoundedWithShadow.js.map +1 -1
  63. package/dist/src/core/shaders/webgl/Shadow.js +12 -6
  64. package/dist/src/core/shaders/webgl/Shadow.js.map +1 -1
  65. package/dist/src/core/text-rendering/CanvasFont.d.ts +14 -0
  66. package/dist/src/core/text-rendering/CanvasFont.js +115 -0
  67. package/dist/src/core/text-rendering/CanvasFont.js.map +1 -0
  68. package/dist/src/core/text-rendering/CoreFont.d.ts +33 -0
  69. package/dist/src/core/text-rendering/CoreFont.js +48 -0
  70. package/dist/src/core/text-rendering/CoreFont.js.map +1 -0
  71. package/dist/src/core/text-rendering/FontManager.d.ts +11 -0
  72. package/dist/src/core/text-rendering/FontManager.js +41 -0
  73. package/dist/src/core/text-rendering/FontManager.js.map +1 -0
  74. package/dist/src/core/text-rendering/SdfFont.d.ts +29 -0
  75. package/dist/src/core/text-rendering/SdfFont.js +142 -0
  76. package/dist/src/core/text-rendering/SdfFont.js.map +1 -0
  77. package/dist/src/core/text-rendering/SdfTextRenderer.js +12 -20
  78. package/dist/src/core/text-rendering/SdfTextRenderer.js.map +1 -1
  79. package/dist/tsconfig.dist.tsbuildinfo +1 -1
  80. package/package.json +1 -1
  81. package/src/core/renderers/webgl/shaders/effects/LinearGradientEffect.ts +8 -26
  82. package/src/core/renderers/webgl/shaders/effects/RadialGradientEffect.ts +8 -27
@@ -103,9 +103,7 @@ export class Autosizer {
103
103
  }
104
104
  setUpdateType(updateType) {
105
105
  this.updateType |= updateType;
106
- if (this.node.destroyed === false) {
107
- this.node.setUpdateType(UpdateType.Autosize);
108
- }
106
+ this.node.setUpdateType(UpdateType.Autosize);
109
107
  }
110
108
  setMode(mode) {
111
109
  this.mode = mode;
@@ -1 +1 @@
1
- {"version":3,"file":"Autosizer.js","sourceRoot":"","sources":["../../../src/core/Autosizer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Autosizer.js","sourceRoot":"","sources":["../../../src/core/Autosizer.ts"],"names":[],"mappings":"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"}
@@ -56,6 +56,10 @@ export declare class CoreShaderNode<Props extends object = Record<string, unknow
56
56
  protected node: CoreNode | null;
57
57
  readonly time: CoreShaderType['time'];
58
58
  update: (() => void) | undefined;
59
+ private _valueKeyCache;
60
+ private _valueKeyDirty;
61
+ private _lastW;
62
+ private _lastH;
59
63
  constructor(shaderKey: string, type: CoreShaderType<Props>, stage: Stage, props?: Props);
60
64
  private defineProps;
61
65
  attachNode(node: CoreNode): void;
@@ -44,6 +44,10 @@ export class CoreShaderNode {
44
44
  node = null;
45
45
  time = undefined;
46
46
  update = undefined;
47
+ _valueKeyCache = '';
48
+ _valueKeyDirty = true;
49
+ _lastW = 0;
50
+ _lastH = 0;
47
51
  constructor(shaderKey, type, stage, props) {
48
52
  this.shaderKey = shaderKey;
49
53
  this.stage = stage;
@@ -77,6 +81,7 @@ export class CoreShaderNode {
77
81
  else {
78
82
  this.resolvedProps[key] = value;
79
83
  }
84
+ this._valueKeyDirty = true;
80
85
  if (this.update !== undefined && this.node !== null) {
81
86
  this.node.setUpdateType(UpdateType.RecalcUniforms);
82
87
  }
@@ -92,12 +97,22 @@ export class CoreShaderNode {
92
97
  this.node = node;
93
98
  }
94
99
  createValueKey() {
100
+ if (this._valueKeyDirty === false &&
101
+ this.node !== null &&
102
+ this.node.w === this._lastW &&
103
+ this.node.h === this._lastH) {
104
+ return this._valueKeyCache;
105
+ }
95
106
  let valueKey = '';
96
107
  for (const key in this.resolvedProps) {
97
108
  valueKey += `${key}:${this.resolvedProps[key]};`;
98
109
  }
99
110
  valueKey += `node-width:${this.node.w}`;
100
111
  valueKey += `node-height:${this.node.h}`;
112
+ this._valueKeyCache = valueKey;
113
+ this._valueKeyDirty = false;
114
+ this._lastW = this.node.w;
115
+ this._lastH = this.node.h;
101
116
  return valueKey;
102
117
  }
103
118
  get props() {
@@ -1 +1 @@
1
- {"version":3,"file":"CoreShaderNode.js","sourceRoot":"","sources":["../../../../src/core/renderers/CoreShaderNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CoreShaderNode.js","sourceRoot":"","sources":["../../../../src/core/renderers/CoreShaderNode.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { CoreNode } from '../../CoreNode.js';
2
2
  import { type Texture } from '../../textures/Texture.js';
3
3
  import type { CoreContextTexture } from '../CoreContextTexture.js';
4
- import { CoreRenderer, type CoreRendererOptions, type QuadOptions } from '../CoreRenderer.js';
4
+ import { CoreRenderer, type CoreRendererOptions } from '../CoreRenderer.js';
5
5
  import { CanvasShaderNode, type CanvasShaderType } from './CanvasShaderNode.js';
6
6
  export declare class CanvasRenderer extends CoreRenderer {
7
7
  private context;
@@ -13,8 +13,8 @@ export declare class CanvasRenderer extends CoreRenderer {
13
13
  constructor(options: CoreRendererOptions);
14
14
  reset(): void;
15
15
  render(): void;
16
- addQuad(quad: QuadOptions): void;
17
- renderContext(quad: QuadOptions): void;
16
+ addQuad(node: CoreNode): void;
17
+ renderContext(node: CoreNode, texture: Texture): void;
18
18
  createShaderNode(shaderKey: string, shaderType: Readonly<CanvasShaderType>, props?: Record<string, any>): CanvasShaderNode<Record<string, any>, Record<string, unknown>>;
19
19
  createShaderProgram(shaderConfig: any): null;
20
20
  supportsShaderType(shaderType: Readonly<CanvasShaderType>): boolean;
@@ -1,6 +1,6 @@
1
1
  import { SubTexture } from '../../textures/SubTexture.js';
2
2
  import { TextureType } from '../../textures/Texture.js';
3
- import { CoreRenderer, } from '../CoreRenderer.js';
3
+ import { CoreRenderer } from '../CoreRenderer.js';
4
4
  import { CanvasTexture } from './CanvasTexture.js';
5
5
  import { parseColor } from '../../lib/colorParser.js';
6
6
  import { CanvasShaderNode } from './CanvasShaderNode.js';
@@ -33,10 +33,11 @@ export class CanvasRenderer extends CoreRenderer {
33
33
  render() {
34
34
  // noop
35
35
  }
36
- addQuad(quad) {
36
+ addQuad(node) {
37
37
  const ctx = this.context;
38
- const { tx, ty, ta, tb, tc, td, clippingRect } = quad;
39
- let texture = quad.texture;
38
+ const { tx, ty, ta, tb, tc, td } = node.globalTransform;
39
+ const clippingRect = node.clippingRect;
40
+ let texture = (node.props.texture || this.stage.defaultTexture);
40
41
  // The Canvas2D renderer only supports image textures, no textures are used for color blocks
41
42
  if (texture !== null) {
42
43
  const textureType = texture.type;
@@ -48,20 +49,20 @@ export class CanvasRenderer extends CoreRenderer {
48
49
  }
49
50
  }
50
51
  const hasTransform = ta !== 1;
51
- const hasClipping = clippingRect.width !== 0 && clippingRect.height !== 0;
52
- const hasShader = quad.shader !== null;
52
+ const hasClipping = clippingRect.w !== 0 && clippingRect.h !== 0;
53
+ const shader = node.props.shader;
54
+ const hasShader = shader !== null;
53
55
  let saveAndRestore = hasTransform === true || hasClipping === true;
54
56
  if (hasShader === true) {
55
- saveAndRestore =
56
- saveAndRestore || quad.shader.applySNR;
57
+ saveAndRestore = saveAndRestore || shader.applySNR;
57
58
  }
58
59
  if (saveAndRestore) {
59
60
  ctx.save();
60
61
  }
61
62
  if (hasClipping === true) {
62
63
  const path = new Path2D();
63
- const { x, y, width, height } = clippingRect;
64
- path.rect(x, y, width, height);
64
+ const { x, y, w, h } = clippingRect;
65
+ path.rect(x, y, w, h);
65
66
  ctx.clip(path);
66
67
  }
67
68
  if (hasTransform === true) {
@@ -80,64 +81,68 @@ export class CanvasRenderer extends CoreRenderer {
80
81
  }
81
82
  if (hasShader === true) {
82
83
  let renderContext = () => {
83
- this.renderContext(quad);
84
+ this.renderContext(node, texture);
84
85
  };
85
- quad.shader.render(ctx, quad, renderContext);
86
+ shader.render(ctx, node, renderContext);
86
87
  renderContext = null;
87
88
  }
88
89
  else {
89
- this.renderContext(quad);
90
+ this.renderContext(node, texture);
90
91
  }
91
92
  if (saveAndRestore) {
92
93
  ctx.restore();
93
94
  }
94
95
  }
95
- renderContext(quad) {
96
- const color = quad.colorTl;
97
- const texture = quad.texture;
96
+ renderContext(node, texture) {
97
+ const color = node.premultipliedColorTl;
98
98
  const textureType = texture.type;
99
+ const tx = node.globalTransform.tx;
100
+ const ty = node.globalTransform.ty;
101
+ const width = node.props.w;
102
+ const height = node.props.h;
99
103
  if (textureType !== TextureType.color) {
100
104
  const tintColor = parseColor(color);
101
105
  if (textureType !== TextureType.subTexture) {
102
106
  const image = texture.ctxTexture.getImage(tintColor);
103
- this.context.globalAlpha = tintColor.a ?? quad.alpha;
104
- this.context.drawImage(image, quad.tx, quad.ty, quad.width, quad.height);
107
+ this.context.globalAlpha = tintColor.a ?? node.worldAlpha;
108
+ this.context.drawImage(image, tx, ty, width, height);
105
109
  this.context.globalAlpha = 1;
106
110
  return;
107
111
  }
108
112
  const image = texture.parentTexture.ctxTexture.getImage(tintColor);
109
113
  const props = texture.props;
110
- this.context.globalAlpha = tintColor.a ?? quad.alpha;
111
- this.context.drawImage(image, props.x, props.y, props.w, props.h, quad.tx, quad.ty, quad.width, quad.height);
114
+ this.context.globalAlpha = tintColor.a ?? node.worldAlpha;
115
+ this.context.drawImage(image, props.x, props.y, props.w, props.h, tx, ty, width, height);
112
116
  this.context.globalAlpha = 1;
113
117
  return;
114
118
  }
115
- const hasGradient = quad.colorTl !== quad.colorTr || quad.colorTl !== quad.colorBr;
119
+ const hasGradient = node.premultipliedColorTl !== node.premultipliedColorTr ||
120
+ node.premultipliedColorTl !== node.premultipliedColorBr;
116
121
  if (hasGradient === true) {
117
- let endX = quad.tx;
118
- let endY = quad.ty;
122
+ let endX = tx;
123
+ let endY = ty;
119
124
  let endColor;
120
- if (quad.colorTl === quad.colorTr) {
125
+ if (node.premultipliedColorTl === node.premultipliedColorTr) {
121
126
  // vertical
122
- endX = quad.tx;
123
- endY = quad.ty + quad.height;
124
- endColor = quad.colorBr;
127
+ endX = tx;
128
+ endY = ty + height;
129
+ endColor = node.premultipliedColorBr;
125
130
  }
126
131
  else {
127
132
  // horizontal
128
- endX = quad.tx + quad.width;
129
- endY = quad.ty;
130
- endColor = quad.colorTr;
133
+ endX = tx + width;
134
+ endY = ty;
135
+ endColor = node.premultipliedColorTr;
131
136
  }
132
- const gradient = this.context.createLinearGradient(quad.tx, quad.ty, endX, endY);
137
+ const gradient = this.context.createLinearGradient(tx, ty, endX, endY);
133
138
  gradient.addColorStop(0, normalizeCanvasColor(color));
134
139
  gradient.addColorStop(1, normalizeCanvasColor(endColor));
135
140
  this.context.fillStyle = gradient;
136
- this.context.fillRect(quad.tx, quad.ty, quad.width, quad.height);
141
+ this.context.fillRect(tx, ty, width, height);
137
142
  }
138
143
  else {
139
144
  this.context.fillStyle = normalizeCanvasColor(color);
140
- this.context.fillRect(quad.tx, quad.ty, quad.width, quad.height);
145
+ this.context.fillRect(tx, ty, width, height);
141
146
  }
142
147
  }
143
148
  createShaderNode(shaderKey, shaderType, props) {
@@ -1 +1 @@
1
- {"version":3,"file":"CanvasRenderer.js","sourceRoot":"","sources":["../../../../../src/core/renderers/canvas/CanvasRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CanvasRenderer.js","sourceRoot":"","sources":["../../../../../src/core/renderers/canvas/CanvasRenderer.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,8 @@
1
1
  import type { CoreNode } from '../../CoreNode.js';
2
2
  import type { Stage } from '../../Stage.js';
3
- import type { QuadOptions } from '../CoreRenderer.js';
4
3
  import { CoreShaderNode, type CoreShaderType } from '../CoreShaderNode.js';
5
4
  export type CanvasShaderType<T extends object = Record<string, unknown>, C extends object = Record<string, unknown>> = CoreShaderType<T> & {
6
- render: (this: CanvasShaderNode<T, C>, ctx: CanvasRenderingContext2D, quad: QuadOptions, renderContext: () => void) => void;
5
+ render: (this: CanvasShaderNode<T, C>, ctx: CanvasRenderingContext2D, node: CoreNode, renderContext: () => void) => void;
7
6
  update?: (this: CanvasShaderNode<T, C>, node: CoreNode) => void;
8
7
  /**
9
8
  * Set this to true when using ctx functions that scale, clip, rotate, etc..
@@ -1 +1 @@
1
- {"version":3,"file":"CanvasShaderNode.js","sourceRoot":"","sources":["../../../../../src/core/renderers/canvas/CanvasShaderNode.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAG/D,OAAO,EAAE,cAAc,EAAuB,MAAM,sBAAsB,CAAC;AAmB3E,MAAM,OAAO,gBAGX,SAAQ,cAAqB;IACrB,OAAO,GACb,SAAS,CAAC;IACJ,QAAQ,GAAW,EAAE,CAAC;IAC9B,QAAQ,GAAsB,EAAE,CAAC;IACjC,QAAQ,CAAU;IAClB,MAAM,CAAoC;IAE1C,YACE,SAAiB,EACjB,MAA+B,EAC/B,KAAY,EACZ,KAAa;QAEb,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,cAAc,IAAI,KAAK,CAAC;QAC/C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAO,CAAC;YAC9B,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC7B,IAAI,CAAC,OAAQ,CAAC,IAAI,CAAC,IAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjD,OAAO;YACT,CAAC;YAED,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE;gBACjB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;gBAC9B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;gBAEtC,IAAI,OAAO,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAC9B,OAAO;gBACT,CAAC;gBAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACvB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,sBAAsB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC3D,CAAC;gBAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,eAAe,CACnD,IAAI,CAAC,QAAQ,CACa,CAAC;gBAC7B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,IAAI,CAAC,QAAQ,GAAG,QAAoB,CAAC;gBACvC,CAAC;gBACD,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;gBACnB,IAAI,CAAC,OAAQ,CAAC,IAAI,CAAC,IAAgB,CAAC,CAAC;gBACrC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YACrE,CAAC,CAAC;QACJ,CAAC;IACH,CAAC;IAED,aAAa,CAAC,IAAY;QACxB,OAAO,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;CACF"}
1
+ {"version":3,"file":"CanvasShaderNode.js","sourceRoot":"","sources":["../../../../../src/core/renderers/canvas/CanvasShaderNode.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAE/D,OAAO,EAAE,cAAc,EAAuB,MAAM,sBAAsB,CAAC;AAmB3E,MAAM,OAAO,gBAGX,SAAQ,cAAqB;IACrB,OAAO,GACb,SAAS,CAAC;IACJ,QAAQ,GAAW,EAAE,CAAC;IAC9B,QAAQ,GAAsB,EAAE,CAAC;IACjC,QAAQ,CAAU;IAClB,MAAM,CAAoC;IAE1C,YACE,SAAiB,EACjB,MAA+B,EAC/B,KAAY,EACZ,KAAa;QAEb,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,cAAc,IAAI,KAAK,CAAC;QAC/C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAO,CAAC;YAC9B,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC7B,IAAI,CAAC,OAAQ,CAAC,IAAI,CAAC,IAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjD,OAAO;YACT,CAAC;YAED,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE;gBACjB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;gBAC9B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;gBAEtC,IAAI,OAAO,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAC9B,OAAO;gBACT,CAAC;gBAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACvB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,sBAAsB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC3D,CAAC;gBAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,eAAe,CACnD,IAAI,CAAC,QAAQ,CACa,CAAC;gBAC7B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,IAAI,CAAC,QAAQ,GAAG,QAAoB,CAAC;gBACvC,CAAC;gBACD,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;gBACnB,IAAI,CAAC,OAAQ,CAAC,IAAI,CAAC,IAAgB,CAAC,CAAC;gBACrC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YACrE,CAAC,CAAC;QACJ,CAAC;IACH,CAAC;IAED,aAAa,CAAC,IAAY;QACxB,OAAO,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;CACF"}
@@ -0,0 +1,33 @@
1
+ import { CoreRenderOp } from '../CoreRenderOp.js';
2
+ import type { WebGlCtxTexture } from './WebGlCtxTexture.js';
3
+ import type { WebGlRenderer } from './WebGlRenderer.js';
4
+ import type { BufferCollection } from './internal/BufferCollection.js';
5
+ import type { WebGlShaderNode } from './WebGlShaderNode.js';
6
+ import type { RectWithValid } from '../../lib/utils.js';
7
+ import type { Dimensions } from '../../../common/CommonTypes.js';
8
+ import type { Stage } from '../../Stage.js';
9
+ /**
10
+ * Can render multiple quads with multiple textures (up to vertex shader texture limit)
11
+ *
12
+ */
13
+ export declare class SdfRenderOp extends CoreRenderOp {
14
+ readonly renderer: WebGlRenderer;
15
+ readonly shader: WebGlShaderNode;
16
+ readonly sdfShaderProps: Record<string, unknown>;
17
+ readonly quadBufferCollection: BufferCollection;
18
+ readonly worldAlpha: number;
19
+ readonly clippingRect: RectWithValid;
20
+ readonly w: number;
21
+ readonly h: number;
22
+ readonly rtt: boolean;
23
+ readonly parentHasRenderTexture: boolean;
24
+ readonly framebufferDimensions: Dimensions | null;
25
+ numQuads: number;
26
+ readonly isCoreNode: false;
27
+ renderOpTextures: WebGlCtxTexture[];
28
+ time: number;
29
+ readonly stage: Stage;
30
+ constructor(renderer: WebGlRenderer, shader: WebGlShaderNode, sdfShaderProps: Record<string, unknown>, quadBufferCollection: BufferCollection, worldAlpha: number, clippingRect: RectWithValid, w: number, h: number, rtt: boolean, parentHasRenderTexture: boolean, framebufferDimensions: Dimensions | null);
31
+ addTexture(texture: WebGlCtxTexture): number;
32
+ draw(): void;
33
+ }
@@ -0,0 +1,97 @@
1
+ /*
2
+ * If not stated otherwise in this file or this component's LICENSE file the
3
+ * following copyright and licenses apply:
4
+ *
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the License);
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ */
19
+ import { CoreRenderOp } from '../CoreRenderOp.js';
20
+ /**
21
+ * Can render multiple quads with multiple textures (up to vertex shader texture limit)
22
+ *
23
+ */
24
+ export class SdfRenderOp extends CoreRenderOp {
25
+ renderer;
26
+ shader;
27
+ sdfShaderProps;
28
+ quadBufferCollection;
29
+ worldAlpha;
30
+ clippingRect;
31
+ w;
32
+ h;
33
+ rtt;
34
+ parentHasRenderTexture;
35
+ framebufferDimensions;
36
+ numQuads = 0;
37
+ isCoreNode = false;
38
+ renderOpTextures = [];
39
+ time = 0;
40
+ stage;
41
+ constructor(renderer, shader, sdfShaderProps, quadBufferCollection, worldAlpha, clippingRect, w, h, rtt, parentHasRenderTexture, framebufferDimensions) {
42
+ super();
43
+ this.renderer = renderer;
44
+ this.shader = shader;
45
+ this.sdfShaderProps = sdfShaderProps;
46
+ this.quadBufferCollection = quadBufferCollection;
47
+ this.worldAlpha = worldAlpha;
48
+ this.clippingRect = clippingRect;
49
+ this.w = w;
50
+ this.h = h;
51
+ this.rtt = rtt;
52
+ this.parentHasRenderTexture = parentHasRenderTexture;
53
+ this.framebufferDimensions = framebufferDimensions;
54
+ this.stage = renderer.stage;
55
+ }
56
+ addTexture(texture) {
57
+ const { renderOpTextures } = this;
58
+ const length = renderOpTextures.length;
59
+ // We only support 1 texture (atlas) for SDF for now, but following the pattern
60
+ for (let i = 0; i < length; i++) {
61
+ if (renderOpTextures[i] === texture) {
62
+ return i;
63
+ }
64
+ }
65
+ renderOpTextures.push(texture);
66
+ return length;
67
+ }
68
+ draw() {
69
+ const { glw, options, stage } = this.renderer;
70
+ stage.shManager.useShader(this.shader.program);
71
+ this.shader.program.bindRenderOp(this);
72
+ // Clipping
73
+ if (this.clippingRect.valid === true) {
74
+ const pixelRatio = this.parentHasRenderTexture ? 1 : stage.pixelRatio;
75
+ const clipX = Math.round(this.clippingRect.x * pixelRatio);
76
+ const clipWidth = Math.round(this.clippingRect.w * pixelRatio);
77
+ const clipHeight = Math.round(this.clippingRect.h * pixelRatio);
78
+ let clipY = Math.round(options.canvas.height - clipHeight - this.clippingRect.y * pixelRatio);
79
+ // if parent has render texture, we need to adjust the scissor rect
80
+ // to be relative to the parent's framebuffer
81
+ if (this.parentHasRenderTexture) {
82
+ clipY = this.framebufferDimensions
83
+ ? this.framebufferDimensions.h - this.h
84
+ : 0;
85
+ }
86
+ glw.setScissorTest(true);
87
+ glw.scissor(clipX, clipY, clipWidth, clipHeight);
88
+ }
89
+ else {
90
+ glw.setScissorTest(false);
91
+ }
92
+ // SDF rendering uses drawArrays with explicit triangle vertices (6 vertices per quad)
93
+ // Note: buffers should be bound by bindRenderOp -> bindBufferCollection
94
+ glw.drawArrays(glw.TRIANGLES, 0, 6 * this.numQuads);
95
+ }
96
+ }
97
+ //# sourceMappingURL=SdfRenderOp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SdfRenderOp.js","sourceRoot":"","sources":["../../../../../src/core/renderers/webgl/SdfRenderOp.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@
19
19
  import { uploadCompressedTexture } from '../../lib/textureCompression.js';
20
20
  import { CoreContextTexture } from '../CoreContextTexture.js';
21
21
  import { isHTMLImageElement } from './internal/RendererUtils.js';
22
+ import { isProductionEnvironment } from '../../../utils.js';
22
23
  const TRANSPARENT_TEXTURE_DATA = new Uint8Array([0, 0, 0, 0]);
23
24
  /**
24
25
  * A wrapper around a WebGLTexture that handles loading the texture data
@@ -55,11 +56,13 @@ export class WebGlCtxTexture extends CoreContextTexture {
55
56
  if (this.state === 'failed') {
56
57
  return true;
57
58
  }
58
- const error = this.glw.getError();
59
- if (error !== 0) {
60
- this.state = 'failed';
61
- this.textureSource.setState('failed', new Error(`WebGL Error: ${error}`));
62
- return true;
59
+ if (isProductionEnvironment === false) {
60
+ const error = this.glw.getError();
61
+ if (error !== 0) {
62
+ this.state = 'failed';
63
+ this.textureSource.setState('failed', new Error(`WebGL Error: ${error}`));
64
+ return true;
65
+ }
63
66
  }
64
67
  return false;
65
68
  }
@@ -155,16 +158,17 @@ export class WebGlCtxTexture extends CoreContextTexture {
155
158
  const format = glw.RGBA;
156
159
  const formatBytes = 4;
157
160
  const memoryPadding = 1.1; // Add padding to account for GPU Padding
161
+ const isImageBitmap = typeof ImageBitmap !== 'undefined' && tdata instanceof ImageBitmap;
158
162
  // If textureData is null, the texture is empty (0, 0) and we don't need to
159
163
  // upload any data to the GPU.
160
- if ((typeof ImageBitmap !== 'undefined' && tdata instanceof ImageBitmap) ||
164
+ if (isImageBitmap ||
161
165
  tdata instanceof ImageData ||
162
166
  // not using typeof HTMLI mageElement due to web worker
163
167
  isHTMLImageElement(tdata) === true) {
164
168
  w = tdata.width;
165
169
  h = tdata.height;
166
170
  glw.bindTexture(this._nativeCtxTexture);
167
- glw.pixelStorei(glw.UNPACK_PREMULTIPLY_ALPHA_WEBGL, !!textureData.premultiplyAlpha);
171
+ glw.pixelStorei(glw.UNPACK_PREMULTIPLY_ALPHA_WEBGL, isImageBitmap ? false : !!textureData.premultiplyAlpha);
168
172
  glw.texImage2D(0, format, format, glw.UNSIGNED_BYTE, tdata);
169
173
  // Check for errors after compressed texture operations
170
174
  if (this.checkGLError() === true) {
@@ -1 +1 @@
1
- {"version":3,"file":"WebGlCtxTexture.js","sourceRoot":"","sources":["../../../../../src/core/renderers/webgl/WebGlCtxTexture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebGlCtxTexture.js","sourceRoot":"","sources":["../../../../../src/core/renderers/webgl/WebGlCtxTexture.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
- import { CoreRenderer, type BufferInfo, type CoreRendererOptions, type QuadOptions } from '../CoreRenderer.js';
2
- import { WebGlRenderOp } from './WebGlRenderOp.js';
1
+ import { CoreRenderer, type BufferInfo, type CoreRendererOptions } from '../CoreRenderer.js';
2
+ import type { SdfRenderOp } from './SdfRenderOp.js';
3
3
  import type { CoreContextTexture } from '../CoreContextTexture.js';
4
4
  import { type CoreWebGlParameters, type CoreWebGlExtensions, type WebGlColor } from './internal/RendererUtils.js';
5
5
  import { Texture, type TextureCoords } from '../../textures/Texture.js';
6
6
  import { BufferCollection } from './internal/BufferCollection.js';
7
7
  import { WebGlShaderProgram } from './WebGlShaderProgram.js';
8
8
  import { WebGlContextWrapper } from '../../lib/WebGlContextWrapper.js';
9
- import { type CoreNode } from '../../CoreNode.js';
9
+ import { CoreNode } from '../../CoreNode.js';
10
10
  import type { WebGlShaderType } from './WebGlShaderNode.js';
11
11
  import { WebGlShaderNode } from './WebGlShaderNode.js';
12
12
  export type WebGlRendererOptions = CoreRendererOptions;
@@ -14,6 +14,7 @@ interface CoreWebGlSystem {
14
14
  parameters: CoreWebGlParameters;
15
15
  extensions: CoreWebGlExtensions;
16
16
  }
17
+ export type WebGlRenderOp = CoreNode | SdfRenderOp;
17
18
  export declare class WebGlRenderer extends CoreRenderer {
18
19
  glw: WebGlContextWrapper;
19
20
  system: CoreWebGlSystem;
@@ -56,7 +57,7 @@ export declare class WebGlRenderer extends CoreRenderer {
56
57
  * Finally, it calculates the vertices for the quad, taking into account any transformations, and adds them to the quad buffer.
57
58
  * The function updates the length and number of quads in the current render operation, and updates the current buffer index.
58
59
  */
59
- addQuad(params: QuadOptions): void;
60
+ addQuad(node: CoreNode): void;
60
61
  /**
61
62
  * Replace the existing RenderOp with a new one that uses the specified Shader
62
63
  * and starts at the specified buffer index.
@@ -65,25 +66,12 @@ export declare class WebGlRenderer extends CoreRenderer {
65
66
  * @param bufferIdx
66
67
  */
67
68
  private newRenderOp;
68
- /**
69
- * Add a texture to the current RenderOp. If the texture cannot be added to the
70
- * current RenderOp, a new RenderOp will be created and the texture will be added
71
- * to that one.
72
- *
73
- * If the texture cannot be added to the new RenderOp, an error will be thrown.
74
- *
75
- * @param texture
76
- * @param bufferIdx
77
- * @param recursive
78
- * @returns Assigned Texture Index of the texture in the render op
79
- */
80
- private addTexture;
81
69
  /**
82
70
  * Test if the current Render operation can be reused for the specified parameters.
83
71
  * @param params
84
72
  * @returns
85
73
  */
86
- reuseRenderOp(params: QuadOptions): boolean;
74
+ reuseRenderOp(node: CoreNode): boolean;
87
75
  /**
88
76
  * add RenderOp to the render pipeline
89
77
  */