@3driseai/3drise-viewer 0.1.27 → 0.1.29

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 (690) hide show
  1. package/dist/animationsV2/ClipPlayer.d.ts.map +1 -1
  2. package/dist/animationsV2/ClipPlayer.js +13 -9
  3. package/dist/animationsV2/ClipsRuntime.d.ts +44 -3
  4. package/dist/animationsV2/ClipsRuntime.d.ts.map +1 -1
  5. package/dist/animationsV2/ClipsRuntime.js +173 -55
  6. package/dist/animationsV2/appliers.d.ts.map +1 -1
  7. package/dist/animationsV2/appliers.js +21 -5
  8. package/dist/animationsV2/index.d.ts +1 -1
  9. package/dist/animationsV2/index.d.ts.map +1 -1
  10. package/dist/animationsV2/normalize.d.ts.map +1 -1
  11. package/dist/animationsV2/normalize.js +7 -3
  12. package/dist/animationsV2/sequenceUtils.d.ts +44 -6
  13. package/dist/animationsV2/sequenceUtils.d.ts.map +1 -1
  14. package/dist/animationsV2/sequenceUtils.js +58 -12
  15. package/dist/animationsV2/types.d.ts +22 -12
  16. package/dist/animationsV2/types.d.ts.map +1 -1
  17. package/dist/api/sceneHandle.d.ts +35 -1
  18. package/dist/api/sceneHandle.d.ts.map +1 -1
  19. package/dist/api/sceneHandle.js +88 -17
  20. package/dist/components/AdvancedGrid.d.ts +1 -5
  21. package/dist/components/AdvancedGrid.d.ts.map +1 -1
  22. package/dist/components/AdvancedGrid.js +6 -35
  23. package/dist/components/AnimatedObject.d.ts.map +1 -1
  24. package/dist/components/AnimatedObject.js +9 -4
  25. package/dist/components/ApollonianGrid.d.ts +25 -0
  26. package/dist/components/ApollonianGrid.d.ts.map +1 -0
  27. package/dist/components/ApollonianGrid.js +55 -0
  28. package/dist/components/ChladniGrid.d.ts +1 -1
  29. package/dist/components/ChladniGrid.d.ts.map +1 -1
  30. package/dist/components/ChladniGrid.js +6 -35
  31. package/dist/components/CircuitGrid.d.ts +1 -1
  32. package/dist/components/CircuitGrid.d.ts.map +1 -1
  33. package/dist/components/CircuitGrid.js +6 -34
  34. package/dist/components/ConformalGrid.d.ts +25 -0
  35. package/dist/components/ConformalGrid.d.ts.map +1 -0
  36. package/dist/components/ConformalGrid.js +66 -0
  37. package/dist/components/ContourGrid.d.ts +1 -1
  38. package/dist/components/ContourGrid.d.ts.map +1 -1
  39. package/dist/components/ContourGrid.js +6 -34
  40. package/dist/components/CustomPrimitive.js +1 -1
  41. package/dist/components/EnvironmentObject.d.ts.map +1 -1
  42. package/dist/components/EnvironmentObject.js +9 -7
  43. package/dist/components/FlowNetGrid.d.ts +1 -1
  44. package/dist/components/FlowNetGrid.d.ts.map +1 -1
  45. package/dist/components/FlowNetGrid.js +6 -34
  46. package/dist/components/FractalGrid.d.ts +1 -1
  47. package/dist/components/FractalGrid.d.ts.map +1 -1
  48. package/dist/components/FractalGrid.js +6 -37
  49. package/dist/components/Galaxy.d.ts.map +1 -1
  50. package/dist/components/Galaxy.js +9 -23
  51. package/dist/components/GirihGrid.d.ts +1 -1
  52. package/dist/components/GirihGrid.d.ts.map +1 -1
  53. package/dist/components/GirihGrid.js +6 -35
  54. package/dist/components/GravWaveGrid.d.ts +1 -1
  55. package/dist/components/GravWaveGrid.d.ts.map +1 -1
  56. package/dist/components/GravWaveGrid.js +6 -35
  57. package/dist/components/GridsGenerator.d.ts +2 -2
  58. package/dist/components/GridsGenerator.d.ts.map +1 -1
  59. package/dist/components/GridsGenerator.js +21 -0
  60. package/dist/components/HexGrid.d.ts +1 -5
  61. package/dist/components/HexGrid.d.ts.map +1 -1
  62. package/dist/components/HexGrid.js +6 -36
  63. package/dist/components/HilbertGrid.d.ts +25 -0
  64. package/dist/components/HilbertGrid.d.ts.map +1 -0
  65. package/dist/components/HilbertGrid.js +66 -0
  66. package/dist/components/HyperbolicGrid.d.ts +1 -1
  67. package/dist/components/HyperbolicGrid.d.ts.map +1 -1
  68. package/dist/components/HyperbolicGrid.js +6 -34
  69. package/dist/components/LandObject.d.ts +9 -0
  70. package/dist/components/LandObject.d.ts.map +1 -0
  71. package/dist/components/LandObject.js +15 -0
  72. package/dist/components/LensingGrid.d.ts +25 -0
  73. package/dist/components/LensingGrid.d.ts.map +1 -0
  74. package/dist/components/LensingGrid.js +55 -0
  75. package/dist/components/LightsManager.d.ts.map +1 -1
  76. package/dist/components/LightsManager.js +8 -0
  77. package/dist/components/ModelBoundary.d.ts +2 -0
  78. package/dist/components/ModelBoundary.d.ts.map +1 -1
  79. package/dist/components/ModelBoundary.js +3 -0
  80. package/dist/components/ModelPrimitive.d.ts.map +1 -1
  81. package/dist/components/ModelPrimitive.js +6 -0
  82. package/dist/components/MoireGrid.d.ts +1 -1
  83. package/dist/components/MoireGrid.d.ts.map +1 -1
  84. package/dist/components/MoireGrid.js +6 -35
  85. package/dist/components/MoonDisc.d.ts +11 -0
  86. package/dist/components/MoonDisc.d.ts.map +1 -0
  87. package/dist/components/MoonDisc.js +128 -0
  88. package/dist/components/ObjectNode.d.ts.map +1 -1
  89. package/dist/components/ObjectNode.js +15 -4
  90. package/dist/components/ObjectsRenderer.d.ts.map +1 -1
  91. package/dist/components/ObjectsRenderer.js +7 -5
  92. package/dist/components/OceanBuilder.d.ts.map +1 -1
  93. package/dist/components/OceanBuilder.js +2 -0
  94. package/dist/components/ParastichyGrid.d.ts +25 -0
  95. package/dist/components/ParastichyGrid.d.ts.map +1 -0
  96. package/dist/components/ParastichyGrid.js +55 -0
  97. package/dist/components/PhyllotaxisGrid.d.ts +25 -0
  98. package/dist/components/PhyllotaxisGrid.d.ts.map +1 -0
  99. package/dist/components/PhyllotaxisGrid.js +66 -0
  100. package/dist/components/ProjectLoader.d.ts +5 -3
  101. package/dist/components/ProjectLoader.d.ts.map +1 -1
  102. package/dist/components/ProjectLoader.js +6 -3
  103. package/dist/components/QuasiGrid.d.ts +1 -1
  104. package/dist/components/QuasiGrid.d.ts.map +1 -1
  105. package/dist/components/QuasiGrid.js +6 -33
  106. package/dist/components/RadarGrid.d.ts +1 -1
  107. package/dist/components/RadarGrid.d.ts.map +1 -1
  108. package/dist/components/RadarGrid.js +6 -34
  109. package/dist/components/ReactionDiffusionGrid.d.ts +1 -1
  110. package/dist/components/ReactionDiffusionGrid.d.ts.map +1 -1
  111. package/dist/components/ReactionDiffusionGrid.js +6 -35
  112. package/dist/components/SceneBuilder.d.ts +25 -3
  113. package/dist/components/SceneBuilder.d.ts.map +1 -1
  114. package/dist/components/SceneBuilder.js +68 -38
  115. package/dist/components/SkyController.d.ts +25 -1
  116. package/dist/components/SkyController.d.ts.map +1 -1
  117. package/dist/components/SkyController.js +189 -130
  118. package/dist/components/SkyMesh.d.ts.map +1 -1
  119. package/dist/components/SkyMesh.js +26 -1
  120. package/dist/components/SkyStars.d.ts +11 -0
  121. package/dist/components/SkyStars.d.ts.map +1 -0
  122. package/dist/components/SkyStars.js +187 -0
  123. package/dist/components/SkySystem.d.ts +3 -3
  124. package/dist/components/SkySystem.d.ts.map +1 -1
  125. package/dist/components/SkySystem.js +8 -2
  126. package/dist/components/Sun.d.ts +15 -1
  127. package/dist/components/Sun.d.ts.map +1 -1
  128. package/dist/components/Sun.js +64 -3
  129. package/dist/components/SunLight.d.ts +6 -1
  130. package/dist/components/SunLight.d.ts.map +1 -1
  131. package/dist/components/SunLight.js +96 -44
  132. package/dist/components/TerrainBuilder.d.ts.map +1 -1
  133. package/dist/components/TerrainBuilder.js +2 -0
  134. package/dist/components/TextGenerator.d.ts +9 -0
  135. package/dist/components/TextGenerator.d.ts.map +1 -0
  136. package/dist/components/TextGenerator.js +29 -0
  137. package/dist/components/TruchetGrid.d.ts +25 -0
  138. package/dist/components/TruchetGrid.d.ts.map +1 -0
  139. package/dist/components/TruchetGrid.js +55 -0
  140. package/dist/components/VoronoiGrid.d.ts +1 -1
  141. package/dist/components/VoronoiGrid.d.ts.map +1 -1
  142. package/dist/components/VoronoiGrid.js +6 -33
  143. package/dist/components/WallpaperGrid.d.ts +1 -1
  144. package/dist/components/WallpaperGrid.d.ts.map +1 -1
  145. package/dist/components/WallpaperGrid.js +6 -35
  146. package/dist/components/environment/Rain.d.ts +15 -0
  147. package/dist/components/environment/Rain.d.ts.map +1 -0
  148. package/dist/components/environment/Rain.js +110 -0
  149. package/dist/components/environment/Rainbow.d.ts +20 -0
  150. package/dist/components/environment/Rainbow.d.ts.map +1 -0
  151. package/dist/components/environment/Rainbow.js +974 -0
  152. package/dist/components/environment/Sandstorm.d.ts +20 -0
  153. package/dist/components/environment/Sandstorm.d.ts.map +1 -0
  154. package/dist/components/environment/Sandstorm.js +776 -0
  155. package/dist/components/environment/Snow.d.ts +20 -0
  156. package/dist/components/environment/Snow.d.ts.map +1 -0
  157. package/dist/components/environment/Snow.js +609 -0
  158. package/dist/components/environment/Thunderstorm.d.ts +20 -0
  159. package/dist/components/environment/Thunderstorm.d.ts.map +1 -0
  160. package/dist/components/environment/Thunderstorm.js +731 -0
  161. package/dist/components/environment/Tornado.d.ts +20 -0
  162. package/dist/components/environment/Tornado.d.ts.map +1 -0
  163. package/dist/components/environment/Tornado.js +762 -0
  164. package/dist/components/environment/index.d.ts +13 -0
  165. package/dist/components/environment/index.d.ts.map +1 -0
  166. package/dist/components/environment/index.js +7 -0
  167. package/dist/components/index.d.ts +24 -10
  168. package/dist/components/index.d.ts.map +1 -1
  169. package/dist/components/index.js +15 -6
  170. package/dist/components/land/LandPatch.d.ts +15 -0
  171. package/dist/components/land/LandPatch.d.ts.map +1 -0
  172. package/dist/components/land/LandPatch.js +170 -0
  173. package/dist/components/land/index.d.ts +3 -0
  174. package/dist/components/land/index.d.ts.map +1 -0
  175. package/dist/components/land/index.js +1 -0
  176. package/dist/components/space/Earth.d.ts +16 -0
  177. package/dist/components/space/Earth.d.ts.map +1 -0
  178. package/dist/components/space/Earth.js +75 -0
  179. package/dist/components/space/ShootingStar.d.ts +21 -0
  180. package/dist/components/space/ShootingStar.d.ts.map +1 -0
  181. package/dist/components/space/ShootingStar.js +101 -0
  182. package/dist/components/space/ShootingStars.d.ts +16 -0
  183. package/dist/components/space/ShootingStars.d.ts.map +1 -0
  184. package/dist/components/space/ShootingStars.js +71 -0
  185. package/dist/components/space/SolarSystem.d.ts +16 -0
  186. package/dist/components/space/SolarSystem.d.ts.map +1 -0
  187. package/dist/components/space/SolarSystem.js +141 -0
  188. package/dist/components/space/Stars.d.ts +20 -0
  189. package/dist/components/space/Stars.d.ts.map +1 -0
  190. package/dist/components/space/Stars.js +160 -0
  191. package/dist/components/space/index.d.ts +11 -0
  192. package/dist/components/space/index.d.ts.map +1 -0
  193. package/dist/components/space/index.js +8 -0
  194. package/dist/components/terrain/TerrainSurface.d.ts.map +1 -1
  195. package/dist/components/terrain/TerrainSurface.js +27 -3
  196. package/dist/components/terrain/types.d.ts +5 -1
  197. package/dist/components/terrain/types.d.ts.map +1 -1
  198. package/dist/components/text/BurnAwayText.d.ts +15 -0
  199. package/dist/components/text/BurnAwayText.d.ts.map +1 -0
  200. package/dist/components/text/BurnAwayText.js +4 -0
  201. package/dist/components/text/ChalkboardText.d.ts +15 -0
  202. package/dist/components/text/ChalkboardText.d.ts.map +1 -0
  203. package/dist/components/text/ChalkboardText.js +4 -0
  204. package/dist/components/text/ConstellationText.d.ts +15 -0
  205. package/dist/components/text/ConstellationText.d.ts.map +1 -0
  206. package/dist/components/text/ConstellationText.js +4 -0
  207. package/dist/components/text/EmbroideryText.d.ts +15 -0
  208. package/dist/components/text/EmbroideryText.d.ts.map +1 -0
  209. package/dist/components/text/EmbroideryText.js +4 -0
  210. package/dist/components/text/FourierSketchText.d.ts +15 -0
  211. package/dist/components/text/FourierSketchText.d.ts.map +1 -0
  212. package/dist/components/text/FourierSketchText.js +4 -0
  213. package/dist/components/text/FrostGrowthText.d.ts +15 -0
  214. package/dist/components/text/FrostGrowthText.d.ts.map +1 -0
  215. package/dist/components/text/FrostGrowthText.js +4 -0
  216. package/dist/components/text/HandwritingText.d.ts +15 -0
  217. package/dist/components/text/HandwritingText.d.ts.map +1 -0
  218. package/dist/components/text/HandwritingText.js +4 -0
  219. package/dist/components/text/InkBleedText.d.ts +15 -0
  220. package/dist/components/text/InkBleedText.d.ts.map +1 -0
  221. package/dist/components/text/InkBleedText.js +4 -0
  222. package/dist/components/text/LightPaintingText.d.ts +15 -0
  223. package/dist/components/text/LightPaintingText.d.ts.map +1 -0
  224. package/dist/components/text/LightPaintingText.js +4 -0
  225. package/dist/components/text/LiquidMetalText.d.ts +15 -0
  226. package/dist/components/text/LiquidMetalText.d.ts.map +1 -0
  227. package/dist/components/text/LiquidMetalText.js +4 -0
  228. package/dist/components/text/NeonTubeText.d.ts +15 -0
  229. package/dist/components/text/NeonTubeText.d.ts.map +1 -0
  230. package/dist/components/text/NeonTubeText.js +4 -0
  231. package/dist/components/text/PlasmaDischargeText.d.ts +15 -0
  232. package/dist/components/text/PlasmaDischargeText.d.ts.map +1 -0
  233. package/dist/components/text/PlasmaDischargeText.js +4 -0
  234. package/dist/components/text/TextObjectView.d.ts +12 -0
  235. package/dist/components/text/TextObjectView.d.ts.map +1 -0
  236. package/dist/components/text/TextObjectView.js +11 -0
  237. package/dist/components/text/engine/fieldkit.d.ts +24 -0
  238. package/dist/components/text/engine/fieldkit.d.ts.map +1 -0
  239. package/dist/components/text/engine/fieldkit.js +201 -0
  240. package/dist/components/text/engine/glyphs.d.ts +19 -0
  241. package/dist/components/text/engine/glyphs.d.ts.map +1 -0
  242. package/dist/components/text/engine/glyphs.js +269 -0
  243. package/dist/components/text/engine/looks/burnAway.d.ts +144 -0
  244. package/dist/components/text/engine/looks/burnAway.d.ts.map +1 -0
  245. package/dist/components/text/engine/looks/burnAway.js +593 -0
  246. package/dist/components/text/engine/looks/chalkboard.d.ts +135 -0
  247. package/dist/components/text/engine/looks/chalkboard.d.ts.map +1 -0
  248. package/dist/components/text/engine/looks/chalkboard.js +426 -0
  249. package/dist/components/text/engine/looks/constellation.d.ts +111 -0
  250. package/dist/components/text/engine/looks/constellation.d.ts.map +1 -0
  251. package/dist/components/text/engine/looks/constellation.js +496 -0
  252. package/dist/components/text/engine/looks/embroidery.d.ts +165 -0
  253. package/dist/components/text/engine/looks/embroidery.d.ts.map +1 -0
  254. package/dist/components/text/engine/looks/embroidery.js +645 -0
  255. package/dist/components/text/engine/looks/frostGrowth.d.ts +109 -0
  256. package/dist/components/text/engine/looks/frostGrowth.d.ts.map +1 -0
  257. package/dist/components/text/engine/looks/frostGrowth.js +727 -0
  258. package/dist/components/text/engine/looks/index.d.ts +2 -0
  259. package/dist/components/text/engine/looks/index.d.ts.map +1 -0
  260. package/dist/components/text/engine/looks/index.js +48 -0
  261. package/dist/components/text/engine/looks/inkBleed.d.ts +103 -0
  262. package/dist/components/text/engine/looks/inkBleed.d.ts.map +1 -0
  263. package/dist/components/text/engine/looks/inkBleed.js +590 -0
  264. package/dist/components/text/engine/looks/lightPainting.d.ts +132 -0
  265. package/dist/components/text/engine/looks/lightPainting.d.ts.map +1 -0
  266. package/dist/components/text/engine/looks/lightPainting.js +567 -0
  267. package/dist/components/text/engine/looks/liquidMetal.d.ts +135 -0
  268. package/dist/components/text/engine/looks/liquidMetal.d.ts.map +1 -0
  269. package/dist/components/text/engine/looks/liquidMetal.js +655 -0
  270. package/dist/components/text/engine/looks/plasmaDischarge.d.ts +126 -0
  271. package/dist/components/text/engine/looks/plasmaDischarge.d.ts.map +1 -0
  272. package/dist/components/text/engine/looks/plasmaDischarge.js +763 -0
  273. package/dist/components/text/engine/methods.d.ts +19 -0
  274. package/dist/components/text/engine/methods.d.ts.map +1 -0
  275. package/dist/components/text/engine/methods.js +126 -0
  276. package/dist/components/text/engine/playback.d.ts +40 -0
  277. package/dist/components/text/engine/playback.d.ts.map +1 -0
  278. package/dist/components/text/engine/playback.js +114 -0
  279. package/dist/components/text/engine/ribbon.d.ts +58 -0
  280. package/dist/components/text/engine/ribbon.d.ts.map +1 -0
  281. package/dist/components/text/engine/ribbon.js +250 -0
  282. package/dist/components/text/engine/variants.d.ts +159 -0
  283. package/dist/components/text/engine/variants.d.ts.map +1 -0
  284. package/dist/components/text/engine/variants.js +378 -0
  285. package/dist/components/text/fonts/architects-daughter.outline.d.ts +3 -0
  286. package/dist/components/text/fonts/architects-daughter.outline.d.ts.map +1 -0
  287. package/dist/components/text/fonts/architects-daughter.outline.js +4 -0
  288. package/dist/components/text/fonts/architects-daughter.strokes.d.ts +3 -0
  289. package/dist/components/text/fonts/architects-daughter.strokes.d.ts.map +1 -0
  290. package/dist/components/text/fonts/architects-daughter.strokes.js +4 -0
  291. package/dist/components/text/fonts/caveat.outline.d.ts +3 -0
  292. package/dist/components/text/fonts/caveat.outline.d.ts.map +1 -0
  293. package/dist/components/text/fonts/caveat.outline.js +4 -0
  294. package/dist/components/text/fonts/caveat.strokes.d.ts +3 -0
  295. package/dist/components/text/fonts/caveat.strokes.d.ts.map +1 -0
  296. package/dist/components/text/fonts/caveat.strokes.js +4 -0
  297. package/dist/components/text/fonts/courgette.outline.d.ts +3 -0
  298. package/dist/components/text/fonts/courgette.outline.d.ts.map +1 -0
  299. package/dist/components/text/fonts/courgette.outline.js +4 -0
  300. package/dist/components/text/fonts/courgette.strokes.d.ts +3 -0
  301. package/dist/components/text/fonts/courgette.strokes.d.ts.map +1 -0
  302. package/dist/components/text/fonts/courgette.strokes.js +4 -0
  303. package/dist/components/text/fonts/dancing-script.outline.d.ts +3 -0
  304. package/dist/components/text/fonts/dancing-script.outline.d.ts.map +1 -0
  305. package/dist/components/text/fonts/dancing-script.outline.js +4 -0
  306. package/dist/components/text/fonts/dancing-script.strokes.d.ts +3 -0
  307. package/dist/components/text/fonts/dancing-script.strokes.d.ts.map +1 -0
  308. package/dist/components/text/fonts/dancing-script.strokes.js +4 -0
  309. package/dist/components/text/fonts/gochi-hand.outline.d.ts +3 -0
  310. package/dist/components/text/fonts/gochi-hand.outline.d.ts.map +1 -0
  311. package/dist/components/text/fonts/gochi-hand.outline.js +4 -0
  312. package/dist/components/text/fonts/gochi-hand.strokes.d.ts +3 -0
  313. package/dist/components/text/fonts/gochi-hand.strokes.d.ts.map +1 -0
  314. package/dist/components/text/fonts/gochi-hand.strokes.js +4 -0
  315. package/dist/components/text/fonts/handlee.outline.d.ts +3 -0
  316. package/dist/components/text/fonts/handlee.outline.d.ts.map +1 -0
  317. package/dist/components/text/fonts/handlee.outline.js +4 -0
  318. package/dist/components/text/fonts/handlee.strokes.d.ts +3 -0
  319. package/dist/components/text/fonts/handlee.strokes.d.ts.map +1 -0
  320. package/dist/components/text/fonts/handlee.strokes.js +4 -0
  321. package/dist/components/text/fonts/index.d.ts +5 -0
  322. package/dist/components/text/fonts/index.d.ts.map +1 -0
  323. package/dist/components/text/fonts/index.js +44 -0
  324. package/dist/components/text/fonts/indie-flower.outline.d.ts +3 -0
  325. package/dist/components/text/fonts/indie-flower.outline.d.ts.map +1 -0
  326. package/dist/components/text/fonts/indie-flower.outline.js +4 -0
  327. package/dist/components/text/fonts/indie-flower.strokes.d.ts +3 -0
  328. package/dist/components/text/fonts/indie-flower.strokes.d.ts.map +1 -0
  329. package/dist/components/text/fonts/indie-flower.strokes.js +4 -0
  330. package/dist/components/text/fonts/kalam.outline.d.ts +3 -0
  331. package/dist/components/text/fonts/kalam.outline.d.ts.map +1 -0
  332. package/dist/components/text/fonts/kalam.outline.js +4 -0
  333. package/dist/components/text/fonts/kalam.strokes.d.ts +3 -0
  334. package/dist/components/text/fonts/kalam.strokes.d.ts.map +1 -0
  335. package/dist/components/text/fonts/kalam.strokes.js +4 -0
  336. package/dist/components/text/fonts/kaushan-script.outline.d.ts +3 -0
  337. package/dist/components/text/fonts/kaushan-script.outline.d.ts.map +1 -0
  338. package/dist/components/text/fonts/kaushan-script.outline.js +4 -0
  339. package/dist/components/text/fonts/kaushan-script.strokes.d.ts +3 -0
  340. package/dist/components/text/fonts/kaushan-script.strokes.d.ts.map +1 -0
  341. package/dist/components/text/fonts/kaushan-script.strokes.js +4 -0
  342. package/dist/components/text/fonts/mynerve.outline.d.ts +3 -0
  343. package/dist/components/text/fonts/mynerve.outline.d.ts.map +1 -0
  344. package/dist/components/text/fonts/mynerve.outline.js +4 -0
  345. package/dist/components/text/fonts/mynerve.strokes.d.ts +3 -0
  346. package/dist/components/text/fonts/mynerve.strokes.d.ts.map +1 -0
  347. package/dist/components/text/fonts/mynerve.strokes.js +4 -0
  348. package/dist/components/text/fonts/nanum-pen-script.outline.d.ts +3 -0
  349. package/dist/components/text/fonts/nanum-pen-script.outline.d.ts.map +1 -0
  350. package/dist/components/text/fonts/nanum-pen-script.outline.js +4 -0
  351. package/dist/components/text/fonts/nanum-pen-script.strokes.d.ts +3 -0
  352. package/dist/components/text/fonts/nanum-pen-script.strokes.d.ts.map +1 -0
  353. package/dist/components/text/fonts/nanum-pen-script.strokes.js +4 -0
  354. package/dist/components/text/fonts/pacifico.outline.d.ts +3 -0
  355. package/dist/components/text/fonts/pacifico.outline.d.ts.map +1 -0
  356. package/dist/components/text/fonts/pacifico.outline.js +4 -0
  357. package/dist/components/text/fonts/pacifico.strokes.d.ts +3 -0
  358. package/dist/components/text/fonts/pacifico.strokes.d.ts.map +1 -0
  359. package/dist/components/text/fonts/pacifico.strokes.js +4 -0
  360. package/dist/components/text/fonts/patrick-hand.outline.d.ts +3 -0
  361. package/dist/components/text/fonts/patrick-hand.outline.d.ts.map +1 -0
  362. package/dist/components/text/fonts/patrick-hand.outline.js +4 -0
  363. package/dist/components/text/fonts/patrick-hand.strokes.d.ts +3 -0
  364. package/dist/components/text/fonts/patrick-hand.strokes.d.ts.map +1 -0
  365. package/dist/components/text/fonts/patrick-hand.strokes.js +4 -0
  366. package/dist/components/text/fonts/poppins.outline.d.ts +3 -0
  367. package/dist/components/text/fonts/poppins.outline.d.ts.map +1 -0
  368. package/dist/components/text/fonts/poppins.outline.js +4 -0
  369. package/dist/components/text/fonts/poppins.strokes.d.ts +3 -0
  370. package/dist/components/text/fonts/poppins.strokes.d.ts.map +1 -0
  371. package/dist/components/text/fonts/poppins.strokes.js +4 -0
  372. package/dist/components/text/fonts/satisfy.outline.d.ts +3 -0
  373. package/dist/components/text/fonts/satisfy.outline.d.ts.map +1 -0
  374. package/dist/components/text/fonts/satisfy.outline.js +4 -0
  375. package/dist/components/text/fonts/satisfy.strokes.d.ts +3 -0
  376. package/dist/components/text/fonts/satisfy.strokes.d.ts.map +1 -0
  377. package/dist/components/text/fonts/satisfy.strokes.js +4 -0
  378. package/dist/components/text/fonts/sriracha.outline.d.ts +3 -0
  379. package/dist/components/text/fonts/sriracha.outline.d.ts.map +1 -0
  380. package/dist/components/text/fonts/sriracha.outline.js +4 -0
  381. package/dist/components/text/fonts/sriracha.strokes.d.ts +3 -0
  382. package/dist/components/text/fonts/sriracha.strokes.d.ts.map +1 -0
  383. package/dist/components/text/fonts/sriracha.strokes.js +4 -0
  384. package/dist/components/text/index.d.ts +27 -0
  385. package/dist/components/text/index.d.ts.map +1 -0
  386. package/dist/components/text/index.js +13 -0
  387. package/dist/components/text/useTextObject.d.ts +21 -0
  388. package/dist/components/text/useTextObject.d.ts.map +1 -0
  389. package/dist/components/text/useTextObject.js +118 -0
  390. package/dist/components/water/OceanSurface.d.ts.map +1 -1
  391. package/dist/components/water/OceanSurface.js +3 -1
  392. package/dist/components/water/WaterBody.d.ts.map +1 -1
  393. package/dist/components/water/WaterBody.js +3 -1
  394. package/dist/components/water/types.d.ts +5 -1
  395. package/dist/components/water/types.d.ts.map +1 -1
  396. package/dist/constants.d.ts +1 -1
  397. package/dist/constants.d.ts.map +1 -1
  398. package/dist/constants.js +5 -1
  399. package/dist/hooks/index.d.ts +2 -0
  400. package/dist/hooks/index.d.ts.map +1 -1
  401. package/dist/hooks/index.js +1 -0
  402. package/dist/hooks/useCloudSun.d.ts +9 -4
  403. package/dist/hooks/useCloudSun.d.ts.map +1 -1
  404. package/dist/hooks/useCloudSun.js +17 -7
  405. package/dist/hooks/useConfigLive.d.ts +3 -2
  406. package/dist/hooks/useConfigLive.d.ts.map +1 -1
  407. package/dist/hooks/useContinuousEffects.d.ts.map +1 -1
  408. package/dist/hooks/useContinuousEffects.js +4 -10
  409. package/dist/hooks/useEnvironmentProbe.d.ts +3 -22
  410. package/dist/hooks/useEnvironmentProbe.d.ts.map +1 -1
  411. package/dist/hooks/useEnvironmentProbe.js +47 -8
  412. package/dist/hooks/useGridSurface.d.ts +3 -10
  413. package/dist/hooks/useGridSurface.d.ts.map +1 -1
  414. package/dist/hooks/useGridSurface.js +5 -31
  415. package/dist/hooks/useInteraction.d.ts.map +1 -1
  416. package/dist/hooks/useInteraction.js +19 -72
  417. package/dist/hooks/useLightConfig.d.ts +2 -1
  418. package/dist/hooks/useLightConfig.d.ts.map +1 -1
  419. package/dist/hooks/useOceanMaterial.d.ts +6 -2
  420. package/dist/hooks/useOceanMaterial.d.ts.map +1 -1
  421. package/dist/hooks/useOceanMaterial.js +37 -2
  422. package/dist/hooks/useSkyLive.d.ts +23 -0
  423. package/dist/hooks/useSkyLive.d.ts.map +1 -0
  424. package/dist/hooks/useSkyLive.js +30 -0
  425. package/dist/hooks/useSkyUniforms.d.ts.map +1 -1
  426. package/dist/hooks/useSkyUniforms.js +2 -10
  427. package/dist/hooks/useTerrainLive.d.ts +3 -1
  428. package/dist/hooks/useTerrainLive.d.ts.map +1 -1
  429. package/dist/hooks/useTerrainTextures.d.ts +38 -0
  430. package/dist/hooks/useTerrainTextures.d.ts.map +1 -0
  431. package/dist/hooks/useTerrainTextures.js +149 -0
  432. package/dist/index.d.ts +11 -2
  433. package/dist/index.d.ts.map +1 -1
  434. package/dist/index.js +8 -1
  435. package/dist/operations/catalogue/blastOff.d.ts +3 -0
  436. package/dist/operations/catalogue/blastOff.d.ts.map +1 -0
  437. package/dist/operations/catalogue/blastOff.js +118 -0
  438. package/dist/operations/catalogue/bounce.d.ts +3 -0
  439. package/dist/operations/catalogue/bounce.d.ts.map +1 -0
  440. package/dist/operations/catalogue/bounce.js +34 -0
  441. package/dist/operations/catalogue/curlSmoke.d.ts.map +1 -1
  442. package/dist/operations/catalogue/curlSmoke.js +3 -1
  443. package/dist/operations/catalogue/dissolve.d.ts.map +1 -1
  444. package/dist/operations/catalogue/dissolve.js +2 -1
  445. package/dist/operations/catalogue/driftUp.d.ts +3 -0
  446. package/dist/operations/catalogue/driftUp.d.ts.map +1 -0
  447. package/dist/operations/catalogue/driftUp.js +57 -0
  448. package/dist/operations/catalogue/emberAsh.d.ts.map +1 -1
  449. package/dist/operations/catalogue/emberAsh.js +2 -1
  450. package/dist/operations/catalogue/flip.d.ts.map +1 -1
  451. package/dist/operations/catalogue/flip.js +19 -9
  452. package/dist/operations/catalogue/float.d.ts +3 -0
  453. package/dist/operations/catalogue/float.d.ts.map +1 -0
  454. package/dist/operations/catalogue/float.js +39 -0
  455. package/dist/operations/catalogue/flyBy.d.ts +3 -0
  456. package/dist/operations/catalogue/flyBy.d.ts.map +1 -0
  457. package/dist/operations/catalogue/flyBy.js +79 -0
  458. package/dist/operations/catalogue/frost.d.ts.map +1 -1
  459. package/dist/operations/catalogue/frost.js +10 -3
  460. package/dist/operations/catalogue/grow.d.ts +3 -0
  461. package/dist/operations/catalogue/grow.d.ts.map +1 -0
  462. package/dist/operations/catalogue/grow.js +19 -0
  463. package/dist/operations/catalogue/hologram.d.ts.map +1 -1
  464. package/dist/operations/catalogue/hologram.js +11 -5
  465. package/dist/operations/catalogue/jelly.d.ts.map +1 -1
  466. package/dist/operations/catalogue/jelly.js +18 -8
  467. package/dist/operations/catalogue/knockAway.d.ts +3 -0
  468. package/dist/operations/catalogue/knockAway.d.ts.map +1 -0
  469. package/dist/operations/catalogue/knockAway.js +74 -0
  470. package/dist/operations/catalogue/leafFall.d.ts +3 -0
  471. package/dist/operations/catalogue/leafFall.d.ts.map +1 -0
  472. package/dist/operations/catalogue/leafFall.js +74 -0
  473. package/dist/operations/catalogue/lidarScan.d.ts.map +1 -1
  474. package/dist/operations/catalogue/lidarScan.js +4 -1
  475. package/dist/operations/catalogue/metalize.d.ts.map +1 -1
  476. package/dist/operations/catalogue/metalize.js +8 -2
  477. package/dist/operations/catalogue/motionTrail.d.ts +6 -0
  478. package/dist/operations/catalogue/motionTrail.d.ts.map +1 -0
  479. package/dist/operations/catalogue/motionTrail.js +221 -0
  480. package/dist/operations/catalogue/petrify.d.ts.map +1 -1
  481. package/dist/operations/catalogue/petrify.js +9 -3
  482. package/dist/operations/catalogue/physicalExit.d.ts +55 -0
  483. package/dist/operations/catalogue/physicalExit.d.ts.map +1 -0
  484. package/dist/operations/catalogue/physicalExit.js +165 -0
  485. package/dist/operations/catalogue/physicalHeld.d.ts +41 -0
  486. package/dist/operations/catalogue/physicalHeld.d.ts.map +1 -0
  487. package/dist/operations/catalogue/physicalHeld.js +78 -0
  488. package/dist/operations/catalogue/physicalMix.d.ts +45 -0
  489. package/dist/operations/catalogue/physicalMix.d.ts.map +1 -0
  490. package/dist/operations/catalogue/physicalMix.js +144 -0
  491. package/dist/operations/catalogue/pop.d.ts +3 -0
  492. package/dist/operations/catalogue/pop.d.ts.map +1 -0
  493. package/dist/operations/catalogue/pop.js +44 -0
  494. package/dist/operations/catalogue/print3d.d.ts.map +1 -1
  495. package/dist/operations/catalogue/print3d.js +5 -1
  496. package/dist/operations/catalogue/pulse.d.ts +3 -0
  497. package/dist/operations/catalogue/pulse.d.ts.map +1 -0
  498. package/dist/operations/catalogue/pulse.js +29 -0
  499. package/dist/operations/catalogue/restPose.d.ts +5 -7
  500. package/dist/operations/catalogue/restPose.d.ts.map +1 -1
  501. package/dist/operations/catalogue/restPose.js +18 -48
  502. package/dist/operations/catalogue/rotate.d.ts +3 -0
  503. package/dist/operations/catalogue/rotate.d.ts.map +1 -0
  504. package/dist/operations/catalogue/rotate.js +49 -0
  505. package/dist/operations/catalogue/shake.d.ts +3 -0
  506. package/dist/operations/catalogue/shake.d.ts.map +1 -0
  507. package/dist/operations/catalogue/shake.js +31 -0
  508. package/dist/operations/catalogue/shatter.d.ts.map +1 -1
  509. package/dist/operations/catalogue/shatter.js +5 -1
  510. package/dist/operations/catalogue/slam.d.ts +3 -0
  511. package/dist/operations/catalogue/slam.d.ts.map +1 -0
  512. package/dist/operations/catalogue/slam.js +89 -0
  513. package/dist/operations/catalogue/slingshot.d.ts +3 -0
  514. package/dist/operations/catalogue/slingshot.d.ts.map +1 -0
  515. package/dist/operations/catalogue/slingshot.js +88 -0
  516. package/dist/operations/catalogue/spin.d.ts.map +1 -1
  517. package/dist/operations/catalogue/spin.js +24 -13
  518. package/dist/operations/catalogue/sway.d.ts +3 -0
  519. package/dist/operations/catalogue/sway.d.ts.map +1 -0
  520. package/dist/operations/catalogue/sway.js +23 -0
  521. package/dist/operations/catalogue/swirl.d.ts.map +1 -1
  522. package/dist/operations/catalogue/swirl.js +6 -5
  523. package/dist/operations/catalogue/trailCore.d.ts +89 -0
  524. package/dist/operations/catalogue/trailCore.d.ts.map +1 -0
  525. package/dist/operations/catalogue/trailCore.js +190 -0
  526. package/dist/operations/catalogue/trailGhosts.d.ts +5 -0
  527. package/dist/operations/catalogue/trailGhosts.d.ts.map +1 -0
  528. package/dist/operations/catalogue/trailGhosts.js +179 -0
  529. package/dist/operations/catalogue/trailStampStyles.d.ts +11 -0
  530. package/dist/operations/catalogue/trailStampStyles.d.ts.map +1 -0
  531. package/dist/operations/catalogue/trailStampStyles.js +479 -0
  532. package/dist/operations/catalogue/trailStamps.d.ts +57 -0
  533. package/dist/operations/catalogue/trailStamps.d.ts.map +1 -0
  534. package/dist/operations/catalogue/trailStamps.js +349 -0
  535. package/dist/operations/catalogue/trailStreaks.d.ts +3 -0
  536. package/dist/operations/catalogue/trailStreaks.d.ts.map +1 -0
  537. package/dist/operations/catalogue/trailStreaks.js +147 -0
  538. package/dist/operations/catalogue/transitionField.d.ts +30 -0
  539. package/dist/operations/catalogue/transitionField.d.ts.map +1 -1
  540. package/dist/operations/catalogue/transitionField.js +21 -0
  541. package/dist/operations/catalogue/turnAway.d.ts +3 -0
  542. package/dist/operations/catalogue/turnAway.d.ts.map +1 -0
  543. package/dist/operations/catalogue/turnAway.js +54 -0
  544. package/dist/operations/catalogue/vortexDrain.d.ts +3 -0
  545. package/dist/operations/catalogue/vortexDrain.d.ts.map +1 -0
  546. package/dist/operations/catalogue/vortexDrain.js +68 -0
  547. package/dist/operations/catalogue/warp.d.ts +3 -0
  548. package/dist/operations/catalogue/warp.d.ts.map +1 -0
  549. package/dist/operations/catalogue/warp.js +73 -0
  550. package/dist/operations/catalogue/whoosh.d.ts +3 -0
  551. package/dist/operations/catalogue/whoosh.d.ts.map +1 -0
  552. package/dist/operations/catalogue/whoosh.js +84 -0
  553. package/dist/operations/catalogue/wobble.d.ts +3 -0
  554. package/dist/operations/catalogue/wobble.d.ts.map +1 -0
  555. package/dist/operations/catalogue/wobble.js +23 -0
  556. package/dist/operations/clipPreview.d.ts +3 -0
  557. package/dist/operations/clipPreview.d.ts.map +1 -0
  558. package/dist/operations/clipPreview.js +20 -0
  559. package/dist/operations/groupFanout.d.ts +96 -0
  560. package/dist/operations/groupFanout.d.ts.map +1 -0
  561. package/dist/operations/groupFanout.js +365 -0
  562. package/dist/operations/groups.d.ts +20 -0
  563. package/dist/operations/groups.d.ts.map +1 -0
  564. package/dist/operations/groups.js +66 -0
  565. package/dist/operations/index.d.ts +5 -2
  566. package/dist/operations/index.d.ts.map +1 -1
  567. package/dist/operations/index.js +5 -2
  568. package/dist/operations/objectEffects.d.ts +161 -6
  569. package/dist/operations/objectEffects.d.ts.map +1 -1
  570. package/dist/operations/objectEffects.js +1091 -17
  571. package/dist/operations/registry.d.ts.map +1 -1
  572. package/dist/operations/registry.js +24 -2
  573. package/dist/operations/runtime.d.ts +57 -2
  574. package/dist/operations/runtime.d.ts.map +1 -1
  575. package/dist/operations/runtime.js +161 -18
  576. package/dist/operations/types.d.ts +60 -3
  577. package/dist/operations/types.d.ts.map +1 -1
  578. package/dist/operations/types.js +5 -1
  579. package/dist/operations/useObjectEffectLayers.d.ts +2 -2
  580. package/dist/operations/useObjectEffectLayers.d.ts.map +1 -1
  581. package/dist/operations/useObjectEffectLayers.js +31 -10
  582. package/dist/operations/usePresentedVisibility.d.ts +10 -0
  583. package/dist/operations/usePresentedVisibility.d.ts.map +1 -0
  584. package/dist/operations/usePresentedVisibility.js +53 -0
  585. package/dist/presets/terrainBiomes.d.ts +67 -0
  586. package/dist/presets/terrainBiomes.d.ts.map +1 -0
  587. package/dist/presets/terrainBiomes.js +294 -0
  588. package/dist/presets/terrainPresets.d.ts +6 -0
  589. package/dist/presets/terrainPresets.d.ts.map +1 -1
  590. package/dist/presets/terrainPresets.js +26 -38
  591. package/dist/shaders/glsl/oceanCore.glsl.d.ts +2 -2
  592. package/dist/shaders/glsl/oceanCore.glsl.d.ts.map +1 -1
  593. package/dist/shaders/glsl/oceanCore.glsl.js +17 -0
  594. package/dist/shaders/glsl/surfaceCore.glsl.d.ts +21 -0
  595. package/dist/shaders/glsl/surfaceCore.glsl.d.ts.map +1 -0
  596. package/dist/shaders/glsl/surfaceCore.glsl.js +120 -0
  597. package/dist/shaders/glsl/terrainCore.glsl.d.ts +16 -3
  598. package/dist/shaders/glsl/terrainCore.glsl.d.ts.map +1 -1
  599. package/dist/shaders/glsl/terrainCore.glsl.js +266 -20
  600. package/dist/shaders/ocean/OceanSurfaceMaterial.d.ts +2 -0
  601. package/dist/shaders/ocean/OceanSurfaceMaterial.d.ts.map +1 -1
  602. package/dist/shaders/ocean/OceanSurfaceMaterial.js +3 -0
  603. package/dist/shaders/terrain/TerrainMaterial.d.ts +17 -0
  604. package/dist/shaders/terrain/TerrainMaterial.d.ts.map +1 -1
  605. package/dist/shaders/terrain/TerrainMaterial.js +107 -8
  606. package/dist/triggers/engine.d.ts +44 -0
  607. package/dist/triggers/engine.d.ts.map +1 -0
  608. package/dist/triggers/engine.js +165 -0
  609. package/dist/triggers/hosts/actions.d.ts +8 -0
  610. package/dist/triggers/hosts/actions.d.ts.map +1 -0
  611. package/dist/triggers/hosts/actions.js +22 -0
  612. package/dist/triggers/hosts/interactions.d.ts +6 -0
  613. package/dist/triggers/hosts/interactions.d.ts.map +1 -0
  614. package/dist/triggers/hosts/interactions.js +4 -0
  615. package/dist/triggers/hosts/timelineCues.d.ts +2 -0
  616. package/dist/triggers/hosts/timelineCues.d.ts.map +1 -0
  617. package/dist/triggers/hosts/timelineCues.js +22 -0
  618. package/dist/triggers/index.d.ts +13 -0
  619. package/dist/triggers/index.d.ts.map +1 -0
  620. package/dist/triggers/index.js +9 -0
  621. package/dist/triggers/kinds/action.d.ts +2 -0
  622. package/dist/triggers/kinds/action.d.ts.map +1 -0
  623. package/dist/triggers/kinds/action.js +31 -0
  624. package/dist/triggers/kinds/animations.d.ts +2 -0
  625. package/dist/triggers/kinds/animations.d.ts.map +1 -0
  626. package/dist/triggers/kinds/animations.js +75 -0
  627. package/dist/triggers/kinds/effects.d.ts +2 -0
  628. package/dist/triggers/kinds/effects.d.ts.map +1 -0
  629. package/dist/triggers/kinds/effects.js +27 -0
  630. package/dist/triggers/kinds/index.d.ts +4 -0
  631. package/dist/triggers/kinds/index.d.ts.map +1 -0
  632. package/dist/triggers/kinds/index.js +4 -0
  633. package/dist/triggers/log.d.ts +21 -0
  634. package/dist/triggers/log.d.ts.map +1 -0
  635. package/dist/triggers/log.js +43 -0
  636. package/dist/triggers/readiness.d.ts +40 -0
  637. package/dist/triggers/readiness.d.ts.map +1 -0
  638. package/dist/triggers/readiness.js +158 -0
  639. package/dist/triggers/registry.d.ts +41 -0
  640. package/dist/triggers/registry.d.ts.map +1 -0
  641. package/dist/triggers/registry.js +7 -0
  642. package/dist/types/gridConfigs.d.ts +117 -19
  643. package/dist/types/gridConfigs.d.ts.map +1 -1
  644. package/dist/types/index.d.ts +1 -1
  645. package/dist/types/index.d.ts.map +1 -1
  646. package/dist/ui/UiAnchorUpdater.d.ts +10 -0
  647. package/dist/ui/UiAnchorUpdater.d.ts.map +1 -0
  648. package/dist/ui/UiAnchorUpdater.js +111 -0
  649. package/dist/ui/UiLayers.d.ts +20 -0
  650. package/dist/ui/UiLayers.d.ts.map +1 -0
  651. package/dist/ui/UiLayers.js +57 -0
  652. package/dist/ui/index.d.ts +9 -0
  653. package/dist/ui/index.d.ts.map +1 -0
  654. package/dist/ui/index.js +6 -0
  655. package/dist/ui/uiAnchors.d.ts +21 -0
  656. package/dist/ui/uiAnchors.d.ts.map +1 -0
  657. package/dist/ui/uiAnchors.js +22 -0
  658. package/dist/ui/uiBaseStyles.d.ts +2 -0
  659. package/dist/ui/uiBaseStyles.d.ts.map +1 -0
  660. package/dist/ui/uiBaseStyles.js +100 -0
  661. package/dist/ui/uiBinder.d.ts +30 -0
  662. package/dist/ui/uiBinder.d.ts.map +1 -0
  663. package/dist/ui/uiBinder.js +344 -0
  664. package/dist/utils/configAnimations.d.ts.map +1 -1
  665. package/dist/utils/configAnimations.js +5 -1
  666. package/dist/utils/gridConfig.d.ts +1 -1
  667. package/dist/utils/gridConfig.d.ts.map +1 -1
  668. package/dist/utils/gridConfig.js +1 -1
  669. package/dist/utils/landPatch.d.ts +33 -0
  670. package/dist/utils/landPatch.d.ts.map +1 -0
  671. package/dist/utils/landPatch.js +114 -0
  672. package/dist/utils/renderedSky.d.ts +32 -0
  673. package/dist/utils/renderedSky.d.ts.map +1 -0
  674. package/dist/utils/renderedSky.js +57 -0
  675. package/dist/utils/skyMoon.d.ts +35 -0
  676. package/dist/utils/skyMoon.d.ts.map +1 -0
  677. package/dist/utils/skyMoon.js +41 -0
  678. package/dist/utils/terrainHeight.d.ts +4 -0
  679. package/dist/utils/terrainHeight.d.ts.map +1 -0
  680. package/dist/utils/terrainHeight.js +150 -0
  681. package/dist/utils/terrainTextureResolver.d.ts +18 -0
  682. package/dist/utils/terrainTextureResolver.d.ts.map +1 -0
  683. package/dist/utils/terrainTextureResolver.js +17 -0
  684. package/dist/utils/terrainUniforms.d.ts +17 -0
  685. package/dist/utils/terrainUniforms.d.ts.map +1 -1
  686. package/dist/utils/terrainUniforms.js +84 -0
  687. package/dist/utils/textureArrays.d.ts +29 -0
  688. package/dist/utils/textureArrays.d.ts.map +1 -0
  689. package/dist/utils/textureArrays.js +140 -0
  690. package/package.json +2 -2
@@ -1,6 +1,6 @@
1
1
  import type { SkySettings, TimeSettings } from '@3driseai/3drise-core';
2
2
  import type { ObjectReadyProps } from '../../types/objectReady';
3
- import type { TerrainConfig, TerrainQualityConfig } from '@3driseai/3drise-core';
3
+ import type { TerrainConfig, TerrainQualityConfig, ObjectAnimations, MouseMoveInteractions } from '@3driseai/3drise-core';
4
4
  /** Shared by every landform component. The builder hands all four the same shape. */
5
5
  export interface TerrainLayerProps extends ObjectReadyProps {
6
6
  /** Scene id, so a controller can findById() the terrain and drive it live. */
@@ -13,5 +13,9 @@ export interface TerrainLayerProps extends ObjectReadyProps {
13
13
  timeSettings?: TimeSettings;
14
14
  /** Matches SkySystem's sunIntensity, so terrain brightens with the scene. */
15
15
  sunIntensity?: number;
16
+ /** Keyframes; the `terrain` domain drives the surface's lighting / colour knobs. */
17
+ animations?: ObjectAnimations;
18
+ /** Pointer bindings; same `terrain` domain. */
19
+ mouseMove?: MouseMoveInteractions;
16
20
  }
17
21
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/terrain/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAEjF,qFAAqF;AACrF,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;IACvD,8EAA8E;IAC9E,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,EAAE,oBAAoB,CAAC;IAC9B;2DACuD;IACvD,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,6EAA6E;IAC7E,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/terrain/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE1H,qFAAqF;AACrF,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;IACvD,8EAA8E;IAC9E,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,EAAE,oBAAoB,CAAC;IAC9B;2DACuD;IACvD,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,6EAA6E;IAC7E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oFAAoF;IACpF,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,+CAA+C;IAC/C,SAAS,CAAC,EAAE,qBAAqB,CAAC;CACrC"}
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import type { AnimationOptions, MouseMoveDomain, BurnAwayTextConfig } from '@3driseai/3drise-core';
3
+ import type { ObjectReadyProps } from '../../types/objectReady';
4
+ export interface BurnAwayTextProps extends ObjectReadyProps {
5
+ config: BurnAwayTextConfig;
6
+ /** Scene object id: the live-edit handle is found by it. */
7
+ id?: string;
8
+ /** Keyframes on the config knobs (animations.text.animations). */
9
+ keyframes?: AnimationOptions[];
10
+ /** Pointer bindings on the config knobs (mouseMove.text). */
11
+ mouseMove?: MouseMoveDomain;
12
+ }
13
+ declare const BurnAwayText: React.FC<BurnAwayTextProps>;
14
+ export default BurnAwayText;
15
+ //# sourceMappingURL=BurnAwayText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BurnAwayText.d.ts","sourceRoot":"","sources":["../../../src/components/text/BurnAwayText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACnG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAYhE,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;IACvD,MAAM,EAAE,kBAAkB,CAAC;IAC3B,4DAA4D;IAC5D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kEAAkE;IAClE,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B,6DAA6D;IAC7D,SAAS,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAA4D,CAAC;AAE3G,eAAe,YAAY,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import TextObjectView from './TextObjectView.js';
3
+ const BurnAwayText = (props) => _jsx(TextObjectView, { look: "burnAway", ...props });
4
+ export default BurnAwayText;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import type { AnimationOptions, MouseMoveDomain, ChalkboardTextConfig } from '@3driseai/3drise-core';
3
+ import type { ObjectReadyProps } from '../../types/objectReady';
4
+ export interface ChalkboardTextProps extends ObjectReadyProps {
5
+ config: ChalkboardTextConfig;
6
+ /** Scene object id: the live-edit handle is found by it. */
7
+ id?: string;
8
+ /** Keyframes on the config knobs (animations.text.animations). */
9
+ keyframes?: AnimationOptions[];
10
+ /** Pointer bindings on the config knobs (mouseMove.text). */
11
+ mouseMove?: MouseMoveDomain;
12
+ }
13
+ declare const ChalkboardText: React.FC<ChalkboardTextProps>;
14
+ export default ChalkboardText;
15
+ //# sourceMappingURL=ChalkboardText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChalkboardText.d.ts","sourceRoot":"","sources":["../../../src/components/text/ChalkboardText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACrG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAYhE,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IACzD,MAAM,EAAE,oBAAoB,CAAC;IAC7B,4DAA4D;IAC5D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kEAAkE;IAClE,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B,6DAA6D;IAC7D,SAAS,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED,QAAA,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAA8D,CAAC;AAEjH,eAAe,cAAc,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import TextObjectView from './TextObjectView.js';
3
+ const ChalkboardText = (props) => _jsx(TextObjectView, { look: "chalkboard", ...props });
4
+ export default ChalkboardText;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import type { AnimationOptions, MouseMoveDomain, ConstellationTextConfig } from '@3driseai/3drise-core';
3
+ import type { ObjectReadyProps } from '../../types/objectReady';
4
+ export interface ConstellationTextProps extends ObjectReadyProps {
5
+ config: ConstellationTextConfig;
6
+ /** Scene object id: the live-edit handle is found by it. */
7
+ id?: string;
8
+ /** Keyframes on the config knobs (animations.text.animations). */
9
+ keyframes?: AnimationOptions[];
10
+ /** Pointer bindings on the config knobs (mouseMove.text). */
11
+ mouseMove?: MouseMoveDomain;
12
+ }
13
+ declare const ConstellationText: React.FC<ConstellationTextProps>;
14
+ export default ConstellationText;
15
+ //# sourceMappingURL=ConstellationText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConstellationText.d.ts","sourceRoot":"","sources":["../../../src/components/text/ConstellationText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACxG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAYhE,MAAM,WAAW,sBAAuB,SAAQ,gBAAgB;IAC5D,MAAM,EAAE,uBAAuB,CAAC;IAChC,4DAA4D;IAC5D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kEAAkE;IAClE,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B,6DAA6D;IAC7D,SAAS,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED,QAAA,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAAiE,CAAC;AAE1H,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import TextObjectView from './TextObjectView.js';
3
+ const ConstellationText = (props) => _jsx(TextObjectView, { look: "constellation", ...props });
4
+ export default ConstellationText;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import type { AnimationOptions, MouseMoveDomain, EmbroideryTextConfig } from '@3driseai/3drise-core';
3
+ import type { ObjectReadyProps } from '../../types/objectReady';
4
+ export interface EmbroideryTextProps extends ObjectReadyProps {
5
+ config: EmbroideryTextConfig;
6
+ /** Scene object id: the live-edit handle is found by it. */
7
+ id?: string;
8
+ /** Keyframes on the config knobs (animations.text.animations). */
9
+ keyframes?: AnimationOptions[];
10
+ /** Pointer bindings on the config knobs (mouseMove.text). */
11
+ mouseMove?: MouseMoveDomain;
12
+ }
13
+ declare const EmbroideryText: React.FC<EmbroideryTextProps>;
14
+ export default EmbroideryText;
15
+ //# sourceMappingURL=EmbroideryText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmbroideryText.d.ts","sourceRoot":"","sources":["../../../src/components/text/EmbroideryText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACrG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAYhE,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IACzD,MAAM,EAAE,oBAAoB,CAAC;IAC7B,4DAA4D;IAC5D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kEAAkE;IAClE,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B,6DAA6D;IAC7D,SAAS,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED,QAAA,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAA8D,CAAC;AAEjH,eAAe,cAAc,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import TextObjectView from './TextObjectView.js';
3
+ const EmbroideryText = (props) => _jsx(TextObjectView, { look: "embroidery", ...props });
4
+ export default EmbroideryText;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import type { AnimationOptions, MouseMoveDomain, FourierSketchTextConfig } from '@3driseai/3drise-core';
3
+ import type { ObjectReadyProps } from '../../types/objectReady';
4
+ export interface FourierSketchTextProps extends ObjectReadyProps {
5
+ config: FourierSketchTextConfig;
6
+ /** Scene object id: the live-edit handle is found by it. */
7
+ id?: string;
8
+ /** Keyframes on the config knobs (animations.text.animations). */
9
+ keyframes?: AnimationOptions[];
10
+ /** Pointer bindings on the config knobs (mouseMove.text). */
11
+ mouseMove?: MouseMoveDomain;
12
+ }
13
+ declare const FourierSketchText: React.FC<FourierSketchTextProps>;
14
+ export default FourierSketchText;
15
+ //# sourceMappingURL=FourierSketchText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FourierSketchText.d.ts","sourceRoot":"","sources":["../../../src/components/text/FourierSketchText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACxG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAYhE,MAAM,WAAW,sBAAuB,SAAQ,gBAAgB;IAC5D,MAAM,EAAE,uBAAuB,CAAC;IAChC,4DAA4D;IAC5D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kEAAkE;IAClE,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B,6DAA6D;IAC7D,SAAS,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED,QAAA,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAAiE,CAAC;AAE1H,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import TextObjectView from './TextObjectView.js';
3
+ const FourierSketchText = (props) => _jsx(TextObjectView, { look: "fourierSketch", ...props });
4
+ export default FourierSketchText;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import type { AnimationOptions, MouseMoveDomain, FrostGrowthTextConfig } from '@3driseai/3drise-core';
3
+ import type { ObjectReadyProps } from '../../types/objectReady';
4
+ export interface FrostGrowthTextProps extends ObjectReadyProps {
5
+ config: FrostGrowthTextConfig;
6
+ /** Scene object id: the live-edit handle is found by it. */
7
+ id?: string;
8
+ /** Keyframes on the config knobs (animations.text.animations). */
9
+ keyframes?: AnimationOptions[];
10
+ /** Pointer bindings on the config knobs (mouseMove.text). */
11
+ mouseMove?: MouseMoveDomain;
12
+ }
13
+ declare const FrostGrowthText: React.FC<FrostGrowthTextProps>;
14
+ export default FrostGrowthText;
15
+ //# sourceMappingURL=FrostGrowthText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FrostGrowthText.d.ts","sourceRoot":"","sources":["../../../src/components/text/FrostGrowthText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AACtG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAYhE,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC1D,MAAM,EAAE,qBAAqB,CAAC;IAC9B,4DAA4D;IAC5D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kEAAkE;IAClE,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B,6DAA6D;IAC7D,SAAS,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED,QAAA,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAA+D,CAAC;AAEpH,eAAe,eAAe,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import TextObjectView from './TextObjectView.js';
3
+ const FrostGrowthText = (props) => _jsx(TextObjectView, { look: "frostGrowth", ...props });
4
+ export default FrostGrowthText;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import type { AnimationOptions, MouseMoveDomain, HandwritingTextConfig } from '@3driseai/3drise-core';
3
+ import type { ObjectReadyProps } from '../../types/objectReady';
4
+ export interface HandwritingTextProps extends ObjectReadyProps {
5
+ config: HandwritingTextConfig;
6
+ /** Scene object id: the live-edit handle is found by it. */
7
+ id?: string;
8
+ /** Keyframes on the config knobs (animations.text.animations). */
9
+ keyframes?: AnimationOptions[];
10
+ /** Pointer bindings on the config knobs (mouseMove.text). */
11
+ mouseMove?: MouseMoveDomain;
12
+ }
13
+ declare const HandwritingText: React.FC<HandwritingTextProps>;
14
+ export default HandwritingText;
15
+ //# sourceMappingURL=HandwritingText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HandwritingText.d.ts","sourceRoot":"","sources":["../../../src/components/text/HandwritingText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AACtG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAYhE,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC1D,MAAM,EAAE,qBAAqB,CAAC;IAC9B,4DAA4D;IAC5D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kEAAkE;IAClE,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B,6DAA6D;IAC7D,SAAS,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED,QAAA,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAA+D,CAAC;AAEpH,eAAe,eAAe,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import TextObjectView from './TextObjectView.js';
3
+ const HandwritingText = (props) => _jsx(TextObjectView, { look: "handwriting", ...props });
4
+ export default HandwritingText;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import type { AnimationOptions, MouseMoveDomain, InkBleedTextConfig } from '@3driseai/3drise-core';
3
+ import type { ObjectReadyProps } from '../../types/objectReady';
4
+ export interface InkBleedTextProps extends ObjectReadyProps {
5
+ config: InkBleedTextConfig;
6
+ /** Scene object id: the live-edit handle is found by it. */
7
+ id?: string;
8
+ /** Keyframes on the config knobs (animations.text.animations). */
9
+ keyframes?: AnimationOptions[];
10
+ /** Pointer bindings on the config knobs (mouseMove.text). */
11
+ mouseMove?: MouseMoveDomain;
12
+ }
13
+ declare const InkBleedText: React.FC<InkBleedTextProps>;
14
+ export default InkBleedText;
15
+ //# sourceMappingURL=InkBleedText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InkBleedText.d.ts","sourceRoot":"","sources":["../../../src/components/text/InkBleedText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACnG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAYhE,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;IACvD,MAAM,EAAE,kBAAkB,CAAC;IAC3B,4DAA4D;IAC5D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kEAAkE;IAClE,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B,6DAA6D;IAC7D,SAAS,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAA4D,CAAC;AAE3G,eAAe,YAAY,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import TextObjectView from './TextObjectView.js';
3
+ const InkBleedText = (props) => _jsx(TextObjectView, { look: "inkBleed", ...props });
4
+ export default InkBleedText;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import type { AnimationOptions, MouseMoveDomain, LightPaintingTextConfig } from '@3driseai/3drise-core';
3
+ import type { ObjectReadyProps } from '../../types/objectReady';
4
+ export interface LightPaintingTextProps extends ObjectReadyProps {
5
+ config: LightPaintingTextConfig;
6
+ /** Scene object id: the live-edit handle is found by it. */
7
+ id?: string;
8
+ /** Keyframes on the config knobs (animations.text.animations). */
9
+ keyframes?: AnimationOptions[];
10
+ /** Pointer bindings on the config knobs (mouseMove.text). */
11
+ mouseMove?: MouseMoveDomain;
12
+ }
13
+ declare const LightPaintingText: React.FC<LightPaintingTextProps>;
14
+ export default LightPaintingText;
15
+ //# sourceMappingURL=LightPaintingText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LightPaintingText.d.ts","sourceRoot":"","sources":["../../../src/components/text/LightPaintingText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACxG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAYhE,MAAM,WAAW,sBAAuB,SAAQ,gBAAgB;IAC5D,MAAM,EAAE,uBAAuB,CAAC;IAChC,4DAA4D;IAC5D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kEAAkE;IAClE,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B,6DAA6D;IAC7D,SAAS,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED,QAAA,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAAiE,CAAC;AAE1H,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import TextObjectView from './TextObjectView.js';
3
+ const LightPaintingText = (props) => _jsx(TextObjectView, { look: "lightPainting", ...props });
4
+ export default LightPaintingText;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import type { AnimationOptions, MouseMoveDomain, LiquidMetalTextConfig } from '@3driseai/3drise-core';
3
+ import type { ObjectReadyProps } from '../../types/objectReady';
4
+ export interface LiquidMetalTextProps extends ObjectReadyProps {
5
+ config: LiquidMetalTextConfig;
6
+ /** Scene object id: the live-edit handle is found by it. */
7
+ id?: string;
8
+ /** Keyframes on the config knobs (animations.text.animations). */
9
+ keyframes?: AnimationOptions[];
10
+ /** Pointer bindings on the config knobs (mouseMove.text). */
11
+ mouseMove?: MouseMoveDomain;
12
+ }
13
+ declare const LiquidMetalText: React.FC<LiquidMetalTextProps>;
14
+ export default LiquidMetalText;
15
+ //# sourceMappingURL=LiquidMetalText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LiquidMetalText.d.ts","sourceRoot":"","sources":["../../../src/components/text/LiquidMetalText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AACtG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAYhE,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC1D,MAAM,EAAE,qBAAqB,CAAC;IAC9B,4DAA4D;IAC5D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kEAAkE;IAClE,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B,6DAA6D;IAC7D,SAAS,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED,QAAA,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAA+D,CAAC;AAEpH,eAAe,eAAe,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import TextObjectView from './TextObjectView.js';
3
+ const LiquidMetalText = (props) => _jsx(TextObjectView, { look: "liquidMetal", ...props });
4
+ export default LiquidMetalText;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import type { AnimationOptions, MouseMoveDomain, NeonTubeTextConfig } from '@3driseai/3drise-core';
3
+ import type { ObjectReadyProps } from '../../types/objectReady';
4
+ export interface NeonTubeTextProps extends ObjectReadyProps {
5
+ config: NeonTubeTextConfig;
6
+ /** Scene object id: the live-edit handle is found by it. */
7
+ id?: string;
8
+ /** Keyframes on the config knobs (animations.text.animations). */
9
+ keyframes?: AnimationOptions[];
10
+ /** Pointer bindings on the config knobs (mouseMove.text). */
11
+ mouseMove?: MouseMoveDomain;
12
+ }
13
+ declare const NeonTubeText: React.FC<NeonTubeTextProps>;
14
+ export default NeonTubeText;
15
+ //# sourceMappingURL=NeonTubeText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NeonTubeText.d.ts","sourceRoot":"","sources":["../../../src/components/text/NeonTubeText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACnG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAYhE,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;IACvD,MAAM,EAAE,kBAAkB,CAAC;IAC3B,4DAA4D;IAC5D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kEAAkE;IAClE,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B,6DAA6D;IAC7D,SAAS,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAA4D,CAAC;AAE3G,eAAe,YAAY,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import TextObjectView from './TextObjectView.js';
3
+ const NeonTubeText = (props) => _jsx(TextObjectView, { look: "neonTube", ...props });
4
+ export default NeonTubeText;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import type { AnimationOptions, MouseMoveDomain, PlasmaDischargeTextConfig } from '@3driseai/3drise-core';
3
+ import type { ObjectReadyProps } from '../../types/objectReady';
4
+ export interface PlasmaDischargeTextProps extends ObjectReadyProps {
5
+ config: PlasmaDischargeTextConfig;
6
+ /** Scene object id: the live-edit handle is found by it. */
7
+ id?: string;
8
+ /** Keyframes on the config knobs (animations.text.animations). */
9
+ keyframes?: AnimationOptions[];
10
+ /** Pointer bindings on the config knobs (mouseMove.text). */
11
+ mouseMove?: MouseMoveDomain;
12
+ }
13
+ declare const PlasmaDischargeText: React.FC<PlasmaDischargeTextProps>;
14
+ export default PlasmaDischargeText;
15
+ //# sourceMappingURL=PlasmaDischargeText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlasmaDischargeText.d.ts","sourceRoot":"","sources":["../../../src/components/text/PlasmaDischargeText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAC1G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAYhE,MAAM,WAAW,wBAAyB,SAAQ,gBAAgB;IAC9D,MAAM,EAAE,yBAAyB,CAAC;IAClC,4DAA4D;IAC5D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kEAAkE;IAClE,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B,6DAA6D;IAC7D,SAAS,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED,QAAA,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAAmE,CAAC;AAEhI,eAAe,mBAAmB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import TextObjectView from './TextObjectView.js';
3
+ const PlasmaDischargeText = (props) => _jsx(TextObjectView, { look: "plasmaDischarge", ...props });
4
+ export default PlasmaDischargeText;
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ import type { TextObjectType } from '@3driseai/3drise-core';
3
+ import { type TextObjectProps } from './useTextObject';
4
+ /**
5
+ * The shared body of every text look: an empty group that the look's mesh is built into once the font has
6
+ * loaded. The inner group is the em scale, so the object's own transform stays the parent's.
7
+ */
8
+ declare const TextObjectView: React.FC<TextObjectProps & {
9
+ look: TextObjectType;
10
+ }>;
11
+ export default TextObjectView;
12
+ //# sourceMappingURL=TextObjectView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TextObjectView.d.ts","sourceRoot":"","sources":["../../../src/components/text/TextObjectView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAA0B,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE/E;;;GAGG;AACH,QAAA,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,GAAG;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,CAOxE,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { TEXT_EM, useTextObject } from './useTextObject.js';
3
+ /**
4
+ * The shared body of every text look: an empty group that the look's mesh is built into once the font has
5
+ * loaded. The inner group is the em scale, so the object's own transform stays the parent's.
6
+ */
7
+ const TextObjectView = ({ look, ...props }) => {
8
+ const { rootRef, innerRef } = useTextObject(look, props);
9
+ return (_jsx("group", { ref: rootRef, children: _jsx("group", { ref: innerRef, scale: TEXT_EM }) }));
10
+ };
11
+ export default TextObjectView;
@@ -0,0 +1,24 @@
1
+ import * as THREE from 'three';
2
+ export declare function buildField(strokes: any, { source, texels, pad, maxDist }?: {
3
+ source?: string;
4
+ texels?: number;
5
+ pad?: number;
6
+ maxDist?: number;
7
+ }): {
8
+ f0: THREE.DataTexture;
9
+ f1: THREE.DataTexture;
10
+ ext: THREE.Vector4;
11
+ size: number[];
12
+ texel: number;
13
+ maxDist: number;
14
+ dispose(): void;
15
+ };
16
+ export declare const FIELD_UNIFORMS = "uniform sampler2D uF0; uniform sampler2D uF1; uniform vec4 uFExt; uniform float uFMax;\nvarying vec2 vPos;\n";
17
+ export declare const FIELD_FUNCS = "\nfloat h21(vec2 p){ return fract(sin(dot(p, vec2(12.9898, 78.233)))*43758.5453); }\nvec2 fieldUV(vec2 p){ return (p - uFExt.xy)/uFExt.zw; }\nvec4 fieldA(vec2 p){ return texture2D(uF0, fieldUV(p)); } // signed distance (em), gD, gO, arc\nvec4 fieldB(vec2 p){ return texture2D(uF1, fieldUV(p)); } // glyphN, width factor, stroke id, 0\nfloat revealInG(float g){ return uFadeIn > 0.5 ? uD : smoothstep(0.0, max(uSoftIn, 1e-4), uHead - g); }\nfloat revealOutG(float g){ return uFadeOut > 0.5 ? 1.0 - uE : smoothstep(0.0, max(uSoftOut, 1e-4), g - uErase); }\nfloat ageG(float g){ return max(0.0, uHead - g)*uDur + uSince; } // seconds since the front passed this pixel\n";
18
+ export declare const fieldFrag: (body: any, extra?: string) => string;
19
+ export declare function fieldMaterial(field: any, fragBody: any, uniforms: any, { additive, extra }?: {
20
+ additive?: boolean;
21
+ extra?: string;
22
+ }): THREE.ShaderMaterial;
23
+ export declare function fieldQuad(field: any, material: any): THREE.Mesh<THREE.PlaneGeometry, any, THREE.Object3DEventMap>;
24
+ //# sourceMappingURL=fieldkit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fieldkit.d.ts","sourceRoot":"","sources":["../../../../src/components/text/engine/fieldkit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAoB/B,wBAAgB,UAAU,CAAC,OAAO,KAAA,EAAE,EAAE,MAAkB,EAAE,MAAa,EAAE,GAAS,EAAE,OAAa,EAAE;;;;;CAAK;;;;;;;;EAwEvG;AAED,eAAO,MAAM,cAAc,iHAE1B,CAAC;AACF,eAAO,MAAM,WAAW,grBAQvB,CAAC;AACF,eAAO,MAAM,SAAS,GAAI,SAAI,EAAE,cAAU,WAAyG,CAAC;AAGpJ,wBAAgB,aAAa,CAAC,KAAK,KAAA,EAAE,QAAQ,KAAA,EAAE,QAAQ,KAAA,EAAE,EAAE,QAAgB,EAAE,KAAU,EAAE;;;CAAK,wBAQ7F;AACD,wBAAgB,SAAS,CAAC,KAAK,KAAA,EAAE,QAAQ,KAAA,gEAGxC"}
@@ -0,0 +1,201 @@
1
+ import * as THREE from 'three';
2
+ import { REVEAL_UNIFORMS, uniformsBase } from './ribbon.js';
3
+ // ---------------------------------------------------------------------------------------------
4
+ // FIELD KIT — shared by every text variant that is shaded per pixel on a plane (burn, ink, chalk, metal, frost fill…).
5
+ //
6
+ // From the schedules the draw / erase methods already wrote on the strokes (s.seg, s.t, s.segO, s.tO), the kit bakes two
7
+ // RGBA16F textures over the text's extent (em units, y up, origin = text centre):
8
+ // F0 = ( signed distance to the glyph [em; <0 inside a filled outline glyph, outline source only],
9
+ // draw arrival gD [global draw progress at which the nearest stroke point appears],
10
+ // erase arrival gO [global erase progress at which the nearest stroke point disappears],
11
+ // arc u [0..1 along the nearest stroke] )
12
+ // F1 = ( glyphN [0..1 across the text], width factor wfactor (hand source), stroke index / 255 (for hashing), 0 )
13
+ // The values come from the NEAREST stroke point (CPU jump flooding, exact sub-texel positions), so a filled letter reveals
14
+ // from its contour inwards and "meets in the middle", whatever draw method is chosen.
15
+ // Sampling is bilinear (half-float linear filtering is core WebGL2).
16
+ //
17
+ // Reveal helpers in GLSL mirror ribbon.mjs exactly (revealInG / revealOutG / ageG), so every method works unchanged.
18
+ // ---------------------------------------------------------------------------------------------
19
+ export function buildField(strokes, { source = 'outline', texels = 1024, pad = 0.3, maxDist = 0.4 } = {}) {
20
+ let x0 = 1e9, y0 = 1e9, x1 = -1e9, y1 = -1e9;
21
+ for (const s of strokes)
22
+ for (let i = 0; i < s.pts.length; i += 2) {
23
+ x0 = Math.min(x0, s.pts[i]);
24
+ x1 = Math.max(x1, s.pts[i]);
25
+ y0 = Math.min(y0, s.pts[i + 1]);
26
+ y1 = Math.max(y1, s.pts[i + 1]);
27
+ }
28
+ x0 -= pad;
29
+ y0 -= pad;
30
+ x1 += pad;
31
+ y1 += pad;
32
+ const ew = x1 - x0, eh = y1 - y0;
33
+ const W = Math.max(8, Math.min(texels, Math.round(texels * (ew >= eh ? 1 : ew / eh)))), H = Math.max(8, Math.min(texels, Math.round(texels * (eh > ew ? 1 : eh / ew))));
34
+ const cell = ew / W; // em per texel (square texels: eh/H == ew/W up to rounding)
35
+ const sx = ew / W, sy = eh / H;
36
+ const N = W * H;
37
+ const SX = new Float32Array(N), SY = new Float32Array(N), GD = new Float32Array(N), GO = new Float32Array(N), AR = new Float32Array(N), GN = new Float32Array(N), WF = new Float32Array(N), SI = new Float32Array(N);
38
+ const own = new Int32Array(N).fill(-1);
39
+ // 1. seeds: sample every segment of every stroke at half-texel spacing
40
+ strokes.forEach((s, si) => {
41
+ const n = s.pts.length / 2;
42
+ for (let i = 0; i < n - 1; i++) {
43
+ const ax = s.pts[2 * i], ay = s.pts[2 * i + 1], bx = s.pts[2 * i + 2], by = s.pts[2 * i + 3];
44
+ const L = Math.hypot(bx - ax, by - ay), m = Math.max(1, Math.ceil(L / (0.5 * cell)));
45
+ for (let k = 0; k <= m; k++) {
46
+ const f = k / m, X = ax + (bx - ax) * f, Y = ay + (by - ay) * f;
47
+ const ix = Math.floor((X - x0) / sx), iy = Math.floor((Y - y0) / sy);
48
+ if (ix < 0 || iy < 0 || ix >= W || iy >= H)
49
+ continue;
50
+ const p = iy * W + ix, cx = x0 + (ix + 0.5) * sx, cy = y0 + (iy + 0.5) * sy;
51
+ if (own[p] >= 0 && Math.hypot(SX[p] - cx, SY[p] - cy) <= Math.hypot(X - cx, Y - cy))
52
+ continue; // keep the seed closest to the texel centre
53
+ own[p] = p;
54
+ SX[p] = X;
55
+ SY[p] = Y;
56
+ const tI = s.t[i] + (s.t[i + 1] - s.t[i]) * f, tO = s.tO[i] + (s.tO[i + 1] - s.tO[i]) * f;
57
+ GD[p] = s.seg[0] + tI * (s.seg[1] - s.seg[0]);
58
+ GO[p] = s.segO[0] + tO * (s.segO[1] - s.segO[0]);
59
+ AR[p] = (s.cum[i] + (s.cum[i + 1] - s.cum[i]) * f) / Math.max(1e-6, s.len);
60
+ GN[p] = s.glyphN || 0;
61
+ WF[p] = s.wfactor ? s.wfactor[i] + (s.wfactor[i + 1] - s.wfactor[i]) * f : 1;
62
+ SI[p] = si / 255;
63
+ }
64
+ }
65
+ });
66
+ // 2. jump flooding: every texel learns its nearest seed
67
+ let cur = own, nxt = new Int32Array(N);
68
+ const jump = (step) => {
69
+ for (let y = 0; y < H; y++)
70
+ for (let x = 0; x < W; x++) {
71
+ const p = y * W + x, cx = x0 + (x + 0.5) * sx, cy = y0 + (y + 0.5) * sy;
72
+ let best = cur[p], bd = best >= 0 ? (SX[best] - cx) ** 2 + (SY[best] - cy) ** 2 : 1e30;
73
+ for (let dy = -1; dy <= 1; dy++) {
74
+ const yy = y + dy * step;
75
+ if (yy < 0 || yy >= H)
76
+ continue;
77
+ for (let dx = -1; dx <= 1; dx++) {
78
+ const xx = x + dx * step;
79
+ if (xx < 0 || xx >= W)
80
+ continue;
81
+ const q = cur[yy * W + xx];
82
+ if (q < 0)
83
+ continue;
84
+ const d = (SX[q] - cx) ** 2 + (SY[q] - cy) ** 2;
85
+ if (d < bd) {
86
+ bd = d;
87
+ best = q;
88
+ }
89
+ }
90
+ }
91
+ nxt[p] = best;
92
+ }
93
+ const t = cur;
94
+ cur = nxt;
95
+ nxt = t;
96
+ };
97
+ for (let st = 1 << Math.floor(Math.log2(Math.max(W, H))); st >= 1; st >>= 1)
98
+ jump(st);
99
+ jump(1);
100
+ // 3. inside mask (outline source): fill every glyph's contours with the even-odd rule
101
+ let inside = null;
102
+ if (source === 'outline') {
103
+ const cv = document.createElement('canvas');
104
+ cv.width = W;
105
+ cv.height = H;
106
+ const g = cv.getContext('2d', { willReadFrequently: true });
107
+ g.fillStyle = '#fff';
108
+ g.fillRect(0, 0, W, H);
109
+ g.fillStyle = '#000';
110
+ const byGlyph = new Map();
111
+ for (const s of strokes) {
112
+ if (!byGlyph.has(s.glyph))
113
+ byGlyph.set(s.glyph, []);
114
+ byGlyph.get(s.glyph).push(s);
115
+ }
116
+ for (const list of byGlyph.values()) {
117
+ g.beginPath();
118
+ for (const s of list) {
119
+ for (let i = 0; i < s.pts.length; i += 2) {
120
+ const X = (s.pts[i] - x0) / sx, Y = H - (s.pts[i + 1] - y0) / sy;
121
+ if (i === 0)
122
+ g.moveTo(X, Y);
123
+ else
124
+ g.lineTo(X, Y);
125
+ }
126
+ g.closePath();
127
+ }
128
+ g.fill('evenodd');
129
+ }
130
+ const im = g.getImageData(0, 0, W, H).data;
131
+ inside = new Uint8Array(N);
132
+ for (let y = 0; y < H; y++)
133
+ for (let x = 0; x < W; x++)
134
+ inside[y * W + x] = im[((H - 1 - y) * W + x) * 4] < 128 ? 1 : 0; // canvas rows run top-down
135
+ }
136
+ // 4. pack
137
+ const h = THREE.DataUtils.toHalfFloat;
138
+ const D0 = new Uint16Array(N * 4), D1 = new Uint16Array(N * 4);
139
+ const far = h(maxDist);
140
+ for (let y = 0; y < H; y++)
141
+ for (let x = 0; x < W; x++) {
142
+ const p = y * W + x, k = cur[p], o = p * 4;
143
+ if (k < 0) {
144
+ D0[o] = far;
145
+ D0[o + 1] = h(2);
146
+ D0[o + 2] = h(2);
147
+ D0[o + 3] = 0;
148
+ D1[o] = 0;
149
+ D1[o + 1] = h(1);
150
+ D1[o + 2] = 0;
151
+ D1[o + 3] = 0;
152
+ continue;
153
+ }
154
+ const cx = x0 + (x + 0.5) * sx, cy = y0 + (y + 0.5) * sy;
155
+ let d = Math.hypot(SX[k] - cx, SY[k] - cy);
156
+ if (inside && inside[p])
157
+ d = -d;
158
+ D0[o] = h(Math.max(-maxDist, Math.min(maxDist, d)));
159
+ D0[o + 1] = h(GD[k]);
160
+ D0[o + 2] = h(GO[k]);
161
+ D0[o + 3] = h(AR[k]);
162
+ D1[o] = h(GN[k]);
163
+ D1[o + 1] = h(WF[k]);
164
+ D1[o + 2] = h(SI[k]);
165
+ D1[o + 3] = 0;
166
+ }
167
+ const mk = (d) => { const t = new THREE.DataTexture(d, W, H, THREE.RGBAFormat, THREE.HalfFloatType); t.minFilter = t.magFilter = THREE.LinearFilter; t.wrapS = t.wrapT = THREE.ClampToEdgeWrapping; t.generateMipmaps = false; t.needsUpdate = true; return t; };
168
+ const f0 = mk(D0), f1 = mk(D1);
169
+ return { f0, f1, ext: new THREE.Vector4(x0, y0, ew, eh), size: [W, H], texel: cell, maxDist, dispose() { f0.dispose(); f1.dispose(); } };
170
+ }
171
+ export const FIELD_UNIFORMS = /* glsl */ `uniform sampler2D uF0; uniform sampler2D uF1; uniform vec4 uFExt; uniform float uFMax;
172
+ varying vec2 vPos;
173
+ `;
174
+ export const FIELD_FUNCS = /* glsl */ `
175
+ float h21(vec2 p){ return fract(sin(dot(p, vec2(12.9898, 78.233)))*43758.5453); }
176
+ vec2 fieldUV(vec2 p){ return (p - uFExt.xy)/uFExt.zw; }
177
+ vec4 fieldA(vec2 p){ return texture2D(uF0, fieldUV(p)); } // signed distance (em), gD, gO, arc
178
+ vec4 fieldB(vec2 p){ return texture2D(uF1, fieldUV(p)); } // glyphN, width factor, stroke id, 0
179
+ float revealInG(float g){ return uFadeIn > 0.5 ? uD : smoothstep(0.0, max(uSoftIn, 1e-4), uHead - g); }
180
+ float revealOutG(float g){ return uFadeOut > 0.5 ? 1.0 - uE : smoothstep(0.0, max(uSoftOut, 1e-4), g - uErase); }
181
+ float ageG(float g){ return max(0.0, uHead - g)*uDur + uSince; } // seconds since the front passed this pixel
182
+ `;
183
+ export const fieldFrag = (body, extra = '') => /* glsl */ `precision highp float;\n${REVEAL_UNIFORMS}${FIELD_UNIFORMS}${extra}${FIELD_FUNCS}${body}`;
184
+ // A quad over the field extent (em units); the fragment shader gets vPos in em. Premultiplied alpha blending by default.
185
+ export function fieldMaterial(field, fragBody, uniforms, { additive = false, extra = '' } = {}) {
186
+ return new THREE.ShaderMaterial({
187
+ uniforms: { ...uniformsBase(), uF0: { value: field.f0 }, uF1: { value: field.f1 }, uFExt: { value: field.ext }, uFMax: { value: field.maxDist }, ...uniforms },
188
+ vertexShader: /* glsl */ `varying vec2 vPos; void main(){ vPos = position.xy; gl_Position = projectionMatrix*modelViewMatrix*vec4(position, 1.0); }`,
189
+ fragmentShader: fieldFrag(fragBody, extra), transparent: true, depthWrite: false, side: THREE.DoubleSide,
190
+ blending: additive ? THREE.AdditiveBlending : THREE.CustomBlending,
191
+ ...(additive ? {} : { blendEquation: THREE.AddEquation, blendSrc: THREE.OneFactor, blendDst: THREE.OneMinusSrcAlphaFactor }),
192
+ });
193
+ }
194
+ export function fieldQuad(field, material) {
195
+ const e = field.ext;
196
+ const g = new THREE.PlaneGeometry(e.z, e.w);
197
+ g.translate(e.x + e.z / 2, e.y + e.w / 2, 0);
198
+ const m = new THREE.Mesh(g, material);
199
+ m.frustumCulled = false;
200
+ return m;
201
+ }