@luma.gl/core 9.2.5 → 9.3.0-alpha.10

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 (280) hide show
  1. package/dist/adapter/canvas-context.d.ts +6 -162
  2. package/dist/adapter/canvas-context.d.ts.map +1 -1
  3. package/dist/adapter/canvas-context.js +5 -419
  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 +81 -16
  14. package/dist/adapter/device.d.ts.map +1 -1
  15. package/dist/adapter/device.js +196 -10
  16. package/dist/adapter/device.js.map +1 -1
  17. package/dist/adapter/luma.js +1 -1
  18. package/dist/adapter/luma.js.map +1 -1
  19. package/dist/adapter/presentation-context.d.ts +11 -0
  20. package/dist/adapter/presentation-context.d.ts.map +1 -0
  21. package/dist/adapter/presentation-context.js +12 -0
  22. package/dist/adapter/presentation-context.js.map +1 -0
  23. package/dist/adapter/resources/buffer.d.ts +5 -5
  24. package/dist/adapter/resources/buffer.d.ts.map +1 -1
  25. package/dist/adapter/resources/buffer.js +18 -7
  26. package/dist/adapter/resources/buffer.js.map +1 -1
  27. package/dist/adapter/resources/command-buffer.d.ts +3 -1
  28. package/dist/adapter/resources/command-buffer.d.ts.map +1 -1
  29. package/dist/adapter/resources/command-buffer.js +3 -1
  30. package/dist/adapter/resources/command-buffer.js.map +1 -1
  31. package/dist/adapter/resources/command-encoder.d.ts +30 -7
  32. package/dist/adapter/resources/command-encoder.d.ts.map +1 -1
  33. package/dist/adapter/resources/command-encoder.js +68 -2
  34. package/dist/adapter/resources/command-encoder.js.map +1 -1
  35. package/dist/adapter/resources/compute-pipeline.d.ts +2 -2
  36. package/dist/adapter/resources/compute-pipeline.d.ts.map +1 -1
  37. package/dist/adapter/resources/fence.d.ts +16 -0
  38. package/dist/adapter/resources/fence.d.ts.map +1 -0
  39. package/dist/adapter/resources/fence.js +17 -0
  40. package/dist/adapter/resources/fence.js.map +1 -0
  41. package/dist/adapter/resources/framebuffer.d.ts +1 -1
  42. package/dist/adapter/resources/framebuffer.d.ts.map +1 -1
  43. package/dist/adapter/resources/framebuffer.js +15 -12
  44. package/dist/adapter/resources/framebuffer.js.map +1 -1
  45. package/dist/adapter/resources/query-set.d.ts +17 -1
  46. package/dist/adapter/resources/query-set.d.ts.map +1 -1
  47. package/dist/adapter/resources/query-set.js.map +1 -1
  48. package/dist/adapter/resources/render-pipeline.d.ts +28 -10
  49. package/dist/adapter/resources/render-pipeline.d.ts.map +1 -1
  50. package/dist/adapter/resources/render-pipeline.js +21 -2
  51. package/dist/adapter/resources/render-pipeline.js.map +1 -1
  52. package/dist/adapter/resources/resource.d.ts +13 -0
  53. package/dist/adapter/resources/resource.d.ts.map +1 -1
  54. package/dist/adapter/resources/resource.js +243 -14
  55. package/dist/adapter/resources/resource.js.map +1 -1
  56. package/dist/adapter/resources/shader.js +27 -25
  57. package/dist/adapter/resources/shader.js.map +1 -1
  58. package/dist/adapter/resources/shared-render-pipeline.d.ts +22 -0
  59. package/dist/adapter/resources/shared-render-pipeline.d.ts.map +1 -0
  60. package/dist/adapter/resources/shared-render-pipeline.js +25 -0
  61. package/dist/adapter/resources/shared-render-pipeline.js.map +1 -0
  62. package/dist/adapter/resources/texture-view.d.ts +1 -1
  63. package/dist/adapter/resources/texture-view.d.ts.map +1 -1
  64. package/dist/adapter/resources/texture.d.ts +168 -28
  65. package/dist/adapter/resources/texture.d.ts.map +1 -1
  66. package/dist/adapter/resources/texture.js +284 -25
  67. package/dist/adapter/resources/texture.js.map +1 -1
  68. package/dist/adapter/types/attachments.d.ts +1 -1
  69. package/dist/adapter/types/attachments.d.ts.map +1 -1
  70. package/dist/adapter/types/buffer-layout.d.ts +1 -1
  71. package/dist/adapter/types/buffer-layout.d.ts.map +1 -1
  72. package/dist/adapter/types/parameters.d.ts +3 -1
  73. package/dist/adapter/types/parameters.d.ts.map +1 -1
  74. package/dist/adapter/types/parameters.js +1 -0
  75. package/dist/adapter/types/parameters.js.map +1 -1
  76. package/dist/adapter/types/shader-layout.d.ts +10 -6
  77. package/dist/adapter/types/shader-layout.d.ts.map +1 -1
  78. package/dist/adapter/types/uniforms.d.ts +6 -0
  79. package/dist/adapter/types/uniforms.d.ts.map +1 -1
  80. package/dist/adapter-utils/bind-groups.d.ts +9 -0
  81. package/dist/adapter-utils/bind-groups.d.ts.map +1 -0
  82. package/dist/adapter-utils/bind-groups.js +41 -0
  83. package/dist/adapter-utils/bind-groups.js.map +1 -0
  84. package/dist/adapter-utils/format-compiler-log.d.ts.map +1 -1
  85. package/dist/adapter-utils/format-compiler-log.js +23 -15
  86. package/dist/adapter-utils/format-compiler-log.js.map +1 -1
  87. package/dist/adapter-utils/get-attribute-from-layouts.d.ts +2 -2
  88. package/dist/adapter-utils/get-attribute-from-layouts.d.ts.map +1 -1
  89. package/dist/adapter-utils/get-attribute-from-layouts.js +6 -6
  90. package/dist/adapter-utils/get-attribute-from-layouts.js.map +1 -1
  91. package/dist/dist.dev.js +2692 -645
  92. package/dist/dist.min.js +10 -9
  93. package/dist/factories/bind-group-factory.d.ts +20 -0
  94. package/dist/factories/bind-group-factory.d.ts.map +1 -0
  95. package/dist/factories/bind-group-factory.js +79 -0
  96. package/dist/factories/bind-group-factory.js.map +1 -0
  97. package/dist/factories/core-module-state.d.ts +7 -0
  98. package/dist/factories/core-module-state.d.ts.map +1 -0
  99. package/dist/{shadertypes/data-types/shader-types.js → factories/core-module-state.js} +1 -1
  100. package/dist/factories/core-module-state.js.map +1 -0
  101. package/dist/factories/pipeline-factory.d.ts +54 -0
  102. package/dist/factories/pipeline-factory.d.ts.map +1 -0
  103. package/dist/factories/pipeline-factory.js +270 -0
  104. package/dist/factories/pipeline-factory.js.map +1 -0
  105. package/dist/factories/shader-factory.d.ts +20 -0
  106. package/dist/factories/shader-factory.d.ts.map +1 -0
  107. package/dist/factories/shader-factory.js +84 -0
  108. package/dist/factories/shader-factory.js.map +1 -0
  109. package/dist/index.cjs +2427 -554
  110. package/dist/index.cjs.map +4 -4
  111. package/dist/index.d.ts +30 -14
  112. package/dist/index.d.ts.map +1 -1
  113. package/dist/index.js +19 -7
  114. package/dist/index.js.map +1 -1
  115. package/dist/portable/shader-block-writer.d.ts +51 -0
  116. package/dist/portable/shader-block-writer.d.ts.map +1 -0
  117. package/dist/portable/shader-block-writer.js +185 -0
  118. package/dist/portable/shader-block-writer.js.map +1 -0
  119. package/dist/portable/uniform-block.d.ts +1 -1
  120. package/dist/portable/uniform-block.d.ts.map +1 -1
  121. package/dist/portable/uniform-store.d.ts +55 -24
  122. package/dist/portable/uniform-store.d.ts.map +1 -1
  123. package/dist/portable/uniform-store.js +73 -25
  124. package/dist/portable/uniform-store.js.map +1 -1
  125. package/dist/shadertypes/data-types/data-type-decoder.d.ts +20 -0
  126. package/dist/shadertypes/data-types/data-type-decoder.d.ts.map +1 -0
  127. package/dist/shadertypes/data-types/data-type-decoder.js +79 -0
  128. package/dist/shadertypes/data-types/data-type-decoder.js.map +1 -0
  129. package/dist/shadertypes/data-types/data-types.d.ts +31 -12
  130. package/dist/shadertypes/data-types/data-types.d.ts.map +1 -1
  131. package/dist/shadertypes/data-types/decode-data-types.d.ts.map +1 -1
  132. package/dist/shadertypes/data-types/decode-data-types.js +2 -1
  133. package/dist/shadertypes/data-types/decode-data-types.js.map +1 -1
  134. package/dist/{image-utils → shadertypes/image-types}/image-types.d.ts +0 -6
  135. package/dist/shadertypes/image-types/image-types.d.ts.map +1 -0
  136. package/dist/shadertypes/image-types/image-types.js.map +1 -0
  137. package/dist/shadertypes/shader-types/shader-block-layout.d.ts +72 -0
  138. package/dist/shadertypes/shader-types/shader-block-layout.d.ts.map +1 -0
  139. package/dist/shadertypes/shader-types/shader-block-layout.js +209 -0
  140. package/dist/shadertypes/shader-types/shader-block-layout.js.map +1 -0
  141. package/dist/shadertypes/shader-types/shader-type-decoder.d.ts +41 -0
  142. package/dist/shadertypes/shader-types/shader-type-decoder.d.ts.map +1 -0
  143. package/dist/shadertypes/{data-types/decode-shader-types.js → shader-types/shader-type-decoder.js} +43 -4
  144. package/dist/shadertypes/shader-types/shader-type-decoder.js.map +1 -0
  145. package/dist/shadertypes/shader-types/shader-types.d.ts +101 -0
  146. package/dist/shadertypes/shader-types/shader-types.d.ts.map +1 -0
  147. package/dist/shadertypes/shader-types/shader-types.js +30 -0
  148. package/dist/shadertypes/shader-types/shader-types.js.map +1 -0
  149. package/dist/shadertypes/texture-types/pixel-utils.d.ts.map +1 -0
  150. package/dist/shadertypes/{textures → texture-types}/pixel-utils.js +4 -4
  151. package/dist/shadertypes/texture-types/pixel-utils.js.map +1 -0
  152. package/dist/shadertypes/texture-types/texture-format-decoder.d.ts +36 -0
  153. package/dist/shadertypes/texture-types/texture-format-decoder.d.ts.map +1 -0
  154. package/dist/shadertypes/{textures → texture-types}/texture-format-decoder.js +109 -37
  155. package/dist/shadertypes/texture-types/texture-format-decoder.js.map +1 -0
  156. package/dist/shadertypes/texture-types/texture-format-generics.d.ts +34 -0
  157. package/dist/shadertypes/texture-types/texture-format-generics.d.ts.map +1 -0
  158. package/dist/shadertypes/texture-types/texture-format-generics.js.map +1 -0
  159. package/dist/shadertypes/texture-types/texture-format-table.d.ts.map +1 -0
  160. package/dist/shadertypes/{textures → texture-types}/texture-format-table.js +10 -9
  161. package/dist/shadertypes/texture-types/texture-format-table.js.map +1 -0
  162. package/dist/shadertypes/{textures → texture-types}/texture-formats.d.ts +51 -17
  163. package/dist/shadertypes/texture-types/texture-formats.d.ts.map +1 -0
  164. package/dist/shadertypes/{textures → texture-types}/texture-formats.js +1 -0
  165. package/dist/shadertypes/texture-types/texture-formats.js.map +1 -0
  166. package/dist/shadertypes/texture-types/texture-layout.d.ts +5 -0
  167. package/dist/shadertypes/texture-types/texture-layout.d.ts.map +1 -0
  168. package/dist/shadertypes/texture-types/texture-layout.js +41 -0
  169. package/dist/shadertypes/texture-types/texture-layout.js.map +1 -0
  170. package/dist/shadertypes/vertex-types/vertex-format-decoder.d.ts +24 -0
  171. package/dist/shadertypes/vertex-types/vertex-format-decoder.d.ts.map +1 -0
  172. package/dist/shadertypes/vertex-types/vertex-format-decoder.js +106 -0
  173. package/dist/shadertypes/vertex-types/vertex-format-decoder.js.map +1 -0
  174. package/dist/shadertypes/vertex-types/vertex-formats.d.ts +50 -0
  175. package/dist/shadertypes/vertex-types/vertex-formats.d.ts.map +1 -0
  176. package/dist/shadertypes/vertex-types/vertex-formats.js.map +1 -0
  177. package/dist/utils/array-equal.d.ts +1 -1
  178. package/dist/utils/array-equal.d.ts.map +1 -1
  179. package/dist/utils/array-equal.js +15 -9
  180. package/dist/utils/array-equal.js.map +1 -1
  181. package/dist/utils/assert.d.ts +5 -0
  182. package/dist/utils/assert.d.ts.map +1 -0
  183. package/dist/utils/assert.js +17 -0
  184. package/dist/utils/assert.js.map +1 -0
  185. package/dist/utils/stats-manager.d.ts.map +1 -1
  186. package/dist/utils/stats-manager.js +61 -1
  187. package/dist/utils/stats-manager.js.map +1 -1
  188. package/package.json +6 -6
  189. package/src/adapter/canvas-context.ts +7 -556
  190. package/src/adapter/canvas-observer.ts +130 -0
  191. package/src/adapter/canvas-surface.ts +521 -0
  192. package/src/adapter/device.ts +312 -24
  193. package/src/adapter/presentation-context.ts +16 -0
  194. package/src/adapter/resources/buffer.ts +19 -9
  195. package/src/adapter/resources/command-buffer.ts +4 -2
  196. package/src/adapter/resources/command-encoder.ts +101 -10
  197. package/src/adapter/resources/compute-pipeline.ts +2 -2
  198. package/src/adapter/resources/fence.ts +32 -0
  199. package/src/adapter/resources/framebuffer.ts +16 -13
  200. package/src/adapter/resources/query-set.ts +17 -1
  201. package/src/adapter/resources/render-pipeline.ts +52 -16
  202. package/src/adapter/resources/resource.ts +289 -14
  203. package/src/adapter/resources/shader.ts +28 -28
  204. package/src/adapter/resources/shared-render-pipeline.ts +40 -0
  205. package/src/adapter/resources/texture-view.ts +1 -1
  206. package/src/adapter/resources/texture.ts +427 -49
  207. package/src/adapter/types/attachments.ts +1 -1
  208. package/src/adapter/types/buffer-layout.ts +1 -1
  209. package/src/adapter/types/parameters.ts +4 -1
  210. package/src/adapter/types/shader-layout.ts +15 -9
  211. package/src/adapter/types/uniforms.ts +12 -0
  212. package/src/adapter-utils/bind-groups.ts +71 -0
  213. package/src/adapter-utils/format-compiler-log.ts +23 -15
  214. package/src/adapter-utils/get-attribute-from-layouts.ts +8 -11
  215. package/src/factories/bind-group-factory.ts +139 -0
  216. package/src/factories/core-module-state.ts +11 -0
  217. package/src/factories/pipeline-factory.ts +328 -0
  218. package/src/factories/shader-factory.ts +103 -0
  219. package/src/index.ts +70 -26
  220. package/src/portable/shader-block-writer.ts +254 -0
  221. package/src/portable/uniform-block.ts +1 -1
  222. package/src/portable/uniform-store.ts +98 -40
  223. package/src/shadertypes/data-types/data-type-decoder.ts +105 -0
  224. package/src/shadertypes/data-types/data-types.ts +100 -48
  225. package/src/shadertypes/data-types/decode-data-types.ts +2 -1
  226. package/src/{image-utils → shadertypes/image-types}/image-types.ts +0 -7
  227. package/src/shadertypes/shader-types/shader-block-layout.ts +340 -0
  228. package/src/shadertypes/{data-types/decode-shader-types.ts → shader-types/shader-type-decoder.ts} +88 -14
  229. package/src/shadertypes/shader-types/shader-types.ts +207 -0
  230. package/src/shadertypes/{textures → texture-types}/pixel-utils.ts +4 -4
  231. package/src/shadertypes/{textures → texture-types}/texture-format-decoder.ts +166 -45
  232. package/src/shadertypes/{textures → texture-types}/texture-format-generics.ts +42 -48
  233. package/src/shadertypes/{textures → texture-types}/texture-format-table.ts +10 -9
  234. package/src/shadertypes/{textures → texture-types}/texture-formats.ts +73 -17
  235. package/src/shadertypes/texture-types/texture-layout.ts +60 -0
  236. package/src/shadertypes/vertex-types/vertex-format-decoder.ts +131 -0
  237. package/src/shadertypes/vertex-types/vertex-formats.ts +183 -0
  238. package/src/utils/array-equal.ts +21 -9
  239. package/src/utils/assert.ts +18 -0
  240. package/src/utils/stats-manager.ts +76 -2
  241. package/dist/image-utils/image-types.d.ts.map +0 -1
  242. package/dist/image-utils/image-types.js.map +0 -1
  243. package/dist/portable/uniform-buffer-layout.d.ts +0 -28
  244. package/dist/portable/uniform-buffer-layout.d.ts.map +0 -1
  245. package/dist/portable/uniform-buffer-layout.js +0 -96
  246. package/dist/portable/uniform-buffer-layout.js.map +0 -1
  247. package/dist/shadertypes/data-types/decode-shader-types.d.ts +0 -17
  248. package/dist/shadertypes/data-types/decode-shader-types.d.ts.map +0 -1
  249. package/dist/shadertypes/data-types/decode-shader-types.js.map +0 -1
  250. package/dist/shadertypes/data-types/shader-types.d.ts +0 -45
  251. package/dist/shadertypes/data-types/shader-types.d.ts.map +0 -1
  252. package/dist/shadertypes/data-types/shader-types.js.map +0 -1
  253. package/dist/shadertypes/textures/pixel-utils.d.ts.map +0 -1
  254. package/dist/shadertypes/textures/pixel-utils.js.map +0 -1
  255. package/dist/shadertypes/textures/texture-format-decoder.d.ts +0 -18
  256. package/dist/shadertypes/textures/texture-format-decoder.d.ts.map +0 -1
  257. package/dist/shadertypes/textures/texture-format-decoder.js.map +0 -1
  258. package/dist/shadertypes/textures/texture-format-generics.d.ts +0 -33
  259. package/dist/shadertypes/textures/texture-format-generics.d.ts.map +0 -1
  260. package/dist/shadertypes/textures/texture-format-generics.js.map +0 -1
  261. package/dist/shadertypes/textures/texture-format-table.d.ts.map +0 -1
  262. package/dist/shadertypes/textures/texture-format-table.js.map +0 -1
  263. package/dist/shadertypes/textures/texture-formats.d.ts.map +0 -1
  264. package/dist/shadertypes/textures/texture-formats.js.map +0 -1
  265. package/dist/shadertypes/vertex-arrays/decode-vertex-format.d.ts +0 -18
  266. package/dist/shadertypes/vertex-arrays/decode-vertex-format.d.ts.map +0 -1
  267. package/dist/shadertypes/vertex-arrays/decode-vertex-format.js +0 -100
  268. package/dist/shadertypes/vertex-arrays/decode-vertex-format.js.map +0 -1
  269. package/dist/shadertypes/vertex-arrays/vertex-formats.d.ts +0 -27
  270. package/dist/shadertypes/vertex-arrays/vertex-formats.d.ts.map +0 -1
  271. package/dist/shadertypes/vertex-arrays/vertex-formats.js.map +0 -1
  272. package/src/portable/uniform-buffer-layout.ts +0 -118
  273. package/src/shadertypes/data-types/shader-types.ts +0 -87
  274. package/src/shadertypes/vertex-arrays/decode-vertex-format.ts +0 -124
  275. package/src/shadertypes/vertex-arrays/vertex-formats.ts +0 -91
  276. /package/dist/{image-utils → shadertypes/image-types}/image-types.js +0 -0
  277. /package/dist/shadertypes/{textures → texture-types}/pixel-utils.d.ts +0 -0
  278. /package/dist/shadertypes/{textures → texture-types}/texture-format-generics.js +0 -0
  279. /package/dist/shadertypes/{textures → texture-types}/texture-format-table.d.ts +0 -0
  280. /package/dist/shadertypes/{vertex-arrays → vertex-types}/vertex-formats.js +0 -0
@@ -4,6 +4,7 @@
4
4
  import { Resource } from "./resource.js";
5
5
  import { Sampler } from "./sampler.js";
6
6
  import { log } from "../../utils/log.js";
7
+ import { textureFormatDecoder } from "../../shadertypes/texture-types/texture-format-decoder.js";
7
8
  const BASE_DIMENSIONS = {
8
9
  '1d': '1d',
9
10
  '2d': '2d',
@@ -46,7 +47,15 @@ export class Texture extends Resource {
46
47
  depth;
47
48
  /** mip levels in this texture */
48
49
  mipLevels;
49
- /** "Time" of last update. Monotonically increasing timestamp. TODO move to AsyncTexture? */
50
+ /** sample count */
51
+ samples;
52
+ /** Rows are multiples of this length, padded with extra bytes if needed */
53
+ byteAlignment;
54
+ /** The ready promise is always resolved. It is provided for type compatibility with DynamicTexture. */
55
+ ready = Promise.resolve(this);
56
+ /** isReady is always true. It is provided for type compatibility with DynamicTexture. */
57
+ isReady = true;
58
+ /** "Time" of last update. Monotonically increasing timestamp. TODO move to DynamicTexture? */
50
59
  updateTimestamp;
51
60
  get [Symbol.toStringTag]() {
52
61
  return 'Texture';
@@ -55,7 +64,7 @@ export class Texture extends Resource {
55
64
  return `Texture(${this.id},${this.format},${this.width}x${this.height})`;
56
65
  }
57
66
  /** Do not use directly. Create with device.createTexture() */
58
- constructor(device, props) {
67
+ constructor(device, props, backendProps) {
59
68
  props = Texture.normalizeProps(device, props);
60
69
  super(device, props, Texture.defaultProps);
61
70
  this.dimension = this.props.dimension;
@@ -66,6 +75,10 @@ export class Texture extends Resource {
66
75
  this.height = this.props.height;
67
76
  this.depth = this.props.depth;
68
77
  this.mipLevels = this.props.mipLevels;
78
+ this.samples = this.props.samples || 1;
79
+ if (this.dimension === 'cube') {
80
+ this.depth = 6;
81
+ }
69
82
  // Calculate size, if not provided
70
83
  if (this.props.width === undefined || this.props.height === undefined) {
71
84
  if (device.isExternalImage(props.data)) {
@@ -77,17 +90,14 @@ export class Texture extends Resource {
77
90
  this.width = 1;
78
91
  this.height = 1;
79
92
  if (this.props.width === undefined || this.props.height === undefined) {
80
- log.warn(`${this} created with undefined width or height. This is deprecated. Use AsyncTexture instead.`)();
93
+ log.warn(`${this} created with undefined width or height. This is deprecated. Use DynamicTexture instead.`)();
81
94
  }
82
95
  }
83
96
  }
97
+ this.byteAlignment = backendProps?.byteAlignment || 1;
84
98
  // TODO - perhaps this should be set on async write completion?
85
99
  this.updateTimestamp = device.incrementTimestamp();
86
100
  }
87
- /** Set sampler props associated with this texture */
88
- setSampler(sampler) {
89
- this.sampler = sampler instanceof Sampler ? sampler : this.device.createSampler(sampler);
90
- }
91
101
  /**
92
102
  * Create a new texture with the same parameters and optionally a different size
93
103
  * @note Textures are immutable and cannot be resized after creation, but we can create a similar texture with the same parameters but a new size.
@@ -96,6 +106,107 @@ export class Texture extends Resource {
96
106
  clone(size) {
97
107
  return this.device.createTexture({ ...this.props, ...size });
98
108
  }
109
+ /** Set sampler props associated with this texture */
110
+ setSampler(sampler) {
111
+ this.sampler = sampler instanceof Sampler ? sampler : this.device.createSampler(sampler);
112
+ }
113
+ /**
114
+ * Copy raw image data (bytes) into the texture.
115
+ *
116
+ * @note Deprecated compatibility wrapper over {@link writeData}.
117
+ * @note Uses the same layout defaults and alignment rules as {@link writeData}.
118
+ * @note Tightly packed CPU uploads can omit `bytesPerRow` and `rowsPerImage`.
119
+ * @note If the CPU source rows are padded, pass explicit `bytesPerRow` and `rowsPerImage`.
120
+ * @deprecated Use writeData()
121
+ */
122
+ copyImageData(options) {
123
+ const { data, depth, ...writeOptions } = options;
124
+ this.writeData(data, {
125
+ ...writeOptions,
126
+ depthOrArrayLayers: writeOptions.depthOrArrayLayers ?? depth
127
+ });
128
+ }
129
+ /**
130
+ * Calculates the memory layout of the texture, required when reading and writing data.
131
+ * @return the backend-aligned linear layout, in particular bytesPerRow which includes any required padding for buffer copy/read paths
132
+ */
133
+ computeMemoryLayout(options_ = {}) {
134
+ const options = this._normalizeTextureReadOptions(options_);
135
+ const { width = this.width, height = this.height, depthOrArrayLayers = this.depth } = options;
136
+ const { format, byteAlignment } = this;
137
+ // TODO - does the overriding above make sense?
138
+ // return textureFormatDecoder.computeMemoryLayout(this);
139
+ return textureFormatDecoder.computeMemoryLayout({
140
+ format,
141
+ width,
142
+ height,
143
+ depth: depthOrArrayLayers,
144
+ byteAlignment
145
+ });
146
+ }
147
+ /**
148
+ * Read the contents of a texture into a GPU Buffer.
149
+ * @returns A Buffer containing the texture data.
150
+ *
151
+ * @note The memory layout of the texture data is determined by the texture format and dimensions.
152
+ * @note The application can call Texture.computeMemoryLayout() to compute the backend-aligned layout.
153
+ * @note The application can call Buffer.readAsync() to read the returned buffer on the CPU.
154
+ * @note The destination buffer must be supplied by the caller and must be large enough for the requested region.
155
+ * @note On WebGPU this corresponds to a texture-to-buffer copy and uses buffer-copy alignment rules.
156
+ * @note On WebGL, luma.gl emulates the same logical readback behavior.
157
+ */
158
+ readBuffer(options, buffer) {
159
+ throw new Error('readBuffer not implemented');
160
+ }
161
+ /**
162
+ * Reads data from a texture into an ArrayBuffer.
163
+ * @returns An ArrayBuffer containing the texture data.
164
+ *
165
+ * @note The memory layout of the texture data is determined by the texture format and dimensions.
166
+ * @note The application can call Texture.computeMemoryLayout() to compute the layout.
167
+ * @deprecated Use Texture.readBuffer() with an explicit destination buffer, or DynamicTexture.readAsync() for convenience readback.
168
+ */
169
+ readDataAsync(options) {
170
+ throw new Error('readBuffer not implemented');
171
+ }
172
+ /**
173
+ * Writes a GPU Buffer into a texture.
174
+ *
175
+ * @param buffer - Source GPU buffer.
176
+ * @param options - Destination subresource, extent, and source layout options.
177
+ * @note The memory layout of the texture data is determined by the texture format and dimensions.
178
+ * @note The application can call Texture.computeMemoryLayout() to compute the backend-aligned layout.
179
+ * @note On WebGPU this corresponds to a buffer-to-texture copy and uses buffer-copy alignment rules.
180
+ * @note On WebGL, luma.gl emulates the same destination and layout semantics.
181
+ */
182
+ writeBuffer(buffer, options) {
183
+ throw new Error('readBuffer not implemented');
184
+ }
185
+ /**
186
+ * Writes an array buffer into a texture.
187
+ *
188
+ * @param data - Source texel data.
189
+ * @param options - Destination subresource, extent, and source layout options.
190
+ * @note If `bytesPerRow` and `rowsPerImage` are omitted, luma.gl computes a tightly packed CPU-memory layout for the requested region.
191
+ * @note On WebGPU this corresponds to `GPUQueue.writeTexture()` and does not implicitly pad rows to 256 bytes.
192
+ * @note On WebGL, padded CPU data is supported via the same `bytesPerRow` and `rowsPerImage` options.
193
+ */
194
+ writeData(data, options) {
195
+ throw new Error('readBuffer not implemented');
196
+ }
197
+ // IMPLEMENTATION SPECIFIC
198
+ /**
199
+ * WebGL can read data synchronously.
200
+ * @note While it is convenient, the performance penalty is very significant
201
+ */
202
+ readDataSyncWebGL(options) {
203
+ throw new Error('readDataSyncWebGL not available');
204
+ }
205
+ /** Generate mipmaps (WebGL only) */
206
+ generateMipmapsWebGL() {
207
+ throw new Error('generateMipmapsWebGL not available');
208
+ }
209
+ // HELPERS
99
210
  /** Ensure we have integer coordinates */
100
211
  static normalizeProps(device, props) {
101
212
  const newProps = { ...props };
@@ -109,7 +220,6 @@ export class Texture extends Resource {
109
220
  }
110
221
  return newProps;
111
222
  }
112
- // HELPERS
113
223
  /** Initialize texture with supplied props */
114
224
  // eslint-disable-next-line max-statements
115
225
  _initializeData(data) {
@@ -145,34 +255,156 @@ export class Texture extends Resource {
145
255
  }
146
256
  }
147
257
  _normalizeCopyImageDataOptions(options_) {
148
- const { width, height, depth } = this;
149
- const options = { ...Texture.defaultCopyDataOptions, width, height, depth, ...options_ };
150
- const info = this.device.getTextureFormatInfo(this.format);
151
- if (!options_.bytesPerRow && !info.bytesPerPixel) {
152
- throw new Error(`bytesPerRow must be provided for texture format ${this.format}`);
153
- }
154
- options.bytesPerRow = options_.bytesPerRow || width * (info.bytesPerPixel || 4);
155
- options.rowsPerImage = options_.rowsPerImage || height;
156
- // WebGL will error if we try to copy outside the bounds of the texture
157
- // options.width = Math.min(options.width, this.width - options.x);
158
- // options.height = Math.min(options.height, this.height - options.y);
159
- return options;
258
+ const { data, depth, ...writeOptions } = options_;
259
+ const options = this._normalizeTextureWriteOptions({
260
+ ...writeOptions,
261
+ depthOrArrayLayers: writeOptions.depthOrArrayLayers ?? depth
262
+ });
263
+ return { data, depth: options.depthOrArrayLayers, ...options };
160
264
  }
161
265
  _normalizeCopyExternalImageOptions(options_) {
266
+ const optionsWithoutUndefined = Texture._omitUndefined(options_);
267
+ const mipLevel = optionsWithoutUndefined.mipLevel ?? 0;
268
+ const mipLevelSize = this._getMipLevelSize(mipLevel);
162
269
  const size = this.device.getExternalImageSize(options_.image);
163
- const options = { ...Texture.defaultCopyExternalImageOptions, ...size, ...options_ };
270
+ const options = {
271
+ ...Texture.defaultCopyExternalImageOptions,
272
+ ...mipLevelSize,
273
+ ...size,
274
+ ...optionsWithoutUndefined
275
+ };
164
276
  // WebGL will error if we try to copy outside the bounds of the texture
165
- options.width = Math.min(options.width, this.width - options.x);
166
- options.height = Math.min(options.height, this.height - options.y);
277
+ options.width = Math.min(options.width, mipLevelSize.width - options.x);
278
+ options.height = Math.min(options.height, mipLevelSize.height - options.y);
279
+ options.depth = Math.min(options.depth, mipLevelSize.depthOrArrayLayers - options.z);
167
280
  return options;
168
281
  }
169
- /** Default options */
282
+ _normalizeTextureReadOptions(options_) {
283
+ const optionsWithoutUndefined = Texture._omitUndefined(options_);
284
+ const mipLevel = optionsWithoutUndefined.mipLevel ?? 0;
285
+ const mipLevelSize = this._getMipLevelSize(mipLevel);
286
+ const options = {
287
+ ...Texture.defaultTextureReadOptions,
288
+ ...mipLevelSize,
289
+ ...optionsWithoutUndefined
290
+ };
291
+ // WebGL will error if we try to copy outside the bounds of the texture
292
+ options.width = Math.min(options.width, mipLevelSize.width - options.x);
293
+ options.height = Math.min(options.height, mipLevelSize.height - options.y);
294
+ options.depthOrArrayLayers = Math.min(options.depthOrArrayLayers, mipLevelSize.depthOrArrayLayers - options.z);
295
+ return options;
296
+ }
297
+ /**
298
+ * Normalizes a texture read request and validates the color-only readback contract used by the
299
+ * current texture read APIs. Supported dimensions are `2d`, `cube`, `cube-array`,
300
+ * `2d-array`, and `3d`.
301
+ *
302
+ * @throws if the texture format, aspect, or dimension is not supported by the first-pass
303
+ * color-read implementation.
304
+ */
305
+ _getSupportedColorReadOptions(options_) {
306
+ const options = this._normalizeTextureReadOptions(options_);
307
+ const formatInfo = textureFormatDecoder.getInfo(this.format);
308
+ this._validateColorReadAspect(options);
309
+ this._validateColorReadFormat(formatInfo);
310
+ switch (this.dimension) {
311
+ case '2d':
312
+ case 'cube':
313
+ case 'cube-array':
314
+ case '2d-array':
315
+ case '3d':
316
+ return options;
317
+ default:
318
+ throw new Error(`${this} color readback does not support ${this.dimension} textures`);
319
+ }
320
+ }
321
+ /** Validates that a read request targets the full color aspect of the texture. */
322
+ _validateColorReadAspect(options) {
323
+ if (options.aspect !== 'all') {
324
+ throw new Error(`${this} color readback only supports aspect 'all'`);
325
+ }
326
+ }
327
+ /** Validates that a read request targets an uncompressed color-renderable texture format. */
328
+ _validateColorReadFormat(formatInfo) {
329
+ if (formatInfo.compressed) {
330
+ throw new Error(`${this} color readback does not support compressed formats (${this.format})`);
331
+ }
332
+ switch (formatInfo.attachment) {
333
+ case 'color':
334
+ return;
335
+ case 'depth':
336
+ throw new Error(`${this} color readback does not support depth formats (${this.format})`);
337
+ case 'stencil':
338
+ throw new Error(`${this} color readback does not support stencil formats (${this.format})`);
339
+ case 'depth-stencil':
340
+ throw new Error(`${this} color readback does not support depth-stencil formats (${this.format})`);
341
+ default:
342
+ throw new Error(`${this} color readback does not support format ${this.format}`);
343
+ }
344
+ }
345
+ _normalizeTextureWriteOptions(options_) {
346
+ const optionsWithoutUndefined = Texture._omitUndefined(options_);
347
+ const mipLevel = optionsWithoutUndefined.mipLevel ?? 0;
348
+ const mipLevelSize = this._getMipLevelSize(mipLevel);
349
+ const options = {
350
+ ...Texture.defaultTextureWriteOptions,
351
+ ...mipLevelSize,
352
+ ...optionsWithoutUndefined
353
+ };
354
+ options.width = Math.min(options.width, mipLevelSize.width - options.x);
355
+ options.height = Math.min(options.height, mipLevelSize.height - options.y);
356
+ options.depthOrArrayLayers = Math.min(options.depthOrArrayLayers, mipLevelSize.depthOrArrayLayers - options.z);
357
+ const layout = textureFormatDecoder.computeMemoryLayout({
358
+ format: this.format,
359
+ width: options.width,
360
+ height: options.height,
361
+ depth: options.depthOrArrayLayers,
362
+ byteAlignment: this.byteAlignment
363
+ });
364
+ const minimumBytesPerRow = layout.bytesPerPixel * options.width;
365
+ options.bytesPerRow = optionsWithoutUndefined.bytesPerRow ?? layout.bytesPerRow;
366
+ options.rowsPerImage = optionsWithoutUndefined.rowsPerImage ?? options.height;
367
+ if (options.bytesPerRow < minimumBytesPerRow) {
368
+ throw new Error(`bytesPerRow (${options.bytesPerRow}) must be at least ${minimumBytesPerRow} for ${this.format}`);
369
+ }
370
+ if (options.rowsPerImage < options.height) {
371
+ throw new Error(`rowsPerImage (${options.rowsPerImage}) must be at least ${options.height} for ${this.format}`);
372
+ }
373
+ const bytesPerPixel = this.device.getTextureFormatInfo(this.format).bytesPerPixel;
374
+ if (bytesPerPixel && options.bytesPerRow % bytesPerPixel !== 0) {
375
+ throw new Error(`bytesPerRow (${options.bytesPerRow}) must be a multiple of bytesPerPixel (${bytesPerPixel}) for ${this.format}`);
376
+ }
377
+ return options;
378
+ }
379
+ _getMipLevelSize(mipLevel) {
380
+ const width = Math.max(1, this.width >> mipLevel);
381
+ const height = this.baseDimension === '1d' ? 1 : Math.max(1, this.height >> mipLevel);
382
+ const depthOrArrayLayers = this.dimension === '3d' ? Math.max(1, this.depth >> mipLevel) : this.depth;
383
+ return { width, height, depthOrArrayLayers };
384
+ }
385
+ getAllocatedByteLength() {
386
+ let allocatedByteLength = 0;
387
+ for (let mipLevel = 0; mipLevel < this.mipLevels; mipLevel++) {
388
+ const { width, height, depthOrArrayLayers } = this._getMipLevelSize(mipLevel);
389
+ allocatedByteLength += textureFormatDecoder.computeMemoryLayout({
390
+ format: this.format,
391
+ width,
392
+ height,
393
+ depth: depthOrArrayLayers,
394
+ byteAlignment: 1
395
+ }).byteLength;
396
+ }
397
+ return allocatedByteLength * this.samples;
398
+ }
399
+ static _omitUndefined(options) {
400
+ return Object.fromEntries(Object.entries(options).filter(([, value]) => value !== undefined));
401
+ }
170
402
  static defaultProps = {
171
403
  ...Resource.defaultProps,
172
404
  data: null,
173
405
  dimension: '2d',
174
406
  format: 'rgba8unorm',
175
- usage: Texture.TEXTURE | Texture.RENDER_ATTACHMENT | Texture.COPY_DST,
407
+ usage: Texture.SAMPLE | Texture.RENDER | Texture.COPY_DST,
176
408
  width: undefined,
177
409
  height: undefined,
178
410
  depth: 1,
@@ -186,6 +418,10 @@ export class Texture extends Resource {
186
418
  byteOffset: 0,
187
419
  bytesPerRow: undefined,
188
420
  rowsPerImage: undefined,
421
+ width: undefined,
422
+ height: undefined,
423
+ depthOrArrayLayers: undefined,
424
+ depth: 1,
189
425
  mipLevel: 0,
190
426
  x: 0,
191
427
  y: 0,
@@ -209,5 +445,28 @@ export class Texture extends Resource {
209
445
  premultipliedAlpha: false,
210
446
  flipY: false
211
447
  };
448
+ static defaultTextureReadOptions = {
449
+ x: 0,
450
+ y: 0,
451
+ z: 0,
452
+ width: undefined,
453
+ height: undefined,
454
+ depthOrArrayLayers: 1,
455
+ mipLevel: 0,
456
+ aspect: 'all'
457
+ };
458
+ static defaultTextureWriteOptions = {
459
+ byteOffset: 0,
460
+ bytesPerRow: undefined,
461
+ rowsPerImage: undefined,
462
+ x: 0,
463
+ y: 0,
464
+ z: 0,
465
+ width: undefined,
466
+ height: undefined,
467
+ depthOrArrayLayers: 1,
468
+ mipLevel: 0,
469
+ aspect: 'all'
470
+ };
212
471
  }
213
472
  //# sourceMappingURL=texture.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"texture.js","sourceRoot":"","sources":["../../../src/adapter/resources/texture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"texture.js","sourceRoot":"","sources":["../../../src/adapter/resources/texture.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { TextureFormatColor, TextureFormatDepthStencil, TextureFormat } from "../../shadertypes/textures/texture-formats.js";
1
+ import type { TextureFormatColor, TextureFormatDepthStencil, TextureFormat } from "../../shadertypes/texture-types/texture-formats.js";
2
2
  import type { Texture } from "../resources/texture.js";
3
3
  import type { TextureView } from "../resources/texture-view.js";
4
4
  /** Describes a buffer binding layout */
@@ -1 +1 @@
1
- {"version":3,"file":"attachments.d.ts","sourceRoot":"","sources":["../../../src/adapter/types/attachments.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,kBAAkB,EAClB,yBAAyB,EACzB,aAAa,EACd,sDAAmD;AACpD,OAAO,KAAK,EAAC,OAAO,EAAC,gCAA6B;AAClD,OAAO,KAAK,EAAC,WAAW,EAAC,qCAAkC;AAM3D,wCAAwC;AACxC,KAAK,mBAAmB,GAAG;IACzB,uEAAuE;IACvE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB;IACrB,IAAI,EAAE,SAAS,GAAG,SAAS,GAAG,mBAAmB,CAAC;IAClD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,kCAAkC;AAClC,KAAK,oBAAoB,GAAG;IAC1B,uEAAuE;IACvE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,UAAU,GAAG,MAAM,GAAG,YAAY,GAAG,IAAI,CAAC;IACxE,UAAU,CAAC,EAAE,OAAO,GAAG,oBAAoB,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;IACxE,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,0CAA0C;AAC1C,KAAK,2BAA2B,GAAG;IACjC,uEAAuE;IACvE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,MAAM,EAAE,aAAa,CAAC;IACtB,aAAa,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,UAAU,GAAG,MAAM,GAAG,YAAY,GAAG,IAAI,CAAC;CACzE,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAC1B,mBAAmB,GACnB,oBAAoB,GACpB,2BAA2B,CAAC;AAIhC;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,0FAA0F;IAC1F,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;IAChC,kFAAkF;IAClF,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAI5B,qHAAqH;IACrH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,iGAAiG;IACjG,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1B,mGAAmG;IACnG,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,gHAAgH;IAChH,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;IAChC,kFAAkF;IAClF,MAAM,CAAC,EAAE,yBAAyB,CAAC;IAEnC,gHAAgH;IAChH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kHAAkH;IAClH,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/B,uGAAuG;IACvG,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,uDAAuD;IACvD,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,qHAAqH;IACrH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qHAAqH;IACrH,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACjC,uFAAuF;IACvF,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACrC,yDAAyD;IACzD,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC"}
1
+ {"version":3,"file":"attachments.d.ts","sourceRoot":"","sources":["../../../src/adapter/types/attachments.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,kBAAkB,EAClB,yBAAyB,EACzB,aAAa,EACd,2DAAwD;AACzD,OAAO,KAAK,EAAC,OAAO,EAAC,gCAA6B;AAClD,OAAO,KAAK,EAAC,WAAW,EAAC,qCAAkC;AAM3D,wCAAwC;AACxC,KAAK,mBAAmB,GAAG;IACzB,uEAAuE;IACvE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB;IACrB,IAAI,EAAE,SAAS,GAAG,SAAS,GAAG,mBAAmB,CAAC;IAClD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,kCAAkC;AAClC,KAAK,oBAAoB,GAAG;IAC1B,uEAAuE;IACvE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,UAAU,GAAG,MAAM,GAAG,YAAY,GAAG,IAAI,CAAC;IACxE,UAAU,CAAC,EAAE,OAAO,GAAG,oBAAoB,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;IACxE,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,0CAA0C;AAC1C,KAAK,2BAA2B,GAAG;IACjC,uEAAuE;IACvE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,MAAM,EAAE,aAAa,CAAC;IACtB,aAAa,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,UAAU,GAAG,MAAM,GAAG,YAAY,GAAG,IAAI,CAAC;CACzE,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAC1B,mBAAmB,GACnB,oBAAoB,GACpB,2BAA2B,CAAC;AAIhC;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,0FAA0F;IAC1F,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;IAChC,kFAAkF;IAClF,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAI5B,qHAAqH;IACrH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,iGAAiG;IACjG,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1B,mGAAmG;IACnG,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,gHAAgH;IAChH,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;IAChC,kFAAkF;IAClF,MAAM,CAAC,EAAE,yBAAyB,CAAC;IAEnC,gHAAgH;IAChH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kHAAkH;IAClH,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/B,uGAAuG;IACvG,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,uDAAuD;IACvD,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,qHAAqH;IACrH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qHAAqH;IACrH,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACjC,uFAAuF;IACvF,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACrC,yDAAyD;IACzD,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { VertexFormat } from "../../shadertypes/vertex-arrays/vertex-formats.js";
1
+ import type { VertexFormat } from "../../shadertypes/vertex-types/vertex-formats.js";
2
2
  /**
3
3
  * Provides specific details about the memory layout of the actual buffers
4
4
  * that will be provided to a `RenderPipeline`.
@@ -1 +1 @@
1
- {"version":3,"file":"buffer-layout.d.ts","sourceRoot":"","sources":["../../../src/adapter/types/buffer-layout.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,YAAY,EAAC,0DAAuD;AAEjF;;;;;;;;;;;GAWG;AAEH;;;;;;;;;;;;;;;;;;;;;;;IAuBI;AACJ,MAAM,MAAM,YAAY,GAAG;IACzB,qBAAqB;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IACjC,gGAAgG;IAChG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,UAAU,CAAC,EAAE,qBAAqB,EAAE,CAAC;IACrC,2DAA2D;IAC3D,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB,CAAC;AAEF,+EAA+E;AAC/E,MAAM,MAAM,qBAAqB,GAAG;IAClC,6DAA6D;IAC7D,SAAS,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,MAAM,EAAE,YAAY,CAAC;IACrB,+FAA+F;IAC/F,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC"}
1
+ {"version":3,"file":"buffer-layout.d.ts","sourceRoot":"","sources":["../../../src/adapter/types/buffer-layout.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,YAAY,EAAC,yDAAsD;AAEhF;;;;;;;;;;;GAWG;AAEH;;;;;;;;;;;;;;;;;;;;;;;IAuBI;AACJ,MAAM,MAAM,YAAY,GAAG;IACzB,qBAAqB;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IACjC,gGAAgG;IAChG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,UAAU,CAAC,EAAE,qBAAqB,EAAE,CAAC;IACrC,2DAA2D;IAC3D,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB,CAAC;AAEF,+EAA+E;AAC/E,MAAM,MAAM,qBAAqB,GAAG;IAClC,6DAA6D;IAC7D,SAAS,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,MAAM,EAAE,YAAY,CAAC;IACrB,+FAA+F;IAC/F,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { NumberArray4, NumberArray6 } from '@math.gl/types';
2
- import { TextureFormatDepthStencil } from "../../shadertypes/textures/texture-formats.js";
2
+ import { TextureFormatDepthStencil } from "../../shadertypes/texture-types/texture-formats.js";
3
3
  export type CompareFunction = 'never' | 'less' | 'equal' | 'less-equal' | 'greater' | 'not-equal' | 'greater-equal' | 'always';
4
4
  export type PrimitiveTopology = 'point-list' | 'line-list' | 'line-strip' | 'triangle-list' | 'triangle-strip';
5
5
  export type IndexFormat = 'uint16' | 'uint32';
@@ -58,6 +58,8 @@ export type DepthStencilParameters = {
58
58
  depthCompare?: CompareFunction;
59
59
  /** The format of depthStencilAttachment this GPURenderPipeline will be compatible with. */
60
60
  depthFormat?: TextureFormatDepthStencil;
61
+ /** Depth value used when clearing depth buffers. */
62
+ clearDepth?: number;
61
63
  /** Bitmask controlling which depthStencilAttachment stencil value bits are read when performing stencil comparison tests. */
62
64
  stencilReadMask?: number;
63
65
  /** Bitmask controlling which depthStencilAttachment stencil value bits are written to when performing stencil operations. */
@@ -1 +1 @@
1
- {"version":3,"file":"parameters.d.ts","sourceRoot":"","sources":["../../../src/adapter/types/parameters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parameters.d.ts","sourceRoot":"","sources":["../../../src/adapter/types/parameters.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ export const DEFAULT_PARAMETERS = {
10
10
  depthWriteEnabled: false,
11
11
  depthCompare: 'always',
12
12
  depthFormat: 'depth24plus',
13
+ clearDepth: 1,
13
14
  depthBias: 0,
14
15
  depthBiasSlopeScale: 0,
15
16
  depthBiasClamp: 0,
@@ -1 +1 @@
1
- {"version":3,"file":"parameters.js","sourceRoot":"","sources":["../../../src/adapter/types/parameters.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AA4MpC,+CAA+C;AAE/C,MAAM,CAAC,MAAM,kBAAkB,GAAyB;IACtD,2BAA2B;IAE3B,QAAQ,EAAE,MAAM;IAChB,SAAS,EAAE,KAAK;IAEhB,mBAAmB;IAEnB,iBAAiB,EAAE,KAAK;IACxB,YAAY,EAAE,QAAQ;IACtB,WAAW,EAAE,aAAa;IAE1B,SAAS,EAAE,CAAC;IACZ,mBAAmB,EAAE,CAAC;IACtB,cAAc,EAAE,CAAC;IAEjB,qBAAqB;IAErB,eAAe,EAAE,UAAU;IAC3B,gBAAgB,EAAE,UAAU;IAE5B,cAAc,EAAE,QAAQ;IACxB,oBAAoB,EAAE,MAAM;IAC5B,oBAAoB,EAAE,MAAM;IAC5B,yBAAyB,EAAE,MAAM;IAEjC,yBAAyB;IACzB,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,UAAU;IACtB,4BAA4B,EAAE,KAAK;IAEnC,6BAA6B;IAC7B,KAAK,EAAE,KAAK;IAEZ,mBAAmB,EAAE,KAAK;IAC1B,mBAAmB,EAAE,KAAK;IAC1B,mBAAmB,EAAE,MAAM;IAE3B,mBAAmB,EAAE,KAAK;IAC1B,mBAAmB,EAAE,KAAK;IAC1B,mBAAmB,EAAE,MAAM;IAE3B,SAAS,EAAE,GAAG;IAEd,aAAa;IAEb,cAAc,EAAE,KAAK;IACrB,eAAe,EAAE,MAAM;IACvB,WAAW,EAAE,MAAM;IACnB,iBAAiB,EAAE,KAAK;IAExB,aAAa,EAAE,SAAU;IACzB,aAAa,EAAE,SAAU;IACzB,aAAa,EAAE,SAAU;IACzB,aAAa,EAAE,SAAU;IACzB,aAAa,EAAE,SAAU;IACzB,aAAa,EAAE,SAAU;IACzB,aAAa,EAAE,SAAU;IACzB,aAAa,EAAE,SAAU;CAC1B,CAAC"}
1
+ {"version":3,"file":"parameters.js","sourceRoot":"","sources":["../../../src/adapter/types/parameters.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AA8MpC,+CAA+C;AAE/C,MAAM,CAAC,MAAM,kBAAkB,GAAyB;IACtD,2BAA2B;IAE3B,QAAQ,EAAE,MAAM;IAChB,SAAS,EAAE,KAAK;IAEhB,mBAAmB;IAEnB,iBAAiB,EAAE,KAAK;IACxB,YAAY,EAAE,QAAQ;IACtB,WAAW,EAAE,aAAa;IAC1B,UAAU,EAAE,CAAC;IAEb,SAAS,EAAE,CAAC;IACZ,mBAAmB,EAAE,CAAC;IACtB,cAAc,EAAE,CAAC;IAEjB,qBAAqB;IAErB,eAAe,EAAE,UAAU;IAC3B,gBAAgB,EAAE,UAAU;IAE5B,cAAc,EAAE,QAAQ;IACxB,oBAAoB,EAAE,MAAM;IAC5B,oBAAoB,EAAE,MAAM;IAC5B,yBAAyB,EAAE,MAAM;IAEjC,yBAAyB;IACzB,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,UAAU;IACtB,4BAA4B,EAAE,KAAK;IAEnC,6BAA6B;IAC7B,KAAK,EAAE,KAAK;IAEZ,mBAAmB,EAAE,KAAK;IAC1B,mBAAmB,EAAE,KAAK;IAC1B,mBAAmB,EAAE,MAAM;IAE3B,mBAAmB,EAAE,KAAK;IAC1B,mBAAmB,EAAE,KAAK;IAC1B,mBAAmB,EAAE,MAAM;IAE3B,SAAS,EAAE,GAAG;IAEd,aAAa;IAEb,cAAc,EAAE,KAAK;IACrB,eAAe,EAAE,MAAM;IACvB,WAAW,EAAE,MAAM;IACnB,iBAAiB,EAAE,KAAK;IAExB,aAAa,EAAE,SAAU;IACzB,aAAa,EAAE,SAAU;IACzB,aAAa,EAAE,SAAU;IACzB,aAAa,EAAE,SAAU;IACzB,aAAa,EAAE,SAAU;IACzB,aAAa,EAAE,SAAU;IACzB,aAAa,EAAE,SAAU;IACzB,aAAa,EAAE,SAAU;CAC1B,CAAC"}
@@ -1,9 +1,9 @@
1
- import type { TextureFormat } from "../../shadertypes/textures/texture-formats.js";
2
- import type { VariableShaderType, AttributeShaderType } from "../../shadertypes/data-types/shader-types.js";
3
- import type { Buffer } from "../resources/buffer.js";
4
- import type { Sampler } from "../resources/sampler.js";
5
- import type { Texture } from "../resources/texture.js";
6
- import type { TextureView } from "../resources/texture-view.js";
1
+ import { type TextureFormat } from "../../shadertypes/texture-types/texture-formats.js";
2
+ import { type VariableShaderType, type AttributeShaderType } from "../../shadertypes/shader-types/shader-types.js";
3
+ import { type Buffer } from "../resources/buffer.js";
4
+ import { type Sampler } from "../resources/sampler.js";
5
+ import { type Texture } from "../resources/texture.js";
6
+ import { type TextureView } from "../resources/texture-view.js";
7
7
  /**
8
8
  * Describes all shader binding points for a `RenderPipeline` or `ComputePipeline`
9
9
  * A ShaderLayout describes the static structure of a shader pipeline.
@@ -137,6 +137,10 @@ export type Binding = TextureView | Texture | Sampler | Buffer | {
137
137
  offset?: number;
138
138
  size?: number;
139
139
  };
140
+ /** Named binding map */
141
+ export type Bindings = Record<string, Binding>;
142
+ /** Bindings partitioned by bind-group index */
143
+ export type BindingsByGroup = Partial<Record<number, Bindings>>;
140
144
  /**
141
145
  * Describes a varying binding for a program
142
146
  * @deprecated Varyings are WebGL-only
@@ -1 +1 @@
1
- {"version":3,"file":"shader-layout.d.ts","sourceRoot":"","sources":["../../../src/adapter/types/shader-layout.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,aAAa,EAAC,sDAAmD;AAC9E,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACpB,qDAAkD;AACnD,OAAO,KAAK,EAAC,MAAM,EAAC,+BAA4B;AAChD,OAAO,KAAK,EAAC,OAAO,EAAC,gCAA6B;AAClD,OAAO,KAAK,EAAC,OAAO,EAAC,gCAA6B;AAClD,OAAO,KAAK,EAAC,WAAW,EAAC,qCAAkC;AAE3D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,kGAAkG;IAClG,UAAU,EAAE,oBAAoB,EAAE,CAAC;IACnC,6FAA6F;IAC7F,QAAQ,EAAE,kBAAkB,EAAE,CAAC;IAC/B,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC;IACjB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,6FAA6F;IAC7F,QAAQ,EAAE,kBAAkB,EAAE,CAAC;CAChC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,+EAA+E;IAC/E,QAAQ,EAAE,MAAM,CAAC;IACjB,sIAAsI;IACtI,IAAI,EAAE,mBAAmB,CAAC;IAC1B,6FAA6F;IAC7F,QAAQ,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;CAClC,CAAC;AAIF,gCAAgC;AAChC,MAAM,MAAM,kBAAkB,GAC1B,0BAA0B,GAC1B,0BAA0B,GAC1B,oBAAoB,GACpB,oBAAoB,GACpB,2BAA2B,CAAC;AAEhC,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE,SAAS,CAAC;IAChB,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,kBAAkB,CAAC;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE,SAAS,GAAG,mBAAmB,CAAC;IACtC,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,SAAS,CAAC;IAChB,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,UAAU,GAAG,MAAM,GAAG,YAAY,GAAG,IAAI,CAAC;IACxE,UAAU,CAAC,EAAE,OAAO,GAAG,oBAAoB,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;IACxE,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,SAAS,CAAC;IAChB,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,WAAW,GAAG,eAAe,GAAG,YAAY,CAAC;CAC5D,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,SAAS,CAAC;IAChB,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,MAAM,EAAE,aAAa,CAAC;IACtB,aAAa,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,UAAU,GAAG,MAAM,GAAG,YAAY,GAAG,IAAI,CAAC;CACzE,CAAC;AAIF,oBAAoB;AACpB,MAAM,MAAM,OAAO,GACf,WAAW,GACX,OAAO,GACP,OAAO,GACP,MAAM,GACN;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC;AAIrD;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,mBAAmB,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAIF,sDAAsD;AACtD,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,EAAE,WAAW,EAAE,CAAC;CACzB,CAAC;AAEF,8DAA8D;AAC9D,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,kBAAkB;AAClB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,cAAc,CAAC;CAC1B,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,MAAM,CAAC,EAAE,MAAM,CAAC;IAIhB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,sCAAsC;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sCAAsC;IACtC,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,kBAAkB;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
1
+ {"version":3,"file":"shader-layout.d.ts","sourceRoot":"","sources":["../../../src/adapter/types/shader-layout.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,10 @@
1
1
  import { NumericArray } from '@math.gl/types';
2
2
  /** Valid values for uniforms. @note boolean values get converted to 0 or 1 before setting */
3
3
  export type UniformValue = number | boolean | Readonly<NumericArray>;
4
+ /** Recursive uniform value tree used by uniform-buffer packing utilities. */
5
+ export type CompositeUniformValue = UniformValue | CompositeUniformValueStruct | CompositeUniformValueArray;
6
+ export type CompositeUniformValueStruct = {
7
+ [name: string]: CompositeUniformValue | undefined;
8
+ };
9
+ export type CompositeUniformValueArray = ReadonlyArray<CompositeUniformValue | undefined>;
4
10
  //# sourceMappingURL=uniforms.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"uniforms.d.ts","sourceRoot":"","sources":["../../../src/adapter/types/uniforms.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAI5C,6FAA6F;AAC7F,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"uniforms.d.ts","sourceRoot":"","sources":["../../../src/adapter/types/uniforms.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAI5C,6FAA6F;AAC7F,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;AAErE,6EAA6E;AAC7E,MAAM,MAAM,qBAAqB,GAC7B,YAAY,GACZ,2BAA2B,GAC3B,0BAA0B,CAAC;AAE/B,MAAM,MAAM,2BAA2B,GAAG;IACxC,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB,GAAG,SAAS,CAAC;CACnD,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,aAAa,CAAC,qBAAqB,GAAG,SAAS,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { BindingDeclaration, Bindings, BindingsByGroup, ComputeShaderLayout, ShaderLayout } from "../adapter/types/shader-layout.js";
2
+ type AnyShaderLayout = Pick<ShaderLayout | ComputeShaderLayout, 'bindings'>;
3
+ export declare function getShaderLayoutBinding(shaderLayout: AnyShaderLayout, bindingName: string, options?: {
4
+ ignoreWarnings?: boolean;
5
+ }): BindingDeclaration | null;
6
+ export declare function normalizeBindingsByGroup(shaderLayout: AnyShaderLayout, bindingsOrBindGroups?: Bindings | BindingsByGroup): BindingsByGroup;
7
+ export declare function flattenBindingsByGroup(bindGroups: BindingsByGroup): Bindings;
8
+ export {};
9
+ //# sourceMappingURL=bind-groups.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bind-groups.d.ts","sourceRoot":"","sources":["../../src/adapter-utils/bind-groups.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,kBAAkB,EAClB,QAAQ,EACR,eAAe,EACf,mBAAmB,EACnB,YAAY,EACb,0CAAuC;AAGxC,KAAK,eAAe,GAAG,IAAI,CAAC,YAAY,GAAG,mBAAmB,EAAE,UAAU,CAAC,CAAC;AAE5E,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,eAAe,EAC7B,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;IAAC,cAAc,CAAC,EAAE,OAAO,CAAA;CAAC,GACnC,kBAAkB,GAAG,IAAI,CAY3B;AAED,wBAAgB,wBAAwB,CACtC,YAAY,EAAE,eAAe,EAC7B,oBAAoB,CAAC,EAAE,QAAQ,GAAG,eAAe,GAChD,eAAe,CAqBjB;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,eAAe,GAAG,QAAQ,CAM5E"}