@aura3d/engine 4.0.2 → 4.0.4

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 (1045) hide show
  1. package/README.md +13 -3
  2. package/dist/animation/AnimationAction.d.ts +55 -1
  3. package/dist/animation/AnimationAction.d.ts.map +1 -1
  4. package/dist/animation/AnimationAction.js +156 -27
  5. package/dist/animation/AnimationAction.js.map +1 -1
  6. package/dist/animation/AnimationController.d.ts +8 -0
  7. package/dist/animation/AnimationController.d.ts.map +1 -1
  8. package/dist/animation/AnimationController.js.map +1 -1
  9. package/dist/animation/AnimationEvents.d.ts +1 -1
  10. package/dist/animation/AnimationEvents.d.ts.map +1 -1
  11. package/dist/animation/AnimationEvents.js +33 -14
  12. package/dist/animation/AnimationEvents.js.map +1 -1
  13. package/dist/animation/AnimationMixer.d.ts +35 -0
  14. package/dist/animation/AnimationMixer.d.ts.map +1 -1
  15. package/dist/animation/AnimationMixer.js +60 -10
  16. package/dist/animation/AnimationMixer.js.map +1 -1
  17. package/dist/animation/AnimationObjectGroup.d.ts +28 -0
  18. package/dist/animation/AnimationObjectGroup.d.ts.map +1 -0
  19. package/dist/animation/AnimationObjectGroup.js +242 -0
  20. package/dist/animation/AnimationObjectGroup.js.map +1 -0
  21. package/dist/animation/AnimationTrack.d.ts +18 -2
  22. package/dist/animation/AnimationTrack.d.ts.map +1 -1
  23. package/dist/animation/AnimationTrack.js +62 -0
  24. package/dist/animation/AnimationTrack.js.map +1 -1
  25. package/dist/animation/AnimationUtils.d.ts +56 -0
  26. package/dist/animation/AnimationUtils.d.ts.map +1 -0
  27. package/dist/animation/AnimationUtils.js +202 -0
  28. package/dist/animation/AnimationUtils.js.map +1 -0
  29. package/dist/animation/PropertyBinding.d.ts +93 -0
  30. package/dist/animation/PropertyBinding.d.ts.map +1 -0
  31. package/dist/animation/PropertyBinding.js +393 -0
  32. package/dist/animation/PropertyBinding.js.map +1 -0
  33. package/dist/animation/SceneAnimationBridge.d.ts +23 -1
  34. package/dist/animation/SceneAnimationBridge.d.ts.map +1 -1
  35. package/dist/animation/SceneAnimationBridge.js +152 -14
  36. package/dist/animation/SceneAnimationBridge.js.map +1 -1
  37. package/dist/animation/browser-index.d.ts +3 -0
  38. package/dist/animation/browser-index.d.ts.map +1 -1
  39. package/dist/animation/browser-index.js +3 -0
  40. package/dist/animation/browser-index.js.map +1 -1
  41. package/dist/animation/index.d.ts +3 -0
  42. package/dist/animation/index.d.ts.map +1 -1
  43. package/dist/animation/index.js +3 -0
  44. package/dist/animation/index.js.map +1 -1
  45. package/dist/animation/pose/blendKernels.d.ts +1 -1
  46. package/dist/animation/pose/blendKernels.d.ts.map +1 -1
  47. package/dist/animation/pose/blendKernels.js +3 -3
  48. package/dist/animation/pose/blendKernels.js.map +1 -1
  49. package/dist/assets/DataTextureLoader.d.ts +16 -0
  50. package/dist/assets/DataTextureLoader.d.ts.map +1 -0
  51. package/dist/assets/DataTextureLoader.js +29 -0
  52. package/dist/assets/DataTextureLoader.js.map +1 -0
  53. package/dist/assets/EXRLoader.d.ts +78 -0
  54. package/dist/assets/EXRLoader.d.ts.map +1 -0
  55. package/dist/assets/EXRLoader.js +1398 -0
  56. package/dist/assets/EXRLoader.js.map +1 -0
  57. package/dist/assets/FileLoader.d.ts +32 -0
  58. package/dist/assets/FileLoader.d.ts.map +1 -0
  59. package/dist/assets/FileLoader.js +79 -0
  60. package/dist/assets/FileLoader.js.map +1 -0
  61. package/dist/assets/GLTFRenderResources.d.ts +9 -0
  62. package/dist/assets/GLTFRenderResources.d.ts.map +1 -1
  63. package/dist/assets/GLTFRenderResources.js +47 -4
  64. package/dist/assets/GLTFRenderResources.js.map +1 -1
  65. package/dist/assets/GLTFSharedTextureCache.d.ts +40 -0
  66. package/dist/assets/GLTFSharedTextureCache.d.ts.map +1 -0
  67. package/dist/assets/GLTFSharedTextureCache.js +68 -0
  68. package/dist/assets/GLTFSharedTextureCache.js.map +1 -0
  69. package/dist/assets/ImageBitmapLoader.d.ts +27 -0
  70. package/dist/assets/ImageBitmapLoader.d.ts.map +1 -0
  71. package/dist/assets/ImageBitmapLoader.js +51 -0
  72. package/dist/assets/ImageBitmapLoader.js.map +1 -0
  73. package/dist/assets/ImageLoader.d.ts.map +1 -1
  74. package/dist/assets/ImageLoader.js +12 -5
  75. package/dist/assets/ImageLoader.js.map +1 -1
  76. package/dist/assets/LoadContext.d.ts +4 -1
  77. package/dist/assets/LoadContext.d.ts.map +1 -1
  78. package/dist/assets/LoadContext.js +7 -2
  79. package/dist/assets/LoadContext.js.map +1 -1
  80. package/dist/assets/LoaderFetch.d.ts +12 -0
  81. package/dist/assets/LoaderFetch.d.ts.map +1 -0
  82. package/dist/assets/LoaderFetch.js +54 -0
  83. package/dist/assets/LoaderFetch.js.map +1 -0
  84. package/dist/assets/TextureLoader.d.ts.map +1 -1
  85. package/dist/assets/TextureLoader.js +3 -1
  86. package/dist/assets/TextureLoader.js.map +1 -1
  87. package/dist/assets/asset-corpus/ProductionGLTFRenderPipeline.d.ts +6 -0
  88. package/dist/assets/asset-corpus/ProductionGLTFRenderPipeline.d.ts.map +1 -1
  89. package/dist/assets/asset-corpus/ProductionGLTFRenderPipeline.js +2 -1
  90. package/dist/assets/asset-corpus/ProductionGLTFRenderPipeline.js.map +1 -1
  91. package/dist/assets/browser-index.d.ts +9 -0
  92. package/dist/assets/browser-index.d.ts.map +1 -1
  93. package/dist/assets/browser-index.js +5 -0
  94. package/dist/assets/browser-index.js.map +1 -1
  95. package/dist/assets/gltf-runtime.d.ts +2 -0
  96. package/dist/assets/gltf-runtime.d.ts.map +1 -1
  97. package/dist/assets/gltf-runtime.js +1 -0
  98. package/dist/assets/gltf-runtime.js.map +1 -1
  99. package/dist/assets/index.d.ts +11 -0
  100. package/dist/assets/index.d.ts.map +1 -1
  101. package/dist/assets/index.js +7 -0
  102. package/dist/assets/index.js.map +1 -1
  103. package/dist/assets/loaders/TextureLoader.d.ts +27 -1
  104. package/dist/assets/loaders/TextureLoader.d.ts.map +1 -1
  105. package/dist/assets/loaders/TextureLoader.js +62 -4
  106. package/dist/assets/loaders/TextureLoader.js.map +1 -1
  107. package/dist/audio/AudioAnalyser.d.ts +42 -0
  108. package/dist/audio/AudioAnalyser.d.ts.map +1 -0
  109. package/dist/audio/AudioAnalyser.js +75 -0
  110. package/dist/audio/AudioAnalyser.js.map +1 -0
  111. package/dist/audio/AudioContextManager.d.ts +6 -0
  112. package/dist/audio/AudioContextManager.d.ts.map +1 -1
  113. package/dist/audio/AudioContextManager.js.map +1 -1
  114. package/dist/audio/AudioListener.d.ts +27 -0
  115. package/dist/audio/AudioListener.d.ts.map +1 -1
  116. package/dist/audio/AudioListener.js +34 -0
  117. package/dist/audio/AudioListener.js.map +1 -1
  118. package/dist/audio/PositionalEmitter.d.ts +58 -2
  119. package/dist/audio/PositionalEmitter.d.ts.map +1 -1
  120. package/dist/audio/PositionalEmitter.js +111 -12
  121. package/dist/audio/PositionalEmitter.js.map +1 -1
  122. package/dist/audio/SpatialAudio.d.ts +24 -0
  123. package/dist/audio/SpatialAudio.d.ts.map +1 -1
  124. package/dist/audio/SpatialAudio.js +31 -2
  125. package/dist/audio/SpatialAudio.js.map +1 -1
  126. package/dist/audio/game-sound/SpatialVoice.d.ts +2 -2
  127. package/dist/audio/game-sound/SpatialVoice.d.ts.map +1 -1
  128. package/dist/audio/game-sound/SpatialVoice.js +1 -1
  129. package/dist/audio/index.d.ts +5 -3
  130. package/dist/audio/index.d.ts.map +1 -1
  131. package/dist/audio/index.js +2 -1
  132. package/dist/audio/index.js.map +1 -1
  133. package/dist/aura3d-cli/codemods/camera-cast.d.ts +34 -0
  134. package/dist/aura3d-cli/codemods/camera-cast.d.ts.map +1 -0
  135. package/dist/aura3d-cli/codemods/camera-cast.js +259 -0
  136. package/dist/aura3d-cli/codemods/camera-cast.js.map +1 -0
  137. package/dist/aura3d-cli/codemods/core-v2.d.ts +55 -0
  138. package/dist/aura3d-cli/codemods/core-v2.d.ts.map +1 -0
  139. package/dist/aura3d-cli/codemods/core-v2.js +371 -0
  140. package/dist/aura3d-cli/codemods/core-v2.js.map +1 -0
  141. package/dist/aura3d-cli/codemods/engine-entry-imports.js +3 -3
  142. package/dist/aura3d-cli/codemods/engine-entry-imports.js.map +1 -1
  143. package/dist/aura3d-cli/codemods/post-v2.d.ts +88 -0
  144. package/dist/aura3d-cli/codemods/post-v2.d.ts.map +1 -0
  145. package/dist/aura3d-cli/codemods/post-v2.js +379 -0
  146. package/dist/aura3d-cli/codemods/post-v2.js.map +1 -0
  147. package/dist/aura3d-cli/commands/prd01/index.js +1 -1
  148. package/dist/aura3d-cli/commands/prd01/index.js.map +1 -1
  149. package/dist/aura3d-cli/commands/prd02/environmentsBake.d.ts.map +1 -1
  150. package/dist/aura3d-cli/commands/prd02/environmentsBake.js +1 -1
  151. package/dist/aura3d-cli/commands/prd02/environmentsBake.js.map +1 -1
  152. package/dist/aura3d-cli/commands/prd03/index.d.ts +4 -2
  153. package/dist/aura3d-cli/commands/prd03/index.d.ts.map +1 -1
  154. package/dist/aura3d-cli/commands/prd03/index.js +4 -2
  155. package/dist/aura3d-cli/commands/prd03/index.js.map +1 -1
  156. package/dist/aura3d-cli/commands/prd08/feelLint.js +1 -1
  157. package/dist/aura3d-cli/commands/prd08/feelLint.js.map +1 -1
  158. package/dist/aura3d-cli/commands/prd08/index.js +1 -1
  159. package/dist/aura3d-cli/commands/prd08/index.js.map +1 -1
  160. package/dist/aura3d-cli/commands/prd10/index.js +8 -1
  161. package/dist/aura3d-cli/commands/prd10/index.js.map +1 -1
  162. package/dist/aura3d-cli/lint/feelSourceScan.d.ts +20 -0
  163. package/dist/aura3d-cli/lint/feelSourceScan.d.ts.map +1 -0
  164. package/dist/aura3d-cli/lint/feelSourceScan.js +91 -0
  165. package/dist/aura3d-cli/lint/feelSourceScan.js.map +1 -0
  166. package/dist/aura3d-cli/look/lint-static.js +1 -1
  167. package/dist/aura3d-cli/look/lint-static.js.map +1 -1
  168. package/dist/aura3d-cli/migrate-three/CompatibilityWarnings.d.ts.map +1 -1
  169. package/dist/aura3d-cli/migrate-three/CompatibilityWarnings.js +57 -12
  170. package/dist/aura3d-cli/migrate-three/CompatibilityWarnings.js.map +1 -1
  171. package/dist/aura3d-cli/migrate-three/ImportMap.d.ts +36 -12
  172. package/dist/aura3d-cli/migrate-three/ImportMap.d.ts.map +1 -1
  173. package/dist/aura3d-cli/migrate-three/ImportMap.js +120 -22
  174. package/dist/aura3d-cli/migrate-three/ImportMap.js.map +1 -1
  175. package/dist/aura3d-cli/migrate-three/ThreeToA3DAdapter.d.ts.map +1 -1
  176. package/dist/aura3d-cli/migrate-three/ThreeToA3DAdapter.js +3 -1
  177. package/dist/aura3d-cli/migrate-three/ThreeToA3DAdapter.js.map +1 -1
  178. package/dist/aura3d-cli/migrate-three/emit.d.ts +14 -1
  179. package/dist/aura3d-cli/migrate-three/emit.d.ts.map +1 -1
  180. package/dist/aura3d-cli/migrate-three/emit.js +670 -23
  181. package/dist/aura3d-cli/migrate-three/emit.js.map +1 -1
  182. package/dist/aura3d-cli/migrate-three/mappings.d.ts +24 -2
  183. package/dist/aura3d-cli/migrate-three/mappings.d.ts.map +1 -1
  184. package/dist/aura3d-cli/migrate-three/mappings.js +259 -12
  185. package/dist/aura3d-cli/migrate-three/mappings.js.map +1 -1
  186. package/dist/aura3d-cli/migrate-three/parse.d.ts +2 -0
  187. package/dist/aura3d-cli/migrate-three/parse.d.ts.map +1 -1
  188. package/dist/aura3d-cli/migrate-three/parse.js +134 -19
  189. package/dist/aura3d-cli/migrate-three/parse.js.map +1 -1
  190. package/dist/aura3d-cli/migrate-three/report.d.ts +1 -0
  191. package/dist/aura3d-cli/migrate-three/report.d.ts.map +1 -1
  192. package/dist/aura3d-cli/migrate-three/report.js +1 -1
  193. package/dist/aura3d-cli/migrate-three/report.js.map +1 -1
  194. package/dist/create-aura3d/index.js +1 -1
  195. package/dist/create-aura3d/showcase-spec-artifacts.d.ts +1 -1
  196. package/dist/engine/agent-api/AnimationMixerBuilders.d.ts +4 -0
  197. package/dist/engine/agent-api/AnimationMixerBuilders.d.ts.map +1 -1
  198. package/dist/engine/agent-api/AnimationMixerBuilders.js +17 -7
  199. package/dist/engine/agent-api/AnimationMixerBuilders.js.map +1 -1
  200. package/dist/engine/agent-api/Clock.d.ts +37 -0
  201. package/dist/engine/agent-api/Clock.d.ts.map +1 -0
  202. package/dist/engine/agent-api/Clock.js +67 -0
  203. package/dist/engine/agent-api/Clock.js.map +1 -0
  204. package/dist/engine/agent-api/RootGeometry.d.ts +124 -4
  205. package/dist/engine/agent-api/RootGeometry.d.ts.map +1 -1
  206. package/dist/engine/agent-api/RootGeometry.js +426 -19
  207. package/dist/engine/agent-api/RootGeometry.js.map +1 -1
  208. package/dist/engine/agent-api/RuntimeNodeHandle.d.ts +14 -0
  209. package/dist/engine/agent-api/RuntimeNodeHandle.d.ts.map +1 -1
  210. package/dist/engine/agent-api/RuntimeNodeHandle.js +22 -0
  211. package/dist/engine/agent-api/RuntimeNodeHandle.js.map +1 -1
  212. package/dist/engine/agent-api/SceneQueries.d.ts +67 -1
  213. package/dist/engine/agent-api/SceneQueries.d.ts.map +1 -1
  214. package/dist/engine/agent-api/SceneQueries.js +211 -5
  215. package/dist/engine/agent-api/SceneQueries.js.map +1 -1
  216. package/dist/engine/agent-api/app/actorAnimationHandle.d.ts +44 -0
  217. package/dist/engine/agent-api/app/actorAnimationHandle.d.ts.map +1 -1
  218. package/dist/engine/agent-api/app/actorAnimationHandle.js +98 -0
  219. package/dist/engine/agent-api/app/actorAnimationHandle.js.map +1 -1
  220. package/dist/engine/agent-api/app/createAuraApp.d.ts.map +1 -1
  221. package/dist/engine/agent-api/app/createAuraApp.js +93 -0
  222. package/dist/engine/agent-api/app/createAuraApp.js.map +1 -1
  223. package/dist/engine/agent-api/app/frameLoop.d.ts.map +1 -1
  224. package/dist/engine/agent-api/app/frameLoop.js +4 -0
  225. package/dist/engine/agent-api/app/frameLoop.js.map +1 -1
  226. package/dist/engine/agent-api/app/routeState.d.ts +1 -0
  227. package/dist/engine/agent-api/app/routeState.d.ts.map +1 -1
  228. package/dist/engine/agent-api/app/routeState.js +14 -0
  229. package/dist/engine/agent-api/app/routeState.js.map +1 -1
  230. package/dist/engine/agent-api/app/runtimeNodes.d.ts +7 -0
  231. package/dist/engine/agent-api/app/runtimeNodes.d.ts.map +1 -1
  232. package/dist/engine/agent-api/app/runtimeNodes.js +340 -12
  233. package/dist/engine/agent-api/app/runtimeNodes.js.map +1 -1
  234. package/dist/engine/agent-api/assetEvents.d.ts +25 -0
  235. package/dist/engine/agent-api/assetEvents.d.ts.map +1 -0
  236. package/dist/engine/agent-api/assetEvents.js +36 -0
  237. package/dist/engine/agent-api/assetEvents.js.map +1 -0
  238. package/dist/engine/agent-api/camera/Spline.d.ts +10 -4
  239. package/dist/engine/agent-api/camera/Spline.d.ts.map +1 -1
  240. package/dist/engine/agent-api/camera/Spline.js +28 -101
  241. package/dist/engine/agent-api/camera/Spline.js.map +1 -1
  242. package/dist/engine/agent-api/characters/clone.d.ts +55 -0
  243. package/dist/engine/agent-api/characters/clone.d.ts.map +1 -0
  244. package/dist/engine/agent-api/characters/clone.js +99 -0
  245. package/dist/engine/agent-api/characters/clone.js.map +1 -0
  246. package/dist/engine/agent-api/color.d.ts.map +1 -1
  247. package/dist/engine/agent-api/color.js +4 -18
  248. package/dist/engine/agent-api/color.js.map +1 -1
  249. package/dist/engine/agent-api/compiler/actors.d.ts.map +1 -1
  250. package/dist/engine/agent-api/compiler/actors.js +19 -7
  251. package/dist/engine/agent-api/compiler/actors.js.map +1 -1
  252. package/dist/engine/agent-api/compiler/animation.d.ts.map +1 -1
  253. package/dist/engine/agent-api/compiler/animation.js +8 -1
  254. package/dist/engine/agent-api/compiler/animation.js.map +1 -1
  255. package/dist/engine/agent-api/compiler/backgroundImage.d.ts +24 -0
  256. package/dist/engine/agent-api/compiler/backgroundImage.d.ts.map +1 -0
  257. package/dist/engine/agent-api/compiler/backgroundImage.js +134 -0
  258. package/dist/engine/agent-api/compiler/backgroundImage.js.map +1 -0
  259. package/dist/engine/agent-api/compiler/compileScene.d.ts.map +1 -1
  260. package/dist/engine/agent-api/compiler/compileScene.js +7 -2
  261. package/dist/engine/agent-api/compiler/compileScene.js.map +1 -1
  262. package/dist/engine/agent-api/compiler/customMaterial.d.ts +80 -0
  263. package/dist/engine/agent-api/compiler/customMaterial.d.ts.map +1 -0
  264. package/dist/engine/agent-api/compiler/customMaterial.js +628 -0
  265. package/dist/engine/agent-api/compiler/customMaterial.js.map +1 -0
  266. package/dist/engine/agent-api/compiler/environment.d.ts +1 -1
  267. package/dist/engine/agent-api/compiler/environment.d.ts.map +1 -1
  268. package/dist/engine/agent-api/compiler/environment.js +10 -5
  269. package/dist/engine/agent-api/compiler/environment.js.map +1 -1
  270. package/dist/engine/agent-api/compiler/environmentSourcesState.d.ts +15 -0
  271. package/dist/engine/agent-api/compiler/environmentSourcesState.d.ts.map +1 -0
  272. package/dist/engine/agent-api/compiler/environmentSourcesState.js +13 -0
  273. package/dist/engine/agent-api/compiler/environmentSourcesState.js.map +1 -0
  274. package/dist/engine/agent-api/compiler/errors.d.ts +1 -1
  275. package/dist/engine/agent-api/compiler/errors.d.ts.map +1 -1
  276. package/dist/engine/agent-api/compiler/errors.js.map +1 -1
  277. package/dist/engine/agent-api/compiler/geometry.d.ts +20 -5
  278. package/dist/engine/agent-api/compiler/geometry.d.ts.map +1 -1
  279. package/dist/engine/agent-api/compiler/geometry.js +34 -8
  280. package/dist/engine/agent-api/compiler/geometry.js.map +1 -1
  281. package/dist/engine/agent-api/compiler/handlers.d.ts.map +1 -1
  282. package/dist/engine/agent-api/compiler/handlers.js +35 -1
  283. package/dist/engine/agent-api/compiler/handlers.js.map +1 -1
  284. package/dist/engine/agent-api/compiler/lensFlare.d.ts +21 -0
  285. package/dist/engine/agent-api/compiler/lensFlare.d.ts.map +1 -0
  286. package/dist/engine/agent-api/compiler/lensFlare.js +173 -0
  287. package/dist/engine/agent-api/compiler/lensFlare.js.map +1 -0
  288. package/dist/engine/agent-api/compiler/lights.d.ts.map +1 -1
  289. package/dist/engine/agent-api/compiler/lights.js +23 -0
  290. package/dist/engine/agent-api/compiler/lights.js.map +1 -1
  291. package/dist/engine/agent-api/compiler/lines.d.ts +23 -0
  292. package/dist/engine/agent-api/compiler/lines.d.ts.map +1 -0
  293. package/dist/engine/agent-api/compiler/lines.js +520 -0
  294. package/dist/engine/agent-api/compiler/lines.js.map +1 -0
  295. package/dist/engine/agent-api/compiler/modelMaterials.d.ts.map +1 -1
  296. package/dist/engine/agent-api/compiler/modelMaterials.js +11 -0
  297. package/dist/engine/agent-api/compiler/modelMaterials.js.map +1 -1
  298. package/dist/engine/agent-api/compiler/observations.d.ts +7 -0
  299. package/dist/engine/agent-api/compiler/observations.d.ts.map +1 -1
  300. package/dist/engine/agent-api/compiler/observations.js +33 -1
  301. package/dist/engine/agent-api/compiler/observations.js.map +1 -1
  302. package/dist/engine/agent-api/compiler/paritySurfaces.d.ts +37 -0
  303. package/dist/engine/agent-api/compiler/paritySurfaces.d.ts.map +1 -0
  304. package/dist/engine/agent-api/compiler/paritySurfaces.js +310 -0
  305. package/dist/engine/agent-api/compiler/paritySurfaces.js.map +1 -0
  306. package/dist/engine/agent-api/compiler/postprocess.d.ts.map +1 -1
  307. package/dist/engine/agent-api/compiler/postprocess.js +6 -3
  308. package/dist/engine/agent-api/compiler/postprocess.js.map +1 -1
  309. package/dist/engine/agent-api/compiler/primitives.d.ts +22 -3
  310. package/dist/engine/agent-api/compiler/primitives.d.ts.map +1 -1
  311. package/dist/engine/agent-api/compiler/primitives.js +320 -57
  312. package/dist/engine/agent-api/compiler/primitives.js.map +1 -1
  313. package/dist/engine/agent-api/compiler/renderInput.d.ts.map +1 -1
  314. package/dist/engine/agent-api/compiler/renderInput.js +42 -5
  315. package/dist/engine/agent-api/compiler/renderInput.js.map +1 -1
  316. package/dist/engine/agent-api/compiler/renderer.d.ts.map +1 -1
  317. package/dist/engine/agent-api/compiler/renderer.js +44 -6
  318. package/dist/engine/agent-api/compiler/renderer.js.map +1 -1
  319. package/dist/engine/agent-api/compiler/textures.d.ts +64 -2
  320. package/dist/engine/agent-api/compiler/textures.d.ts.map +1 -1
  321. package/dist/engine/agent-api/compiler/textures.js +257 -21
  322. package/dist/engine/agent-api/compiler/textures.js.map +1 -1
  323. package/dist/engine/agent-api/devtools/routeHealth.d.ts +12 -1
  324. package/dist/engine/agent-api/devtools/routeHealth.d.ts.map +1 -1
  325. package/dist/engine/agent-api/devtools/routeHealth.js +3 -3
  326. package/dist/engine/agent-api/devtools/routeHealth.js.map +1 -1
  327. package/dist/engine/agent-api/index.d.ts +33 -5
  328. package/dist/engine/agent-api/index.d.ts.map +1 -1
  329. package/dist/engine/agent-api/index.js +19 -3
  330. package/dist/engine/agent-api/index.js.map +1 -1
  331. package/dist/engine/agent-api/lodMarkers.d.ts +23 -0
  332. package/dist/engine/agent-api/lodMarkers.d.ts.map +1 -0
  333. package/dist/engine/agent-api/lodMarkers.js +33 -0
  334. package/dist/engine/agent-api/lodMarkers.js.map +1 -0
  335. package/dist/engine/agent-api/nodes/batched.d.ts +96 -0
  336. package/dist/engine/agent-api/nodes/batched.d.ts.map +1 -0
  337. package/dist/engine/agent-api/nodes/batched.js +456 -0
  338. package/dist/engine/agent-api/nodes/batched.js.map +1 -0
  339. package/dist/engine/agent-api/nodes/batchedState.d.ts +137 -0
  340. package/dist/engine/agent-api/nodes/batchedState.d.ts.map +1 -0
  341. package/dist/engine/agent-api/nodes/batchedState.js +435 -0
  342. package/dist/engine/agent-api/nodes/batchedState.js.map +1 -0
  343. package/dist/engine/agent-api/nodes/builder.d.ts.map +1 -1
  344. package/dist/engine/agent-api/nodes/builder.js +0 -3
  345. package/dist/engine/agent-api/nodes/builder.js.map +1 -1
  346. package/dist/engine/agent-api/nodes/camera.d.ts.map +1 -1
  347. package/dist/engine/agent-api/nodes/camera.js +2 -1
  348. package/dist/engine/agent-api/nodes/camera.js.map +1 -1
  349. package/dist/engine/agent-api/nodes/cameras.d.ts +114 -0
  350. package/dist/engine/agent-api/nodes/cameras.d.ts.map +1 -0
  351. package/dist/engine/agent-api/nodes/cameras.js +107 -0
  352. package/dist/engine/agent-api/nodes/cameras.js.map +1 -0
  353. package/dist/engine/agent-api/nodes/compute.d.ts +48 -0
  354. package/dist/engine/agent-api/nodes/compute.d.ts.map +1 -0
  355. package/dist/engine/agent-api/nodes/compute.js +73 -0
  356. package/dist/engine/agent-api/nodes/compute.js.map +1 -0
  357. package/dist/engine/agent-api/nodes/effects.composite.d.ts +3 -2
  358. package/dist/engine/agent-api/nodes/effects.composite.d.ts.map +1 -1
  359. package/dist/engine/agent-api/nodes/effects.post.d.ts +35 -0
  360. package/dist/engine/agent-api/nodes/effects.post.d.ts.map +1 -1
  361. package/dist/engine/agent-api/nodes/effects.post.js +69 -0
  362. package/dist/engine/agent-api/nodes/effects.post.js.map +1 -1
  363. package/dist/engine/agent-api/nodes/environments.composite.d.ts.map +1 -1
  364. package/dist/engine/agent-api/nodes/environments.d.ts +1 -1
  365. package/dist/engine/agent-api/nodes/environments.js +1 -1
  366. package/dist/engine/agent-api/nodes/environments.js.map +1 -1
  367. package/dist/engine/agent-api/nodes/game/instanceTransforms.d.ts +19 -6
  368. package/dist/engine/agent-api/nodes/game/instanceTransforms.d.ts.map +1 -1
  369. package/dist/engine/agent-api/nodes/game/instanceTransforms.js +31 -9
  370. package/dist/engine/agent-api/nodes/game/instanceTransforms.js.map +1 -1
  371. package/dist/engine/agent-api/nodes/geometry.d.ts +28 -1
  372. package/dist/engine/agent-api/nodes/geometry.d.ts.map +1 -1
  373. package/dist/engine/agent-api/nodes/geometry.js +62 -2
  374. package/dist/engine/agent-api/nodes/geometry.js.map +1 -1
  375. package/dist/engine/agent-api/nodes/groups.d.ts +8 -1
  376. package/dist/engine/agent-api/nodes/groups.d.ts.map +1 -1
  377. package/dist/engine/agent-api/nodes/groups.js +28 -0
  378. package/dist/engine/agent-api/nodes/groups.js.map +1 -1
  379. package/dist/engine/agent-api/nodes/helpers.d.ts +100 -0
  380. package/dist/engine/agent-api/nodes/helpers.d.ts.map +1 -0
  381. package/dist/engine/agent-api/nodes/helpers.js +254 -0
  382. package/dist/engine/agent-api/nodes/helpers.js.map +1 -0
  383. package/dist/engine/agent-api/nodes/instancedMesh.d.ts +87 -0
  384. package/dist/engine/agent-api/nodes/instancedMesh.d.ts.map +1 -0
  385. package/dist/engine/agent-api/nodes/instancedMesh.js +156 -0
  386. package/dist/engine/agent-api/nodes/instancedMesh.js.map +1 -0
  387. package/dist/engine/agent-api/nodes/instances.d.ts +49 -1
  388. package/dist/engine/agent-api/nodes/instances.d.ts.map +1 -1
  389. package/dist/engine/agent-api/nodes/instances.js +21 -0
  390. package/dist/engine/agent-api/nodes/instances.js.map +1 -1
  391. package/dist/engine/agent-api/nodes/lensFlare.d.ts +126 -0
  392. package/dist/engine/agent-api/nodes/lensFlare.d.ts.map +1 -0
  393. package/dist/engine/agent-api/nodes/lensFlare.js +184 -0
  394. package/dist/engine/agent-api/nodes/lensFlare.js.map +1 -0
  395. package/dist/engine/agent-api/nodes/lights.d.ts +34 -0
  396. package/dist/engine/agent-api/nodes/lights.d.ts.map +1 -1
  397. package/dist/engine/agent-api/nodes/lights.js +27 -0
  398. package/dist/engine/agent-api/nodes/lights.js.map +1 -1
  399. package/dist/engine/agent-api/nodes/lines.d.ts +69 -0
  400. package/dist/engine/agent-api/nodes/lines.d.ts.map +1 -0
  401. package/dist/engine/agent-api/nodes/lines.js +136 -0
  402. package/dist/engine/agent-api/nodes/lines.js.map +1 -0
  403. package/dist/engine/agent-api/nodes/material.d.ts +9 -1
  404. package/dist/engine/agent-api/nodes/material.d.ts.map +1 -1
  405. package/dist/engine/agent-api/nodes/material.js +12 -0
  406. package/dist/engine/agent-api/nodes/material.js.map +1 -1
  407. package/dist/engine/agent-api/nodes/overrideMaterial.d.ts +18 -0
  408. package/dist/engine/agent-api/nodes/overrideMaterial.d.ts.map +1 -0
  409. package/dist/engine/agent-api/nodes/overrideMaterial.js +43 -0
  410. package/dist/engine/agent-api/nodes/overrideMaterial.js.map +1 -0
  411. package/dist/engine/agent-api/nodes/points.d.ts +29 -0
  412. package/dist/engine/agent-api/nodes/points.d.ts.map +1 -0
  413. package/dist/engine/agent-api/nodes/points.js +34 -0
  414. package/dist/engine/agent-api/nodes/points.js.map +1 -0
  415. package/dist/engine/agent-api/nodes/primitives.d.ts +11 -0
  416. package/dist/engine/agent-api/nodes/primitives.d.ts.map +1 -1
  417. package/dist/engine/agent-api/nodes/primitives.js +55 -1
  418. package/dist/engine/agent-api/nodes/primitives.js.map +1 -1
  419. package/dist/engine/agent-api/nodes/prompt/promptPlanV2.d.ts.map +1 -1
  420. package/dist/engine/agent-api/nodes/prompt/promptPlanV2.js +6 -2
  421. package/dist/engine/agent-api/nodes/prompt/promptPlanV2.js.map +1 -1
  422. package/dist/engine/agent-api/nodes/prompt/promptRecipes.d.ts.map +1 -1
  423. package/dist/engine/agent-api/nodes/prompt/promptRecipes.js +7 -1
  424. package/dist/engine/agent-api/nodes/prompt/promptRecipes.js.map +1 -1
  425. package/dist/engine/agent-api/nodes/scene.d.ts +22 -3
  426. package/dist/engine/agent-api/nodes/scene.d.ts.map +1 -1
  427. package/dist/engine/agent-api/nodes/scene.js +41 -2
  428. package/dist/engine/agent-api/nodes/scene.js.map +1 -1
  429. package/dist/engine/agent-api/nodes/sprites.d.ts +29 -0
  430. package/dist/engine/agent-api/nodes/sprites.d.ts.map +1 -0
  431. package/dist/engine/agent-api/nodes/sprites.js +43 -0
  432. package/dist/engine/agent-api/nodes/sprites.js.map +1 -0
  433. package/dist/engine/agent-api/nodes/surfaces.d.ts +48 -0
  434. package/dist/engine/agent-api/nodes/surfaces.d.ts.map +1 -0
  435. package/dist/engine/agent-api/nodes/surfaces.js +32 -0
  436. package/dist/engine/agent-api/nodes/surfaces.js.map +1 -0
  437. package/dist/engine/agent-api/nodes/texture.d.ts +114 -0
  438. package/dist/engine/agent-api/nodes/texture.d.ts.map +1 -0
  439. package/dist/engine/agent-api/nodes/texture.js +590 -0
  440. package/dist/engine/agent-api/nodes/texture.js.map +1 -0
  441. package/dist/engine/agent-api/nodes/types/runtime.d.ts +91 -4
  442. package/dist/engine/agent-api/nodes/types/runtime.d.ts.map +1 -1
  443. package/dist/engine/agent-api/nodes/types.d.ts +387 -4
  444. package/dist/engine/agent-api/nodes/types.d.ts.map +1 -1
  445. package/dist/engine/agent-api/postBridge.d.ts +7 -0
  446. package/dist/engine/agent-api/postBridge.d.ts.map +1 -1
  447. package/dist/engine/agent-api/postBridge.js +63 -5
  448. package/dist/engine/agent-api/postBridge.js.map +1 -1
  449. package/dist/engine/agent-api/public/devtools.d.ts +1 -0
  450. package/dist/engine/agent-api/public/devtools.d.ts.map +1 -1
  451. package/dist/engine/agent-api/public/devtools.js.map +1 -1
  452. package/dist/engine/agent-api/publishedUnion.d.ts +137 -1
  453. package/dist/engine/agent-api/publishedUnion.d.ts.map +1 -1
  454. package/dist/engine/agent-api/publishedUnion.js +109 -0
  455. package/dist/engine/agent-api/publishedUnion.js.map +1 -1
  456. package/dist/engine/agent-api/runtimeEvidence.d.ts +10 -0
  457. package/dist/engine/agent-api/runtimeEvidence.d.ts.map +1 -1
  458. package/dist/engine/agent-api/runtimeEvidence.js +18 -1
  459. package/dist/engine/agent-api/runtimeEvidence.js.map +1 -1
  460. package/dist/engine/agent-api/sceneMath.d.ts +2 -2
  461. package/dist/engine/agent-api/sceneMath.d.ts.map +1 -1
  462. package/dist/engine/agent-api/sceneMath.js +8 -5
  463. package/dist/engine/agent-api/sceneMath.js.map +1 -1
  464. package/dist/engine/agent-api/sceneMath.lookLowering.d.ts +14 -0
  465. package/dist/engine/agent-api/sceneMath.lookLowering.d.ts.map +1 -0
  466. package/dist/engine/agent-api/sceneMath.lookLowering.js +8 -0
  467. package/dist/engine/agent-api/sceneMath.lookLowering.js.map +1 -0
  468. package/dist/engine/agent-api/stereoMath.d.ts +45 -0
  469. package/dist/engine/agent-api/stereoMath.d.ts.map +1 -0
  470. package/dist/engine/agent-api/stereoMath.js +78 -0
  471. package/dist/engine/agent-api/stereoMath.js.map +1 -0
  472. package/dist/engine/agent-api/vfx/atmosphere-api.d.ts +13 -0
  473. package/dist/engine/agent-api/vfx/atmosphere-api.d.ts.map +1 -1
  474. package/dist/engine/agent-api/vfx/atmosphere-api.js +19 -0
  475. package/dist/engine/agent-api/vfx/atmosphere-api.js.map +1 -1
  476. package/dist/engine/agent-api/world/kits.d.ts +1 -1
  477. package/dist/engine/agent-api/world/placement.js.map +1 -1
  478. package/dist/engine/agent-api/world/spline.d.ts +7 -22
  479. package/dist/engine/agent-api/world/spline.d.ts.map +1 -1
  480. package/dist/engine/agent-api/world/spline.js +30 -24
  481. package/dist/engine/agent-api/world/spline.js.map +1 -1
  482. package/dist/engine/agent-api/xr/index.d.ts +18 -0
  483. package/dist/engine/agent-api/xr/index.d.ts.map +1 -0
  484. package/dist/engine/agent-api/xr/index.js +15 -0
  485. package/dist/engine/agent-api/xr/index.js.map +1 -0
  486. package/dist/engine/agent-api/xr/types.d.ts +85 -0
  487. package/dist/engine/agent-api/xr/types.d.ts.map +1 -0
  488. package/dist/engine/agent-api/xr/types.js +2 -0
  489. package/dist/engine/agent-api/xr/types.js.map +1 -0
  490. package/dist/engine/agent-api/xr/xrButton.d.ts +50 -0
  491. package/dist/engine/agent-api/xr/xrButton.d.ts.map +1 -0
  492. package/dist/engine/agent-api/xr/xrButton.js +93 -0
  493. package/dist/engine/agent-api/xr/xrButton.js.map +1 -0
  494. package/dist/engine/agent-api/xr/xrRuntime.d.ts +40 -0
  495. package/dist/engine/agent-api/xr/xrRuntime.d.ts.map +1 -0
  496. package/dist/engine/agent-api/xr/xrRuntime.js +236 -0
  497. package/dist/engine/agent-api/xr/xrRuntime.js.map +1 -0
  498. package/dist/engine/agent-api/xr/xrViewOverride.d.ts +35 -0
  499. package/dist/engine/agent-api/xr/xrViewOverride.d.ts.map +1 -0
  500. package/dist/engine/agent-api/xr/xrViewOverride.js +99 -0
  501. package/dist/engine/agent-api/xr/xrViewOverride.js.map +1 -0
  502. package/dist/engine/contracts/animation.d.ts +18 -0
  503. package/dist/engine/contracts/animation.d.ts.map +1 -1
  504. package/dist/engine/contracts/animation.js +4 -1
  505. package/dist/engine/contracts/animation.js.map +1 -1
  506. package/dist/engine/contracts/compiler.d.ts +5 -0
  507. package/dist/engine/contracts/compiler.d.ts.map +1 -1
  508. package/dist/engine/contracts/compiler.js.map +1 -1
  509. package/dist/engine/contracts/flags.d.ts.map +1 -1
  510. package/dist/engine/contracts/flags.js +19 -2
  511. package/dist/engine/contracts/flags.js.map +1 -1
  512. package/dist/engine/contracts/post.d.ts +12 -0
  513. package/dist/engine/contracts/post.d.ts.map +1 -1
  514. package/dist/engine/contracts/post.js.map +1 -1
  515. package/dist/engine/index.d.ts +1 -0
  516. package/dist/engine/index.d.ts.map +1 -1
  517. package/dist/engine/index.js +5 -0
  518. package/dist/engine/index.js.map +1 -1
  519. package/dist/engine/lanes/prd02.d.ts +1 -0
  520. package/dist/engine/lanes/prd02.d.ts.map +1 -1
  521. package/dist/engine/lanes/prd02.js +15 -0
  522. package/dist/engine/lanes/prd02.js.map +1 -1
  523. package/dist/engine/lanes/prd06.d.ts.map +1 -1
  524. package/dist/engine/lanes/prd06.js +21 -2
  525. package/dist/engine/lanes/prd06.js.map +1 -1
  526. package/dist/engine/lanes/prd13.d.ts.map +1 -1
  527. package/dist/engine/lanes/prd13.js +4 -1
  528. package/dist/engine/lanes/prd13.js.map +1 -1
  529. package/dist/engine/production-runtime/TypedGLBActor.d.ts +8 -1
  530. package/dist/engine/production-runtime/TypedGLBActor.d.ts.map +1 -1
  531. package/dist/engine/production-runtime/TypedGLBActor.js +4 -3
  532. package/dist/engine/production-runtime/TypedGLBActor.js.map +1 -1
  533. package/dist/engine/production-runtime/actor/TypedGLBActorAnimation.d.ts +5 -1
  534. package/dist/engine/production-runtime/actor/TypedGLBActorAnimation.d.ts.map +1 -1
  535. package/dist/engine/production-runtime/actor/TypedGLBActorAnimation.js +10 -6
  536. package/dist/engine/production-runtime/actor/TypedGLBActorAnimation.js.map +1 -1
  537. package/dist/engine/production-runtime/effects/EffectNodeLowering.d.ts +19 -1
  538. package/dist/engine/production-runtime/effects/EffectNodeLowering.d.ts.map +1 -1
  539. package/dist/engine/production-runtime/effects/EffectNodeLowering.js +39 -25
  540. package/dist/engine/production-runtime/effects/EffectNodeLowering.js.map +1 -1
  541. package/dist/engine/production-runtime/effects/ProductionEffectSystem.d.ts +5 -0
  542. package/dist/engine/production-runtime/effects/ProductionEffectSystem.d.ts.map +1 -1
  543. package/dist/engine/production-runtime/effects/ProductionEffectSystem.js +79 -8
  544. package/dist/engine/production-runtime/effects/ProductionEffectSystem.js.map +1 -1
  545. package/dist/engine/public/index.d.ts +6 -2
  546. package/dist/engine/public/index.d.ts.map +1 -1
  547. package/dist/engine/public/index.js +5 -1
  548. package/dist/engine/public/index.js.map +1 -1
  549. package/dist/engine/public/renderTarget.d.ts +14 -0
  550. package/dist/engine/public/renderTarget.d.ts.map +1 -0
  551. package/dist/engine/public/renderTarget.js +13 -0
  552. package/dist/engine/public/renderTarget.js.map +1 -0
  553. package/dist/engine/public/renderer.d.ts +4 -0
  554. package/dist/engine/public/renderer.d.ts.map +1 -1
  555. package/dist/engine/public/renderer.js +8 -0
  556. package/dist/engine/public/renderer.js.map +1 -1
  557. package/dist/input/WebXRSessionController.d.ts +43 -0
  558. package/dist/input/WebXRSessionController.d.ts.map +1 -1
  559. package/dist/input/WebXRSessionController.js +8 -0
  560. package/dist/input/WebXRSessionController.js.map +1 -1
  561. package/dist/input/index.d.ts +1 -15
  562. package/dist/input/index.d.ts.map +1 -1
  563. package/dist/input/index.js +0 -7
  564. package/dist/input/index.js.map +1 -1
  565. package/dist/math/Box3.d.ts +50 -0
  566. package/dist/math/Box3.d.ts.map +1 -1
  567. package/dist/math/Box3.js +177 -6
  568. package/dist/math/Box3.js.map +1 -1
  569. package/dist/math/Capsule.d.ts +25 -0
  570. package/dist/math/Capsule.d.ts.map +1 -0
  571. package/dist/math/Capsule.js +54 -0
  572. package/dist/math/Capsule.js.map +1 -0
  573. package/dist/math/Color.d.ts +27 -0
  574. package/dist/math/Color.d.ts.map +1 -1
  575. package/dist/math/Color.js +87 -0
  576. package/dist/math/Color.js.map +1 -1
  577. package/dist/math/ConvexHull.d.ts +100 -0
  578. package/dist/math/ConvexHull.d.ts.map +1 -0
  579. package/dist/math/ConvexHull.js +578 -0
  580. package/dist/math/ConvexHull.js.map +1 -0
  581. package/dist/math/Curves.d.ts +59 -18
  582. package/dist/math/Curves.d.ts.map +1 -1
  583. package/dist/math/Curves.js +15 -73
  584. package/dist/math/Curves.js.map +1 -1
  585. package/dist/math/Cylindrical.d.ts +19 -0
  586. package/dist/math/Cylindrical.d.ts.map +1 -0
  587. package/dist/math/Cylindrical.js +40 -0
  588. package/dist/math/Cylindrical.js.map +1 -0
  589. package/dist/math/Euler.d.ts +24 -0
  590. package/dist/math/Euler.d.ts.map +1 -1
  591. package/dist/math/Euler.js +126 -2
  592. package/dist/math/Euler.js.map +1 -1
  593. package/dist/math/Frustum.d.ts +18 -0
  594. package/dist/math/Frustum.d.ts.map +1 -1
  595. package/dist/math/Frustum.js +62 -12
  596. package/dist/math/Frustum.js.map +1 -1
  597. package/dist/math/Line3.d.ts +38 -0
  598. package/dist/math/Line3.d.ts.map +1 -0
  599. package/dist/math/Line3.js +122 -0
  600. package/dist/math/Line3.js.map +1 -0
  601. package/dist/math/MathUtils.d.ts +37 -0
  602. package/dist/math/MathUtils.d.ts.map +1 -0
  603. package/dist/math/MathUtils.js +105 -0
  604. package/dist/math/MathUtils.js.map +1 -0
  605. package/dist/math/Matrix3.d.ts +23 -2
  606. package/dist/math/Matrix3.d.ts.map +1 -1
  607. package/dist/math/Matrix3.js +90 -0
  608. package/dist/math/Matrix3.js.map +1 -1
  609. package/dist/math/Matrix4.d.ts +3 -0
  610. package/dist/math/Matrix4.d.ts.map +1 -1
  611. package/dist/math/Matrix4.js +17 -0
  612. package/dist/math/Matrix4.js.map +1 -1
  613. package/dist/math/OBB.d.ts +44 -0
  614. package/dist/math/OBB.d.ts.map +1 -0
  615. package/dist/math/OBB.js +214 -0
  616. package/dist/math/OBB.js.map +1 -0
  617. package/dist/math/Octree.d.ts +72 -0
  618. package/dist/math/Octree.d.ts.map +1 -0
  619. package/dist/math/Octree.js +385 -0
  620. package/dist/math/Octree.js.map +1 -0
  621. package/dist/math/Plane.d.ts +42 -0
  622. package/dist/math/Plane.d.ts.map +1 -1
  623. package/dist/math/Plane.js +79 -3
  624. package/dist/math/Plane.js.map +1 -1
  625. package/dist/math/Quaternion.d.ts +6 -1
  626. package/dist/math/Quaternion.d.ts.map +1 -1
  627. package/dist/math/Quaternion.js +28 -3
  628. package/dist/math/Quaternion.js.map +1 -1
  629. package/dist/math/Ray.d.ts +42 -2
  630. package/dist/math/Ray.d.ts.map +1 -1
  631. package/dist/math/Ray.js +202 -9
  632. package/dist/math/Ray.js.map +1 -1
  633. package/dist/math/ShapeUtils.d.ts +28 -0
  634. package/dist/math/ShapeUtils.d.ts.map +1 -0
  635. package/dist/math/ShapeUtils.js +551 -0
  636. package/dist/math/ShapeUtils.js.map +1 -0
  637. package/dist/math/Sphere.d.ts +32 -0
  638. package/dist/math/Sphere.d.ts.map +1 -1
  639. package/dist/math/Sphere.js +122 -4
  640. package/dist/math/Sphere.js.map +1 -1
  641. package/dist/math/Spherical.d.ts +21 -0
  642. package/dist/math/Spherical.d.ts.map +1 -0
  643. package/dist/math/Spherical.js +50 -0
  644. package/dist/math/Spherical.js.map +1 -0
  645. package/dist/math/SphericalHarmonics3.d.ts +35 -0
  646. package/dist/math/SphericalHarmonics3.d.ts.map +1 -0
  647. package/dist/math/SphericalHarmonics3.js +115 -0
  648. package/dist/math/SphericalHarmonics3.js.map +1 -0
  649. package/dist/math/Triangle.d.ts +45 -0
  650. package/dist/math/Triangle.d.ts.map +1 -0
  651. package/dist/math/Triangle.js +160 -0
  652. package/dist/math/Triangle.js.map +1 -0
  653. package/dist/math/Vector2.d.ts +7 -0
  654. package/dist/math/Vector2.d.ts.map +1 -1
  655. package/dist/math/Vector2.js +17 -0
  656. package/dist/math/Vector2.js.map +1 -1
  657. package/dist/math/Vector3.d.ts +16 -0
  658. package/dist/math/Vector3.d.ts.map +1 -1
  659. package/dist/math/Vector3.js +35 -0
  660. package/dist/math/Vector3.js.map +1 -1
  661. package/dist/math/curves/ArcCurve.d.ts +7 -0
  662. package/dist/math/curves/ArcCurve.d.ts.map +1 -0
  663. package/dist/math/curves/ArcCurve.js +9 -0
  664. package/dist/math/curves/ArcCurve.js.map +1 -0
  665. package/dist/math/curves/CatmullRomCurve3.d.ts +39 -0
  666. package/dist/math/curves/CatmullRomCurve3.d.ts.map +1 -0
  667. package/dist/math/curves/CatmullRomCurve3.js +176 -0
  668. package/dist/math/curves/CatmullRomCurve3.js.map +1 -0
  669. package/dist/math/curves/ClampedCatmullRomCurve3.d.ts +26 -0
  670. package/dist/math/curves/ClampedCatmullRomCurve3.d.ts.map +1 -0
  671. package/dist/math/curves/ClampedCatmullRomCurve3.js +48 -0
  672. package/dist/math/curves/ClampedCatmullRomCurve3.js.map +1 -0
  673. package/dist/math/curves/CubicBezierCurve.d.ts +14 -0
  674. package/dist/math/curves/CubicBezierCurve.d.ts.map +1 -0
  675. package/dist/math/curves/CubicBezierCurve.js +25 -0
  676. package/dist/math/curves/CubicBezierCurve.js.map +1 -0
  677. package/dist/math/curves/CubicBezierCurve3.d.ts +14 -0
  678. package/dist/math/curves/CubicBezierCurve3.d.ts.map +1 -0
  679. package/dist/math/curves/CubicBezierCurve3.js +25 -0
  680. package/dist/math/curves/CubicBezierCurve3.js.map +1 -0
  681. package/dist/math/curves/CurveBase.d.ts +49 -0
  682. package/dist/math/curves/CurveBase.d.ts.map +1 -0
  683. package/dist/math/curves/CurveBase.js +199 -0
  684. package/dist/math/curves/CurveBase.js.map +1 -0
  685. package/dist/math/curves/CurvePath.d.ts +34 -0
  686. package/dist/math/curves/CurvePath.d.ts.map +1 -0
  687. package/dist/math/curves/CurvePath.js +135 -0
  688. package/dist/math/curves/CurvePath.js.map +1 -0
  689. package/dist/math/curves/EllipseCurve.d.ts +18 -0
  690. package/dist/math/curves/EllipseCurve.d.ts.map +1 -0
  691. package/dist/math/curves/EllipseCurve.js +67 -0
  692. package/dist/math/curves/EllipseCurve.js.map +1 -0
  693. package/dist/math/curves/Interpolations.d.ts +9 -0
  694. package/dist/math/curves/Interpolations.d.ts.map +1 -0
  695. package/dist/math/curves/Interpolations.js +21 -0
  696. package/dist/math/curves/Interpolations.js.map +1 -0
  697. package/dist/math/curves/LineCurve.d.ts +16 -0
  698. package/dist/math/curves/LineCurve.d.ts.map +1 -0
  699. package/dist/math/curves/LineCurve.js +32 -0
  700. package/dist/math/curves/LineCurve.js.map +1 -0
  701. package/dist/math/curves/LineCurve3.d.ts +16 -0
  702. package/dist/math/curves/LineCurve3.d.ts.map +1 -0
  703. package/dist/math/curves/LineCurve3.js +32 -0
  704. package/dist/math/curves/LineCurve3.js.map +1 -0
  705. package/dist/math/curves/Path.d.ts +23 -0
  706. package/dist/math/curves/Path.d.ts.map +1 -0
  707. package/dist/math/curves/Path.js +94 -0
  708. package/dist/math/curves/Path.js.map +1 -0
  709. package/dist/math/curves/QuadraticBezierCurve.d.ts +13 -0
  710. package/dist/math/curves/QuadraticBezierCurve.d.ts.map +1 -0
  711. package/dist/math/curves/QuadraticBezierCurve.js +23 -0
  712. package/dist/math/curves/QuadraticBezierCurve.js.map +1 -0
  713. package/dist/math/curves/QuadraticBezierCurve3.d.ts +13 -0
  714. package/dist/math/curves/QuadraticBezierCurve3.d.ts.map +1 -0
  715. package/dist/math/curves/QuadraticBezierCurve3.js +23 -0
  716. package/dist/math/curves/QuadraticBezierCurve3.js.map +1 -0
  717. package/dist/math/curves/Shape.d.ts +15 -0
  718. package/dist/math/curves/Shape.d.ts.map +1 -0
  719. package/dist/math/curves/Shape.js +26 -0
  720. package/dist/math/curves/Shape.js.map +1 -0
  721. package/dist/math/curves/SplineCurve.d.ts +11 -0
  722. package/dist/math/curves/SplineCurve.d.ts.map +1 -0
  723. package/dist/math/curves/SplineCurve.js +27 -0
  724. package/dist/math/curves/SplineCurve.js.map +1 -0
  725. package/dist/math/index.d.ts +12 -0
  726. package/dist/math/index.d.ts.map +1 -1
  727. package/dist/math/index.js +16 -0
  728. package/dist/math/index.js.map +1 -1
  729. package/dist/physics-rapier/index.d.ts.map +1 -1
  730. package/dist/physics-rapier/index.js +20 -5
  731. package/dist/physics-rapier/index.js.map +1 -1
  732. package/dist/rendering/EnvironmentPlatform.d.ts.map +1 -1
  733. package/dist/rendering/EnvironmentPlatform.js +6 -2
  734. package/dist/rendering/EnvironmentPlatform.js.map +1 -1
  735. package/dist/rendering/ForwardPass.d.ts +2 -0
  736. package/dist/rendering/ForwardPass.d.ts.map +1 -1
  737. package/dist/rendering/ForwardPass.js +70 -5
  738. package/dist/rendering/ForwardPass.js.map +1 -1
  739. package/dist/rendering/Geometry.d.ts +40 -0
  740. package/dist/rendering/Geometry.d.ts.map +1 -1
  741. package/dist/rendering/Geometry.js +39 -2
  742. package/dist/rendering/Geometry.js.map +1 -1
  743. package/dist/rendering/IndexBuffer.d.ts +16 -1
  744. package/dist/rendering/IndexBuffer.d.ts.map +1 -1
  745. package/dist/rendering/IndexBuffer.js +46 -1
  746. package/dist/rendering/IndexBuffer.js.map +1 -1
  747. package/dist/rendering/InstancedPBRMaterial.d.ts +2 -0
  748. package/dist/rendering/InstancedPBRMaterial.d.ts.map +1 -1
  749. package/dist/rendering/InstancedPBRMaterial.js +1 -0
  750. package/dist/rendering/InstancedPBRMaterial.js.map +1 -1
  751. package/dist/rendering/Material.d.ts +9 -0
  752. package/dist/rendering/Material.d.ts.map +1 -1
  753. package/dist/rendering/Material.js +3 -0
  754. package/dist/rendering/Material.js.map +1 -1
  755. package/dist/rendering/PBRMaterial.d.ts +2 -0
  756. package/dist/rendering/PBRMaterial.d.ts.map +1 -1
  757. package/dist/rendering/PBRMaterial.js +1 -0
  758. package/dist/rendering/PBRMaterial.js.map +1 -1
  759. package/dist/rendering/PortableShaderMaterial.d.ts +13 -3
  760. package/dist/rendering/PortableShaderMaterial.d.ts.map +1 -1
  761. package/dist/rendering/PortableShaderMaterial.js +24 -12
  762. package/dist/rendering/PortableShaderMaterial.js.map +1 -1
  763. package/dist/rendering/RenderDevice.d.ts +98 -0
  764. package/dist/rendering/RenderDevice.d.ts.map +1 -1
  765. package/dist/rendering/RenderDevice.js +129 -0
  766. package/dist/rendering/RenderDevice.js.map +1 -1
  767. package/dist/rendering/Renderer.d.ts +94 -0
  768. package/dist/rendering/Renderer.d.ts.map +1 -1
  769. package/dist/rendering/Renderer.js +321 -26
  770. package/dist/rendering/Renderer.js.map +1 -1
  771. package/dist/rendering/Sampler.d.ts +35 -0
  772. package/dist/rendering/Sampler.d.ts.map +1 -1
  773. package/dist/rendering/Sampler.js +96 -0
  774. package/dist/rendering/Sampler.js.map +1 -1
  775. package/dist/rendering/ShaderLibraryCore.d.ts +14 -0
  776. package/dist/rendering/ShaderLibraryCore.d.ts.map +1 -1
  777. package/dist/rendering/ShaderLibraryCore.js +94 -4
  778. package/dist/rendering/ShaderLibraryCore.js.map +1 -1
  779. package/dist/rendering/Texture.d.ts +53 -1
  780. package/dist/rendering/Texture.d.ts.map +1 -1
  781. package/dist/rendering/Texture.js +53 -2
  782. package/dist/rendering/Texture.js.map +1 -1
  783. package/dist/rendering/UnlitMaterial.d.ts +46 -0
  784. package/dist/rendering/UnlitMaterial.d.ts.map +1 -1
  785. package/dist/rendering/UnlitMaterial.js +32 -3
  786. package/dist/rendering/UnlitMaterial.js.map +1 -1
  787. package/dist/rendering/VertexFormat.d.ts +19 -1
  788. package/dist/rendering/VertexFormat.d.ts.map +1 -1
  789. package/dist/rendering/VertexFormat.js +40 -1
  790. package/dist/rendering/VertexFormat.js.map +1 -1
  791. package/dist/rendering/WebGL2Device.d.ts +16 -0
  792. package/dist/rendering/WebGL2Device.d.ts.map +1 -1
  793. package/dist/rendering/WebGL2Device.js +31 -6
  794. package/dist/rendering/WebGL2Device.js.map +1 -1
  795. package/dist/rendering/WebGPUDevice.d.ts +92 -1
  796. package/dist/rendering/WebGPUDevice.d.ts.map +1 -1
  797. package/dist/rendering/WebGPUDevice.js +417 -44
  798. package/dist/rendering/WebGPUDevice.js.map +1 -1
  799. package/dist/rendering/batching/BatchedGeometryPool.d.ts +22 -1
  800. package/dist/rendering/batching/BatchedGeometryPool.d.ts.map +1 -1
  801. package/dist/rendering/batching/BatchedGeometryPool.js +50 -2
  802. package/dist/rendering/batching/BatchedGeometryPool.js.map +1 -1
  803. package/dist/rendering/batching/DrawDataTexture.d.ts +21 -1
  804. package/dist/rendering/batching/DrawDataTexture.d.ts.map +1 -1
  805. package/dist/rendering/batching/DrawDataTexture.js +30 -4
  806. package/dist/rendering/batching/DrawDataTexture.js.map +1 -1
  807. package/dist/rendering/batching/MultiDrawBatch.d.ts +26 -0
  808. package/dist/rendering/batching/MultiDrawBatch.d.ts.map +1 -1
  809. package/dist/rendering/batching/MultiDrawBatch.js +64 -2
  810. package/dist/rendering/batching/MultiDrawBatch.js.map +1 -1
  811. package/dist/rendering/batching/index.d.ts +2 -2
  812. package/dist/rendering/batching/index.d.ts.map +1 -1
  813. package/dist/rendering/batching/index.js +2 -2
  814. package/dist/rendering/batching/index.js.map +1 -1
  815. package/dist/rendering/compute/ComputeContext.d.ts +84 -0
  816. package/dist/rendering/compute/ComputeContext.d.ts.map +1 -0
  817. package/dist/rendering/compute/ComputeContext.js +371 -0
  818. package/dist/rendering/compute/ComputeContext.js.map +1 -0
  819. package/dist/rendering/compute/index.d.ts +4 -0
  820. package/dist/rendering/compute/index.d.ts.map +1 -0
  821. package/dist/rendering/compute/index.js +3 -0
  822. package/dist/rendering/compute/index.js.map +1 -0
  823. package/dist/rendering/compute/types.d.ts +108 -0
  824. package/dist/rendering/compute/types.d.ts.map +1 -0
  825. package/dist/rendering/compute/types.js +25 -0
  826. package/dist/rendering/compute/types.js.map +1 -0
  827. package/dist/rendering/contracts/core.d.ts +1 -1
  828. package/dist/rendering/contracts/core.d.ts.map +1 -1
  829. package/dist/rendering/contracts/core.js.map +1 -1
  830. package/dist/rendering/contracts/flags.state.d.ts.map +1 -1
  831. package/dist/rendering/contracts/flags.state.js +20 -1
  832. package/dist/rendering/contracts/flags.state.js.map +1 -1
  833. package/dist/rendering/contracts/output.d.ts +1 -1
  834. package/dist/rendering/contracts/output.d.ts.map +1 -1
  835. package/dist/rendering/contracts/output.js.map +1 -1
  836. package/dist/rendering/contracts/post.d.ts +7 -0
  837. package/dist/rendering/contracts/post.d.ts.map +1 -1
  838. package/dist/rendering/contracts/post.js.map +1 -1
  839. package/dist/rendering/contracts/renderItem.d.ts +15 -0
  840. package/dist/rendering/contracts/renderItem.d.ts.map +1 -1
  841. package/dist/rendering/contracts/renderSource.d.ts +3 -1
  842. package/dist/rendering/contracts/renderSource.d.ts.map +1 -1
  843. package/dist/rendering/contracts/sampling.d.ts +23 -0
  844. package/dist/rendering/contracts/sampling.d.ts.map +1 -1
  845. package/dist/rendering/contracts/sampling.js.map +1 -1
  846. package/dist/rendering/environment/EnvironmentCache.d.ts.map +1 -1
  847. package/dist/rendering/environment/EnvironmentCache.js +7 -3
  848. package/dist/rendering/environment/EnvironmentCache.js.map +1 -1
  849. package/dist/rendering/environment/RoomEnvironmentScene.d.ts +2 -2
  850. package/dist/rendering/environment/RoomEnvironmentScene.d.ts.map +1 -1
  851. package/dist/rendering/environment/RoomEnvironmentScene.js.map +1 -1
  852. package/dist/rendering/geometry/Circle.d.ts +14 -0
  853. package/dist/rendering/geometry/Circle.d.ts.map +1 -0
  854. package/dist/rendering/geometry/Circle.js +31 -0
  855. package/dist/rendering/geometry/Circle.js.map +1 -0
  856. package/dist/rendering/geometry/Cone.d.ts +37 -0
  857. package/dist/rendering/geometry/Cone.d.ts.map +1 -0
  858. package/dist/rendering/geometry/Cone.js +129 -0
  859. package/dist/rendering/geometry/Cone.js.map +1 -0
  860. package/dist/rendering/geometry/Convex.d.ts +19 -0
  861. package/dist/rendering/geometry/Convex.d.ts.map +1 -0
  862. package/dist/rendering/geometry/Convex.js +27 -0
  863. package/dist/rendering/geometry/Convex.js.map +1 -0
  864. package/dist/rendering/geometry/Edges.d.ts +15 -0
  865. package/dist/rendering/geometry/Edges.d.ts.map +1 -0
  866. package/dist/rendering/geometry/Edges.js +98 -0
  867. package/dist/rendering/geometry/Edges.js.map +1 -0
  868. package/dist/rendering/geometry/Extrude.d.ts +29 -0
  869. package/dist/rendering/geometry/Extrude.d.ts.map +1 -0
  870. package/dist/rendering/geometry/Extrude.js +403 -0
  871. package/dist/rendering/geometry/Extrude.js.map +1 -0
  872. package/dist/rendering/geometry/Lathe.d.ts +20 -0
  873. package/dist/rendering/geometry/Lathe.d.ts.map +1 -0
  874. package/dist/rendering/geometry/Lathe.js +94 -0
  875. package/dist/rendering/geometry/Lathe.js.map +1 -0
  876. package/dist/rendering/geometry/Polyhedron.d.ts +21 -0
  877. package/dist/rendering/geometry/Polyhedron.d.ts.map +1 -0
  878. package/dist/rendering/geometry/Polyhedron.js +201 -0
  879. package/dist/rendering/geometry/Polyhedron.js.map +1 -0
  880. package/dist/rendering/geometry/Primitives.d.ts +38 -2
  881. package/dist/rendering/geometry/Primitives.d.ts.map +1 -1
  882. package/dist/rendering/geometry/Primitives.js +114 -0
  883. package/dist/rendering/geometry/Primitives.js.map +1 -1
  884. package/dist/rendering/geometry/Ring.d.ts +16 -0
  885. package/dist/rendering/geometry/Ring.d.ts.map +1 -0
  886. package/dist/rendering/geometry/Ring.js +44 -0
  887. package/dist/rendering/geometry/Ring.js.map +1 -0
  888. package/dist/rendering/geometry/RoundedBox.d.ts +22 -0
  889. package/dist/rendering/geometry/RoundedBox.d.ts.map +1 -0
  890. package/dist/rendering/geometry/RoundedBox.js +191 -0
  891. package/dist/rendering/geometry/RoundedBox.js.map +1 -0
  892. package/dist/rendering/geometry/Shape.d.ts +15 -0
  893. package/dist/rendering/geometry/Shape.d.ts.map +1 -0
  894. package/dist/rendering/geometry/Shape.js +44 -0
  895. package/dist/rendering/geometry/Shape.js.map +1 -0
  896. package/dist/rendering/geometry/Support.d.ts +137 -0
  897. package/dist/rendering/geometry/Support.d.ts.map +1 -0
  898. package/dist/rendering/geometry/Support.js +1066 -0
  899. package/dist/rendering/geometry/Support.js.map +1 -0
  900. package/dist/rendering/geometry/TorusKnot.d.ts +18 -0
  901. package/dist/rendering/geometry/TorusKnot.d.ts.map +1 -0
  902. package/dist/rendering/geometry/TorusKnot.js +83 -0
  903. package/dist/rendering/geometry/TorusKnot.js.map +1 -0
  904. package/dist/rendering/geometry/Tube.d.ts +19 -0
  905. package/dist/rendering/geometry/Tube.d.ts.map +1 -0
  906. package/dist/rendering/geometry/Tube.js +70 -0
  907. package/dist/rendering/geometry/Tube.js.map +1 -0
  908. package/dist/rendering/geometry/Wireframe.d.ts +19 -0
  909. package/dist/rendering/geometry/Wireframe.d.ts.map +1 -0
  910. package/dist/rendering/geometry/Wireframe.js +63 -0
  911. package/dist/rendering/geometry/Wireframe.js.map +1 -0
  912. package/dist/rendering/index.d.ts +38 -7
  913. package/dist/rendering/index.d.ts.map +1 -1
  914. package/dist/rendering/index.js +25 -3
  915. package/dist/rendering/index.js.map +1 -1
  916. package/dist/rendering/lanes/prd11.js +1 -1
  917. package/dist/rendering/lanes/prd11.js.map +1 -1
  918. package/dist/rendering/output/ToneMappingOperators.glsl.d.ts +1 -1
  919. package/dist/rendering/output/ToneMappingOperators.glsl.d.ts.map +1 -1
  920. package/dist/rendering/output/ToneMappingOperators.glsl.js +9 -1
  921. package/dist/rendering/output/ToneMappingOperators.glsl.js.map +1 -1
  922. package/dist/rendering/post/v2Entry.d.ts +1 -0
  923. package/dist/rendering/post/v2Entry.d.ts.map +1 -1
  924. package/dist/rendering/post/v2Entry.js.map +1 -1
  925. package/dist/rendering/post/v2Stages.d.ts +30 -1
  926. package/dist/rendering/post/v2Stages.d.ts.map +1 -1
  927. package/dist/rendering/post/v2Stages.js +87 -21
  928. package/dist/rendering/post/v2Stages.js.map +1 -1
  929. package/dist/rendering/program/ProgramCache.d.ts.map +1 -1
  930. package/dist/rendering/program/ProgramCache.js +12 -0
  931. package/dist/rendering/program/ProgramCache.js.map +1 -1
  932. package/dist/rendering/program/ProgramGenerator.d.ts.map +1 -1
  933. package/dist/rendering/program/ProgramGenerator.js +3 -0
  934. package/dist/rendering/program/ProgramGenerator.js.map +1 -1
  935. package/dist/rendering/reference/PostProcessPass.d.ts +1 -1
  936. package/dist/rendering/reference/PostProcessPass.d.ts.map +1 -1
  937. package/dist/rendering/reference/PostProcessPass.js +8 -1
  938. package/dist/rendering/reference/PostProcessPass.js.map +1 -1
  939. package/dist/rendering/renderer/CullingBatching.d.ts +44 -2
  940. package/dist/rendering/renderer/CullingBatching.d.ts.map +1 -1
  941. package/dist/rendering/renderer/CullingBatching.js +66 -11
  942. package/dist/rendering/renderer/CullingBatching.js.map +1 -1
  943. package/dist/rendering/shaders/chunks/lighting_mirrors.d.ts +2 -2
  944. package/dist/rendering/shaders/chunks/lighting_mirrors.d.ts.map +1 -1
  945. package/dist/rendering/shaders/chunks/lighting_mirrors.js.map +1 -1
  946. package/dist/rendering/shadows/DirectionalCascadeFitter.d.ts +8 -8
  947. package/dist/rendering/shadows/DirectionalCascadeFitter.d.ts.map +1 -1
  948. package/dist/rendering/shadows/DirectionalCascadeFitter.js.map +1 -1
  949. package/dist/rendering/shadows/ShadowAtlas.d.ts +5 -5
  950. package/dist/rendering/shadows/ShadowAtlas.d.ts.map +1 -1
  951. package/dist/rendering/shadows/ShadowAtlas.js.map +1 -1
  952. package/dist/rendering/vfx/ProceduralVolumeEmitter.d.ts +11 -0
  953. package/dist/rendering/vfx/ProceduralVolumeEmitter.d.ts.map +1 -1
  954. package/dist/rendering/vfx/ProceduralVolumeEmitter.js +20 -6
  955. package/dist/rendering/vfx/ProceduralVolumeEmitter.js.map +1 -1
  956. package/dist/rendering/webgl2/ContextLifecycle.d.ts +36 -0
  957. package/dist/rendering/webgl2/ContextLifecycle.d.ts.map +1 -1
  958. package/dist/rendering/webgl2/ContextLifecycle.js +110 -2
  959. package/dist/rendering/webgl2/ContextLifecycle.js.map +1 -1
  960. package/dist/rendering/webgl2/LegacyPost.d.ts +16 -1
  961. package/dist/rendering/webgl2/LegacyPost.d.ts.map +1 -1
  962. package/dist/rendering/webgl2/LegacyPost.js +49 -16
  963. package/dist/rendering/webgl2/LegacyPost.js.map +1 -1
  964. package/dist/rendering/webgl2/MultiDraw.d.ts.map +1 -1
  965. package/dist/rendering/webgl2/MultiDraw.js +42 -2
  966. package/dist/rendering/webgl2/MultiDraw.js.map +1 -1
  967. package/dist/rendering/webgl2/TextureUpload.d.ts +7 -0
  968. package/dist/rendering/webgl2/TextureUpload.d.ts.map +1 -1
  969. package/dist/rendering/webgl2/TextureUpload.js +54 -10
  970. package/dist/rendering/webgl2/TextureUpload.js.map +1 -1
  971. package/dist/scene/Layers.d.ts +5 -0
  972. package/dist/scene/Layers.d.ts.map +1 -1
  973. package/dist/scene/Layers.js +13 -0
  974. package/dist/scene/Layers.js.map +1 -1
  975. package/dist/scene/SceneNode.d.ts +27 -1
  976. package/dist/scene/SceneNode.d.ts.map +1 -1
  977. package/dist/scene/SceneNode.js +33 -1
  978. package/dist/scene/SceneNode.js.map +1 -1
  979. package/package.json +77 -32
  980. package/templates/cinematic-scene/index.html +2 -28
  981. package/templates/cinematic-scene/package.json +2 -1
  982. package/templates/cinematic-scene/src/main.ts +3 -3
  983. package/templates/cinematic-scene/tests/look-floor.ts +73 -3
  984. package/templates/cinematic-scene/tests/route-health.spec.ts +1 -1
  985. package/templates/cinematic-scene/tests/screenshot.spec.ts +12 -2
  986. package/templates/cinematic-scene/vite.config.ts +7 -0
  987. package/templates/mini-game/index.html +1 -27
  988. package/templates/mini-game/package-lock.json +1312 -0
  989. package/templates/mini-game/package.json +2 -1
  990. package/templates/mini-game/src/main.ts +1 -1
  991. package/templates/mini-game/tests/certified-rig.spec.ts +1 -1
  992. package/templates/mini-game/tests/look-floor.ts +73 -3
  993. package/templates/mini-game/tests/playable.spec.ts +57 -12
  994. package/templates/mini-game/tests/screenshot.spec.ts +12 -2
  995. package/templates/mini-game/vite.config.ts +7 -0
  996. package/templates/product-viewer/index.html +2 -27
  997. package/templates/product-viewer/package.json +2 -1
  998. package/templates/product-viewer/tests/look-floor.ts +73 -3
  999. package/templates/product-viewer/tests/screenshot.spec.ts +13 -4
  1000. package/templates/product-viewer/vite.config.ts +7 -0
  1001. package/templates/production-asset-inspector/package.json +1 -1
  1002. package/templates/production-material-studio/package.json +1 -1
  1003. package/templates/production-product-configurator/package.json +1 -1
  1004. package/templates/production-product-viewer/package.json +1 -1
  1005. package/dist/input/controls/CameraRig.d.ts +0 -3
  1006. package/dist/input/controls/CameraRig.d.ts.map +0 -1
  1007. package/dist/input/controls/CameraRig.js +0 -3
  1008. package/dist/input/controls/CameraRig.js.map +0 -1
  1009. package/dist/input/controls/ControlTypes.d.ts +0 -3
  1010. package/dist/input/controls/ControlTypes.d.ts.map +0 -1
  1011. package/dist/input/controls/ControlTypes.js +0 -3
  1012. package/dist/input/controls/ControlTypes.js.map +0 -1
  1013. package/dist/input/controls/EditorFlyControls.d.ts +0 -3
  1014. package/dist/input/controls/EditorFlyControls.d.ts.map +0 -1
  1015. package/dist/input/controls/EditorFlyControls.js +0 -3
  1016. package/dist/input/controls/EditorFlyControls.js.map +0 -1
  1017. package/dist/input/controls/FirstPersonControls.d.ts +0 -3
  1018. package/dist/input/controls/FirstPersonControls.d.ts.map +0 -1
  1019. package/dist/input/controls/FirstPersonControls.js +0 -3
  1020. package/dist/input/controls/FirstPersonControls.js.map +0 -1
  1021. package/dist/input/controls/OrbitControls.d.ts +0 -3
  1022. package/dist/input/controls/OrbitControls.d.ts.map +0 -1
  1023. package/dist/input/controls/OrbitControls.js +0 -3
  1024. package/dist/input/controls/OrbitControls.js.map +0 -1
  1025. package/dist/input/controls/PointerLockControls.d.ts +0 -2
  1026. package/dist/input/controls/PointerLockControls.d.ts.map +0 -1
  1027. package/dist/input/controls/PointerLockControls.js +0 -3
  1028. package/dist/input/controls/PointerLockControls.js.map +0 -1
  1029. package/dist/input/controls/SceneCameraAdapter.d.ts +0 -3
  1030. package/dist/input/controls/SceneCameraAdapter.d.ts.map +0 -1
  1031. package/dist/input/controls/SceneCameraAdapter.js +0 -3
  1032. package/dist/input/controls/SceneCameraAdapter.js.map +0 -1
  1033. package/dist/input/controls/ThirdPersonFollowControls.d.ts +0 -3
  1034. package/dist/input/controls/ThirdPersonFollowControls.d.ts.map +0 -1
  1035. package/dist/input/controls/ThirdPersonFollowControls.js +0 -3
  1036. package/dist/input/controls/ThirdPersonFollowControls.js.map +0 -1
  1037. package/templates/cinematic-scene/public/fonts/graphik/Graphik-Medium-Web.woff2 +0 -0
  1038. package/templates/cinematic-scene/public/fonts/graphik/Graphik-Regular-Web.woff2 +0 -0
  1039. package/templates/cinematic-scene/public/fonts/graphik/Graphik-RegularItalic-Web.woff2 +0 -0
  1040. package/templates/mini-game/public/fonts/graphik/Graphik-Medium-Web.woff2 +0 -0
  1041. package/templates/mini-game/public/fonts/graphik/Graphik-Regular-Web.woff2 +0 -0
  1042. package/templates/mini-game/public/fonts/graphik/Graphik-RegularItalic-Web.woff2 +0 -0
  1043. package/templates/product-viewer/public/fonts/graphik/Graphik-Medium-Web.woff2 +0 -0
  1044. package/templates/product-viewer/public/fonts/graphik/Graphik-Regular-Web.woff2 +0 -0
  1045. package/templates/product-viewer/public/fonts/graphik/Graphik-RegularItalic-Web.woff2 +0 -0
@@ -50,6 +50,47 @@ export class Sampler {
50
50
  maxAnisotropy: anisotropy
51
51
  });
52
52
  }
53
+ /**
54
+ * threejs-parity ST-02/ST-04 (L4): build a sampler from an
55
+ * `AuraTextureSampling` descriptor — the shape `texture.*` handles and
56
+ * `material.sampling`/`slotSampling` carry. Per-axis `wrapS`/`wrapT` win
57
+ * over the shared `wrap`; `minFilter`/`magFilter` (three names or numeric
58
+ * enum) win over the legacy `filter` shorthand
59
+ * ("trilinear"/"bilinear"/"nearest").
60
+ */
61
+ static fromSampling(sampling, options = {}) {
62
+ const fallbackWrap = options.defaultWrap ?? "clamp-to-edge";
63
+ const legacyFilter = sampling?.filter;
64
+ const legacyMin = legacyFilter === "nearest"
65
+ ? "nearest"
66
+ : legacyFilter === "bilinear"
67
+ ? "linear"
68
+ : "linear-mipmap-linear";
69
+ const legacyMag = legacyFilter === "nearest" ? "nearest" : "linear";
70
+ return new Sampler({
71
+ minFilter: threeToMinFilter(sampling?.minFilter) ?? legacyMin,
72
+ magFilter: threeToMagFilter(sampling?.magFilter) ?? legacyMag,
73
+ addressU: auraWrapMode(sampling?.wrapS ?? sampling?.wrap) ?? fallbackWrap,
74
+ addressV: auraWrapMode(sampling?.wrapT ?? sampling?.wrap) ?? fallbackWrap,
75
+ maxAnisotropy: sampling?.anisotropy ?? options.anisotropy ?? 1
76
+ });
77
+ }
78
+ /**
79
+ * threejs-parity ST-02/ST-04 (L4): a three `Texture` sampler view —
80
+ * `{ wrapS, wrapT, minFilter, magFilter, anisotropy }` where wrap/filter
81
+ * fields accept three's numeric enums (RepeatWrapping 1000, ClampToEdgeWrapping
82
+ * 1001, MirroredRepeatWrapping 1002, NearestFilter 1003 …
83
+ * LinearMipmapLinearFilter 1008) or the matching Aura strings.
84
+ */
85
+ static fromThree(info) {
86
+ return new Sampler({
87
+ minFilter: threeToMinFilter(info?.minFilter) ?? "linear-mipmap-linear",
88
+ magFilter: threeToMagFilter(info?.magFilter) ?? "linear",
89
+ addressU: threeToWrapMode(info?.wrapS) ?? "repeat",
90
+ addressV: threeToWrapMode(info?.wrapT) ?? "repeat",
91
+ maxAnisotropy: info?.anisotropy ?? 1
92
+ });
93
+ }
53
94
  }
54
95
  // glTF sampler enums: CLAMP_TO_EDGE 33071, MIRRORED_REPEAT 33648, REPEAT 10497.
55
96
  const GLTF_WRAP_MODES = {
@@ -65,6 +106,61 @@ const GLTF_MIN_FILTERS = {
65
106
  9986: "nearest-mipmap-linear",
66
107
  9987: "linear-mipmap-linear"
67
108
  };
109
+ // threejs-parity ST-04 (L4): three.js numeric enums (three/src/constants.js).
110
+ // RepeatWrapping 1000, ClampToEdgeWrapping 1001, MirroredRepeatWrapping 1002;
111
+ // NearestFilter 1003, NearestMipmapNearest 1004, NearestMipmapLinear 1005,
112
+ // LinearFilter 1006, LinearMipmapNearest 1007, LinearMipmapLinear 1008.
113
+ const THREE_WRAP_MODES = {
114
+ 1000: "repeat",
115
+ 1001: "clamp-to-edge",
116
+ 1002: "mirror-repeat"
117
+ };
118
+ const THREE_MIN_FILTERS = {
119
+ 1003: "nearest",
120
+ 1004: "nearest-mipmap-nearest",
121
+ 1005: "nearest-mipmap-linear",
122
+ 1006: "linear",
123
+ 1007: "linear-mipmap-nearest",
124
+ 1008: "linear-mipmap-linear"
125
+ };
126
+ const THREE_MAG_FILTERS = {
127
+ 1003: "nearest",
128
+ 1006: "linear"
129
+ };
130
+ /** threejs-parity ST-04 (L4): Aura wrap name → device address mode. */
131
+ export function auraWrapMode(wrap) {
132
+ if (wrap === undefined)
133
+ return undefined;
134
+ if (wrap === "clamp" || wrap === "clamp-to-edge")
135
+ return "clamp-to-edge";
136
+ if (wrap === "mirror" || wrap === "mirror-repeat")
137
+ return "mirror-repeat";
138
+ return "repeat";
139
+ }
140
+ /** threejs-parity ST-04 (L4): three wrap enum or Aura name → device address mode. */
141
+ export function threeToWrapMode(wrap) {
142
+ if (wrap === undefined)
143
+ return undefined;
144
+ if (typeof wrap === "number")
145
+ return THREE_WRAP_MODES[wrap];
146
+ return auraWrapMode(wrap);
147
+ }
148
+ /** threejs-parity ST-04 (L4): three min-filter enum or name → `TextureMinFilter`. */
149
+ export function threeToMinFilter(filter) {
150
+ if (filter === undefined)
151
+ return undefined;
152
+ if (typeof filter === "number")
153
+ return THREE_MIN_FILTERS[filter];
154
+ return filter;
155
+ }
156
+ /** threejs-parity ST-04 (L4): three mag-filter enum or name → `TextureMagFilter`. */
157
+ export function threeToMagFilter(filter) {
158
+ if (filter === undefined)
159
+ return undefined;
160
+ if (typeof filter === "number")
161
+ return THREE_MAG_FILTERS[filter];
162
+ return filter;
163
+ }
68
164
  /** Device-quantized sampler anisotropy steps (muse3jsparity-PRD C3). */
69
165
  export const SAMPLER_ANISOTROPY_STEPS = [1, 2, 4, 8, 16];
70
166
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Sampler.js","sourceRoot":"","sources":["../../../../packages/rendering/src/Sampler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Sampler.js","sourceRoot":"","sources":["../../../../packages/rendering/src/Sampler.ts"],"names":[],"mappings":"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"}
@@ -100,4 +100,18 @@ export declare function registerLeanDepthShader(library: ShaderLibrary): void;
100
100
  export declare function registerLeanEnvironmentBackgroundShader(library: ShaderLibrary): void;
101
101
  export declare function createLeanCoreShaderLibrary(): ShaderLibrary;
102
102
  export declare const DEFAULT_TEXTURED_PBR_EXTENSION_ATLAS_VARIANT = "extension-scalar-atlas";
103
+ /** SH-10: register a `#include <name>` chunk for every ShaderLibrary. Duplicate and built-in names throw. */
104
+ export declare function registerShaderChunk(name: string, glsl: string, wgsl?: string): void;
105
+ export declare function globalShaderChunkRevision(): number;
106
+ /** GLSL chunk source by name (global registry only; built-ins live on the library). */
107
+ export declare function globalShaderChunkSource(name: string): string | undefined;
108
+ /** WGSL chunk source for `name` — the registered `wgsl` half wins, else the GLSL source doubles as a shared snippet. */
109
+ export declare function globalShaderWgslChunkSource(name: string): string | undefined;
110
+ export declare function globalShaderChunkEntries(): IterableIterator<[string, string]>;
111
+ /** All globally registered chunk names (diagnostics/tests). */
112
+ export declare function globalShaderChunkNames(): readonly string[];
113
+ /** SH-02: publish a portable shader source pair so any ShaderLibrary resolves it. Idempotent per name. */
114
+ export declare function registerGlobalShaderSource(pair: ShaderSourcePair): void;
115
+ export declare function unregisterGlobalShaderSource(name: string): boolean;
116
+ export declare function globalShaderSource(name: string): ShaderSourcePair | undefined;
103
117
  //# sourceMappingURL=ShaderLibraryCore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ShaderLibraryCore.d.ts","sourceRoot":"","sources":["../../../../packages/rendering/src/ShaderLibraryCore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ShaderLibraryCore.d.ts","sourceRoot":"","sources":["../../../../packages/rendering/src/ShaderLibraryCore.ts"],"names":[],"mappings":"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"}
@@ -37,10 +37,13 @@ export class ShaderLibrary {
37
37
  return removed;
38
38
  }
39
39
  getRevision() {
40
- return this.revision;
40
+ // threejs-parity SH-10: globally registered chunks (`registerShaderChunk`)
41
+ // feed every library's include map, so their revision is folded in here —
42
+ // registering a chunk bumps the effective revision of every ShaderLibrary.
43
+ return this.revision + globalShaderChunkRevision();
41
44
  }
42
45
  registerChunk(name, source) {
43
- if (this.chunks.has(name)) {
46
+ if (this.chunks.has(name) || globalShaderChunkSource(name) !== undefined) {
44
47
  throw new Error(`Shader chunk is already registered: ${name}`);
45
48
  }
46
49
  this.chunks.set(name, source);
@@ -48,7 +51,11 @@ export class ShaderLibrary {
48
51
  this.revision += 1;
49
52
  }
50
53
  get(name) {
51
- const shader = this.shaders.get(name);
54
+ // threejs-parity SH-02: engine-compiled custom materials publish their
55
+ // shader pair process-wide (`registerGlobalShaderSource`) so the
56
+ // renderer-owned library — which the material never sees — resolves the
57
+ // same `aura3d/portable/…` key at compileSource time.
58
+ const shader = this.shaders.get(name) ?? globalShaderSource(name);
52
59
  if (!shader) {
53
60
  throw new Error(`Shader is not registered: ${name}`);
54
61
  }
@@ -56,7 +63,11 @@ export class ShaderLibrary {
56
63
  }
57
64
  compileSource(name, options = {}) {
58
65
  const shader = this.get(name);
59
- const includes = new Map([...this.chunks, ...(options.includes ?? new Map())]);
66
+ // Include precedence (lowest → highest): global `registerShaderChunk`
67
+ // chunks, this library's own chunks (built-ins + registerChunk), then
68
+ // per-call `options.includes` — the SH-09 patch map lands in the last tier
69
+ // so a patched name replaces the registered source for that compile only.
70
+ const includes = new Map([...globalShaderChunkEntries(), ...this.chunks, ...(options.includes ?? new Map())]);
60
71
  const preprocessOptions = { ...options, includes };
61
72
  const vertex = this.preprocessor.preprocess(shader.vertex, preprocessOptions).source;
62
73
  const fragment = this.preprocessor.preprocess(shader.fragment, preprocessOptions).source;
@@ -851,4 +862,83 @@ export function createLeanCoreShaderLibrary() {
851
862
  return library;
852
863
  }
853
864
  export const DEFAULT_TEXTURED_PBR_EXTENSION_ATLAS_VARIANT = "extension-scalar-atlas";
865
+ /* ------------------------------------------------------------------------ */
866
+ /* threejs-parity SH-02/SH-10 — process-wide shader chunk + source registry */
867
+ /* */
868
+ /* `material.custom(spec)` compiles to `PortableShaderMaterial` inside the */
869
+ /* engine adapter (`agent-api/compiler/customMaterial.ts`); the material */
870
+ /* registers its pair here so the renderer-owned ShaderLibrary (which the */
871
+ /* adapter never sees) resolves the same `aura3d/portable/…` key. */
872
+ /* */
873
+ /* `registerShaderChunk(name, glsl, wgsl?)` is the public, mutable chunk */
874
+ /* surface (SH-10): registered GLSL lands in every library's `#include` */
875
+ /* map (below instance chunks and per-compile `includes`/patch overrides), */
876
+ /* registration bumps a revision folded into `ShaderLibrary.getRevision()`, */
877
+ /* and duplicate/built-in names throw. The optional `wgsl` half is kept */
878
+ /* separate — WGSL stages are expanded once by the engine adapter (no */
879
+ /* WGSL preprocessor runs at compileSource time). */
880
+ /* ------------------------------------------------------------------------ */
881
+ const globalShaderChunks = new Map();
882
+ const globalShaderWgslChunks = new Map();
883
+ const globalShaderSourcesByName = new Map();
884
+ let globalChunkRevision = 0;
885
+ let builtinChunkNames = null;
886
+ const builtinChunkNameSet = () => builtinChunkNames ??= new Set(SHADER_CHUNKS.map((chunk) => chunk.name));
887
+ const assertChunkName = (name) => {
888
+ if (typeof name !== "string" || !/^[A-Za-z_][A-Za-z0-9_-]*$/.test(name)) {
889
+ throw new Error(`Shader chunk name is invalid: ${String(name)}`);
890
+ }
891
+ };
892
+ /** SH-10: register a `#include <name>` chunk for every ShaderLibrary. Duplicate and built-in names throw. */
893
+ export function registerShaderChunk(name, glsl, wgsl) {
894
+ assertChunkName(name);
895
+ if (typeof glsl !== "string" || !glsl.trim()) {
896
+ throw new Error(`Shader chunk ${name} requires non-empty GLSL source`);
897
+ }
898
+ if (wgsl !== undefined && typeof wgsl !== "string") {
899
+ throw new Error(`Shader chunk ${name} WGSL source must be a string`);
900
+ }
901
+ if (builtinChunkNameSet().has(name) || globalShaderChunks.has(name)) {
902
+ throw new Error(`Shader chunk is already registered: ${name}`);
903
+ }
904
+ globalShaderChunks.set(name, glsl);
905
+ if (wgsl !== undefined)
906
+ globalShaderWgslChunks.set(name, wgsl);
907
+ globalChunkRevision += 1;
908
+ }
909
+ export function globalShaderChunkRevision() {
910
+ return globalChunkRevision;
911
+ }
912
+ /** GLSL chunk source by name (global registry only; built-ins live on the library). */
913
+ export function globalShaderChunkSource(name) {
914
+ return globalShaderChunks.get(name);
915
+ }
916
+ /** WGSL chunk source for `name` — the registered `wgsl` half wins, else the GLSL source doubles as a shared snippet. */
917
+ export function globalShaderWgslChunkSource(name) {
918
+ return globalShaderWgslChunks.get(name) ?? globalShaderChunks.get(name);
919
+ }
920
+ export function globalShaderChunkEntries() {
921
+ return globalShaderChunks.entries();
922
+ }
923
+ /** All globally registered chunk names (diagnostics/tests). */
924
+ export function globalShaderChunkNames() {
925
+ return [...globalShaderChunks.keys()];
926
+ }
927
+ /** SH-02: publish a portable shader source pair so any ShaderLibrary resolves it. Idempotent per name. */
928
+ export function registerGlobalShaderSource(pair) {
929
+ const existing = globalShaderSourcesByName.get(pair.name);
930
+ if (existing) {
931
+ if (existing.marker !== pair.marker || existing.vertex !== pair.vertex || existing.fragment !== pair.fragment) {
932
+ throw new Error(`Global shader source ${pair.name} is already registered with different source`);
933
+ }
934
+ return;
935
+ }
936
+ globalShaderSourcesByName.set(pair.name, pair);
937
+ }
938
+ export function unregisterGlobalShaderSource(name) {
939
+ return globalShaderSourcesByName.delete(name);
940
+ }
941
+ export function globalShaderSource(name) {
942
+ return globalShaderSourcesByName.get(name);
943
+ }
854
944
  //# sourceMappingURL=ShaderLibraryCore.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ShaderLibraryCore.js","sourceRoot":"","sources":["../../../../packages/rendering/src/ShaderLibraryCore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAgC,MAAM,sBAAsB,CAAC;AAExF,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACnF,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAgCrE,MAAM,OAAO,aAAa;IACP,OAAO,GAAG,IAAI,GAAG,EAA4B,CAAC;IAC9C,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACnC,YAAY,GAAG,IAAI,kBAAkB,EAAE,CAAC;IACxC,YAAY,GAAG,IAAI,GAAG,EAAgC,CAAC;IAChE,QAAQ,GAAG,CAAC,CAAC;IAErB,QAAQ,CAAC,MAAwB;QAC/B,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,iCAAiC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC1B,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAC5B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;IACrB,CAAC;IAED,OAAO,CAAC,MAAwB;QAC9B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,6BAA6B,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC1B,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAC5B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;IACrB,CAAC;IAED,UAAU,CAAC,IAAY;QACrB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;YAC1B,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;QACrB,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,aAAa,CAAC,IAAY,EAAE,MAAc;QACxC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,uCAAuC,IAAI,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC9B,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;IACrB,CAAC;IAED,GAAG,CAAC,IAAY;QACd,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,6BAA6B,IAAI,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,aAAa,CAAC,IAAY,EAAE,UAAmC,EAAE;QAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/E,MAAM,iBAAiB,GAAG,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,CAAC;QACnD,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,MAAM,CAAC;QACrF,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC,MAAM,CAAC;QACzF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACzE,MAAM,IAAI,KAAK,CAAC,iBAAiB,MAAM,CAAC,MAAM,0BAA0B,IAAI,EAAE,CAAC,CAAC;QAClF,CAAC;QACD,OAAO;YACL,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM;YACN,QAAQ;YACR,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnD,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClF,CAAC;IACJ,CAAC;IAED,cAAc,CAAC,IAAY,EAAE,WAAmB,EAAE,UAAmC,EAAE;QACrF,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;QACrF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,qCAAqC,IAAI,IAAI,WAAW,EAAE,CAAC,CAAC;QAC9E,CAAC;QACD,MAAM,cAAc,GAA4B;YAC9C,GAAG,OAAO;YACV,OAAO,EAAE;gBACP,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;gBAC1B,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;aAC3B;SACF,CAAC;QACF,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;QACpE,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAC1D,MAAM,OAAO,GAAG,EAAE,GAAG,QAAQ,EAAE,KAAK,EAAE,GAAG,IAAI,IAAI,WAAW,EAAE,EAAE,CAAC;QACjE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACzC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK;QACH,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAClC,CAAC;IAEO,YAAY,CAAC,MAAwB;QAC3C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,UAAU,MAAM,CAAC,IAAI,yCAAyC,CAAC,CAAC;QAClF,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACvF,MAAM,IAAI,KAAK,CAAC,UAAU,MAAM,CAAC,IAAI,wBAAwB,MAAM,CAAC,MAAM,iBAAiB,CAAC,CAAC;QAC/F,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YACxH,MAAM,IAAI,KAAK,CAAC,UAAU,MAAM,CAAC,IAAI,wBAAwB,MAAM,CAAC,MAAM,wBAAwB,CAAC,CAAC;QACtG,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,gBAAgB,KAAK,SAAS,CAAC,EAAE,CAAC;YAC9E,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,CAAC,IAAI,wDAAwD,CAAC,CAAC;QAC1G,CAAC;IACH,CAAC;IAEO,cAAc,CAAC,MAAwB;QAC7C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;YAC5C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,UAAU,MAAM,CAAC,IAAI,mCAAmC,CAAC,CAAC;YAC5E,CAAC;YACD,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,yCAAyC,MAAM,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YAC1F,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;CACF;AAED,SAAS,eAAe,CAAC,IAAY,EAAE,WAAmB,EAAE,OAAgC;IAC1F,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,IAAI;QACJ,WAAW;QACX,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACnG,QAAQ,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;KAC9G,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAG,cAAc,CAAC;AACxD,MAAM,CAAC,MAAM,2BAA2B,GAAG,sBAAsB,CAAC;AAClE,MAAM,CAAC,MAAM,mCAAmC,GAAG,wBAAwB,CAAC;AAC5E,MAAM,CAAC,MAAM,qCAAqC,GAAG,gCAAgC,CAAC;AACtF,MAAM,CAAC,MAAM,iCAAiC,GAAG,sBAAsB,CAAC;AACxE,MAAM,CAAC,MAAM,mCAAmC,GAAG,8BAA8B,CAAC;AAClF,MAAM,CAAC,MAAM,kCAAkC,GAAG,uBAAuB,CAAC;AAC1E,MAAM,CAAC,MAAM,oCAAoC,GAAG,+BAA+B,CAAC;AACpF,MAAM,CAAC,MAAM,iCAAiC,GAAG,sBAAsB,CAAC;AACxE,MAAM,CAAC,MAAM,mCAAmC,GAAG,8BAA8B,CAAC;AAClF,MAAM,CAAC,MAAM,+BAA+B,GAAG,oBAAoB,CAAC;AACpE,MAAM,CAAC,MAAM,iCAAiC,GAAG,4BAA4B,CAAC;AAC9E;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iDAAiD,GAAG,wBAAwB,CAAC;AAC1F,MAAM,CAAC,MAAM,mDAAmD,GAAG,gCAAgC,CAAC;AACpG,MAAM,CAAC,MAAM,+CAA+C,GAAG,sBAAsB,CAAC;AACtF,MAAM,CAAC,MAAM,iDAAiD,GAAG,8BAA8B,CAAC;AAChG,MAAM,CAAC,MAAM,+BAA+B,GAAG,oBAAoB,CAAC;AACpE,MAAM,CAAC,MAAM,iCAAiC,GAAG,4BAA4B,CAAC;AAC9E,MAAM,CAAC,MAAM,qCAAqC,GAAG,uBAAuB,CAAC;AAC7E,MAAM,CAAC,MAAM,uCAAuC,GAAG,+BAA+B,CAAC;AACvF,MAAM,CAAC,MAAM,gCAAgC,GAAG,qBAAqB,CAAC;AACtE,MAAM,CAAC,MAAM,kCAAkC,GAAG,6BAA6B,CAAC;AAChF,MAAM,CAAC,MAAM,+CAA+C,GAAG,oBAAoB,CAAC;AACpF,MAAM,CAAC,MAAM,yDAAyD,GAAG,8BAA8B,CAAC;AACxG,MAAM,CAAC,MAAM,+DAA+D,GAAG,oCAAoC,CAAC;AACpH,MAAM,CAAC,MAAM,iDAAiD,GAAG,sBAAsB,CAAC;AACxF,MAAM,CAAC,MAAM,mEAAmE,GAAG,wCAAwC,CAAC;AAC5H,MAAM,CAAC,MAAM,gEAAgE,GAAG,qCAAqC,CAAC;AACtH,MAAM,CAAC,MAAM,2DAA2D,GAAG,gCAAgC,CAAC;AAC5G,MAAM,CAAC,MAAM,wDAAwD,GAAG,6BAA6B,CAAC;AACtG,MAAM,CAAC,MAAM,2EAA2E,GAAG,gDAAgD,CAAC;AAC5I;;;;GAIG;AACH,MAAM,CAAC,MAAM,qCAAqC,GAAG,0BAA0B,CAAC;AAChF,MAAM,CAAC,MAAM,uCAAuC,GAAG,kCAAkC,CAAC;AAE1F,MAAM,CAAC,MAAM,yBAAyB,GAAG,cAAc,CAAC;AACxD,MAAM,CAAC,MAAM,2BAA2B,GAAG,sBAAsB,CAAC;AAClE,MAAM,CAAC,MAAM,0CAA0C,GAAG,+BAA+B,CAAC;AAC1F,MAAM,CAAC,MAAM,4CAA4C,GAAG,uCAAuC,CAAC;AAEpG,MAAM,UAAU,uBAAuB,CAAC,OAAsB;IAC5D,OAAO,CAAC,QAAQ,CAAC;QACf,IAAI,EAAE,yBAAyB;QAC/B,MAAM,EAAE,2BAA2B;QACnC,MAAM,EAAE;KACP,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgC/B;QACG,QAAQ,EAAE;KACT,2BAA2B;;;;;;;;;;;;;;;;;CAiB/B;KACE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAAsB;IAC1D,OAAO,CAAC,QAAQ,CAAC;QACf,IAAI,EAAE,uBAAuB;QAC7B,MAAM,EAAE,yBAAyB;QACjC,MAAM,EAAE;KACP,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuC7B;QACG,QAAQ,EAAE;KACT,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4b7B;KACE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,OAAsB;IAC5D,OAAO,CAAC,QAAQ,CAAC;QACf,IAAI,EAAE,yBAAyB;QAC/B,MAAM,EAAE,2BAA2B;QACnC,MAAM,EAAE;KACP,2BAA2B;;;;;;;CAO/B;QACG,QAAQ,EAAE;KACT,2BAA2B;;;;;;CAM/B;KACE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,uCAAuC,CAAC,OAAsB;IAC5E,OAAO,CAAC,QAAQ,CAAC;QACf,IAAI,EAAE,0CAA0C;QAChD,MAAM,EAAE,4CAA4C;QACpD,MAAM,EAAE;KACP,4CAA4C;;;;;;;;CAQhD;QACG,QAAQ,EAAE;KACT,4CAA4C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgEhD;KACE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,2BAA2B;IACzC,MAAM,OAAO,GAAG,IAAI,aAAa,EAAE,CAAC;IACpC,oBAAoB,EAAE,CAAC;IACvB,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;QAClC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAClD,CAAC;IACD,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACjC,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC/B,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACjC,uCAAuC,CAAC,OAAO,CAAC,CAAC;IACjD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,CAAC,MAAM,4CAA4C,GAAG,wBAAwB,CAAC"}
1
+ {"version":3,"file":"ShaderLibraryCore.js","sourceRoot":"","sources":["../../../../packages/rendering/src/ShaderLibraryCore.ts"],"names":[],"mappings":"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"}
@@ -42,8 +42,28 @@ export interface TextureDescriptor {
42
42
  * `update()`-driven re-uploads. Devices allocate immutable storage once
43
43
  * (`texStorage2D`) and refresh it via `texSubImage2D`; non-dynamic textures
44
44
  * keep the legacy `texImage2D` path.
45
+ *
46
+ * threejs-parity ST-03 (L4): `dynamic` may be combined with `source` for
47
+ * canvas/video textures — the source image is re-uploaded in place whenever
48
+ * `markNeedsUpdate()`/`needsUpdate` bumps `revision`.
45
49
  */
46
50
  readonly dynamic?: boolean;
51
+ /**
52
+ * threejs-parity ST-02 (L4): vertical flip applied to `source` uploads
53
+ * (three's `Texture.flipY`). WebGL2 applies it through
54
+ * `UNPACK_FLIP_Y_WEBGL`; WebGPU through `copyExternalImageToTexture`'s
55
+ * `flipY` option or the canvas readback path. Ignored for raw data,
56
+ * compressed, cube and depth textures (three applies flipY only to image
57
+ * uploads as well).
58
+ */
59
+ readonly flipY?: boolean;
60
+ /**
61
+ * threejs-parity ST-02 (L4): whether the device generates a full mip chain
62
+ * after uploading (three's `Texture.generateMipmaps`, default true).
63
+ * Source-backed textures honour it on every revision upload; flat data
64
+ * textures honour it on the initial upload.
65
+ */
66
+ readonly generateMipmaps?: boolean;
47
67
  /**
48
68
  * Render-target attachment created by a device's `createRenderTarget`. The
49
69
  * GPU storage is allocated by the device (texStorage2D for cube faces), so
@@ -57,12 +77,21 @@ export declare class Texture {
57
77
  readonly height: number;
58
78
  readonly dimension: TextureDimension;
59
79
  readonly format: TextureFormat;
60
- readonly colorSpace: TextureColorSpace;
80
+ /**
81
+ * threejs-parity ST-02 (L4): mutable — a handle may re-point the colour
82
+ * interpretation; writers must also mark `needsUpdate` so the next upload
83
+ * re-uploads with the new transfer function.
84
+ */
85
+ colorSpace: TextureColorSpace;
61
86
  readonly label: string;
62
87
  readonly data: TexturePixelData | null;
63
88
  readonly mipLevels: readonly TextureMipLevel[];
64
89
  readonly cubeFaces: readonly TextureCubeFaceLevel[];
65
90
  readonly source: TexImageSource | null;
91
+ /** threejs-parity ST-02 (L4): see {@link TextureDescriptor.flipY}. */
92
+ flipY: boolean;
93
+ /** threejs-parity ST-02 (L4): see {@link TextureDescriptor.generateMipmaps}. */
94
+ generateMipmaps: boolean;
66
95
  readonly fallbackData: Uint8Array | null;
67
96
  readonly fallbackMipLevels: readonly TextureMipLevel[];
68
97
  /** C-18: layer count for `2d-array` textures; 1 for 2d/cube. */
@@ -78,6 +107,29 @@ export declare class Texture {
78
107
  get fallbackTextureLevels(): readonly TextureMipLevel[];
79
108
  /** C-18 (PR 0a): content revision, incremented by `update`. */
80
109
  revision: number;
110
+ /**
111
+ * threejs-parity ST-02/ST-03 (L4): dirty flag mirroring three's
112
+ * `Texture.needsUpdate`. Setting it true bumps {@link revision} exactly once
113
+ * per dirty cycle (repeated `true` writes while still dirty do not bump
114
+ * again); devices clear it once the revision has been uploaded, so a
115
+ * canvas/video texture only re-uploads after a fresh mark.
116
+ */
117
+ private _needsUpdate;
118
+ get needsUpdate(): boolean;
119
+ set needsUpdate(value: boolean);
120
+ /**
121
+ * Mark the texture's content changed for the next upload. Idempotent while
122
+ * a previous mark is still unconsumed — the second+ `needsUpdate = true`
123
+ * before an upload does not produce extra revisions.
124
+ */
125
+ markNeedsUpdate(): void;
126
+ /**
127
+ * threejs-parity ST-03 (L4): optional source-driven poll for live sources
128
+ * (video textures). Devices call it before comparing `revision` on the
129
+ * cached handle, letting a source mark `needsUpdate` when a new frame is
130
+ * ready — per-frame video upload without an app-level driver.
131
+ */
132
+ pollContentRevision?: () => void;
81
133
  /**
82
134
  * C-18: the pending sub-region recorded by the last `update`. Consumed by the
83
135
  * device's texture upload path and cleared after the re-upload is issued.
@@ -1 +1 @@
1
- {"version":3,"file":"Texture.d.ts","sourceRoot":"","sources":["../../../../packages/rendering/src/Texture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Texture.d.ts","sourceRoot":"","sources":["../../../../packages/rendering/src/Texture.ts"],"names":[],"mappings":"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"}
@@ -13,12 +13,21 @@ export class Texture {
13
13
  height;
14
14
  dimension;
15
15
  format;
16
+ /**
17
+ * threejs-parity ST-02 (L4): mutable — a handle may re-point the colour
18
+ * interpretation; writers must also mark `needsUpdate` so the next upload
19
+ * re-uploads with the new transfer function.
20
+ */
16
21
  colorSpace;
17
22
  label;
18
23
  data;
19
24
  mipLevels;
20
25
  cubeFaces;
21
26
  source;
27
+ /** threejs-parity ST-02 (L4): see {@link TextureDescriptor.flipY}. */
28
+ flipY;
29
+ /** threejs-parity ST-02 (L4): see {@link TextureDescriptor.generateMipmaps}. */
30
+ generateMipmaps;
22
31
  fallbackData;
23
32
  fallbackMipLevels;
24
33
  /** C-18: layer count for `2d-array` textures; 1 for 2d/cube. */
@@ -55,6 +64,8 @@ export class Texture {
55
64
  this.mipLevels = descriptor.mipLevels ? cloneMipLevels(descriptor.mipLevels, "mipLevels") : [];
56
65
  this.cubeFaces = descriptor.cubeFaces ? cloneCubeFaces(descriptor.cubeFaces) : [];
57
66
  this.source = descriptor.source ?? null;
67
+ this.flipY = descriptor.flipY === true;
68
+ this.generateMipmaps = descriptor.generateMipmaps ?? true;
58
69
  this.fallbackData = descriptor.fallbackData ? new Uint8Array(descriptor.fallbackData) : null;
59
70
  this.fallbackMipLevels = descriptor.fallbackMipLevels ? cloneMipLevels(descriptor.fallbackMipLevels, "fallbackMipLevels") : [];
60
71
  this.dynamic = descriptor.dynamic === true;
@@ -62,8 +73,10 @@ export class Texture {
62
73
  if (this.dimension === "2d-array" && (!Number.isInteger(this.layers) || this.layers < 1)) {
63
74
  throw new Error("2d-array textures require layers to be a positive integer");
64
75
  }
65
- if (this.dynamic && (this.dimension !== "2d" || this.mipLevels.length > 0 || this.source || isCompressedTextureFormat(this.format) || this.format === "depth24")) {
66
- throw new Error("dynamic textures must be flat, non-compressed 2D textures without an image source");
76
+ // threejs-parity ST-03 (L4): `dynamic` + `source` is the canvas/video
77
+ // combination — re-uploaded in place from the live source on each revision.
78
+ if (this.dynamic && (this.dimension !== "2d" || this.mipLevels.length > 0 || isCompressedTextureFormat(this.format) || this.format === "depth24")) {
79
+ throw new Error("dynamic textures must be flat, non-compressed 2D textures (an image source is allowed for canvas/video re-uploads)");
67
80
  }
68
81
  if (this.dimension === "cube") {
69
82
  if (this.data || this.mipLevels.length > 0 || this.source || this.fallbackData || this.fallbackMipLevels.length > 0) {
@@ -168,6 +181,43 @@ export class Texture {
168
181
  }
169
182
  /** C-18 (PR 0a): content revision, incremented by `update`. */
170
183
  revision = 0;
184
+ /**
185
+ * threejs-parity ST-02/ST-03 (L4): dirty flag mirroring three's
186
+ * `Texture.needsUpdate`. Setting it true bumps {@link revision} exactly once
187
+ * per dirty cycle (repeated `true` writes while still dirty do not bump
188
+ * again); devices clear it once the revision has been uploaded, so a
189
+ * canvas/video texture only re-uploads after a fresh mark.
190
+ */
191
+ _needsUpdate = false;
192
+ get needsUpdate() {
193
+ return this._needsUpdate;
194
+ }
195
+ set needsUpdate(value) {
196
+ if (value) {
197
+ this.markNeedsUpdate();
198
+ }
199
+ else {
200
+ this._needsUpdate = false;
201
+ }
202
+ }
203
+ /**
204
+ * Mark the texture's content changed for the next upload. Idempotent while
205
+ * a previous mark is still unconsumed — the second+ `needsUpdate = true`
206
+ * before an upload does not produce extra revisions.
207
+ */
208
+ markNeedsUpdate() {
209
+ if (this.disposed || this._needsUpdate)
210
+ return;
211
+ this._needsUpdate = true;
212
+ this.revision += 1;
213
+ }
214
+ /**
215
+ * threejs-parity ST-03 (L4): optional source-driven poll for live sources
216
+ * (video textures). Devices call it before comparing `revision` on the
217
+ * cached handle, letting a source mark `needsUpdate` when a new frame is
218
+ * ready — per-frame video upload without an app-level driver.
219
+ */
220
+ pollContentRevision;
171
221
  /**
172
222
  * C-18: the pending sub-region recorded by the last `update`. Consumed by the
173
223
  * device's texture upload path and cleared after the re-upload is issued.
@@ -210,6 +260,7 @@ export class Texture {
210
260
  }
211
261
  this.data = data;
212
262
  this.pendingUpdateRegion = region ?? null;
263
+ this._needsUpdate = true;
213
264
  this.revision += 1;
214
265
  }
215
266
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Texture.js","sourceRoot":"","sources":["../../../../packages/rendering/src/Texture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Texture.js","sourceRoot":"","sources":["../../../../packages/rendering/src/Texture.ts"],"names":[],"mappings":"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"}