@luma.gl/core 9.2.0-alpha.1 → 9.2.0-alpha.3

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 (165) hide show
  1. package/dist/adapter/canvas-context.d.ts +17 -3
  2. package/dist/adapter/canvas-context.d.ts.map +1 -1
  3. package/dist/adapter/canvas-context.js +48 -2
  4. package/dist/adapter/canvas-context.js.map +1 -1
  5. package/dist/adapter/device.d.ts +56 -11
  6. package/dist/adapter/device.d.ts.map +1 -1
  7. package/dist/adapter/device.js +78 -22
  8. package/dist/adapter/device.js.map +1 -1
  9. package/dist/adapter/luma.js +1 -1
  10. package/dist/adapter/resources/buffer.d.ts +13 -7
  11. package/dist/adapter/resources/buffer.d.ts.map +1 -1
  12. package/dist/adapter/resources/buffer.js +1 -5
  13. package/dist/adapter/resources/buffer.js.map +1 -1
  14. package/dist/adapter/resources/command-encoder.d.ts +0 -1
  15. package/dist/adapter/resources/command-encoder.d.ts.map +1 -1
  16. package/dist/adapter/resources/command-encoder.js.map +1 -1
  17. package/dist/adapter/resources/framebuffer.d.ts +3 -3
  18. package/dist/adapter/resources/framebuffer.d.ts.map +1 -1
  19. package/dist/adapter/resources/pipeline-layout.d.ts +13 -0
  20. package/dist/adapter/resources/pipeline-layout.d.ts.map +1 -0
  21. package/dist/adapter/resources/pipeline-layout.js +21 -0
  22. package/dist/adapter/resources/pipeline-layout.js.map +1 -0
  23. package/dist/adapter/resources/render-pipeline.d.ts +4 -4
  24. package/dist/adapter/resources/render-pipeline.d.ts.map +1 -1
  25. package/dist/adapter/resources/resource.d.ts +1 -0
  26. package/dist/adapter/resources/resource.d.ts.map +1 -1
  27. package/dist/adapter/resources/resource.js.map +1 -1
  28. package/dist/adapter/resources/texture-view.d.ts +1 -1
  29. package/dist/adapter/resources/texture-view.d.ts.map +1 -1
  30. package/dist/adapter/resources/texture.d.ts +1 -1
  31. package/dist/adapter/resources/texture.d.ts.map +1 -1
  32. package/dist/adapter/resources/vertex-array.js +1 -1
  33. package/dist/adapter/resources/vertex-array.js.map +1 -1
  34. package/dist/adapter/types/attachments.d.ts +3 -3
  35. package/dist/adapter/types/attachments.d.ts.map +1 -1
  36. package/dist/adapter/types/buffer-layout.d.ts +1 -1
  37. package/dist/adapter/types/buffer-layout.d.ts.map +1 -1
  38. package/dist/adapter/types/parameters.d.ts +2 -2
  39. package/dist/adapter/types/parameters.d.ts.map +1 -1
  40. package/dist/adapter/types/shader-layout.d.ts +5 -6
  41. package/dist/adapter/types/shader-layout.d.ts.map +1 -1
  42. package/dist/adapter-utils/get-attribute-from-layouts.d.ts +3 -3
  43. package/dist/adapter-utils/get-attribute-from-layouts.d.ts.map +1 -1
  44. package/dist/adapter-utils/get-attribute-from-layouts.js +2 -2
  45. package/dist/adapter-utils/get-attribute-from-layouts.js.map +1 -1
  46. package/dist/dist.dev.js +417 -267
  47. package/dist/dist.min.js +5 -4
  48. package/dist/index.cjs +416 -266
  49. package/dist/index.cjs.map +4 -4
  50. package/dist/index.d.ts +18 -20
  51. package/dist/index.d.ts.map +1 -1
  52. package/dist/index.js +8 -7
  53. package/dist/index.js.map +1 -1
  54. package/dist/portable/uniform-block.d.ts +1 -1
  55. package/dist/portable/uniform-block.d.ts.map +1 -1
  56. package/dist/portable/uniform-buffer-layout.d.ts +2 -2
  57. package/dist/portable/uniform-buffer-layout.d.ts.map +1 -1
  58. package/dist/portable/uniform-buffer-layout.js +2 -2
  59. package/dist/portable/uniform-buffer-layout.js.map +1 -1
  60. package/dist/portable/uniform-store.d.ts +1 -1
  61. package/dist/portable/uniform-store.d.ts.map +1 -1
  62. package/dist/shadertypes/{data-types.d.ts → data-types/data-types.d.ts} +4 -0
  63. package/dist/shadertypes/data-types/data-types.d.ts.map +1 -0
  64. package/dist/shadertypes/data-types/data-types.js.map +1 -0
  65. package/dist/shadertypes/{utils → data-types}/decode-data-types.d.ts +4 -4
  66. package/dist/shadertypes/data-types/decode-data-types.d.ts.map +1 -0
  67. package/dist/shadertypes/data-types/decode-data-types.js +74 -0
  68. package/dist/shadertypes/data-types/decode-data-types.js.map +1 -0
  69. package/dist/shadertypes/{utils → data-types}/decode-shader-types.d.ts +2 -2
  70. package/dist/shadertypes/data-types/decode-shader-types.d.ts.map +1 -0
  71. package/dist/shadertypes/data-types/decode-shader-types.js.map +1 -0
  72. package/dist/shadertypes/data-types/shader-types.d.ts.map +1 -0
  73. package/dist/shadertypes/data-types/shader-types.js.map +1 -0
  74. package/dist/shadertypes/textures/pixel-utils.d.ts +112 -0
  75. package/dist/shadertypes/textures/pixel-utils.d.ts.map +1 -0
  76. package/dist/shadertypes/textures/pixel-utils.js +193 -0
  77. package/dist/shadertypes/textures/pixel-utils.js.map +1 -0
  78. package/dist/shadertypes/textures/texture-format-decoder.d.ts +18 -0
  79. package/dist/shadertypes/textures/texture-format-decoder.d.ts.map +1 -0
  80. package/dist/shadertypes/{utils/decode-texture-format.js → textures/texture-format-decoder.js} +48 -35
  81. package/dist/shadertypes/textures/texture-format-decoder.js.map +1 -0
  82. package/dist/shadertypes/textures/texture-format-generics.d.ts +33 -0
  83. package/dist/shadertypes/textures/texture-format-generics.d.ts.map +1 -0
  84. package/dist/shadertypes/{texture-formats.js → textures/texture-format-generics.js} +1 -1
  85. package/dist/shadertypes/textures/texture-format-generics.js.map +1 -0
  86. package/dist/shadertypes/{utils → textures}/texture-format-table.d.ts +2 -1
  87. package/dist/shadertypes/textures/texture-format-table.d.ts.map +1 -0
  88. package/dist/shadertypes/{utils → textures}/texture-format-table.js +41 -42
  89. package/dist/shadertypes/textures/texture-format-table.js.map +1 -0
  90. package/dist/shadertypes/textures/texture-formats.d.ts +90 -0
  91. package/dist/shadertypes/textures/texture-formats.d.ts.map +1 -0
  92. package/dist/shadertypes/textures/texture-formats.js +58 -0
  93. package/dist/shadertypes/textures/texture-formats.js.map +1 -0
  94. package/dist/shadertypes/{utils → vertex-arrays}/decode-vertex-format.d.ts +2 -2
  95. package/dist/shadertypes/vertex-arrays/decode-vertex-format.d.ts.map +1 -0
  96. package/dist/shadertypes/{utils → vertex-arrays}/decode-vertex-format.js +4 -4
  97. package/dist/shadertypes/vertex-arrays/decode-vertex-format.js.map +1 -0
  98. package/dist/shadertypes/{vertex-formats.d.ts → vertex-arrays/vertex-formats.d.ts} +5 -3
  99. package/dist/shadertypes/vertex-arrays/vertex-formats.d.ts.map +1 -0
  100. package/dist/shadertypes/vertex-arrays/vertex-formats.js.map +1 -0
  101. package/package.json +2 -2
  102. package/src/adapter/canvas-context.ts +60 -5
  103. package/src/adapter/device.ts +132 -47
  104. package/src/adapter/resources/buffer.ts +30 -14
  105. package/src/adapter/resources/command-encoder.ts +0 -2
  106. package/src/adapter/resources/framebuffer.ts +5 -5
  107. package/src/adapter/resources/pipeline-layout.ts +30 -0
  108. package/src/adapter/resources/render-pipeline.ts +6 -6
  109. package/src/adapter/resources/resource.ts +1 -0
  110. package/src/adapter/resources/texture-view.ts +1 -1
  111. package/src/adapter/resources/texture.ts +1 -1
  112. package/src/adapter/resources/vertex-array.ts +1 -1
  113. package/src/adapter/types/attachments.ts +5 -5
  114. package/src/adapter/types/buffer-layout.ts +1 -1
  115. package/src/adapter/types/parameters.ts +2 -2
  116. package/src/adapter/types/shader-layout.ts +8 -5
  117. package/src/adapter-utils/get-attribute-from-layouts.ts +5 -5
  118. package/src/index.ts +60 -36
  119. package/src/portable/uniform-block.ts +1 -1
  120. package/src/portable/uniform-buffer-layout.ts +4 -4
  121. package/src/portable/uniform-store.ts +1 -1
  122. package/src/shadertypes/data-types/data-types.ts +96 -0
  123. package/src/shadertypes/data-types/decode-data-types.ts +91 -0
  124. package/src/shadertypes/{utils → data-types}/decode-shader-types.ts +2 -2
  125. package/src/shadertypes/textures/pixel-utils.ts +239 -0
  126. package/src/shadertypes/{utils/decode-texture-format.ts → textures/texture-format-decoder.ts} +63 -47
  127. package/src/shadertypes/textures/texture-format-generics.ts +190 -0
  128. package/src/shadertypes/{utils → textures}/texture-format-table.ts +62 -52
  129. package/src/shadertypes/{texture-formats.ts → textures/texture-formats.ts} +229 -147
  130. package/src/shadertypes/{utils → vertex-arrays}/decode-vertex-format.ts +6 -10
  131. package/src/shadertypes/{vertex-formats.ts → vertex-arrays/vertex-formats.ts} +20 -6
  132. package/dist/adapter-utils/buffer-layout-helper.d.ts +0 -11
  133. package/dist/adapter-utils/buffer-layout-helper.d.ts.map +0 -1
  134. package/dist/adapter-utils/buffer-layout-helper.js +0 -33
  135. package/dist/adapter-utils/buffer-layout-helper.js.map +0 -1
  136. package/dist/shadertypes/data-types.d.ts.map +0 -1
  137. package/dist/shadertypes/data-types.js.map +0 -1
  138. package/dist/shadertypes/shader-types.d.ts.map +0 -1
  139. package/dist/shadertypes/shader-types.js.map +0 -1
  140. package/dist/shadertypes/texture-formats.d.ts +0 -74
  141. package/dist/shadertypes/texture-formats.d.ts.map +0 -1
  142. package/dist/shadertypes/texture-formats.js.map +0 -1
  143. package/dist/shadertypes/utils/decode-data-types.d.ts.map +0 -1
  144. package/dist/shadertypes/utils/decode-data-types.js +0 -114
  145. package/dist/shadertypes/utils/decode-data-types.js.map +0 -1
  146. package/dist/shadertypes/utils/decode-shader-types.d.ts.map +0 -1
  147. package/dist/shadertypes/utils/decode-shader-types.js.map +0 -1
  148. package/dist/shadertypes/utils/decode-texture-format.d.ts +0 -15
  149. package/dist/shadertypes/utils/decode-texture-format.d.ts.map +0 -1
  150. package/dist/shadertypes/utils/decode-texture-format.js.map +0 -1
  151. package/dist/shadertypes/utils/decode-vertex-format.d.ts.map +0 -1
  152. package/dist/shadertypes/utils/decode-vertex-format.js.map +0 -1
  153. package/dist/shadertypes/utils/texture-format-table.d.ts.map +0 -1
  154. package/dist/shadertypes/utils/texture-format-table.js.map +0 -1
  155. package/dist/shadertypes/vertex-formats.d.ts.map +0 -1
  156. package/dist/shadertypes/vertex-formats.js.map +0 -1
  157. package/src/adapter-utils/buffer-layout-helper.ts +0 -41
  158. package/src/shadertypes/data-types.ts +0 -42
  159. package/src/shadertypes/utils/decode-data-types.ts +0 -131
  160. /package/dist/shadertypes/{data-types.js → data-types/data-types.js} +0 -0
  161. /package/dist/shadertypes/{utils → data-types}/decode-shader-types.js +0 -0
  162. /package/dist/shadertypes/{shader-types.d.ts → data-types/shader-types.d.ts} +0 -0
  163. /package/dist/shadertypes/{shader-types.js → data-types/shader-types.js} +0 -0
  164. /package/dist/shadertypes/{vertex-formats.js → vertex-arrays/vertex-formats.js} +0 -0
  165. /package/src/shadertypes/{shader-types.ts → data-types/shader-types.ts} +0 -0
package/dist/index.d.ts CHANGED
@@ -5,14 +5,10 @@ export type { DeviceProps, DeviceInfo, DeviceFeature, DeviceTextureFormatCapabil
5
5
  export { Device, DeviceFeatures, DeviceLimits } from "./adapter/device.js";
6
6
  export type { CanvasContextProps } from "./adapter/canvas-context.js";
7
7
  export { CanvasContext } from "./adapter/canvas-context.js";
8
- export type { ResourceProps } from "./adapter/resources/resource.js";
9
- export { Resource } from "./adapter/resources/resource.js";
10
- export type { BufferProps } from "./adapter/resources/buffer.js";
11
- export { Buffer } from "./adapter/resources/buffer.js";
12
- export type { TextureProps } from "./adapter/resources/texture.js";
13
- export { Texture } from "./adapter/resources/texture.js";
14
- export type { TextureViewProps } from "./adapter/resources/texture-view.js";
15
- export { TextureView } from "./adapter/resources/texture-view.js";
8
+ export { Resource, type ResourceProps } from "./adapter/resources/resource.js";
9
+ export { Buffer, type BufferProps, type BufferMapCallback } from "./adapter/resources/buffer.js";
10
+ export { Texture, type TextureProps } from "./adapter/resources/texture.js";
11
+ export { TextureView, type TextureViewProps } from "./adapter/resources/texture-view.js";
16
12
  export type { ExternalTextureProps } from "./adapter/resources/external-texture.js";
17
13
  export { ExternalTexture } from "./adapter/resources/external-texture.js";
18
14
  export type { ShaderProps } from "./adapter/resources/shader.js";
@@ -39,34 +35,36 @@ export type { TransformFeedbackProps, BufferRange } from "./adapter/resources/tr
39
35
  export { TransformFeedback } from "./adapter/resources/transform-feedback.js";
40
36
  export type { QuerySetProps } from "./adapter/resources/query-set.js";
41
37
  export { QuerySet } from "./adapter/resources/query-set.js";
38
+ export type { PipelineLayoutProps } from "./adapter/resources/pipeline-layout.js";
39
+ export { PipelineLayout } from "./adapter/resources/pipeline-layout.js";
42
40
  export { UniformBufferLayout } from "./portable/uniform-buffer-layout.js";
43
41
  export { UniformBlock } from "./portable/uniform-block.js";
44
42
  export { UniformStore } from "./portable/uniform-store.js";
45
43
  export type { CompilerMessage } from "./adapter/types/compiler-message.js";
46
44
  export type { ExternalImage } from "./image-utils/image-types.js";
47
- export type { CopyExternalImageOptions, CopyImageDataOptions } from "./adapter/resources/texture.js";
45
+ export { type CopyExternalImageOptions, type CopyImageDataOptions } from "./adapter/resources/texture.js";
48
46
  export type { Parameters, PrimitiveTopology, IndexFormat } from "./adapter/types/parameters.js";
49
47
  export type { CullMode, FrontFace, RasterizationParameters, CompareFunction, StencilOperation, DepthStencilParameters, BlendFactor, BlendOperation, ColorParameters, MultisampleParameters, RenderPassParameters, RenderPipelineParameters, PolygonMode, ProvokingVertex } from "./adapter/types/parameters.js";
50
48
  export type { ColorAttachment, DepthStencilAttachment } from "./adapter/types/attachments.js";
51
- export type { ShaderLayout, ComputeShaderLayout, AttributeDeclaration, BindingDeclaration, Binding } from "./adapter/types/shader-layout.js";
49
+ export type { ShaderLayout, ComputeShaderLayout, AttributeDeclaration, BindingDeclaration, Binding, UniformBufferBindingLayout, StorageBufferBindingLayout, TextureBindingLayout, SamplerBindingLayout, StorageTextureBindingLayout } from "./adapter/types/shader-layout.js";
52
50
  export type { BufferLayout, BufferAttributeLayout } from "./adapter/types/buffer-layout.js";
53
51
  export type { AttributeBinding, UniformBinding, UniformBlockBinding, VaryingBinding } from "./adapter/types/shader-layout.js";
54
52
  export type { UniformValue } from "./adapter/types/uniforms.js";
55
53
  export type { NumberArray, TypedArray, TypedArrayConstructor, BigTypedArray, BigTypedArrayConstructor } from "./types.js";
56
- export type { PrimitiveDataType, SignedDataType, NormalizedDataType } from "./shadertypes/data-types.js";
57
- export type { AttributeShaderType, VariableShaderType } from "./shadertypes/shader-types.js";
58
- export type { VertexFormat } from "./shadertypes/vertex-formats.js";
59
- export type { TextureFormat, ColorTextureFormat, DepthStencilTextureFormat, TextureCompression, TextureFormatInfo, TextureFormatCapabilities } from "./shadertypes/texture-formats.js";
60
- export { getDataTypeInfo, getDataTypeFromTypedArray, getTypedArrayFromDataType, makeNormalizedDataType } from "./shadertypes/utils/decode-data-types.js";
61
- export { getVariableShaderTypeInfo, getAttributeShaderTypeInfo } from "./shadertypes/utils/decode-shader-types.js";
62
- export { getVertexFormatInfo, getVertexFormatFromAttribute, makeVertexFormat } from "./shadertypes/utils/decode-vertex-format.js";
63
- export { getTextureFormatInfo, getTextureFormatCapabilities } from "./shadertypes/utils/decode-texture-format.js";
54
+ export { type PrimitiveDataType, type SignedDataType, type NormalizedDataType, type DataTypeInfo, type DataTypeArray, type NormalizedDataTypeArray } from "./shadertypes/data-types/data-types.js";
55
+ export { type AttributeShaderType, type VariableShaderType } from "./shadertypes/data-types/shader-types.js";
56
+ export { getDataTypeInfo, getDataType, getTypedArrayConstructor, getNormalizedDataType } from "./shadertypes/data-types/decode-data-types.js";
57
+ export { getVariableShaderTypeInfo, getAttributeShaderTypeInfo } from "./shadertypes/data-types/decode-shader-types.js";
58
+ export { type VertexFormat } from "./shadertypes/vertex-arrays/vertex-formats.js";
59
+ export { getVertexFormatInfo, getVertexFormatFromAttribute, makeVertexFormat } from "./shadertypes/vertex-arrays/decode-vertex-format.js";
60
+ export { type TextureFormat, type TextureFormatColor, type TextureFormatDepthStencil, type TextureCompression, type TextureFormatInfo, type TextureFormatCapabilities } from "./shadertypes/textures/texture-formats.js";
61
+ export { TextureFormatDecoder, textureFormatDecoder } from "./shadertypes/textures/texture-format-decoder.js";
62
+ export { type PixelData, readPixel, writePixel } from "./shadertypes/textures/pixel-utils.js";
64
63
  export type { StatsManager } from "./utils/stats-manager.js";
65
64
  export type { CopyBufferToBufferOptions, CopyBufferToTextureOptions, CopyTextureToBufferOptions, CopyTextureToTextureOptions } from "./adapter/resources/command-encoder.js";
66
65
  export { log } from "./utils/log.js";
67
66
  export { getScratchArray } from "./utils/array-utils-flat.js";
68
67
  export type { AttributeInfo } from "./adapter-utils/get-attribute-from-layouts.js";
69
- export { BufferLayoutHelper as _BufferLayoutHelper } from "./adapter-utils/buffer-layout-helper.js";
70
68
  export { getAttributeInfosFromLayouts } from "./adapter-utils/get-attribute-from-layouts.js";
71
- export { getTextureFormatDefinition as _getTextureFormatDefinition, getTextureFormatTable as _getTextureFormatTable } from "./shadertypes/utils/texture-format-table.js";
69
+ export { getTextureFormatDefinition as _getTextureFormatDefinition, getTextureFormatTable as _getTextureFormatTable } from "./shadertypes/textures/texture-format-table.js";
72
70
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -6,6 +6,7 @@ export { luma } from "./adapter/luma.js";
6
6
  export { Adapter } from "./adapter/adapter.js";
7
7
  export { Device, DeviceFeatures, DeviceLimits } from "./adapter/device.js";
8
8
  export { CanvasContext } from "./adapter/canvas-context.js";
9
+ // GPU RESOURCES
9
10
  export { Resource } from "./adapter/resources/resource.js";
10
11
  export { Buffer } from "./adapter/resources/buffer.js";
11
12
  export { Texture } from "./adapter/resources/texture.js";
@@ -23,20 +24,20 @@ export { CommandBuffer } from "./adapter/resources/command-buffer.js";
23
24
  export { VertexArray } from "./adapter/resources/vertex-array.js";
24
25
  export { TransformFeedback } from "./adapter/resources/transform-feedback.js";
25
26
  export { QuerySet } from "./adapter/resources/query-set.js";
27
+ export { PipelineLayout } from "./adapter/resources/pipeline-layout.js";
26
28
  // PORTABLE API - UNIFORM BUFFERS
27
29
  export { UniformBufferLayout } from "./portable/uniform-buffer-layout.js";
28
30
  export { UniformBlock } from "./portable/uniform-block.js";
29
31
  export { UniformStore } from "./portable/uniform-store.js";
30
- // GPU TYPE UTILS - GPU MEMORY LAYOUT HELPERS - CAN BE USED BY APPS BUT MOSTLY USED INTERNALLY
31
- export { getDataTypeInfo, getDataTypeFromTypedArray, getTypedArrayFromDataType, makeNormalizedDataType } from "./shadertypes/utils/decode-data-types.js";
32
- export { getVariableShaderTypeInfo, getAttributeShaderTypeInfo } from "./shadertypes/utils/decode-shader-types.js";
33
- export { getVertexFormatInfo, getVertexFormatFromAttribute, makeVertexFormat } from "./shadertypes/utils/decode-vertex-format.js";
34
- export { getTextureFormatInfo, getTextureFormatCapabilities } from "./shadertypes/utils/decode-texture-format.js";
32
+ export { getDataTypeInfo, getDataType, getTypedArrayConstructor, getNormalizedDataType } from "./shadertypes/data-types/decode-data-types.js";
33
+ export { getVariableShaderTypeInfo, getAttributeShaderTypeInfo } from "./shadertypes/data-types/decode-shader-types.js";
34
+ export { getVertexFormatInfo, getVertexFormatFromAttribute, makeVertexFormat } from "./shadertypes/vertex-arrays/decode-vertex-format.js";
35
+ export { TextureFormatDecoder, textureFormatDecoder } from "./shadertypes/textures/texture-format-decoder.js";
36
+ export { readPixel, writePixel } from "./shadertypes/textures/pixel-utils.js";
35
37
  // INTERNAL UTILS - for use in other luma.gl modules only
36
38
  export { log } from "./utils/log.js";
37
39
  export { getScratchArray } from "./utils/array-utils-flat.js";
38
- export { BufferLayoutHelper as _BufferLayoutHelper } from "./adapter-utils/buffer-layout-helper.js";
39
40
  export { getAttributeInfosFromLayouts } from "./adapter-utils/get-attribute-from-layouts.js";
40
41
  // TEST EXPORTS
41
- export { getTextureFormatDefinition as _getTextureFormatDefinition, getTextureFormatTable as _getTextureFormatTable } from "./shadertypes/utils/texture-format-table.js";
42
+ export { getTextureFormatDefinition as _getTextureFormatDefinition, getTextureFormatTable as _getTextureFormatTable } from "./shadertypes/textures/texture-format-table.js";
42
43
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAIpC,OAAO,EAAC,IAAI,EAAC,0BAAuB;AAEpC,+CAA+C;AAC/C,OAAO,EAAC,OAAO,EAAC,6BAA0B;AAQ1C,OAAO,EAAC,MAAM,EAAE,cAAc,EAAE,YAAY,EAAC,4BAAyB;AAGtE,OAAO,EAAC,aAAa,EAAC,oCAAiC;AAIvD,OAAO,EAAC,QAAQ,EAAC,wCAAqC;AAGtD,OAAO,EAAC,MAAM,EAAC,sCAAmC;AAGlD,OAAO,EAAC,OAAO,EAAC,uCAAoC;AAGpD,OAAO,EAAC,WAAW,EAAC,4CAAyC;AAG7D,OAAO,EAAC,eAAe,EAAC,gDAA6C;AAGrE,OAAO,EAAC,MAAM,EAAC,sCAAmC;AAGlD,OAAO,EAAC,OAAO,EAAC,uCAAoC;AAGpD,OAAO,EAAC,WAAW,EAAC,2CAAwC;AAG5D,OAAO,EAAC,cAAc,EAAC,+CAA4C;AAGnE,OAAO,EAAC,UAAU,EAAC,2CAAwC;AAG3D,OAAO,EAAC,eAAe,EAAC,gDAA6C;AAGrE,OAAO,EAAC,WAAW,EAAC,4CAAyC;AAG7D,OAAO,EAAC,cAAc,EAAC,+CAA4C;AAGnE,OAAO,EAAC,aAAa,EAAC,8CAA2C;AAGjE,OAAO,EAAC,WAAW,EAAC,4CAAyC;AAG7D,OAAO,EAAC,iBAAiB,EAAC,kDAA+C;AAGzE,OAAO,EAAC,QAAQ,EAAC,yCAAsC;AAEvD,iCAAiC;AACjC,OAAO,EAAC,mBAAmB,EAAC,4CAAyC;AACrE,OAAO,EAAC,YAAY,EAAC,oCAAiC;AACtD,OAAO,EAAC,YAAY,EAAC,oCAAiC;AAwEtD,8FAA8F;AAE9F,OAAO,EACL,eAAe,EACf,yBAAyB,EACzB,yBAAyB,EACzB,sBAAsB,EACvB,iDAA8C;AAC/C,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC3B,mDAAgD;AACjD,OAAO,EACL,mBAAmB,EACnB,4BAA4B,EAC5B,gBAAgB,EACjB,oDAAiD;AAClD,OAAO,EACL,oBAAoB,EACpB,4BAA4B,EAC7B,qDAAkD;AAenD,yDAAyD;AACzD,OAAO,EAAC,GAAG,EAAC,uBAAoB;AAChC,OAAO,EAAC,eAAe,EAAC,oCAAiC;AAEzD,OAAO,EAAC,kBAAkB,IAAI,mBAAmB,EAAC,gDAA6C;AAC/F,OAAO,EAAC,4BAA4B,EAAC,sDAAmD;AAExF,eAAe;AACf,OAAO,EACL,0BAA0B,IAAI,2BAA2B,EACzD,qBAAqB,IAAI,sBAAsB,EAChD,oDAAiD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAIpC,OAAO,EAAC,IAAI,EAAC,0BAAuB;AAEpC,+CAA+C;AAC/C,OAAO,EAAC,OAAO,EAAC,6BAA0B;AAQ1C,OAAO,EAAC,MAAM,EAAE,cAAc,EAAE,YAAY,EAAC,4BAAyB;AAGtE,OAAO,EAAC,aAAa,EAAC,oCAAiC;AAEvD,gBAAgB;AAChB,OAAO,EAAC,QAAQ,EAAqB,wCAAqC;AAE1E,OAAO,EAAC,MAAM,EAA2C,sCAAmC;AAE5F,OAAO,EAAC,OAAO,EAAoB,uCAAoC;AAEvE,OAAO,EAAC,WAAW,EAAwB,4CAAyC;AAGpF,OAAO,EAAC,eAAe,EAAC,gDAA6C;AAGrE,OAAO,EAAC,MAAM,EAAC,sCAAmC;AAGlD,OAAO,EAAC,OAAO,EAAC,uCAAoC;AAGpD,OAAO,EAAC,WAAW,EAAC,2CAAwC;AAG5D,OAAO,EAAC,cAAc,EAAC,+CAA4C;AAGnE,OAAO,EAAC,UAAU,EAAC,2CAAwC;AAG3D,OAAO,EAAC,eAAe,EAAC,gDAA6C;AAGrE,OAAO,EAAC,WAAW,EAAC,4CAAyC;AAG7D,OAAO,EAAC,cAAc,EAAC,+CAA4C;AAGnE,OAAO,EAAC,aAAa,EAAC,8CAA2C;AAGjE,OAAO,EAAC,WAAW,EAAC,4CAAyC;AAG7D,OAAO,EAAC,iBAAiB,EAAC,kDAA+C;AAGzE,OAAO,EAAC,QAAQ,EAAC,yCAAsC;AAGvD,OAAO,EAAC,cAAc,EAAC,+CAA4C;AAEnE,iCAAiC;AACjC,OAAO,EAAC,mBAAmB,EAAC,4CAAyC;AACrE,OAAO,EAAC,YAAY,EAAC,oCAAiC;AACtD,OAAO,EAAC,YAAY,EAAC,oCAAiC;AAiFtD,OAAO,EACL,eAAe,EACf,WAAW,EACX,wBAAwB,EACxB,qBAAqB,EACtB,sDAAmD;AACpD,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC3B,wDAAqD;AAMtD,OAAO,EACL,mBAAmB,EACnB,4BAA4B,EAC5B,gBAAgB,EACjB,4DAAyD;AAa1D,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACrB,yDAAsD;AAEvD,OAAO,EAAiB,SAAS,EAAE,UAAU,EAAC,8CAA2C;AAezF,yDAAyD;AACzD,OAAO,EAAC,GAAG,EAAC,uBAAoB;AAChC,OAAO,EAAC,eAAe,EAAC,oCAAiC;AAEzD,OAAO,EAAC,4BAA4B,EAAC,sDAAmD;AAExF,eAAe;AACf,OAAO,EACL,0BAA0B,IAAI,2BAA2B,EACzD,qBAAqB,IAAI,sBAAsB,EAChD,uDAAoD"}
@@ -1,4 +1,4 @@
1
- import type { VariableShaderType } from "../shadertypes/shader-types.js";
1
+ import type { VariableShaderType } from "../shadertypes/data-types/shader-types.js";
2
2
  import type { UniformValue } from "../adapter/types/uniforms.js";
3
3
  import { ShaderLayout, UniformInfo } from "../adapter/types/shader-layout.js";
4
4
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"uniform-block.d.ts","sourceRoot":"","sources":["../../src/portable/uniform-block.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,kBAAkB,EAAC,uCAAoC;AACpE,OAAO,KAAK,EAAC,YAAY,EAAC,qCAAkC;AAC5D,OAAO,EACL,YAAY,EACZ,WAAW,EAEZ,0CAAuC;AAGxC;;;GAGG;AACH,qBAAa,YAAY,CACvB,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC;IAE7E,IAAI,EAAE,MAAM,CAAC;IAEb,QAAQ,EAAE,MAAM,CAAC,MAAM,SAAS,EAAE,YAAY,CAAC,CAA+C;IAC9F,gBAAgB,EAAE,MAAM,CAAC,MAAM,SAAS,EAAE,OAAO,CAAC,CAA0C;IAC5F,QAAQ,EAAE,OAAO,CAAQ;IAEzB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAM;IACzD,WAAW,EAAE,MAAM,GAAG,KAAK,CAAiB;gBAEhC,KAAK,CAAC,EAAE;QAClB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,YAAY,CAAC,EAAE,YAAY,CAAC;QAC5B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC;KAC5E;IAmBD,4BAA4B;IAC5B,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,IAAI;IAS/C,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIpC,2BAA2B;IAC3B,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC;IAO9C,2BAA2B;IAC3B,OAAO,CAAC,WAAW;CAQpB"}
1
+ {"version":3,"file":"uniform-block.d.ts","sourceRoot":"","sources":["../../src/portable/uniform-block.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,kBAAkB,EAAC,kDAA+C;AAC/E,OAAO,KAAK,EAAC,YAAY,EAAC,qCAAkC;AAC5D,OAAO,EACL,YAAY,EACZ,WAAW,EAEZ,0CAAuC;AAGxC;;;GAGG;AACH,qBAAa,YAAY,CACvB,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC;IAE7E,IAAI,EAAE,MAAM,CAAC;IAEb,QAAQ,EAAE,MAAM,CAAC,MAAM,SAAS,EAAE,YAAY,CAAC,CAA+C;IAC9F,gBAAgB,EAAE,MAAM,CAAC,MAAM,SAAS,EAAE,OAAO,CAAC,CAA0C;IAC5F,QAAQ,EAAE,OAAO,CAAQ;IAEzB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAM;IACzD,WAAW,EAAE,MAAM,GAAG,KAAK,CAAiB;gBAEhC,KAAK,CAAC,EAAE;QAClB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,YAAY,CAAC,EAAE,YAAY,CAAC;QAC5B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC;KAC5E;IAmBD,4BAA4B;IAC5B,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,IAAI;IAS/C,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIpC,2BAA2B;IAC3B,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC;IAO9C,2BAA2B;IAC3B,OAAO,CAAC,WAAW;CAQpB"}
@@ -1,5 +1,5 @@
1
- import type { PrimitiveDataType } from "../shadertypes/data-types.js";
2
- import type { VariableShaderType } from "../shadertypes/shader-types.js";
1
+ import type { PrimitiveDataType } from "../shadertypes/data-types/data-types.js";
2
+ import type { VariableShaderType } from "../shadertypes/data-types/shader-types.js";
3
3
  import type { UniformValue } from "../adapter/types/uniforms.js";
4
4
  /**
5
5
  * Std140 layout for uniform buffers
@@ -1 +1 @@
1
- {"version":3,"file":"uniform-buffer-layout.d.ts","sourceRoot":"","sources":["../../src/portable/uniform-buffer-layout.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,iBAAiB,EAAC,qCAAkC;AACjE,OAAO,KAAK,EAAC,kBAAkB,EAAC,uCAAoC;AAIpE,OAAO,KAAK,EAAC,YAAY,EAAC,qCAAkC;AAW5D;;;GAGG;AACH,qBAAa,mBAAmB;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,iBAAiB,CAAA;KAAC,CAAC,CAAM;IAE9F,mDAAmD;IACnD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,kEAAkE;gBACtD,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC;IAsB5D,2CAA2C;IAC3C,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,UAAU;IAoDhE,wDAAwD;IACxD,GAAG,CAAC,IAAI,EAAE,MAAM;IAIhB,0DAA0D;IAC1D,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,GAAG,SAAS;CAI9D"}
1
+ {"version":3,"file":"uniform-buffer-layout.d.ts","sourceRoot":"","sources":["../../src/portable/uniform-buffer-layout.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,iBAAiB,EAAC,gDAA6C;AAC5E,OAAO,KAAK,EAAC,kBAAkB,EAAC,kDAA+C;AAI/E,OAAO,KAAK,EAAC,YAAY,EAAC,qCAAkC;AAW5D;;;GAGG;AACH,qBAAa,mBAAmB;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,iBAAiB,CAAA;KAAC,CAAC,CAAM;IAE9F,mDAAmD;IACnD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,kEAAkE;gBACtD,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC;IAsB5D,2CAA2C;IAC3C,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,UAAU;IAoDhE,wDAAwD;IACxD,GAAG,CAAC,IAAI,EAAE,MAAM;IAIhB,0DAA0D;IAC1D,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,GAAG,SAAS;CAI9D"}
@@ -1,8 +1,8 @@
1
1
  // luma.gl
2
2
  // SPDX-License-Identifier: MIT
3
3
  // Copyright (c) vis.gl contributors
4
- import { alignTo } from "../shadertypes/utils/decode-data-types.js";
5
- import { getVariableShaderTypeInfo } from "../shadertypes/utils/decode-shader-types.js";
4
+ import { alignTo } from "../shadertypes/data-types/decode-data-types.js";
5
+ import { getVariableShaderTypeInfo } from "../shadertypes/data-types/decode-shader-types.js";
6
6
  import { getScratchArrayBuffer } from "../utils/array-utils-flat.js";
7
7
  import { isNumberArray } from "../utils/is-array.js";
8
8
  import { log } from "../utils/log.js";
@@ -1 +1 @@
1
- {"version":3,"file":"uniform-buffer-layout.js","sourceRoot":"","sources":["../../src/portable/uniform-buffer-layout.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"uniform-buffer-layout.js","sourceRoot":"","sources":["../../src/portable/uniform-buffer-layout.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { VariableShaderType } from "../shadertypes/shader-types.js";
1
+ import type { VariableShaderType } from "../shadertypes/data-types/shader-types.js";
2
2
  import type { UniformValue } from "../adapter/types/uniforms.js";
3
3
  import type { Device } from "../adapter/device.js";
4
4
  import { Buffer } from "../adapter/resources/buffer.js";
@@ -1 +1 @@
1
- {"version":3,"file":"uniform-store.d.ts","sourceRoot":"","sources":["../../src/portable/uniform-store.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,kBAAkB,EAAC,uCAAoC;AACpE,OAAO,KAAK,EAAC,YAAY,EAAC,qCAAkC;AAC5D,OAAO,KAAK,EAAC,MAAM,EAAC,6BAA0B;AAC9C,OAAO,EAAC,MAAM,EAAC,uCAAoC;AAEnD,OAAO,EAAC,YAAY,EAAC,2BAAwB;AAC7C,OAAO,EAAC,mBAAmB,EAAC,mCAAgC;AAE5D;;;;;;GAMG;AACH,qBAAa,YAAY,CACvB,WAAW,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,MAAM,CAClE,MAAM,EACN,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACxB;IAED,uDAAuD;IACvD,aAAa,qEAA8C;IAC3D,sEAAsE;IACtE,oBAAoB,8CAAqD;IACzE,mCAAmC;IACnC,cAAc,iCAAwC;IAEtD;;;OAGG;gBAED,MAAM,EAAE,MAAM,CACZ,MAAM,WAAW,EACjB;QACE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;QAClD,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;KAChD,CACF;IAgBH,0CAA0C;IAC1C,OAAO,IAAI,IAAI;IAMf;;;OAGG;IACH,WAAW,CACT,QAAQ,EAAE,OAAO,CAAC;SAAE,KAAK,IAAI,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KAAC,CAAC,GAC7E,IAAI;IAUP,4DAA4D;IAC5D,0BAA0B,CAAC,iBAAiB,EAAE,MAAM,WAAW,GAAG,MAAM;IAIxE,mEAAmE;IACnE,oBAAoB,CAAC,iBAAiB,EAAE,MAAM,WAAW,GAAG,UAAU;IAMtE;;;OAGG;IACH,mBAAmB,CACjB,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,MAAM,WAAW,EACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;SAAE,KAAK,IAAI,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KAAC,CAAC,GAC9E,MAAM;IAeT,4GAA4G;IAC5G,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,WAAW,GAAG,MAAM;IAcrF,4DAA4D;IAC5D,oBAAoB,IAAI,KAAK,GAAG,MAAM;IAYtC,qEAAqE;IACrE,mBAAmB,CAAC,iBAAiB,EAAE,MAAM,WAAW,GAAG,KAAK,GAAG,MAAM;CAwB1E"}
1
+ {"version":3,"file":"uniform-store.d.ts","sourceRoot":"","sources":["../../src/portable/uniform-store.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,kBAAkB,EAAC,kDAA+C;AAC/E,OAAO,KAAK,EAAC,YAAY,EAAC,qCAAkC;AAC5D,OAAO,KAAK,EAAC,MAAM,EAAC,6BAA0B;AAC9C,OAAO,EAAC,MAAM,EAAC,uCAAoC;AAEnD,OAAO,EAAC,YAAY,EAAC,2BAAwB;AAC7C,OAAO,EAAC,mBAAmB,EAAC,mCAAgC;AAE5D;;;;;;GAMG;AACH,qBAAa,YAAY,CACvB,WAAW,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,MAAM,CAClE,MAAM,EACN,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACxB;IAED,uDAAuD;IACvD,aAAa,qEAA8C;IAC3D,sEAAsE;IACtE,oBAAoB,8CAAqD;IACzE,mCAAmC;IACnC,cAAc,iCAAwC;IAEtD;;;OAGG;gBAED,MAAM,EAAE,MAAM,CACZ,MAAM,WAAW,EACjB;QACE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;QAClD,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;KAChD,CACF;IAgBH,0CAA0C;IAC1C,OAAO,IAAI,IAAI;IAMf;;;OAGG;IACH,WAAW,CACT,QAAQ,EAAE,OAAO,CAAC;SAAE,KAAK,IAAI,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KAAC,CAAC,GAC7E,IAAI;IAUP,4DAA4D;IAC5D,0BAA0B,CAAC,iBAAiB,EAAE,MAAM,WAAW,GAAG,MAAM;IAIxE,mEAAmE;IACnE,oBAAoB,CAAC,iBAAiB,EAAE,MAAM,WAAW,GAAG,UAAU;IAMtE;;;OAGG;IACH,mBAAmB,CACjB,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,MAAM,WAAW,EACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;SAAE,KAAK,IAAI,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KAAC,CAAC,GAC9E,MAAM;IAeT,4GAA4G;IAC5G,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,WAAW,GAAG,MAAM;IAcrF,4DAA4D;IAC5D,oBAAoB,IAAI,KAAK,GAAG,MAAM;IAYtC,qEAAqE;IACrE,mBAAmB,CAAC,iBAAiB,EAAE,MAAM,WAAW,GAAG,KAAK,GAAG,MAAM;CAwB1E"}
@@ -25,4 +25,8 @@ export type DataTypeInfo = {
25
25
  integer: boolean;
26
26
  signed: boolean;
27
27
  };
28
+ /** Returns a typed array appropriate to hold the actual values of a data type (integers for normalized integers) */
29
+ export type DataTypeArray<T extends NormalizedDataType> = T extends 'uint8' ? Uint8Array : T extends 'sint8' ? Int8Array : T extends 'unorm8' ? Uint8Array : T extends 'snorm8' ? Int8Array : T extends 'uint16' ? Uint16Array : T extends 'sint16' ? Int16Array : T extends 'unorm16' ? Uint16Array : T extends 'snorm16' ? Int16Array : T extends 'uint32' ? Uint32Array : T extends 'sint32' ? Int32Array : T extends 'float16' ? Uint16Array : T extends 'float32' ? Float32Array : never;
30
+ /** Returns a type array appropriate to hold the logical values of a data type (floats for normalized integers) */
31
+ export type NormalizedDataTypeArray<T extends NormalizedDataType> = T extends 'uint8' ? Uint8Array : T extends 'sint8' ? Int8Array : T extends 'unorm8' ? Float32Array : T extends 'snorm8' ? Float32Array : T extends 'uint16' ? Uint16Array : T extends 'sint16' ? Int16Array : T extends 'unorm16' ? Uint16Array : T extends 'snorm16' ? Int16Array : T extends 'uint32' ? Uint32Array : T extends 'sint32' ? Int32Array : T extends 'float16' ? Float32Array : T extends 'float32' ? Float32Array : never;
28
32
  //# sourceMappingURL=data-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-types.d.ts","sourceRoot":"","sources":["../../../src/shadertypes/data-types/data-types.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAE9D;;;GAGG;AACH,MAAM,MAAM,cAAc,GACtB,OAAO,GACP,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,SAAS,CAAC;AAEd;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,cAAc,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAE9F,gEAAgE;AAChE,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,EAAE,cAAc,CAAC;IAC3B,aAAa,EAAE,iBAAiB,CAAC;IACjC,UAAU,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,oHAAoH;AACpH,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,kBAAkB,IAAI,CAAC,SAAS,OAAO,GACvE,UAAU,GACV,CAAC,SAAS,OAAO,GACf,SAAS,GACT,CAAC,SAAS,QAAQ,GAChB,UAAU,GACV,CAAC,SAAS,QAAQ,GAChB,SAAS,GACT,CAAC,SAAS,QAAQ,GAChB,WAAW,GACX,CAAC,SAAS,QAAQ,GAChB,UAAU,GACV,CAAC,SAAS,SAAS,GACjB,WAAW,GACX,CAAC,SAAS,SAAS,GACjB,UAAU,GACV,CAAC,SAAS,QAAQ,GAChB,WAAW,GACX,CAAC,SAAS,QAAQ,GAChB,UAAU,GACV,CAAC,SAAS,SAAS,GACjB,WAAW,GACX,CAAC,SAAS,SAAS,GACjB,YAAY,GACZ,KAAK,CAAC;AAEhC,kHAAkH;AAClH,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,kBAAkB,IAAI,CAAC,SAAS,OAAO,GACjF,UAAU,GACV,CAAC,SAAS,OAAO,GACf,SAAS,GACT,CAAC,SAAS,QAAQ,GAChB,YAAY,GACZ,CAAC,SAAS,QAAQ,GAChB,YAAY,GACZ,CAAC,SAAS,QAAQ,GAChB,WAAW,GACX,CAAC,SAAS,QAAQ,GAChB,UAAU,GACV,CAAC,SAAS,SAAS,GACjB,WAAW,GACX,CAAC,SAAS,SAAS,GACjB,UAAU,GACV,CAAC,SAAS,QAAQ,GAChB,WAAW,GACX,CAAC,SAAS,QAAQ,GAChB,UAAU,GACV,CAAC,SAAS,SAAS,GACjB,YAAY,GACZ,CAAC,SAAS,SAAS,GACjB,YAAY,GACZ,KAAK,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-types.js","sourceRoot":"","sources":["../../../src/shadertypes/data-types/data-types.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC"}
@@ -1,16 +1,16 @@
1
1
  import { TypedArray, TypedArrayConstructor } from "../../types.js";
2
- import { PrimitiveDataType, SignedDataType, NormalizedDataType, DataTypeInfo } from "../data-types.js";
2
+ import { SignedDataType, NormalizedDataType, DataTypeInfo } from "./data-types.js";
3
3
  /**
4
4
  * Gets info about a data type constant (signed or normalized)
5
5
  * @returns underlying primitive / signed types, byte length, normalization, integer, signed flags
6
6
  */
7
7
  export declare function getDataTypeInfo(type: NormalizedDataType): DataTypeInfo;
8
8
  /** Build a vertex format from a signed data type and a component */
9
- export declare function makeNormalizedDataType(signedDataType: SignedDataType): NormalizedDataType;
9
+ export declare function getNormalizedDataType(signedDataType: SignedDataType): NormalizedDataType;
10
10
  /** Align offset to 1, 2 or 4 elements (4, 8 or 16 bytes) */
11
11
  export declare function alignTo(size: number, count: number): number;
12
12
  /** Returns the VariableShaderType that corresponds to a typed array */
13
- export declare function getDataTypeFromTypedArray(arrayOrType: TypedArray | TypedArrayConstructor): SignedDataType;
13
+ export declare function getDataType(arrayOrType: TypedArray | TypedArrayConstructor): SignedDataType;
14
14
  /** Returns the TypedArray that corresponds to a shader data type */
15
- export declare function getTypedArrayFromDataType(type: NormalizedDataType | PrimitiveDataType): TypedArrayConstructor;
15
+ export declare function getTypedArrayConstructor(type: NormalizedDataType): TypedArrayConstructor;
16
16
  //# sourceMappingURL=decode-data-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decode-data-types.d.ts","sourceRoot":"","sources":["../../../src/shadertypes/data-types/decode-data-types.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,UAAU,EAAE,qBAAqB,EAAC,uBAAoB;AAC9D,OAAO,EAAoB,cAAc,EAAE,kBAAkB,EAAE,YAAY,EAAC,wBAAqB;AAEjG;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,kBAAkB,GAAG,YAAY,CAatE;AAED,oEAAoE;AACpE,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,cAAc,GAAG,kBAAkB,CAUxF;AAED,4DAA4D;AAC5D,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAO3D;AAED,uEAAuE;AACvE,wBAAgB,WAAW,CAAC,WAAW,EAAE,UAAU,GAAG,qBAAqB,GAAG,cAAc,CAU3F;AAED,oEAAoE;AACpE,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,kBAAkB,GAAG,qBAAqB,CAGxF"}
@@ -0,0 +1,74 @@
1
+ // luma.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ /**
5
+ * Gets info about a data type constant (signed or normalized)
6
+ * @returns underlying primitive / signed types, byte length, normalization, integer, signed flags
7
+ */
8
+ export function getDataTypeInfo(type) {
9
+ const [signedType, primitiveType, byteLength] = NORMALIZED_TYPE_MAP[type];
10
+ const normalized = type.includes('norm');
11
+ const integer = !normalized && !type.startsWith('float');
12
+ const signed = type.startsWith('s');
13
+ return {
14
+ signedType,
15
+ primitiveType,
16
+ byteLength,
17
+ normalized,
18
+ integer,
19
+ signed
20
+ };
21
+ }
22
+ /** Build a vertex format from a signed data type and a component */
23
+ export function getNormalizedDataType(signedDataType) {
24
+ const dataType = signedDataType;
25
+ // prettier-ignore
26
+ switch (dataType) {
27
+ case 'uint8': return 'unorm8';
28
+ case 'sint8': return 'snorm8';
29
+ case 'uint16': return 'unorm16';
30
+ case 'sint16': return 'snorm16';
31
+ default: return dataType;
32
+ }
33
+ }
34
+ /** Align offset to 1, 2 or 4 elements (4, 8 or 16 bytes) */
35
+ export function alignTo(size, count) {
36
+ // prettier-ignore
37
+ switch (count) {
38
+ case 1: return size; // Pad upwards to even multiple of 2
39
+ case 2: return size + (size % 2); // Pad upwards to even multiple of 2
40
+ default: return size + ((4 - (size % 4)) % 4); // Pad upwards to even multiple of 4
41
+ }
42
+ }
43
+ /** Returns the VariableShaderType that corresponds to a typed array */
44
+ export function getDataType(arrayOrType) {
45
+ const Constructor = ArrayBuffer.isView(arrayOrType) ? arrayOrType.constructor : arrayOrType;
46
+ if (Constructor === Uint8ClampedArray) {
47
+ return 'uint8';
48
+ }
49
+ const info = Object.values(NORMALIZED_TYPE_MAP).find(entry => Constructor === entry[4]);
50
+ if (!info) {
51
+ throw new Error(Constructor.name);
52
+ }
53
+ return info[0];
54
+ }
55
+ /** Returns the TypedArray that corresponds to a shader data type */
56
+ export function getTypedArrayConstructor(type) {
57
+ const [, , , , Constructor] = NORMALIZED_TYPE_MAP[type];
58
+ return Constructor;
59
+ }
60
+ const NORMALIZED_TYPE_MAP = {
61
+ uint8: ['uint8', 'u32', 1, false, Uint8Array],
62
+ sint8: ['sint8', 'i32', 1, false, Int8Array],
63
+ unorm8: ['uint8', 'f32', 1, true, Uint8Array],
64
+ snorm8: ['sint8', 'f32', 1, true, Int8Array],
65
+ uint16: ['uint16', 'u32', 2, false, Uint16Array],
66
+ sint16: ['sint16', 'i32', 2, false, Int16Array],
67
+ unorm16: ['uint16', 'u32', 2, true, Uint16Array],
68
+ snorm16: ['sint16', 'i32', 2, true, Int16Array],
69
+ float16: ['float16', 'f16', 2, false, Uint16Array],
70
+ float32: ['float32', 'f32', 4, false, Float32Array],
71
+ uint32: ['uint32', 'u32', 4, false, Uint32Array],
72
+ sint32: ['sint32', 'i32', 4, false, Int32Array]
73
+ };
74
+ //# sourceMappingURL=decode-data-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decode-data-types.js","sourceRoot":"","sources":["../../../src/shadertypes/data-types/decode-data-types.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { PrimitiveDataType } from "../data-types.js";
2
- import type { VariableShaderType, AttributeShaderType, AttributeShaderTypeInfo, VariableShaderTypeAlias, AttributeShaderTypeAlias } from "../shader-types.js";
1
+ import { PrimitiveDataType } from "./data-types.js";
2
+ import type { VariableShaderType, AttributeShaderType, AttributeShaderTypeInfo, VariableShaderTypeAlias, AttributeShaderTypeAlias } from "./shader-types.js";
3
3
  /** Split a uniform type string into type and components */
4
4
  export declare function getVariableShaderTypeInfo(format: VariableShaderType): {
5
5
  type: PrimitiveDataType;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decode-shader-types.d.ts","sourceRoot":"","sources":["../../../src/shadertypes/data-types/decode-shader-types.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,iBAAiB,EAAC,wBAAqB;AAC/C,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,EACvB,uBAAuB,EACvB,wBAAwB,EACzB,0BAAuB;AAExB,2DAA2D;AAC3D,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,kBAAkB,GAAG;IACrE,IAAI,EAAE,iBAAiB,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB,CAGA;AAED,2FAA2F;AAC3F,wBAAgB,0BAA0B,CACxC,aAAa,EAAE,mBAAmB,GACjC,uBAAuB,CAazB;AAED,wBAAgB,uBAAuB,CACrC,aAAa,EAAE,iBAAiB,EAChC,UAAU,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GACxB,mBAAmB,CAErB;AAED,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,wBAAwB,GAAG,mBAAmB,GACpD,mBAAmB,CAErB;AAED,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,uBAAuB,GAAG,kBAAkB,GAClD,kBAAkB,CAEpB;AA6FD,yEAAyE;AACzE,eAAO,MAAM,6BAA6B,EAAE,MAAM,CAAC,wBAAwB,EAAE,mBAAmB,CAe7F,CAAC;AAEJ,+EAA+E;AAC/E,eAAO,MAAM,4BAA4B,EAAE,MAAM,CAAC,uBAAuB,EAAE,kBAAkB,CAyC5F,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decode-shader-types.js","sourceRoot":"","sources":["../../../src/shadertypes/data-types/decode-shader-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shader-types.d.ts","sourceRoot":"","sources":["../../../src/shadertypes/data-types/shader-types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,iBAAiB,EAAC,wBAAqB;AAEpD;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAC3B,iBAAiB,GACjB,QAAQ,iBAAiB,GAAG,GAC5B,QAAQ,iBAAiB,GAAG,GAC5B,QAAQ,iBAAiB,GAAG,CAAC;AAEjC;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAC1B,iBAAiB,GACjB,QAAQ,iBAAiB,GAAG,GAC5B,QAAQ,iBAAiB,GAAG,GAC5B,QAAQ,iBAAiB,GAAG,GAC5B,UAAU,iBAAiB,GAAG,GAC9B,UAAU,iBAAiB,GAAG,GAC9B,UAAU,iBAAiB,GAAG,GAC9B,UAAU,iBAAiB,GAAG,GAC9B,UAAU,iBAAiB,GAAG,GAC9B,UAAU,iBAAiB,GAAG,GAC9B,UAAU,iBAAiB,GAAG,GAC9B,UAAU,iBAAiB,GAAG,GAC9B,UAAU,iBAAiB,GAAG,CAAC;AAGnC,KAAK,qBAAqB,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAEnD,gDAAgD;AAChD,MAAM,MAAM,wBAAwB,GAChC,OAAO,qBAAqB,EAAE,GAC9B,OAAO,qBAAqB,EAAE,GAC9B,OAAO,qBAAqB,EAAE,CAAC;AAEnC,gDAAgD;AAChD,MAAM,MAAM,uBAAuB,GAC/B,wBAAwB,GACxB,SAAS,qBAAqB,EAAE,GAChC,SAAS,qBAAqB,EAAE,GAChC,SAAS,qBAAqB,EAAE,GAChC,SAAS,qBAAqB,EAAE,GAChC,SAAS,qBAAqB,EAAE,GAChC,SAAS,qBAAqB,EAAE,GAChC,SAAS,qBAAqB,EAAE,GAChC,SAAS,qBAAqB,EAAE,GAChC,SAAS,qBAAqB,EAAE,CAAC;AAErC,0EAA0E;AAC1E,MAAM,MAAM,mBAAmB,GAAG,kBAAkB,GAAG,gBAAgB,GAAG,eAAe,CAAC;AAE1F,kCAAkC;AAClC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;CAC9C,CAAC;AAEF,kCAAkC;AAClC,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,mBAAmB,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,gEAAgE;AAChE,MAAM,MAAM,uBAAuB,GAAG;IACpC,oDAAoD;IACpD,aAAa,EAAE,iBAAiB,CAAC;IACjC,wEAAwE;IACxE,UAAU,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC1B,iDAAiD;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,OAAO,EAAE,OAAO,CAAC;IACjB,uCAAuC;IACvC,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shader-types.js","sourceRoot":"","sources":["../../../src/shadertypes/data-types/shader-types.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC"}
@@ -0,0 +1,112 @@
1
+ export type ImageData = {
2
+ /** Offset into the data (in addition to any offset built-in to the ArrayBufferView) */
3
+ byteOffset?: number;
4
+ /** The stride, in bytes, between the beginning of each texel block row and the subsequent texel block row. Required if there are multiple texel block rows (i.e. the copy height or depth is more than one block). */
5
+ bytesPerRow?: number;
6
+ /** Number or rows per image (needed if multiple images are being set) */
7
+ rowsPerImage?: number;
8
+ /** Bits per channel */
9
+ bitsPerChannel: [number, number, number, number];
10
+ };
11
+ export type PixelData = {
12
+ arrayBuffer: ArrayBuffer;
13
+ width: number;
14
+ height: number;
15
+ /** Bytes per pixel */
16
+ bytesPerPixel: number;
17
+ bytesPerRow: number;
18
+ bitsPerChannel: [number, number, number, number];
19
+ };
20
+ /**
21
+ * Extracts a single RGBA pixel value from PixelData at the given (x, y) coordinate.
22
+ *
23
+ * The pixel's data is assumed to be packed according to pixelData.bitsPerChannel.
24
+ * The pixel data for a given row is padded to pixelData.bytesPerRow.
25
+ *
26
+ * @param pixelData - The metadata and data for the pixel buffer.
27
+ * @param x - The x coordinate (0-based).
28
+ * @param y - The y coordinate (0-based).
29
+ * @returns A tuple [r, g, b, a] where each channel is the extracted numeric value.
30
+ *
31
+ * @example
32
+
33
+ Assume you obtained an ArrayBuffer from copyTextureToBuffer and have the following metadata:
34
+
35
+ const pixelData: PixelData = {
36
+ bitsPerChannel: [5, 6, 5, 0], // For example, a 16-bit RGB565 format (no alpha)
37
+ width: 800,
38
+ height: 600,
39
+ bytesPerPixel: 2, // 16 bits per pixel
40
+ bytesPerRow: 1600, // Assuming no extra padding
41
+ arrayBuffer: myTextureBuffer, // Obtained from copyTextureToBuffer
42
+ };
43
+
44
+ You can then extract the pixel at (x, y) like so:
45
+
46
+ const rgba = extractPixel(pixelData, x, y);
47
+ console.log("Extracted RGBA:", rgba);
48
+
49
+ For RGBA formats where all channels are present (e.g. [8, 8, 8, 8]), the function will extract a 4-channel pixel value.
50
+ */
51
+ export declare function readPixel(pixelData: PixelData, x: number, y: number, bitsPerChannel: [number, number, number, number]): [number, number, number, number];
52
+ /**
53
+ * Encodes an RGBA pixel into a DataView at a given bit offset according to a specified bit layout.
54
+ *
55
+ * The channels are written sequentially in the order R, G, B, A. For each channel, the number
56
+ * of bits is taken from the bitsPerChannel array. Channel values are masked to fit within the specified width.
57
+ *
58
+ * @param dataView - The DataView into which the pixel will be encoded.
59
+ * @param bitOffset - The bit offset in the DataView where the pixel should be written.
60
+ * @param bitsPerChannel - A tuple specifying the number of bits for each channel: [R, G, B, A].
61
+ * @param pixel - A tuple [r, g, b, a] containing the channel values (as numbers).
62
+ *
63
+ * @example
64
+
65
+ Assume you want to encode a pixel into a packed format where:
66
+ - Red uses 5 bits
67
+ - Green uses 6 bits
68
+ - Blue uses 5 bits
69
+ - Alpha is not used (0 bits)
70
+ And the pixel format is packed into 16 bits total.
71
+
72
+ You might have:
73
+ const bitsPerChannel: [number, number, number, number] = [5, 6, 5, 0];
74
+ const pixel: [number, number, number, number] = [15, 31, 15, 0]; // Example values
75
+ const buffer = new ArrayBuffer(2); // 16 bits = 2 bytes
76
+ const dataView = new DataView(buffer);
77
+
78
+ Now encode the pixel at bit offset 0:
79
+ encodePixel(dataView, 0, bitsPerChannel, pixel);
80
+
81
+ The dataView now contains the 16-bit packed pixel value in big-endian order.
82
+ */
83
+ export declare function writePixel(dataView: DataView, bitOffset: number, bitsPerChannel: [number, number, number, number], pixel: [number, number, number, number]): void;
84
+ /**
85
+ * Reads a specified number of bits from a DataView starting at a given bit offset.
86
+ *
87
+ * For channels with a bit width of 8, 16, or 32 bits and when the bitOffset is byte-aligned,
88
+ * this function uses DataView methods for fast extraction.
89
+ *
90
+ * Bits are assumed to be stored in big-endian order (i.e. the most-significant bit is at position 7 in each byte).
91
+ *
92
+ * @param dataView - The DataView containing the data.
93
+ * @param bitOffset - The offset (in bits) within the data from which to start reading.
94
+ * @param bitCount - The number of bits to read (supported range: 1 to 32).
95
+ * @returns The extracted value as a number.
96
+ */
97
+ export declare function readBitsFromDataView(dataView: DataView, bitOffset: number, bitCount: number): number;
98
+ /**
99
+ * Writes a specified number of bits from a value into a DataView at a given bit offset.
100
+ *
101
+ * For channels with a bit width of 8, 16, or 32 bits and when the bit offset is byte-aligned,
102
+ * this function uses DataView methods for fast writing.
103
+ *
104
+ * Bits are assumed to be stored in big-endian order (i.e. the most-significant bit is at position 7 in each byte).
105
+ *
106
+ * @param dataView - The DataView to write into.
107
+ * @param bitOffset - The bit offset at which to begin writing.
108
+ * @param bitCount - The number of bits to write (supported range: 1 to 32).
109
+ * @param value - The numeric value whose lower bitCount bits will be written.
110
+ */
111
+ export declare function writeBitsToDataView(dataView: DataView, bitOffset: number, bitCount: number, value: number): void;
112
+ //# sourceMappingURL=pixel-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pixel-utils.d.ts","sourceRoot":"","sources":["../../../src/shadertypes/textures/pixel-utils.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,SAAS,GAAG;IACtB,uFAAuF;IACvF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sNAAsN;IACtN,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,uBAAuB;IACvB,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;CAClD,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,WAAW,EAAE,WAAW,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,sBAAsB;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;CAClD,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BE;AAEF,wBAAgB,SAAS,CACvB,SAAS,EAAE,SAAS,EACpB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAC/C,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CA6BlC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BE;AACF,wBAAgB,UAAU,CACxB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAChD,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GACtC,IAAI,CAUN;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,MAAM,CA0BR;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GACZ,IAAI,CAkCN"}