@lightningjs/renderer 3.0.3 → 3.0.5
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/common/EventEmitter.d.ts +7 -4
- package/dist/src/common/EventEmitter.js +1 -1
- package/dist/src/common/EventEmitter.js.map +1 -1
- package/dist/src/core/AutosizeManager.d.ts +29 -0
- package/dist/src/core/AutosizeManager.js +169 -0
- package/dist/src/core/AutosizeManager.js.map +1 -0
- package/dist/src/core/CoreNode.d.ts +2 -1
- package/dist/src/core/CoreNode.js +6 -3
- package/dist/src/core/CoreNode.js.map +1 -1
- package/dist/src/core/CoreTextNode.d.ts +18 -5
- package/dist/src/core/CoreTextNode.js +141 -59
- package/dist/src/core/CoreTextNode.js.map +1 -1
- package/dist/src/core/CoreTextNodeCanvas.d.ts +215 -0
- package/dist/src/core/CoreTextNodeCanvas.js +236 -0
- package/dist/src/core/CoreTextNodeCanvas.js.map +1 -0
- package/dist/src/core/Stage.js +10 -0
- package/dist/src/core/Stage.js.map +1 -1
- package/dist/src/core/TextureMemoryManager.js +4 -3
- package/dist/src/core/TextureMemoryManager.js.map +1 -1
- package/dist/src/core/animations/Animation.d.ts +21 -0
- package/dist/src/core/animations/Animation.js +194 -0
- package/dist/src/core/animations/Animation.js.map +1 -0
- package/dist/src/core/animations/AnimationManager.d.ts +1 -1
- package/dist/src/core/animations/AnimationManager.js +5 -5
- package/dist/src/core/animations/AnimationManager.js.map +1 -1
- package/dist/src/core/animations/CoreAnimation.d.ts +11 -2
- package/dist/src/core/animations/CoreAnimation.js +44 -38
- package/dist/src/core/animations/CoreAnimation.js.map +1 -1
- package/dist/src/core/animations/CoreAnimationController.d.ts +6 -0
- package/dist/src/core/animations/CoreAnimationController.js +16 -3
- package/dist/src/core/animations/CoreAnimationController.js.map +1 -1
- package/dist/src/core/animations/Playback.d.ts +64 -0
- package/dist/src/core/animations/Playback.js +169 -0
- package/dist/src/core/animations/Playback.js.map +1 -0
- package/dist/src/core/animations/Ticker.d.ts +71 -0
- package/dist/src/core/animations/Ticker.js +89 -0
- package/dist/src/core/animations/Ticker.js.map +1 -0
- package/dist/src/core/animations/Transition.d.ts +38 -0
- package/dist/src/core/animations/Transition.js +35 -0
- package/dist/src/core/animations/Transition.js.map +1 -0
- package/dist/src/core/animations/TransitionsController.d.ts +10 -0
- package/dist/src/core/animations/TransitionsController.js +39 -0
- package/dist/src/core/animations/TransitionsController.js.map +1 -0
- package/dist/src/core/animations/utils.d.ts +2 -0
- package/dist/src/core/animations/utils.js +136 -0
- package/dist/src/core/animations/utils.js.map +1 -0
- package/dist/src/core/lib/ImageWorker.d.ts +2 -2
- package/dist/src/core/lib/ImageWorker.js +11 -30
- package/dist/src/core/lib/ImageWorker.js.map +1 -1
- package/dist/src/core/lib/WebGlContextWrapper.d.ts +5 -16
- package/dist/src/core/lib/WebGlContextWrapper.js +1 -35
- package/dist/src/core/lib/WebGlContextWrapper.js.map +1 -1
- package/dist/src/core/lib/textureCompression.d.ts +2 -14
- package/dist/src/core/lib/textureCompression.js +67 -320
- package/dist/src/core/lib/textureCompression.js.map +1 -1
- package/dist/src/core/platform.js +9 -38
- package/dist/src/core/platform.js.map +1 -1
- package/dist/src/core/renderers/canvas/CanvasCoreRenderer.d.ts +0 -1
- package/dist/src/core/renderers/canvas/CanvasCoreRenderer.js +3 -11
- package/dist/src/core/renderers/canvas/CanvasCoreRenderer.js.map +1 -1
- package/dist/src/core/renderers/canvas/CanvasCoreTexture.d.ts +1 -2
- package/dist/src/core/renderers/canvas/CanvasCoreTexture.js +11 -16
- package/dist/src/core/renderers/canvas/CanvasCoreTexture.js.map +1 -1
- package/dist/src/core/renderers/canvas/CanvasRenderer.js +14 -1
- package/dist/src/core/renderers/canvas/CanvasRenderer.js.map +1 -1
- package/dist/src/core/renderers/canvas/CanvasTexture.d.ts +1 -1
- package/dist/src/core/renderers/canvas/CanvasTexture.js +16 -6
- package/dist/src/core/renderers/canvas/CanvasTexture.js.map +1 -1
- package/dist/src/core/renderers/canvas/internal/C2DShaderUtils.d.ts +0 -13
- package/dist/src/core/renderers/canvas/internal/C2DShaderUtils.js +192 -113
- package/dist/src/core/renderers/canvas/internal/C2DShaderUtils.js.map +1 -1
- package/dist/src/core/renderers/canvas/internal/ColorUtils.d.ts +2 -0
- package/dist/src/core/renderers/canvas/internal/ColorUtils.js +14 -0
- package/dist/src/core/renderers/canvas/internal/ColorUtils.js.map +1 -1
- package/dist/src/core/renderers/webgl/WebGlCoreCtxRenderTexture.d.ts +1 -2
- package/dist/src/core/renderers/webgl/WebGlCoreCtxRenderTexture.js +5 -12
- package/dist/src/core/renderers/webgl/WebGlCoreCtxRenderTexture.js.map +1 -1
- package/dist/src/core/renderers/webgl/WebGlCoreCtxTexture.d.ts +6 -18
- package/dist/src/core/renderers/webgl/WebGlCoreCtxTexture.js +60 -102
- package/dist/src/core/renderers/webgl/WebGlCoreCtxTexture.js.map +1 -1
- package/dist/src/core/renderers/webgl/WebGlCoreRenderOp.js +1 -1
- package/dist/src/core/renderers/webgl/WebGlCoreRenderer.d.ts +1 -3
- package/dist/src/core/renderers/webgl/WebGlCoreRenderer.js +31 -74
- package/dist/src/core/renderers/webgl/WebGlCoreRenderer.js.map +1 -1
- package/dist/src/core/renderers/webgl/WebGlCoreShader.d.ts +7 -2
- package/dist/src/core/renderers/webgl/WebGlCoreShader.js +50 -21
- package/dist/src/core/renderers/webgl/WebGlCoreShader.js.map +1 -1
- package/dist/src/core/renderers/webgl/WebGlRenderOp.d.ts +2 -3
- package/dist/src/core/renderers/webgl/WebGlRenderOp.js +1 -3
- package/dist/src/core/renderers/webgl/WebGlRenderOp.js.map +1 -1
- package/dist/src/core/renderers/webgl/WebGlRenderer.d.ts +2 -2
- package/dist/src/core/renderers/webgl/WebGlRenderer.js.map +1 -1
- package/dist/src/core/renderers/webgl/WebGlShaderNode.d.ts +1 -0
- package/dist/src/core/renderers/webgl/WebGlShaderNode.js +23 -0
- package/dist/src/core/renderers/webgl/WebGlShaderNode.js.map +1 -1
- package/dist/src/core/renderers/webgl/WebGlShaderProgram.js +4 -5
- package/dist/src/core/renderers/webgl/WebGlShaderProgram.js.map +1 -1
- package/dist/src/core/renderers/webgl/internal/ShaderUtils.d.ts +1 -0
- package/dist/src/core/renderers/webgl/internal/ShaderUtils.js.map +1 -1
- package/dist/src/core/renderers/webgl/shaders/DefaultShader.js +6 -3
- package/dist/src/core/renderers/webgl/shaders/DefaultShader.js.map +1 -1
- package/dist/src/core/renderers/webgl/shaders/DefaultShaderBatched.js +11 -0
- package/dist/src/core/renderers/webgl/shaders/DefaultShaderBatched.js.map +1 -1
- package/dist/src/core/renderers/webgl/shaders/DynamicShader.js +10 -5
- package/dist/src/core/renderers/webgl/shaders/DynamicShader.js.map +1 -1
- package/dist/src/core/renderers/webgl/shaders/RoundedRectangle.js +10 -5
- package/dist/src/core/renderers/webgl/shaders/RoundedRectangle.js.map +1 -1
- package/dist/src/core/renderers/webgl/shaders/SdfShader.js +12 -0
- package/dist/src/core/renderers/webgl/shaders/SdfShader.js.map +1 -1
- package/dist/src/core/renderers/webgl/shaders/effects/BorderBottomEffect.js +1 -1
- package/dist/src/core/renderers/webgl/shaders/effects/BorderLeftEffect.js +1 -1
- package/dist/src/core/renderers/webgl/shaders/effects/BorderRightEffect.js +1 -1
- package/dist/src/core/renderers/webgl/shaders/effects/BorderTopEffect.js +1 -1
- package/dist/src/core/renderers/webgl/shaders/effects/EffectUtils.js +2 -2
- package/dist/src/core/renderers/webgl/shaders/effects/FadeOutEffect.js +5 -5
- package/dist/src/core/renderers/webgl/shaders/effects/HolePunchEffect.js +1 -1
- package/dist/src/core/renderers/webgl/shaders/effects/LinearGradientEffect.d.ts +1 -0
- package/dist/src/core/renderers/webgl/shaders/effects/LinearGradientEffect.js +30 -14
- package/dist/src/core/renderers/webgl/shaders/effects/LinearGradientEffect.js.map +1 -1
- package/dist/src/core/renderers/webgl/shaders/effects/RadialGradientEffect.d.ts +0 -1
- package/dist/src/core/renderers/webgl/shaders/effects/RadialGradientEffect.js +3 -13
- package/dist/src/core/renderers/webgl/shaders/effects/RadialGradientEffect.js.map +1 -1
- package/dist/src/core/renderers/webgl/shaders/effects/RadialProgressEffect.js +1 -1
- package/dist/src/core/renderers/webgl/shaders/effects/RadiusEffect.js +5 -5
- package/dist/src/core/shaders/webgl/SdfShadowShader.d.ts +9 -0
- package/dist/src/core/shaders/webgl/SdfShadowShader.js +100 -0
- package/dist/src/core/shaders/webgl/SdfShadowShader.js.map +1 -0
- package/dist/src/core/text-rendering/CanvasFont.d.ts +1 -1
- package/dist/src/core/text-rendering/CanvasFont.js +7 -16
- package/dist/src/core/text-rendering/CanvasFont.js.map +1 -1
- package/dist/src/core/text-rendering/CanvasFontHandler.d.ts +1 -1
- package/dist/src/core/text-rendering/CanvasFontHandler.js +1 -1
- package/dist/src/core/text-rendering/CanvasFontHandler.js.map +1 -1
- package/dist/src/core/text-rendering/CanvasTextRenderer.d.ts +2 -3
- package/dist/src/core/text-rendering/CanvasTextRenderer.js +7 -5
- package/dist/src/core/text-rendering/CanvasTextRenderer.js.map +1 -1
- package/dist/src/core/text-rendering/CoreFont.d.ts +1 -1
- package/dist/src/core/text-rendering/CoreFont.js +1 -1
- package/dist/src/core/text-rendering/CoreFont.js.map +1 -1
- package/dist/src/core/text-rendering/FontManager.js +2 -1
- package/dist/src/core/text-rendering/FontManager.js.map +1 -1
- package/dist/src/core/text-rendering/SdfTextRenderer.d.ts +3 -5
- package/dist/src/core/text-rendering/SdfTextRenderer.js +19 -109
- package/dist/src/core/text-rendering/SdfTextRenderer.js.map +1 -1
- package/dist/src/core/text-rendering/TextLayoutEngine.js +43 -12
- package/dist/src/core/text-rendering/TextLayoutEngine.js.map +1 -1
- package/dist/src/core/text-rendering/TextRenderer.d.ts +16 -8
- package/dist/src/core/text-rendering/canvas/Settings.d.ts +64 -0
- package/dist/src/core/text-rendering/canvas/Settings.js +20 -0
- package/dist/src/core/text-rendering/canvas/Settings.js.map +1 -0
- package/dist/src/core/text-rendering/canvas/Utils.d.ts +20 -0
- package/dist/src/core/text-rendering/canvas/Utils.js +144 -0
- package/dist/src/core/text-rendering/canvas/Utils.js.map +1 -0
- package/dist/src/core/text-rendering/canvas/calculateRenderInfo.d.ts +60 -0
- package/dist/src/core/text-rendering/canvas/calculateRenderInfo.js +183 -0
- package/dist/src/core/text-rendering/canvas/calculateRenderInfo.js.map +1 -0
- package/dist/src/core/text-rendering/canvas/draw.d.ts +5 -0
- package/dist/src/core/text-rendering/canvas/draw.js +132 -0
- package/dist/src/core/text-rendering/canvas/draw.js.map +1 -0
- package/dist/src/core/text-rendering/font-face-types/SdfTrFontFace/SdfTrFontFace.js +2 -2
- package/dist/src/core/text-rendering/font-face-types/SdfTrFontFace/SdfTrFontFace.js.map +1 -1
- package/dist/src/core/text-rendering/renderers/SdfTextRenderer/SdfTextRenderer.d.ts +3 -4
- package/dist/src/core/text-rendering/renderers/SdfTextRenderer/SdfTextRenderer.js +46 -98
- package/dist/src/core/text-rendering/renderers/SdfTextRenderer/SdfTextRenderer.js.map +1 -1
- package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/getStartConditions.d.ts +1 -1
- package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/layoutText.d.ts +2 -2
- package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/layoutText.js +66 -8
- package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/layoutText.js.map +1 -1
- package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/setRenderWindow.d.ts +1 -1
- package/dist/src/core/text-rendering/renderers/TextRenderer.d.ts +1 -1
- package/dist/src/core/text-rendering/renderers/canvas/CanvasTextRenderer.d.ts +26 -0
- package/dist/src/core/text-rendering/renderers/canvas/CanvasTextRenderer.js +158 -0
- package/dist/src/core/text-rendering/renderers/canvas/CanvasTextRenderer.js.map +1 -0
- package/dist/src/core/text-rendering/renderers/canvas/internal/draw.d.ts +5 -0
- package/dist/src/core/text-rendering/renderers/canvas/internal/draw.js +127 -0
- package/dist/src/core/text-rendering/renderers/canvas/internal/draw.js.map +1 -0
- package/dist/src/core/text-rendering/renderers/canvas/internal/mergeDefaults.d.ts +2 -0
- package/dist/src/core/text-rendering/renderers/canvas/internal/mergeDefaults.js +50 -0
- package/dist/src/core/text-rendering/renderers/canvas/internal/mergeDefaults.js.map +1 -0
- package/dist/src/core/text-rendering/renderers/canvas/internal/renderInfo.d.ts +33 -0
- package/dist/src/core/text-rendering/renderers/canvas/internal/renderInfo.js +192 -0
- package/dist/src/core/text-rendering/renderers/canvas/internal/renderInfo.js.map +1 -0
- package/dist/src/core/text-rendering/renderers/canvas/internal/types.d.ts +66 -0
- package/dist/src/core/text-rendering/renderers/canvas/internal/types.js +2 -0
- package/dist/src/core/text-rendering/renderers/canvas/internal/types.js.map +1 -0
- package/dist/src/core/text-rendering/renderers/canvas/internal/utils.d.ts +91 -0
- package/dist/src/core/text-rendering/renderers/canvas/internal/utils.js +282 -0
- package/dist/src/core/text-rendering/renderers/canvas/internal/utils.js.map +1 -0
- package/dist/src/core/text-rendering/sdf/PeekableGenerator.d.ts +12 -0
- package/dist/src/core/text-rendering/sdf/PeekableGenerator.js +61 -0
- package/dist/src/core/text-rendering/sdf/PeekableGenerator.js.map +1 -0
- package/dist/src/core/text-rendering/sdf/SimpleFontShaper.d.ts +45 -0
- package/dist/src/core/text-rendering/sdf/SimpleFontShaper.js +69 -0
- package/dist/src/core/text-rendering/sdf/SimpleFontShaper.js.map +1 -0
- package/dist/src/core/text-rendering/sdf/Utils.d.ts +26 -0
- package/dist/src/core/text-rendering/sdf/Utils.js +301 -0
- package/dist/src/core/text-rendering/sdf/Utils.js.map +1 -0
- package/dist/src/core/text-rendering/sdf/index.d.ts +1 -0
- package/dist/src/core/text-rendering/sdf/index.js +20 -0
- package/dist/src/core/text-rendering/sdf/index.js.map +1 -0
- package/dist/src/core/textures/ImageTexture.js +11 -0
- package/dist/src/core/textures/ImageTexture.js.map +1 -1
- package/dist/src/core/textures/Texture.js +5 -0
- package/dist/src/core/textures/Texture.js.map +1 -1
- package/dist/src/main-api/Inspector.d.ts +1 -1
- package/dist/src/main-api/Inspector.js +25 -20
- package/dist/src/main-api/Inspector.js.map +1 -1
- package/dist/tsconfig.dist.tsbuildinfo +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +1 -1
- package/src/common/EventEmitter.ts +6 -8
- package/src/core/CoreNode.test.ts +1 -1
- package/src/core/CoreNode.ts +8 -4
- package/src/core/CoreTextNode.test.ts +138 -25
- package/src/core/CoreTextNode.ts +174 -67
- package/src/core/Stage.ts +11 -0
- package/src/core/TextureMemoryManager.ts +4 -3
- package/src/core/animations/AnimationManager.ts +5 -5
- package/src/core/animations/CoreAnimation.ts +61 -45
- package/src/core/animations/CoreAnimationController.ts +16 -7
- package/src/core/renderers/canvas/CanvasRenderer.ts +19 -1
- package/src/core/renderers/canvas/CanvasTexture.ts +23 -8
- package/src/core/renderers/webgl/WebGlRenderer.ts +2 -3
- package/src/core/renderers/webgl/WebGlShaderNode.ts +24 -0
- package/src/core/renderers/webgl/WebGlShaderProgram.test.ts +274 -0
- package/src/core/renderers/webgl/WebGlShaderProgram.ts +10 -10
- package/src/core/renderers/webgl/internal/ShaderUtils.ts +1 -0
- package/src/core/text-rendering/CanvasFontHandler.ts +2 -2
- package/src/core/text-rendering/CanvasTextRenderer.ts +14 -7
- package/src/core/text-rendering/SdfTextRenderer.ts +28 -140
- package/src/core/text-rendering/TextLayoutEngine.ts +61 -28
- package/src/core/text-rendering/TextRenderer.ts +19 -12
- package/src/core/text-rendering/tests/TextLayoutEngine.test.ts +20 -0
- package/src/core/textures/ImageTexture.ts +18 -0
- package/src/core/textures/Texture.ts +6 -0
- package/src/main-api/Inspector.ts +25 -25
- package/dist/src/core/text-rendering/TextGenerator.d.ts +0 -10
- package/dist/src/core/text-rendering/TextGenerator.js +0 -36
- package/dist/src/core/text-rendering/TextGenerator.js.map +0 -1
- package/src/core/renderers/webgl/SdfRenderOp.ts +0 -106
|
@@ -18,6 +18,8 @@
|
|
|
18
18
|
*/
|
|
19
19
|
import { CoreNode, CoreNodeRenderState, UpdateType, } from './CoreNode.js';
|
|
20
20
|
import { Matrix3d } from './lib/Matrix3d.js';
|
|
21
|
+
import { BufferCollection } from './renderers/webgl/internal/BufferCollection.js';
|
|
22
|
+
import { mergeColorAlpha } from '../utils.js';
|
|
21
23
|
export var TextConstraint;
|
|
22
24
|
(function (TextConstraint) {
|
|
23
25
|
TextConstraint[TextConstraint["none"] = 0] = "none";
|
|
@@ -31,23 +33,16 @@ export class CoreTextNode extends CoreNode {
|
|
|
31
33
|
_layoutGenerated = false;
|
|
32
34
|
_waitingForFont = false;
|
|
33
35
|
_containType = TextConstraint.none;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
// created WebGLBuffer back into it, allowing reuse across frames.
|
|
38
|
-
_sdfBufferRef = { current: null };
|
|
36
|
+
_sdfBuffer = null;
|
|
37
|
+
_sdfQuadCollection = null;
|
|
38
|
+
_sdfShaderProps = null;
|
|
39
39
|
// Text renderer properties - stored directly on the node
|
|
40
40
|
textProps;
|
|
41
|
-
_renderInfo =
|
|
42
|
-
width: 0,
|
|
43
|
-
height: 0,
|
|
44
|
-
};
|
|
45
|
-
_type = 'sdf'; // Default to SDF renderer
|
|
41
|
+
_renderInfo = null;
|
|
46
42
|
constructor(stage, props, textRenderer) {
|
|
47
43
|
super(stage, props);
|
|
48
44
|
this.textRenderer = textRenderer;
|
|
49
45
|
this.fontHandler = textRenderer.font;
|
|
50
|
-
this._type = textRenderer.type;
|
|
51
46
|
// Initialize text properties from props
|
|
52
47
|
// Props are guaranteed to have all defaults resolved by Stage.createTextNode
|
|
53
48
|
this.textProps = props;
|
|
@@ -74,11 +69,12 @@ export class CoreTextNode extends CoreNode {
|
|
|
74
69
|
* Safe to call from destroy() or on text change.
|
|
75
70
|
*/
|
|
76
71
|
releaseSdfBuffer() {
|
|
77
|
-
const buf = this.
|
|
72
|
+
const buf = this._sdfBuffer;
|
|
78
73
|
if (buf === null)
|
|
79
74
|
return;
|
|
80
75
|
this.stage.renderer.deleteBuffer(buf);
|
|
81
|
-
this.
|
|
76
|
+
this._sdfBuffer = null;
|
|
77
|
+
this._sdfQuadCollection = null;
|
|
82
78
|
}
|
|
83
79
|
allowTextGeneration() {
|
|
84
80
|
const p = this.props.parent;
|
|
@@ -154,7 +150,7 @@ export class CoreTextNode extends CoreNode {
|
|
|
154
150
|
this._layoutGenerated === false) {
|
|
155
151
|
if (this.fontHandler.isFontLoaded(this.textProps.fontFamily) === true) {
|
|
156
152
|
this._waitingForFont = false;
|
|
157
|
-
this.
|
|
153
|
+
this._renderInfo = null; // Clear any previous render info before generating new layout
|
|
158
154
|
this.releaseSdfBuffer(); // Free the cached WebGLBuffer
|
|
159
155
|
const resp = this.textRenderer.renderText(this.textProps);
|
|
160
156
|
this.handleRenderResult(resp);
|
|
@@ -171,7 +167,7 @@ export class CoreTextNode extends CoreNode {
|
|
|
171
167
|
// If text is invalid, ensure node is not renderable
|
|
172
168
|
this.setRenderable(false);
|
|
173
169
|
this._layoutGenerated = false;
|
|
174
|
-
this.
|
|
170
|
+
this._renderInfo = null;
|
|
175
171
|
this.releaseSdfBuffer(); // Free the cached WebGLBuffer
|
|
176
172
|
}
|
|
177
173
|
// First run the standard CoreNode update
|
|
@@ -183,26 +179,34 @@ export class CoreTextNode extends CoreNode {
|
|
|
183
179
|
updateIsRenderable() {
|
|
184
180
|
// Guard: Text nodes are never renderable without valid text
|
|
185
181
|
const hasValidText = typeof this.textProps.text === 'string' && this.textProps.text.length > 0;
|
|
186
|
-
|
|
182
|
+
const renderInfo = this._renderInfo;
|
|
183
|
+
if (hasValidText === false || renderInfo === null) {
|
|
187
184
|
this.setRenderable(false);
|
|
188
185
|
return;
|
|
189
186
|
}
|
|
190
187
|
// SDF text nodes are always renderable if they have a valid layout
|
|
191
|
-
if (
|
|
188
|
+
if (renderInfo.type === 'canvas') {
|
|
192
189
|
super.updateIsRenderable();
|
|
193
190
|
return;
|
|
194
191
|
}
|
|
195
|
-
|
|
196
|
-
this.setRenderable(this._cachedLayout !== null);
|
|
192
|
+
this.setRenderable(true);
|
|
197
193
|
}
|
|
198
194
|
/**
|
|
199
195
|
* Handle the result of text rendering for both Canvas and SDF renderers
|
|
200
196
|
*/
|
|
201
197
|
handleRenderResult(result) {
|
|
202
198
|
// Host paths on top
|
|
203
|
-
const textRendererType =
|
|
199
|
+
const textRendererType = result.type;
|
|
204
200
|
let width = result.width;
|
|
205
201
|
let height = result.height;
|
|
202
|
+
// Handle zero-dimension case (can happen with certain text inputs or font issues)
|
|
203
|
+
if (width === 0 || height === 0) {
|
|
204
|
+
this.emit('failed', {
|
|
205
|
+
type: 'text',
|
|
206
|
+
error: new Error('Text rendering failed, width or height zero'),
|
|
207
|
+
});
|
|
208
|
+
return;
|
|
209
|
+
}
|
|
206
210
|
// Handle Canvas renderer (uses ImageData)
|
|
207
211
|
if (textRendererType === 'canvas') {
|
|
208
212
|
if (result.imageData === undefined) {
|
|
@@ -216,6 +220,8 @@ export class CoreTextNode extends CoreNode {
|
|
|
216
220
|
premultiplyAlpha: true,
|
|
217
221
|
src: result.imageData,
|
|
218
222
|
});
|
|
223
|
+
this.props.w = width;
|
|
224
|
+
this.props.h = height;
|
|
219
225
|
// It isn't renderable until the texture is loaded we have to set it to false here to avoid it
|
|
220
226
|
// being detected as a renderable default color node in the next frame
|
|
221
227
|
// it will be corrected once the texture is loaded
|
|
@@ -225,27 +231,34 @@ export class CoreTextNode extends CoreNode {
|
|
|
225
231
|
this.texture.setRenderableOwner(this._id, true);
|
|
226
232
|
}
|
|
227
233
|
}
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
if (textRendererType === 'sdf') {
|
|
241
|
-
this.setRenderable(true);
|
|
234
|
+
else {
|
|
235
|
+
const layout = result.layout;
|
|
236
|
+
// For SDF, we rely on the presence of a valid layout to determine renderability
|
|
237
|
+
if (layout === undefined) {
|
|
238
|
+
this.emit('failed', {
|
|
239
|
+
type: 'text',
|
|
240
|
+
error: new Error('SDF text rendering failed, no layout data returned'),
|
|
241
|
+
});
|
|
242
|
+
return;
|
|
243
|
+
}
|
|
244
|
+
this.props.w = width;
|
|
245
|
+
this.props.h = height;
|
|
242
246
|
this.setUpdateType(UpdateType.Local);
|
|
247
|
+
this.setRenderable(true);
|
|
248
|
+
this.numQuads = layout.glyphCount;
|
|
249
|
+
this._sdfShaderProps = {
|
|
250
|
+
size: layout.fontScale,
|
|
251
|
+
distanceRange: layout.distanceRange,
|
|
252
|
+
};
|
|
253
|
+
this.renderOpTextures = [result.atlasTexture];
|
|
243
254
|
}
|
|
244
255
|
this._renderInfo = result;
|
|
245
256
|
queueMicrotask(this.emitTextLoadedEvent);
|
|
246
257
|
}
|
|
247
258
|
// Reusable bound method for emitting loaded event
|
|
248
259
|
emitTextLoadedEvent = () => {
|
|
260
|
+
if (this._renderInfo === null)
|
|
261
|
+
return; // Guard against unexpected null
|
|
249
262
|
this.emit('loaded', {
|
|
250
263
|
type: 'text',
|
|
251
264
|
dimensions: {
|
|
@@ -263,37 +276,54 @@ export class CoreTextNode extends CoreNode {
|
|
|
263
276
|
if (rtt === false || this.parentRenderTexture !== renderer.activeRttNode)
|
|
264
277
|
return;
|
|
265
278
|
}
|
|
266
|
-
//
|
|
267
|
-
if (this.
|
|
268
|
-
super.renderQuads(renderer);
|
|
279
|
+
// Early return if no renderInfo
|
|
280
|
+
if (this._renderInfo === null) {
|
|
269
281
|
return;
|
|
270
282
|
}
|
|
271
|
-
//
|
|
272
|
-
if (this.
|
|
283
|
+
// Canvas renderer: use standard texture rendering via CoreNode
|
|
284
|
+
if (this._renderInfo.type === 'canvas') {
|
|
285
|
+
super.renderQuads(renderer);
|
|
273
286
|
return;
|
|
274
287
|
}
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
288
|
+
if (this._sdfBuffer === null) {
|
|
289
|
+
const glw = this.stage.renderer.glw;
|
|
290
|
+
this._sdfBuffer = glw.createBuffer();
|
|
291
|
+
if (this._sdfBuffer === null) {
|
|
292
|
+
console.error('Failed to create WebGL buffer for SDF text rendering');
|
|
293
|
+
return;
|
|
294
|
+
}
|
|
295
|
+
glw.arrayBufferData(this._sdfBuffer, this._renderInfo.layout.vertexBuffer, glw.STATIC_DRAW);
|
|
296
|
+
this._sdfQuadCollection = new BufferCollection([
|
|
297
|
+
{
|
|
298
|
+
buffer: this._sdfBuffer,
|
|
299
|
+
attributes: {
|
|
300
|
+
a_position: {
|
|
301
|
+
name: 'a_position',
|
|
302
|
+
size: 2,
|
|
303
|
+
type: glw.FLOAT,
|
|
304
|
+
normalized: false,
|
|
305
|
+
stride: 4 * Float32Array.BYTES_PER_ELEMENT,
|
|
306
|
+
offset: 0,
|
|
307
|
+
},
|
|
308
|
+
a_textureCoords: {
|
|
309
|
+
name: 'a_textureCoords',
|
|
310
|
+
size: 2,
|
|
311
|
+
type: glw.FLOAT,
|
|
312
|
+
normalized: false,
|
|
313
|
+
stride: 4 * Float32Array.BYTES_PER_ELEMENT,
|
|
314
|
+
offset: 2 * Float32Array.BYTES_PER_ELEMENT,
|
|
315
|
+
},
|
|
316
|
+
},
|
|
317
|
+
},
|
|
318
|
+
]);
|
|
319
|
+
}
|
|
320
|
+
this.sdfShaderProps.transform = this.globalTransform.getFloatArr();
|
|
321
|
+
this.sdfShaderProps.color = mergeColorAlpha(this.props.color, this.worldAlpha);
|
|
322
|
+
this.textRenderer.renderQuads(this);
|
|
293
323
|
}
|
|
294
324
|
updateRenderState(renderState) {
|
|
295
325
|
super.updateRenderState(renderState);
|
|
296
|
-
if (this.
|
|
326
|
+
if (this._renderInfo !== null &&
|
|
297
327
|
renderState === CoreNodeRenderState.OutOfBounds) {
|
|
298
328
|
this.releaseSdfBuffer();
|
|
299
329
|
}
|
|
@@ -303,12 +333,64 @@ export class CoreTextNode extends CoreNode {
|
|
|
303
333
|
this.fontHandler.stopWaitingForFont(this.textProps.fontFamily, this);
|
|
304
334
|
}
|
|
305
335
|
// Clear cached layout and vertex buffer
|
|
306
|
-
this.
|
|
336
|
+
this._renderInfo = null;
|
|
307
337
|
this.releaseSdfBuffer(); // Delete the cached WebGLBuffer before losing stage ref
|
|
308
338
|
this.fontHandler = null; // Clear reference to avoid memory leaks
|
|
309
339
|
this.textRenderer = null; // Clear reference to avoid memory leaks
|
|
310
340
|
super.destroy();
|
|
311
341
|
}
|
|
342
|
+
/**
|
|
343
|
+
* used in webgl SDF shader to get the quad buffer collection for rendering text quads
|
|
344
|
+
*/
|
|
345
|
+
get quadBufferCollection() {
|
|
346
|
+
return this._sdfQuadCollection || super.quadBufferCollection;
|
|
347
|
+
}
|
|
348
|
+
/**
|
|
349
|
+
* used in webgl SDF shader to get the SDF shader props for rendering text quads
|
|
350
|
+
*/
|
|
351
|
+
get sdfShaderProps() {
|
|
352
|
+
return this._sdfShaderProps;
|
|
353
|
+
}
|
|
354
|
+
get isSdfRenderOp() {
|
|
355
|
+
return this.textRenderer.type === 'sdf';
|
|
356
|
+
}
|
|
357
|
+
draw(renderer) {
|
|
358
|
+
if (this.textRenderer.type === 'canvas') {
|
|
359
|
+
super.draw(renderer);
|
|
360
|
+
return;
|
|
361
|
+
}
|
|
362
|
+
const { glw, stage } = renderer;
|
|
363
|
+
const canvas = stage.platform.canvas;
|
|
364
|
+
const shader = this.props.shader;
|
|
365
|
+
stage.shManager.useShader(shader.program);
|
|
366
|
+
shader.program.bindRenderOp(this);
|
|
367
|
+
const clippingRect = this.clippingRect;
|
|
368
|
+
// Clipping
|
|
369
|
+
if (clippingRect.valid === true) {
|
|
370
|
+
const pixelRatio = this.parentHasRenderTexture ? 1 : stage.pixelRatio;
|
|
371
|
+
const clipX = Math.round(clippingRect.x * pixelRatio);
|
|
372
|
+
const clipWidth = Math.round(clippingRect.w * pixelRatio);
|
|
373
|
+
const clipHeight = Math.round(clippingRect.h * pixelRatio);
|
|
374
|
+
let clipY = Math.round(canvas.height - clipHeight - clippingRect.y * pixelRatio);
|
|
375
|
+
// if parent has render texture, we need to adjust the scissor rect
|
|
376
|
+
// to be relative to the parent's framebuffer
|
|
377
|
+
if (this.parentHasRenderTexture) {
|
|
378
|
+
const parentFramebufferDimensions = this.parentFramebufferDimensions;
|
|
379
|
+
clipY =
|
|
380
|
+
parentFramebufferDimensions !== null
|
|
381
|
+
? parentFramebufferDimensions.h - this.props.h
|
|
382
|
+
: 0;
|
|
383
|
+
}
|
|
384
|
+
glw.setScissorTest(true);
|
|
385
|
+
glw.scissor(clipX, clipY, clipWidth, clipHeight);
|
|
386
|
+
}
|
|
387
|
+
else {
|
|
388
|
+
glw.setScissorTest(false);
|
|
389
|
+
}
|
|
390
|
+
// SDF rendering uses drawArrays with explicit triangle vertices (6 vertices per quad)
|
|
391
|
+
// Note: buffers should be bound by bindRenderOp -> bindBufferCollection
|
|
392
|
+
glw.drawArrays(glw.TRIANGLES, 0, 6 * this.numQuads);
|
|
393
|
+
}
|
|
312
394
|
set w(value) {
|
|
313
395
|
this.maxWidth = value;
|
|
314
396
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CoreTextNode.js","sourceRoot":"","sources":["../../../src/core/CoreTextNode.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CoreTextNode.js","sourceRoot":"","sources":["../../../src/core/CoreTextNode.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
import type { TextRenderer, TrFontProps } from './text-rendering/renderers/TextRenderer.js';
|
|
2
|
+
import { CoreNode, type CoreNodeProps } from './CoreNode.js';
|
|
3
|
+
import type { Stage } from './Stage.js';
|
|
4
|
+
import type { RectWithValid } from './lib/utils.js';
|
|
5
|
+
import type { TextBaseline, TextVerticalAlign } from './text-rendering/renderers/canvas/LightningTextTextureRenderer.js';
|
|
6
|
+
export declare enum CanvasTextUpdateType {
|
|
7
|
+
None = 0,
|
|
8
|
+
Text = 1,
|
|
9
|
+
Font = 2,
|
|
10
|
+
All = 4
|
|
11
|
+
}
|
|
12
|
+
export interface CoreTextNodeProps extends CoreNodeProps, TrFontProps {
|
|
13
|
+
/**
|
|
14
|
+
* Text to display
|
|
15
|
+
*
|
|
16
|
+
* @default ''
|
|
17
|
+
*/
|
|
18
|
+
text: string;
|
|
19
|
+
/**
|
|
20
|
+
* Text alignment
|
|
21
|
+
*
|
|
22
|
+
* @remarks
|
|
23
|
+
* Alignment of the text relative to it's contained bounds. For best results,
|
|
24
|
+
* use {@link contain} mode `'width'` or `'both'` and a set an explicit
|
|
25
|
+
* {@link width} for the text to be aligned within.
|
|
26
|
+
*
|
|
27
|
+
* @default 'left'
|
|
28
|
+
*/
|
|
29
|
+
textAlign: 'left' | 'center' | 'right';
|
|
30
|
+
/**
|
|
31
|
+
* Color of text
|
|
32
|
+
*
|
|
33
|
+
* @remarks
|
|
34
|
+
* The color value is a number in the format 0xRRGGBBAA, where RR is the red
|
|
35
|
+
* component, GG is the green component, BB is the blue component, and AA is
|
|
36
|
+
* the alpha component.
|
|
37
|
+
*
|
|
38
|
+
* @default 0xffffffff (opaque white)
|
|
39
|
+
*/
|
|
40
|
+
color: number;
|
|
41
|
+
/**
|
|
42
|
+
* Contain mode for text
|
|
43
|
+
*
|
|
44
|
+
* @remarks
|
|
45
|
+
* The contain mode determines how the text is contained within the bounds
|
|
46
|
+
* of the Text Node. The default value is `'none'`, which means that the
|
|
47
|
+
* Text Renderer will not constrain the text in any way. `'width'` mode will
|
|
48
|
+
* constrain the text to the set width wrapping lines as necessary, and
|
|
49
|
+
* `'both'` mode will constrain the text to both the set width and height
|
|
50
|
+
* wrapping lines and truncating text as necessary.
|
|
51
|
+
*
|
|
52
|
+
* ## Text Auto-size Behavior
|
|
53
|
+
* Depending on the set contain mode, after the text 'loaded' event is emitted,
|
|
54
|
+
* the text node may have either its {@link width} and {@link height} updated
|
|
55
|
+
* to match the rendered size of the text.
|
|
56
|
+
*
|
|
57
|
+
* When contain mode is 'none', both the {@link width} and {@link height}
|
|
58
|
+
* properties are updated.
|
|
59
|
+
*
|
|
60
|
+
* When contain mode is 'width', only the {@link height} property is updated.
|
|
61
|
+
*
|
|
62
|
+
* When contain mode is 'both', neither property is updated.
|
|
63
|
+
*
|
|
64
|
+
* @default 'none'
|
|
65
|
+
*/
|
|
66
|
+
contain: 'none' | 'width' | 'both';
|
|
67
|
+
/**
|
|
68
|
+
* Letter spacing for text (in pixels)
|
|
69
|
+
*
|
|
70
|
+
* @remarks
|
|
71
|
+
* This property sets additional (or reduced, if value is negative) spacing
|
|
72
|
+
* between characters in the text.
|
|
73
|
+
*
|
|
74
|
+
* @default 0
|
|
75
|
+
*/
|
|
76
|
+
letterSpacing: number;
|
|
77
|
+
/**
|
|
78
|
+
* Line height for text (in pixels)
|
|
79
|
+
*
|
|
80
|
+
* @remarks
|
|
81
|
+
* This property sets the height of each line. If set to `undefined`, the
|
|
82
|
+
* line height will be calculated based on the font and font size to be the
|
|
83
|
+
* minimal height required to completely contain a line of text.
|
|
84
|
+
*
|
|
85
|
+
* See: https://github.com/lightning-js/renderer/issues/170
|
|
86
|
+
*
|
|
87
|
+
* @default `undefined`
|
|
88
|
+
*/
|
|
89
|
+
lineHeight: number | undefined;
|
|
90
|
+
/**
|
|
91
|
+
* Max lines for text
|
|
92
|
+
*
|
|
93
|
+
* @remarks
|
|
94
|
+
* This property sets max number of lines of a text paragraph.
|
|
95
|
+
* Not yet implemented in the SDF renderer.
|
|
96
|
+
*
|
|
97
|
+
* @default 0
|
|
98
|
+
*/
|
|
99
|
+
maxLines: number;
|
|
100
|
+
/**
|
|
101
|
+
* Baseline for text
|
|
102
|
+
*
|
|
103
|
+
* @remarks
|
|
104
|
+
* This property sets the text baseline used when drawing text.
|
|
105
|
+
* Not yet implemented in the SDF renderer.
|
|
106
|
+
*
|
|
107
|
+
* @default alphabetic
|
|
108
|
+
*/
|
|
109
|
+
textBaseline: TextBaseline;
|
|
110
|
+
/**
|
|
111
|
+
* Vertical Align for text when lineHeight > fontSize
|
|
112
|
+
*
|
|
113
|
+
* @remarks
|
|
114
|
+
* This property sets the vertical align of the text.
|
|
115
|
+
* Not yet implemented in the SDF renderer.
|
|
116
|
+
*
|
|
117
|
+
* @default middle
|
|
118
|
+
*/
|
|
119
|
+
verticalAlign: TextVerticalAlign;
|
|
120
|
+
/**
|
|
121
|
+
* Overflow Suffix for text
|
|
122
|
+
*
|
|
123
|
+
* @remarks
|
|
124
|
+
* The suffix to be added when text is cropped due to overflow.
|
|
125
|
+
* Not yet implemented in the SDF renderer.
|
|
126
|
+
*
|
|
127
|
+
* @default "..."
|
|
128
|
+
*/
|
|
129
|
+
overflowSuffix: string;
|
|
130
|
+
/**
|
|
131
|
+
* Font Style String
|
|
132
|
+
*
|
|
133
|
+
* @remarks
|
|
134
|
+
* This property sets the font style string used when drawing text.
|
|
135
|
+
*
|
|
136
|
+
* @default "normal normal normal"
|
|
137
|
+
*/
|
|
138
|
+
fontStyleString?: string;
|
|
139
|
+
/**
|
|
140
|
+
* Word wrap
|
|
141
|
+
*
|
|
142
|
+
* @remarks
|
|
143
|
+
* This property sets the word wrap mode for the text.
|
|
144
|
+
*
|
|
145
|
+
* @default true
|
|
146
|
+
*/
|
|
147
|
+
wordWrap: boolean;
|
|
148
|
+
/**
|
|
149
|
+
* Debug mode for text
|
|
150
|
+
*
|
|
151
|
+
* @remarks
|
|
152
|
+
* This property sets the debug mode for the text.
|
|
153
|
+
* Not yet implemented in the SDF renderer.
|
|
154
|
+
*
|
|
155
|
+
* @default false
|
|
156
|
+
*/
|
|
157
|
+
debug?: boolean;
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* An CoreNode in the Renderer scene graph that renders text using Canvas 2D.
|
|
161
|
+
*
|
|
162
|
+
* @remarks
|
|
163
|
+
* A Text Node is the second graphical building block of the Renderer scene
|
|
164
|
+
* graph. It renders text using a specific text renderer that is automatically
|
|
165
|
+
* chosen based on the font requested and what type of fonts are installed
|
|
166
|
+
* into an app.
|
|
167
|
+
*
|
|
168
|
+
* The text renderer can be overridden by setting the `textRendererOverride`
|
|
169
|
+
*
|
|
170
|
+
* The `texture` and `shader` properties are managed by loaded text renderer and
|
|
171
|
+
* should not be set directly.
|
|
172
|
+
*
|
|
173
|
+
* For non-text rendering, see {@link CoreNode}.
|
|
174
|
+
*/
|
|
175
|
+
export declare class CoreTextCanvasNode extends CoreNode {
|
|
176
|
+
private textUpdateType;
|
|
177
|
+
private textProps;
|
|
178
|
+
private textRenderer;
|
|
179
|
+
private fontLoaded;
|
|
180
|
+
constructor(stage: Stage, props: CoreTextNodeProps, textRenderer: TextRenderer);
|
|
181
|
+
setTextUpdateType(updateType: CanvasTextUpdateType): void;
|
|
182
|
+
update(delta: number, parentClippingRect: RectWithValid): void;
|
|
183
|
+
updateText(): void;
|
|
184
|
+
updateFont(): Promise<void>;
|
|
185
|
+
get text(): string;
|
|
186
|
+
set text(value: string);
|
|
187
|
+
get fontSize(): CoreTextNodeProps['fontSize'];
|
|
188
|
+
set fontSize(value: CoreTextNodeProps['fontSize']);
|
|
189
|
+
get fontFamily(): CoreTextNodeProps['fontFamily'];
|
|
190
|
+
set fontFamily(value: CoreTextNodeProps['fontFamily']);
|
|
191
|
+
get fontStretch(): CoreTextNodeProps['fontStretch'];
|
|
192
|
+
set fontStretch(value: CoreTextNodeProps['fontStretch']);
|
|
193
|
+
get fontStyle(): CoreTextNodeProps['fontStyle'];
|
|
194
|
+
set fontStyle(value: CoreTextNodeProps['fontStyle']);
|
|
195
|
+
get fontWeight(): CoreTextNodeProps['fontWeight'];
|
|
196
|
+
set fontWeight(value: CoreTextNodeProps['fontWeight']);
|
|
197
|
+
get textAlign(): CoreTextNodeProps['textAlign'];
|
|
198
|
+
set textAlign(value: CoreTextNodeProps['textAlign']);
|
|
199
|
+
get contain(): CoreTextNodeProps['contain'];
|
|
200
|
+
set contain(value: CoreTextNodeProps['contain']);
|
|
201
|
+
get letterSpacing(): CoreTextNodeProps['letterSpacing'];
|
|
202
|
+
set letterSpacing(value: CoreTextNodeProps['letterSpacing']);
|
|
203
|
+
get lineHeight(): CoreTextNodeProps['lineHeight'];
|
|
204
|
+
set lineHeight(value: CoreTextNodeProps['lineHeight']);
|
|
205
|
+
get maxLines(): CoreTextNodeProps['maxLines'];
|
|
206
|
+
set maxLines(value: CoreTextNodeProps['maxLines']);
|
|
207
|
+
get textBaseline(): CoreTextNodeProps['textBaseline'];
|
|
208
|
+
set textBaseline(value: CoreTextNodeProps['textBaseline']);
|
|
209
|
+
get verticalAlign(): CoreTextNodeProps['verticalAlign'];
|
|
210
|
+
set verticalAlign(value: CoreTextNodeProps['verticalAlign']);
|
|
211
|
+
get overflowSuffix(): CoreTextNodeProps['overflowSuffix'];
|
|
212
|
+
set overflowSuffix(value: CoreTextNodeProps['overflowSuffix']);
|
|
213
|
+
get debug(): CoreTextNodeProps['debug'];
|
|
214
|
+
set debug(value: CoreTextNodeProps['debug']);
|
|
215
|
+
}
|