@holoscript/core 8.0.0 → 8.0.1

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 (126) hide show
  1. package/README.md +2 -2
  2. package/dist/{GLTFPipeline-M7WSSJED.cjs → GLTFPipeline-N6B6PJ6G.cjs} +10 -9
  3. package/dist/{GLTFPipeline-276GE64O.js → GLTFPipeline-P3WMNYCN.js} +6 -5
  4. package/dist/{HoloScriptRuntime-3URVTKPJ.js → HoloScriptRuntime-CBYJX3LZ.js} +3 -3
  5. package/dist/{HoloScriptRuntime-SXEAEU2N.cjs → HoloScriptRuntime-VJ374RER.cjs} +4 -4
  6. package/dist/{chunk-JJBE3TIH.cjs → chunk-2IWC4FP7.cjs} +6 -6
  7. package/dist/{chunk-S4W6Z2MN.js → chunk-2X7NGX3M.js} +3 -3
  8. package/dist/chunk-4GU5GCIY.js +1384 -0
  9. package/dist/{chunk-T2QCTZMO.js → chunk-4SDKXQ4C.js} +3 -3
  10. package/dist/{chunk-253GBQZY.cjs → chunk-5H2G27PK.cjs} +35 -35
  11. package/dist/{chunk-C2A5DUMF.cjs → chunk-5NWINHR5.cjs} +35 -35
  12. package/dist/chunk-6Q7RC2MK.cjs +1418 -0
  13. package/dist/{chunk-D54CNIAJ.cjs → chunk-7H33U5SM.cjs} +2 -2
  14. package/dist/{chunk-CXFDRBQU.cjs → chunk-7M3PNU2M.cjs} +7 -7
  15. package/dist/{chunk-B4TFTDG4.js → chunk-7T25IEZ2.js} +3 -3
  16. package/dist/{chunk-7CUEMLDZ.cjs → chunk-7V4JI5TB.cjs} +540 -38
  17. package/dist/{chunk-WJIHFLMJ.js → chunk-ADADVMXY.js} +2 -2
  18. package/dist/{chunk-GQT4TYKY.cjs → chunk-ALC6K7GL.cjs} +40 -19
  19. package/dist/{chunk-3HYYMEXI.cjs → chunk-AOVGZ25K.cjs} +17 -12
  20. package/dist/{chunk-NHWSN2SD.cjs → chunk-AVJHHUC5.cjs} +17 -17
  21. package/dist/{chunk-UM6C3CGK.js → chunk-BGY3SDG3.js} +24 -3
  22. package/dist/{chunk-JCLBKPMX.js → chunk-BOVPWH4H.js} +48 -4
  23. package/dist/{chunk-ZZEI7MV4.js → chunk-CCATWPXM.js} +3 -3
  24. package/dist/{chunk-NBMHU6SW.js → chunk-CMT5NMMS.js} +3 -3
  25. package/dist/{chunk-HINXWAOD.cjs → chunk-CR4FMIWL.cjs} +11 -11
  26. package/dist/{chunk-W7VDOASB.cjs → chunk-CR7XRXRN.cjs} +5 -5
  27. package/dist/{chunk-AYBXB26F.js → chunk-CSD27UNQ.js} +5 -5
  28. package/dist/{chunk-IZM5VQZD.js → chunk-D3STJ56J.js} +3 -3
  29. package/dist/{chunk-ZBQXLH2L.js → chunk-DHO2YRIM.js} +3 -3
  30. package/dist/{chunk-JX7YL6ZE.js → chunk-E6XXE66V.js} +4 -4
  31. package/dist/{chunk-62FBK3B7.js → chunk-FFAOS5HQ.js} +4 -4
  32. package/dist/{chunk-NV4VMVXU.js → chunk-FL33V6U7.js} +3 -3
  33. package/dist/{chunk-XUUVDHIF.cjs → chunk-HKEXJUWS.cjs} +48 -3
  34. package/dist/{chunk-NXZFOPVD.cjs → chunk-HNDK4IQU.cjs} +16 -16
  35. package/dist/{chunk-RVBHAXFG.js → chunk-HR2OSYVQ.js} +16 -11
  36. package/dist/{chunk-LICPB5HZ.cjs → chunk-IUDGEUDO.cjs} +10 -10
  37. package/dist/{chunk-73FELZVJ.cjs → chunk-IWC5DM2M.cjs} +11 -11
  38. package/dist/{chunk-NGKREZ36.js → chunk-J52VSAQ7.js} +505 -5
  39. package/dist/{chunk-PHVRG4I2.js → chunk-J7XZV333.js} +3 -3
  40. package/dist/{chunk-K4VVR7CN.cjs → chunk-JBNDTXXV.cjs} +15 -15
  41. package/dist/{chunk-3NFFOWGG.js → chunk-JIBL5LRK.js} +2 -2
  42. package/dist/{chunk-HZSPDCXV.cjs → chunk-K574J76X.cjs} +3 -3
  43. package/dist/{chunk-SJBGLS25.cjs → chunk-KHDZJE5D.cjs} +5 -5
  44. package/dist/{chunk-KH4CNH66.cjs → chunk-L5LKKENW.cjs} +4 -4
  45. package/dist/{chunk-IVSZDECV.js → chunk-LHAXPADA.js} +3 -3
  46. package/dist/{chunk-EUDQTK7N.cjs → chunk-MQWAT42R.cjs} +2 -2
  47. package/dist/{chunk-KVRSTFNH.cjs → chunk-NCWCUZNS.cjs} +8 -8
  48. package/dist/{chunk-MGE5Z4GS.js → chunk-OH2FAIVU.js} +3 -3
  49. package/dist/{chunk-UMABK6SI.js → chunk-PY37LNDP.js} +3 -3
  50. package/dist/{chunk-23J755AR.js → chunk-QD32ADK6.js} +3 -3
  51. package/dist/{chunk-HZTDET3N.js → chunk-R24NNAEG.js} +3 -3
  52. package/dist/{chunk-6DPSFNJB.cjs → chunk-ROHLEP2W.cjs} +16 -16
  53. package/dist/{chunk-25IQCHTO.cjs → chunk-TWUXUCEW.cjs} +35 -35
  54. package/dist/{chunk-3AO425MZ.cjs → chunk-UFZZ7TSN.cjs} +17 -17
  55. package/dist/{chunk-BE4UJCQT.js → chunk-UWJHCOH2.js} +3 -3
  56. package/dist/{chunk-KEFNV2WM.cjs → chunk-X3UVCWNL.cjs} +13 -13
  57. package/dist/{chunk-7HIASF7S.cjs → chunk-XB274MW5.cjs} +10 -10
  58. package/dist/{chunk-KJLB4OPV.js → chunk-YN2YWTXW.js} +3 -3
  59. package/dist/{chunk-IPWSXCCN.js → chunk-YVD3CSO3.js} +3 -3
  60. package/dist/{chunk-F43YAA34.js → chunk-YVOAF4ML.js} +3 -3
  61. package/dist/{chunk-OR4Q2BGL.cjs → chunk-YWOBW2PV.cjs} +15 -15
  62. package/dist/compiler/android-xr.cjs +5 -5
  63. package/dist/compiler/android-xr.js +3 -3
  64. package/dist/compiler/babylon.cjs +4 -4
  65. package/dist/compiler/babylon.js +3 -3
  66. package/dist/compiler/business-quest.cjs +9 -9
  67. package/dist/compiler/business-quest.js +1 -1
  68. package/dist/compiler/domain-block-utils.cjs +154 -150
  69. package/dist/compiler/domain-block-utils.js +2 -2
  70. package/dist/compiler/gltf-pipeline.cjs +8 -8
  71. package/dist/compiler/gltf-pipeline.js +1 -1
  72. package/dist/compiler/godot.cjs +4 -4
  73. package/dist/compiler/godot.js +3 -3
  74. package/dist/compiler/index.cjs +129 -581
  75. package/dist/compiler/index.d.ts +12 -0
  76. package/dist/compiler/index.js +42 -498
  77. package/dist/compiler/multi-layer.cjs +5 -5
  78. package/dist/compiler/multi-layer.js +4 -4
  79. package/dist/compiler/nodetoy.d.ts +69 -0
  80. package/dist/compiler/openxr.cjs +4 -4
  81. package/dist/compiler/openxr.js +3 -3
  82. package/dist/compiler/playcanvas.cjs +4 -4
  83. package/dist/compiler/playcanvas.js +3 -3
  84. package/dist/compiler/r3f.cjs +9 -8
  85. package/dist/compiler/r3f.js +4 -3
  86. package/dist/compiler/sdf.cjs +5 -5
  87. package/dist/compiler/sdf.js +3 -3
  88. package/dist/compiler/unity.cjs +4 -4
  89. package/dist/compiler/unity.js +3 -3
  90. package/dist/compiler/unreal.cjs +5 -5
  91. package/dist/compiler/unreal.js +3 -3
  92. package/dist/compiler/urdf.cjs +12 -12
  93. package/dist/compiler/urdf.js +3 -3
  94. package/dist/compiler/usd-physics.cjs +5 -5
  95. package/dist/compiler/usd-physics.js +2 -2
  96. package/dist/compiler/visionos.cjs +4 -4
  97. package/dist/compiler/visionos.js +3 -3
  98. package/dist/compiler/vrchat.cjs +5 -5
  99. package/dist/compiler/vrchat.js +3 -3
  100. package/dist/compiler/vrr.cjs +5 -5
  101. package/dist/compiler/vrr.js +3 -3
  102. package/dist/compiler/wasm.cjs +8 -8
  103. package/dist/compiler/wasm.js +3 -3
  104. package/dist/compiler/webgpu.cjs +4 -4
  105. package/dist/compiler/webgpu.js +3 -3
  106. package/dist/debugger.cjs +4 -4
  107. package/dist/debugger.js +2 -2
  108. package/dist/dist-ACXG6IH5.cjs +3113 -0
  109. package/dist/dist-VD4L6V7Q.js +3076 -0
  110. package/dist/index.cjs +1915 -488
  111. package/dist/index.d.ts +2 -0
  112. package/dist/index.js +1480 -53
  113. package/dist/reconstruction/index.cjs +31 -31
  114. package/dist/reconstruction/index.js +2 -2
  115. package/dist/runtime.cjs +6 -6
  116. package/dist/runtime.js +2 -2
  117. package/dist/src-4ROC227P.cjs +2094 -0
  118. package/dist/src-HCCCSYP7.js +2073 -0
  119. package/dist/traits/botanical-lotus.cjs +146 -10
  120. package/dist/traits/botanical-lotus.d.ts +330 -0
  121. package/dist/traits/botanical-lotus.js +4 -1
  122. package/dist/traits/index.cjs +594 -455
  123. package/dist/traits/index.js +9 -5
  124. package/package.json +20 -20
  125. package/dist/chunk-VECQYRXL.js +0 -474
  126. package/dist/chunk-WDT3JTGM.cjs +0 -483
@@ -1,41 +1,177 @@
1
1
  'use strict';
2
2
 
3
- var chunkWDT3JTGM_cjs = require('../chunk-WDT3JTGM.cjs');
3
+ var chunk6Q7RC2MK_cjs = require('../chunk-6Q7RC2MK.cjs');
4
4
  require('../chunk-HCCQLAA4.cjs');
5
5
 
6
-
6
+ chunk6Q7RC2MK_cjs.init_BotanicalLotusTrait();
7
7
 
8
8
  Object.defineProperty(exports, "DEFAULT_BOTANICAL_LOTUS_CONFIG", {
9
9
  enumerable: true,
10
- get: function () { return chunkWDT3JTGM_cjs.DEFAULT_BOTANICAL_LOTUS_CONFIG; }
10
+ get: function () { return chunk6Q7RC2MK_cjs.DEFAULT_BOTANICAL_LOTUS_CONFIG; }
11
+ });
12
+ Object.defineProperty(exports, "LOTUS_GENESIS_SEED_PLACEHOLDER", {
13
+ enumerable: true,
14
+ get: function () { return chunk6Q7RC2MK_cjs.LOTUS_GENESIS_SEED_PLACEHOLDER; }
15
+ });
16
+ Object.defineProperty(exports, "LOTUS_GOLDEN_ANGLE_DEG", {
17
+ enumerable: true,
18
+ get: function () { return chunk6Q7RC2MK_cjs.LOTUS_GOLDEN_ANGLE_DEG; }
19
+ });
20
+ Object.defineProperty(exports, "LOTUS_GROWTH_SECONDS", {
21
+ enumerable: true,
22
+ get: function () { return chunk6Q7RC2MK_cjs.LOTUS_GROWTH_SECONDS; }
23
+ });
24
+ Object.defineProperty(exports, "LOTUS_OUTER_PETAL_COLOR", {
25
+ enumerable: true,
26
+ get: function () { return chunk6Q7RC2MK_cjs.LOTUS_OUTER_PETAL_COLOR; }
27
+ });
28
+ Object.defineProperty(exports, "LOTUS_PETAL_CHUNK_ENTRIES", {
29
+ enumerable: true,
30
+ get: function () { return chunk6Q7RC2MK_cjs.LOTUS_PETAL_CHUNK_ENTRIES; }
31
+ });
32
+ Object.defineProperty(exports, "LOTUS_PETAL_SHADER_CHUNKS", {
33
+ enumerable: true,
34
+ get: function () { return chunk6Q7RC2MK_cjs.LOTUS_PETAL_SHADER_CHUNKS; }
35
+ });
36
+ Object.defineProperty(exports, "LOTUS_PETAL_UNIFORM_BINDINGS", {
37
+ enumerable: true,
38
+ get: function () { return chunk6Q7RC2MK_cjs.LOTUS_PETAL_UNIFORM_BINDINGS; }
39
+ });
40
+ Object.defineProperty(exports, "LOTUS_RING_SCALING", {
41
+ enumerable: true,
42
+ get: function () { return chunk6Q7RC2MK_cjs.LOTUS_RING_SCALING; }
11
43
  });
12
44
  Object.defineProperty(exports, "assertBotanicalLotusConfig", {
13
45
  enumerable: true,
14
- get: function () { return chunkWDT3JTGM_cjs.assertBotanicalLotusConfig; }
46
+ get: function () { return chunk6Q7RC2MK_cjs.assertBotanicalLotusConfig; }
15
47
  });
16
48
  Object.defineProperty(exports, "botanicalLotusHandler", {
17
49
  enumerable: true,
18
- get: function () { return chunkWDT3JTGM_cjs.botanicalLotusHandler; }
50
+ get: function () { return chunk6Q7RC2MK_cjs.botanicalLotusHandler; }
51
+ });
52
+ Object.defineProperty(exports, "buildLotusPetalMaterialSpec", {
53
+ enumerable: true,
54
+ get: function () { return chunk6Q7RC2MK_cjs.buildLotusPetalMaterialSpec; }
55
+ });
56
+ Object.defineProperty(exports, "buildLotusSceneFromComposition", {
57
+ enumerable: true,
58
+ get: function () { return chunk6Q7RC2MK_cjs.buildLotusSceneFromComposition; }
19
59
  });
20
60
  Object.defineProperty(exports, "createBotanicalLotusRenderProfile", {
21
61
  enumerable: true,
22
- get: function () { return chunkWDT3JTGM_cjs.createBotanicalLotusRenderProfile; }
62
+ get: function () { return chunk6Q7RC2MK_cjs.createBotanicalLotusRenderProfile; }
63
+ });
64
+ Object.defineProperty(exports, "createLotusMeristem", {
65
+ enumerable: true,
66
+ get: function () { return chunk6Q7RC2MK_cjs.createLotusMeristem; }
67
+ });
68
+ Object.defineProperty(exports, "createLotusMorphogen", {
69
+ enumerable: true,
70
+ get: function () { return chunk6Q7RC2MK_cjs.createLotusMorphogen; }
71
+ });
72
+ Object.defineProperty(exports, "createLotusMorphogen2D", {
73
+ enumerable: true,
74
+ get: function () { return chunk6Q7RC2MK_cjs.createLotusMorphogen2D; }
75
+ });
76
+ Object.defineProperty(exports, "createLotusPetalTurgor", {
77
+ enumerable: true,
78
+ get: function () { return chunk6Q7RC2MK_cjs.createLotusPetalTurgor; }
79
+ });
80
+ Object.defineProperty(exports, "createLotusPond", {
81
+ enumerable: true,
82
+ get: function () { return chunk6Q7RC2MK_cjs.createLotusPond; }
23
83
  });
24
84
  Object.defineProperty(exports, "deriveBotanicalLotusAnchorStatus", {
25
85
  enumerable: true,
26
- get: function () { return chunkWDT3JTGM_cjs.deriveBotanicalLotusAnchorStatus; }
86
+ get: function () { return chunk6Q7RC2MK_cjs.deriveBotanicalLotusAnchorStatus; }
87
+ });
88
+ Object.defineProperty(exports, "deriveLotusBloomFromGlow", {
89
+ enumerable: true,
90
+ get: function () { return chunk6Q7RC2MK_cjs.deriveLotusBloomFromGlow; }
91
+ });
92
+ Object.defineProperty(exports, "disturbLotusPond", {
93
+ enumerable: true,
94
+ get: function () { return chunk6Q7RC2MK_cjs.disturbLotusPond; }
95
+ });
96
+ Object.defineProperty(exports, "generateBotanicalNormalMap", {
97
+ enumerable: true,
98
+ get: function () { return chunk6Q7RC2MK_cjs.generateBotanicalNormalMap; }
99
+ });
100
+ Object.defineProperty(exports, "generateBotanicalRoughnessMap", {
101
+ enumerable: true,
102
+ get: function () { return chunk6Q7RC2MK_cjs.generateBotanicalRoughnessMap; }
27
103
  });
28
104
  Object.defineProperty(exports, "getBotanicalLotusPetalCount", {
29
105
  enumerable: true,
30
- get: function () { return chunkWDT3JTGM_cjs.getBotanicalLotusPetalCount; }
106
+ get: function () { return chunk6Q7RC2MK_cjs.getBotanicalLotusPetalCount; }
107
+ });
108
+ Object.defineProperty(exports, "lotusMorphogen2DPeaks", {
109
+ enumerable: true,
110
+ get: function () { return chunk6Q7RC2MK_cjs.lotusMorphogen2DPeaks; }
111
+ });
112
+ Object.defineProperty(exports, "lotusMorphogen2DSampleAt", {
113
+ enumerable: true,
114
+ get: function () { return chunk6Q7RC2MK_cjs.lotusMorphogen2DSampleAt; }
115
+ });
116
+ Object.defineProperty(exports, "lotusMorphogenPeaks", {
117
+ enumerable: true,
118
+ get: function () { return chunk6Q7RC2MK_cjs.lotusMorphogenPeaks; }
119
+ });
120
+ Object.defineProperty(exports, "lotusPetalRenderColor", {
121
+ enumerable: true,
122
+ get: function () { return chunk6Q7RC2MK_cjs.lotusPetalRenderColor; }
123
+ });
124
+ Object.defineProperty(exports, "lotusPetalTurgorOpenProgress", {
125
+ enumerable: true,
126
+ get: function () { return chunk6Q7RC2MK_cjs.lotusPetalTurgorOpenProgress; }
127
+ });
128
+ Object.defineProperty(exports, "lotusPetalTurgorTipDeg", {
129
+ enumerable: true,
130
+ get: function () { return chunk6Q7RC2MK_cjs.lotusPetalTurgorTipDeg; }
131
+ });
132
+ Object.defineProperty(exports, "lotusPondSurface", {
133
+ enumerable: true,
134
+ get: function () { return chunk6Q7RC2MK_cjs.lotusPondSurface; }
31
135
  });
32
136
  Object.defineProperty(exports, "normalizeBotanicalLotusConfig", {
33
137
  enumerable: true,
34
- get: function () { return chunkWDT3JTGM_cjs.normalizeBotanicalLotusConfig; }
138
+ get: function () { return chunk6Q7RC2MK_cjs.normalizeBotanicalLotusConfig; }
139
+ });
140
+ Object.defineProperty(exports, "simulateLotusMorphogenesis", {
141
+ enumerable: true,
142
+ get: function () { return chunk6Q7RC2MK_cjs.simulateLotusMorphogenesis; }
143
+ });
144
+ Object.defineProperty(exports, "simulateLotusPetalGrowth", {
145
+ enumerable: true,
146
+ get: function () { return chunk6Q7RC2MK_cjs.simulateLotusPetalGrowth; }
147
+ });
148
+ Object.defineProperty(exports, "simulateLotusPhyllotaxis", {
149
+ enumerable: true,
150
+ get: function () { return chunk6Q7RC2MK_cjs.simulateLotusPhyllotaxis; }
151
+ });
152
+ Object.defineProperty(exports, "stepLotusMeristem", {
153
+ enumerable: true,
154
+ get: function () { return chunk6Q7RC2MK_cjs.stepLotusMeristem; }
155
+ });
156
+ Object.defineProperty(exports, "stepLotusMorphogen", {
157
+ enumerable: true,
158
+ get: function () { return chunk6Q7RC2MK_cjs.stepLotusMorphogen; }
159
+ });
160
+ Object.defineProperty(exports, "stepLotusMorphogen2D", {
161
+ enumerable: true,
162
+ get: function () { return chunk6Q7RC2MK_cjs.stepLotusMorphogen2D; }
163
+ });
164
+ Object.defineProperty(exports, "stepLotusPetalTurgor", {
165
+ enumerable: true,
166
+ get: function () { return chunk6Q7RC2MK_cjs.stepLotusPetalTurgor; }
167
+ });
168
+ Object.defineProperty(exports, "stepLotusPond", {
169
+ enumerable: true,
170
+ get: function () { return chunk6Q7RC2MK_cjs.stepLotusPond; }
35
171
  });
36
172
  Object.defineProperty(exports, "validateBotanicalLotusConfig", {
37
173
  enumerable: true,
38
- get: function () { return chunkWDT3JTGM_cjs.validateBotanicalLotusConfig; }
174
+ get: function () { return chunk6Q7RC2MK_cjs.validateBotanicalLotusConfig; }
39
175
  });
40
176
  //# sourceMappingURL=botanical-lotus.cjs.map
41
177
  //# sourceMappingURL=botanical-lotus.cjs.map
@@ -49,6 +49,9 @@ export interface BotanicalLotusMaterial {
49
49
  vein_normal_intensity: number;
50
50
  edge_curl_intensity: number;
51
51
  gravity_sag_outer: number;
52
+ sheen: number;
53
+ sheen_roughness: number;
54
+ sheen_color: string;
52
55
  }
53
56
 
54
57
  export interface BotanicalLotusPetalRing {
@@ -140,6 +143,9 @@ export interface BotanicalLotusRenderProfile {
140
143
  roughness: number;
141
144
  ior: number;
142
145
  vein_normal_intensity: number;
146
+ sheen: number;
147
+ sheen_roughness: number;
148
+ sheen_color: string;
143
149
  };
144
150
  colors: BotanicalLotusColors;
145
151
  stamen_filament_count: number;
@@ -170,3 +176,327 @@ export declare function createBotanicalLotusRenderProfile(
170
176
  lighting?: BotanicalLotusLighting
171
177
  ): BotanicalLotusRenderProfile;
172
178
  export declare const botanicalLotusHandler: unknown;
179
+
180
+ // --- Scene compiler (.holo composition -> deterministic lotus scene) ---------
181
+
182
+ export type LotusBloomState = 'sealed' | 'budding' | 'blooming' | 'full' | 'wilted';
183
+
184
+ export interface LotusCompositionObject {
185
+ name?: string;
186
+ properties?: ReadonlyArray<{ key: string; value: unknown }>;
187
+ traits?: ReadonlyArray<{ name: string; config?: Record<string, unknown> }>;
188
+ }
189
+
190
+ export interface LotusSceneRing {
191
+ ring: 1 | 2 | 3;
192
+ count: number;
193
+ radius: number;
194
+ length: number;
195
+ width: number;
196
+ cup: number;
197
+ gravity_sag: number;
198
+ height: number;
199
+ }
200
+
201
+ export interface LotusScenePetal {
202
+ index: number;
203
+ ring: 1 | 2 | 3;
204
+ ringIndex: number;
205
+ angle: number;
206
+ radius: number;
207
+ length: number;
208
+ width: number;
209
+ cup: number;
210
+ gravitySag: number;
211
+ height: number;
212
+ color: string;
213
+ bloom: LotusBloomState;
214
+ label: string;
215
+ title: string;
216
+ }
217
+
218
+ export interface LotusScene {
219
+ seed: string;
220
+ golden_angle_deg: number;
221
+ growth_seconds: number;
222
+ rings: LotusSceneRing[];
223
+ petals: LotusScenePetal[];
224
+ material: BotanicalLotusRenderProfile['pbr_uniforms'];
225
+ colors: BotanicalLotusColors;
226
+ stamen_filament_count: number;
227
+ seed_pod_dot_pattern: string;
228
+ }
229
+
230
+ export declare const LOTUS_GOLDEN_ANGLE_DEG: number;
231
+ export declare const LOTUS_GROWTH_SECONDS: number;
232
+ export declare const LOTUS_GENESIS_SEED_PLACEHOLDER: string;
233
+ export declare const LOTUS_RING_SCALING: Record<
234
+ 1 | 2 | 3,
235
+ { radius: number; length: number; width: number; height: number }
236
+ >;
237
+ export declare const LOTUS_OUTER_PETAL_COLOR: string;
238
+
239
+ export declare function deriveLotusBloomFromGlow(intensity: number, pulse: boolean): LotusBloomState;
240
+ export declare function lotusPetalRenderColor(
241
+ ring: 1 | 2 | 3,
242
+ isRoot: boolean,
243
+ colors: BotanicalLotusColors
244
+ ): string;
245
+ export declare function buildLotusSceneFromComposition(
246
+ objects: ReadonlyArray<LotusCompositionObject>,
247
+ profile?: BotanicalLotusRenderProfile,
248
+ options?: { seed?: string }
249
+ ): LotusScene;
250
+
251
+ export declare const LOTUS_PETAL_SHADER_CHUNKS: {
252
+ readonly vertexHeader: string;
253
+ readonly vertexBend: string;
254
+ readonly vertexWorld: string;
255
+ readonly fragmentHeader: string;
256
+ readonly fragmentNormalInjection: string;
257
+ readonly fragmentColorInjection: string;
258
+ readonly fragmentEmissiveInjection: string;
259
+ };
260
+
261
+ // --- Procedural texture data (three-free; renderer wraps in DataTexture) ------
262
+
263
+ export interface ProceduralTextureData {
264
+ width: number;
265
+ height: number;
266
+ data: Uint8Array;
267
+ }
268
+
269
+ export type BotanicalSurfacePattern = 'petal_veins' | 'leaf_radial' | 'stalk_fiber' | 'micro';
270
+
271
+ export declare function generateBotanicalNormalMap(opts: {
272
+ size?: number;
273
+ seed?: number;
274
+ pattern: BotanicalSurfacePattern;
275
+ strength?: number;
276
+ }): ProceduralTextureData;
277
+
278
+ export declare function generateBotanicalRoughnessMap(opts: {
279
+ size?: number;
280
+ seed?: number;
281
+ base?: number;
282
+ variance?: number;
283
+ scale?: number;
284
+ }): ProceduralTextureData;
285
+
286
+ // --- Morphogenesis: developmental phyllotaxis simulation (grown, not placed) ---
287
+
288
+ export interface LotusPrimordium {
289
+ index: number;
290
+ r: number;
291
+ theta: number;
292
+ }
293
+
294
+ export interface LotusMorphogenesisParams {
295
+ count: number;
296
+ seed?: number;
297
+ apexRadius?: number;
298
+ radialVelocity?: number;
299
+ inhibitionExponent?: number;
300
+ angularSamples?: number;
301
+ }
302
+
303
+ export interface LotusMorphogenesisResult {
304
+ primordia: LotusPrimordium[];
305
+ emergentDivergenceDeg: number;
306
+ divergenceSpreadDeg: number;
307
+ resolvedParams: {
308
+ count: number;
309
+ seed: number;
310
+ apexRadius: number;
311
+ radialVelocity: number;
312
+ inhibitionExponent: number;
313
+ angularSamples: number;
314
+ };
315
+ }
316
+
317
+ export declare function simulateLotusMorphogenesis(
318
+ params: LotusMorphogenesisParams
319
+ ): LotusMorphogenesisResult;
320
+
321
+ export interface LotusPhyllotaxisParams {
322
+ count: number;
323
+ seed?: number;
324
+ apexRadius?: number;
325
+ radialVelocity?: number;
326
+ inhibitorRange?: number;
327
+ threshold?: number;
328
+ chiralWindowDeg?: readonly [number, number];
329
+ angularSamples?: number;
330
+ }
331
+
332
+ export interface LotusPhyllotaxisResult {
333
+ primordia: LotusPrimordium[];
334
+ emergentDivergenceDeg: number;
335
+ divergenceSpreadDeg: number;
336
+ }
337
+
338
+ export declare function simulateLotusPhyllotaxis(
339
+ params: LotusPhyllotaxisParams
340
+ ): LotusPhyllotaxisResult;
341
+
342
+ export interface LotusMeristem {
343
+ primordia: LotusPrimordium[];
344
+ last: number;
345
+ apexRadius: number;
346
+ v: number;
347
+ range: number;
348
+ threshold: number;
349
+ wMin: number;
350
+ wMax: number;
351
+ samples: number;
352
+ step: number;
353
+ }
354
+
355
+ export declare function createLotusMeristem(params: LotusPhyllotaxisParams): LotusMeristem;
356
+ export declare function stepLotusMeristem(m: LotusMeristem): boolean;
357
+
358
+ export interface LotusPetalGrowthParams {
359
+ developmentalTime: number;
360
+ budCurl?: number;
361
+ openCurl?: number;
362
+ matureStart?: number;
363
+ matureSpan?: number;
364
+ acropetalDelay?: number;
365
+ baseAngleDeg?: number;
366
+ segments?: number;
367
+ }
368
+
369
+ export interface LotusPetalGrowthState {
370
+ tipAngleDeg: number;
371
+ centerline: Array<[number, number]>;
372
+ curvature: number[];
373
+ baseMaturity: number;
374
+ tipMaturity: number;
375
+ }
376
+
377
+ export declare function simulateLotusPetalGrowth(
378
+ params: LotusPetalGrowthParams
379
+ ): LotusPetalGrowthState;
380
+
381
+ export interface LotusPondParams {
382
+ size?: number;
383
+ extent?: number;
384
+ waveSpeed?: number;
385
+ damping?: number;
386
+ stalkRadius?: number;
387
+ capillaryLength?: number;
388
+ contactRise?: number;
389
+ }
390
+
391
+ export interface LotusPondState {
392
+ size: number;
393
+ extent: number;
394
+ c: number;
395
+ damping: number;
396
+ dx: number;
397
+ h: Float32Array;
398
+ v: Float32Array;
399
+ meniscus: Float32Array;
400
+ mask: Float32Array;
401
+ }
402
+
403
+ export declare function createLotusPond(params?: LotusPondParams): LotusPondState;
404
+ export declare function disturbLotusPond(
405
+ state: LotusPondState,
406
+ worldX: number,
407
+ worldZ: number,
408
+ amplitude: number,
409
+ radius?: number
410
+ ): void;
411
+ export declare function stepLotusPond(state: LotusPondState, dt: number): void;
412
+ export declare function lotusPondSurface(state: LotusPondState, out?: Float32Array): Float32Array;
413
+
414
+ export interface LotusMorphogenParams {
415
+ size?: number;
416
+ diffusionRatio?: number;
417
+ gamma?: number;
418
+ a?: number;
419
+ b?: number;
420
+ seed?: number;
421
+ }
422
+
423
+ export interface LotusMorphogenField {
424
+ size: number;
425
+ d: number;
426
+ gamma: number;
427
+ a: number;
428
+ b: number;
429
+ dt: number;
430
+ u: Float32Array;
431
+ v: Float32Array;
432
+ }
433
+
434
+ export declare function createLotusMorphogen(params?: LotusMorphogenParams): LotusMorphogenField;
435
+ export declare function stepLotusMorphogen(field: LotusMorphogenField, iterations?: number): void;
436
+ export declare function lotusMorphogenPeaks(field: LotusMorphogenField): number;
437
+
438
+ export interface LotusMorphogen2DParams {
439
+ size?: number;
440
+ diffusionRatio?: number;
441
+ gamma?: number;
442
+ a?: number;
443
+ b?: number;
444
+ seed?: number;
445
+ }
446
+ export interface LotusMorphogen2DField {
447
+ size: number;
448
+ d: number;
449
+ gamma: number;
450
+ a: number;
451
+ b: number;
452
+ dt: number;
453
+ u: Float32Array;
454
+ v: Float32Array;
455
+ mask: Uint8Array;
456
+ }
457
+ export interface LotusMorphogen2DPeak {
458
+ x: number;
459
+ y: number;
460
+ radius: number;
461
+ angle: number;
462
+ value: number;
463
+ }
464
+ export declare function createLotusMorphogen2D(params?: LotusMorphogen2DParams): LotusMorphogen2DField;
465
+ export declare function stepLotusMorphogen2D(field: LotusMorphogen2DField, iterations?: number): void;
466
+ export declare function lotusMorphogen2DPeaks(field: LotusMorphogen2DField): LotusMorphogen2DPeak[];
467
+ export declare function lotusMorphogen2DSampleAt(field: LotusMorphogen2DField, x: number, y: number): number;
468
+
469
+ export interface LotusPetalTurgorParams {
470
+ budCurl?: number;
471
+ openCurl?: number;
472
+ matureStart?: number;
473
+ matureSpan?: number;
474
+ acropetalDelay?: number;
475
+ baseAngleDeg?: number;
476
+ segments?: number;
477
+ turgorStiffness?: number;
478
+ turgorRise?: number;
479
+ }
480
+
481
+ export interface LotusPetalTurgorState {
482
+ segments: number;
483
+ baseAngle: number;
484
+ budCurl: number;
485
+ openCurl: number;
486
+ matureStart: number;
487
+ matureSpan: number;
488
+ acropetalDelay: number;
489
+ turgorStiffness: number;
490
+ turgorRise: number;
491
+ turgor: number;
492
+ kappaActual: Float32Array;
493
+ }
494
+
495
+ export declare function createLotusPetalTurgor(params?: LotusPetalTurgorParams): LotusPetalTurgorState;
496
+ export declare function stepLotusPetalTurgor(
497
+ state: LotusPetalTurgorState,
498
+ dt: number,
499
+ developmentalTime: number
500
+ ): void;
501
+ export declare function lotusPetalTurgorTipDeg(state: LotusPetalTurgorState): number;
502
+ export declare function lotusPetalTurgorOpenProgress(state: LotusPetalTurgorState): number;
@@ -1,4 +1,7 @@
1
- export { DEFAULT_BOTANICAL_LOTUS_CONFIG, assertBotanicalLotusConfig, botanicalLotusHandler, createBotanicalLotusRenderProfile, deriveBotanicalLotusAnchorStatus, getBotanicalLotusPetalCount, normalizeBotanicalLotusConfig, validateBotanicalLotusConfig } from '../chunk-VECQYRXL.js';
1
+ import { init_BotanicalLotusTrait } from '../chunk-4GU5GCIY.js';
2
+ export { DEFAULT_BOTANICAL_LOTUS_CONFIG, LOTUS_GENESIS_SEED_PLACEHOLDER, LOTUS_GOLDEN_ANGLE_DEG, LOTUS_GROWTH_SECONDS, LOTUS_OUTER_PETAL_COLOR, LOTUS_PETAL_CHUNK_ENTRIES, LOTUS_PETAL_SHADER_CHUNKS, LOTUS_PETAL_UNIFORM_BINDINGS, LOTUS_RING_SCALING, assertBotanicalLotusConfig, botanicalLotusHandler, buildLotusPetalMaterialSpec, buildLotusSceneFromComposition, createBotanicalLotusRenderProfile, createLotusMeristem, createLotusMorphogen, createLotusMorphogen2D, createLotusPetalTurgor, createLotusPond, deriveBotanicalLotusAnchorStatus, deriveLotusBloomFromGlow, disturbLotusPond, generateBotanicalNormalMap, generateBotanicalRoughnessMap, getBotanicalLotusPetalCount, lotusMorphogen2DPeaks, lotusMorphogen2DSampleAt, lotusMorphogenPeaks, lotusPetalRenderColor, lotusPetalTurgorOpenProgress, lotusPetalTurgorTipDeg, lotusPondSurface, normalizeBotanicalLotusConfig, simulateLotusMorphogenesis, simulateLotusPetalGrowth, simulateLotusPhyllotaxis, stepLotusMeristem, stepLotusMorphogen, stepLotusMorphogen2D, stepLotusPetalTurgor, stepLotusPond, validateBotanicalLotusConfig } from '../chunk-4GU5GCIY.js';
2
3
  import '../chunk-OL46QLBJ.js';
4
+
5
+ init_BotanicalLotusTrait();
3
6
  //# sourceMappingURL=botanical-lotus.js.map
4
7
  //# sourceMappingURL=botanical-lotus.js.map