@flighthq/render-gl 0.5.1-next.1069.554a2ac → 0.5.1-next.1201.9b49dee

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/README.md +2 -2
  2. package/dist/contract.d.ts +1 -3
  3. package/dist/contract.d.ts.map +1 -1
  4. package/dist/contract.js +1 -3
  5. package/dist/contract.js.map +1 -1
  6. package/dist/enableGlRenderStateGuards.js +2 -2
  7. package/dist/enableGlRenderStateGuards.js.map +1 -1
  8. package/dist/glCubeRenderTarget.d.ts +5 -5
  9. package/dist/glCubeRenderTarget.d.ts.map +1 -1
  10. package/dist/glCubeRenderTarget.js +16 -13
  11. package/dist/glCubeRenderTarget.js.map +1 -1
  12. package/dist/glFullscreenPass.d.ts +4 -3
  13. package/dist/glFullscreenPass.d.ts.map +1 -1
  14. package/dist/glFullscreenPass.js +152 -23
  15. package/dist/glFullscreenPass.js.map +1 -1
  16. package/dist/glLinearToSrgbPass.d.ts +2 -2
  17. package/dist/glLinearToSrgbPass.d.ts.map +1 -1
  18. package/dist/glLinearToSrgbPass.js.map +1 -1
  19. package/dist/glPresentRenderTarget.d.ts +2 -2
  20. package/dist/glPresentRenderTarget.d.ts.map +1 -1
  21. package/dist/glPresentRenderTarget.js.map +1 -1
  22. package/dist/glReadback.d.ts +2 -2
  23. package/dist/glReadback.d.ts.map +1 -1
  24. package/dist/glReadback.js +1 -1
  25. package/dist/glReadback.js.map +1 -1
  26. package/dist/glRenderPass.d.ts +6 -3
  27. package/dist/glRenderPass.d.ts.map +1 -1
  28. package/dist/glRenderPass.js +105 -86
  29. package/dist/glRenderPass.js.map +1 -1
  30. package/dist/glRenderState.d.ts +1 -2
  31. package/dist/glRenderState.d.ts.map +1 -1
  32. package/dist/glRenderState.js +53 -46
  33. package/dist/glRenderState.js.map +1 -1
  34. package/dist/glRenderTarget.d.ts +17 -16
  35. package/dist/glRenderTarget.d.ts.map +1 -1
  36. package/dist/glRenderTarget.js +38 -26
  37. package/dist/glRenderTarget.js.map +1 -1
  38. package/dist/glRenderTargetPool.d.ts +9 -9
  39. package/dist/glRenderTargetPool.d.ts.map +1 -1
  40. package/dist/glRenderTargetPool.js +10 -12
  41. package/dist/glRenderTargetPool.js.map +1 -1
  42. package/dist/glRenderTexture.d.ts +2 -2
  43. package/dist/glRenderTexture.d.ts.map +1 -1
  44. package/dist/glRenderTexture.js +11 -13
  45. package/dist/glRenderTexture.js.map +1 -1
  46. package/dist/glRenderTexturePool.js +3 -5
  47. package/dist/glRenderTexturePool.js.map +1 -1
  48. package/dist/glSkinPaletteTexture.js +8 -2
  49. package/dist/glSkinPaletteTexture.js.map +1 -1
  50. package/dist/glTestHelper.d.ts +0 -1
  51. package/dist/glTestHelper.d.ts.map +1 -1
  52. package/dist/glTestHelper.js +0 -1
  53. package/dist/glTestHelper.js.map +1 -1
  54. package/dist/index.d.ts +1 -1
  55. package/dist/index.d.ts.map +1 -1
  56. package/dist/index.js +1 -1
  57. package/dist/index.js.map +1 -1
  58. package/package.json +11 -11
  59. package/src/enableGlRenderStateGuards.test.ts +2 -4
  60. package/src/glContext.test.ts +3 -52
  61. package/src/glCubeRenderTarget.test.ts +10 -8
  62. package/src/glDraw.test.ts +4 -16
  63. package/src/glFullscreenPass.test.ts +145 -41
  64. package/src/glLinearToSrgbPass.test.ts +8 -5
  65. package/src/glPresentRenderTarget.test.ts +3 -5
  66. package/src/glReadback.test.ts +3 -3
  67. package/src/glRenderPass.test.ts +228 -55
  68. package/src/glRenderState.test.ts +106 -165
  69. package/src/glRenderTarget.test.ts +134 -99
  70. package/src/glRenderTargetPool.test.ts +69 -76
  71. package/src/glRenderTexture.test.ts +58 -31
  72. package/src/glSkinPaletteTexture.test.ts +9 -0
  73. package/src/glTextureResolver.test.ts +5 -1
  74. package/dist/glBackground.d.ts +0 -3
  75. package/dist/glBackground.d.ts.map +0 -1
  76. package/dist/glBackground.js +0 -19
  77. package/dist/glBackground.js.map +0 -1
  78. package/dist/glContext.d.ts +0 -3
  79. package/dist/glContext.d.ts.map +0 -1
  80. package/dist/glContext.js +0 -16
  81. package/dist/glContext.js.map +0 -1
  82. package/src/glBackground.test.ts +0 -68
@@ -4,7 +4,17 @@ import { explainRenderTargetAxes, resolveRenderTargetDescriptor } from '@flighth
4
4
  import { bindGlTextureRealization, drawGlQuad, useGlProgram } from './glDraw';
5
5
  import { getGlRenderStateRuntime } from './glRenderState';
6
6
  import { setGlAttributes, setGlBaseUniforms, setGlMatrixFromTransform } from './glShader';
7
- export function createGlRenderTarget(state, descriptor, formatPolicy = 'preferred') {
7
+ export function createGlScreenRenderTarget(gl) {
8
+ const target = allocateEntity();
9
+ target.gl = gl;
10
+ target.framebuffer = null;
11
+ target.width = gl.drawingBufferWidth;
12
+ target.height = gl.drawingBufferHeight;
13
+ target.colorAttachments = 1;
14
+ target.colorSpace = 'srgb';
15
+ return finishEntity(target);
16
+ }
17
+ export function createGlTextureRenderTarget(state, descriptor, formatPolicy = 'preferred') {
8
18
  const runtime = getGlRenderStateRuntime(state);
9
19
  const gl = state.gl;
10
20
  const requested = resolveRenderTargetDescriptor(descriptor);
@@ -27,9 +37,10 @@ export function createGlRenderTarget(state, descriptor, formatPolicy = 'preferre
27
37
  colorRenderbuffers: [],
28
38
  depthStencilRenderbuffer: null,
29
39
  };
30
- const texture = allocateGlRenderTargetStorage(state, storage);
40
+ const texture = allocateGlTextureRenderTargetStorage(state, storage);
31
41
  const target = allocateEntity();
32
- initializeGlRenderTarget(target, requested, storage, texture);
42
+ target.gl = gl;
43
+ initializeGlTextureRenderTarget(target, requested, storage, texture);
33
44
  finishEntity(target);
34
45
  gl.bindFramebuffer(gl.FRAMEBUFFER, runtime.currentFramebuffer);
35
46
  bindGlTextureRealization(state, null);
@@ -45,13 +56,17 @@ export function declareGlRenderTargetColorSpace(state, colorSpace) {
45
56
  if (target == null)
46
57
  return false;
47
58
  target.colorSpace = colorSpace;
48
- if ('requestedAxes' in target)
49
- target.requestedAxes = { ...target.requestedAxes, colorSpace };
59
+ if ('requestedAxes' in target) {
60
+ target.requestedAxes = {
61
+ ...target.requestedAxes,
62
+ colorSpace,
63
+ };
64
+ }
50
65
  return true;
51
66
  }
52
67
  /** Deletes the GL resources owned by `target`. The target object must not be used after this call. */
53
- export function destroyGlRenderTarget(state, target) {
54
- const gl = state.gl;
68
+ export function destroyGlTextureRenderTarget(target) {
69
+ const gl = target.gl;
55
70
  gl.deleteFramebuffer(target.framebuffer);
56
71
  if (target.resolveFramebuffer)
57
72
  gl.deleteFramebuffer(target.resolveFramebuffer);
@@ -72,13 +87,14 @@ export function destroyGlRenderTarget(state, target) {
72
87
  * Render-target textures are stored with GL's bottom-left origin, so the quad's V coordinates are
73
88
  * flipped (`v0=1, v1=0`) so the result composites upright.
74
89
  */
75
- export function drawGlRenderTargetResult(state, renderProxy, target, transform) {
90
+ export function drawGlTextureRenderTargetResult(pass, renderProxy, target, transform) {
76
91
  if (target.width <= 0 || target.height <= 0)
77
92
  return;
93
+ const state = pass.state;
78
94
  const runtime = getGlRenderStateRuntime(state);
79
95
  useGlProgram(state);
80
96
  state.applyBlendMode?.(state, renderProxy.blendMode);
81
- const gl = state.gl;
97
+ const gl = pass.gl;
82
98
  const { matrixArray } = runtime;
83
99
  const locations = runtime.context.currentShader.locations;
84
100
  bindGlTextureRealization(state, { straightAlpha: false, texture: target.texture });
@@ -90,16 +106,16 @@ export function drawGlRenderTargetResult(state, renderProxy, target, transform)
90
106
  releaseMatrix(quadTransform);
91
107
  drawGlQuad(state, 0, 0, target.width, target.height, 0, 1, 1, 0);
92
108
  }
93
- export function explainGlRenderTarget(target) {
109
+ export function explainGlTextureRenderTarget(target) {
94
110
  const requested = copyRenderTargetAxes(target.requestedAxes);
95
- const effective = getGlRenderTargetAxes(target);
111
+ const effective = getGlTextureRenderTargetAxes(target);
96
112
  return {
97
113
  differences: explainRenderTargetAxes(requested, effective),
98
114
  effective,
99
115
  requested,
100
116
  };
101
117
  }
102
- export function initializeGlRenderTarget(target, requested, storage, texture) {
118
+ export function initializeGlTextureRenderTarget(target, requested, storage, texture) {
103
119
  target.requestedAxes = copyRenderTargetAxes(requested);
104
120
  target.width = storage.width;
105
121
  target.height = storage.height;
@@ -108,8 +124,6 @@ export function initializeGlRenderTarget(target, requested, storage, texture) {
108
124
  target.colorFormats = [...storage.colorFormats];
109
125
  target.depth = storage.depth;
110
126
  target.colorSpace = storage.colorSpace;
111
- target.clearColors = [...requested.clearColors];
112
- target.clearDepth = requested.clearDepth;
113
127
  target.sampleCount = storage.sampleCount;
114
128
  target.framebuffer = storage.framebuffer;
115
129
  target.resolveFramebuffer = storage.resolveFramebuffer;
@@ -123,13 +137,11 @@ export function isGlRenderTargetFormatSupported(state, format) {
123
137
  return isGlRenderTargetFormatSupportedByContext(state.gl, format);
124
138
  }
125
139
  /** Reallocates the storage backing `target` to the new pixel dimensions, preserving its axes. */
126
- export function resizeGlRenderTarget(state, target, width, height) {
140
+ export function resizeGlTextureRenderTarget(state, target, width, height) {
127
141
  const requested = resolveRenderTargetDescriptor({
128
142
  ...target.requestedAxes,
129
143
  width,
130
144
  height,
131
- clearColors: target.clearColors,
132
- clearDepth: target.clearDepth,
133
145
  });
134
146
  const effective = resolveEffectiveGlRenderTargetAxes(state.gl, requested, 'preferred');
135
147
  if (effective.width === target.width && effective.height === target.height)
@@ -152,8 +164,8 @@ export function resizeGlRenderTarget(state, target, width, height) {
152
164
  target.depthStencilRenderbuffer = null;
153
165
  target.resolveFramebuffer = null;
154
166
  target.requestedAxes = copyRenderTargetAxes(requested);
155
- setGlRenderTargetAxes(target, effective);
156
- target.texture = allocateGlRenderTargetStorage(state, target);
167
+ setGlTextureRenderTargetAxes(target, effective);
168
+ target.texture = allocateGlTextureRenderTargetStorage(state, target);
157
169
  const runtime = getGlRenderStateRuntime(state);
158
170
  // Storage allocation binds the target while attaching its new textures/renderbuffers. Match the
159
171
  // creation contract by restoring the caller's tracked framebuffer before returning; otherwise a
@@ -161,12 +173,15 @@ export function resizeGlRenderTarget(state, target, width, height) {
161
173
  gl.bindFramebuffer(gl.FRAMEBUFFER, runtime.currentFramebuffer);
162
174
  bindGlTextureRealization(state, null);
163
175
  }
176
+ export function resolveGlRenderTargetAxes(state, descriptor, formatPolicy = 'preferred') {
177
+ return resolveEffectiveGlRenderTargetAxes(state.gl, resolveRenderTargetDescriptor(descriptor), formatPolicy);
178
+ }
164
179
  /**
165
180
  * Resolves an MSAA target's multisample framebuffer into its single-sample resolve texture(s) via
166
181
  * blitFramebuffer. No-op when sampleCount === 1. Call after the scene is drawn into the target and
167
182
  * before sampling `target.texture`/`target.textures`.
168
183
  */
169
- export function resolveGlRenderTarget(state, target) {
184
+ export function resolveGlTextureRenderTarget(state, target) {
170
185
  if (target.sampleCount <= 1 || target.resolveFramebuffer === null)
171
186
  return;
172
187
  const runtime = getGlRenderStateRuntime(state);
@@ -202,12 +217,9 @@ export function resolveGlRenderTarget(state, target) {
202
217
  // stale resolve texture without this; the cost is one flush per frame, only when MSAA is enabled.
203
218
  gl.flush();
204
219
  }
205
- export function resolveGlRenderTargetAxes(state, descriptor, formatPolicy = 'preferred') {
206
- return resolveEffectiveGlRenderTargetAxes(state.gl, resolveRenderTargetDescriptor(descriptor), formatPolicy);
207
- }
208
220
  // Allocates color textures/renderbuffers (and the resolve FBO for MSAA) plus optional depth into the
209
221
  // already-created `target.framebuffer`. Shared by create and resize.
210
- function allocateGlRenderTargetStorage(state, target) {
222
+ function allocateGlTextureRenderTargetStorage(state, target) {
211
223
  const gl = state.gl;
212
224
  const { width: w, height: h, sampleCount, colorAttachments: attachments, colorFormats, depth } = target;
213
225
  const multisampled = sampleCount > 1;
@@ -312,7 +324,7 @@ function copyRenderTargetAxes(axes) {
312
324
  colorSpace: axes.colorSpace,
313
325
  };
314
326
  }
315
- function getGlRenderTargetAxes(target) {
327
+ function getGlTextureRenderTargetAxes(target) {
316
328
  return {
317
329
  width: target.width,
318
330
  height: target.height,
@@ -349,7 +361,7 @@ function resolveEffectiveGlRenderTargetAxes(gl, requested, formatPolicy) {
349
361
  colorSpace: requested.colorSpace,
350
362
  };
351
363
  }
352
- function setGlRenderTargetAxes(target, axes) {
364
+ function setGlTextureRenderTargetAxes(target, axes) {
353
365
  target.width = axes.width;
354
366
  target.height = axes.height;
355
367
  target.format = axes.format;
@@ -1 +1 @@
1
- {"version":3,"file":"glRenderTarget.js","sourceRoot":"","sources":["../src/glRenderTarget.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"glRenderTarget.js","sourceRoot":"","sources":["../src/glRenderTarget.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
- import type { EntityConstruction, GlRenderState, GlRenderTarget, GlRenderTargetPool, RenderTargetDescriptor, RenderTargetFormatPolicy } from '@flighthq/types/contract';
2
- export declare function acquireGlRenderTarget(state: GlRenderState, pool: GlRenderTargetPool, descriptor: Readonly<RenderTargetDescriptor>): GlRenderTarget;
3
- export declare function acquireGlRenderTarget(state: GlRenderState, pool: GlRenderTargetPool, descriptor: Readonly<RenderTargetDescriptor>, formatPolicy: 'preferred'): GlRenderTarget;
4
- export declare function acquireGlRenderTarget(state: GlRenderState, pool: GlRenderTargetPool, descriptor: Readonly<RenderTargetDescriptor>, formatPolicy: 'required'): GlRenderTarget | null;
5
- export declare function acquireGlRenderTarget(state: GlRenderState, pool: GlRenderTargetPool, descriptor: Readonly<RenderTargetDescriptor>, formatPolicy: RenderTargetFormatPolicy): GlRenderTarget | null;
6
- export declare function createGlRenderTargetPool(): GlRenderTargetPool;
7
- export declare function destroyGlRenderTargetPool(state: GlRenderState, pool: GlRenderTargetPool): void;
8
- export declare function initializeGlRenderTargetPool(out: EntityConstruction<GlRenderTargetPool>): void;
9
- export declare function releaseGlRenderTarget(pool: GlRenderTargetPool, target: GlRenderTarget): void;
1
+ import type { EntityConstruction, GlRenderState, GlTextureRenderTarget, GlTextureRenderTargetPool, RenderTargetDescriptor, RenderTargetFormatPolicy } from '@flighthq/types/contract';
2
+ export declare function acquireGlTextureRenderTarget(state: GlRenderState, pool: GlTextureRenderTargetPool, descriptor: Readonly<RenderTargetDescriptor>): GlTextureRenderTarget;
3
+ export declare function acquireGlTextureRenderTarget(state: GlRenderState, pool: GlTextureRenderTargetPool, descriptor: Readonly<RenderTargetDescriptor>, formatPolicy: 'preferred'): GlTextureRenderTarget;
4
+ export declare function acquireGlTextureRenderTarget(state: GlRenderState, pool: GlTextureRenderTargetPool, descriptor: Readonly<RenderTargetDescriptor>, formatPolicy: 'required'): GlTextureRenderTarget | null;
5
+ export declare function acquireGlTextureRenderTarget(state: GlRenderState, pool: GlTextureRenderTargetPool, descriptor: Readonly<RenderTargetDescriptor>, formatPolicy: RenderTargetFormatPolicy): GlTextureRenderTarget | null;
6
+ export declare function createGlTextureRenderTargetPool(): GlTextureRenderTargetPool;
7
+ export declare function destroyGlTextureRenderTargetPool(pool: GlTextureRenderTargetPool): void;
8
+ export declare function initializeGlTextureRenderTargetPool(out: EntityConstruction<GlTextureRenderTargetPool>): void;
9
+ export declare function releaseGlTextureRenderTarget(pool: GlTextureRenderTargetPool, target: GlTextureRenderTarget): void;
10
10
  //# sourceMappingURL=glRenderTargetPool.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"glRenderTargetPool.d.ts","sourceRoot":"","sources":["../src/glRenderTargetPool.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,kBAAkB,EAElB,sBAAsB,EACtB,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAclC,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,kBAAkB,EACxB,UAAU,EAAE,QAAQ,CAAC,sBAAsB,CAAC,GAC3C,cAAc,CAAC;AAClB,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,kBAAkB,EACxB,UAAU,EAAE,QAAQ,CAAC,sBAAsB,CAAC,EAC5C,YAAY,EAAE,WAAW,GACxB,cAAc,CAAC;AAClB,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,kBAAkB,EACxB,UAAU,EAAE,QAAQ,CAAC,sBAAsB,CAAC,EAC5C,YAAY,EAAE,UAAU,GACvB,cAAc,GAAG,IAAI,CAAC;AACzB,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,kBAAkB,EACxB,UAAU,EAAE,QAAQ,CAAC,sBAAsB,CAAC,EAC5C,YAAY,EAAE,wBAAwB,GACrC,cAAc,GAAG,IAAI,CAAC;AAkCzB,wBAAgB,wBAAwB,IAAI,kBAAkB,CAI7D;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAG9F;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,kBAAkB,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAE9F;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,CAE5F"}
1
+ {"version":3,"file":"glRenderTargetPool.d.ts","sourceRoot":"","sources":["../src/glRenderTargetPool.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,kBAAkB,EAClB,aAAa,EACb,qBAAqB,EACrB,yBAAyB,EAEzB,sBAAsB,EACtB,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAclC,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,yBAAyB,EAC/B,UAAU,EAAE,QAAQ,CAAC,sBAAsB,CAAC,GAC3C,qBAAqB,CAAC;AACzB,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,yBAAyB,EAC/B,UAAU,EAAE,QAAQ,CAAC,sBAAsB,CAAC,EAC5C,YAAY,EAAE,WAAW,GACxB,qBAAqB,CAAC;AACzB,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,yBAAyB,EAC/B,UAAU,EAAE,QAAQ,CAAC,sBAAsB,CAAC,EAC5C,YAAY,EAAE,UAAU,GACvB,qBAAqB,GAAG,IAAI,CAAC;AAChC,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,yBAAyB,EAC/B,UAAU,EAAE,QAAQ,CAAC,sBAAsB,CAAC,EAC5C,YAAY,EAAE,wBAAwB,GACrC,qBAAqB,GAAG,IAAI,CAAC;AAgChC,wBAAgB,+BAA+B,IAAI,yBAAyB,CAI3E;AAED,wBAAgB,gCAAgC,CAAC,IAAI,EAAE,yBAAyB,GAAG,IAAI,CAGtF;AAED,wBAAgB,mCAAmC,CAAC,GAAG,EAAE,kBAAkB,CAAC,yBAAyB,CAAC,GAAG,IAAI,CAE5G;AAED,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,yBAAyB,EAAE,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAEjH"}
@@ -1,8 +1,8 @@
1
1
  import { allocateEntity, finishEntity } from '@flighthq/entity/contract';
2
2
  import { resolveRenderTargetDescriptor } from '@flighthq/render/contract';
3
3
  import { clearGlRenderTarget } from './glFullscreenPass';
4
- import { createGlRenderTarget, destroyGlRenderTarget, resolveGlRenderTargetAxes } from './glRenderTarget';
5
- export function acquireGlRenderTarget(state, pool, descriptor, formatPolicy = 'preferred') {
4
+ import { createGlTextureRenderTarget, destroyGlTextureRenderTarget, resolveGlRenderTargetAxes } from './glRenderTarget';
5
+ export function acquireGlTextureRenderTarget(state, pool, descriptor, formatPolicy = 'preferred') {
6
6
  const requested = resolveRenderTargetDescriptor(descriptor);
7
7
  const effective = resolveGlRenderTargetAxes(state, requested, formatPolicy);
8
8
  if (!effective)
@@ -21,28 +21,26 @@ export function acquireGlRenderTarget(state, pool, descriptor, formatPolicy = 'p
21
21
  depth: requested.depth,
22
22
  colorSpace: requested.colorSpace,
23
23
  };
24
- candidate.clearColors = [...requested.clearColors];
25
- candidate.clearDepth = requested.clearDepth;
26
- clearGlRenderTarget(state, candidate);
24
+ clearGlRenderTarget(candidate, { color: [0, 0, 0, 0] });
27
25
  return candidate;
28
26
  }
29
27
  }
30
- return createGlRenderTarget(state, descriptor, formatPolicy);
28
+ return createGlTextureRenderTarget(state, descriptor, formatPolicy);
31
29
  }
32
- export function createGlRenderTargetPool() {
30
+ export function createGlTextureRenderTargetPool() {
33
31
  const out = allocateEntity();
34
- initializeGlRenderTargetPool(out);
32
+ initializeGlTextureRenderTargetPool(out);
35
33
  return finishEntity(out);
36
34
  }
37
- export function destroyGlRenderTargetPool(state, pool) {
35
+ export function destroyGlTextureRenderTargetPool(pool) {
38
36
  for (const target of pool.free)
39
- destroyGlRenderTarget(state, target);
37
+ destroyGlTextureRenderTarget(target);
40
38
  pool.free.length = 0;
41
39
  }
42
- export function initializeGlRenderTargetPool(out) {
40
+ export function initializeGlTextureRenderTargetPool(out) {
43
41
  out.free = [];
44
42
  }
45
- export function releaseGlRenderTarget(pool, target) {
43
+ export function releaseGlTextureRenderTarget(pool, target) {
46
44
  pool.free.push(target);
47
45
  }
48
46
  function matchesGlRenderTargetAxes(target, axes) {
@@ -1 +1 @@
1
- {"version":3,"file":"glRenderTargetPool.js","sourceRoot":"","sources":["../src/glRenderTargetPool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"glRenderTargetPool.js","sourceRoot":"","sources":["../src/glRenderTargetPool.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { GlRenderState, GlRenderTextureEntry, GlRenderTextureExplanation, GlRenderTextureGuard, RenderTexture, SamplerLike, TextureColorSpace } from '@flighthq/types/contract';
1
+ import type { GlRenderPass, GlRenderState, GlRenderTextureEntry, GlRenderTextureExplanation, GlRenderTextureGuard, RenderTargetClear, RenderTexture, SamplerLike, TextureColorSpace } from '@flighthq/types/contract';
2
2
  export declare function bindGlRenderTexture(state: GlRenderState, renderTexture: Readonly<RenderTexture>, sampler?: Readonly<SamplerLike> | null): WebGLTexture | null;
3
3
  /** Clears a RenderTexture to transparent, publishes it as ready, and restores the caller's GL state. */
4
4
  export declare function clearGlRenderTexture(state: GlRenderState, renderTexture: RenderTexture): void;
@@ -12,7 +12,7 @@ export declare function isGlRenderTextureReady(state: GlRenderState, renderTextu
12
12
  * Clears and populates a render texture's hidden GL target. The callback may issue any GL-backed
13
13
  * rendering commands; framebuffer and fixed-function state are restored even when it throws.
14
14
  */
15
- export declare function renderIntoGlRenderTexture(state: GlRenderState, renderTexture: RenderTexture, callback: (state: GlRenderState) => void): void;
15
+ export declare function renderIntoGlRenderTexture(state: GlRenderState, renderTexture: RenderTexture, callback: (pass: GlRenderPass) => void, clear: Readonly<RenderTargetClear>): void;
16
16
  export declare function setGlRenderTextureGuard(state: GlRenderState, guard: GlRenderTextureGuard | null): void;
17
17
  export declare function writeGlRenderTextureTarget<T>(state: GlRenderState, renderTexture: RenderTexture, callback: (target: GlRenderTextureEntry['target']) => T): T;
18
18
  //# sourceMappingURL=glRenderTexture.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"glRenderTexture.d.ts","sourceRoot":"","sources":["../src/glRenderTexture.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,EACpB,aAAa,EACb,WAAW,EACX,iBAAiB,EAClB,MAAM,0BAA0B,CAAC;AAYlC,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,EACtC,OAAO,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,GACrC,YAAY,GAAG,IAAI,CAarB;AAED,wGAAwG;AACxG,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,GAAG,IAAI,CAS7F;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,IAAI,CAMzG;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,GACrC,0BAA0B,CAQ5B;AAED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,GACrC,iBAAiB,CAEnB;AAID,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,GACrC,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,CAKjD;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,EACtC,MAAM,GAAE,UAAU,GAAG,YAA2B,GAC/C,IAAI,CAGN;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,OAAO,CAI5G;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,GACvC,IAAI,CAcN;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,oBAAoB,GAAG,IAAI,GAAG,IAAI,CAEtG;AAID,wBAAgB,0BAA0B,CAAC,CAAC,EAC1C,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,CAAC,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC,KAAK,CAAC,GACtD,CAAC,CAgBH"}
1
+ {"version":3,"file":"glRenderTexture.d.ts","sourceRoot":"","sources":["../src/glRenderTexture.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EACb,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,EACpB,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,iBAAiB,EAClB,MAAM,0BAA0B,CAAC;AAgBlC,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,EACtC,OAAO,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,GACrC,YAAY,GAAG,IAAI,CAarB;AAED,wGAAwG;AACxG,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,GAAG,IAAI,CAS7F;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,IAAI,CAMzG;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,GACrC,0BAA0B,CAQ5B;AAED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,GACrC,iBAAiB,CAEnB;AAID,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,GACrC,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,CAKjD;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,EACtC,MAAM,GAAE,UAAU,GAAG,YAA2B,GAC/C,IAAI,CAGN;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,OAAO,CAI5G;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,EACtC,KAAK,EAAE,QAAQ,CAAC,iBAAiB,CAAC,GACjC,IAAI,CAcN;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,oBAAoB,GAAG,IAAI,GAAG,IAAI,CAEtG;AAID,wBAAgB,0BAA0B,CAAC,CAAC,EAC1C,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,CAAC,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC,KAAK,CAAC,GACtD,CAAC,CAgBH"}
@@ -4,7 +4,7 @@ import { clearGlRenderTarget } from './glFullscreenPass';
4
4
  import { beginGlRenderPass, endGlRenderPass } from './glRenderPass';
5
5
  import { getGlRenderStateRuntime } from './glRenderState';
6
6
  import { popGlRenderState, pushGlRenderState } from './glRenderStateBracket';
7
- import { createGlRenderTarget, destroyGlRenderTarget, resizeGlRenderTarget } from './glRenderTarget';
7
+ import { createGlTextureRenderTarget, destroyGlTextureRenderTarget, resizeGlTextureRenderTarget, } from './glRenderTarget';
8
8
  // Binds a populated render texture's resolved color attachment directly. No pixels cross the CPU and
9
9
  // no upload occurs. An unrendered or currently-written texture binds the null sentinel and returns
10
10
  // null; optional guards can explain that otherwise silent fallback.
@@ -26,7 +26,7 @@ export function clearGlRenderTexture(state, renderTexture) {
26
26
  writeGlRenderTextureTarget(state, renderTexture, (target) => {
27
27
  pushGlRenderState(state);
28
28
  try {
29
- clearGlRenderTarget(state, target);
29
+ clearGlRenderTarget(target, { color: [0, 0, 0, 0] });
30
30
  }
31
31
  finally {
32
32
  popGlRenderState(state);
@@ -38,7 +38,7 @@ export function destroyGlRenderTexture(state, renderTexture) {
38
38
  const entry = entries?.get(renderTexture);
39
39
  if (entry === undefined)
40
40
  return;
41
- destroyGlRenderTarget(state, entry.target);
41
+ destroyGlTextureRenderTarget(entry.target);
42
42
  entries.delete(renderTexture);
43
43
  }
44
44
  export function explainGlRenderTexture(state, renderTexture) {
@@ -77,16 +77,16 @@ export function isGlRenderTextureReady(state, renderTexture) {
77
77
  * Clears and populates a render texture's hidden GL target. The callback may issue any GL-backed
78
78
  * rendering commands; framebuffer and fixed-function state are restored even when it throws.
79
79
  */
80
- export function renderIntoGlRenderTexture(state, renderTexture, callback) {
80
+ export function renderIntoGlRenderTexture(state, renderTexture, callback, clear) {
81
81
  writeGlRenderTextureTarget(state, renderTexture, (target) => {
82
82
  pushGlRenderState(state);
83
83
  try {
84
- beginGlRenderPass(state, target);
84
+ const pass = beginGlRenderPass(state, target, clear);
85
85
  try {
86
- callback(state);
86
+ callback(pass);
87
87
  }
88
88
  finally {
89
- endGlRenderPass(state);
89
+ endGlRenderPass(pass);
90
90
  }
91
91
  }
92
92
  finally {
@@ -124,14 +124,14 @@ function ensureEntry(state, renderTexture) {
124
124
  if (entry === undefined) {
125
125
  entry = {
126
126
  status: 'unrendered',
127
- target: createGlRenderTarget(state, descriptor),
127
+ target: createGlTextureRenderTarget(state, descriptor),
128
128
  };
129
129
  entries.set(renderTexture, entry);
130
130
  }
131
131
  else {
132
132
  const requested = resolveRenderTargetDescriptor(descriptor);
133
133
  if (matchesGlRenderTextureAllocation(entry.target, requested)) {
134
- resizeGlRenderTarget(state, entry.target, descriptor.width, descriptor.height);
134
+ resizeGlTextureRenderTarget(state, entry.target, descriptor.width, descriptor.height);
135
135
  entry.target.requestedAxes = {
136
136
  width: requested.width,
137
137
  height: requested.height,
@@ -142,12 +142,10 @@ function ensureEntry(state, renderTexture) {
142
142
  depth: requested.depth,
143
143
  colorSpace: requested.colorSpace,
144
144
  };
145
- entry.target.clearColors = [...requested.clearColors];
146
- entry.target.clearDepth = requested.clearDepth;
147
145
  }
148
146
  else {
149
- destroyGlRenderTarget(state, entry.target);
150
- entry.target = createGlRenderTarget(state, descriptor);
147
+ destroyGlTextureRenderTarget(entry.target);
148
+ entry.target = createGlTextureRenderTarget(state, descriptor);
151
149
  entry.status = 'unrendered';
152
150
  }
153
151
  }
@@ -1 +1 @@
1
- {"version":3,"file":"glRenderTexture.js","sourceRoot":"","sources":["../src/glRenderTexture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"glRenderTexture.js","sourceRoot":"","sources":["../src/glRenderTexture.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { allocateEntity, finishEntity } from '@flighthq/entity/contract';
2
2
  import { createRenderTexture, resetTextureUvTransform } from '@flighthq/texture/contract';
3
- import { createGlRenderTargetPool, destroyGlRenderTargetPool } from './glRenderTargetPool';
3
+ import { createGlTextureRenderTargetPool, destroyGlTextureRenderTargetPool } from './glRenderTargetPool';
4
4
  import { destroyGlRenderTexture, invalidateGlRenderTexture } from './glRenderTexture';
5
5
  export function acquireGlRenderTexture(state, pool, descriptor) {
6
6
  assertUsablePool(state, pool);
@@ -28,13 +28,13 @@ export function destroyGlRenderTexturePool(state, pool) {
28
28
  destroyGlRenderTexture(state, renderTexture);
29
29
  pool.free.length = 0;
30
30
  pool.leased.clear();
31
- destroyGlRenderTargetPool(state, pool.effectTargets);
31
+ destroyGlTextureRenderTargetPool(pool.effectTargets);
32
32
  pool.destroyed = true;
33
33
  }
34
34
  export function initializeGlRenderTexturePool(out) {
35
35
  out.context = null;
36
36
  out.destroyed = false;
37
- out.effectTargets = createGlRenderTargetPool();
37
+ out.effectTargets = createGlTextureRenderTargetPool();
38
38
  out.free = [];
39
39
  out.leased = new Set();
40
40
  }
@@ -72,8 +72,6 @@ function applyRenderTargetDescriptor(target, descriptor) {
72
72
  target.sampleCount = descriptor.sampleCount;
73
73
  target.depth = descriptor.depth;
74
74
  target.colorSpace = descriptor.colorSpace ?? 'srgb';
75
- target.clearColors = descriptor.clearColors === undefined ? undefined : [...descriptor.clearColors];
76
- target.clearDepth = descriptor.clearDepth;
77
75
  target.version = (target.version + 1) >>> 0;
78
76
  }
79
77
  function assertUsablePool(state, pool) {
@@ -1 +1 @@
1
- {"version":3,"file":"glRenderTexturePool.js","sourceRoot":"","sources":["../src/glRenderTexturePool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"glRenderTexturePool.js","sourceRoot":"","sources":["../src/glRenderTexturePool.ts"],"names":[],"mappings":"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"}
@@ -38,7 +38,7 @@ export function uploadGlSkinPaletteTexture(gl, palette, jointMatrices, jointCoun
38
38
  // Raw float data — premultiply must be off. The image upload path leaves it on (sticky state).
39
39
  gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, false);
40
40
  if (jointCount > palette.jointCapacity) {
41
- const maxWidth = gl.getParameter(gl.MAX_TEXTURE_SIZE);
41
+ const maxWidth = getGlPaletteTextureMaxWidth(gl);
42
42
  const width = Math.min(totalTexels, maxWidth);
43
43
  const height = Math.ceil(totalTexels / width);
44
44
  if (height === 1) {
@@ -55,7 +55,7 @@ export function uploadGlSkinPaletteTexture(gl, palette, jointMatrices, jointCoun
55
55
  palette.jointCapacity = jointCount;
56
56
  }
57
57
  else {
58
- const maxWidth = gl.getParameter(gl.MAX_TEXTURE_SIZE);
58
+ const maxWidth = getGlPaletteTextureMaxWidth(gl);
59
59
  const allocatedTexels = palette.jointCapacity * texelsPerJoint;
60
60
  const width = Math.min(allocatedTexels, maxWidth);
61
61
  if (totalTexels <= width) {
@@ -67,6 +67,12 @@ export function uploadGlSkinPaletteTexture(gl, palette, jointMatrices, jointCoun
67
67
  }
68
68
  }
69
69
  }
70
+ function getGlPaletteTextureMaxWidth(gl) {
71
+ const maxWidth = gl.getParameter(gl.MAX_TEXTURE_SIZE);
72
+ if (!(maxWidth > 0))
73
+ throw new Error('WebGL MAX_TEXTURE_SIZE must be greater than zero');
74
+ return maxWidth;
75
+ }
70
76
  function uploadGlPaletteTextureRows(gl, data, totalTexels, width, height) {
71
77
  for (let y = 0; y < height; y++) {
72
78
  const rowStart = y * width;
@@ -1 +1 @@
1
- {"version":3,"file":"glSkinPaletteTexture.js","sourceRoot":"","sources":["../src/glSkinPaletteTexture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"glSkinPaletteTexture.js","sourceRoot":"","sources":["../src/glSkinPaletteTexture.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,6 @@ import type { EntityConstruction, GlBitmapShader, GlRenderState } from '@flighth
2
2
  import type { GlShaderLocations } from '@flighthq/types/contract';
3
3
  export declare function createGlState(options?: {
4
4
  allowSmoothing?: boolean;
5
- backgroundColorRgba?: number[];
6
5
  }): {
7
6
  state: GlRenderState;
8
7
  gl: WebGL2RenderingContext;
@@ -1 +1 @@
1
- {"version":3,"file":"glTestHelper.d.ts","sourceRoot":"","sources":["../src/glTestHelper.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,aAAa,EAAwB,MAAM,0BAA0B,CAAC;AAExH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAKlE,wBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG;IACrG,KAAK,EAAE,aAAa,CAAC;IACrB,EAAE,EAAE,sBAAsB,CAAC;IAC3B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,SAAS,EAAE,iBAAiB,CAAC;CAC9B,CA6DA;AAED,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,kBAAkB,CAAC,cAAc,CAAC,EACvC,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,EAC5B,SAAS,EAAE,cAAc,CAAC,WAAW,CAAC,EACtC,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,GACjC,IAAI,CAIN;AAKD,wBAAgB,MAAM,CAAC,KAAK,SAAM,EAAE,MAAM,SAAM,GAAG,sBAAsB,CAQxE;AAED,wBAAgB,aAAa,IAAI,iBAAiB,CAYjD"}
1
+ {"version":3,"file":"glTestHelper.d.ts","sourceRoot":"","sources":["../src/glTestHelper.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,aAAa,EAAwB,MAAM,0BAA0B,CAAC;AAExH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAKlE,wBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG;IACrE,KAAK,EAAE,aAAa,CAAC;IACrB,EAAE,EAAE,sBAAsB,CAAC;IAC3B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,SAAS,EAAE,iBAAiB,CAAC;CAC9B,CA4DA;AAED,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,kBAAkB,CAAC,cAAc,CAAC,EACvC,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,EAC5B,SAAS,EAAE,cAAc,CAAC,WAAW,CAAC,EACtC,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,GACjC,IAAI,CAIN;AAKD,wBAAgB,MAAM,CAAC,KAAK,SAAM,EAAE,MAAM,SAAM,GAAG,sBAAsB,CAQxE;AAED,wBAAgB,aAAa,IAAI,iBAAiB,CAYjD"}
@@ -13,7 +13,6 @@ export function createGlState(options) {
13
13
  const shaderLoc = makeShaderLoc();
14
14
  const state = createRenderState({
15
15
  allowSmoothing: options?.allowSmoothing ?? true,
16
- backgroundColorRgba: options?.backgroundColorRgba ?? [0, 0, 0, 0],
17
16
  });
18
17
  // Entity fields live directly on the state.
19
18
  Object.assign(state, {