@headless-three/renderer 0.1.9 → 0.2.0

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 (244) hide show
  1. package/README.md +44 -290
  2. package/dist/gpu-output.d.ts +81 -0
  3. package/dist/gpu-output.d.ts.map +1 -0
  4. package/dist/gpu-output.js +53 -0
  5. package/dist/gpu-output.js.map +1 -0
  6. package/dist/index.d.ts +26 -770
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +30 -6226
  9. package/dist/index.js.map +1 -1
  10. package/dist/index.part-001.d.ts +95 -0
  11. package/dist/index.part-001.d.ts.map +1 -0
  12. package/dist/index.part-001.js +273 -0
  13. package/dist/index.part-001.js.map +1 -0
  14. package/dist/index.part-002.d.ts +69 -0
  15. package/dist/index.part-002.d.ts.map +1 -0
  16. package/dist/index.part-002.js +211 -0
  17. package/dist/index.part-002.js.map +1 -0
  18. package/dist/index.part-003.d.ts +105 -0
  19. package/dist/index.part-003.d.ts.map +1 -0
  20. package/dist/index.part-003.js +270 -0
  21. package/dist/index.part-003.js.map +1 -0
  22. package/dist/index.part-004.d.ts +78 -0
  23. package/dist/index.part-004.d.ts.map +1 -0
  24. package/dist/index.part-004.js +390 -0
  25. package/dist/index.part-004.js.map +1 -0
  26. package/dist/index.part-005.d.ts +75 -0
  27. package/dist/index.part-005.d.ts.map +1 -0
  28. package/dist/index.part-005.js +236 -0
  29. package/dist/index.part-005.js.map +1 -0
  30. package/dist/index.part-006.d.ts +105 -0
  31. package/dist/index.part-006.d.ts.map +1 -0
  32. package/dist/index.part-006.js +262 -0
  33. package/dist/index.part-006.js.map +1 -0
  34. package/dist/index.part-007.d.ts +112 -0
  35. package/dist/index.part-007.d.ts.map +1 -0
  36. package/dist/index.part-007.js +358 -0
  37. package/dist/index.part-007.js.map +1 -0
  38. package/dist/index.part-008.d.ts +238 -0
  39. package/dist/index.part-008.d.ts.map +1 -0
  40. package/dist/index.part-008.js +454 -0
  41. package/dist/index.part-008.js.map +1 -0
  42. package/dist/index.part-009.d.ts +46 -0
  43. package/dist/index.part-009.d.ts.map +1 -0
  44. package/dist/index.part-009.js +379 -0
  45. package/dist/index.part-009.js.map +1 -0
  46. package/dist/index.part-010.d.ts +23 -0
  47. package/dist/index.part-010.d.ts.map +1 -0
  48. package/dist/index.part-010.js +245 -0
  49. package/dist/index.part-010.js.map +1 -0
  50. package/dist/index.part-011.d.ts +21 -0
  51. package/dist/index.part-011.d.ts.map +1 -0
  52. package/dist/index.part-011.js +361 -0
  53. package/dist/index.part-011.js.map +1 -0
  54. package/dist/index.part-012.d.ts +115 -0
  55. package/dist/index.part-012.d.ts.map +1 -0
  56. package/dist/index.part-012.js +298 -0
  57. package/dist/index.part-012.js.map +1 -0
  58. package/dist/index.part-013.d.ts +37 -0
  59. package/dist/index.part-013.d.ts.map +1 -0
  60. package/dist/index.part-013.js +341 -0
  61. package/dist/index.part-013.js.map +1 -0
  62. package/dist/index.part-014.d.ts +43 -0
  63. package/dist/index.part-014.d.ts.map +1 -0
  64. package/dist/index.part-014.js +441 -0
  65. package/dist/index.part-014.js.map +1 -0
  66. package/dist/index.part-015.d.ts +45 -0
  67. package/dist/index.part-015.d.ts.map +1 -0
  68. package/dist/index.part-015.js +432 -0
  69. package/dist/index.part-015.js.map +1 -0
  70. package/dist/index.part-016.d.ts +55 -0
  71. package/dist/index.part-016.d.ts.map +1 -0
  72. package/dist/index.part-016.js +382 -0
  73. package/dist/index.part-016.js.map +1 -0
  74. package/dist/index.part-017.d.ts +55 -0
  75. package/dist/index.part-017.d.ts.map +1 -0
  76. package/dist/index.part-017.js +436 -0
  77. package/dist/index.part-017.js.map +1 -0
  78. package/dist/index.part-018.d.ts +34 -0
  79. package/dist/index.part-018.d.ts.map +1 -0
  80. package/dist/index.part-018.js +365 -0
  81. package/dist/index.part-018.js.map +1 -0
  82. package/dist/index.part-019.d.ts +29 -0
  83. package/dist/index.part-019.d.ts.map +1 -0
  84. package/dist/index.part-019.js +261 -0
  85. package/dist/index.part-019.js.map +1 -0
  86. package/dist/index.part-020.d.ts +37 -0
  87. package/dist/index.part-020.d.ts.map +1 -0
  88. package/dist/index.part-020.js +388 -0
  89. package/dist/index.part-020.js.map +1 -0
  90. package/dist/index.part-021.d.ts +10 -0
  91. package/dist/index.part-021.d.ts.map +1 -0
  92. package/dist/index.part-021.js +142 -0
  93. package/dist/index.part-021.js.map +1 -0
  94. package/dist/loaders.d.ts +27 -91
  95. package/dist/loaders.d.ts.map +1 -1
  96. package/dist/loaders.js +22 -855
  97. package/dist/loaders.js.map +1 -1
  98. package/dist/loaders.part-001.d.ts +163 -0
  99. package/dist/loaders.part-001.d.ts.map +1 -0
  100. package/dist/loaders.part-001.js +277 -0
  101. package/dist/loaders.part-001.js.map +1 -0
  102. package/dist/loaders.part-002.d.ts +33 -0
  103. package/dist/loaders.part-002.d.ts.map +1 -0
  104. package/dist/loaders.part-002.js +511 -0
  105. package/dist/loaders.part-002.js.map +1 -0
  106. package/dist/loaders.part-003.d.ts +23 -0
  107. package/dist/loaders.part-003.d.ts.map +1 -0
  108. package/dist/loaders.part-003.js +138 -0
  109. package/dist/loaders.part-003.js.map +1 -0
  110. package/dist/materials.d.ts +33 -49
  111. package/dist/materials.d.ts.map +1 -1
  112. package/dist/materials.js +39 -4339
  113. package/dist/materials.js.map +1 -1
  114. package/dist/materials.part-001.d.ts +153 -0
  115. package/dist/materials.part-001.d.ts.map +1 -0
  116. package/dist/materials.part-001.js +347 -0
  117. package/dist/materials.part-001.js.map +1 -0
  118. package/dist/materials.part-002.d.ts +46 -0
  119. package/dist/materials.part-002.d.ts.map +1 -0
  120. package/dist/materials.part-002.js +299 -0
  121. package/dist/materials.part-002.js.map +1 -0
  122. package/dist/materials.part-003.d.ts +14 -0
  123. package/dist/materials.part-003.d.ts.map +1 -0
  124. package/dist/materials.part-003.js +438 -0
  125. package/dist/materials.part-003.js.map +1 -0
  126. package/dist/materials.part-004.d.ts +30 -0
  127. package/dist/materials.part-004.d.ts.map +1 -0
  128. package/dist/materials.part-004.js +464 -0
  129. package/dist/materials.part-004.js.map +1 -0
  130. package/dist/materials.part-005.d.ts +38 -0
  131. package/dist/materials.part-005.d.ts.map +1 -0
  132. package/dist/materials.part-005.js +366 -0
  133. package/dist/materials.part-005.js.map +1 -0
  134. package/dist/materials.part-006.d.ts +18 -0
  135. package/dist/materials.part-006.d.ts.map +1 -0
  136. package/dist/materials.part-006.js +391 -0
  137. package/dist/materials.part-006.js.map +1 -0
  138. package/dist/materials.part-007.d.ts +24 -0
  139. package/dist/materials.part-007.d.ts.map +1 -0
  140. package/dist/materials.part-007.js +467 -0
  141. package/dist/materials.part-007.js.map +1 -0
  142. package/dist/materials.part-008.d.ts +95 -0
  143. package/dist/materials.part-008.d.ts.map +1 -0
  144. package/dist/materials.part-008.js +404 -0
  145. package/dist/materials.part-008.js.map +1 -0
  146. package/dist/materials.part-009.d.ts +89 -0
  147. package/dist/materials.part-009.d.ts.map +1 -0
  148. package/dist/materials.part-009.js +412 -0
  149. package/dist/materials.part-009.js.map +1 -0
  150. package/dist/materials.part-010.d.ts +46 -0
  151. package/dist/materials.part-010.d.ts.map +1 -0
  152. package/dist/materials.part-010.js +375 -0
  153. package/dist/materials.part-010.js.map +1 -0
  154. package/dist/materials.part-011.d.ts +25 -0
  155. package/dist/materials.part-011.d.ts.map +1 -0
  156. package/dist/materials.part-011.js +435 -0
  157. package/dist/materials.part-011.js.map +1 -0
  158. package/dist/materials.part-012.d.ts +15 -0
  159. package/dist/materials.part-012.d.ts.map +1 -0
  160. package/dist/materials.part-012.js +229 -0
  161. package/dist/materials.part-012.js.map +1 -0
  162. package/dist/scene.d.ts +19 -279
  163. package/dist/scene.d.ts.map +1 -1
  164. package/dist/scene.js +21 -3931
  165. package/dist/scene.js.map +1 -1
  166. package/dist/scene.part-001.d.ts +375 -0
  167. package/dist/scene.part-001.d.ts.map +1 -0
  168. package/dist/scene.part-001.js +20 -0
  169. package/dist/scene.part-001.js.map +1 -0
  170. package/dist/scene.part-002.d.ts +28 -0
  171. package/dist/scene.part-002.d.ts.map +1 -0
  172. package/dist/scene.part-002.js +311 -0
  173. package/dist/scene.part-002.js.map +1 -0
  174. package/dist/scene.part-003.d.ts +26 -0
  175. package/dist/scene.part-003.d.ts.map +1 -0
  176. package/dist/scene.part-003.js +384 -0
  177. package/dist/scene.part-003.js.map +1 -0
  178. package/dist/scene.part-004.d.ts +24 -0
  179. package/dist/scene.part-004.d.ts.map +1 -0
  180. package/dist/scene.part-004.js +287 -0
  181. package/dist/scene.part-004.js.map +1 -0
  182. package/dist/scene.part-005.d.ts +37 -0
  183. package/dist/scene.part-005.d.ts.map +1 -0
  184. package/dist/scene.part-005.js +350 -0
  185. package/dist/scene.part-005.js.map +1 -0
  186. package/dist/scene.part-006.d.ts +25 -0
  187. package/dist/scene.part-006.d.ts.map +1 -0
  188. package/dist/scene.part-006.js +362 -0
  189. package/dist/scene.part-006.js.map +1 -0
  190. package/dist/scene.part-007.d.ts +36 -0
  191. package/dist/scene.part-007.d.ts.map +1 -0
  192. package/dist/scene.part-007.js +417 -0
  193. package/dist/scene.part-007.js.map +1 -0
  194. package/dist/scene.part-008.d.ts +78 -0
  195. package/dist/scene.part-008.d.ts.map +1 -0
  196. package/dist/scene.part-008.js +416 -0
  197. package/dist/scene.part-008.js.map +1 -0
  198. package/dist/scene.part-009.d.ts +25 -0
  199. package/dist/scene.part-009.d.ts.map +1 -0
  200. package/dist/scene.part-009.js +330 -0
  201. package/dist/scene.part-009.js.map +1 -0
  202. package/dist/scene.part-010.d.ts +32 -0
  203. package/dist/scene.part-010.d.ts.map +1 -0
  204. package/dist/scene.part-010.js +336 -0
  205. package/dist/scene.part-010.js.map +1 -0
  206. package/dist/scene.part-011.d.ts +100 -0
  207. package/dist/scene.part-011.d.ts.map +1 -0
  208. package/dist/scene.part-011.js +262 -0
  209. package/dist/scene.part-011.js.map +1 -0
  210. package/dist/scene.part-012.d.ts +48 -0
  211. package/dist/scene.part-012.d.ts.map +1 -0
  212. package/dist/scene.part-012.js +357 -0
  213. package/dist/scene.part-012.js.map +1 -0
  214. package/dist/scene.part-013.d.ts +51 -0
  215. package/dist/scene.part-013.d.ts.map +1 -0
  216. package/dist/scene.part-013.js +368 -0
  217. package/dist/scene.part-013.js.map +1 -0
  218. package/dist/scene.part-014.d.ts +16 -0
  219. package/dist/scene.part-014.d.ts.map +1 -0
  220. package/dist/scene.part-014.js +112 -0
  221. package/dist/scene.part-014.js.map +1 -0
  222. package/dist/types.d.ts +53 -1564
  223. package/dist/types.d.ts.map +1 -1
  224. package/dist/types.js +4 -1
  225. package/dist/types.js.map +1 -1
  226. package/dist/types.part-001.d.ts +386 -0
  227. package/dist/types.part-001.d.ts.map +1 -0
  228. package/dist/types.part-001.js +4 -0
  229. package/dist/types.part-001.js.map +1 -0
  230. package/dist/types.part-002.d.ts +407 -0
  231. package/dist/types.part-002.d.ts.map +1 -0
  232. package/dist/types.part-002.js +3 -0
  233. package/dist/types.part-002.js.map +1 -0
  234. package/dist/types.part-003.d.ts +427 -0
  235. package/dist/types.part-003.d.ts.map +1 -0
  236. package/dist/types.part-003.js +3 -0
  237. package/dist/types.part-003.js.map +1 -0
  238. package/dist/types.part-004.d.ts +351 -0
  239. package/dist/types.part-004.d.ts.map +1 -0
  240. package/dist/types.part-004.js +3 -0
  241. package/dist/types.part-004.js.map +1 -0
  242. package/native.d.ts +40 -0
  243. package/native.js +53 -52
  244. package/package.json +16 -8
@@ -0,0 +1,261 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.clearRenderTargetColor = clearRenderTargetColor;
4
+ exports.clearRenderTargetDepth = clearRenderTargetDepth;
5
+ exports.clearRenderTargetStencil = clearRenderTargetStencil;
6
+ exports.renderTargetClearScissor = renderTargetClearScissor;
7
+ exports.renderTargetClearSize = renderTargetClearSize;
8
+ exports.renderTargetClearImage = renderTargetClearImage;
9
+ exports.renderTargetDepthImage = renderTargetDepthImage;
10
+ exports.renderTargetClearDimension = renderTargetClearDimension;
11
+ exports.renderTargetExistingColorBuffer = renderTargetExistingColorBuffer;
12
+ exports.clearColorBuffer = clearColorBuffer;
13
+ exports.clearDepthTextureData = clearDepthTextureData;
14
+ exports.clearPackedDepthData = clearPackedDepthData;
15
+ exports.clearPackedDepthStencilData = clearPackedDepthStencilData;
16
+ exports.clearScalarDepthData = clearScalarDepthData;
17
+ exports.clearDepthRgbaBuffer = clearDepthRgbaBuffer;
18
+ exports.writeObjectIdMetadata = writeObjectIdMetadata;
19
+ exports.renderTargetColorTexture = renderTargetColorTexture;
20
+ exports.renderTargetColorTextures = renderTargetColorTextures;
21
+ const math_1 = require("./math");
22
+ const index_part_012_1 = require("./index.part-012");
23
+ const index_part_013_1 = require("./index.part-013");
24
+ const index_part_018_1 = require("./index.part-018");
25
+ const index_part_020_1 = require("./index.part-020");
26
+ const index_part_021_1 = require("./index.part-021");
27
+ function clearRenderTargetColor(target, color, fallbackSize, rendererScissor, rendererScissorTest, activeCubeFace, activeMipmapLevel) {
28
+ const size = renderTargetClearSize(target, fallbackSize);
29
+ if (!size)
30
+ return;
31
+ const colorTextures = renderTargetColorTextures(target);
32
+ if ((0, index_part_013_1.isCubeRenderTarget)(target)) {
33
+ const resolvedMipmapLevel = (0, index_part_013_1.resolveActiveMipmapLevel)(activeMipmapLevel, size.width, 'Renderer activeMipmapLevel');
34
+ const mipSize = (0, index_part_013_1.cubeMipmapSize)(size.width, size.height, resolvedMipmapLevel);
35
+ const scissor = renderTargetClearScissor(target, rendererScissor, rendererScissorTest, mipSize.width, mipSize.height, resolvedMipmapLevel);
36
+ const face = clearColorBuffer(color, mipSize.width, mipSize.height, scissor, renderTargetExistingColorBuffer((0, index_part_020_1.renderTargetTextureFaceImage)((0, index_part_013_1.cubeTargetTexture)(target), activeCubeFace, resolvedMipmapLevel)?.data, mipSize.width, mipSize.height));
37
+ const attachments = colorTextures.slice(1).map((texture) => ({ texture, data: face }));
38
+ (0, index_part_013_1.writeCubeRenderTargetFace)(target, face, size.width, size.height, mipSize.width, mipSize.height, activeCubeFace, resolvedMipmapLevel, undefined, undefined, attachments);
39
+ return;
40
+ }
41
+ const scissor = renderTargetClearScissor(target, rendererScissor, rendererScissorTest, size.width, size.height);
42
+ const data = clearColorBuffer(color, size.width, size.height, scissor, renderTargetExistingColorBuffer(target.data, size.width, size.height));
43
+ const attachments = colorTextures.slice(1).map((texture) => ({ texture, data }));
44
+ (0, index_part_018_1.writeRenderTarget)(target, data, size.width, size.height, undefined, undefined, attachments);
45
+ }
46
+ function clearRenderTargetDepth(target, depth, fallbackSize, rendererScissor, rendererScissorTest, activeCubeFace, activeMipmapLevel) {
47
+ if (!target.depthTexture)
48
+ return;
49
+ const size = renderTargetClearSize(target, fallbackSize);
50
+ if (!size)
51
+ return;
52
+ if ((0, index_part_013_1.isCubeRenderTarget)(target)) {
53
+ const resolvedMipmapLevel = (0, index_part_013_1.resolveActiveMipmapLevel)(activeMipmapLevel, size.width, 'Renderer activeMipmapLevel');
54
+ const mipSize = (0, index_part_013_1.cubeMipmapSize)(size.width, size.height, resolvedMipmapLevel);
55
+ const scissor = renderTargetClearScissor(target, rendererScissor, rendererScissorTest, mipSize.width, mipSize.height, resolvedMipmapLevel);
56
+ (0, index_part_013_1.writeCubeTextureFace)(target.depthTexture, clearDepthTextureData(target.depthTexture, depth, mipSize.width, mipSize.height, scissor, (0, index_part_020_1.renderTargetTextureFaceImage)(target.depthTexture, activeCubeFace, resolvedMipmapLevel)?.data), mipSize.width, mipSize.height, activeCubeFace, resolvedMipmapLevel, 'target.depthTexture');
57
+ return;
58
+ }
59
+ const scissor = renderTargetClearScissor(target, rendererScissor, rendererScissorTest, size.width, size.height);
60
+ (0, index_part_020_1.writeRenderTargetTexture)(target.depthTexture, clearDepthTextureData(target.depthTexture, depth, size.width, size.height, scissor, renderTargetDepthImage(target.depthTexture)?.data), size.width, size.height);
61
+ }
62
+ function clearRenderTargetStencil(target, stencil, fallbackDepth, fallbackSize, rendererScissor, rendererScissorTest, activeCubeFace, activeMipmapLevel) {
63
+ if (!target.depthTexture || target.depthTexture.type !== index_part_012_1.UnsignedInt248Type)
64
+ return;
65
+ const size = renderTargetClearSize(target, fallbackSize);
66
+ if (!size)
67
+ return;
68
+ if ((0, index_part_013_1.isCubeRenderTarget)(target)) {
69
+ const resolvedMipmapLevel = (0, index_part_013_1.resolveActiveMipmapLevel)(activeMipmapLevel, size.width, 'Renderer activeMipmapLevel');
70
+ const mipSize = (0, index_part_013_1.cubeMipmapSize)(size.width, size.height, resolvedMipmapLevel);
71
+ const scissor = renderTargetClearScissor(target, rendererScissor, rendererScissorTest, mipSize.width, mipSize.height, resolvedMipmapLevel);
72
+ (0, index_part_013_1.writeCubeTextureFace)(target.depthTexture, clearPackedDepthStencilData(fallbackDepth, stencil, mipSize.width, mipSize.height, scissor, (0, index_part_020_1.renderTargetTextureFaceImage)(target.depthTexture, activeCubeFace, resolvedMipmapLevel)?.data), mipSize.width, mipSize.height, activeCubeFace, resolvedMipmapLevel, 'target.depthTexture');
73
+ return;
74
+ }
75
+ const scissor = renderTargetClearScissor(target, rendererScissor, rendererScissorTest, size.width, size.height);
76
+ (0, index_part_020_1.writeRenderTargetTexture)(target.depthTexture, clearPackedDepthStencilData(fallbackDepth, stencil, size.width, size.height, scissor, renderTargetDepthImage(target.depthTexture)?.data), size.width, size.height);
77
+ }
78
+ function renderTargetClearScissor(target, rendererScissor, rendererScissorTest, width, height, activeMipmapLevel = 0) {
79
+ if (target.scissorTest === true) {
80
+ const scissor = activeMipmapLevel > 0
81
+ ? (0, index_part_013_1.cubeMipmapRect)(target.scissor, activeMipmapLevel)
82
+ : target.scissor;
83
+ return (0, index_part_013_1.normalizeOptionalPixelRect)(scissor, width, height, 'target.scissor');
84
+ }
85
+ if (rendererScissorTest && rendererScissor) {
86
+ return (0, index_part_013_1.normalizePixelRect)(rendererScissor, width, height, 'Renderer.scissor');
87
+ }
88
+ return undefined;
89
+ }
90
+ function renderTargetClearSize(target, fallbackSize) {
91
+ const image = renderTargetClearImage(target);
92
+ const rawWidth = target.width ?? image?.width ?? fallbackSize?.width;
93
+ const width = renderTargetClearDimension(rawWidth);
94
+ const height = renderTargetClearDimension(target.height ?? image?.height ?? fallbackSize?.height ?? ((0, index_part_013_1.isCubeRenderTarget)(target) ? rawWidth : undefined));
95
+ if (width === null || height === null)
96
+ return null;
97
+ return { width, height };
98
+ }
99
+ function renderTargetClearImage(target) {
100
+ const texture = renderTargetColorTexture(target);
101
+ if (texture) {
102
+ const image = Array.isArray(texture.image) ? texture.image[0] : texture.image;
103
+ if (image && !Buffer.isBuffer(image) && !(image instanceof Uint8Array))
104
+ return image;
105
+ const sourceData = texture.source?.data;
106
+ if (sourceData && !Buffer.isBuffer(sourceData) && !(sourceData instanceof Uint8Array) && !Array.isArray(sourceData)) {
107
+ return sourceData;
108
+ }
109
+ }
110
+ return target.image;
111
+ }
112
+ function renderTargetDepthImage(texture) {
113
+ if (Array.isArray(texture.image))
114
+ return texture.image[0];
115
+ if (texture.image?.data)
116
+ return texture.image;
117
+ const sourceData = texture.source?.data;
118
+ if (Array.isArray(sourceData))
119
+ return sourceData[0];
120
+ return sourceData;
121
+ }
122
+ function renderTargetClearDimension(value) {
123
+ return typeof value === 'number' && Number.isInteger(value) && value > 0 ? value : null;
124
+ }
125
+ function renderTargetExistingColorBuffer(data, width, height) {
126
+ if ((Buffer.isBuffer(data) ||
127
+ data instanceof Uint8Array ||
128
+ data instanceof Uint8ClampedArray) &&
129
+ data.length === width * height * 4) {
130
+ return Buffer.from(data);
131
+ }
132
+ return undefined;
133
+ }
134
+ function clearColorBuffer(color, width, height, rect, existing) {
135
+ const data = existing ? Buffer.from(existing) : Buffer.alloc(width * height * 4);
136
+ const r = Math.round((0, math_1.clamp01)(color[0]) * 255);
137
+ const g = Math.round((0, math_1.clamp01)(color[1]) * 255);
138
+ const b = Math.round((0, math_1.clamp01)(color[2]) * 255);
139
+ const a = Math.round((0, math_1.clamp01)(color[3]) * 255);
140
+ const clearRect = rect ?? { x: 0, y: 0, width, height };
141
+ for (let row = 0; row < clearRect.height; row += 1) {
142
+ const rowStart = ((clearRect.y + row) * width + clearRect.x) * 4;
143
+ const rowEnd = rowStart + clearRect.width * 4;
144
+ for (let offset = rowStart; offset < rowEnd; offset += 4) {
145
+ data[offset] = r;
146
+ data[offset + 1] = g;
147
+ data[offset + 2] = b;
148
+ data[offset + 3] = a;
149
+ }
150
+ }
151
+ return data;
152
+ }
153
+ function clearDepthTextureData(texture, depth, width, height, rect, existing) {
154
+ const clampedDepth = (0, math_1.clamp01)(depth);
155
+ if (texture.type === index_part_012_1.UnsignedByteType) {
156
+ return clearScalarDepthData(Uint8Array, existing, width, height, rect, Math.round(clampedDepth * 0xff));
157
+ }
158
+ if (texture.type === index_part_012_1.UnsignedShortType) {
159
+ return clearScalarDepthData(Uint16Array, existing, width, height, rect, Math.round(clampedDepth * 0xffff));
160
+ }
161
+ if (texture.type === index_part_012_1.UnsignedIntType) {
162
+ return clearScalarDepthData(Uint32Array, existing, width, height, rect, Math.round(clampedDepth * 0xffffffff));
163
+ }
164
+ if (texture.type === index_part_012_1.UnsignedInt248Type) {
165
+ return clearPackedDepthData(clampedDepth, width, height, rect, existing);
166
+ }
167
+ if (texture.type === index_part_012_1.FloatType) {
168
+ return clearScalarDepthData(Float32Array, existing, width, height, rect, clampedDepth);
169
+ }
170
+ if (texture.type === index_part_012_1.HalfFloatType) {
171
+ return clearScalarDepthData(Uint16Array, existing, width, height, rect, (0, index_part_021_1.normalizedFloatToHalf)(clampedDepth));
172
+ }
173
+ return clearDepthRgbaBuffer(clampedDepth, width, height, rect, existing);
174
+ }
175
+ function clearPackedDepthData(depth, width, height, rect, existing) {
176
+ const pixelCount = width * height;
177
+ const data = existing instanceof Uint32Array && existing.length === pixelCount
178
+ ? new Uint32Array(existing)
179
+ : new Uint32Array(pixelCount);
180
+ const value = Math.round((0, math_1.clamp01)(depth) * 0xffffff) * 0x100;
181
+ const clearRect = rect ?? { x: 0, y: 0, width, height };
182
+ for (let row = 0; row < clearRect.height; row += 1) {
183
+ const rowStart = (clearRect.y + row) * width + clearRect.x;
184
+ const rowEnd = rowStart + clearRect.width;
185
+ for (let offset = rowStart; offset < rowEnd; offset += 1) {
186
+ data[offset] = value + (data[offset] & 0xff);
187
+ }
188
+ }
189
+ return data;
190
+ }
191
+ function clearPackedDepthStencilData(fallbackDepth, stencil, width, height, rect, existing) {
192
+ const pixelCount = width * height;
193
+ const fallbackValue = Math.round((0, math_1.clamp01)(fallbackDepth) * 0xffffff) * 0x100;
194
+ const data = existing instanceof Uint32Array && existing.length === pixelCount
195
+ ? new Uint32Array(existing)
196
+ : new Uint32Array(pixelCount).fill(fallbackValue);
197
+ const value = stencil & 0xff;
198
+ const clearRect = rect ?? { x: 0, y: 0, width, height };
199
+ for (let row = 0; row < clearRect.height; row += 1) {
200
+ const rowStart = (clearRect.y + row) * width + clearRect.x;
201
+ const rowEnd = rowStart + clearRect.width;
202
+ for (let offset = rowStart; offset < rowEnd; offset += 1) {
203
+ data[offset] = Math.floor(data[offset] / 0x100) * 0x100 + value;
204
+ }
205
+ }
206
+ return data;
207
+ }
208
+ function clearScalarDepthData(ctor, existing, width, height, rect, value) {
209
+ const pixelCount = width * height;
210
+ const data = existing instanceof ctor && existing.length === pixelCount
211
+ ? new ctor(existing)
212
+ : new ctor(pixelCount);
213
+ const clearRect = rect ?? { x: 0, y: 0, width, height };
214
+ for (let row = 0; row < clearRect.height; row += 1) {
215
+ const rowStart = (clearRect.y + row) * width + clearRect.x;
216
+ const rowEnd = rowStart + clearRect.width;
217
+ for (let offset = rowStart; offset < rowEnd; offset += 1) {
218
+ data[offset] = value;
219
+ }
220
+ }
221
+ return data;
222
+ }
223
+ function clearDepthRgbaBuffer(depth, width, height, rect, existing) {
224
+ const data = Buffer.isBuffer(existing) && existing.length === width * height * 4
225
+ ? Buffer.from(existing)
226
+ : Buffer.alloc(width * height * 4);
227
+ const value = Math.round(depth * 255);
228
+ const clearRect = rect ?? { x: 0, y: 0, width, height };
229
+ for (let row = 0; row < clearRect.height; row += 1) {
230
+ const rowStart = ((clearRect.y + row) * width + clearRect.x) * 4;
231
+ const rowEnd = rowStart + clearRect.width * 4;
232
+ for (let offset = rowStart; offset < rowEnd; offset += 4) {
233
+ data[offset] = value;
234
+ data[offset + 1] = value;
235
+ data[offset + 2] = value;
236
+ data[offset + 3] = 255;
237
+ }
238
+ }
239
+ return data;
240
+ }
241
+ function writeObjectIdMetadata(target, objectIdEntries) {
242
+ if (objectIdEntries) {
243
+ target.objectIdEntries = objectIdEntries;
244
+ target.objectIdMap = Object.fromEntries(objectIdEntries.map((entry) => [String(entry.encodedId), entry]));
245
+ }
246
+ else {
247
+ delete target.objectIdEntries;
248
+ delete target.objectIdMap;
249
+ }
250
+ }
251
+ function renderTargetColorTexture(target) {
252
+ return renderTargetColorTextures(target)[0];
253
+ }
254
+ function renderTargetColorTextures(target) {
255
+ if (Array.isArray(target.texture))
256
+ return target.texture;
257
+ if (target.textures)
258
+ return target.textures;
259
+ return target.texture ? [target.texture] : [];
260
+ }
261
+ //# sourceMappingURL=index.part-019.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.part-019.js","sourceRoot":"","sources":["../api/index.part-019.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import type { RenderTargetLike, RenderTargetTextureLike, RenderTargetImageLike } from './types';
2
+ import { PixelRect } from './index.part-012';
3
+ export declare function renderTargetReadbackSource(target: RenderTargetLike, activeCubeFaceIndex: number | undefined, textureIndex: number, label: string, activeMipmapLevel?: number): {
4
+ data: NonNullable<RenderTargetImageLike['data']>;
5
+ width: number;
6
+ height: number;
7
+ channels: number;
8
+ };
9
+ export declare function renderTargetReadbackImage(target: RenderTargetLike, texture: RenderTargetTextureLike | undefined, activeCubeFaceIndex: number | undefined, textureIndex: number, activeMipmapLevel?: number): RenderTargetImageLike | undefined;
10
+ export declare function renderTargetTextureFaceImage(texture: RenderTargetTextureLike | undefined, activeCubeFaceIndex: number, activeMipmapLevel?: number): RenderTargetImageLike | undefined;
11
+ export declare function renderTargetReadbackChannelCount(data: NonNullable<RenderTargetImageLike['data']>, width: number, height: number, label: string): number;
12
+ export declare function copyRenderTargetReadbackPixels(readback: {
13
+ data: NonNullable<RenderTargetImageLike['data']>;
14
+ width: number;
15
+ height: number;
16
+ channels: number;
17
+ }, x: number, y: number, width: number, height: number, buffer: NonNullable<RenderTargetImageLike['data']>, label: string): void;
18
+ export declare function readbackRect(x: unknown, y: unknown, width: unknown, height: unknown, label: string): PixelRect;
19
+ export declare function assertRenderTargetReadbackBuffer(buffer: unknown, minimumLength: number, label: string): asserts buffer is NonNullable<RenderTargetImageLike['data']>;
20
+ export declare function createRenderTargetReadbackBuffer(source: NonNullable<RenderTargetImageLike['data']>, length: number): NonNullable<RenderTargetImageLike['data']>;
21
+ export declare function writeRenderTargetTexture(texture: RenderTargetTextureLike, data: NonNullable<RenderTargetImageLike['data']>, width: number, height: number): void;
22
+ export declare function colorTextureData(texture: RenderTargetTextureLike, rgba: Buffer): NonNullable<RenderTargetImageLike['data']>;
23
+ export declare function normalizedByteToSignedInteger(value: number, max: number): number;
24
+ export declare function normalizedByteToUnsignedInteger(value: number, max: number): number;
25
+ export declare function packedUnsignedShort4444ColorTextureData(values: Uint8Array, channels: 1 | 2 | 3 | 4): Uint16Array;
26
+ export declare function packedUnsignedShort5551ColorTextureData(values: Uint8Array, channels: 1 | 2 | 3 | 4): Uint16Array;
27
+ export declare function packedUnsignedInt5999ColorTextureData(values: Uint8Array, channels: 1 | 2 | 3 | 4): Uint32Array;
28
+ export declare function packedUnsignedInt101111ColorTextureData(values: Uint8Array, channels: 1 | 2 | 3 | 4): Uint32Array;
29
+ export declare function packRgb9E5(r: number, g: number, b: number): number;
30
+ export declare function packR11G11B10F(r: number, g: number, b: number): number;
31
+ export declare function packUnsignedFloat(value: number, mantissaBits: 5 | 6): number;
32
+ export declare function colorTextureChannelCount(format: number | undefined): 1 | 2 | 3 | 4;
33
+ export declare function colorTextureBytes(rgba: Buffer, format: number | undefined, channels: 1 | 2 | 3 | 4): Uint8Array;
34
+ export declare function alphaColorTextureBytes(rgba: Buffer): Uint8Array;
35
+ export declare function narrowedColorTextureBytes(rgba: Buffer, channels: 1 | 2 | 3): Uint8Array;
36
+ export declare function luminanceAlphaColorTextureBytes(rgba: Buffer): Uint8Array;
37
+ //# sourceMappingURL=index.part-020.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.part-020.d.ts","sourceRoot":"","sources":["../api/index.part-020.ts"],"names":[],"mappings":"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"}