@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,441 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.depthReadbackScene = depthReadbackScene;
4
+ exports.depthReadbackMesh = depthReadbackMesh;
5
+ exports.meshWritesDepth = meshWritesDepth;
6
+ exports.formatWgslFloat = formatWgslFloat;
7
+ exports.fogToNative = fogToNative;
8
+ exports.postProcessingToNative = postProcessingToNative;
9
+ exports.pixelRectToArray = pixelRectToArray;
10
+ exports.effectiveViewport = effectiveViewport;
11
+ exports.effectiveScissor = effectiveScissor;
12
+ exports.effectiveViewportLabel = effectiveViewportLabel;
13
+ exports.effectiveScissorLabel = effectiveScissorLabel;
14
+ exports.pixelRectComponents = pixelRectComponents;
15
+ exports.rendererStatePixelRect = rendererStatePixelRect;
16
+ exports.rendererStatePixelRectFromComponents = rendererStatePixelRectFromComponents;
17
+ exports.assertDefaultViewportDepthRange = assertDefaultViewportDepthRange;
18
+ exports.rendererViewportDepthValue = rendererViewportDepthValue;
19
+ exports.rendererStateClearColor = rendererStateClearColor;
20
+ exports.rendererStateHexColor = rendererStateHexColor;
21
+ exports.rendererStateClearAlpha = rendererStateClearAlpha;
22
+ exports.rendererStateClearDepth = rendererStateClearDepth;
23
+ exports.rendererStateClearStencil = rendererStateClearStencil;
24
+ exports.cloneColor4 = cloneColor4;
25
+ exports.cloneColor3 = cloneColor3;
26
+ exports.rendererStateSize = rendererStateSize;
27
+ exports.rendererStateSizeDimension = rendererStateSizeDimension;
28
+ exports.rendererStatePixelRatio = rendererStatePixelRatio;
29
+ exports.rendererStatePositiveFiniteNumber = rendererStatePositiveFiniteNumber;
30
+ exports.rendererStateFiniteNumber = rendererStateFiniteNumber;
31
+ exports.rendererStateOptionalFiniteInteger = rendererStateOptionalFiniteInteger;
32
+ exports.rendererStateBoolean = rendererStateBoolean;
33
+ exports.rendererInfoDrawCount = rendererInfoDrawCount;
34
+ exports.rendererInfoInstanceCount = rendererInfoInstanceCount;
35
+ exports.rendererInfoDrawMode = rendererInfoDrawMode;
36
+ exports.rendererInfoTimestampTime = rendererInfoTimestampTime;
37
+ exports.assertRendererStateCullFace = assertRendererStateCullFace;
38
+ exports.assertRendererStateBlendingMode = assertRendererStateBlendingMode;
39
+ exports.throwUnsupportedRendererStateWebGl = throwUnsupportedRendererStateWebGl;
40
+ exports.assertRendererParametersLike = assertRendererParametersLike;
41
+ exports.rendererStatePowerPreference = rendererStatePowerPreference;
42
+ const color_1 = require("./color");
43
+ const math_1 = require("./math");
44
+ const index_part_001_1 = require("./index.part-001");
45
+ const index_part_012_1 = require("./index.part-012");
46
+ const index_part_015_1 = require("./index.part-015");
47
+ function depthReadbackScene(scene) {
48
+ return {
49
+ ...scene,
50
+ background: [0, 0, 0, 1],
51
+ backgroundIntensity: 1,
52
+ backgroundTexture: undefined,
53
+ backgroundTextureWidth: undefined,
54
+ backgroundTextureHeight: undefined,
55
+ backgroundTextureWrapS: undefined,
56
+ backgroundTextureWrapT: undefined,
57
+ backgroundTextureMagFilter: undefined,
58
+ backgroundTextureMinFilter: undefined,
59
+ backgroundTextureAnisotropy: undefined,
60
+ backgroundTextureTransform: undefined,
61
+ backgroundTextureColorSpace: undefined,
62
+ backgroundTextureMapping: undefined,
63
+ backgroundTextureRotation: undefined,
64
+ backgroundTextureBlurriness: undefined,
65
+ format: 'rgba',
66
+ outputColorSpace: 'srgb-linear',
67
+ toneMapping: undefined,
68
+ toneMappingExposure: undefined,
69
+ sampleCount: 1,
70
+ meshes: scene.meshes?.map(depthReadbackMesh),
71
+ lights: [],
72
+ ambientLight: undefined,
73
+ ambientIntensity: undefined,
74
+ lightProbe: undefined,
75
+ environmentMap: undefined,
76
+ environmentMapWidth: undefined,
77
+ environmentMapHeight: undefined,
78
+ environmentMapIntensity: undefined,
79
+ environmentMapColorSpace: undefined,
80
+ environmentMapRotation: undefined,
81
+ fogType: undefined,
82
+ fogColor: undefined,
83
+ fogNear: undefined,
84
+ fogFar: undefined,
85
+ fogDensity: undefined,
86
+ postExposure: undefined,
87
+ postContrast: undefined,
88
+ postSaturation: undefined,
89
+ postVignette: undefined,
90
+ postGrayscale: undefined,
91
+ postInvert: undefined,
92
+ };
93
+ }
94
+ function depthReadbackMesh(mesh) {
95
+ const writesDepth = meshWritesDepth(mesh);
96
+ return {
97
+ ...mesh,
98
+ blending: 'none',
99
+ depthWrite: writesDepth,
100
+ colorWrite: writesDepth,
101
+ transparent: false,
102
+ shadingModel: 'basic',
103
+ toneMapped: false,
104
+ alphaToCoverage: false,
105
+ customFragmentShader: index_part_012_1.DEPTH_READBACK_FRAGMENT,
106
+ castShadow: false,
107
+ receiveShadow: false,
108
+ };
109
+ }
110
+ function meshWritesDepth(mesh) {
111
+ if (mesh.depthTest === false)
112
+ return false;
113
+ if (typeof mesh.depthWrite === 'boolean')
114
+ return mesh.depthWrite;
115
+ return true;
116
+ }
117
+ function formatWgslFloat(value) {
118
+ if (value <= 0)
119
+ return '0.0';
120
+ if (value >= 1)
121
+ return '1.0';
122
+ return value.toFixed(10);
123
+ }
124
+ function fogToNative(fog) {
125
+ if (!fog)
126
+ return {};
127
+ if (typeof fog !== 'object') {
128
+ throw new TypeError('scene.fog must be a THREE.Fog or THREE.FogExp2 object.');
129
+ }
130
+ const color = (0, color_1.validatedColorLikeToArray)(fog.color, 'scene.fog.color');
131
+ if (fog.isFogExp2) {
132
+ return {
133
+ fogType: 'exp2',
134
+ fogColor: color ?? undefined,
135
+ fogDensity: (0, index_part_015_1.optionalNonNegativeFiniteNumber)(fog.density, 'scene.fog.density'),
136
+ };
137
+ }
138
+ if (fog.isFog) {
139
+ const clipDistances = (0, index_part_015_1.fogClipDistances)(fog);
140
+ return {
141
+ fogType: 'linear',
142
+ fogColor: color ?? undefined,
143
+ fogNear: clipDistances.fogNear,
144
+ fogFar: clipDistances.fogFar,
145
+ };
146
+ }
147
+ throw new TypeError('scene.fog must be a THREE.Fog or THREE.FogExp2 object.');
148
+ }
149
+ function postProcessingToNative(post) {
150
+ if (!post || post.enabled === false)
151
+ return {};
152
+ return {
153
+ postExposure: (0, index_part_015_1.finiteOrUndefined)(post.exposure),
154
+ postContrast: (0, index_part_015_1.finiteOrUndefined)(post.contrast),
155
+ postSaturation: (0, index_part_015_1.finiteOrUndefined)(post.saturation),
156
+ postVignette: (0, index_part_015_1.finiteOrUndefined)(post.vignette),
157
+ postGrayscale: (0, index_part_015_1.booleanOrNumber)(post.grayscale),
158
+ postInvert: (0, index_part_015_1.booleanOrNumber)(post.invert),
159
+ };
160
+ }
161
+ function pixelRectToArray(rect) {
162
+ if (!rect)
163
+ return undefined;
164
+ return pixelRectComponents(rect);
165
+ }
166
+ function effectiveViewport(options) {
167
+ if (options.viewport !== undefined)
168
+ return options.viewport;
169
+ if (options.target?.viewport !== undefined)
170
+ return options.target.viewport;
171
+ return options.__headlessThreeRendererViewport;
172
+ }
173
+ function effectiveScissor(options) {
174
+ if (options.scissor !== undefined)
175
+ return options.scissor;
176
+ if (options.target?.scissorTest === true)
177
+ return options.target.scissor;
178
+ const internal = options;
179
+ return internal.__headlessThreeRendererScissorTest === true ? internal.__headlessThreeRendererScissor : undefined;
180
+ }
181
+ function effectiveViewportLabel(options) {
182
+ const internalLabel = options.__headlessThreeViewportLabel;
183
+ if (internalLabel)
184
+ return internalLabel;
185
+ if (options.viewport !== undefined)
186
+ return 'options.viewport';
187
+ if (options.target?.viewport !== undefined)
188
+ return 'target.viewport';
189
+ return options.__headlessThreeRendererViewport !== undefined
190
+ ? 'Renderer.viewport'
191
+ : 'target.viewport';
192
+ }
193
+ function effectiveScissorLabel(options) {
194
+ const internalLabel = options.__headlessThreeScissorLabel;
195
+ if (internalLabel)
196
+ return internalLabel;
197
+ if (options.scissor !== undefined)
198
+ return 'options.scissor';
199
+ if (options.target?.scissorTest === true)
200
+ return 'target.scissor';
201
+ return options.__headlessThreeRendererScissorTest === true
202
+ ? 'Renderer.scissor'
203
+ : 'target.scissor';
204
+ }
205
+ function pixelRectComponents(rect) {
206
+ if (typeof rect.length === 'number') {
207
+ const values = rect;
208
+ return [values[0], values[1], values[2], values[3]];
209
+ }
210
+ const values = rect;
211
+ return [values.x, values.y, values.width ?? values.z, values.height ?? values.w];
212
+ }
213
+ function rendererStatePixelRect(rectOrX, y, width, height, label) {
214
+ if (rectOrX == null)
215
+ return null;
216
+ if (typeof rectOrX === 'number') {
217
+ return rendererStatePixelRectFromComponents([rectOrX, y, width, height], label);
218
+ }
219
+ if (typeof rectOrX !== 'object') {
220
+ throw new TypeError(`${label} expects a rectangle object, array, or x/y/width/height numbers.`);
221
+ }
222
+ return rendererStatePixelRectFromComponents(pixelRectComponents(rectOrX), label);
223
+ }
224
+ function rendererStatePixelRectFromComponents(values, label) {
225
+ const [rawX, rawY, rawWidth, rawHeight] = values;
226
+ if (![rawX, rawY, rawWidth, rawHeight].every((value) => typeof value === 'number' && Number.isFinite(value))) {
227
+ throw new TypeError(`${label} must contain finite x, y, width, and height values.`);
228
+ }
229
+ const x = Math.round(rawX);
230
+ const y = Math.round(rawY);
231
+ const width = Math.round(rawWidth);
232
+ const height = Math.round(rawHeight);
233
+ if (x < 0 || y < 0) {
234
+ throw new TypeError(`${label} x and y must be greater than or equal to 0.`);
235
+ }
236
+ if (width <= 0 || height <= 0) {
237
+ throw new TypeError(`${label} width and height must be greater than 0.`);
238
+ }
239
+ return { x, y, width, height };
240
+ }
241
+ function assertDefaultViewportDepthRange(minDepth, maxDepth, label) {
242
+ const min = rendererViewportDepthValue(minDepth, `${label} minDepth`);
243
+ const max = rendererViewportDepthValue(maxDepth, `${label} maxDepth`);
244
+ if (min !== 0 || max !== 1) {
245
+ throw new Error(`${label} depth ranges other than 0..1 are not supported by @headless-three/renderer.`);
246
+ }
247
+ }
248
+ function rendererViewportDepthValue(value, label) {
249
+ if (typeof value !== 'number' || !Number.isFinite(value)) {
250
+ throw new TypeError(`${label} must be a finite number.`);
251
+ }
252
+ if (value < 0 || value > 1) {
253
+ throw new TypeError(`${label} must be between 0 and 1.`);
254
+ }
255
+ return value;
256
+ }
257
+ function rendererStateClearColor(color, alpha) {
258
+ const colorArray = typeof color === 'number'
259
+ ? rendererStateHexColor(color, 'Renderer.setClearColor color')
260
+ : typeof color === 'string'
261
+ ? (0, color_1.cssColorStringToArray)(color, 'Renderer.setClearColor color')
262
+ : (0, color_1.validatedColorLikeToArray)(color, 'Renderer.setClearColor color');
263
+ if (!colorArray) {
264
+ throw new TypeError('Renderer.setClearColor color must be a hex number, CSS color string, color-like object, or [r, g, b].');
265
+ }
266
+ return [
267
+ colorArray[0],
268
+ colorArray[1],
269
+ colorArray[2],
270
+ alpha === undefined ? colorArray[3] : rendererStateClearAlpha(alpha, 'Renderer.setClearColor alpha'),
271
+ ];
272
+ }
273
+ function rendererStateHexColor(value, label) {
274
+ if (!Number.isFinite(value) || !Number.isInteger(value)) {
275
+ throw new TypeError(`${label} must be a finite integer hex color.`);
276
+ }
277
+ if (value < 0 || value > 0xffffff) {
278
+ throw new TypeError(`${label} must be between 0x000000 and 0xffffff.`);
279
+ }
280
+ return [
281
+ ((value >> 16) & 0xff) / 255,
282
+ ((value >> 8) & 0xff) / 255,
283
+ (value & 0xff) / 255,
284
+ 1,
285
+ ];
286
+ }
287
+ function rendererStateClearAlpha(value, label) {
288
+ if (typeof value !== 'number' || !Number.isFinite(value)) {
289
+ throw new TypeError(`${label} must be a finite number.`);
290
+ }
291
+ return (0, math_1.clamp01)(value);
292
+ }
293
+ function rendererStateClearDepth(value, label) {
294
+ if (typeof value !== 'number' || !Number.isFinite(value)) {
295
+ throw new TypeError(`${label} must be a finite number.`);
296
+ }
297
+ return (0, math_1.clamp01)(value);
298
+ }
299
+ function rendererStateClearStencil(value, label) {
300
+ if (typeof value !== 'number' || !Number.isFinite(value) || !Number.isInteger(value)) {
301
+ throw new TypeError(`${label} must be a finite integer.`);
302
+ }
303
+ return value;
304
+ }
305
+ function cloneColor4(color) {
306
+ return [color[0], color[1], color[2], color[3]];
307
+ }
308
+ function cloneColor3(color, target) {
309
+ if (target) {
310
+ const mutable = target;
311
+ if (typeof mutable.setRGB === 'function') {
312
+ mutable.setRGB(color[0], color[1], color[2]);
313
+ }
314
+ else {
315
+ mutable.r = color[0];
316
+ mutable.g = color[1];
317
+ mutable.b = color[2];
318
+ }
319
+ return target;
320
+ }
321
+ return { isColor: true, r: color[0], g: color[1], b: color[2] };
322
+ }
323
+ function rendererStateSize(width, height, label) {
324
+ return {
325
+ width: rendererStateSizeDimension(width, `${label} width`),
326
+ height: rendererStateSizeDimension(height, `${label} height`),
327
+ };
328
+ }
329
+ function rendererStateSizeDimension(value, label) {
330
+ if (typeof value !== 'number' || !Number.isFinite(value)) {
331
+ throw new TypeError(`${label} must be a finite number.`);
332
+ }
333
+ if (!Number.isInteger(value) || value <= 0) {
334
+ throw new TypeError(`${label} must be a positive integer.`);
335
+ }
336
+ return value;
337
+ }
338
+ function rendererStatePixelRatio(value, label) {
339
+ return rendererStatePositiveFiniteNumber(value, `${label} value`);
340
+ }
341
+ function rendererStatePositiveFiniteNumber(value, label) {
342
+ if (typeof value !== 'number' || !Number.isFinite(value)) {
343
+ throw new TypeError(`${label} must be a finite number.`);
344
+ }
345
+ if (value <= 0) {
346
+ throw new TypeError(`${label} must be greater than 0.`);
347
+ }
348
+ return value;
349
+ }
350
+ function rendererStateFiniteNumber(value, label) {
351
+ if (typeof value !== 'number' || !Number.isFinite(value)) {
352
+ throw new TypeError(`${label} must be a finite number.`);
353
+ }
354
+ return value;
355
+ }
356
+ function rendererStateOptionalFiniteInteger(value, label) {
357
+ if (value !== undefined) {
358
+ rendererStateClearStencil(value, label);
359
+ }
360
+ }
361
+ function rendererStateBoolean(value, label) {
362
+ if (typeof value !== 'boolean') {
363
+ throw new TypeError(`${label} must be a boolean.`);
364
+ }
365
+ return value;
366
+ }
367
+ function rendererInfoDrawCount(value, label) {
368
+ if (typeof value !== 'number' || !Number.isFinite(value) || Math.floor(value) !== value || value < 0) {
369
+ throw new TypeError(`${label} must be a non-negative integer.`);
370
+ }
371
+ return value;
372
+ }
373
+ function rendererInfoInstanceCount(value, label) {
374
+ if (typeof value !== 'number' || !Number.isFinite(value) || Math.floor(value) !== value || value < 0) {
375
+ throw new TypeError(`${label} must be a non-negative integer.`);
376
+ }
377
+ return value;
378
+ }
379
+ function rendererInfoDrawMode(value, label) {
380
+ if (typeof value !== 'number' || !Number.isFinite(value) || Math.floor(value) !== value) {
381
+ throw new TypeError(`${label} must be an integer WebGL draw mode.`);
382
+ }
383
+ if (!index_part_001_1.SupportedRendererInfoDrawModes.has(value)) {
384
+ throw new Error(`${label} ${String(value)} is not supported. Use POINTS, LINES, LINE_STRIP, LINE_LOOP, or TRIANGLES WebGL draw mode constants.`);
385
+ }
386
+ return value;
387
+ }
388
+ function rendererInfoTimestampTime(value, label) {
389
+ if (typeof value !== 'number' || !Number.isFinite(value)) {
390
+ throw new TypeError(`${label} must be a finite number.`);
391
+ }
392
+ if (value < 0) {
393
+ throw new TypeError(`${label} must be non-negative.`);
394
+ }
395
+ return value;
396
+ }
397
+ function assertRendererStateCullFace(value, label) {
398
+ if (!index_part_001_1.SupportedRendererStateCullFaces.has(value)) {
399
+ throw new Error(`${label} ${String(value)} is not supported. Use THREE.CullFaceNone, CullFaceBack, CullFaceFront, or CullFaceFrontBack.`);
400
+ }
401
+ }
402
+ function assertRendererStateBlendingMode(value, label) {
403
+ if (!index_part_001_1.SupportedRendererStateBlendingModes.has(value)) {
404
+ throw new Error(`${label} ${String(value)} is not supported. Use a Three.js blending constant such as NormalBlending, AdditiveBlending, or CustomBlending.`);
405
+ }
406
+ }
407
+ function throwUnsupportedRendererStateWebGl(method, operation) {
408
+ throw new Error(`Renderer.state.${method}() is not supported by @headless-three/renderer because it does not expose ${operation}. Render normal Three.js scene graphs with Renderer.render() or renderToTarget().`);
409
+ }
410
+ function assertRendererParametersLike(value, label) {
411
+ if (value === undefined)
412
+ return;
413
+ if (value === null || typeof value !== 'object' || Array.isArray(value)) {
414
+ throw new TypeError(`${label} must be an object when provided.`);
415
+ }
416
+ const parameters = value;
417
+ for (const name of index_part_001_1.RendererBooleanParameters) {
418
+ if (parameters[name] !== undefined) {
419
+ rendererStateBoolean(parameters[name], `${label}.${name}`);
420
+ }
421
+ }
422
+ if (parameters.powerPreference !== undefined) {
423
+ rendererStatePowerPreference(parameters.powerPreference, `${label}.powerPreference`);
424
+ }
425
+ (0, index_part_015_1.assertRendererConstructorSamples)(parameters.samples, `${label}.samples`);
426
+ (0, index_part_015_1.assertRendererOutputBufferType)(parameters.outputBufferType, `${label}.outputBufferType`);
427
+ (0, index_part_015_1.assertRendererContextParameterAbsent)(parameters, 'canvas', label);
428
+ (0, index_part_015_1.assertRendererContextParameterAbsent)(parameters, 'context', label);
429
+ (0, index_part_015_1.assertRendererUnsupportedDepthParameterFalse)(parameters, 'logarithmicDepthBuffer', label);
430
+ (0, index_part_015_1.assertRendererUnsupportedDepthParameterFalse)(parameters, 'reversedDepthBuffer', label);
431
+ (0, index_part_015_1.assertRendererUnsupportedDepthParameterFalse)(parameters, 'reverseDepthBuffer', label);
432
+ }
433
+ function rendererStatePowerPreference(value, label) {
434
+ if (typeof value !== 'string') {
435
+ throw new TypeError(`${label} must be a WebGL powerPreference string.`);
436
+ }
437
+ if (!index_part_001_1.SupportedRendererPowerPreferences.has(value)) {
438
+ throw new TypeError(`${label} "${value}" is not supported. Use "default", "high-performance", or "low-power".`);
439
+ }
440
+ }
441
+ //# sourceMappingURL=index.part-014.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.part-014.js","sourceRoot":"","sources":["../api/index.part-014.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ import type { ThreeSceneRootLike, ThreeCameraLike, RenderOptions, RenderPixelRectLike, RenderSizeLike, NativeRenderScene, NativeCamera, ThreeEulerLike, RendererParametersLike, RendererContextAttributesLike } from './types';
2
+ import { PixelRect, PixelSize } from './index.part-012';
3
+ export declare function assertRendererOutputBufferType(value: unknown, label: string): void;
4
+ export declare function assertRendererConstructorSamples(value: unknown, label: string): void;
5
+ export declare function rendererContextAttributes(parameters?: RendererParametersLike): RendererContextAttributesLike;
6
+ export declare function assertRendererContextParameterAbsent(parameters: Record<string, unknown>, name: 'canvas' | 'context', label: string): void;
7
+ export declare function assertRendererUnsupportedDepthParameterFalse(parameters: Record<string, unknown>, name: 'logarithmicDepthBuffer' | 'reversedDepthBuffer' | 'reverseDepthBuffer', label: string): void;
8
+ export declare function rendererStateShadowMapType(value: unknown): number;
9
+ export declare function rendererStateToneMapping(value: unknown, label?: string): number;
10
+ export declare function assertOptionalBoolean(value: unknown, label: string): void;
11
+ export declare function assertEffectsArrayOrNull(value: unknown, label: string): asserts value is readonly unknown[] | null;
12
+ export declare function clonePixelSize(size: PixelSize | null | undefined): PixelSize | null;
13
+ export declare function clonePixelSize<T extends RenderSizeLike>(size: PixelSize | null | undefined, target: T): T | null;
14
+ export declare function clonePixelRect(rect: PixelRect | null | undefined): PixelRect | null;
15
+ export declare function clonePixelRect<T extends RenderPixelRectLike>(rect: PixelRect | null | undefined, target: T): T | null;
16
+ export declare function finiteOrUndefined(value: unknown): number | undefined;
17
+ export declare function optionalFiniteNumber(value: unknown, label: string): number | undefined;
18
+ export declare function optionalNonNegativeFiniteNumber(value: unknown, label: string): number | undefined;
19
+ export declare function finiteNonNegativeNumber(value: unknown, label: string): number;
20
+ export declare function optionalNormalizedFiniteNumber(value: unknown, label: string): number | undefined;
21
+ export declare function fogClipDistances(fog: NonNullable<ThreeSceneRootLike['fog']>): Pick<NativeRenderScene, 'fogNear' | 'fogFar'>;
22
+ export declare function cameraClipDistances(camera: ThreeCameraLike): Pick<NativeCamera, 'near' | 'far'>;
23
+ export declare function booleanOrNumber(value: unknown): number | undefined;
24
+ export type EulerOrder = 'XYZ' | 'YXZ' | 'ZXY' | 'ZYX' | 'YZX' | 'XZY';
25
+ export type EulerComponents = {
26
+ x: number;
27
+ y: number;
28
+ z: number;
29
+ order: EulerOrder;
30
+ };
31
+ export declare function backgroundRotationToNative(rotation: ThreeSceneRootLike['backgroundRotation'], backgroundTexture: {
32
+ mapping?: string;
33
+ } | null, label?: string): number[] | undefined;
34
+ export declare function environmentRotationToNative(rotation: ThreeSceneRootLike['environmentRotation'], envMap: {
35
+ data?: Buffer;
36
+ } | null, label?: string): number[] | undefined;
37
+ export declare function optionalEulerComponents(value: ThreeEulerLike | ArrayLike<number> | null | undefined, label: string): EulerComponents | null;
38
+ export declare function eulerComponents(value: ThreeEulerLike | ArrayLike<number>, label: string): EulerComponents;
39
+ export declare function finiteRotationComponent(value: unknown, label: string): number;
40
+ export declare function eulerOrder(value: unknown, label: string): EulerOrder;
41
+ export declare function eulerRotationMatrix3Columns(x: number, y: number, z: number, order: EulerOrder): number[];
42
+ export declare function hasNonZeroEulerRotation(rotation: EulerComponents): boolean;
43
+ export declare function validateUnsupportedRenderOptions(options: RenderOptions): void;
44
+ export declare function assertRenderOptionsLike(value: unknown, label: string): asserts value is RenderOptions;
45
+ //# sourceMappingURL=index.part-015.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.part-015.d.ts","sourceRoot":"","sources":["../api/index.part-015.ts"],"names":[],"mappings":"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"}