@solidtv/renderer 1.5.6 → 1.6.1
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/dist/src/core/CoreNode.js +2 -2
- package/dist/src/core/CoreNode.js.map +1 -1
- package/dist/src/core/CoreTextureManager.d.ts +31 -0
- package/dist/src/core/CoreTextureManager.js +87 -6
- package/dist/src/core/CoreTextureManager.js.map +1 -1
- package/dist/src/core/Stage.js +11 -2
- package/dist/src/core/Stage.js.map +1 -1
- package/dist/src/core/lib/WebGlContextWrapper.d.ts +17 -1
- package/dist/src/core/lib/WebGlContextWrapper.js +21 -0
- package/dist/src/core/lib/WebGlContextWrapper.js.map +1 -1
- package/dist/src/core/lib/colorParser.d.ts +4 -1
- package/dist/src/core/lib/colorParser.js +16 -6
- package/dist/src/core/lib/colorParser.js.map +1 -1
- package/dist/src/core/platforms/web/WebPlatform.js +60 -50
- package/dist/src/core/platforms/web/WebPlatform.js.map +1 -1
- package/dist/src/core/renderers/canvas/CanvasRenderer.d.ts +4 -0
- package/dist/src/core/renderers/canvas/CanvasRenderer.js +28 -13
- package/dist/src/core/renderers/canvas/CanvasRenderer.js.map +1 -1
- package/dist/src/core/renderers/canvas/CanvasShaderNode.js +1 -0
- package/dist/src/core/renderers/canvas/CanvasShaderNode.js.map +1 -1
- package/dist/src/core/renderers/webgl/SdfRenderOp.js +2 -2
- package/dist/src/core/renderers/webgl/SdfRenderOp.js.map +1 -1
- package/dist/src/core/renderers/webgl/WebGlRenderer.d.ts +43 -0
- package/dist/src/core/renderers/webgl/WebGlRenderer.js +109 -10
- package/dist/src/core/renderers/webgl/WebGlRenderer.js.map +1 -1
- package/dist/src/core/renderers/webgl/WebGlShaderProgram.js +21 -13
- package/dist/src/core/renderers/webgl/WebGlShaderProgram.js.map +1 -1
- package/dist/src/core/renderers/webgl/internal/ShaderUtils.d.ts +8 -3
- package/dist/src/core/renderers/webgl/internal/ShaderUtils.js +12 -11
- package/dist/src/core/renderers/webgl/internal/ShaderUtils.js.map +1 -1
- package/dist/src/core/shaders/canvas/Rounded.js +3 -3
- package/dist/src/core/shaders/canvas/Rounded.js.map +1 -1
- package/dist/src/core/shaders/canvas/RoundedWithShadow.js +3 -3
- package/dist/src/core/shaders/canvas/RoundedWithShadow.js.map +1 -1
- package/dist/src/core/shaders/canvas/utils/render.js +3 -3
- package/dist/src/core/shaders/canvas/utils/render.js.map +1 -1
- package/dist/src/core/shaders/webgl/Border.js +12 -11
- package/dist/src/core/shaders/webgl/Border.js.map +1 -1
- package/dist/src/core/shaders/webgl/HolePunch.js +12 -5
- package/dist/src/core/shaders/webgl/HolePunch.js.map +1 -1
- package/dist/src/core/shaders/webgl/LinearGradient.js +3 -19
- package/dist/src/core/shaders/webgl/LinearGradient.js.map +1 -1
- package/dist/src/core/shaders/webgl/RadialGradient.js +3 -20
- package/dist/src/core/shaders/webgl/RadialGradient.js.map +1 -1
- package/dist/src/core/shaders/webgl/RadialProgress.js +15 -23
- package/dist/src/core/shaders/webgl/RadialProgress.js.map +1 -1
- package/dist/src/core/shaders/webgl/RoundedWithBorder.js +35 -32
- package/dist/src/core/shaders/webgl/RoundedWithBorder.js.map +1 -1
- package/dist/src/core/shaders/webgl/RoundedWithBorderAndShadow.js +58 -45
- package/dist/src/core/shaders/webgl/RoundedWithBorderAndShadow.js.map +1 -1
- package/dist/src/core/shaders/webgl/RoundedWithShadow.js +15 -13
- package/dist/src/core/shaders/webgl/RoundedWithShadow.js.map +1 -1
- package/dist/src/core/shaders/webgl/Shadow.js +4 -5
- package/dist/src/core/shaders/webgl/Shadow.js.map +1 -1
- package/dist/src/core/text-rendering/SdfTextRenderer.js +23 -10
- package/dist/src/core/text-rendering/SdfTextRenderer.js.map +1 -1
- package/dist/src/core/text-rendering/TextLayoutEngine.js +14 -2
- package/dist/src/core/text-rendering/TextLayoutEngine.js.map +1 -1
- package/dist/src/main-api/Renderer.d.ts +28 -5
- package/dist/src/main-api/Renderer.js +5 -1
- package/dist/src/main-api/Renderer.js.map +1 -1
- package/dist/src/utils.js +1 -1
- package/dist/src/utils.js.map +1 -1
- package/dist/tsconfig.dist.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/core/CoreNode.ts +2 -2
- package/src/core/CoreTextureManager.test.ts +147 -0
- package/src/core/CoreTextureManager.ts +97 -8
- package/src/core/Stage.renderListUpdate.test.ts +73 -0
- package/src/core/Stage.ts +13 -1
- package/src/core/lib/WebGlContextWrapper.test.ts +23 -1
- package/src/core/lib/WebGlContextWrapper.ts +23 -1
- package/src/core/lib/colorParser.test.ts +46 -0
- package/src/core/lib/colorParser.ts +17 -6
- package/src/core/platforms/web/WebPlatform.ts +63 -52
- package/src/core/renderers/canvas/CanvasRenderer.test.ts +230 -0
- package/src/core/renderers/canvas/CanvasRenderer.ts +29 -15
- package/src/core/renderers/canvas/CanvasShaderNode.test.ts +73 -0
- package/src/core/renderers/canvas/CanvasShaderNode.ts +1 -0
- package/src/core/renderers/webgl/SdfRenderOp.ts +2 -2
- package/src/core/renderers/webgl/WebGlRenderer.reuseRenderOp.test.ts +122 -0
- package/src/core/renderers/webgl/WebGlRenderer.sdfBuffer.test.ts +302 -0
- package/src/core/renderers/webgl/WebGlRenderer.ts +151 -11
- package/src/core/renderers/webgl/WebGlShaderProgram.reuseRenderOp.test.ts +150 -0
- package/src/core/renderers/webgl/WebGlShaderProgram.ts +27 -15
- package/src/core/renderers/webgl/WebGlShaderProgram.uniformDedup.test.ts +4 -2
- package/src/core/renderers/webgl/internal/ShaderUtils.test.ts +124 -0
- package/src/core/renderers/webgl/internal/ShaderUtils.ts +14 -13
- package/src/core/shaders/canvas/Rounded.ts +3 -3
- package/src/core/shaders/canvas/RoundedWithShadow.ts +3 -3
- package/src/core/shaders/canvas/utils/render.ts +3 -3
- package/src/core/shaders/webgl/Border.ts +12 -11
- package/src/core/shaders/webgl/HolePunch.ts +12 -5
- package/src/core/shaders/webgl/LinearGradient.ts +3 -19
- package/src/core/shaders/webgl/RadialGradient.ts +3 -20
- package/src/core/shaders/webgl/RadialProgress.ts +15 -23
- package/src/core/shaders/webgl/RoundedWithBorder.ts +35 -32
- package/src/core/shaders/webgl/RoundedWithBorderAndShadow.ts +58 -45
- package/src/core/shaders/webgl/RoundedWithShadow.ts +15 -13
- package/src/core/shaders/webgl/Shadow.ts +4 -5
- package/src/core/text-rendering/SdfTextRenderer.test.ts +177 -0
- package/src/core/text-rendering/SdfTextRenderer.ts +38 -10
- package/src/core/text-rendering/TextLayoutEngine.ts +15 -2
- package/src/core/text-rendering/tests/TextLayoutEngine.test.ts +99 -0
- package/src/main-api/Renderer.ts +35 -6
- package/src/utils.ts +1 -1
|
@@ -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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CanvasShaderNode.js","sourceRoot":"","sources":["../../../../../src/core/renderers/canvas/CanvasShaderNode.ts"],"names":[],"mappings":"AACA,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;IACZ,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;
|
|
1
|
+
{"version":3,"file":"CanvasShaderNode.js","sourceRoot":"","sources":["../../../../../src/core/renderers/canvas/CanvasShaderNode.ts"],"names":[],"mappings":"AACA,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;IACZ,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;oBACrC,OAAO;gBACT,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"}
|
|
@@ -55,7 +55,7 @@ export class SdfRenderOp extends CoreRenderOp {
|
|
|
55
55
|
return length;
|
|
56
56
|
}
|
|
57
57
|
draw() {
|
|
58
|
-
const { glw,
|
|
58
|
+
const { glw, stage } = this.renderer;
|
|
59
59
|
stage.shManager.useShader(this.shader.program);
|
|
60
60
|
this.shader.program.bindRenderOp(this);
|
|
61
61
|
// Clipping
|
|
@@ -64,7 +64,7 @@ export class SdfRenderOp extends CoreRenderOp {
|
|
|
64
64
|
const clipX = Math.round(this.clippingRect.x * pixelRatio);
|
|
65
65
|
const clipWidth = Math.round(this.clippingRect.w * pixelRatio);
|
|
66
66
|
const clipHeight = Math.round(this.clippingRect.h * pixelRatio);
|
|
67
|
-
let clipY = Math.round(
|
|
67
|
+
let clipY = Math.round(glw.canvasH - clipHeight - this.clippingRect.y * pixelRatio);
|
|
68
68
|
// if parent has render texture, we need to adjust the scissor rect
|
|
69
69
|
// to be relative to the parent's framebuffer
|
|
70
70
|
if (USE_RTT && this.parentHasRenderTexture) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SdfRenderOp.js","sourceRoot":"","sources":["../../../../../src/core/renderers/webgl/SdfRenderOp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAS5C;;;;;;;GAOG;AACH,MAAM,OAAO,WAAY,SAAQ,YAAY;IAchC;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACF;IACA;IAtBF,QAAQ,GAAG,CAAC,CAAC;IACJ,UAAU,GAAG,KAAc,CAAC;IACrC,gBAAgB,GAAsB,EAAE,CAAC;IACzC,IAAI,GAAW,CAAC,CAAC;IACf,KAAK,CAAQ;IAEtB;;;OAGG;IACI,SAAS,GAAG,CAAC,CAAC;IAErB,YACW,QAAuB,EACvB,MAAuB,EACvB,oBAAsC,EACtC,UAAkB,EAClB,YAA2B,EAC3B,CAAS,EACT,CAAS,EACT,GAAY,EACd,sBAA+B,EAC/B,qBAAwC;QAE/C,KAAK,EAAE,CAAC;QAXC,aAAQ,GAAR,QAAQ,CAAe;QACvB,WAAM,GAAN,MAAM,CAAiB;QACvB,yBAAoB,GAApB,oBAAoB,CAAkB;QACtC,eAAU,GAAV,UAAU,CAAQ;QAClB,iBAAY,GAAZ,YAAY,CAAe;QAC3B,MAAC,GAAD,CAAC,CAAQ;QACT,MAAC,GAAD,CAAC,CAAQ;QACT,QAAG,GAAH,GAAG,CAAS;QACd,2BAAsB,GAAtB,sBAAsB,CAAS;QAC/B,0BAAqB,GAArB,qBAAqB,CAAmB;QAG/C,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;IAC9B,CAAC;IAED,UAAU,CAAC,OAAwB;QACjC,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC;QAClC,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC;QAEvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAChC,IAAI,gBAAgB,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;gBACpC,OAAO,CAAC,CAAC;YACX,CAAC;QACH,CAAC;QAED,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI;QACF,MAAM,EAAE,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"SdfRenderOp.js","sourceRoot":"","sources":["../../../../../src/core/renderers/webgl/SdfRenderOp.ts"],"names":[],"mappings":"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"}
|
|
@@ -69,6 +69,23 @@ export declare class WebGlRenderer extends CoreRenderer {
|
|
|
69
69
|
sdfQuadCount: number;
|
|
70
70
|
sdfQuadBufferCollection: BufferCollection;
|
|
71
71
|
curSdfRenderOp: SdfRenderOp | null;
|
|
72
|
+
/**
|
|
73
|
+
* Whether the shared SDF buffer's bytes may differ from what the GPU
|
|
74
|
+
* currently holds. Set by every write path that produces fresh bytes
|
|
75
|
+
* (cache-miss recompute, translated copy), by anything that can shift
|
|
76
|
+
* offsets or resize the buffer (render-list rebuild, RTT partial upload,
|
|
77
|
+
* backing-store growth), and consumed by {@link uploadSdfBuffer}. The
|
|
78
|
+
* exact cache-hit mem-copy path deliberately does NOT set it — it writes
|
|
79
|
+
* byte-identical data at identical offsets. Conservative direction: when
|
|
80
|
+
* in doubt, set it — a redundant upload is correct, a wrong skip is a
|
|
81
|
+
* glitch.
|
|
82
|
+
*/
|
|
83
|
+
sdfBufferChanged: boolean;
|
|
84
|
+
/**
|
|
85
|
+
* Float32 length of the last main-pass SDF upload — the size half of the
|
|
86
|
+
* skip test in {@link uploadSdfBuffer}.
|
|
87
|
+
*/
|
|
88
|
+
lastUploadedSdfSize: number;
|
|
72
89
|
/**
|
|
73
90
|
* When true, the entire quad buffer is re-uploaded to the GPU via bufferData
|
|
74
91
|
* (DYNAMIC_DRAW) rather than the surgical per-node bufferSubData path.
|
|
@@ -187,6 +204,21 @@ export declare class WebGlRenderer extends CoreRenderer {
|
|
|
187
204
|
* which is orders of magnitude faster than the per-glyph computation path.
|
|
188
205
|
*/
|
|
189
206
|
addSdfCachedQuads(cachedVertices: Float32Array, numGlyphs: number, atlasTexture: WebGlCtxTexture, clippingRect: import('../../lib/utils.js').RectWithValid, worldAlpha: number, width: number, height: number, parentHasRenderTexture: boolean, framebufferDimensions: import('../../../common/CommonTypes.js').Dimensions | null, sdfShader: WebGlShaderNode): void;
|
|
207
|
+
/**
|
|
208
|
+
* Append cached SDF vertices translated by (dx, dy) to the shared buffer.
|
|
209
|
+
*
|
|
210
|
+
* @remarks
|
|
211
|
+
* The scroll fast path: a text node whose transform changed by pure
|
|
212
|
+
* translation reuses its world-space vertex cache — one mem-copy plus two
|
|
213
|
+
* adds per vertex instead of full per-glyph matrix math, and the cache
|
|
214
|
+
* keeps its original base so nothing is re-snapshotted per frame.
|
|
215
|
+
*
|
|
216
|
+
* The copy MUST stay a typed-array `set` (bit-exact memcpy): packed ABGR
|
|
217
|
+
* colors live in the same Float32Array and some bit patterns are float32
|
|
218
|
+
* NaNs, which element-wise float reads/writes may canonicalize and corrupt.
|
|
219
|
+
* Only the two position floats of each vertex are touched after the copy.
|
|
220
|
+
*/
|
|
221
|
+
addSdfTranslatedQuads(cachedVertices: Float32Array, numGlyphs: number, dx: number, dy: number, atlasTexture: WebGlCtxTexture, clippingRect: import('../../lib/utils.js').RectWithValid, worldAlpha: number, width: number, height: number, parentHasRenderTexture: boolean, framebufferDimensions: import('../../../common/CommonTypes.js').Dimensions | null, sdfShader: WebGlShaderNode): void;
|
|
190
222
|
/**
|
|
191
223
|
* Shared batching logic for SDF render ops.
|
|
192
224
|
* Called by both `addSdfQuads` (full compute) and `addSdfCachedQuads` (fast copy).
|
|
@@ -211,6 +243,17 @@ export declare class WebGlRenderer extends CoreRenderer {
|
|
|
211
243
|
* @param surface
|
|
212
244
|
*/
|
|
213
245
|
render(surface?: 'screen' | CoreContextTexture): void;
|
|
246
|
+
/**
|
|
247
|
+
* Upload the shared SDF buffer for the main pass, skipping the driver-side
|
|
248
|
+
* `bufferData` copy when the bytes provably match what the GPU already
|
|
249
|
+
* holds: every write this frame was an exact cache-hit mem-copy
|
|
250
|
+
* (`sdfBufferChanged` false) and the total size matches the previous
|
|
251
|
+
* upload. Exact hits write byte-identical data, and identical offsets are
|
|
252
|
+
* guaranteed because every source of reorder or resize — cache-miss
|
|
253
|
+
* recompute, translated copy, render-list rebuild, RTT partial upload,
|
|
254
|
+
* backing-store growth — sets `sdfBufferChanged`.
|
|
255
|
+
*/
|
|
256
|
+
private uploadSdfBuffer;
|
|
214
257
|
getQuadCount(): number;
|
|
215
258
|
getRenderOpCount(): number;
|
|
216
259
|
renderToTexture(node: CoreNode): void;
|
|
@@ -95,6 +95,23 @@ export class WebGlRenderer extends CoreRenderer {
|
|
|
95
95
|
sdfQuadCount = 0;
|
|
96
96
|
sdfQuadBufferCollection;
|
|
97
97
|
curSdfRenderOp = null;
|
|
98
|
+
/**
|
|
99
|
+
* Whether the shared SDF buffer's bytes may differ from what the GPU
|
|
100
|
+
* currently holds. Set by every write path that produces fresh bytes
|
|
101
|
+
* (cache-miss recompute, translated copy), by anything that can shift
|
|
102
|
+
* offsets or resize the buffer (render-list rebuild, RTT partial upload,
|
|
103
|
+
* backing-store growth), and consumed by {@link uploadSdfBuffer}. The
|
|
104
|
+
* exact cache-hit mem-copy path deliberately does NOT set it — it writes
|
|
105
|
+
* byte-identical data at identical offsets. Conservative direction: when
|
|
106
|
+
* in doubt, set it — a redundant upload is correct, a wrong skip is a
|
|
107
|
+
* glitch.
|
|
108
|
+
*/
|
|
109
|
+
sdfBufferChanged = true;
|
|
110
|
+
/**
|
|
111
|
+
* Float32 length of the last main-pass SDF upload — the size half of the
|
|
112
|
+
* skip test in {@link uploadSdfBuffer}.
|
|
113
|
+
*/
|
|
114
|
+
lastUploadedSdfSize = 0;
|
|
98
115
|
/**
|
|
99
116
|
* When true, the entire quad buffer is re-uploaded to the GPU via bufferData
|
|
100
117
|
* (DYNAMIC_DRAW) rather than the surgical per-node bufferSubData path.
|
|
@@ -160,7 +177,7 @@ export class WebGlRenderer extends CoreRenderer {
|
|
|
160
177
|
this.mode = 'webgl';
|
|
161
178
|
const gl = createWebGLContext(options.canvas, options.forceWebGL2, options.contextSpy);
|
|
162
179
|
const glw = (this.glw = new WebGlContextWrapper(gl, options.disableVertexArrayObject));
|
|
163
|
-
glw.viewport(0, 0,
|
|
180
|
+
glw.viewport(0, 0, glw.canvasW, glw.canvasH);
|
|
164
181
|
this.attachContextLossListeners(options.canvas);
|
|
165
182
|
this.updateClearColor(this.stage.clearColor);
|
|
166
183
|
glw.setBlend(true);
|
|
@@ -518,9 +535,19 @@ export class WebGlRenderer extends CoreRenderer {
|
|
|
518
535
|
if (curShader.shaderKey === 'default' && shader.shaderKey === 'default') {
|
|
519
536
|
return true;
|
|
520
537
|
}
|
|
521
|
-
//
|
|
538
|
+
// Distinct shader nodes can still batch when they resolve to the same
|
|
539
|
+
// program and the value-key cache handed both the same uniform collection:
|
|
540
|
+
// collections are immutable after fill and shared by reference across
|
|
541
|
+
// equal value keys, so reference equality implies value equality. This is
|
|
542
|
+
// the common TV-rail case — many same-size cards, each app-created with
|
|
543
|
+
// its own shader node but equal props. Program identity is required
|
|
544
|
+
// because the value key does not include the shader type, so equal
|
|
545
|
+
// collections from different programs must not merge.
|
|
522
546
|
if (curShader !== shader) {
|
|
523
|
-
|
|
547
|
+
if (curShader.program !== shader.program ||
|
|
548
|
+
curShader.uniforms !== shader.uniforms) {
|
|
549
|
+
return false;
|
|
550
|
+
}
|
|
524
551
|
}
|
|
525
552
|
if (USE_RTT &&
|
|
526
553
|
node.parentHasRenderTexture === true &&
|
|
@@ -579,6 +606,8 @@ export class WebGlRenderer extends CoreRenderer {
|
|
|
579
606
|
if (glyphCount === 0) {
|
|
580
607
|
return;
|
|
581
608
|
}
|
|
609
|
+
// Full recompute writes fresh bytes — the GPU copy is now stale.
|
|
610
|
+
this.sdfBufferChanged = true;
|
|
582
611
|
let idx = this.sdfBufferIdx;
|
|
583
612
|
this.ensureSdfBufferCapacity(idx + glyphCount * 24);
|
|
584
613
|
const f = this.fSdfBuffer;
|
|
@@ -690,6 +719,42 @@ export class WebGlRenderer extends CoreRenderer {
|
|
|
690
719
|
this.sdfQuadCount += numGlyphs;
|
|
691
720
|
this.finalizeSdfBatch(startQuad, numGlyphs, atlasTexture, clippingRect, worldAlpha, width, height, parentHasRenderTexture, framebufferDimensions, sdfShader);
|
|
692
721
|
}
|
|
722
|
+
/**
|
|
723
|
+
* Append cached SDF vertices translated by (dx, dy) to the shared buffer.
|
|
724
|
+
*
|
|
725
|
+
* @remarks
|
|
726
|
+
* The scroll fast path: a text node whose transform changed by pure
|
|
727
|
+
* translation reuses its world-space vertex cache — one mem-copy plus two
|
|
728
|
+
* adds per vertex instead of full per-glyph matrix math, and the cache
|
|
729
|
+
* keeps its original base so nothing is re-snapshotted per frame.
|
|
730
|
+
*
|
|
731
|
+
* The copy MUST stay a typed-array `set` (bit-exact memcpy): packed ABGR
|
|
732
|
+
* colors live in the same Float32Array and some bit patterns are float32
|
|
733
|
+
* NaNs, which element-wise float reads/writes may canonicalize and corrupt.
|
|
734
|
+
* Only the two position floats of each vertex are touched after the copy.
|
|
735
|
+
*/
|
|
736
|
+
addSdfTranslatedQuads(cachedVertices, numGlyphs, dx, dy, atlasTexture, clippingRect, worldAlpha, width, height, parentHasRenderTexture, framebufferDimensions, sdfShader) {
|
|
737
|
+
if (numGlyphs === 0) {
|
|
738
|
+
return;
|
|
739
|
+
}
|
|
740
|
+
// Translated positions are fresh bytes — the GPU copy is now stale.
|
|
741
|
+
this.sdfBufferChanged = true;
|
|
742
|
+
const startQuad = this.sdfQuadCount;
|
|
743
|
+
const idx = this.sdfBufferIdx;
|
|
744
|
+
this.ensureSdfBufferCapacity(idx + cachedVertices.length);
|
|
745
|
+
// Read the buffer reference only after ensureSdfBufferCapacity — growth
|
|
746
|
+
// swaps the backing store.
|
|
747
|
+
const f = this.fSdfBuffer;
|
|
748
|
+
f.set(cachedVertices, idx);
|
|
749
|
+
const end = idx + cachedVertices.length;
|
|
750
|
+
for (let i = idx; i < end; i += 6) {
|
|
751
|
+
f[i] = f[i] + dx;
|
|
752
|
+
f[i + 1] = f[i + 1] + dy;
|
|
753
|
+
}
|
|
754
|
+
this.sdfBufferIdx = end;
|
|
755
|
+
this.sdfQuadCount += numGlyphs;
|
|
756
|
+
this.finalizeSdfBatch(startQuad, numGlyphs, atlasTexture, clippingRect, worldAlpha, width, height, parentHasRenderTexture, framebufferDimensions, sdfShader);
|
|
757
|
+
}
|
|
693
758
|
/**
|
|
694
759
|
* Shared batching logic for SDF render ops.
|
|
695
760
|
* Called by both `addSdfQuads` (full compute) and `addSdfCachedQuads` (fast copy).
|
|
@@ -753,6 +818,8 @@ export class WebGlRenderer extends CoreRenderer {
|
|
|
753
818
|
this.sdfBuffer = newBuffer;
|
|
754
819
|
this.fSdfBuffer = newFSdfBuffer;
|
|
755
820
|
this.uiSdfBuffer = newUiSdfBuffer;
|
|
821
|
+
// New backing store — never skip the next upload.
|
|
822
|
+
this.sdfBufferChanged = true;
|
|
756
823
|
}
|
|
757
824
|
/**
|
|
758
825
|
* Render the current set of RenderOps to render to the specified surface.
|
|
@@ -823,11 +890,7 @@ export class WebGlRenderer extends CoreRenderer {
|
|
|
823
890
|
glw.arrayBufferData(buffer, arr, glw.STATIC_DRAW);
|
|
824
891
|
}
|
|
825
892
|
// Upload the shared SDF buffer if any SDF glyphs were written this frame.
|
|
826
|
-
|
|
827
|
-
const sdfBuf = this.sdfQuadBufferCollection.getBuffer('a_position') || null;
|
|
828
|
-
const sdfArr = new Float32Array(this.sdfBuffer, 0, this.sdfBufferIdx);
|
|
829
|
-
glw.arrayBufferData(sdfBuf, sdfArr, glw.DYNAMIC_DRAW);
|
|
830
|
-
}
|
|
893
|
+
this.uploadSdfBuffer();
|
|
831
894
|
for (let i = 0, length = this.renderOps.length; i < length; i++) {
|
|
832
895
|
this.renderOps[i].draw(this);
|
|
833
896
|
}
|
|
@@ -837,6 +900,31 @@ export class WebGlRenderer extends CoreRenderer {
|
|
|
837
900
|
const QUAD_SIZE_IN_BYTES = 4 * (5 * BYTES_PER_ELEMENT); // 5 attributes per vertex
|
|
838
901
|
this.numQuadsRendered = this.quadBufferUsage / QUAD_SIZE_IN_BYTES;
|
|
839
902
|
}
|
|
903
|
+
/**
|
|
904
|
+
* Upload the shared SDF buffer for the main pass, skipping the driver-side
|
|
905
|
+
* `bufferData` copy when the bytes provably match what the GPU already
|
|
906
|
+
* holds: every write this frame was an exact cache-hit mem-copy
|
|
907
|
+
* (`sdfBufferChanged` false) and the total size matches the previous
|
|
908
|
+
* upload. Exact hits write byte-identical data, and identical offsets are
|
|
909
|
+
* guaranteed because every source of reorder or resize — cache-miss
|
|
910
|
+
* recompute, translated copy, render-list rebuild, RTT partial upload,
|
|
911
|
+
* backing-store growth — sets `sdfBufferChanged`.
|
|
912
|
+
*/
|
|
913
|
+
uploadSdfBuffer() {
|
|
914
|
+
if (this.sdfBufferIdx === 0) {
|
|
915
|
+
return;
|
|
916
|
+
}
|
|
917
|
+
if (this.sdfBufferChanged === false &&
|
|
918
|
+
this.sdfBufferIdx === this.lastUploadedSdfSize) {
|
|
919
|
+
return;
|
|
920
|
+
}
|
|
921
|
+
const glw = this.glw;
|
|
922
|
+
const sdfBuf = this.sdfQuadBufferCollection.getBuffer('a_position') || null;
|
|
923
|
+
const sdfArr = new Float32Array(this.sdfBuffer, 0, this.sdfBufferIdx);
|
|
924
|
+
glw.arrayBufferData(sdfBuf, sdfArr, glw.DYNAMIC_DRAW);
|
|
925
|
+
this.lastUploadedSdfSize = this.sdfBufferIdx;
|
|
926
|
+
this.sdfBufferChanged = false;
|
|
927
|
+
}
|
|
840
928
|
getQuadCount() {
|
|
841
929
|
return this.numQuadsRendered;
|
|
842
930
|
}
|
|
@@ -980,7 +1068,7 @@ export class WebGlRenderer extends CoreRenderer {
|
|
|
980
1068
|
glw.clearColor(clearColor[0], clearColor[1], clearColor[2], clearColor[3]);
|
|
981
1069
|
// Bind the default framebuffer
|
|
982
1070
|
glw.bindFramebuffer(null);
|
|
983
|
-
glw.viewport(0, 0,
|
|
1071
|
+
glw.viewport(0, 0, glw.canvasW, glw.canvasH);
|
|
984
1072
|
this.renderToTextureActive = false;
|
|
985
1073
|
}
|
|
986
1074
|
/**
|
|
@@ -1029,13 +1117,19 @@ export class WebGlRenderer extends CoreRenderer {
|
|
|
1029
1117
|
const sdfBuf = this.sdfQuadBufferCollection.getBuffer('a_position') || null;
|
|
1030
1118
|
const sdfArr = new Float32Array(this.sdfBuffer, 0, this.sdfBufferIdx);
|
|
1031
1119
|
glw.arrayBufferData(sdfBuf, sdfArr, glw.DYNAMIC_DRAW);
|
|
1120
|
+
// This partial upload replaced the GL buffer's contents and size — the
|
|
1121
|
+
// main pass upload can no longer be skipped this frame.
|
|
1122
|
+
this.sdfBufferChanged = true;
|
|
1032
1123
|
}
|
|
1033
1124
|
for (let i = 0, length = this.renderOps.length; i < length; i++) {
|
|
1034
1125
|
this.renderOps[i].draw(this);
|
|
1035
1126
|
}
|
|
1036
1127
|
}
|
|
1037
1128
|
updateViewport() {
|
|
1038
|
-
|
|
1129
|
+
// Called after the canvas is resized (Renderer.updateAppDimensions) —
|
|
1130
|
+
// refresh the wrapper's cached dimensions before they're used again.
|
|
1131
|
+
this.glw.updateCanvasDimensions();
|
|
1132
|
+
this.glw.viewport(0, 0, this.glw.canvasW, this.glw.canvasH);
|
|
1039
1133
|
}
|
|
1040
1134
|
removeRTTNode(node) {
|
|
1041
1135
|
const index = this.rttNodes.indexOf(node);
|
|
@@ -1169,6 +1263,11 @@ export class WebGlRenderer extends CoreRenderer {
|
|
|
1169
1263
|
* next addQuad() pass will reassign compact, contiguous slots starting from 0.
|
|
1170
1264
|
*/
|
|
1171
1265
|
invalidateQuadBuffer() {
|
|
1266
|
+
// A render-list rebuild can reorder text nodes without touching their
|
|
1267
|
+
// SDF vertex caches; byte-identical glyph data would then land at
|
|
1268
|
+
// different offsets, so the upload skip must not fire on the rebuild
|
|
1269
|
+
// frame.
|
|
1270
|
+
this.sdfBufferChanged = true;
|
|
1172
1271
|
if (!DIRTY_QUAD_BUFFER) {
|
|
1173
1272
|
return;
|
|
1174
1273
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebGlRenderer.js","sourceRoot":"","sources":["../../../../../src/core/renderers/webgl/WebGlRenderer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WebGlRenderer.js","sourceRoot":"","sources":["../../../../../src/core/renderers/webgl/WebGlRenderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -112,32 +112,40 @@ export class WebGlShaderProgram {
|
|
|
112
112
|
if (this.lifecycle.canBatch !== undefined) {
|
|
113
113
|
return this.lifecycle.canBatch(node, currentRenderOp);
|
|
114
114
|
}
|
|
115
|
-
|
|
115
|
+
// Read node getters only for the system uniforms this program actually
|
|
116
|
+
// uses — node.time in particular is a getter that runs per call.
|
|
116
117
|
if (this.useTimeValue === true) {
|
|
117
|
-
if (time !== currentRenderOp.time) {
|
|
118
|
+
if (node.time !== currentRenderOp.time) {
|
|
118
119
|
return false;
|
|
119
120
|
}
|
|
120
121
|
}
|
|
121
122
|
if (this.useSystemAlpha === true) {
|
|
122
|
-
if (worldAlpha !== currentRenderOp.worldAlpha) {
|
|
123
|
+
if (node.worldAlpha !== currentRenderOp.worldAlpha) {
|
|
123
124
|
return false;
|
|
124
125
|
}
|
|
125
126
|
}
|
|
126
127
|
if (this.useSystemDimensions === true) {
|
|
127
|
-
if (w !== currentRenderOp.w || h !== currentRenderOp.h) {
|
|
128
|
+
if (node.w !== currentRenderOp.w || node.h !== currentRenderOp.h) {
|
|
128
129
|
return false;
|
|
129
130
|
}
|
|
130
131
|
}
|
|
131
|
-
let shaderPropsA = undefined;
|
|
132
|
-
let shaderPropsB = undefined;
|
|
133
132
|
const shader = node.props.shader;
|
|
134
|
-
if (shader !== null) {
|
|
135
|
-
shaderPropsA = shader.resolvedProps;
|
|
136
|
-
}
|
|
137
133
|
const opShader = currentRenderOp.shader;
|
|
138
|
-
|
|
139
|
-
|
|
134
|
+
// Same shader node — same resolved props by definition.
|
|
135
|
+
if (shader === opShader) {
|
|
136
|
+
return true;
|
|
137
|
+
}
|
|
138
|
+
if (shader === null || opShader === null) {
|
|
139
|
+
return false;
|
|
140
|
+
}
|
|
141
|
+
// Shader nodes with equal value keys share their uniform collection by
|
|
142
|
+
// reference (see WebGlShaderNode.update); reference equality implies the
|
|
143
|
+
// resolved prop values match without a key-by-key compare.
|
|
144
|
+
if (shader.uniforms === opShader.uniforms) {
|
|
145
|
+
return true;
|
|
140
146
|
}
|
|
147
|
+
const shaderPropsA = shader.resolvedProps;
|
|
148
|
+
const shaderPropsB = opShader.resolvedProps;
|
|
141
149
|
if ((shaderPropsA === undefined && shaderPropsB !== undefined) ||
|
|
142
150
|
(shaderPropsA !== undefined && shaderPropsB === undefined)) {
|
|
143
151
|
return false;
|
|
@@ -180,8 +188,8 @@ export class WebGlShaderProgram {
|
|
|
180
188
|
}
|
|
181
189
|
else {
|
|
182
190
|
pixelRatio = renderOp.stage.pixelRatio;
|
|
183
|
-
resolutionW = this.glw.
|
|
184
|
-
resolutionH = this.glw.
|
|
191
|
+
resolutionW = this.glw.canvasW;
|
|
192
|
+
resolutionH = this.glw.canvasH;
|
|
185
193
|
}
|
|
186
194
|
if (pixelRatio !== this.lastPixelRatio) {
|
|
187
195
|
this.glw.uniform1f('u_pixelRatio', pixelRatio);
|