@oeave/bakery3 0.0.0-stage → 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 (86) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +562 -2
  3. package/dist/animation-B1h0Ryvj.d.ts +97 -0
  4. package/dist/bake/index.d.ts +369 -0
  5. package/dist/bake/index.js +9 -0
  6. package/dist/bake/index.js.map +1 -0
  7. package/dist/bake-DZ-CJR6f.d.ts +1364 -0
  8. package/dist/catalog/index.d.ts +100 -0
  9. package/dist/catalog/index.js +154 -0
  10. package/dist/catalog/index.js.map +1 -0
  11. package/dist/catalog.gen-BM-aNf7n.d.ts +733 -0
  12. package/dist/chunk-3G5QL4F4.js +145 -0
  13. package/dist/chunk-3G5QL4F4.js.map +1 -0
  14. package/dist/chunk-4E5VV4QY.js +12 -0
  15. package/dist/chunk-4E5VV4QY.js.map +1 -0
  16. package/dist/chunk-62M6XXNX.js +142 -0
  17. package/dist/chunk-62M6XXNX.js.map +1 -0
  18. package/dist/chunk-6FYI6AJM.js +1157 -0
  19. package/dist/chunk-6FYI6AJM.js.map +1 -0
  20. package/dist/chunk-6NYR73Y7.js +832 -0
  21. package/dist/chunk-6NYR73Y7.js.map +1 -0
  22. package/dist/chunk-APWUCEEB.js +118 -0
  23. package/dist/chunk-APWUCEEB.js.map +1 -0
  24. package/dist/chunk-HNMSWQU7.js +1709 -0
  25. package/dist/chunk-HNMSWQU7.js.map +1 -0
  26. package/dist/chunk-JFYUDERE.js +1412 -0
  27. package/dist/chunk-JFYUDERE.js.map +1 -0
  28. package/dist/chunk-KNUAOILG.js +551 -0
  29. package/dist/chunk-KNUAOILG.js.map +1 -0
  30. package/dist/chunk-KZLVTSBI.js +191 -0
  31. package/dist/chunk-KZLVTSBI.js.map +1 -0
  32. package/dist/chunk-LAKXC4WR.js +2028 -0
  33. package/dist/chunk-LAKXC4WR.js.map +1 -0
  34. package/dist/chunk-NXBAZGNB.js +1107 -0
  35. package/dist/chunk-NXBAZGNB.js.map +1 -0
  36. package/dist/chunk-QRCT5UGZ.js +3286 -0
  37. package/dist/chunk-QRCT5UGZ.js.map +1 -0
  38. package/dist/chunk-S4AJTLLN.js +23 -0
  39. package/dist/chunk-S4AJTLLN.js.map +1 -0
  40. package/dist/chunk-UWBP7B54.js +92 -0
  41. package/dist/chunk-UWBP7B54.js.map +1 -0
  42. package/dist/chunk-XK35ANPJ.js +346 -0
  43. package/dist/chunk-XK35ANPJ.js.map +1 -0
  44. package/dist/chunk-Z7IYVH22.js +4781 -0
  45. package/dist/chunk-Z7IYVH22.js.map +1 -0
  46. package/dist/chunk-ZEBVAIJJ.js +156 -0
  47. package/dist/chunk-ZEBVAIJJ.js.map +1 -0
  48. package/dist/devtools/index.d.ts +536 -0
  49. package/dist/devtools/index.js +15 -0
  50. package/dist/devtools/index.js.map +1 -0
  51. package/dist/environments/index.d.ts +93 -0
  52. package/dist/environments/index.js +382 -0
  53. package/dist/environments/index.js.map +1 -0
  54. package/dist/hotspots/index.d.ts +111 -0
  55. package/dist/hotspots/index.js +285 -0
  56. package/dist/hotspots/index.js.map +1 -0
  57. package/dist/index.d.ts +975 -0
  58. package/dist/index.js +15 -0
  59. package/dist/index.js.map +1 -0
  60. package/dist/node/index.cjs +5240 -0
  61. package/dist/node/index.cjs.map +1 -0
  62. package/dist/node/index.d.cts +4927 -0
  63. package/dist/node/index.d.ts +597 -0
  64. package/dist/node/index.js +1328 -0
  65. package/dist/node/index.js.map +1 -0
  66. package/dist/prepare-BtjY4G3q.d.ts +112 -0
  67. package/dist/presets/index.d.ts +562 -0
  68. package/dist/presets/index.js +14 -0
  69. package/dist/presets/index.js.map +1 -0
  70. package/dist/r3f/index.d.ts +159 -0
  71. package/dist/r3f/index.js +592 -0
  72. package/dist/r3f/index.js.map +1 -0
  73. package/dist/room-FS26KAPQ.js +9 -0
  74. package/dist/room-FS26KAPQ.js.map +1 -0
  75. package/dist/rooms.gen-DItzBR9k.d.ts +1462 -0
  76. package/dist/session-VCIQEO26.js +9 -0
  77. package/dist/session-VCIQEO26.js.map +1 -0
  78. package/dist/shapes/index.d.ts +222 -0
  79. package/dist/shapes/index.js +836 -0
  80. package/dist/shapes/index.js.map +1 -0
  81. package/dist/testRun-20OARnQr.d.ts +1139 -0
  82. package/dist/timeline-ChwgD7bT.d.ts +470 -0
  83. package/dist/tsl/index.d.ts +165 -0
  84. package/dist/tsl/index.js +310 -0
  85. package/dist/tsl/index.js.map +1 -0
  86. package/package.json +170 -4
@@ -0,0 +1,733 @@
1
+ type PresetMapName = 'albedo' | 'normal' | 'roughness' | 'ao' | 'height';
2
+ type PresetTextureSize = '1k' | '2k' | '4k';
3
+ type MaterialPresetInfo = {
4
+ label: string;
5
+ category: 'floor' | 'wall' | 'generic';
6
+ description: string;
7
+ /** Physical edge length, metres, of one texture tile. */
8
+ tileMeters: number;
9
+ metalness: number;
10
+ normalScale: number;
11
+ /** Metres of relief the height map's 0..1 spans. */
12
+ heightScale: number;
13
+ maps: readonly PresetMapName[];
14
+ /** Filename for each map inside a material size directory. */
15
+ files: Readonly<Record<PresetMapName, string>>;
16
+ sizes: readonly PresetTextureSize[];
17
+ };
18
+ declare const MATERIAL_PRESETS: {
19
+ readonly oak_floor: {
20
+ readonly label: "Oak Plank Floor";
21
+ readonly category: "floor";
22
+ readonly description: "Warm honey oak planks, satin lacquer, gentle per-plank variation.";
23
+ readonly tileMeters: 2.4;
24
+ readonly metalness: 0;
25
+ readonly normalScale: 1;
26
+ readonly heightScale: 0.004;
27
+ readonly maps: readonly ["albedo", "normal", "roughness", "ao", "height"];
28
+ readonly files: {
29
+ readonly albedo: "albedo.png";
30
+ readonly normal: "normal.png";
31
+ readonly roughness: "roughness.png";
32
+ readonly ao: "ao.png";
33
+ readonly height: "height.png";
34
+ };
35
+ readonly sizes: readonly ["4k", "2k", "1k"];
36
+ };
37
+ readonly walnut_floor: {
38
+ readonly label: "Walnut Plank Floor";
39
+ readonly category: "floor";
40
+ readonly description: "Dark oiled walnut boards with straight, fine grain.";
41
+ readonly tileMeters: 2.4;
42
+ readonly metalness: 0;
43
+ readonly normalScale: 1;
44
+ readonly heightScale: 0.004;
45
+ readonly maps: readonly ["albedo", "normal", "roughness", "ao", "height"];
46
+ readonly files: {
47
+ readonly albedo: "albedo.png";
48
+ readonly normal: "normal.png";
49
+ readonly roughness: "roughness.png";
50
+ readonly ao: "ao.png";
51
+ readonly height: "height.png";
52
+ };
53
+ readonly sizes: readonly ["4k", "2k", "1k"];
54
+ };
55
+ readonly white_plaster: {
56
+ readonly label: "White Plaster";
57
+ readonly category: "wall";
58
+ readonly description: "Hand-trowelled lime plaster, soft undulation with a fine tooth.";
59
+ readonly tileMeters: 1.5;
60
+ readonly metalness: 0;
61
+ readonly normalScale: 1;
62
+ readonly heightScale: 0.005;
63
+ readonly maps: readonly ["albedo", "normal", "roughness", "ao", "height"];
64
+ readonly files: {
65
+ readonly albedo: "albedo.png";
66
+ readonly normal: "normal.png";
67
+ readonly roughness: "roughness.png";
68
+ readonly ao: "ao.png";
69
+ readonly height: "height.png";
70
+ };
71
+ readonly sizes: readonly ["4k", "2k", "1k"];
72
+ };
73
+ readonly matte_paint: {
74
+ readonly label: "Matte Paint";
75
+ readonly category: "wall";
76
+ readonly description: "Near-white matte emulsion with a faint roller texture. Tint it with material.color.";
77
+ readonly tileMeters: 1.2;
78
+ readonly metalness: 0;
79
+ readonly normalScale: 0.6;
80
+ readonly heightScale: 0.0012;
81
+ readonly maps: readonly ["albedo", "normal", "roughness", "ao", "height"];
82
+ readonly files: {
83
+ readonly albedo: "albedo.png";
84
+ readonly normal: "normal.png";
85
+ readonly roughness: "roughness.png";
86
+ readonly ao: "ao.png";
87
+ readonly height: "height.png";
88
+ };
89
+ readonly sizes: readonly ["4k", "2k", "1k"];
90
+ };
91
+ readonly polished_concrete: {
92
+ readonly label: "Polished Concrete";
93
+ readonly category: "floor";
94
+ readonly description: "Grey power-trowelled concrete, soft mottling and sparse aggregate.";
95
+ readonly tileMeters: 3;
96
+ readonly metalness: 0;
97
+ readonly normalScale: 0.8;
98
+ readonly heightScale: 0.002;
99
+ readonly maps: readonly ["albedo", "normal", "roughness", "ao", "height"];
100
+ readonly files: {
101
+ readonly albedo: "albedo.png";
102
+ readonly normal: "normal.png";
103
+ readonly roughness: "roughness.png";
104
+ readonly ao: "ao.png";
105
+ readonly height: "height.png";
106
+ };
107
+ readonly sizes: readonly ["4k", "2k", "1k"];
108
+ };
109
+ readonly carrara_marble: {
110
+ readonly label: "Carrara Marble";
111
+ readonly category: "generic";
112
+ readonly description: "Polished white marble with soft grey feather veining.";
113
+ readonly tileMeters: 2;
114
+ readonly metalness: 0;
115
+ readonly normalScale: 0.5;
116
+ readonly heightScale: 0.0008;
117
+ readonly maps: readonly ["albedo", "normal", "roughness", "ao", "height"];
118
+ readonly files: {
119
+ readonly albedo: "albedo.png";
120
+ readonly normal: "normal.png";
121
+ readonly roughness: "roughness.png";
122
+ readonly ao: "ao.png";
123
+ readonly height: "height.png";
124
+ };
125
+ readonly sizes: readonly ["4k", "2k", "1k"];
126
+ };
127
+ readonly terrazzo: {
128
+ readonly label: "Terrazzo";
129
+ readonly category: "floor";
130
+ readonly description: "Cream cement ground with polished multi-tone stone chips.";
131
+ readonly tileMeters: 1.6;
132
+ readonly metalness: 0;
133
+ readonly normalScale: 0.6;
134
+ readonly heightScale: 0.0012;
135
+ readonly maps: readonly ["albedo", "normal", "roughness", "ao", "height"];
136
+ readonly files: {
137
+ readonly albedo: "albedo.png";
138
+ readonly normal: "normal.png";
139
+ readonly roughness: "roughness.png";
140
+ readonly ao: "ao.png";
141
+ readonly height: "height.png";
142
+ };
143
+ readonly sizes: readonly ["4k", "2k", "1k"];
144
+ };
145
+ readonly travertine: {
146
+ readonly label: "Travertine";
147
+ readonly category: "generic";
148
+ readonly description: "Honed beige travertine, layered banding and natural pitting.";
149
+ readonly tileMeters: 2;
150
+ readonly metalness: 0;
151
+ readonly normalScale: 1;
152
+ readonly heightScale: 0.004;
153
+ readonly maps: readonly ["albedo", "normal", "roughness", "ao", "height"];
154
+ readonly files: {
155
+ readonly albedo: "albedo.png";
156
+ readonly normal: "normal.png";
157
+ readonly roughness: "roughness.png";
158
+ readonly ao: "ao.png";
159
+ readonly height: "height.png";
160
+ };
161
+ readonly sizes: readonly ["4k", "2k", "1k"];
162
+ };
163
+ readonly white_brick: {
164
+ readonly label: "Painted Brick";
165
+ readonly category: "wall";
166
+ readonly description: "White-painted brick with recessed mortar joints.";
167
+ readonly tileMeters: 2;
168
+ readonly metalness: 0;
169
+ readonly normalScale: 1;
170
+ readonly heightScale: 0.008;
171
+ readonly maps: readonly ["albedo", "normal", "roughness", "ao", "height"];
172
+ readonly files: {
173
+ readonly albedo: "albedo.png";
174
+ readonly normal: "normal.png";
175
+ readonly roughness: "roughness.png";
176
+ readonly ao: "ao.png";
177
+ readonly height: "height.png";
178
+ };
179
+ readonly sizes: readonly ["4k", "2k", "1k"];
180
+ };
181
+ readonly coated_pine: {
182
+ readonly label: "Coated Pine";
183
+ readonly category: "generic";
184
+ readonly description: "Warm knotty pine with a glossy worn varnish.";
185
+ readonly tileMeters: 0.7;
186
+ readonly metalness: 0;
187
+ readonly normalScale: 1;
188
+ readonly heightScale: 0.005;
189
+ readonly maps: readonly ["albedo", "normal", "roughness", "ao", "height"];
190
+ readonly files: {
191
+ readonly albedo: "albedo.jpg";
192
+ readonly normal: "normal.png";
193
+ readonly roughness: "arm.jpg";
194
+ readonly ao: "arm.jpg";
195
+ readonly height: "height.png";
196
+ };
197
+ readonly sizes: readonly ["4k", "2k", "1k"];
198
+ };
199
+ readonly laminate_floor: {
200
+ readonly label: "Worn Laminate Floor";
201
+ readonly category: "floor";
202
+ readonly description: "Light oak laminate planks with scratches, stains and a soft gloss.";
203
+ readonly tileMeters: 2;
204
+ readonly metalness: 0;
205
+ readonly normalScale: 1;
206
+ readonly heightScale: 0.006;
207
+ readonly maps: readonly ["albedo", "normal", "roughness", "ao", "height"];
208
+ readonly files: {
209
+ readonly albedo: "albedo.jpg";
210
+ readonly normal: "normal.png";
211
+ readonly roughness: "arm.jpg";
212
+ readonly ao: "arm.jpg";
213
+ readonly height: "height.png";
214
+ };
215
+ readonly sizes: readonly ["4k", "2k", "1k"];
216
+ };
217
+ readonly oak_veneer_05: {
218
+ readonly label: "Oak Veneer";
219
+ readonly category: "generic";
220
+ readonly description: "Natural dark oak veneer with fine grain and a raw matte finish.";
221
+ readonly tileMeters: 1;
222
+ readonly metalness: 0;
223
+ readonly normalScale: 1;
224
+ readonly heightScale: 0.002;
225
+ readonly maps: readonly ["albedo", "normal", "roughness", "ao", "height"];
226
+ readonly files: {
227
+ readonly albedo: "albedo.jpg";
228
+ readonly normal: "normal.png";
229
+ readonly roughness: "arm.jpg";
230
+ readonly ao: "arm.jpg";
231
+ readonly height: "height.png";
232
+ };
233
+ readonly sizes: readonly ["4k", "2k", "1k"];
234
+ };
235
+ readonly plank_flooring_04: {
236
+ readonly label: "Dark Plank Flooring";
237
+ readonly category: "floor";
238
+ readonly description: "Dark varnished timber planks with narrow seams and satin sheen.";
239
+ readonly tileMeters: 2;
240
+ readonly metalness: 0;
241
+ readonly normalScale: 1;
242
+ readonly heightScale: 0.006;
243
+ readonly maps: readonly ["albedo", "normal", "roughness", "ao", "height"];
244
+ readonly files: {
245
+ readonly albedo: "albedo.jpg";
246
+ readonly normal: "normal.png";
247
+ readonly roughness: "arm.jpg";
248
+ readonly ao: "arm.jpg";
249
+ readonly height: "height.png";
250
+ };
251
+ readonly sizes: readonly ["4k", "2k", "1k"];
252
+ };
253
+ readonly synthetic_wood: {
254
+ readonly label: "Synthetic Wood Cladding";
255
+ readonly category: "wall";
256
+ readonly description: "Narrow brown wood-look boards with crisp grooves and a matte finish.";
257
+ readonly tileMeters: 2;
258
+ readonly metalness: 0;
259
+ readonly normalScale: 1;
260
+ readonly heightScale: 0.006;
261
+ readonly maps: readonly ["albedo", "normal", "roughness", "ao", "height"];
262
+ readonly files: {
263
+ readonly albedo: "albedo.jpg";
264
+ readonly normal: "normal.png";
265
+ readonly roughness: "arm.jpg";
266
+ readonly ao: "arm.jpg";
267
+ readonly height: "height.png";
268
+ };
269
+ readonly sizes: readonly ["4k", "2k", "1k"];
270
+ };
271
+ readonly wooden_floor_02: {
272
+ readonly label: "Warm Hardwood Floor";
273
+ readonly category: "floor";
274
+ readonly description: "Warm hardwood planks with visible grain, knots and satin sheen.";
275
+ readonly tileMeters: 1.9;
276
+ readonly metalness: 0;
277
+ readonly normalScale: 1;
278
+ readonly heightScale: 0.006;
279
+ readonly maps: readonly ["albedo", "normal", "roughness", "ao", "height"];
280
+ readonly files: {
281
+ readonly albedo: "albedo.jpg";
282
+ readonly normal: "normal.png";
283
+ readonly roughness: "arm.jpg";
284
+ readonly ao: "arm.jpg";
285
+ readonly height: "height.png";
286
+ };
287
+ readonly sizes: readonly ["4k", "2k", "1k"];
288
+ };
289
+ };
290
+ type MaterialPresetName = keyof typeof MATERIAL_PRESETS;
291
+ type PedestalPresetInfo = {
292
+ label: string;
293
+ description: string;
294
+ /** three.js axes, metres: x width, y height (up), z depth. */
295
+ size: {
296
+ readonly x: number;
297
+ readonly y: number;
298
+ readonly z: number;
299
+ };
300
+ defaultMaterial: MaterialPresetName;
301
+ };
302
+ declare const PEDESTAL_PRESETS: {
303
+ readonly pedestal_block: {
304
+ readonly label: "Block Pedestal";
305
+ readonly description: "Clean rectangular plinth with softly bevelled edges.";
306
+ readonly size: {
307
+ readonly x: 0.4;
308
+ readonly y: 1;
309
+ readonly z: 0.4;
310
+ };
311
+ readonly defaultMaterial: "carrara_marble";
312
+ };
313
+ readonly pedestal_plinth: {
314
+ readonly label: "Low Plinth";
315
+ readonly description: "Wide, low platform for larger pieces.";
316
+ readonly size: {
317
+ readonly x: 0.9;
318
+ readonly y: 0.3;
319
+ readonly z: 0.9;
320
+ };
321
+ readonly defaultMaterial: "polished_concrete";
322
+ };
323
+ readonly pedestal_cylinder: {
324
+ readonly label: "Cylinder Pedestal";
325
+ readonly description: "Round column pedestal with bevelled rims.";
326
+ readonly size: {
327
+ readonly x: 0.42;
328
+ readonly y: 0.95;
329
+ readonly z: 0.42;
330
+ };
331
+ readonly defaultMaterial: "travertine";
332
+ };
333
+ readonly pedestal_column: {
334
+ readonly label: "Classical Column";
335
+ readonly description: "Turned classical pedestal: stepped base, gently tapered shaft, moulded cap.";
336
+ readonly size: {
337
+ readonly x: 0.45;
338
+ readonly y: 1.05;
339
+ readonly z: 0.45;
340
+ };
341
+ readonly defaultMaterial: "carrara_marble";
342
+ };
343
+ };
344
+ type PedestalPresetName = keyof typeof PEDESTAL_PRESETS;
345
+ /** The shelf a map sits on: a room in that lighting mode offers it; `studio` is for product probes. */
346
+ type HdriPresetCategory = 'day' | 'golden' | 'overcast' | 'night' | 'studio';
347
+ type HdriPresetInfo = {
348
+ label: string;
349
+ description: string;
350
+ category: HdriPresetCategory;
351
+ /** Metres the camera stood above the ground: the height a ground-projected dome is lifted by. */
352
+ groundHeight: number;
353
+ /**
354
+ * W/m² its sky delivers to a plane facing up, as measured (the map clamped
355
+ * so its own sun does not count). A room shows the map at its own
356
+ * `skyIrradiance` divided by this, so a map shot darker than the room is
357
+ * lit is not a dim poster outside the windows.
358
+ */
359
+ skyIrradiance: number;
360
+ preview: {
361
+ readonly file: string;
362
+ readonly resolution: number;
363
+ };
364
+ render: {
365
+ readonly file: string;
366
+ readonly resolution: number;
367
+ };
368
+ };
369
+ declare const HDRI_PRESETS: {
370
+ readonly pergola_walkway: {
371
+ readonly label: "Pergola Walkway";
372
+ readonly description: "A garden walkway under a vine-covered pergola, high sun, greenery on every side.";
373
+ readonly category: "day";
374
+ readonly groundHeight: 1.6;
375
+ readonly skyIrradiance: 1.7631801999999999;
376
+ readonly preview: {
377
+ readonly file: "pergola_walkway_1k.hdr";
378
+ readonly resolution: 1024;
379
+ };
380
+ readonly render: {
381
+ readonly file: "pergola_walkway_4k.exr";
382
+ readonly resolution: 4096;
383
+ };
384
+ };
385
+ readonly sunny_country_road: {
386
+ readonly label: "Sunny Country Road";
387
+ readonly description: "A dirt road between fields under a high midday sun.";
388
+ readonly category: "day";
389
+ readonly groundHeight: 1.6;
390
+ readonly skyIrradiance: 1.0989418;
391
+ readonly preview: {
392
+ readonly file: "sunny_country_road_1k.hdr";
393
+ readonly resolution: 1024;
394
+ };
395
+ readonly render: {
396
+ readonly file: "sunny_country_road_4k.exr";
397
+ readonly resolution: 4096;
398
+ };
399
+ };
400
+ readonly "horn-koppe_spring": {
401
+ readonly label: "Horn-Koppe Spring";
402
+ readonly description: "Alpine meadow in spring, snow on the peaks, a high clear sun.";
403
+ readonly category: "day";
404
+ readonly groundHeight: 1.6;
405
+ readonly skyIrradiance: 1.4612264;
406
+ readonly preview: {
407
+ readonly file: "horn-koppe_spring_1k.hdr";
408
+ readonly resolution: 1024;
409
+ };
410
+ readonly render: {
411
+ readonly file: "horn-koppe_spring_4k.exr";
412
+ readonly resolution: 4096;
413
+ };
414
+ };
415
+ readonly grasslands_sunset: {
416
+ readonly label: "Grasslands Late Sun";
417
+ readonly description: "Open grassland with the sun low but still white, a long afternoon.";
418
+ readonly category: "day";
419
+ readonly groundHeight: 1.6;
420
+ readonly skyIrradiance: 3.9029496;
421
+ readonly preview: {
422
+ readonly file: "grasslands_sunset_1k.hdr";
423
+ readonly resolution: 1024;
424
+ };
425
+ readonly render: {
426
+ readonly file: "grasslands_sunset_4k.exr";
427
+ readonly resolution: 4096;
428
+ };
429
+ };
430
+ readonly je_gray_02: {
431
+ readonly label: "Grey Park";
432
+ readonly description: "A shaded park path, the sun low behind trees, a soft, cool day.";
433
+ readonly category: "day";
434
+ readonly groundHeight: 1.6;
435
+ readonly skyIrradiance: 0.21612759999999998;
436
+ readonly preview: {
437
+ readonly file: "je_gray_02_1k.hdr";
438
+ readonly resolution: 1024;
439
+ };
440
+ readonly render: {
441
+ readonly file: "je_gray_02_4k.exr";
442
+ readonly resolution: 4096;
443
+ };
444
+ };
445
+ readonly qwantani_sunset: {
446
+ readonly label: "Qwantani Sunset";
447
+ readonly description: "Sunset over the veld: a warm horizon and a clear deep sky above.";
448
+ readonly category: "golden";
449
+ readonly groundHeight: 1.6;
450
+ readonly skyIrradiance: 2.3187784;
451
+ readonly preview: {
452
+ readonly file: "qwantani_sunset_1k.hdr";
453
+ readonly resolution: 1024;
454
+ };
455
+ readonly render: {
456
+ readonly file: "qwantani_sunset_4k.exr";
457
+ readonly resolution: 4096;
458
+ };
459
+ };
460
+ readonly venice_sunset: {
461
+ readonly label: "Venice Sunset";
462
+ readonly description: "The lagoon at sunset, water and sky both gold.";
463
+ readonly category: "golden";
464
+ readonly groundHeight: 1.6;
465
+ readonly skyIrradiance: 2.1780174;
466
+ readonly preview: {
467
+ readonly file: "venice_sunset_1k.hdr";
468
+ readonly resolution: 1024;
469
+ };
470
+ readonly render: {
471
+ readonly file: "venice_sunset_4k.exr";
472
+ readonly resolution: 4096;
473
+ };
474
+ };
475
+ readonly bambanani_sunset: {
476
+ readonly label: "Bambanani Sunset";
477
+ readonly description: "A township street at sunset, the sun red and low.";
478
+ readonly category: "golden";
479
+ readonly groundHeight: 1.6;
480
+ readonly skyIrradiance: 3.300283399999999;
481
+ readonly preview: {
482
+ readonly file: "bambanani_sunset_1k.hdr";
483
+ readonly resolution: 1024;
484
+ };
485
+ readonly render: {
486
+ readonly file: "bambanani_sunset_4k.exr";
487
+ readonly resolution: 4096;
488
+ };
489
+ };
490
+ readonly umhlanga_sunrise: {
491
+ readonly label: "Umhlanga Sunrise";
492
+ readonly description: "Sunrise over the sea, the sun just clear of the horizon.";
493
+ readonly category: "golden";
494
+ readonly groundHeight: 1.6;
495
+ readonly skyIrradiance: 3.3150258000000004;
496
+ readonly preview: {
497
+ readonly file: "umhlanga_sunrise_1k.hdr";
498
+ readonly resolution: 1024;
499
+ };
500
+ readonly render: {
501
+ readonly file: "umhlanga_sunrise_4k.exr";
502
+ readonly resolution: 4096;
503
+ };
504
+ };
505
+ readonly flamingo_pan: {
506
+ readonly label: "Flamingo Pan";
507
+ readonly description: "A salt pan at sunset, the sun on the horizon and a violet sky.";
508
+ readonly category: "golden";
509
+ readonly groundHeight: 1.6;
510
+ readonly skyIrradiance: 3.1940932;
511
+ readonly preview: {
512
+ readonly file: "flamingo_pan_1k.hdr";
513
+ readonly resolution: 1024;
514
+ };
515
+ readonly render: {
516
+ readonly file: "flamingo_pan_4k.exr";
517
+ readonly resolution: 4096;
518
+ };
519
+ };
520
+ readonly minedump_flats: {
521
+ readonly label: "Minedump Flats";
522
+ readonly description: "Flat scrub at sunset under a hazy, dusty sky.";
523
+ readonly category: "golden";
524
+ readonly groundHeight: 1.6;
525
+ readonly skyIrradiance: 2.9883286;
526
+ readonly preview: {
527
+ readonly file: "minedump_flats_1k.hdr";
528
+ readonly resolution: 1024;
529
+ };
530
+ readonly render: {
531
+ readonly file: "minedump_flats_4k.exr";
532
+ readonly resolution: 4096;
533
+ };
534
+ };
535
+ readonly sunset_fairway: {
536
+ readonly label: "Sunset Fairway";
537
+ readonly description: "A golf fairway at dusk, the sun already down and the sky lit from below.";
538
+ readonly category: "golden";
539
+ readonly groundHeight: 1.6;
540
+ readonly skyIrradiance: 2.7264117999999997;
541
+ readonly preview: {
542
+ readonly file: "sunset_fairway_1k.hdr";
543
+ readonly resolution: 1024;
544
+ };
545
+ readonly render: {
546
+ readonly file: "sunset_fairway_4k.exr";
547
+ readonly resolution: 4096;
548
+ };
549
+ };
550
+ readonly the_sky_is_on_fire: {
551
+ readonly label: "Sky on Fire";
552
+ readonly description: "A blazing red-orange sunset over open country.";
553
+ readonly category: "golden";
554
+ readonly groundHeight: 1.6;
555
+ readonly skyIrradiance: 2.4784194;
556
+ readonly preview: {
557
+ readonly file: "the_sky_is_on_fire_1k.hdr";
558
+ readonly resolution: 1024;
559
+ };
560
+ readonly render: {
561
+ readonly file: "the_sky_is_on_fire_4k.exr";
562
+ readonly resolution: 4096;
563
+ };
564
+ };
565
+ readonly dalkey_view: {
566
+ readonly label: "Dalkey View";
567
+ readonly description: "A coastal hillside under a bright overcast sky.";
568
+ readonly category: "overcast";
569
+ readonly groundHeight: 1.6;
570
+ readonly skyIrradiance: 4.501861400000001;
571
+ readonly preview: {
572
+ readonly file: "dalkey_view_1k.hdr";
573
+ readonly resolution: 1024;
574
+ };
575
+ readonly render: {
576
+ readonly file: "dalkey_view_4k.exr";
577
+ readonly resolution: 4096;
578
+ };
579
+ };
580
+ readonly afrikaans_church_exterior: {
581
+ readonly label: "Church Square";
582
+ readonly description: "A quiet square under heavy cloud, a white church across it.";
583
+ readonly category: "overcast";
584
+ readonly groundHeight: 1.6;
585
+ readonly skyIrradiance: 4.194848599999999;
586
+ readonly preview: {
587
+ readonly file: "afrikaans_church_exterior_1k.hdr";
588
+ readonly resolution: 1024;
589
+ };
590
+ readonly render: {
591
+ readonly file: "afrikaans_church_exterior_4k.exr";
592
+ readonly resolution: 4096;
593
+ };
594
+ };
595
+ readonly quarry_cloudy: {
596
+ readonly label: "Cloudy Quarry";
597
+ readonly description: "A stone quarry under an even grey sky.";
598
+ readonly category: "overcast";
599
+ readonly groundHeight: 1.6;
600
+ readonly skyIrradiance: 3.9304787999999995;
601
+ readonly preview: {
602
+ readonly file: "quarry_cloudy_1k.hdr";
603
+ readonly resolution: 1024;
604
+ };
605
+ readonly render: {
606
+ readonly file: "quarry_cloudy_4k.exr";
607
+ readonly resolution: 4096;
608
+ };
609
+ };
610
+ readonly moonless_golf: {
611
+ readonly label: "Moonless Golf Course";
612
+ readonly description: "A moonless night over a golf course, a faint glow from the town.";
613
+ readonly category: "night";
614
+ readonly groundHeight: 1.6;
615
+ readonly skyIrradiance: 0.5007998;
616
+ readonly preview: {
617
+ readonly file: "moonless_golf_1k.hdr";
618
+ readonly resolution: 1024;
619
+ };
620
+ readonly render: {
621
+ readonly file: "moonless_golf_4k.exr";
622
+ readonly resolution: 4096;
623
+ };
624
+ };
625
+ readonly preller_drive: {
626
+ readonly label: "Preller Drive";
627
+ readonly description: "A suburban street at night, sodium street lamps and dark trees.";
628
+ readonly category: "night";
629
+ readonly groundHeight: 1.6;
630
+ readonly skyIrradiance: 0.5283702;
631
+ readonly preview: {
632
+ readonly file: "preller_drive_1k.hdr";
633
+ readonly resolution: 1024;
634
+ };
635
+ readonly render: {
636
+ readonly file: "preller_drive_4k.exr";
637
+ readonly resolution: 4096;
638
+ };
639
+ };
640
+ readonly satara_night: {
641
+ readonly label: "Satara Night";
642
+ readonly description: "A bush camp at night, a few lamps and a starry sky.";
643
+ readonly category: "night";
644
+ readonly groundHeight: 1.6;
645
+ readonly skyIrradiance: 0.25447;
646
+ readonly preview: {
647
+ readonly file: "satara_night_1k.hdr";
648
+ readonly resolution: 1024;
649
+ };
650
+ readonly render: {
651
+ readonly file: "satara_night_4k.exr";
652
+ readonly resolution: 4096;
653
+ };
654
+ };
655
+ readonly ferndale_studio_11: {
656
+ readonly label: "Ferndale Studio 11";
657
+ readonly description: "High-contrast studio environment with broad soft sources.";
658
+ readonly category: "studio";
659
+ readonly groundHeight: 1.2;
660
+ readonly skyIrradiance: 1.2286402;
661
+ readonly preview: {
662
+ readonly file: "ferndale_studio_11_1k.hdr";
663
+ readonly resolution: 1024;
664
+ };
665
+ readonly render: {
666
+ readonly file: "ferndale_studio_11_4k.exr";
667
+ readonly resolution: 4096;
668
+ };
669
+ };
670
+ readonly ferndale_studio_12: {
671
+ readonly label: "Ferndale Studio 12";
672
+ readonly description: "Balanced product studio with shaped highlights.";
673
+ readonly category: "studio";
674
+ readonly groundHeight: 1.2;
675
+ readonly skyIrradiance: 1.2324262000000001;
676
+ readonly preview: {
677
+ readonly file: "ferndale_studio_12_1k.hdr";
678
+ readonly resolution: 1024;
679
+ };
680
+ readonly render: {
681
+ readonly file: "ferndale_studio_12_4k.exr";
682
+ readonly resolution: 4096;
683
+ };
684
+ };
685
+ readonly monochrome_studio_02: {
686
+ readonly label: "Monochrome Studio 02";
687
+ readonly description: "Neutral monochrome studio for material-focused renders.";
688
+ readonly category: "studio";
689
+ readonly groundHeight: 1.2;
690
+ readonly skyIrradiance: 0.9193722;
691
+ readonly preview: {
692
+ readonly file: "monochrome_studio_02_1k.hdr";
693
+ readonly resolution: 1024;
694
+ };
695
+ readonly render: {
696
+ readonly file: "monochrome_studio_02_4k.exr";
697
+ readonly resolution: 4096;
698
+ };
699
+ };
700
+ readonly studio_kontrast_04: {
701
+ readonly label: "Studio Kontrast 04";
702
+ readonly description: "Directional studio contrast with crisp reflections.";
703
+ readonly category: "studio";
704
+ readonly groundHeight: 1.2;
705
+ readonly skyIrradiance: 2.9173432;
706
+ readonly preview: {
707
+ readonly file: "studio_kontrast_04_1k.hdr";
708
+ readonly resolution: 1024;
709
+ };
710
+ readonly render: {
711
+ readonly file: "studio_kontrast_04_4k.exr";
712
+ readonly resolution: 4096;
713
+ };
714
+ };
715
+ readonly studio_small_03: {
716
+ readonly label: "Small Studio 03";
717
+ readonly description: "Compact studio environment with close softboxes.";
718
+ readonly category: "studio";
719
+ readonly groundHeight: 1.2;
720
+ readonly skyIrradiance: 13.877922599999998;
721
+ readonly preview: {
722
+ readonly file: "studio_small_03_1k.hdr";
723
+ readonly resolution: 1024;
724
+ };
725
+ readonly render: {
726
+ readonly file: "studio_small_03_4k.exr";
727
+ readonly resolution: 4096;
728
+ };
729
+ };
730
+ };
731
+ type HdriPresetName = keyof typeof HDRI_PRESETS;
732
+
733
+ export { type HdriPresetName as H, type MaterialPresetName as M, type PedestalPresetName as P, type PresetTextureSize as a, HDRI_PRESETS as b, type HdriPresetInfo as c, MATERIAL_PRESETS as d, type MaterialPresetInfo as e, PEDESTAL_PRESETS as f, type PedestalPresetInfo as g, type PresetMapName as h };