@luma.gl/core 9.3.0-alpha.2 → 9.3.0-alpha.6

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 (121) hide show
  1. package/dist/adapter/canvas-context.d.ts +6 -181
  2. package/dist/adapter/canvas-context.d.ts.map +1 -1
  3. package/dist/adapter/canvas-context.js +5 -450
  4. package/dist/adapter/canvas-context.js.map +1 -1
  5. package/dist/adapter/canvas-observer.d.ts +32 -0
  6. package/dist/adapter/canvas-observer.d.ts.map +1 -0
  7. package/dist/adapter/canvas-observer.js +90 -0
  8. package/dist/adapter/canvas-observer.js.map +1 -0
  9. package/dist/adapter/canvas-surface.d.ts +150 -0
  10. package/dist/adapter/canvas-surface.d.ts.map +1 -0
  11. package/dist/adapter/canvas-surface.js +392 -0
  12. package/dist/adapter/canvas-surface.js.map +1 -0
  13. package/dist/adapter/device.d.ts +64 -9
  14. package/dist/adapter/device.d.ts.map +1 -1
  15. package/dist/adapter/device.js +108 -4
  16. package/dist/adapter/device.js.map +1 -1
  17. package/dist/adapter/luma.js +1 -1
  18. package/dist/adapter/presentation-context.d.ts +11 -0
  19. package/dist/adapter/presentation-context.d.ts.map +1 -0
  20. package/dist/adapter/presentation-context.js +12 -0
  21. package/dist/adapter/presentation-context.js.map +1 -0
  22. package/dist/adapter/resources/buffer.d.ts +1 -1
  23. package/dist/adapter/resources/buffer.d.ts.map +1 -1
  24. package/dist/adapter/resources/buffer.js +14 -6
  25. package/dist/adapter/resources/buffer.js.map +1 -1
  26. package/dist/adapter/resources/command-encoder.d.ts +27 -6
  27. package/dist/adapter/resources/command-encoder.d.ts.map +1 -1
  28. package/dist/adapter/resources/command-encoder.js +65 -1
  29. package/dist/adapter/resources/command-encoder.js.map +1 -1
  30. package/dist/adapter/resources/fence.d.ts +1 -1
  31. package/dist/adapter/resources/fence.d.ts.map +1 -1
  32. package/dist/adapter/resources/fence.js +3 -1
  33. package/dist/adapter/resources/fence.js.map +1 -1
  34. package/dist/adapter/resources/framebuffer.d.ts.map +1 -1
  35. package/dist/adapter/resources/framebuffer.js +9 -11
  36. package/dist/adapter/resources/framebuffer.js.map +1 -1
  37. package/dist/adapter/resources/query-set.d.ts +17 -1
  38. package/dist/adapter/resources/query-set.d.ts.map +1 -1
  39. package/dist/adapter/resources/query-set.js.map +1 -1
  40. package/dist/adapter/resources/render-pipeline.d.ts +19 -7
  41. package/dist/adapter/resources/render-pipeline.d.ts.map +1 -1
  42. package/dist/adapter/resources/render-pipeline.js +20 -2
  43. package/dist/adapter/resources/render-pipeline.js.map +1 -1
  44. package/dist/adapter/resources/resource.d.ts +8 -0
  45. package/dist/adapter/resources/resource.d.ts.map +1 -1
  46. package/dist/adapter/resources/resource.js +240 -14
  47. package/dist/adapter/resources/resource.js.map +1 -1
  48. package/dist/adapter/resources/shader.js +27 -25
  49. package/dist/adapter/resources/shader.js.map +1 -1
  50. package/dist/adapter/resources/shared-render-pipeline.d.ts +22 -0
  51. package/dist/adapter/resources/shared-render-pipeline.d.ts.map +1 -0
  52. package/dist/adapter/resources/shared-render-pipeline.js +25 -0
  53. package/dist/adapter/resources/shared-render-pipeline.js.map +1 -0
  54. package/dist/adapter/resources/texture.d.ts +78 -12
  55. package/dist/adapter/resources/texture.d.ts.map +1 -1
  56. package/dist/adapter/resources/texture.js +182 -30
  57. package/dist/adapter/resources/texture.js.map +1 -1
  58. package/dist/adapter-utils/format-compiler-log.d.ts.map +1 -1
  59. package/dist/adapter-utils/format-compiler-log.js +23 -15
  60. package/dist/adapter-utils/format-compiler-log.js.map +1 -1
  61. package/dist/dist.dev.js +1265 -362
  62. package/dist/dist.min.js +10 -9
  63. package/dist/index.cjs +1027 -243
  64. package/dist/index.cjs.map +4 -4
  65. package/dist/index.d.ts +5 -1
  66. package/dist/index.d.ts.map +1 -1
  67. package/dist/index.js +3 -0
  68. package/dist/index.js.map +1 -1
  69. package/dist/shadertypes/data-types/decode-shader-types.d.ts +2 -2
  70. package/dist/shadertypes/data-types/decode-shader-types.d.ts.map +1 -1
  71. package/dist/shadertypes/data-types/decode-shader-types.js +11 -2
  72. package/dist/shadertypes/data-types/decode-shader-types.js.map +1 -1
  73. package/dist/shadertypes/textures/pixel-utils.js +4 -4
  74. package/dist/shadertypes/textures/pixel-utils.js.map +1 -1
  75. package/dist/shadertypes/textures/texture-format-decoder.d.ts.map +1 -1
  76. package/dist/shadertypes/textures/texture-format-decoder.js +53 -8
  77. package/dist/shadertypes/textures/texture-format-decoder.js.map +1 -1
  78. package/dist/shadertypes/textures/texture-format-table.d.ts.map +1 -1
  79. package/dist/shadertypes/textures/texture-format-table.js +10 -9
  80. package/dist/shadertypes/textures/texture-format-table.js.map +1 -1
  81. package/dist/shadertypes/textures/texture-formats.d.ts +5 -2
  82. package/dist/shadertypes/textures/texture-formats.d.ts.map +1 -1
  83. package/dist/shadertypes/textures/texture-formats.js.map +1 -1
  84. package/dist/shadertypes/textures/texture-layout.d.ts +1 -1
  85. package/dist/utils/array-equal.d.ts +1 -1
  86. package/dist/utils/array-equal.d.ts.map +1 -1
  87. package/dist/utils/array-equal.js +15 -9
  88. package/dist/utils/array-equal.js.map +1 -1
  89. package/dist/utils/assert.d.ts +5 -0
  90. package/dist/utils/assert.d.ts.map +1 -0
  91. package/dist/utils/assert.js +17 -0
  92. package/dist/utils/assert.js.map +1 -0
  93. package/dist/utils/stats-manager.d.ts.map +1 -1
  94. package/dist/utils/stats-manager.js +61 -1
  95. package/dist/utils/stats-manager.js.map +1 -1
  96. package/package.json +6 -6
  97. package/src/adapter/canvas-context.ts +7 -590
  98. package/src/adapter/canvas-observer.ts +130 -0
  99. package/src/adapter/canvas-surface.ts +521 -0
  100. package/src/adapter/device.ts +174 -13
  101. package/src/adapter/presentation-context.ts +16 -0
  102. package/src/adapter/resources/buffer.ts +13 -5
  103. package/src/adapter/resources/command-encoder.ts +96 -7
  104. package/src/adapter/resources/fence.ts +3 -1
  105. package/src/adapter/resources/framebuffer.ts +9 -11
  106. package/src/adapter/resources/query-set.ts +17 -1
  107. package/src/adapter/resources/render-pipeline.ts +42 -13
  108. package/src/adapter/resources/resource.ts +284 -14
  109. package/src/adapter/resources/shader.ts +28 -28
  110. package/src/adapter/resources/shared-render-pipeline.ts +40 -0
  111. package/src/adapter/resources/texture.ts +269 -40
  112. package/src/adapter-utils/format-compiler-log.ts +23 -15
  113. package/src/index.ts +8 -0
  114. package/src/shadertypes/data-types/decode-shader-types.ts +13 -4
  115. package/src/shadertypes/textures/pixel-utils.ts +4 -4
  116. package/src/shadertypes/textures/texture-format-decoder.ts +73 -8
  117. package/src/shadertypes/textures/texture-format-table.ts +10 -9
  118. package/src/shadertypes/textures/texture-formats.ts +6 -1
  119. package/src/utils/array-equal.ts +21 -9
  120. package/src/utils/assert.ts +18 -0
  121. package/src/utils/stats-manager.ts +76 -2
@@ -7,6 +7,7 @@ import { uid } from "../utils/uid.js";
7
7
  import { Buffer } from "./resources/buffer.js";
8
8
  import { getVertexFormatInfo } from "../shadertypes/vertex-arrays/decode-vertex-format.js";
9
9
  import { textureFormatDecoder } from "../shadertypes/textures/texture-format-decoder.js";
10
+ import { getTextureFormatTable } from "../shadertypes/textures/texture-format-table.js";
10
11
  import { isExternalImage, getExternalImageSize } from "../image-utils/image-types.js";
11
12
  /** Limits for a device (max supported sizes of resources, max number of bindings etc) */
12
13
  export class DeviceLimits {
@@ -51,7 +52,8 @@ export class Device {
51
52
  onVisibilityChange: (context) => log.log(1, `${context} Visibility changed ${context.isVisible}`)(),
52
53
  onDevicePixelRatioChange: (context, info) => log.log(1, `${context} DPR changed ${info.oldRatio} => ${context.devicePixelRatio}`)(),
53
54
  // Debug flags
54
- debug: log.get('debug') || undefined,
55
+ debug: getDefaultDebugValue(),
56
+ debugGPUTime: false,
55
57
  debugShaders: log.get('debug-shaders') || undefined,
56
58
  debugFramebuffers: Boolean(log.get('debug-framebuffers')),
57
59
  debugFactories: Boolean(log.get('debug-factories')),
@@ -61,9 +63,11 @@ export class Device {
61
63
  // Experimental
62
64
  _reuseDevices: false,
63
65
  _requestMaxLimits: true,
64
- _cacheShaders: false,
65
- _cachePipelines: false,
66
- _cacheDestroyPolicy: 'unused',
66
+ _cacheShaders: true,
67
+ _destroyShaders: false,
68
+ _cachePipelines: true,
69
+ _sharePipelines: true,
70
+ _destroyPipelines: false,
67
71
  // TODO - Change these after confirming things work as expected
68
72
  _initializeFeatures: true,
69
73
  _disabledFeatures: {
@@ -93,6 +97,8 @@ export class Device {
93
97
  /** Used by other luma.gl modules to store data on the device */
94
98
  _moduleData = {};
95
99
  _textureCaps = {};
100
+ /** Internal timestamp query set used when GPU timing collection is enabled for this device. */
101
+ _debugGPUTimeQuery = null;
96
102
  constructor(props) {
97
103
  this.props = { ...Device.defaultProps, ...props };
98
104
  this.id = this.props.id || uid(this[Symbol.toStringTag].toLowerCase());
@@ -146,6 +152,16 @@ export class Device {
146
152
  isTextureFormatCompressed(format) {
147
153
  return textureFormatDecoder.isCompressed(format);
148
154
  }
155
+ /** Returns the compressed texture formats that can be created and sampled on this device */
156
+ getSupportedCompressedTextureFormats() {
157
+ const supportedFormats = [];
158
+ for (const format of Object.keys(getTextureFormatTable())) {
159
+ if (this.isTextureFormatCompressed(format) && this.isTextureFormatSupported(format)) {
160
+ supportedFormats.push(format);
161
+ }
162
+ }
163
+ return supportedFormats;
164
+ }
149
165
  // DEBUG METHODS
150
166
  pushDebugGroup(groupLabel) {
151
167
  this.commandEncoder.pushDebugGroup(groupLabel);
@@ -227,6 +243,71 @@ or create a device with the 'debug: true' prop.`;
227
243
  beginComputePass(props) {
228
244
  return this.commandEncoder.beginComputePass(props);
229
245
  }
246
+ /**
247
+ * Generate mipmaps for a WebGPU texture.
248
+ * WebGPU textures must be created up front with the required mip count, usage flags, and a format that supports the chosen generation path.
249
+ * WebGL uses `Texture.generateMipmapsWebGL()` directly because the backend manages mip generation on the texture object itself.
250
+ */
251
+ generateMipmapsWebGPU(_texture) {
252
+ throw new Error('not implemented');
253
+ }
254
+ /** Internal helper for creating a shareable WebGL render-pipeline implementation. */
255
+ _createSharedRenderPipelineWebGL(_props) {
256
+ throw new Error('_createSharedRenderPipelineWebGL() not implemented');
257
+ }
258
+ /**
259
+ * Internal helper that returns `true` when timestamp-query GPU timing should be
260
+ * collected for this device.
261
+ */
262
+ _supportsDebugGPUTime() {
263
+ return (this.features.has('timestamp-query') && Boolean(this.props.debug || this.props.debugGPUTime));
264
+ }
265
+ /**
266
+ * Internal helper that enables device-managed GPU timing collection on the
267
+ * default command encoder. Reuses the existing query set if timing is already enabled.
268
+ *
269
+ * @param queryCount - Number of timestamp slots reserved for profiled passes.
270
+ * @returns The device-managed timestamp QuerySet, or `null` when timing is not supported or could not be enabled.
271
+ */
272
+ _enableDebugGPUTime(queryCount = 256) {
273
+ if (!this._supportsDebugGPUTime()) {
274
+ return null;
275
+ }
276
+ if (this._debugGPUTimeQuery) {
277
+ return this._debugGPUTimeQuery;
278
+ }
279
+ try {
280
+ this._debugGPUTimeQuery = this.createQuerySet({ type: 'timestamp', count: queryCount });
281
+ this.commandEncoder = this.createCommandEncoder({
282
+ id: this.commandEncoder.props.id,
283
+ timeProfilingQuerySet: this._debugGPUTimeQuery
284
+ });
285
+ }
286
+ catch {
287
+ this._debugGPUTimeQuery = null;
288
+ }
289
+ return this._debugGPUTimeQuery;
290
+ }
291
+ /**
292
+ * Internal helper that disables device-managed GPU timing collection and restores
293
+ * the default command encoder to an unprofiled state.
294
+ */
295
+ _disableDebugGPUTime() {
296
+ if (!this._debugGPUTimeQuery) {
297
+ return;
298
+ }
299
+ if (this.commandEncoder.getTimeProfilingQuerySet() === this._debugGPUTimeQuery) {
300
+ this.commandEncoder = this.createCommandEncoder({
301
+ id: this.commandEncoder.props.id
302
+ });
303
+ }
304
+ this._debugGPUTimeQuery.destroy();
305
+ this._debugGPUTimeQuery = null;
306
+ }
307
+ /** Internal helper that returns `true` when device-managed GPU timing is currently active. */
308
+ _isDebugGPUTimeEnabled() {
309
+ return this._debugGPUTimeQuery !== null;
310
+ }
230
311
  // DEPRECATED METHODS
231
312
  /** @deprecated Use getDefaultCanvasContext() */
232
313
  getCanvasContext() {
@@ -318,4 +399,27 @@ or create a device with the 'debug: true' prop.`;
318
399
  return newProps;
319
400
  }
320
401
  }
402
+ /**
403
+ * Internal helper for resolving the default `debug` prop.
404
+ * Precedence is: explicit log debug value first, then `NODE_ENV`, then `false`.
405
+ */
406
+ export function _getDefaultDebugValue(logDebugValue, nodeEnv) {
407
+ if (logDebugValue !== undefined && logDebugValue !== null) {
408
+ return Boolean(logDebugValue);
409
+ }
410
+ if (nodeEnv !== undefined) {
411
+ return nodeEnv !== 'production';
412
+ }
413
+ return false;
414
+ }
415
+ function getDefaultDebugValue() {
416
+ return _getDefaultDebugValue(log.get('debug'), getNodeEnv());
417
+ }
418
+ function getNodeEnv() {
419
+ const processObject = globalThis.process;
420
+ if (!processObject?.env) {
421
+ return undefined;
422
+ }
423
+ return processObject.env['NODE_ENV'];
424
+ }
321
425
  //# sourceMappingURL=device.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"device.js","sourceRoot":"","sources":["../../src/adapter/device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device.js","sourceRoot":"","sources":["../../src/adapter/device.ts"],"names":[],"mappings":"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"}
@@ -32,7 +32,7 @@ export class Luma {
32
32
  VERSION =
33
33
  // Version detection using build plugin
34
34
  // @ts-expect-error no-undef
35
- typeof "9.3.0-alpha.2" !== 'undefined' ? "9.3.0-alpha.2" : 'running from source';
35
+ typeof "9.3.0-alpha.6" !== 'undefined' ? "9.3.0-alpha.6" : 'running from source';
36
36
  spector;
37
37
  preregisteredAdapters = new Map();
38
38
  constructor() {
@@ -0,0 +1,11 @@
1
+ import { CanvasSurface } from "./canvas-surface.js";
2
+ export type { CanvasContextProps as PresentationContextProps } from "./canvas-surface.js";
3
+ /**
4
+ * Tracks a destination canvas for presentation.
5
+ * Backend implementations either borrow the default GPU-backed canvas (WebGL)
6
+ * or render directly into the destination canvas (WebGPU).
7
+ */
8
+ export declare abstract class PresentationContext extends CanvasSurface {
9
+ abstract present(): void;
10
+ }
11
+ //# sourceMappingURL=presentation-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presentation-context.d.ts","sourceRoot":"","sources":["../../src/adapter/presentation-context.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,aAAa,EAAC,4BAAyB;AAE/C,YAAY,EAAC,kBAAkB,IAAI,wBAAwB,EAAC,4BAAyB;AAErF;;;;GAIG;AACH,8BAAsB,mBAAoB,SAAQ,aAAa;IAC7D,QAAQ,CAAC,OAAO,IAAI,IAAI;CACzB"}
@@ -0,0 +1,12 @@
1
+ // luma.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ import { CanvasSurface } from "./canvas-surface.js";
5
+ /**
6
+ * Tracks a destination canvas for presentation.
7
+ * Backend implementations either borrow the default GPU-backed canvas (WebGL)
8
+ * or render directly into the destination canvas (WebGPU).
9
+ */
10
+ export class PresentationContext extends CanvasSurface {
11
+ }
12
+ //# sourceMappingURL=presentation-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presentation-context.js","sourceRoot":"","sources":["../../src/adapter/presentation-context.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC,OAAO,EAAC,aAAa,EAAC,4BAAyB;AAI/C;;;;GAIG;AACH,MAAM,OAAgB,mBAAoB,SAAQ,aAAa;CAE9D"}
@@ -65,7 +65,7 @@ export declare abstract class Buffer extends Resource<BufferProps> {
65
65
  /** A partial CPU-side copy of the data in this buffer, for debugging purposes */
66
66
  debugData: ArrayBuffer;
67
67
  /** This doesn't handle partial non-zero offset updates correctly */
68
- protected _setDebugData(data: ArrayBufferView | ArrayBufferLike | null, byteOffset: number, byteLength: number): void;
68
+ protected _setDebugData(data: ArrayBufferView | ArrayBufferLike | null, _byteOffset: number, byteLength: number): void;
69
69
  static defaultProps: Required<BufferProps>;
70
70
  }
71
71
  //# sourceMappingURL=buffer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"buffer.d.ts","sourceRoot":"","sources":["../../../src/adapter/resources/buffer.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,MAAM,EAAC,qBAAkB;AACtC,OAAO,EAAC,QAAQ,EAAE,aAAa,EAAC,sBAAmB;AAEnD,0CAA0C;AAC1C,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,GAAG,QAAQ,KAAK,CAAC,CAAC;AAElG,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG;IACxC,uEAAuE;IACvE,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+GAA+G;IAC/G,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+HAA+H;IAC/H,SAAS,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC1C,0CAA0C;IAC1C,IAAI,CAAC,EAAE,WAAW,GAAG,eAAe,GAAG,IAAI,CAAC;IAC5C,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;CACpC,CAAC;AAEF,0BAA0B;AAC1B,8BAAsB,MAAO,SAAQ,QAAQ,CAAC,WAAW,CAAC;IACxD,mBAAmB;IACnB,MAAM,CAAC,KAAK,SAAU;IACtB,oBAAoB;IACpB,MAAM,CAAC,MAAM,SAAU;IACvB,qBAAqB;IACrB,MAAM,CAAC,OAAO,SAAU;IACxB,qBAAqB;IACrB,MAAM,CAAC,OAAO,SAAU;IACxB,MAAM,CAAC,QAAQ,SAAU;IACzB,MAAM,CAAC,aAAa,SAAU;IAG9B,MAAM,CAAC,QAAQ,SAAQ;IACvB,MAAM,CAAC,SAAS,SAAQ;IACxB,MAAM,CAAC,QAAQ,SAAU;IACzB,MAAM,CAAC,QAAQ,SAAU;IAEzB,IAAa,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,MAAM,CAE1C;IAED,mDAAmD;IACnD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,iJAAiJ;IACjJ,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACnD,gCAAgC;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,sEAAsE;IACtE,eAAe,EAAE,MAAM,CAAC;gBAEZ,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW;IA0B9C;;;OAGG;IACH,KAAK,CAAC,KAAK,EAAE;QAAC,UAAU,EAAE,MAAM,CAAA;KAAC,GAAG,MAAM;IAI1C,2BAA2B;IAC3B,QAAQ,CAAC,KAAK,CACZ,IAAI,EAAE,eAAe,GAAG,eAAe,GAAG,iBAAiB,EAC3D,UAAU,CAAC,EAAE,MAAM,GAClB,IAAI;IAEP,QAAQ,CAAC,gBAAgB,CACvB,QAAQ,EAAE,iBAAiB,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EACjD,UAAU,CAAC,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC;IAEhB,mEAAmE;IACnE,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAEjF,uFAAuF;IACvF,QAAQ,CAAC,eAAe,CAAC,CAAC,EACxB,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAC9B,UAAU,CAAC,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,CAAC,CAAC;IAEb,iDAAiD;IACjD,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,UAAU;IAI5E,iDAAiD;IACjD,MAAM,CAAC,qBAAqB,SAAM;IAElC,iFAAiF;IACjF,SAAS,EAAE,WAAW,CAAsB;IAE5C,oEAAoE;IACpE,SAAS,CAAC,aAAa,CACrB,IAAI,EAAE,eAAe,GAAG,eAAe,GAAG,IAAI,EAC9C,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,GACjB,IAAI;IAeP,OAAgB,YAAY,EAAE,QAAQ,CAAC,WAAW,CAAC,CAQjD;CACH"}
1
+ {"version":3,"file":"buffer.d.ts","sourceRoot":"","sources":["../../../src/adapter/resources/buffer.ts"],"names":[],"mappings":"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"}
@@ -63,17 +63,25 @@ export class Buffer extends Resource {
63
63
  /** A partial CPU-side copy of the data in this buffer, for debugging purposes */
64
64
  debugData = new ArrayBuffer(0);
65
65
  /** This doesn't handle partial non-zero offset updates correctly */
66
- _setDebugData(data, byteOffset, byteLength) {
67
- const arrayBuffer = ArrayBuffer.isView(data) ? data.buffer : data;
66
+ _setDebugData(data, _byteOffset, byteLength) {
67
+ let arrayBufferView = null;
68
+ let arrayBuffer;
69
+ if (ArrayBuffer.isView(data)) {
70
+ arrayBufferView = data;
71
+ arrayBuffer = data.buffer;
72
+ }
73
+ else {
74
+ arrayBuffer = data;
75
+ }
68
76
  const debugDataLength = Math.min(data ? data.byteLength : byteLength, Buffer.DEBUG_DATA_MAX_LENGTH);
69
77
  if (arrayBuffer === null) {
70
78
  this.debugData = new ArrayBuffer(debugDataLength);
71
79
  }
72
- else if (byteOffset === 0 && byteLength === arrayBuffer.byteLength) {
73
- this.debugData = arrayBuffer.slice(0, debugDataLength);
74
- }
75
80
  else {
76
- this.debugData = arrayBuffer.slice(byteOffset, byteOffset + debugDataLength);
81
+ const sourceByteOffset = Math.min(arrayBufferView?.byteOffset || 0, arrayBuffer.byteLength);
82
+ const availableByteLength = Math.max(0, arrayBuffer.byteLength - sourceByteOffset);
83
+ const copyByteLength = Math.min(debugDataLength, availableByteLength);
84
+ this.debugData = new Uint8Array(arrayBuffer, sourceByteOffset, copyByteLength).slice().buffer;
77
85
  }
78
86
  }
79
87
  static defaultProps = {
@@ -1 +1 @@
1
- {"version":3,"file":"buffer.js","sourceRoot":"","sources":["../../../src/adapter/resources/buffer.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAGpC,OAAO,EAAC,QAAQ,EAAgB,sBAAmB;AAsBnD,0BAA0B;AAC1B,MAAM,OAAgB,MAAO,SAAQ,QAAqB;IACxD,mBAAmB;IACnB,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC;IACtB,oBAAoB;IACpB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,qBAAqB;IACrB,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,qBAAqB;IACrB,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC;IACzB,MAAM,CAAC,aAAa,GAAG,MAAM,CAAC;IAE9B,cAAc;IACd,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC;IACzB,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC;IAEzB,IAAa,CAAC,MAAM,CAAC,WAAW,CAAC;QAC/B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,mDAAmD;IAC1C,KAAK,CAAS;IACvB,iJAAiJ;IACxI,SAAS,CAAiC;IAGnD,sEAAsE;IACtE,eAAe,CAAS;IAExB,YAAY,MAAc,EAAE,KAAkB;QAC5C,MAAM,YAAY,GAAG,EAAC,GAAG,KAAK,EAAC,CAAC;QAEhC,mBAAmB;QACnB,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YAC1D,IAAI,KAAK,CAAC,IAAI,YAAY,WAAW,EAAE,CAAC;gBACtC,YAAY,CAAC,SAAS,GAAG,QAAQ,CAAC;YACpC,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,YAAY,WAAW,EAAE,CAAC;gBAC7C,YAAY,CAAC,SAAS,GAAG,QAAQ,CAAC;YACpC,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,YAAY,UAAU,EAAE,CAAC;gBAC5C,YAAY,CAAC,SAAS,GAAG,OAAO,CAAC;YACnC,CAAC;QACH,CAAC;QAED,2FAA2F;QAC3F,OAAO,YAAY,CAAC,IAAI,CAAC;QAEzB,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;QAEjD,IAAI,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC;QAExC,+DAA+D;QAC/D,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,kBAAkB,EAAE,CAAC;IACrD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,KAA2B;QAC/B,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,EAAC,GAAG,IAAI,CAAC,KAAK,EAAE,GAAG,KAAK,EAAC,CAAC,CAAC;IAC7D,CAAC;IA2BD,oEAAoE;IAEpE,iDAAiD;IACjD,MAAM,CAAC,qBAAqB,GAAG,EAAE,CAAC;IAElC,iFAAiF;IACjF,SAAS,GAAgB,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC;IAE5C,oEAAoE;IAC1D,aAAa,CACrB,IAA8C,EAC9C,UAAkB,EAClB,UAAkB;QAElB,MAAM,WAAW,GAA2B,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1F,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAC9B,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,EACnC,MAAM,CAAC,qBAAqB,CAC7B,CAAC;QACF,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;YACzB,IAAI,CAAC,SAAS,GAAG,IAAI,WAAW,CAAC,eAAe,CAAC,CAAC;QACpD,CAAC;aAAM,IAAI,UAAU,KAAK,CAAC,IAAI,UAAU,KAAK,WAAW,CAAC,UAAU,EAAE,CAAC;YACrE,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,UAAU,EAAE,UAAU,GAAG,eAAe,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAED,MAAM,CAAU,YAAY,GAA0B;QACpD,GAAG,QAAQ,CAAC,YAAY;QACxB,KAAK,EAAE,CAAC,EAAE,oCAAoC;QAC9C,UAAU,EAAE,CAAC;QACb,UAAU,EAAE,CAAC;QACb,IAAI,EAAE,IAAI;QACV,SAAS,EAAE,QAAQ;QACnB,QAAQ,EAAE,SAAU;KACrB,CAAC"}
1
+ {"version":3,"file":"buffer.js","sourceRoot":"","sources":["../../../src/adapter/resources/buffer.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { Device } from "../device.js";
2
2
  import { Resource, ResourceProps } from "./resource.js";
3
+ import { QuerySet } from "./query-set.js";
3
4
  import { Buffer } from "./buffer.js";
4
5
  import { Texture } from "./texture.js";
5
- import { QuerySet } from "./query-set.js";
6
6
  import type { RenderPass, RenderPassProps } from "./render-pass.js";
7
7
  import type { ComputePass, ComputePassProps } from "./compute-pass.js";
8
8
  import type { CommandBuffer, CommandBufferProps } from "./command-buffer.js";
@@ -18,11 +18,11 @@ export type CopyBufferToTextureOptions = {
18
18
  byteOffset?: number;
19
19
  destinationTexture: Texture;
20
20
  mipLevel?: number;
21
- origin?: [number, number, number] | number[];
21
+ origin?: [number, number, number];
22
22
  aspect?: 'all' | 'stencil-only' | 'depth-only';
23
23
  bytesPerRow: number;
24
24
  rowsPerImage: number;
25
- size: [number, number, number] | number[];
25
+ size: [number, number, number];
26
26
  };
27
27
  export type CopyTextureToBufferOptions = {
28
28
  /** Texture to copy to/from. */
@@ -38,7 +38,7 @@ export type CopyTextureToBufferOptions = {
38
38
  width?: number;
39
39
  height?: number;
40
40
  depthOrArrayLayers?: number;
41
- origin?: number[];
41
+ origin?: [number, number, number];
42
42
  /** Destination buffer */
43
43
  destinationBuffer: Buffer;
44
44
  /** Offset, in bytes, from the beginning of the buffer to the start of the image data (default 0) */
@@ -61,7 +61,7 @@ export type CopyTextureToTextureOptions = {
61
61
  /** Mip-map level of the texture to copy to/from. (Default 0) */
62
62
  mipLevel?: number;
63
63
  /** Defines the origin of the copy - the minimum corner of the texture sub-region to copy from. */
64
- origin?: number[];
64
+ origin?: [number, number, number];
65
65
  /** Defines which aspects of the {@link GPUImageCopyTexture#texture} to copy to/from. */
66
66
  aspect?: 'all' | 'stencil-only' | 'depth-only';
67
67
  /** Texture to copy to/from. */
@@ -69,7 +69,7 @@ export type CopyTextureToTextureOptions = {
69
69
  /** Mip-map level of the texture to copy to/from. (Default 0) */
70
70
  destinationMipLevel?: number;
71
71
  /** Defines the origin of the copy - the minimum corner of the texture sub-region to copy to. */
72
- destinationOrigin?: number[];
72
+ destinationOrigin?: [number, number, number];
73
73
  /** Defines which aspects of the {@link GPUImageCopyTexture#texture} to copy to/from. */
74
74
  destinationAspect?: 'all' | 'stencil-only' | 'depth-only';
75
75
  /** Width to copy */
@@ -88,12 +88,21 @@ export type ClearTextureOptions = {
88
88
  };
89
89
  export type CommandEncoderProps = ResourceProps & {
90
90
  measureExecutionTime?: boolean;
91
+ timeProfilingQuerySet?: QuerySet | null;
92
+ };
93
+ type PassWithTimestamps = {
94
+ timestampQuerySet?: QuerySet;
95
+ beginTimestampIndex?: number;
96
+ endTimestampIndex?: number;
91
97
  };
92
98
  /**
93
99
  * Encodes commands to queue that can be executed later
94
100
  */
95
101
  export declare abstract class CommandEncoder extends Resource<CommandEncoderProps> {
96
102
  get [Symbol.toStringTag](): string;
103
+ protected _timeProfilingQuerySet: QuerySet | null;
104
+ protected _timeProfilingSlotCount: number;
105
+ _gpuTimeMs?: number;
97
106
  constructor(device: Device, props: CommandEncoderProps);
98
107
  /** Completes recording of the commands sequence */
99
108
  abstract finish(props?: CommandBufferProps): CommandBuffer;
@@ -116,6 +125,17 @@ export declare abstract class CommandEncoder extends Resource<CommandEncoderProp
116
125
  queryCount?: number;
117
126
  destinationOffset?: number;
118
127
  }): void;
128
+ /**
129
+ * Reads all resolved timestamp pairs on the current profiler query set and caches the sum
130
+ * as milliseconds on this encoder.
131
+ */
132
+ resolveTimeProfilingQuerySet(): Promise<void>;
133
+ /** Returns the number of query slots consumed by automatic pass profiling on this encoder. */
134
+ getTimeProfilingSlotCount(): number;
135
+ getTimeProfilingQuerySet(): QuerySet | null;
136
+ /** Internal helper for auto-assigning timestamp slots to render/compute passes on this encoder. */
137
+ protected _applyTimeProfilingToPassProps<P extends PassWithTimestamps>(props?: P): P;
138
+ protected _supportsTimestampQueries(): boolean;
119
139
  /** Begins a labeled debug group containing subsequent commands */
120
140
  abstract pushDebugGroup(groupLabel: string): void;
121
141
  /** Ends the labeled debug group most recently started by pushDebugGroup() */
@@ -124,4 +144,5 @@ export declare abstract class CommandEncoder extends Resource<CommandEncoderProp
124
144
  abstract insertDebugMarker(markerLabel: string): void;
125
145
  static defaultProps: Required<CommandEncoderProps>;
126
146
  }
147
+ export {};
127
148
  //# sourceMappingURL=command-encoder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-encoder.d.ts","sourceRoot":"","sources":["../../../src/adapter/resources/command-encoder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-encoder.d.ts","sourceRoot":"","sources":["../../../src/adapter/resources/command-encoder.ts"],"names":[],"mappings":"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"}
@@ -9,15 +9,79 @@ export class CommandEncoder extends Resource {
9
9
  get [Symbol.toStringTag]() {
10
10
  return 'CommandEncoder';
11
11
  }
12
+ _timeProfilingQuerySet = null;
13
+ _timeProfilingSlotCount = 0;
14
+ _gpuTimeMs;
12
15
  constructor(device, props) {
13
16
  super(device, props, CommandEncoder.defaultProps);
17
+ this._timeProfilingQuerySet = props.timeProfilingQuerySet ?? null;
18
+ this._timeProfilingSlotCount = 0;
19
+ this._gpuTimeMs = undefined;
20
+ }
21
+ /**
22
+ * Reads all resolved timestamp pairs on the current profiler query set and caches the sum
23
+ * as milliseconds on this encoder.
24
+ */
25
+ async resolveTimeProfilingQuerySet() {
26
+ this._gpuTimeMs = undefined;
27
+ if (!this._timeProfilingQuerySet) {
28
+ return;
29
+ }
30
+ const pairCount = Math.floor(this._timeProfilingSlotCount / 2);
31
+ if (pairCount <= 0) {
32
+ return;
33
+ }
34
+ const queryCount = pairCount * 2;
35
+ const results = await this._timeProfilingQuerySet.readResults({
36
+ firstQuery: 0,
37
+ queryCount
38
+ });
39
+ let totalDurationNanoseconds = 0n;
40
+ for (let queryIndex = 0; queryIndex < queryCount; queryIndex += 2) {
41
+ totalDurationNanoseconds += results[queryIndex + 1] - results[queryIndex];
42
+ }
43
+ this._gpuTimeMs = Number(totalDurationNanoseconds) / 1e6;
44
+ }
45
+ /** Returns the number of query slots consumed by automatic pass profiling on this encoder. */
46
+ getTimeProfilingSlotCount() {
47
+ return this._timeProfilingSlotCount;
48
+ }
49
+ getTimeProfilingQuerySet() {
50
+ return this._timeProfilingQuerySet;
51
+ }
52
+ /** Internal helper for auto-assigning timestamp slots to render/compute passes on this encoder. */
53
+ _applyTimeProfilingToPassProps(props) {
54
+ const passProps = (props || {});
55
+ if (!this._supportsTimestampQueries() || !this._timeProfilingQuerySet) {
56
+ return passProps;
57
+ }
58
+ if (passProps.timestampQuerySet !== undefined ||
59
+ passProps.beginTimestampIndex !== undefined ||
60
+ passProps.endTimestampIndex !== undefined) {
61
+ return passProps;
62
+ }
63
+ const beginTimestampIndex = this._timeProfilingSlotCount;
64
+ if (beginTimestampIndex + 1 >= this._timeProfilingQuerySet.props.count) {
65
+ return passProps;
66
+ }
67
+ this._timeProfilingSlotCount += 2;
68
+ return {
69
+ ...passProps,
70
+ timestampQuerySet: this._timeProfilingQuerySet,
71
+ beginTimestampIndex,
72
+ endTimestampIndex: beginTimestampIndex + 1
73
+ };
74
+ }
75
+ _supportsTimestampQueries() {
76
+ return this.device.features.has('timestamp-query');
14
77
  }
15
78
  // TODO - luma.gl has these on the device, should we align with WebGPU API?
16
79
  // beginRenderPass(GPURenderPassDescriptor descriptor): GPURenderPassEncoder;
17
80
  // beginComputePass(optional GPUComputePassDescriptor descriptor = {}): GPUComputePassEncoder;
18
81
  static defaultProps = {
19
82
  ...Resource.defaultProps,
20
- measureExecutionTime: undefined
83
+ measureExecutionTime: undefined,
84
+ timeProfilingQuerySet: undefined
21
85
  };
22
86
  }
23
87
  //# sourceMappingURL=command-encoder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-encoder.js","sourceRoot":"","sources":["../../../src/adapter/resources/command-encoder.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAIpC,OAAO,EAAC,QAAQ,EAAgB,sBAAmB;AA8HnD;;GAEG;AACH,MAAM,OAAgB,cAAe,SAAQ,QAA6B;IACxE,IAAa,CAAC,MAAM,CAAC,WAAW,CAAC;QAC/B,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED,YAAY,MAAc,EAAE,KAA0B;QACpD,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;IACpD,CAAC;IA8CD,2EAA2E;IAC3E,6EAA6E;IAC7E,8FAA8F;IAE9F,MAAM,CAAU,YAAY,GAAkC;QAC5D,GAAG,QAAQ,CAAC,YAAY;QACxB,oBAAoB,EAAE,SAAU;KACjC,CAAC"}
1
+ {"version":3,"file":"command-encoder.js","sourceRoot":"","sources":["../../../src/adapter/resources/command-encoder.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAIpC,OAAO,EAAC,QAAQ,EAAgB,sBAAmB;AAqInD;;GAEG;AACH,MAAM,OAAgB,cAAe,SAAQ,QAA6B;IACxE,IAAa,CAAC,MAAM,CAAC,WAAW,CAAC;QAC/B,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAES,sBAAsB,GAAoB,IAAI,CAAC;IAC/C,uBAAuB,GAAW,CAAC,CAAC;IAC9C,UAAU,CAAU;IAEpB,YAAY,MAAc,EAAE,KAA0B;QACpD,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;QAClD,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC,qBAAqB,IAAI,IAAI,CAAC;QAClE,IAAI,CAAC,uBAAuB,GAAG,CAAC,CAAC;QACjC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC9B,CAAC;IAuCD;;;OAGG;IACH,KAAK,CAAC,4BAA4B;QAChC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAE5B,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;YACjC,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,uBAAuB,GAAG,CAAC,CAAC,CAAC;QAC/D,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,SAAS,GAAG,CAAC,CAAC;QACjC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC;YAC5D,UAAU,EAAE,CAAC;YACb,UAAU;SACX,CAAC,CAAC;QAEH,IAAI,wBAAwB,GAAG,EAAE,CAAC;QAClC,KAAK,IAAI,UAAU,GAAG,CAAC,EAAE,UAAU,GAAG,UAAU,EAAE,UAAU,IAAI,CAAC,EAAE,CAAC;YAClE,wBAAwB,IAAI,OAAO,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;QAC5E,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,wBAAwB,CAAC,GAAG,GAAG,CAAC;IAC3D,CAAC;IAED,8FAA8F;IAC9F,yBAAyB;QACvB,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACtC,CAAC;IAED,wBAAwB;QACtB,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACrC,CAAC;IAED,mGAAmG;IACzF,8BAA8B,CAA+B,KAAS;QAC9E,MAAM,SAAS,GAAG,CAAC,KAAK,IAAI,EAAE,CAAM,CAAC;QAErC,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;YACtE,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IACE,SAAS,CAAC,iBAAiB,KAAK,SAAS;YACzC,SAAS,CAAC,mBAAmB,KAAK,SAAS;YAC3C,SAAS,CAAC,iBAAiB,KAAK,SAAS,EACzC,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,mBAAmB,GAAG,IAAI,CAAC,uBAAuB,CAAC;QACzD,IAAI,mBAAmB,GAAG,CAAC,IAAI,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACvE,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,CAAC,uBAAuB,IAAI,CAAC,CAAC;QAElC,OAAO;YACL,GAAG,SAAS;YACZ,iBAAiB,EAAE,IAAI,CAAC,sBAAsB;YAC9C,mBAAmB;YACnB,iBAAiB,EAAE,mBAAmB,GAAG,CAAC;SAC3C,CAAC;IACJ,CAAC;IAES,yBAAyB;QACjC,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACrD,CAAC;IASD,2EAA2E;IAC3E,6EAA6E;IAC7E,8FAA8F;IAE9F,MAAM,CAAU,YAAY,GAAkC;QAC5D,GAAG,QAAQ,CAAC,YAAY;QACxB,oBAAoB,EAAE,SAAU;QAChC,qBAAqB,EAAE,SAAU;KAClC,CAAC"}
@@ -4,7 +4,7 @@ export type FenceProps = ResourceProps;
4
4
  /** Synchronization primitive that resolves when GPU work is completed */
5
5
  export declare abstract class Fence extends Resource<FenceProps> {
6
6
  static defaultProps: Required<FenceProps>;
7
- [Symbol.toStringTag]: string;
7
+ get [Symbol.toStringTag](): string;
8
8
  /** Promise that resolves when the fence is signaled */
9
9
  abstract readonly signaled: Promise<void>;
10
10
  constructor(device: Device, props?: FenceProps);
@@ -1 +1 @@
1
- {"version":3,"file":"fence.d.ts","sourceRoot":"","sources":["../../../src/adapter/resources/fence.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,MAAM,EAAC,qBAAkB;AACtC,OAAO,EAAC,QAAQ,EAAE,KAAK,aAAa,EAAC,sBAAmB;AAExD,MAAM,MAAM,UAAU,GAAG,aAAa,CAAC;AAEvC,yEAAyE;AACzE,8BAAsB,KAAM,SAAQ,QAAQ,CAAC,UAAU,CAAC;IACtD,OAAgB,YAAY,EAAE,QAAQ,CAAC,UAAU,CAAC,CAEhD;IAEF,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,CAAgB;IAE5C,uDAAuD;IACvD,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;gBAE9B,MAAM,EAAE,MAAM,EAAE,KAAK,GAAE,UAAe;IAIlD,kDAAkD;aAChC,OAAO,IAAI,IAAI;IAEjC,2CAA2C;IAC3C,QAAQ,CAAC,UAAU,IAAI,OAAO;CAC/B"}
1
+ {"version":3,"file":"fence.d.ts","sourceRoot":"","sources":["../../../src/adapter/resources/fence.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,MAAM,EAAC,qBAAkB;AACtC,OAAO,EAAC,QAAQ,EAAE,KAAK,aAAa,EAAC,sBAAmB;AAExD,MAAM,MAAM,UAAU,GAAG,aAAa,CAAC;AAEvC,yEAAyE;AACzE,8BAAsB,KAAM,SAAQ,QAAQ,CAAC,UAAU,CAAC;IACtD,OAAgB,YAAY,EAAE,QAAQ,CAAC,UAAU,CAAC,CAEhD;IAEF,IAAa,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,MAAM,CAE1C;IAED,uDAAuD;IACvD,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;gBAE9B,MAAM,EAAE,MAAM,EAAE,KAAK,GAAE,UAAe;IAIlD,kDAAkD;aAChC,OAAO,IAAI,IAAI;IAEjC,2CAA2C;IAC3C,QAAQ,CAAC,UAAU,IAAI,OAAO;CAC/B"}
@@ -7,7 +7,9 @@ export class Fence extends Resource {
7
7
  static defaultProps = {
8
8
  ...Resource.defaultProps
9
9
  };
10
- [Symbol.toStringTag] = 'WEBGLFence';
10
+ get [Symbol.toStringTag]() {
11
+ return 'Fence';
12
+ }
11
13
  constructor(device, props = {}) {
12
14
  super(device, props, Fence.defaultProps);
13
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fence.js","sourceRoot":"","sources":["../../../src/adapter/resources/fence.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAGpC,OAAO,EAAC,QAAQ,EAAqB,sBAAmB;AAIxD,yEAAyE;AACzE,MAAM,OAAgB,KAAM,SAAQ,QAAoB;IACtD,MAAM,CAAU,YAAY,GAAyB;QACnD,GAAG,QAAQ,CAAC,YAAY;KACzB,CAAC;IAEF,CAAC,MAAM,CAAC,WAAW,CAAC,GAAW,YAAY,CAAC;IAK5C,YAAY,MAAc,EAAE,QAAoB,EAAE;QAChD,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAC3C,CAAC"}
1
+ {"version":3,"file":"fence.js","sourceRoot":"","sources":["../../../src/adapter/resources/fence.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAGpC,OAAO,EAAC,QAAQ,EAAqB,sBAAmB;AAIxD,yEAAyE;AACzE,MAAM,OAAgB,KAAM,SAAQ,QAAoB;IACtD,MAAM,CAAU,YAAY,GAAyB;QACnD,GAAG,QAAQ,CAAC,YAAY;KACzB,CAAC;IAEF,IAAa,CAAC,MAAM,CAAC,WAAW,CAAC;QAC/B,OAAO,OAAO,CAAC;IACjB,CAAC;IAKD,YAAY,MAAc,EAAE,QAAoB,EAAE;QAChD,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAC3C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"framebuffer.d.ts","sourceRoot":"","sources":["../../../src/adapter/resources/framebuffer.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,kBAAkB,EAClB,yBAAyB,EACzB,aAAa,EACd,sDAAmD;AACpD,OAAO,KAAK,EAAC,MAAM,EAAC,qBAAkB;AACtC,OAAO,EAAC,QAAQ,EAAE,aAAa,EAAC,sBAAmB;AACnD,OAAO,EAAC,OAAO,EAAC,qBAAkB;AAClC,OAAO,EAAC,WAAW,EAAC,0BAAuB;AAG3C,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,CAAC,WAAW,GAAG,OAAO,GAAG,kBAAkB,CAAC,EAAE,CAAC;IAClE,sBAAsB,CAAC,EAAE,CAAC,WAAW,GAAG,OAAO,GAAG,yBAAyB,CAAC,GAAG,IAAI,CAAC;CACrF,CAAC;AAEF;;;GAGG;AACH,8BAAsB,WAAY,SAAQ,QAAQ,CAAC,gBAAgB,CAAC;IAClE,IAAa,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,MAAM,CAE1C;IAED,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAC;IACf,wBAAwB;IACxB,QAAQ,CAAC,gBAAgB,EAAE,WAAW,EAAE,CAAC;IACzC,4CAA4C;IAC5C,QAAQ,CAAC,sBAAsB,EAAE,WAAW,GAAG,IAAI,CAAC;gBAExC,MAAM,EAAE,MAAM,EAAE,KAAK,GAAE,gBAAqB;IAMxD;;;OAGG;IACH,KAAK,CAAC,IAAI,CAAC,EAAE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,GAAG,WAAW;IAgB1D;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,GAAG,IAAI;IACnD,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IACnD,MAAM,IAAI,IAAI;IAed,gCAAgC;IAChC,SAAS,CAAC,4BAA4B,IAAI,IAAI;IA+B9C,6BAA6B;IAC7B,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IAe3E,mCAAmC;IACnC,SAAS,CAAC,yBAAyB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO;IAUnE;;;;OAIG;IACH,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IA0BhE,iGAAiG;IACjG,SAAS,CAAC,QAAQ,CAAC,iBAAiB,IAAI,IAAI;IAE5C,OAAgB,YAAY,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAMtD;CACH"}
1
+ {"version":3,"file":"framebuffer.d.ts","sourceRoot":"","sources":["../../../src/adapter/resources/framebuffer.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,kBAAkB,EAClB,yBAAyB,EACzB,aAAa,EACd,sDAAmD;AACpD,OAAO,KAAK,EAAC,MAAM,EAAC,qBAAkB;AACtC,OAAO,EAAC,QAAQ,EAAE,aAAa,EAAC,sBAAmB;AACnD,OAAO,EAAC,OAAO,EAAC,qBAAkB;AAClC,OAAO,EAAC,WAAW,EAAC,0BAAuB;AAG3C,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,CAAC,WAAW,GAAG,OAAO,GAAG,kBAAkB,CAAC,EAAE,CAAC;IAClE,sBAAsB,CAAC,EAAE,CAAC,WAAW,GAAG,OAAO,GAAG,yBAAyB,CAAC,GAAG,IAAI,CAAC;CACrF,CAAC;AAEF;;;GAGG;AACH,8BAAsB,WAAY,SAAQ,QAAQ,CAAC,gBAAgB,CAAC;IAClE,IAAa,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,MAAM,CAE1C;IAED,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAC;IACf,wBAAwB;IACxB,QAAQ,CAAC,gBAAgB,EAAE,WAAW,EAAE,CAAC;IACzC,4CAA4C;IAC5C,QAAQ,CAAC,sBAAsB,EAAE,WAAW,GAAG,IAAI,CAAC;gBAExC,MAAM,EAAE,MAAM,EAAE,KAAK,GAAE,gBAAqB;IAMxD;;;OAGG;IACH,KAAK,CAAC,IAAI,CAAC,EAAE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,GAAG,WAAW;IAgB1D;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,GAAG,IAAI;IACnD,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IACnD,MAAM,IAAI,IAAI;IAed,gCAAgC;IAChC,SAAS,CAAC,4BAA4B,IAAI,IAAI;IA+B9C,6BAA6B;IAC7B,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IAe3E,mCAAmC;IACnC,SAAS,CAAC,yBAAyB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO;IAUnE;;;;OAIG;IACH,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAwBhE,iGAAiG;IACjG,SAAS,CAAC,QAAQ,CAAC,iBAAiB,IAAI,IAAI;IAE5C,OAAgB,YAAY,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAMtD;CACH"}
@@ -110,17 +110,15 @@ export class Framebuffer extends Resource {
110
110
  * and destroys existing textures if owned
111
111
  */
112
112
  resizeAttachments(width, height) {
113
- for (let i = 0; i < this.colorAttachments.length; ++i) {
114
- if (this.colorAttachments[i]) {
115
- const resizedTexture = this.colorAttachments[i].texture.clone({
116
- width,
117
- height
118
- });
119
- this.destroyAttachedResource(this.colorAttachments[i]);
120
- this.colorAttachments[i] = resizedTexture.view;
121
- this.attachResource(resizedTexture.view);
122
- }
123
- }
113
+ this.colorAttachments.forEach((colorAttachment, i) => {
114
+ const resizedTexture = colorAttachment.texture.clone({
115
+ width,
116
+ height
117
+ });
118
+ this.destroyAttachedResource(colorAttachment);
119
+ this.colorAttachments[i] = resizedTexture.view;
120
+ this.attachResource(resizedTexture.view);
121
+ });
124
122
  if (this.depthStencilAttachment) {
125
123
  const resizedTexture = this.depthStencilAttachment.texture.clone({
126
124
  width,
@@ -1 +1 @@
1
- {"version":3,"file":"framebuffer.js","sourceRoot":"","sources":["../../../src/adapter/resources/framebuffer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"framebuffer.js","sourceRoot":"","sources":["../../../src/adapter/resources/framebuffer.ts"],"names":[],"mappings":"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"}