@carbonenginejs/runtime 0.1.0-alpha.0 → 0.1.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (929) hide show
  1. package/README.md +58 -125
  2. package/dist/audio/index.js +8 -1
  3. package/dist/audio/index.js.map +1 -1
  4. package/dist/audio/trinity/audio/AudActionLog/AudActionLogCB.js +84 -0
  5. package/dist/audio/trinity/audio/AudActionLog/AudActionLogCB.js.map +1 -0
  6. package/dist/audio/trinity/audio/AudActionLog/AudActionRecord.js +14 -0
  7. package/dist/audio/trinity/audio/AudActionLog/AudActionRecord.js.map +1 -0
  8. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordExecuteActionOnPlayingID.js +26 -0
  9. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordExecuteActionOnPlayingID.js.map +1 -0
  10. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordPostEvent.js +27 -0
  11. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordPostEvent.js.map +1 -0
  12. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordSetRTPC.js +27 -0
  13. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordSetRTPC.js.map +1 -0
  14. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordSetState.js +25 -0
  15. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordSetState.js.map +1 -0
  16. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordSetSwitch.js +26 -0
  17. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordSetSwitch.js.map +1 -0
  18. package/dist/audio/trinity/audio/AudActionLog/IAudActionLog.js +58 -0
  19. package/dist/audio/trinity/audio/AudActionLog/IAudActionLog.js.map +1 -0
  20. package/dist/audio/trinity/audio/AudManager.js +1 -1
  21. package/dist/audio/trinity/audio/AudManager.js.map +1 -1
  22. package/dist/audio/trinity/audio/{AudObstructionOcclusion.js → AudObstructionOcclusion/AudObstructionOcclusion.js} +8 -52
  23. package/dist/audio/trinity/audio/AudObstructionOcclusion/AudObstructionOcclusion.js.map +1 -0
  24. package/dist/audio/trinity/audio/AudObstructionOcclusion/EmitterState.js +17 -0
  25. package/dist/audio/trinity/audio/AudObstructionOcclusion/EmitterState.js.map +1 -0
  26. package/dist/audio/trinity/audio/AudObstructionOcclusion/FadingValue.js +46 -0
  27. package/dist/audio/trinity/audio/AudObstructionOcclusion/FadingValue.js.map +1 -0
  28. package/dist/audio/trinity/index.js +8 -1
  29. package/dist/audio/trinity/index.js.map +1 -1
  30. package/dist/character/CjsCharacterAppearanceConstruction.js +5 -0
  31. package/dist/character/CjsCharacterAppearanceConstruction.js.map +1 -1
  32. package/dist/character/CjsCharacterAppearanceManager.js +14 -0
  33. package/dist/character/CjsCharacterAppearanceManager.js.map +1 -1
  34. package/dist/character/CjsCharacterFoundationConstruction.js +5 -0
  35. package/dist/character/CjsCharacterFoundationConstruction.js.map +1 -1
  36. package/dist/character/CjsCharacterTexturePolicy.js +5 -0
  37. package/dist/character/CjsCharacterTexturePolicy.js.map +1 -1
  38. package/dist/character/gles/CjsCharacterGlesAppearanceAL.js +17 -0
  39. package/dist/character/gles/CjsCharacterGlesAppearanceAL.js.map +1 -1
  40. package/dist/character/gles/CjsCharacterGlesAtlasRenderer.js +2 -0
  41. package/dist/character/gles/CjsCharacterGlesAtlasRenderer.js.map +1 -1
  42. package/dist/character/gles/CjsCharacterGlesFoundationTranslator.js +5 -0
  43. package/dist/character/gles/CjsCharacterGlesFoundationTranslator.js.map +1 -1
  44. package/dist/character/gles/CjsCharacterGlesLegacyConstructionTranslator.js +5 -0
  45. package/dist/character/gles/CjsCharacterGlesLegacyConstructionTranslator.js.map +1 -1
  46. package/dist/character/gles/CjsCharacterGlesMorphDeformation.js +2 -0
  47. package/dist/character/gles/CjsCharacterGlesMorphDeformation.js.map +1 -1
  48. package/dist/character/gles/CjsCharacterGlesPaletteCompatibility.js +5 -0
  49. package/dist/character/gles/CjsCharacterGlesPaletteCompatibility.js.map +1 -1
  50. package/dist/character/gles/CjsCharacterGlesTriangleCoverage.js +5 -0
  51. package/dist/character/gles/CjsCharacterGlesTriangleCoverage.js.map +1 -1
  52. package/dist/character/webgl2/CjsCharacterWebgl2EffectRouter.js +9 -0
  53. package/dist/character/webgl2/CjsCharacterWebgl2EffectRouter.js.map +1 -1
  54. package/dist/global/blue/CjsScriptCallback.js +142 -0
  55. package/dist/global/blue/CjsScriptCallback.js.map +1 -0
  56. package/dist/global/blue/index.js +2 -0
  57. package/dist/global/blue/index.js.map +1 -0
  58. package/dist/global/consts/renderContext/formats.js +51 -1
  59. package/dist/global/consts/renderContext/formats.js.map +1 -1
  60. package/dist/global/consts/renderContext/index.js +2 -2
  61. package/dist/global/consts/renderContext/renderStates.js +16 -1
  62. package/dist/global/consts/renderContext/renderStates.js.map +1 -1
  63. package/dist/global/contracts/index.js +0 -1
  64. package/dist/global/contracts/index.js.map +1 -1
  65. package/dist/global/index.js +4 -3
  66. package/dist/global/index.js.map +1 -1
  67. package/dist/global/math/index.js +2 -0
  68. package/dist/global/math/index.js.map +1 -1
  69. package/dist/global/math/mesh.js +70 -16
  70. package/dist/global/math/mesh.js.map +1 -1
  71. package/dist/global/math/noise.js +47 -68
  72. package/dist/global/math/noise.js.map +1 -1
  73. package/dist/global/math/pool.js +18 -3
  74. package/dist/global/math/pool.js.map +1 -1
  75. package/dist/global/math/random.js +52 -0
  76. package/dist/global/math/random.js.map +1 -0
  77. package/dist/global/math/tri3.js +18 -4
  78. package/dist/global/math/tri3.js.map +1 -1
  79. package/dist/global/utils/bytes.js +22 -4
  80. package/dist/global/utils/bytes.js.map +1 -1
  81. package/dist/global/utils/checksum.js +80 -0
  82. package/dist/global/utils/checksum.js.map +1 -0
  83. package/dist/global/utils/errors/CjsCancellationError.js +36 -0
  84. package/dist/global/utils/errors/CjsCancellationError.js.map +1 -0
  85. package/dist/global/utils/errors/CjsError.js +21 -52
  86. package/dist/global/utils/errors/CjsError.js.map +1 -1
  87. package/dist/global/utils/errors/abort.js +1 -1
  88. package/dist/global/utils/errors/abort.js.map +1 -1
  89. package/dist/global/utils/errors/index.js +2 -1
  90. package/dist/global/utils/errors/index.js.map +1 -1
  91. package/dist/global/utils/index.js +4 -2
  92. package/dist/global/utils/index.js.map +1 -1
  93. package/dist/index.js +95 -35
  94. package/dist/index.js.map +1 -1
  95. package/dist/input/Tr2MainWindow.js +7 -9
  96. package/dist/input/Tr2MainWindow.js.map +1 -1
  97. package/dist/resource/CjsResMan.js +33 -39
  98. package/dist/resource/CjsResMan.js.map +1 -1
  99. package/dist/resource/CjsResource.js +19 -5
  100. package/dist/resource/CjsResource.js.map +1 -1
  101. package/dist/resource/audio/AudioGeometryResData.js +22 -27
  102. package/dist/resource/audio/AudioGeometryResData.js.map +1 -1
  103. package/dist/resource/audio/CjsAudioRes.js +4 -5
  104. package/dist/resource/audio/CjsAudioRes.js.map +1 -1
  105. package/dist/resource/format/CjsBitReader.js +263 -0
  106. package/dist/resource/format/CjsBitReader.js.map +1 -0
  107. package/dist/resource/format/CjsByteReader.js +130 -125
  108. package/dist/resource/format/CjsByteReader.js.map +1 -1
  109. package/dist/resource/format/CjsFormat.js +11 -4
  110. package/dist/resource/format/CjsFormat.js.map +1 -1
  111. package/dist/resource/format/CjsFormatError.js +37 -1
  112. package/dist/resource/format/CjsFormatError.js.map +1 -1
  113. package/dist/resource/format/CjsResourceProbe.js +41 -37
  114. package/dist/resource/format/CjsResourceProbe.js.map +1 -1
  115. package/dist/resource/format/carbonRecordGuard.js +33 -0
  116. package/dist/resource/format/carbonRecordGuard.js.map +1 -0
  117. package/dist/resource/format/imageSignatures.js +202 -0
  118. package/dist/resource/format/imageSignatures.js.map +1 -0
  119. package/dist/resource/format/index.js +2 -1
  120. package/dist/resource/format/index.js.map +1 -1
  121. package/dist/resource/format/jsonPolicies.js +180 -0
  122. package/dist/resource/format/jsonPolicies.js.map +1 -0
  123. package/dist/resource/formats/black/core/helpers.js +18 -29
  124. package/dist/resource/formats/black/core/helpers.js.map +1 -1
  125. package/dist/resource/formats/bnk/CjsBnkFormat.js +4 -3
  126. package/dist/resource/formats/bnk/CjsBnkFormat.js.map +1 -1
  127. package/dist/resource/formats/bnk/core/WwiseCursor.js +218 -0
  128. package/dist/resource/formats/bnk/core/WwiseCursor.js.map +1 -0
  129. package/dist/resource/formats/bnk/core/busNodes.js +2 -1
  130. package/dist/resource/formats/bnk/core/busNodes.js.map +1 -1
  131. package/dist/resource/formats/bnk/core/effectNodes.js +2 -1
  132. package/dist/resource/formats/bnk/core/effectNodes.js.map +1 -1
  133. package/dist/resource/formats/bnk/core/eventAction.js +15 -93
  134. package/dist/resource/formats/bnk/core/eventAction.js.map +1 -1
  135. package/dist/resource/formats/bnk/core/globalSettings.js +19 -94
  136. package/dist/resource/formats/bnk/core/globalSettings.js.map +1 -1
  137. package/dist/resource/formats/bnk/core/helpers.js +2 -48
  138. package/dist/resource/formats/bnk/core/helpers.js.map +1 -1
  139. package/dist/resource/formats/bnk/core/musicNodes.js +42 -134
  140. package/dist/resource/formats/bnk/core/musicNodes.js.map +1 -1
  141. package/dist/resource/formats/bnk/core/nodeBase.js +20 -111
  142. package/dist/resource/formats/bnk/core/nodeBase.js.map +1 -1
  143. package/dist/resource/formats/bnk/core/sfxNodes.js +2 -1
  144. package/dist/resource/formats/bnk/core/sfxNodes.js.map +1 -1
  145. package/dist/resource/formats/cmf/CjsCmfFormat.js +242 -228
  146. package/dist/resource/formats/cmf/CjsCmfFormat.js.map +1 -1
  147. package/dist/resource/formats/cmf/core/binary.js +54 -60
  148. package/dist/resource/formats/cmf/core/binary.js.map +1 -1
  149. package/dist/resource/formats/dds/CjsDdsFormat.js +5 -3
  150. package/dist/resource/formats/dds/CjsDdsFormat.js.map +1 -1
  151. package/dist/resource/formats/dds/core/bc6h.js +16 -18
  152. package/dist/resource/formats/dds/core/bc6h.js.map +1 -1
  153. package/dist/resource/formats/dds/core/bc7.js +28 -24
  154. package/dist/resource/formats/dds/core/bc7.js.map +1 -1
  155. package/dist/resource/formats/dds/core/helpers.js +7 -133
  156. package/dist/resource/formats/dds/core/helpers.js.map +1 -1
  157. package/dist/resource/formats/dxbc/CjsDxbcFormat.js +3 -2
  158. package/dist/resource/formats/dxbc/CjsDxbcFormat.js.map +1 -1
  159. package/dist/resource/formats/dxbc/core/helpers.js +4 -32
  160. package/dist/resource/formats/dxbc/core/helpers.js.map +1 -1
  161. package/dist/resource/formats/fbx/CjsFbxFormat.js +11 -0
  162. package/dist/resource/formats/fbx/CjsFbxFormat.js.map +1 -1
  163. package/dist/resource/formats/fbx/core/helpers.js +18 -12
  164. package/dist/resource/formats/fbx/core/helpers.js.map +1 -1
  165. package/dist/resource/formats/flac/CjsFlacFormat.js +4 -9
  166. package/dist/resource/formats/flac/CjsFlacFormat.js.map +1 -1
  167. package/dist/resource/formats/flac/core/helpers.js +1 -62
  168. package/dist/resource/formats/flac/core/helpers.js.map +1 -1
  169. package/dist/resource/formats/gif/CjsGifFormat.js +4 -9
  170. package/dist/resource/formats/gif/CjsGifFormat.js.map +1 -1
  171. package/dist/resource/formats/gif/core/helpers.js +1 -63
  172. package/dist/resource/formats/gif/core/helpers.js.map +1 -1
  173. package/dist/resource/formats/gltf/CjsGltfFormat.js +4 -3
  174. package/dist/resource/formats/gltf/CjsGltfFormat.js.map +1 -1
  175. package/dist/resource/formats/gltf/core/helpers.js +3 -19
  176. package/dist/resource/formats/gltf/core/helpers.js.map +1 -1
  177. package/dist/resource/formats/gr2/CjsGr2Format.js +105 -92
  178. package/dist/resource/formats/gr2/CjsGr2Format.js.map +1 -1
  179. package/dist/resource/formats/gr2/core/container.js +1 -10
  180. package/dist/resource/formats/gr2/core/container.js.map +1 -1
  181. package/dist/resource/formats/gr2/core/helpers.js +24 -35
  182. package/dist/resource/formats/gr2/core/helpers.js.map +1 -1
  183. package/dist/resource/formats/gr2/core/shared.js +193 -189
  184. package/dist/resource/formats/gr2/core/shared.js.map +1 -1
  185. package/dist/resource/formats/hlsl/CjsHlslFormat.js +4 -3
  186. package/dist/resource/formats/hlsl/CjsHlslFormat.js.map +1 -1
  187. package/dist/resource/formats/hlsl/core/helpers.js +1 -30
  188. package/dist/resource/formats/hlsl/core/helpers.js.map +1 -1
  189. package/dist/resource/formats/jpeg/CjsJpegFormat.js +5 -3
  190. package/dist/resource/formats/jpeg/CjsJpegFormat.js.map +1 -1
  191. package/dist/resource/formats/jpeg/core/helpers.js +7 -134
  192. package/dist/resource/formats/jpeg/core/helpers.js.map +1 -1
  193. package/dist/resource/formats/mp3/CjsMp3Format.js +4 -9
  194. package/dist/resource/formats/mp3/CjsMp3Format.js.map +1 -1
  195. package/dist/resource/formats/mp3/core/helpers.js +1 -64
  196. package/dist/resource/formats/mp3/core/helpers.js.map +1 -1
  197. package/dist/resource/formats/mp4/CjsMp4Format.js +4 -9
  198. package/dist/resource/formats/mp4/CjsMp4Format.js.map +1 -1
  199. package/dist/resource/formats/mp4/core/helpers.js +1 -73
  200. package/dist/resource/formats/mp4/core/helpers.js.map +1 -1
  201. package/dist/resource/formats/obj/CjsObjFormat.js +4 -3
  202. package/dist/resource/formats/obj/CjsObjFormat.js.map +1 -1
  203. package/dist/resource/formats/obj/core/helpers.js +93 -115
  204. package/dist/resource/formats/obj/core/helpers.js.map +1 -1
  205. package/dist/resource/formats/ogg/CjsOggFormat.js +4 -3
  206. package/dist/resource/formats/ogg/CjsOggFormat.js.map +1 -1
  207. package/dist/resource/formats/ogg/core/helpers.js +1 -15
  208. package/dist/resource/formats/ogg/core/helpers.js.map +1 -1
  209. package/dist/resource/formats/ogg/core/vorbis.js +138 -144
  210. package/dist/resource/formats/ogg/core/vorbis.js.map +1 -1
  211. package/dist/resource/formats/pickle/CjsPickleFormat.js +83 -114
  212. package/dist/resource/formats/pickle/CjsPickleFormat.js.map +1 -1
  213. package/dist/resource/formats/png/CjsPngFormat.js +5 -3
  214. package/dist/resource/formats/png/CjsPngFormat.js.map +1 -1
  215. package/dist/resource/formats/png/core/helpers.js +13 -152
  216. package/dist/resource/formats/png/core/helpers.js.map +1 -1
  217. package/dist/resource/formats/png/core/writer.js +3 -27
  218. package/dist/resource/formats/png/core/writer.js.map +1 -1
  219. package/dist/resource/formats/red/core/helpers.js +19 -29
  220. package/dist/resource/formats/red/core/helpers.js.map +1 -1
  221. package/dist/resource/formats/stl/CjsStlFormat.js +158 -147
  222. package/dist/resource/formats/stl/CjsStlFormat.js.map +1 -1
  223. package/dist/resource/formats/stl/core/helpers.js +44 -66
  224. package/dist/resource/formats/stl/core/helpers.js.map +1 -1
  225. package/dist/resource/formats/tga/CjsTgaFormat.js +5 -3
  226. package/dist/resource/formats/tga/CjsTgaFormat.js.map +1 -1
  227. package/dist/resource/formats/tga/core/helpers.js +7 -153
  228. package/dist/resource/formats/tga/core/helpers.js.map +1 -1
  229. package/dist/resource/formats/vta/CjsVtaFormat.js +4 -3
  230. package/dist/resource/formats/vta/CjsVtaFormat.js.map +1 -1
  231. package/dist/resource/formats/vta/core/helpers.js +1 -17
  232. package/dist/resource/formats/vta/core/helpers.js.map +1 -1
  233. package/dist/resource/formats/wav/CjsWavFormat.js +4 -3
  234. package/dist/resource/formats/wav/CjsWavFormat.js.map +1 -1
  235. package/dist/resource/formats/wav/core/helpers.js +1 -15
  236. package/dist/resource/formats/wav/core/helpers.js.map +1 -1
  237. package/dist/resource/formats/webgl/CjsWebglFormat.js +4 -3
  238. package/dist/resource/formats/webgl/CjsWebglFormat.js.map +1 -1
  239. package/dist/resource/formats/webgl/core/glsl/DxbcGlslEmitter.js +52 -4
  240. package/dist/resource/formats/webgl/core/glsl/DxbcGlslEmitter.js.map +1 -1
  241. package/dist/resource/formats/webgl/core/helpers.js +39 -68
  242. package/dist/resource/formats/webgl/core/helpers.js.map +1 -1
  243. package/dist/resource/formats/webgpu/CjsWebgpuFormat.js +4 -3
  244. package/dist/resource/formats/webgpu/CjsWebgpuFormat.js.map +1 -1
  245. package/dist/resource/formats/webgpu/core/helpers.js +4 -30
  246. package/dist/resource/formats/webgpu/core/helpers.js.map +1 -1
  247. package/dist/resource/formats/webm/CjsWebmFormat.js +4 -9
  248. package/dist/resource/formats/webm/CjsWebmFormat.js.map +1 -1
  249. package/dist/resource/formats/webm/core/helpers.js +1 -73
  250. package/dist/resource/formats/webm/core/helpers.js.map +1 -1
  251. package/dist/resource/formats/webp/CjsWebpFormat.js +4 -9
  252. package/dist/resource/formats/webp/CjsWebpFormat.js.map +1 -1
  253. package/dist/resource/formats/webp/core/helpers.js +1 -62
  254. package/dist/resource/formats/webp/core/helpers.js.map +1 -1
  255. package/dist/resource/formats/wem/CjsWemFormat.js +4 -3
  256. package/dist/resource/formats/wem/CjsWemFormat.js.map +1 -1
  257. package/dist/resource/formats/wem/core/bitStream.js +83 -106
  258. package/dist/resource/formats/wem/core/bitStream.js.map +1 -1
  259. package/dist/resource/formats/wem/core/codebookLibrary.js +52 -52
  260. package/dist/resource/formats/wem/core/codebookLibrary.js.map +1 -1
  261. package/dist/resource/formats/wem/core/helpers.js +1 -15
  262. package/dist/resource/formats/wem/core/helpers.js.map +1 -1
  263. package/dist/resource/formats/wem/core/wemToOgg.js +67 -67
  264. package/dist/resource/formats/wem/core/wemToOgg.js.map +1 -1
  265. package/dist/resource/geometry/MeshDecalData.js +23 -25
  266. package/dist/resource/geometry/MeshDecalData.js.map +1 -1
  267. package/dist/resource/geometry/MeshDecalLodData.js +14 -23
  268. package/dist/resource/geometry/MeshDecalLodData.js.map +1 -1
  269. package/dist/resource/geometry/TriGeometryRes.js +299 -284
  270. package/dist/resource/geometry/TriGeometryRes.js.map +1 -1
  271. package/dist/resource/geometry/TriGeometryResAreaData.js +30 -31
  272. package/dist/resource/geometry/TriGeometryResAreaData.js.map +1 -1
  273. package/dist/resource/geometry/TriGeometryResJointData.js +16 -24
  274. package/dist/resource/geometry/TriGeometryResJointData.js.map +1 -1
  275. package/dist/resource/geometry/TriGeometryResLodData.js +50 -41
  276. package/dist/resource/geometry/TriGeometryResLodData.js.map +1 -1
  277. package/dist/resource/geometry/TriGeometryResMeshData.js +32 -32
  278. package/dist/resource/geometry/TriGeometryResMeshData.js.map +1 -1
  279. package/dist/resource/geometry/TriGeometryResSkeletonData.js +14 -23
  280. package/dist/resource/geometry/TriGeometryResSkeletonData.js.map +1 -1
  281. package/dist/resource/geometry/TriJointBinding.js +16 -24
  282. package/dist/resource/geometry/TriJointBinding.js.map +1 -1
  283. package/dist/resource/geometry/TriMorphTargetGeometryConstants.js +22 -27
  284. package/dist/resource/geometry/TriMorphTargetGeometryConstants.js.map +1 -1
  285. package/dist/resource/geometry/TriRtGeometryConstants.js +50 -41
  286. package/dist/resource/geometry/TriRtGeometryConstants.js.map +1 -1
  287. package/dist/resource/geometry/granny/GStateBindingCallbackData.js +12 -22
  288. package/dist/resource/geometry/granny/GStateBindingCallbackData.js.map +1 -1
  289. package/dist/resource/geometry/granny/Tr2GrannyIntersectionResult.js +30 -31
  290. package/dist/resource/geometry/granny/Tr2GrannyIntersectionResult.js.map +1 -1
  291. package/dist/resource/index.js +1 -1
  292. package/dist/resource/shader/reflection/Tr2EffectConstant.js +16 -17
  293. package/dist/resource/shader/reflection/Tr2EffectConstant.js.map +1 -1
  294. package/dist/resource/shader/reflection/Tr2EffectDescription.js +26 -28
  295. package/dist/resource/shader/reflection/Tr2EffectDescription.js.map +1 -1
  296. package/dist/resource/shader/reflection/Tr2EffectLibrary.js +24 -25
  297. package/dist/resource/shader/reflection/Tr2EffectLibrary.js.map +1 -1
  298. package/dist/resource/shader/reflection/Tr2EffectParameterAnnotation.js +21 -22
  299. package/dist/resource/shader/reflection/Tr2EffectParameterAnnotation.js.map +1 -1
  300. package/dist/resource/shader/reflection/Tr2EffectResource.js +25 -26
  301. package/dist/resource/shader/reflection/Tr2EffectResource.js.map +1 -1
  302. package/dist/resource/shader/reflection/Tr2EffectStageInput.js +69 -72
  303. package/dist/resource/shader/reflection/Tr2EffectStageInput.js.map +1 -1
  304. package/dist/resource/shader/reflection/Tr2EffectTechnique.js +17 -18
  305. package/dist/resource/shader/reflection/Tr2EffectTechnique.js.map +1 -1
  306. package/dist/resource/shader/reflection/Tr2Pass.js +42 -43
  307. package/dist/resource/shader/reflection/Tr2Pass.js.map +1 -1
  308. package/dist/resource/shader/reflection/Tr2RenderStateSetup.js +26 -5
  309. package/dist/resource/shader/reflection/Tr2RenderStateSetup.js.map +1 -1
  310. package/dist/resource/shader/reflection/carbonRecordFields.js +87 -90
  311. package/dist/resource/shader/reflection/carbonRecordFields.js.map +1 -1
  312. package/dist/resource/shader/sampler/Tr2SamplerSetup.js +32 -34
  313. package/dist/resource/shader/sampler/Tr2SamplerSetup.js.map +1 -1
  314. package/dist/resource/texture/CjsTextureArrayRes.js +1 -6
  315. package/dist/resource/texture/CjsTextureArrayRes.js.map +1 -1
  316. package/dist/resource/texture/Tr2TextureLodManager.js +35 -27
  317. package/dist/resource/texture/Tr2TextureLodManager.js.map +1 -1
  318. package/dist/resource/texture/Tr2TextureLodUpdateRequest.js +16 -24
  319. package/dist/resource/texture/Tr2TextureLodUpdateRequest.js.map +1 -1
  320. package/dist/resource/texture/Tr2TexturePackChannel.js +16 -24
  321. package/dist/resource/texture/Tr2TexturePackChannel.js.map +1 -1
  322. package/dist/resource/texture/Tr2TexturePipeline.js +24 -20
  323. package/dist/resource/texture/Tr2TexturePipeline.js.map +1 -1
  324. package/dist/resource/texture/Tr2TexturePipelineParams.js +14 -23
  325. package/dist/resource/texture/Tr2TexturePipelineParams.js.map +1 -1
  326. package/dist/resource/texture/Tr2TexturePipelineStepCompress.js +18 -25
  327. package/dist/resource/texture/Tr2TexturePipelineStepCompress.js.map +1 -1
  328. package/dist/resource/texture/Tr2TexturePipelineStepGenerateMips.js +11 -16
  329. package/dist/resource/texture/Tr2TexturePipelineStepGenerateMips.js.map +1 -1
  330. package/dist/resource/texture/Tr2TexturePipelineStepLimitSize.js +14 -23
  331. package/dist/resource/texture/Tr2TexturePipelineStepLimitSize.js.map +1 -1
  332. package/dist/resource/texture/Tr2TexturePipelineStepLoad.js +12 -22
  333. package/dist/resource/texture/Tr2TexturePipelineStepLoad.js.map +1 -1
  334. package/dist/resource/texture/Tr2TexturePipelineStepPack.js +38 -26
  335. package/dist/resource/texture/Tr2TexturePipelineStepPack.js.map +1 -1
  336. package/dist/resource/worker/CjsResManMainThreadLoader.js +2 -5
  337. package/dist/resource/worker/CjsResManMainThreadLoader.js.map +1 -1
  338. package/dist/resource/worker/CjsResManWorkerLoader.js +6 -7
  339. package/dist/resource/worker/CjsResManWorkerLoader.js.map +1 -1
  340. package/dist/resource/worker/protocol.js +18 -1
  341. package/dist/resource/worker/protocol.js.map +1 -1
  342. package/dist/sof/EveSOF.js +2 -222
  343. package/dist/sof/EveSOF.js.map +1 -1
  344. package/dist/sof/SofDocumentBuilder.js +205 -0
  345. package/dist/sof/SofDocumentBuilder.js.map +1 -0
  346. package/dist/sof/faction/ErrSOFFactionColorSetTypeNotFound.js +16 -0
  347. package/dist/sof/faction/ErrSOFFactionColorSetTypeNotFound.js.map +1 -0
  348. package/dist/sof/faction/ErrSOFFactionColorSetTypeUnknown.js +16 -0
  349. package/dist/sof/faction/ErrSOFFactionColorSetTypeUnknown.js.map +1 -0
  350. package/dist/sof/faction/EveSOFDataFactionColorSet.js +3 -27
  351. package/dist/sof/faction/EveSOFDataFactionColorSet.js.map +1 -1
  352. package/dist/sof/faction/index.js +3 -1
  353. package/dist/sof/faction/index.js.map +1 -1
  354. package/dist/sof/generic/ErrSOFAreaShaderNotFound.js +18 -0
  355. package/dist/sof/generic/ErrSOFAreaShaderNotFound.js.map +1 -0
  356. package/dist/sof/generic/ErrSOFDecalShaderNotFound.js +18 -0
  357. package/dist/sof/generic/ErrSOFDecalShaderNotFound.js.map +1 -0
  358. package/dist/sof/generic/ErrSOFMaterialPrefixNotFound.js +21 -0
  359. package/dist/sof/generic/ErrSOFMaterialPrefixNotFound.js.map +1 -0
  360. package/dist/sof/generic/ErrSOFPatternMaterialPrefixNotFound.js +21 -0
  361. package/dist/sof/generic/ErrSOFPatternMaterialPrefixNotFound.js.map +1 -0
  362. package/dist/sof/generic/EveSOFDataGeneric.js +5 -69
  363. package/dist/sof/generic/EveSOFDataGeneric.js.map +1 -1
  364. package/dist/sof/generic/index.js +5 -1
  365. package/dist/sof/generic/index.js.map +1 -1
  366. package/dist/sof/index.js +23 -7
  367. package/dist/sof/index.js.map +1 -1
  368. package/dist/sof/pattern/ErrSOFProjectionNotFound.js +20 -0
  369. package/dist/sof/pattern/ErrSOFProjectionNotFound.js.map +1 -0
  370. package/dist/sof/pattern/EveSOFDataPattern.js +2 -17
  371. package/dist/sof/pattern/EveSOFDataPattern.js.map +1 -1
  372. package/dist/sof/pattern/index.js +2 -1
  373. package/dist/sof/pattern/index.js.map +1 -1
  374. package/dist/sof/shared/ErrSOFAreaTypeNotFound.js +16 -0
  375. package/dist/sof/shared/ErrSOFAreaTypeNotFound.js.map +1 -0
  376. package/dist/sof/shared/ErrSOFLogoSetTypeNotFound.js +16 -0
  377. package/dist/sof/shared/ErrSOFLogoSetTypeNotFound.js.map +1 -0
  378. package/dist/sof/shared/ErrSOFLogoSetTypeUnknown.js +16 -0
  379. package/dist/sof/shared/ErrSOFLogoSetTypeUnknown.js.map +1 -0
  380. package/dist/sof/shared/EveSOFDataArea.js +2 -13
  381. package/dist/sof/shared/EveSOFDataArea.js.map +1 -1
  382. package/dist/sof/shared/EveSOFDataLogoSet.js +3 -27
  383. package/dist/sof/shared/EveSOFDataLogoSet.js.map +1 -1
  384. package/dist/sof/shared/EveSOFDataParameter.js +2 -146
  385. package/dist/sof/shared/EveSOFDataParameter.js.map +1 -1
  386. package/dist/sof/shared/EveSOFDataParameterBool.js +40 -0
  387. package/dist/sof/shared/EveSOFDataParameterBool.js.map +1 -0
  388. package/dist/sof/shared/EveSOFDataParameterColor.js +36 -0
  389. package/dist/sof/shared/EveSOFDataParameterColor.js.map +1 -0
  390. package/dist/sof/shared/EveSOFDataParameterFloat.js +37 -0
  391. package/dist/sof/shared/EveSOFDataParameterFloat.js.map +1 -0
  392. package/dist/sof/shared/EveSOFDataParameterInt.js +37 -0
  393. package/dist/sof/shared/EveSOFDataParameterInt.js.map +1 -0
  394. package/dist/sof/shared/EveSOFDataParameterVector2.js +37 -0
  395. package/dist/sof/shared/EveSOFDataParameterVector2.js.map +1 -0
  396. package/dist/sof/shared/EveSOFDataParameterVector3.js +37 -0
  397. package/dist/sof/shared/EveSOFDataParameterVector3.js.map +1 -0
  398. package/dist/sof/shared/{EveSOFDataSpotlightAttachment.js → EveSOFDataSpotLightAttachment.js} +1 -1
  399. package/dist/sof/shared/{EveSOFDataSpotlightAttachment.js.map → EveSOFDataSpotLightAttachment.js.map} +1 -1
  400. package/dist/sof/shared/index.js +13 -4
  401. package/dist/sof/shared/index.js.map +1 -1
  402. package/dist/sof/sofDocumentValues.js +33 -0
  403. package/dist/sof/sofDocumentValues.js.map +1 -0
  404. package/dist/trinity/controllers/ITr2Controller/ITr2ActionController.js +168 -0
  405. package/dist/trinity/controllers/ITr2Controller/ITr2ActionController.js.map +1 -0
  406. package/dist/trinity/controllers/{ITr2Controller.js → ITr2Controller/ITr2Controller.js} +2 -134
  407. package/dist/trinity/controllers/ITr2Controller/ITr2Controller.js.map +1 -0
  408. package/dist/trinity/controllers/Tr2Controller.js +2 -1
  409. package/dist/trinity/controllers/Tr2Controller.js.map +1 -1
  410. package/dist/trinity/controllers/Tr2ControllerReference.js +2 -1
  411. package/dist/trinity/controllers/Tr2ControllerReference.js.map +1 -1
  412. package/dist/trinity/controllers/action/ITr2ControllerAction.js +2 -1
  413. package/dist/trinity/controllers/action/ITr2ControllerAction.js.map +1 -1
  414. package/dist/trinity/controllers/action/Tr2ActionSpawnParticles.js +10 -9
  415. package/dist/trinity/controllers/action/Tr2ActionSpawnParticles.js.map +1 -1
  416. package/dist/trinity/controllers/expression/CjsControllerExpressionCompileError.js +26 -0
  417. package/dist/trinity/controllers/expression/CjsControllerExpressionCompileError.js.map +1 -0
  418. package/dist/trinity/controllers/expression/CjsControllerExpressionEvaluateError.js +24 -0
  419. package/dist/trinity/controllers/expression/CjsControllerExpressionEvaluateError.js.map +1 -0
  420. package/dist/trinity/controllers/expression/CjsControllerExpressionParser.js +387 -0
  421. package/dist/trinity/controllers/expression/CjsControllerExpressionParser.js.map +1 -0
  422. package/dist/trinity/controllers/expression/CjsControllerExpressionProgram.js +4 -1011
  423. package/dist/trinity/controllers/expression/CjsControllerExpressionProgram.js.map +1 -1
  424. package/dist/trinity/controllers/expression/expressionRuntime.js +605 -0
  425. package/dist/trinity/controllers/expression/expressionRuntime.js.map +1 -0
  426. package/dist/trinity/controllers/index.js +5 -2
  427. package/dist/trinity/controllers/index.js.map +1 -1
  428. package/dist/trinity/controllers/state/ITr2StateMachineStateFinalizer.js +2 -1
  429. package/dist/trinity/controllers/state/ITr2StateMachineStateFinalizer.js.map +1 -1
  430. package/dist/trinity/controllers/timeline/Tr2TimelineController.js +2 -1
  431. package/dist/trinity/controllers/timeline/Tr2TimelineController.js.map +1 -1
  432. package/dist/trinity/core/ITr2Updateable.js +2 -1
  433. package/dist/trinity/core/ITr2Updateable.js.map +1 -1
  434. package/dist/trinity/core/Tr2Blitter.js +6 -3
  435. package/dist/trinity/core/Tr2Blitter.js.map +1 -1
  436. package/dist/trinity/core/Tr2Denoiser.js +256 -0
  437. package/dist/trinity/core/Tr2Denoiser.js.map +1 -0
  438. package/dist/trinity/core/Tr2GpuResourcePool/GpuResourceHandle.js +115 -0
  439. package/dist/trinity/core/Tr2GpuResourcePool/GpuResourceHandle.js.map +1 -0
  440. package/dist/trinity/core/Tr2GpuResourcePool/TextureSize2D.js +79 -0
  441. package/dist/trinity/core/Tr2GpuResourcePool/TextureSize2D.js.map +1 -0
  442. package/dist/trinity/core/{Tr2GpuResourcePool.js → Tr2GpuResourcePool/Tr2GpuResourcePool.js} +63 -151
  443. package/dist/trinity/core/Tr2GpuResourcePool/Tr2GpuResourcePool.js.map +1 -0
  444. package/dist/trinity/core/{Tr2QuadRenderer.js → Tr2QuadRenderer/Tr2QuadRenderer.js} +8 -30
  445. package/dist/trinity/core/Tr2QuadRenderer/Tr2QuadRenderer.js.map +1 -0
  446. package/dist/trinity/core/Tr2QuadRenderer/Tr2QuadRendererEffectRecord.js +38 -0
  447. package/dist/trinity/core/Tr2QuadRenderer/Tr2QuadRendererEffectRecord.js.map +1 -0
  448. package/dist/trinity/core/Tr2RenderUtils.js +20 -3
  449. package/dist/trinity/core/Tr2RenderUtils.js.map +1 -1
  450. package/dist/trinity/core/Tr2Renderer.js +146 -1
  451. package/dist/trinity/core/Tr2Renderer.js.map +1 -1
  452. package/dist/trinity/core/Tr2ShadowMap.js +135 -14
  453. package/dist/trinity/core/Tr2ShadowMap.js.map +1 -1
  454. package/dist/trinity/core/{Tr2TextureArray.js → Tr2TextureArray/Tr2TextureArray.js} +3 -58
  455. package/dist/trinity/core/Tr2TextureArray/Tr2TextureArray.js.map +1 -0
  456. package/dist/trinity/core/Tr2TextureArray/Tr2TextureArrayElement.js +61 -0
  457. package/dist/trinity/core/Tr2TextureArray/Tr2TextureArrayElement.js.map +1 -0
  458. package/dist/trinity/core/batch/TriRenderBatch/DefaultKeyGenerator.js +26 -0
  459. package/dist/trinity/core/batch/TriRenderBatch/DefaultKeyGenerator.js.map +1 -0
  460. package/dist/trinity/core/batch/TriRenderBatch/EffectKeyGenerator.js +29 -0
  461. package/dist/trinity/core/batch/TriRenderBatch/EffectKeyGenerator.js.map +1 -0
  462. package/dist/trinity/core/batch/{ITriRenderBatchAccumulator.js → TriRenderBatch/ITriRenderBatchAccumulator.js} +30 -30
  463. package/dist/trinity/core/batch/TriRenderBatch/ITriRenderBatchAccumulator.js.map +1 -0
  464. package/dist/trinity/core/batch/{Tr2RenderBatch.js → TriRenderBatch/Tr2RenderBatch.js} +81 -154
  465. package/dist/trinity/core/batch/TriRenderBatch/Tr2RenderBatch.js.map +1 -0
  466. package/dist/trinity/core/batch/{TriRenderBatchAccumulator.js → TriRenderBatch/TriRenderBatchAccumulator.js} +7 -38
  467. package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAccumulator.js.map +1 -0
  468. package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlock.js +61 -0
  469. package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlock.js.map +1 -0
  470. package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlocksWithSharedMaterial.js +40 -0
  471. package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlocksWithSharedMaterial.js.map +1 -0
  472. package/dist/trinity/core/batch/TriRenderBatchMap.js +6 -1
  473. package/dist/trinity/core/batch/TriRenderBatchMap.js.map +1 -1
  474. package/dist/trinity/core/context/Tr2RenderContext.js +75 -57
  475. package/dist/trinity/core/context/Tr2RenderContext.js.map +1 -1
  476. package/dist/trinity/core/context/Tr2VisibilityResults/Tr2VisibilityEvent.js +67 -0
  477. package/dist/trinity/core/context/Tr2VisibilityResults/Tr2VisibilityEvent.js.map +1 -0
  478. package/dist/trinity/core/context/Tr2VisibilityResults/Tr2VisibilityResults.js +50 -0
  479. package/dist/trinity/core/context/Tr2VisibilityResults/Tr2VisibilityResults.js.map +1 -0
  480. package/dist/trinity/core/device/Tr2DepthStencil.js +186 -13
  481. package/dist/trinity/core/device/Tr2DepthStencil.js.map +1 -1
  482. package/dist/trinity/core/device/{Tr2RingBuffer.js → Tr2RingBuffer/Tr2RingBuffer.js} +27 -79
  483. package/dist/trinity/core/device/Tr2RingBuffer/Tr2RingBuffer.js.map +1 -0
  484. package/dist/trinity/core/device/Tr2RingBuffer/Tr2RingBufferOffsets.js +114 -0
  485. package/dist/trinity/core/device/Tr2RingBuffer/Tr2RingBufferOffsets.js.map +1 -0
  486. package/dist/trinity/core/device/{Tr2SuballocatedBuffer.js → Tr2SuballocatedBuffer/Tr2SuballocatedBuffer.js} +5 -59
  487. package/dist/trinity/core/device/Tr2SuballocatedBuffer/Tr2SuballocatedBuffer.js.map +1 -0
  488. package/dist/trinity/core/device/Tr2SuballocatedBuffer/Tr2SuballocatedBufferAllocation.js +80 -0
  489. package/dist/trinity/core/device/Tr2SuballocatedBuffer/Tr2SuballocatedBufferAllocation.js.map +1 -0
  490. package/dist/trinity/core/index.js +42 -15
  491. package/dist/trinity/core/index.js.map +1 -1
  492. package/dist/trinity/core/lighting/Tr2LightManager.js +6 -1
  493. package/dist/trinity/core/lighting/Tr2LightManager.js.map +1 -1
  494. package/dist/trinity/core/mesh/{ITr2ImpostorSource.js → ITr2ImpostorSource/ITr2ImpostorSource.js} +6 -28
  495. package/dist/trinity/core/mesh/ITr2ImpostorSource/ITr2ImpostorSource.js.map +1 -0
  496. package/dist/trinity/core/mesh/ITr2ImpostorSource/ITr2ImpostorSourceImpostorHash.js +32 -0
  497. package/dist/trinity/core/mesh/ITr2ImpostorSource/ITr2ImpostorSourceImpostorHash.js.map +1 -0
  498. package/dist/trinity/core/mesh/{ITr2InstanceData.js → ITr2InstanceData/ITr2InstanceData.js} +5 -29
  499. package/dist/trinity/core/mesh/ITr2InstanceData/ITr2InstanceData.js.map +1 -0
  500. package/dist/trinity/core/mesh/ITr2InstanceData/ITr2InstanceDataInstanceData.js +33 -0
  501. package/dist/trinity/core/mesh/ITr2InstanceData/ITr2InstanceDataInstanceData.js.map +1 -0
  502. package/dist/trinity/core/mesh/Tr2DirectInstanceData.js +2 -1
  503. package/dist/trinity/core/mesh/Tr2DirectInstanceData.js.map +1 -1
  504. package/dist/trinity/core/mesh/Tr2MeshBase.js +7 -1
  505. package/dist/trinity/core/mesh/Tr2MeshBase.js.map +1 -1
  506. package/dist/trinity/core/mesh/Tr2RuntimeInstanceData.js +2 -1
  507. package/dist/trinity/core/mesh/Tr2RuntimeInstanceData.js.map +1 -1
  508. package/dist/trinity/core/mesh/TriGeometryResAllocations.js +6 -2
  509. package/dist/trinity/core/mesh/TriGeometryResAllocations.js.map +1 -1
  510. package/dist/trinity/core/rawData/CjsConstantLayout.js +196 -0
  511. package/dist/trinity/core/rawData/CjsConstantLayout.js.map +1 -0
  512. package/dist/trinity/core/rawData/CjsPerFrameLayouts.js +8 -3
  513. package/dist/trinity/core/rawData/CjsPerFrameLayouts.js.map +1 -1
  514. package/dist/trinity/core/rawData/CjsPerObjectLayouts.js +40 -732
  515. package/dist/trinity/core/rawData/CjsPerObjectLayouts.js.map +1 -1
  516. package/dist/trinity/core/rawData/layouts/CjsEveBasicLayout.js +34 -0
  517. package/dist/trinity/core/rawData/layouts/CjsEveBasicLayout.js.map +1 -0
  518. package/dist/trinity/core/rawData/layouts/CjsEveBoosterSetLayout.js +69 -0
  519. package/dist/trinity/core/rawData/layouts/CjsEveBoosterSetLayout.js.map +1 -0
  520. package/dist/trinity/core/rawData/layouts/CjsEveChildBoosterSetLayout.js +59 -0
  521. package/dist/trinity/core/rawData/layouts/CjsEveChildBoosterSetLayout.js.map +1 -0
  522. package/dist/trinity/core/rawData/layouts/CjsEveChildBulletStormLayout.js +37 -0
  523. package/dist/trinity/core/rawData/layouts/CjsEveChildBulletStormLayout.js.map +1 -0
  524. package/dist/trinity/core/rawData/layouts/CjsEveChildSpherePinLayout.js +44 -0
  525. package/dist/trinity/core/rawData/layouts/CjsEveChildSpherePinLayout.js.map +1 -0
  526. package/dist/trinity/core/rawData/layouts/CjsEveLensflareLayout.js +31 -0
  527. package/dist/trinity/core/rawData/layouts/CjsEveLensflareLayout.js.map +1 -0
  528. package/dist/trinity/core/rawData/layouts/CjsEveMissileWarheadLayout.js +29 -0
  529. package/dist/trinity/core/rawData/layouts/CjsEveMissileWarheadLayout.js.map +1 -0
  530. package/dist/trinity/core/rawData/layouts/CjsEvePerObjectLayout.js +39 -0
  531. package/dist/trinity/core/rawData/layouts/CjsEvePerObjectLayout.js.map +1 -0
  532. package/dist/trinity/core/rawData/layouts/CjsEveSceneStaticParticlesLayout.js +30 -0
  533. package/dist/trinity/core/rawData/layouts/CjsEveSceneStaticParticlesLayout.js.map +1 -0
  534. package/dist/trinity/core/rawData/layouts/CjsEveSpaceObjectDecalLayout.js +78 -0
  535. package/dist/trinity/core/rawData/layouts/CjsEveSpaceObjectDecalLayout.js.map +1 -0
  536. package/dist/trinity/core/rawData/layouts/CjsEveSpaceObjectLayout.js +169 -0
  537. package/dist/trinity/core/rawData/layouts/CjsEveSpaceObjectLayout.js.map +1 -0
  538. package/dist/trinity/core/rawData/layouts/CjsEveSpacePerObjectLayout.js +107 -0
  539. package/dist/trinity/core/rawData/layouts/CjsEveSpacePerObjectLayout.js.map +1 -0
  540. package/dist/trinity/core/rawData/layouts/CjsEveSpherePinLayout.js +44 -0
  541. package/dist/trinity/core/rawData/layouts/CjsEveSpherePinLayout.js.map +1 -0
  542. package/dist/trinity/core/rawData/layouts/CjsEveStretch2Layout.js +34 -0
  543. package/dist/trinity/core/rawData/layouts/CjsEveStretch2Layout.js.map +1 -0
  544. package/dist/trinity/core/rawData/layouts/CjsEveTurretSetLayout.js +82 -0
  545. package/dist/trinity/core/rawData/layouts/CjsEveTurretSetLayout.js.map +1 -0
  546. package/dist/trinity/core/rawData/layouts/CjsTr2PerObjectLayout.js +42 -0
  547. package/dist/trinity/core/rawData/layouts/CjsTr2PerObjectLayout.js.map +1 -0
  548. package/dist/trinity/core/rawData/perObjectData/EveBasicPerObjectData.js +55 -0
  549. package/dist/trinity/core/rawData/perObjectData/EveBasicPerObjectData.js.map +1 -0
  550. package/dist/trinity/core/rawData/perObjectData/EveBoosterSetPerObjectData.js +59 -0
  551. package/dist/trinity/core/rawData/perObjectData/EveBoosterSetPerObjectData.js.map +1 -0
  552. package/dist/trinity/core/rawData/perObjectData/EveChildBoosterSetPerObjectData.js +59 -0
  553. package/dist/trinity/core/rawData/perObjectData/EveChildBoosterSetPerObjectData.js.map +1 -0
  554. package/dist/trinity/core/rawData/perObjectData/EveChildBulletStormPerObjectData.js +55 -0
  555. package/dist/trinity/core/rawData/perObjectData/EveChildBulletStormPerObjectData.js.map +1 -0
  556. package/dist/trinity/core/rawData/perObjectData/EveChildSpherePinPerObjectData.js +55 -0
  557. package/dist/trinity/core/rawData/perObjectData/EveChildSpherePinPerObjectData.js.map +1 -0
  558. package/dist/trinity/core/rawData/perObjectData/EveDecalPerObjectData.js +59 -0
  559. package/dist/trinity/core/rawData/perObjectData/EveDecalPerObjectData.js.map +1 -0
  560. package/dist/trinity/core/rawData/perObjectData/EveLensflarePerObjectData.js +55 -0
  561. package/dist/trinity/core/rawData/perObjectData/EveLensflarePerObjectData.js.map +1 -0
  562. package/dist/trinity/core/rawData/perObjectData/EveMissileWarheadPerObjectData.js +55 -0
  563. package/dist/trinity/core/rawData/perObjectData/EveMissileWarheadPerObjectData.js.map +1 -0
  564. package/dist/trinity/core/rawData/perObjectData/EveSceneStaticParticlesPerObjectData.js +55 -0
  565. package/dist/trinity/core/rawData/perObjectData/EveSceneStaticParticlesPerObjectData.js.map +1 -0
  566. package/dist/trinity/core/rawData/perObjectData/EveSpherePinPerObjectData.js +55 -0
  567. package/dist/trinity/core/rawData/perObjectData/EveSpherePinPerObjectData.js.map +1 -0
  568. package/dist/trinity/core/rawData/perObjectData/EveTurretSetPerObjectData.js +59 -0
  569. package/dist/trinity/core/rawData/perObjectData/EveTurretSetPerObjectData.js.map +1 -0
  570. package/dist/trinity/core/rawData/perObjectData/StretchPerObjectData.js +55 -0
  571. package/dist/trinity/core/rawData/perObjectData/StretchPerObjectData.js.map +1 -0
  572. package/dist/trinity/core/rawData/{Tr2PerObjectData.js → perObjectData/Tr2PerObjectData.js} +110 -62
  573. package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectData.js.map +1 -0
  574. package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataPSBuffer.js +104 -0
  575. package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataPSBuffer.js.map +1 -0
  576. package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataStandard.js +87 -0
  577. package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataStandard.js.map +1 -0
  578. package/dist/trinity/core/variable/TriVariable.js +83 -83
  579. package/dist/trinity/core/variable/TriVariable.js.map +1 -1
  580. package/dist/trinity/core/vertex/{Tr2VertexDefinition.js → Tr2VertexDefinition/Tr2VertexDefinition.js} +4 -20
  581. package/dist/trinity/core/vertex/Tr2VertexDefinition/Tr2VertexDefinition.js.map +1 -0
  582. package/dist/trinity/core/vertex/Tr2VertexDefinition/Tr2VertexDefinitionItem.js +29 -0
  583. package/dist/trinity/core/vertex/Tr2VertexDefinition/Tr2VertexDefinitionItem.js.map +1 -0
  584. package/dist/trinity/core/volumetrics/Tr2VolumetricsRenderer.js +116 -36
  585. package/dist/trinity/core/volumetrics/Tr2VolumetricsRenderer.js.map +1 -1
  586. package/dist/trinity/curves/curve/Tr2CurveRandomAxisRotation.js +50 -92
  587. package/dist/trinity/curves/curve/Tr2CurveRandomAxisRotation.js.map +1 -1
  588. package/dist/trinity/eve/EveModularObjectModifier.js +9 -5
  589. package/dist/trinity/eve/EveModularObjectModifier.js.map +1 -1
  590. package/dist/trinity/eve/IEveInheritPropertiesOwner.js +2 -1
  591. package/dist/trinity/eve/IEveInheritPropertiesOwner.js.map +1 -1
  592. package/dist/trinity/eve/IEveSpaceObject2.js +2 -1
  593. package/dist/trinity/eve/IEveSpaceObject2.js.map +1 -1
  594. package/dist/trinity/eve/IEveTransform.js +2 -1
  595. package/dist/trinity/eve/IEveTransform.js.map +1 -1
  596. package/dist/trinity/eve/attachment/banner/EveBannerSet.js +2 -2
  597. package/dist/trinity/eve/attachment/banner/EveBannerSet.js.map +1 -1
  598. package/dist/trinity/eve/attachment/booster/EveBoosterSet2.js +109 -133
  599. package/dist/trinity/eve/attachment/booster/EveBoosterSet2.js.map +1 -1
  600. package/dist/trinity/eve/attachment/booster/EveBoosterSet2Item.js +40 -0
  601. package/dist/trinity/eve/attachment/booster/EveBoosterSet2Item.js.map +1 -0
  602. package/dist/trinity/eve/attachment/booster/EveBoosterSet2Renderable.js +1 -1
  603. package/dist/trinity/eve/attachment/booster/EveBoosterSet2Renderable.js.map +1 -1
  604. package/dist/trinity/eve/attachment/decal/DecalMeshCache.js +2 -14
  605. package/dist/trinity/eve/attachment/decal/DecalMeshCache.js.map +1 -1
  606. package/dist/trinity/eve/attachment/decal/DecalMeshCacheMeshBuffers.js +18 -0
  607. package/dist/trinity/eve/attachment/decal/DecalMeshCacheMeshBuffers.js.map +1 -0
  608. package/dist/trinity/eve/attachment/decal/EveSpaceObjectDecal.js +1 -1
  609. package/dist/trinity/eve/attachment/decal/EveSpaceObjectDecal.js.map +1 -1
  610. package/dist/trinity/eve/attachment/haze/EveHazeSet.js +1 -1
  611. package/dist/trinity/eve/attachment/haze/EveHazeSet.js.map +1 -1
  612. package/dist/trinity/eve/attachment/plane/EvePlaneSet.js +1 -1
  613. package/dist/trinity/eve/attachment/plane/EvePlaneSet.js.map +1 -1
  614. package/dist/trinity/eve/attachment/spotlight/EveSpotlightSet.js +2 -2
  615. package/dist/trinity/eve/attachment/spotlight/EveSpotlightSet.js.map +1 -1
  616. package/dist/trinity/eve/attachment/sprite/EveSpriteLineSet.js +1 -1
  617. package/dist/trinity/eve/attachment/sprite/EveSpriteLineSet.js.map +1 -1
  618. package/dist/trinity/eve/attachment/sprite/EveSpriteSet.js +4 -2
  619. package/dist/trinity/eve/attachment/sprite/EveSpriteSet.js.map +1 -1
  620. package/dist/trinity/eve/attachment/turrets/EveTurretSet.js +143 -139
  621. package/dist/trinity/eve/attachment/turrets/EveTurretSet.js.map +1 -1
  622. package/dist/trinity/eve/camera/EveCamera.js +1 -1
  623. package/dist/trinity/eve/camera/EveCamera.js.map +1 -1
  624. package/dist/trinity/eve/child/EveChildBoosterSet.js +12 -1
  625. package/dist/trinity/eve/child/EveChildBoosterSet.js.map +1 -1
  626. package/dist/trinity/eve/child/EveChildCloud2.js +178 -151
  627. package/dist/trinity/eve/child/EveChildCloud2.js.map +1 -1
  628. package/dist/trinity/eve/child/EveChildContainer.js +141 -141
  629. package/dist/trinity/eve/child/EveChildContainer.js.map +1 -1
  630. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMesh.js +87 -0
  631. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMesh.js.map +1 -0
  632. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshArea.js +46 -0
  633. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshArea.js.map +1 -0
  634. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshInstance.js +35 -0
  635. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshInstance.js.map +1 -0
  636. package/dist/trinity/eve/child/{EveChildInstancedMeshes.js → EveChildInstancedMeshes/EveChildInstancedMeshes.js} +42 -163
  637. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshes.js.map +1 -0
  638. package/dist/trinity/eve/child/EveChildMesh.js +218 -218
  639. package/dist/trinity/eve/child/EveChildMesh.js.map +1 -1
  640. package/dist/trinity/eve/child/EveChildPartData/EveChildPartData.js +53 -0
  641. package/dist/trinity/eve/child/EveChildPartData/EveChildPartData.js.map +1 -0
  642. package/dist/trinity/eve/child/{EveChildPartData.js → EveChildPartData/EveChildPartDataPartData.js} +9 -45
  643. package/dist/trinity/eve/child/EveChildPartData/EveChildPartDataPartData.js.map +1 -0
  644. package/dist/trinity/eve/child/EveChildParticleSystem.js +30 -29
  645. package/dist/trinity/eve/child/EveChildParticleSystem.js.map +1 -1
  646. package/dist/trinity/eve/child/EveChildTransform.js +5 -0
  647. package/dist/trinity/eve/child/EveChildTransform.js.map +1 -1
  648. package/dist/trinity/eve/child/EveChildTurret.js +7 -0
  649. package/dist/trinity/eve/child/EveChildTurret.js.map +1 -1
  650. package/dist/trinity/eve/index.js +10 -4
  651. package/dist/trinity/eve/index.js.map +1 -1
  652. package/dist/trinity/eve/lights/Tr2Light.js +5 -0
  653. package/dist/trinity/eve/lights/Tr2Light.js.map +1 -1
  654. package/dist/trinity/eve/overlays/overlayBatches.js +6 -1
  655. package/dist/trinity/eve/overlays/overlayBatches.js.map +1 -1
  656. package/dist/trinity/eve/particles/static/EveSceneStaticParticles.js +4 -4
  657. package/dist/trinity/eve/particles/static/EveSceneStaticParticles.js.map +1 -1
  658. package/dist/trinity/eve/renderable/stretch/EveStretch2.js +76 -71
  659. package/dist/trinity/eve/renderable/stretch/EveStretch2.js.map +1 -1
  660. package/dist/trinity/eve/renderable/stretch/EveStretch3.js +1 -1
  661. package/dist/trinity/eve/renderable/stretch/EveStretch3.js.map +1 -1
  662. package/dist/trinity/eve/spaceObject/EveShip2.js +3 -3
  663. package/dist/trinity/eve/spaceObject/EveShip2.js.map +1 -1
  664. package/dist/trinity/eve/spaceObject/EveSpaceObject2.js +408 -407
  665. package/dist/trinity/eve/spaceObject/EveSpaceObject2.js.map +1 -1
  666. package/dist/trinity/eve/ui/EveTacticalOverlay.js +1 -1
  667. package/dist/trinity/eve/ui/EveTacticalOverlay.js.map +1 -1
  668. package/dist/trinity/eve/ui/lines/EveCurveLineSet.js +9 -9
  669. package/dist/trinity/eve/ui/lines/EveCurveLineSet.js.map +1 -1
  670. package/dist/trinity/eve/ui/lines/EveLineSet.js +27 -25
  671. package/dist/trinity/eve/ui/lines/EveLineSet.js.map +1 -1
  672. package/dist/trinity/eve/ui/tacticalOverlay/EveTacticalTrails.js +3 -2
  673. package/dist/trinity/eve/ui/tacticalOverlay/EveTacticalTrails.js.map +1 -1
  674. package/dist/trinity/generated/index.js +0 -1
  675. package/dist/trinity/generated/index.js.map +1 -1
  676. package/dist/trinity/generated/trinityCore/index.js +0 -1
  677. package/dist/trinity/generated/trinityCore/index.js.map +1 -1
  678. package/dist/trinity/index.js +59 -23
  679. package/dist/trinity/index.js.map +1 -1
  680. package/dist/trinity/particle/{ITr2GenericEmitter.js → ITr2GenericEmitter/ITr2GenericEmitter.js} +4 -32
  681. package/dist/trinity/particle/ITr2GenericEmitter/ITr2GenericEmitter.js.map +1 -0
  682. package/dist/trinity/particle/ITr2GenericEmitter/ITr2GenericEmitterUpdateArguments.js +36 -0
  683. package/dist/trinity/particle/ITr2GenericEmitter/ITr2GenericEmitterUpdateArguments.js.map +1 -0
  684. package/dist/trinity/particle/Tr2ParticleSystem.js +4 -2
  685. package/dist/trinity/particle/Tr2ParticleSystem.js.map +1 -1
  686. package/dist/trinity/particle/element/Tr2ParticleElementData.js +15 -4
  687. package/dist/trinity/particle/element/Tr2ParticleElementData.js.map +1 -1
  688. package/dist/trinity/particle/emitter/Tr2DynamicEmitter.js +21 -20
  689. package/dist/trinity/particle/emitter/Tr2DynamicEmitter.js.map +1 -1
  690. package/dist/trinity/particle/emitter/Tr2GpuSharedEmitter.js +23 -22
  691. package/dist/trinity/particle/emitter/Tr2GpuSharedEmitter.js.map +1 -1
  692. package/dist/trinity/particle/emitter/Tr2StaticEmitter.js +14 -13
  693. package/dist/trinity/particle/emitter/Tr2StaticEmitter.js.map +1 -1
  694. package/dist/trinity/particle/index.js +2 -1
  695. package/dist/trinity/particle/index.js.map +1 -1
  696. package/dist/trinity/renderJob/step/TriStepPushRenderTarget.js +7 -1
  697. package/dist/trinity/renderJob/step/TriStepPushRenderTarget.js.map +1 -1
  698. package/dist/trinity/shader/Tr2Effect.js +131 -58
  699. package/dist/trinity/shader/Tr2Effect.js.map +1 -1
  700. package/dist/trinity/shader/Tr2EffectStateManager.js +17 -5
  701. package/dist/trinity/shader/Tr2EffectStateManager.js.map +1 -1
  702. package/dist/trinity/shader/Tr2Material.js +21 -4
  703. package/dist/trinity/shader/Tr2Material.js.map +1 -1
  704. package/dist/trinity/shader/material/Tr2EffectPassParameters.js +4 -1
  705. package/dist/trinity/shader/material/Tr2EffectPassParameters.js.map +1 -1
  706. package/dist/trinity/shader/parameter/Tr2GeometryBufferParameter.js +2 -2
  707. package/dist/trinity/shader/parameter/Tr2GeometryBufferParameter.js.map +1 -1
  708. package/dist/trinityal/Tr2BufferAL/Tr2BufferDescriptionAL.js +79 -0
  709. package/dist/trinityal/Tr2BufferAL/Tr2BufferDescriptionAL.js.map +1 -0
  710. package/dist/trinityal/{Tr2DeviceResourceAL.js → Tr2DeviceResourceAL/Tr2BaseDeviceResourceAL.js} +77 -79
  711. package/dist/trinityal/Tr2DeviceResourceAL/Tr2BaseDeviceResourceAL.js.map +1 -0
  712. package/dist/trinityal/Tr2DeviceResourceAL/Tr2DeviceResourceAL.js +24 -0
  713. package/dist/trinityal/Tr2DeviceResourceAL/Tr2DeviceResourceAL.js.map +1 -0
  714. package/dist/trinityal/Tr2DrawUPHelper.js +2 -1
  715. package/dist/trinityal/Tr2DrawUPHelper.js.map +1 -1
  716. package/dist/trinityal/Tr2HalHelperStructures/Tr2MsaaDesc.js +45 -0
  717. package/dist/trinityal/Tr2HalHelperStructures/Tr2MsaaDesc.js.map +1 -0
  718. package/dist/trinityal/Tr2HalHelperStructures/Tr2SamplerDescription.js +154 -0
  719. package/dist/trinityal/Tr2HalHelperStructures/Tr2SamplerDescription.js.map +1 -0
  720. package/dist/trinityal/Tr2HalHelperStructures/Tr2SubresourceData.js +48 -0
  721. package/dist/trinityal/Tr2HalHelperStructures/Tr2SubresourceData.js.map +1 -0
  722. package/dist/trinityal/Tr2HalHelperStructures/Tr2TextureCoordBox.js +75 -0
  723. package/dist/trinityal/Tr2HalHelperStructures/Tr2TextureCoordBox.js.map +1 -0
  724. package/dist/trinityal/{Tr2HalHelperStructures.js → Tr2HalHelperStructures/Tr2TextureSubresource.js} +11 -115
  725. package/dist/trinityal/Tr2HalHelperStructures/Tr2TextureSubresource.js.map +1 -0
  726. package/dist/trinityal/Tr2HalHelperStructures/Tr2Viewport.js +51 -0
  727. package/dist/trinityal/Tr2HalHelperStructures/Tr2Viewport.js.map +1 -0
  728. package/dist/trinityal/{Tr2RenderPassAL.js → Tr2RenderPassAL/Tr2ColorAttachment.js} +5 -28
  729. package/dist/trinityal/Tr2RenderPassAL/Tr2ColorAttachment.js.map +1 -0
  730. package/dist/trinityal/Tr2RenderPassAL/Tr2DepthAttachment.js +38 -0
  731. package/dist/trinityal/Tr2RenderPassAL/Tr2DepthAttachment.js.map +1 -0
  732. package/dist/trinityal/Tr2ResourceSetAL/Tr2RegisterMapAL.js +80 -0
  733. package/dist/trinityal/Tr2ResourceSetAL/Tr2RegisterMapAL.js.map +1 -0
  734. package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetAL.js +76 -0
  735. package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetAL.js.map +1 -0
  736. package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetALStub.js +96 -0
  737. package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetALStub.js.map +1 -0
  738. package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetDescriptionAL.js +196 -0
  739. package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetDescriptionAL.js.map +1 -0
  740. package/dist/trinityal/index.js +22 -9
  741. package/dist/trinityal/index.js.map +1 -1
  742. package/dist/trinityal/stub/Tr2BufferALStub.js +86 -141
  743. package/dist/trinityal/stub/Tr2BufferALStub.js.map +1 -1
  744. package/dist/trinityal/stub/Tr2CapsALStub.js +17 -0
  745. package/dist/trinityal/stub/Tr2CapsALStub.js.map +1 -1
  746. package/dist/trinityal/stub/Tr2ConstantBufferALStub.js +57 -41
  747. package/dist/trinityal/stub/Tr2ConstantBufferALStub.js.map +1 -1
  748. package/dist/trinityal/stub/Tr2FenceALStub.js +18 -2
  749. package/dist/trinityal/stub/Tr2FenceALStub.js.map +1 -1
  750. package/dist/trinityal/stub/Tr2GpuTimerALStub.js +97 -0
  751. package/dist/trinityal/stub/Tr2GpuTimerALStub.js.map +1 -0
  752. package/dist/trinityal/stub/Tr2OcclusionQueryALStub.js +124 -0
  753. package/dist/trinityal/stub/Tr2OcclusionQueryALStub.js.map +1 -0
  754. package/dist/trinityal/stub/Tr2PipelineStatsQueryALStub/Tr2PipelineStatsQueryALStub.js +146 -0
  755. package/dist/trinityal/stub/Tr2PipelineStatsQueryALStub/Tr2PipelineStatsQueryALStub.js.map +1 -0
  756. package/dist/trinityal/stub/Tr2RenderContextALStub/Tr2BindlessResourcesAL.js +28 -0
  757. package/dist/trinityal/stub/Tr2RenderContextALStub/Tr2BindlessResourcesAL.js.map +1 -0
  758. package/dist/trinityal/stub/{Tr2RenderContextALStub.js → Tr2RenderContextALStub/Tr2RenderContextALStub.js} +70 -75
  759. package/dist/trinityal/stub/Tr2RenderContextALStub/Tr2RenderContextALStub.js.map +1 -0
  760. package/dist/trinityal/stub/Tr2SamplerStateALStub.js +47 -31
  761. package/dist/trinityal/stub/Tr2SamplerStateALStub.js.map +1 -1
  762. package/dist/trinityal/stub/Tr2ShaderALStub.js +61 -45
  763. package/dist/trinityal/stub/Tr2ShaderALStub.js.map +1 -1
  764. package/dist/trinityal/stub/Tr2ShaderProgramALStub.js +51 -33
  765. package/dist/trinityal/stub/Tr2ShaderProgramALStub.js.map +1 -1
  766. package/dist/trinityal/stub/Tr2SwapChainALStub.js +61 -45
  767. package/dist/trinityal/stub/Tr2SwapChainALStub.js.map +1 -1
  768. package/dist/trinityal/stub/Tr2TextureALStub.js +188 -171
  769. package/dist/trinityal/stub/Tr2TextureALStub.js.map +1 -1
  770. package/dist/trinityal/stub/Tr2VertexLayoutALStub.js +43 -27
  771. package/dist/trinityal/stub/Tr2VertexLayoutALStub.js.map +1 -1
  772. package/dist/trinityal/stub/{Tr2VideoAdapterInfoALStub.js → Tr2VideoAdapterInfoStub.js} +16 -1
  773. package/dist/trinityal/stub/Tr2VideoAdapterInfoStub.js.map +1 -0
  774. package/dist/trinityal/stub/index.js +8 -4
  775. package/dist/trinityal/stub/index.js.map +1 -1
  776. package/dist/trinityal/vertexLayoutMatch.js +2 -2
  777. package/dist/trinityal/vertexLayoutMatch.js.map +1 -1
  778. package/dist/trinityal/webgpu/CjsWebgpuBufferAL.js +105 -90
  779. package/dist/trinityal/webgpu/CjsWebgpuBufferAL.js.map +1 -1
  780. package/dist/trinityal/webgpu/CjsWebgpuCapsAL.js +17 -0
  781. package/dist/trinityal/webgpu/CjsWebgpuCapsAL.js.map +1 -1
  782. package/dist/trinityal/webgpu/CjsWebgpuConstantBufferAL.js +15 -0
  783. package/dist/trinityal/webgpu/CjsWebgpuConstantBufferAL.js.map +1 -1
  784. package/dist/trinityal/webgpu/CjsWebgpuDevice.js +2 -2
  785. package/dist/trinityal/webgpu/CjsWebgpuDevice.js.map +1 -1
  786. package/dist/trinityal/webgpu/CjsWebgpuRenderContextAL.js +900 -938
  787. package/dist/trinityal/webgpu/CjsWebgpuRenderContextAL.js.map +1 -1
  788. package/dist/trinityal/webgpu/CjsWebgpuResourceSetAL.js +56 -60
  789. package/dist/trinityal/webgpu/CjsWebgpuResourceSetAL.js.map +1 -1
  790. package/dist/trinityal/webgpu/CjsWebgpuSamplerStateAL.js +16 -1
  791. package/dist/trinityal/webgpu/CjsWebgpuSamplerStateAL.js.map +1 -1
  792. package/dist/trinityal/webgpu/CjsWebgpuShaderAL.js +100 -379
  793. package/dist/trinityal/webgpu/CjsWebgpuShaderAL.js.map +1 -1
  794. package/dist/trinityal/webgpu/CjsWebgpuShaderProgramAL.js +330 -0
  795. package/dist/trinityal/webgpu/CjsWebgpuShaderProgramAL.js.map +1 -0
  796. package/dist/trinityal/webgpu/CjsWebgpuTextureAL.js +15 -0
  797. package/dist/trinityal/webgpu/CjsWebgpuTextureAL.js.map +1 -1
  798. package/dist/trinityal/webgpu/core/{constantArena.js → CjsWebgpuConstantArena.js} +1 -1
  799. package/dist/trinityal/webgpu/core/CjsWebgpuConstantArena.js.map +1 -0
  800. package/dist/trinityal/webgpu/core/{batchGroups.js → CjsWebgpuEncodeState.js} +1 -1
  801. package/dist/trinityal/webgpu/core/CjsWebgpuEncodeState.js.map +1 -0
  802. package/dist/trinityal/webgpu/core/{perFrameSource.js → CjsWebgpuPerFrameSource.js} +1 -1
  803. package/dist/trinityal/webgpu/core/CjsWebgpuPerFrameSource.js.map +1 -0
  804. package/dist/trinityal/webgpu/core/{pipelineCache.js → CjsWebgpuPipelineCache.js} +1 -1
  805. package/dist/trinityal/webgpu/core/CjsWebgpuPipelineCache.js.map +1 -0
  806. package/dist/trinityal/webgpu/core/{psoDescription.js → CjsWebgpuPsoDescription.js} +2 -2
  807. package/dist/trinityal/webgpu/core/CjsWebgpuPsoDescription.js.map +1 -0
  808. package/dist/trinityal/webgpu/core/{renderTarget.js → CjsWebgpuRenderTarget.js} +1 -1
  809. package/dist/trinityal/webgpu/core/CjsWebgpuRenderTarget.js.map +1 -0
  810. package/dist/trinityal/webgpu/core/{samplerSource.js → CjsWebgpuSamplerSource.js} +1 -1
  811. package/dist/trinityal/webgpu/core/CjsWebgpuSamplerSource.js.map +1 -0
  812. package/dist/trinityal/webgpu/core/{textureSource.js → CjsWebgpuTextureSource.js} +1 -1
  813. package/dist/trinityal/webgpu/core/CjsWebgpuTextureSource.js.map +1 -0
  814. package/dist/trinityal/webgpu/core/{trinityBatchDispatcher.js → CjsWebgpuTrinityBatchDispatcher.js} +4 -4
  815. package/dist/trinityal/webgpu/core/CjsWebgpuTrinityBatchDispatcher.js.map +1 -0
  816. package/dist/trinityal/webgpu/core/{trinityBatchResolver.js → CjsWebgpuTrinityBatchResolver.js} +81 -81
  817. package/dist/trinityal/webgpu/core/CjsWebgpuTrinityBatchResolver.js.map +1 -0
  818. package/dist/trinityal/webgpu/core/{trinityPassEncoder.js → CjsWebgpuTrinityPassEncoder.js} +2 -2
  819. package/dist/trinityal/webgpu/core/CjsWebgpuTrinityPassEncoder.js.map +1 -0
  820. package/dist/trinityal/webgpu/core/{workQueue.js → CjsWebgpuWorkQueue.js} +1 -1
  821. package/dist/trinityal/webgpu/core/CjsWebgpuWorkQueue.js.map +1 -0
  822. package/dist/trinityal/webgpu/internal.js +12 -11
  823. package/dist/trinityal/webgpu/internal.js.map +1 -1
  824. package/docs/audio/reference/classes/trinity.md +44 -34
  825. package/docs/character/architecture.md +276 -0
  826. package/docs/character/reference/character-appearance-plans.md +30 -66
  827. package/docs/character/reference/prepared-libraries.md +14 -30
  828. package/docs/global/reference/api.md +2 -1
  829. package/docs/global/reference/classes/README.md +53 -71
  830. package/docs/global/reference/classes/dropped.md +16 -0
  831. package/docs/resource/README.md +19 -15
  832. package/docs/resource/architecture.md +9 -2
  833. package/docs/resource/concepts/format-capabilities.md +124 -80
  834. package/docs/resource/concepts/shared-format-helpers.md +94 -0
  835. package/docs/resource/formats/README.md +230 -224
  836. package/docs/resource/formats/bitknit2.md +221 -0
  837. package/docs/resource/formats/carbon-effect-container.md +184 -269
  838. package/docs/resource/formats/gr2.md +6 -1
  839. package/docs/resource/formats/schemabound.md +28 -48
  840. package/docs/resource/formats/static.md +70 -97
  841. package/docs/resource/formats/webgl/carbon-constant-layouts.md +8 -8
  842. package/docs/resource/formats/webgl/decl-io.md +165 -256
  843. package/docs/resource/formats/webgl/memory-structured.md +64 -142
  844. package/docs/resource/formats/webgl/texture-sample.md +109 -138
  845. package/docs/resource/formats/webgpu/formats/carbon-webgpu.md +38 -69
  846. package/docs/resource/formats/webgpu/guides/effect-packaging.md +54 -116
  847. package/docs/resource/formats/webgpu/reference/api.md +64 -67
  848. package/docs/resource/formats/webgpu/reference/wgsl-compatibility.md +104 -260
  849. package/docs/resource/reference/classes/core.md +256 -236
  850. package/docs/resource/reference/classes/formats.md +1668 -1672
  851. package/docs/resource/reference/workers.md +4 -2
  852. package/docs/sof/reference/classes/core.md +1 -1
  853. package/docs/sof/reference/classes/faction.md +2 -2
  854. package/docs/sof/reference/classes/generic.md +4 -4
  855. package/docs/sof/reference/classes/pattern.md +1 -1
  856. package/docs/sof/reference/classes/shared.md +10 -10
  857. package/docs/trinity/architecture.md +55 -44
  858. package/docs/trinity/concepts/generated-class-lifecycle.md +10 -15
  859. package/docs/trinity/reference/classes/curves-and-utilities.md +496 -506
  860. package/docs/trinity/reference/classes/dropped.md +0 -189
  861. package/docs/trinity/reference/classes/eve-runtime.md +8 -8
  862. package/docs/trinity/reference/classes/generated.md +0 -10
  863. package/docs/trinity/reference/classes/particle.md +2 -2
  864. package/docs/trinity/reference/classes/trinity-core.md +1554 -1256
  865. package/docs/trinity/reference/implementation-status.md +50 -75
  866. package/docs/trinity/reference/main-semantic-extraction.md +13 -17
  867. package/docs/trinityal/reference/classes/README.md +77 -27
  868. package/docs/trinityal/reference/classes/dropped.md +82 -0
  869. package/docs/trinityal/webgpu/README.md +3 -1
  870. package/docs/trinityal/webgpu/architecture.md +121 -228
  871. package/docs/trinityal/webgpu/reference/api.md +5 -5
  872. package/docs/trinityal/webgpu/reference/classes/README.md +13 -13
  873. package/format-notices/gr2/NOTICE +18 -12
  874. package/format-notices/gr2/THIRD-PARTY-NOTICES.md +5 -5
  875. package/package.json +4 -1
  876. package/dist/audio/trinity/audio/AudActionLog.js +0 -173
  877. package/dist/audio/trinity/audio/AudActionLog.js.map +0 -1
  878. package/dist/audio/trinity/audio/AudObstructionOcclusion.js.map +0 -1
  879. package/dist/global/contracts/CjsScriptCallback.js +0 -94
  880. package/dist/global/contracts/CjsScriptCallback.js.map +0 -1
  881. package/dist/trinity/controllers/ITr2Controller.js.map +0 -1
  882. package/dist/trinity/core/Tr2GpuResourcePool.js.map +0 -1
  883. package/dist/trinity/core/Tr2QuadRenderer.js.map +0 -1
  884. package/dist/trinity/core/Tr2TextureArray.js.map +0 -1
  885. package/dist/trinity/core/batch/ITriRenderBatchAccumulator.js.map +0 -1
  886. package/dist/trinity/core/batch/Tr2RenderBatch.js.map +0 -1
  887. package/dist/trinity/core/batch/TriRenderBatchAccumulator.js.map +0 -1
  888. package/dist/trinity/core/context/CjsShadowMapExecutor.js +0 -43
  889. package/dist/trinity/core/context/CjsShadowMapExecutor.js.map +0 -1
  890. package/dist/trinity/core/context/CjsVolumetricsExecutor.js +0 -64
  891. package/dist/trinity/core/context/CjsVolumetricsExecutor.js.map +0 -1
  892. package/dist/trinity/core/context/Tr2VisibilityResults.js +0 -109
  893. package/dist/trinity/core/context/Tr2VisibilityResults.js.map +0 -1
  894. package/dist/trinity/core/device/Tr2RingBuffer.js.map +0 -1
  895. package/dist/trinity/core/device/Tr2SuballocatedBuffer.js.map +0 -1
  896. package/dist/trinity/core/mesh/ITr2ImpostorSource.js.map +0 -1
  897. package/dist/trinity/core/mesh/ITr2InstanceData.js.map +0 -1
  898. package/dist/trinity/core/rawData/Tr2PerObjectData.js.map +0 -1
  899. package/dist/trinity/core/rawData/constantLayout.js +0 -175
  900. package/dist/trinity/core/rawData/constantLayout.js.map +0 -1
  901. package/dist/trinity/core/vertex/Tr2VertexDefinition.js.map +0 -1
  902. package/dist/trinity/eve/child/EveChildInstancedMeshes.js.map +0 -1
  903. package/dist/trinity/eve/child/EveChildPartData.js.map +0 -1
  904. package/dist/trinity/generated/trinityCore/Tr2Denoiser.js +0 -47
  905. package/dist/trinity/generated/trinityCore/Tr2Denoiser.js.map +0 -1
  906. package/dist/trinity/particle/ITr2GenericEmitter.js.map +0 -1
  907. package/dist/trinityal/Tr2DeviceResourceAL.js.map +0 -1
  908. package/dist/trinityal/Tr2HalHelperStructures.js.map +0 -1
  909. package/dist/trinityal/Tr2RenderPassAL.js.map +0 -1
  910. package/dist/trinityal/Tr2ResourceSetAL.js +0 -419
  911. package/dist/trinityal/Tr2ResourceSetAL.js.map +0 -1
  912. package/dist/trinityal/Tr2SamplerDescription.js +0 -72
  913. package/dist/trinityal/Tr2SamplerDescription.js.map +0 -1
  914. package/dist/trinityal/stub/Tr2QueryALStub.js +0 -326
  915. package/dist/trinityal/stub/Tr2QueryALStub.js.map +0 -1
  916. package/dist/trinityal/stub/Tr2RenderContextALStub.js.map +0 -1
  917. package/dist/trinityal/stub/Tr2VideoAdapterInfoALStub.js.map +0 -1
  918. package/dist/trinityal/webgpu/core/batchGroups.js.map +0 -1
  919. package/dist/trinityal/webgpu/core/constantArena.js.map +0 -1
  920. package/dist/trinityal/webgpu/core/perFrameSource.js.map +0 -1
  921. package/dist/trinityal/webgpu/core/pipelineCache.js.map +0 -1
  922. package/dist/trinityal/webgpu/core/psoDescription.js.map +0 -1
  923. package/dist/trinityal/webgpu/core/renderTarget.js.map +0 -1
  924. package/dist/trinityal/webgpu/core/samplerSource.js.map +0 -1
  925. package/dist/trinityal/webgpu/core/textureSource.js.map +0 -1
  926. package/dist/trinityal/webgpu/core/trinityBatchDispatcher.js.map +0 -1
  927. package/dist/trinityal/webgpu/core/trinityBatchResolver.js.map +0 -1
  928. package/dist/trinityal/webgpu/core/trinityPassEncoder.js.map +0 -1
  929. package/dist/trinityal/webgpu/core/workQueue.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sources":["../../../../../../src/resource/formats/dxbc/core/helpers.js"],"sourcesContent":["import { asUint8Array } from \"#utils/bytes\";\n\n/**\n * Internal read-pipeline glue for CjsDxbcFormat.\n *\n * Keeps the public class file small: input normalization, option\n * normalization, the shared read path used by both the instance and the\n * static one-shots, and JSON conversion live here.\n */\n\nimport { DxbcContainer } from \"./container.js\";\nimport { DxbcSignatureChunk } from \"./signature.js\";\nimport { DxbcShaderProgram } from \"./program.js\";\nimport { DxbcInstructionDecoder } from \"./decoder.js\";\nimport { DxbcReadError } from \"./errors.js\";\n\nexport const OUTPUT_JSON = \"json\";\nexport const OUTPUT_RAW = \"raw\";\n\nexport const DEFAULT_VALUES = Object.freeze({\n emit: OUTPUT_JSON,\n source: \"memory\",\n decodeInstructions: true\n});\n\nconst VALID_EMITS = new Set([ OUTPUT_JSON, OUTPUT_RAW ]);\n\nconst INPUT_SIGNATURE_TAGS = [ \"ISGN\", \"ISG1\" ];\nconst OUTPUT_SIGNATURE_TAGS = [ \"OSGN\", \"OSG1\", \"OSG5\" ];\nconst PATCH_SIGNATURE_TAGS = [ \"PCSG\", \"PSG1\" ];\n\n/**\n * Merge format values over a base set and validate them.\n *\n * @param {object} base Current values.\n * @param {object} [options] Values to merge in.\n * @param {string} [readerName] Reader name used in error messages.\n * @returns {object} A validated copy of the merged values.\n */\nexport function normalizeValues(base, options = {}, readerName = \"CjsDxbcFormat\")\n{\n const values = { ...base, ...options };\n\n if (!VALID_EMITS.has(values.emit))\n {\n throw new TypeError(`${readerName}: emit must be \"${OUTPUT_JSON}\" or \"${OUTPUT_RAW}\", got ${JSON.stringify(values.emit)}`);\n }\n if (typeof values.source !== \"string\" || !values.source)\n {\n values.source = DEFAULT_VALUES.source;\n }\n values.decodeInstructions = !!values.decodeInstructions;\n\n return {\n emit: values.emit,\n source: values.source,\n decodeInstructions: values.decodeInstructions\n };\n}\n\n/**\n * Normalize caller input into a Uint8Array of DXBC bytes.\n *\n * @param {Uint8Array|ArrayBuffer|Buffer|DataView} input Candidate payload.\n * @returns {Uint8Array} The payload bytes.\n */\r/**\n * Read a signature chunk group from a container if present.\n *\n * @param {DxbcContainer} container Parsed container.\n * @param {string[]} tags Chunk fourCC candidates in priority order.\n * @param {string} source Source name for errors.\n * @returns {?DxbcSignatureChunk} Parsed signature or null.\n */\nfunction readSignature(container, tags, source)\n{\n for (const tag of tags)\n {\n const chunk = container.getChunk(tag);\n if (chunk) return new DxbcSignatureChunk().Read(chunk, { source });\n }\n return null;\n}\n\n/**\n * The shared read path used by the instance Read and the static read.\n *\n * @param {Uint8Array|ArrayBuffer|Buffer|DataView} input DXBC payload.\n * @param {object} values Normalized format values.\n * @returns {object} Raw read result (class instances).\n */\nexport function readRaw(input, values)\n{\n const bytes = asUint8Array(input, \"CjsDxbcFormat input\");\n const source = values.source;\n const container = new DxbcContainer().Read(bytes, { source });\n const shex = container.getChunk(\"SHEX\") || container.getChunk(\"SHDR\");\n\n const result = {\n source,\n container,\n program: null,\n decoder: null,\n inputSignature: readSignature(container, INPUT_SIGNATURE_TAGS, source),\n outputSignature: readSignature(container, OUTPUT_SIGNATURE_TAGS, source),\n patchSignature: readSignature(container, PATCH_SIGNATURE_TAGS, source)\n };\n\n if (shex)\n {\n result.program = new DxbcShaderProgram().Read(shex, { source });\n if (values.decodeInstructions)\n {\n result.decoder = new DxbcInstructionDecoder().Decode(result.program, { source });\n }\n }\n\n return result;\n}\n\n/**\n * Convert a raw read result to plain JSON-compatible data.\n *\n * @param {object} raw Raw read result from readRaw.\n * @returns {object} Plain data.\n */\nexport function rawToJson(raw)\n{\n return toJsonValue({\n source: raw.source,\n container: raw.container.toJSON(),\n program: raw.program\n ? {\n fourCC: raw.program.fourCC,\n programType: raw.program.programType,\n programTypeName: raw.program.programTypeName,\n majorVersion: raw.program.majorVersion,\n minorVersion: raw.program.minorVersion,\n lengthDwords: raw.program.lengthDwords\n }\n : null,\n inputSignature: raw.inputSignature ? raw.inputSignature.elements : null,\n outputSignature: raw.outputSignature ? raw.outputSignature.elements : null,\n patchSignature: raw.patchSignature ? raw.patchSignature.elements : null,\n instructions: raw.decoder ? raw.decoder.instructions : null\n });\n}\n\n/**\n * Shared read entry honouring the emit mode.\n *\n * @param {Uint8Array|ArrayBuffer|Buffer|DataView} input DXBC payload.\n * @param {object} values Normalized format values.\n * @returns {object} Raw result or plain JSON data per values.emit.\n */\nexport function readWithValues(input, values)\n{\n const raw = readRaw(input, values);\n return values.emit === OUTPUT_RAW ? raw : rawToJson(raw);\n}\n\n/**\n * Cheap inspection: container/program facts without instruction decode.\n *\n * @param {Uint8Array|ArrayBuffer|Buffer|DataView} input DXBC payload.\n * @param {object} values Normalized format values.\n * @returns {object} Plain summary data.\n */\nexport function inspectWithValues(input, values)\n{\n const raw = readRaw(input, { ...values, decodeInstructions: false });\n return toJsonValue({\n source: raw.source,\n isDxbc: true,\n version: raw.container.version,\n totalSize: raw.container.totalSize,\n chunks: raw.container.chunks.map(({ fourCC, offset, size }) => ({ fourCC, offset, size })),\n programTypeName: raw.program ? raw.program.programTypeName : null,\n shaderModel: raw.program ? `${raw.program.majorVersion}.${raw.program.minorVersion}` : null,\n inputElementCount: raw.inputSignature ? raw.inputSignature.elements.length : 0,\n outputElementCount: raw.outputSignature ? raw.outputSignature.elements.length : 0\n });\n}\n\n/**\n * Deep-convert a value to plain JSON-compatible data. Typed arrays become\n * plain number arrays; Maps/Sets become objects/arrays; class instances\n * with toJSON are honoured.\n *\n * @param {any} value Value to convert.\n * @returns {any} Plain data.\n */\nexport function toJsonValue(value)\n{\n if (value === null || value === undefined) return value ?? null;\n if (typeof value === \"number\" || typeof value === \"string\" || typeof value === \"boolean\") return value;\n if (typeof value === \"bigint\") return value.toString();\n if (ArrayBuffer.isView(value)) return Array.from(value);\n if (Array.isArray(value)) return value.map(toJsonValue);\n if (value instanceof Map)\n {\n const out = {};\n for (const [ key, entry ] of value) out[key] = toJsonValue(entry);\n return out;\n }\n if (value instanceof Set) return Array.from(value, toJsonValue);\n if (typeof value === \"object\")\n {\n if (typeof value.toJSON === \"function\") return toJsonValue(value.toJSON());\n const out = {};\n for (const key of Object.keys(value)) out[key] = toJsonValue(value[key]);\n return out;\n }\n return null;\n}\n\nexport { DxbcReadError };\n\n"],"names":["OUTPUT_JSON","OUTPUT_RAW","DEFAULT_VALUES","Object","freeze","emit","source","decodeInstructions","VALID_EMITS","Set","INPUT_SIGNATURE_TAGS","OUTPUT_SIGNATURE_TAGS","PATCH_SIGNATURE_TAGS","normalizeValues","base","options","readerName","values","has","TypeError","JSON","stringify","readSignature","container","tags","tag","chunk","getChunk","DxbcSignatureChunk","Read","readRaw","input","bytes","asUint8Array","DxbcContainer","shex","result","program","decoder","inputSignature","outputSignature","patchSignature","DxbcShaderProgram","DxbcInstructionDecoder","Decode","rawToJson","raw","toJsonValue","toJSON","fourCC","programType","programTypeName","majorVersion","minorVersion","lengthDwords","elements","instructions","readWithValues","inspectWithValues","isDxbc","version","totalSize","chunks","map","offset","size","shaderModel","inputElementCount","length","outputElementCount","value","undefined","toString","ArrayBuffer","isView","Array","from","isArray","Map","out","key","entry","keys"],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sources":["../../../../../../src/resource/formats/dxbc/core/helpers.js"],"sourcesContent":["import { toJsonWithCollections as toJsonValue } from \"../../../format/jsonPolicies.js\";\nimport { asUint8Array } from \"#utils/bytes\";\n\n/**\n * Internal read-pipeline glue for CjsDxbcFormat.\n *\n * Keeps the public class file small: input normalization, option\n * normalization, the shared read path used by both the instance and the\n * static one-shots, and JSON conversion live here.\n */\n\nimport { DxbcContainer } from \"./container.js\";\nimport { DxbcSignatureChunk } from \"./signature.js\";\nimport { DxbcShaderProgram } from \"./program.js\";\nimport { DxbcInstructionDecoder } from \"./decoder.js\";\nimport { DxbcReadError } from \"./errors.js\";\n\nexport const OUTPUT_JSON = \"json\";\nexport const OUTPUT_RAW = \"raw\";\n\nexport const DEFAULT_VALUES = Object.freeze({\n emit: OUTPUT_JSON,\n source: \"memory\",\n decodeInstructions: true\n});\n\nconst VALID_EMITS = new Set([ OUTPUT_JSON, OUTPUT_RAW ]);\n\nconst INPUT_SIGNATURE_TAGS = [ \"ISGN\", \"ISG1\" ];\nconst OUTPUT_SIGNATURE_TAGS = [ \"OSGN\", \"OSG1\", \"OSG5\" ];\nconst PATCH_SIGNATURE_TAGS = [ \"PCSG\", \"PSG1\" ];\n\n/**\n * Merge format values over a base set and validate them.\n *\n * @param {object} base Current values.\n * @param {object} [options] Values to merge in.\n * @param {string} [readerName] Reader name used in error messages.\n * @returns {object} A validated copy of the merged values.\n */\nexport function normalizeValues(base, options = {}, readerName = \"CjsDxbcFormat\")\n{\n const values = { ...base, ...options };\n\n if (!VALID_EMITS.has(values.emit))\n {\n throw new TypeError(`${readerName}: emit must be \"${OUTPUT_JSON}\" or \"${OUTPUT_RAW}\", got ${JSON.stringify(values.emit)}`);\n }\n if (typeof values.source !== \"string\" || !values.source)\n {\n values.source = DEFAULT_VALUES.source;\n }\n values.decodeInstructions = !!values.decodeInstructions;\n\n return {\n emit: values.emit,\n source: values.source,\n decodeInstructions: values.decodeInstructions\n };\n}\n\n/**\n * Normalize caller input into a Uint8Array of DXBC bytes.\n *\n * @param {Uint8Array|ArrayBuffer|Buffer|DataView} input Candidate payload.\n * @returns {Uint8Array} The payload bytes.\n */\n/**\n * Read a signature chunk group from a container if present.\n *\n * @param {DxbcContainer} container Parsed container.\n * @param {string[]} tags Chunk fourCC candidates in priority order.\n * @param {string} source Source name for errors.\n * @returns {?DxbcSignatureChunk} Parsed signature or null.\n */\nfunction readSignature(container, tags, source)\n{\n for (const tag of tags)\n {\n const chunk = container.getChunk(tag);\n if (chunk) return new DxbcSignatureChunk().Read(chunk, { source });\n }\n return null;\n}\n\n/**\n * The shared read path used by the instance Read and the static read.\n *\n * @param {Uint8Array|ArrayBuffer|Buffer|DataView} input DXBC payload.\n * @param {object} values Normalized format values.\n * @returns {object} Raw read result (class instances).\n */\nexport function readRaw(input, values)\n{\n const bytes = asUint8Array(input, \"CjsDxbcFormat input\");\n const source = values.source;\n const container = new DxbcContainer().Read(bytes, { source });\n const shex = container.getChunk(\"SHEX\") || container.getChunk(\"SHDR\");\n\n const result = {\n source,\n container,\n program: null,\n decoder: null,\n inputSignature: readSignature(container, INPUT_SIGNATURE_TAGS, source),\n outputSignature: readSignature(container, OUTPUT_SIGNATURE_TAGS, source),\n patchSignature: readSignature(container, PATCH_SIGNATURE_TAGS, source)\n };\n\n if (shex)\n {\n result.program = new DxbcShaderProgram().Read(shex, { source });\n if (values.decodeInstructions)\n {\n result.decoder = new DxbcInstructionDecoder().Decode(result.program, { source });\n }\n }\n\n return result;\n}\n\n/**\n * Convert a raw read result to plain JSON-compatible data.\n *\n * @param {object} raw Raw read result from readRaw.\n * @returns {object} Plain data.\n */\nexport function rawToJson(raw)\n{\n return toJsonValue({\n source: raw.source,\n container: raw.container.toJSON(),\n program: raw.program\n ? {\n fourCC: raw.program.fourCC,\n programType: raw.program.programType,\n programTypeName: raw.program.programTypeName,\n majorVersion: raw.program.majorVersion,\n minorVersion: raw.program.minorVersion,\n lengthDwords: raw.program.lengthDwords\n }\n : null,\n inputSignature: raw.inputSignature ? raw.inputSignature.elements : null,\n outputSignature: raw.outputSignature ? raw.outputSignature.elements : null,\n patchSignature: raw.patchSignature ? raw.patchSignature.elements : null,\n instructions: raw.decoder ? raw.decoder.instructions : null\n });\n}\n\n/**\n * Shared read entry honouring the emit mode.\n *\n * @param {Uint8Array|ArrayBuffer|Buffer|DataView} input DXBC payload.\n * @param {object} values Normalized format values.\n * @returns {object} Raw result or plain JSON data per values.emit.\n */\nexport function readWithValues(input, values)\n{\n const raw = readRaw(input, values);\n return values.emit === OUTPUT_RAW ? raw : rawToJson(raw);\n}\n\n/**\n * Cheap inspection: container/program facts without instruction decode.\n *\n * @param {Uint8Array|ArrayBuffer|Buffer|DataView} input DXBC payload.\n * @param {object} values Normalized format values.\n * @returns {object} Plain summary data.\n */\nexport function inspectWithValues(input, values)\n{\n const raw = readRaw(input, { ...values, decodeInstructions: false });\n return toJsonValue({\n source: raw.source,\n isDxbc: true,\n version: raw.container.version,\n totalSize: raw.container.totalSize,\n chunks: raw.container.chunks.map(({ fourCC, offset, size }) => ({ fourCC, offset, size })),\n programTypeName: raw.program ? raw.program.programTypeName : null,\n shaderModel: raw.program ? `${raw.program.majorVersion}.${raw.program.minorVersion}` : null,\n inputElementCount: raw.inputSignature ? raw.inputSignature.elements.length : 0,\n outputElementCount: raw.outputSignature ? raw.outputSignature.elements.length : 0\n });\n}\n\n/**\n * Deep-convert a value to plain JSON-compatible data. Typed arrays become\n * plain number arrays; Maps/Sets become objects/arrays; class instances\n * with toJSON are honoured.\n *\n * @param {any} value Value to convert.\n * @returns {any} Plain data.\n */\n/** The shared JSON policy for this reader, under the name its callers use. */\nexport { toJsonValue };\n\nexport { DxbcReadError };\n\n"],"names":["OUTPUT_JSON","OUTPUT_RAW","DEFAULT_VALUES","Object","freeze","emit","source","decodeInstructions","VALID_EMITS","Set","INPUT_SIGNATURE_TAGS","OUTPUT_SIGNATURE_TAGS","PATCH_SIGNATURE_TAGS","normalizeValues","base","options","readerName","values","has","TypeError","JSON","stringify","readSignature","container","tags","tag","chunk","getChunk","DxbcSignatureChunk","Read","readRaw","input","bytes","asUint8Array","DxbcContainer","shex","result","program","decoder","inputSignature","outputSignature","patchSignature","DxbcShaderProgram","DxbcInstructionDecoder","Decode","rawToJson","raw","toJsonValue","toJSON","fourCC","programType","programTypeName","majorVersion","minorVersion","lengthDwords","elements","instructions","readWithValues","inspectWithValues","isDxbc","version","totalSize","chunks","map","offset","size","shaderModel","inputElementCount","length","outputElementCount"],"mappings":"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"}
@@ -270,6 +270,17 @@ class CjsFbxFormat extends CjsFormat {
270
270
  static CLASS_KEYS = CLASS_KEYS;
271
271
  static id = "fbx";
272
272
  static mediaTypes = Object.freeze(["geometry"]);
273
+ // FBX is written THROUGH CMF: `write` takes a native CMF graph and
274
+ // `writeShared` converts shared or GR2-shaped geometry into one first.
275
+ static inputs = CjsFormat.defineInputs({
276
+ cmf: {
277
+ default: true,
278
+ payloadType: "geometry"
279
+ },
280
+ shared: {
281
+ payloadType: "geometry"
282
+ }
283
+ });
273
284
  static outputs = CjsFormat.defineOutputs({
274
285
  gr2: {
275
286
  decoded: true
@@ -1 +1 @@
1
- {"version":3,"file":"CjsFbxFormat.js","sources":["../../../../../src/resource/formats/fbx/CjsFbxFormat.js"],"sourcesContent":["import { asUint8Array } from \"#utils/bytes\";\nimport { CjsFormat } from \"../../format/CjsFormat.js\";\nimport {\n CLASS_KEYS,\n DEFAULT_VALUES,\n OUTPUT_CMF,\n OUTPUT_FBX_JSON,\n OUTPUT_GR2,\n OUTPUT_JSON,\n OUTPUT_RAW,\n inspectWithValues,\n isFBX,\n probeSupportWithValues,\n normalizeValues,\n readWithValues,\n toJsonValue,\n validateClass,\n validateClassKey\n} from \"./core/helpers.js\";\nimport { writeFbx, writeSharedFbx } from \"./core/writer.js\";\n\nconst FORMAT_NAME = \"CjsFbxFormat\";\n\n/**\n * CarbonEngineJS-facing FBX format surface.\n *\n * FBX is recognized, inspected, imported into CMF/GR2 compatibility graphs,\n * and exported from native CMF in pure JavaScript. Geometry, skeletons, skin,\n * morph targets, and their animations are in scope; cameras and lights are not.\n */\nexport class CjsFbxFormat extends CjsFormat\n{\n #values = DEFAULT_VALUES;\n\n /**\n * Create a reusable FBX format profile.\n *\n * @param {object} [options] Default read/inspect options.\n */\n constructor(options = {})\n {\n super();\n this.SetValues(options);\n }\n\n /**\n * Merge options into this profile.\n *\n * @param {object} [options] Values to merge.\n * @returns {CjsFbxFormat} This format profile.\n */\n SetValues(options = {})\n {\n this.#values = normalizeValues(this.#values, { inputType: \"fbx\", ...options }, FORMAT_NAME);\n return this;\n }\n\n /**\n * Get normalized profile values with optional per-call overrides.\n *\n * @param {object} [options] Per-call values.\n * @returns {object} Normalized read values.\n */\n GetValues(options = {})\n {\n return normalizeValues(this.#values, { inputType: \"fbx\", ...options }, FORMAT_NAME);\n }\n\n /**\n * Set multiple output node constructors for this profile.\n *\n * These constructors are used only for explicit runtime output targets such\n * as `emit: \"gr2\"` and `emit: \"cmf\"` paths. Debug `fbxJson` output\n * remains plain data.\n *\n * @param {object} [classes] Map of output node class keys to constructors.\n * @returns {CjsFbxFormat} This format profile.\n */\n SetClasses(classes = {})\n {\n return this.SetValues({ classes });\n }\n\n /**\n * Set one output node constructor for this profile.\n *\n * @param {string} type Output node class key.\n * @param {Function|null|undefined} Class Constructor to use, or nullish to delete.\n * @returns {CjsFbxFormat} This format profile.\n */\n SetClass(type, Class)\n {\n validateClassKey(type, FORMAT_NAME);\n\n if (Class === null || Class === undefined)\n {\n const classes = { ...this.#values.classes };\n delete classes[type];\n this.#values = { ...this.#values, classes };\n return this;\n }\n\n validateClass(type, Class, FORMAT_NAME);\n return this.SetValues({ classes: { [type]: Class } });\n }\n\n /**\n * Get a configured output node constructor.\n *\n * @param {string} type Output node class key.\n * @returns {Function|undefined} The registered constructor, if any.\n */\n GetClass(type)\n {\n validateClassKey(type, FORMAT_NAME);\n return this.#values.classes[type];\n }\n\n /**\n * Whether this profile has a constructor registered for an output node key.\n *\n * @param {string} type Output node class key.\n * @returns {boolean} True when a constructor is registered.\n */\n HasClass(type)\n {\n return !!this.GetClass(type);\n }\n\n /**\n * Read FBX bytes with this profile.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input FBX bytes.\n * @param {object} [options] Per-call values.\n * @returns {object} Raw or debug payload for the selected emit target.\n */\n Read(input, options = {})\n {\n return readWithValues(input, this.GetValues(options));\n }\n\n /** Write a native CMF graph as deterministic binary FBX 7400 bytes. */\n Write(input, options = {})\n {\n return writeFbx(input, options);\n }\n\n /** Convert shared or GR2-shaped geometry through CMF and write FBX. */\n WriteShared(input, options = {})\n {\n return writeSharedFbx(input, options);\n }\n\n /**\n * Read FBX bytes asynchronously with this profile.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input FBX bytes.\n * @param {object} [options] Per-call values.\n * @returns {Promise<object>} Raw or debug payload for the selected emit target.\n */\n async ReadAsync(input, options = {})\n {\n return this.Read(input, options);\n }\n\n /**\n * Inspect FBX bytes without converting geometry.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input FBX bytes.\n * @param {object} [options] Per-call values.\n * @returns {object} Lightweight FBX metadata.\n */\n Inspect(input, options = {})\n {\n return inspectWithValues(input, this.GetValues(options));\n }\n\n /**\n * Convert format output into JSON-compatible debug data.\n *\n * @param {any} value Format output.\n * @returns {any} JSON-compatible value.\n */\n ToJSON(value)\n {\n return toJsonValue(value);\n }\n\n /**\n * One-shot FBX read.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input FBX bytes.\n * @param {object} [options] Read options.\n * @returns {object} Raw or debug payload for the selected emit target.\n */\n static read(input, options = {})\n {\n return readWithValues(input, normalizeValues(DEFAULT_VALUES, { inputType: \"fbx\", ...options }, FORMAT_NAME));\n }\n\n /** Write a native CMF graph as deterministic binary FBX 7400 bytes. */\n static write(input, options = {})\n {\n return writeFbx(input, options);\n }\n\n /** Convert shared or GR2-shaped geometry through CMF and write FBX. */\n static writeShared(input, options = {})\n {\n return writeSharedFbx(input, options);\n }\n\n /**\n * One-shot asynchronous FBX read.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input FBX bytes.\n * @param {object} [options] Read options.\n * @returns {Promise<object>} Raw or debug payload for the selected emit target.\n */\n static async readAsync(input, options = {})\n {\n return CjsFbxFormat.read(input, options);\n }\n\n /**\n * One-shot FBX inspection.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input FBX bytes.\n * @param {object} [options] Inspect options.\n * @returns {object} Lightweight FBX metadata.\n */\n static inspect(input, options = {})\n {\n return inspectWithValues(input, normalizeValues(DEFAULT_VALUES, { inputType: \"fbx\", ...options }, FORMAT_NAME));\n }\n\n /**\n * One-shot FBX support probe.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input FBX bytes.\n * @param {object} [options] Probe options.\n * @returns {object} Support/probe report.\n */\n static probeSupport(input, options = {})\n {\n return probeSupportWithValues(input, normalizeValues(DEFAULT_VALUES, { inputType: \"fbx\", ...options }, FORMAT_NAME));\n }\n\n /**\n * Convert format output into JSON-compatible debug data.\n *\n * @param {any} value Format output.\n * @returns {any} JSON-compatible value.\n */\n static toJSON(value)\n {\n return toJsonValue(value);\n }\n\n /**\n * Test whether bytes look like an FBX file.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input Candidate FBX bytes.\n * @returns {boolean} True when the input appears to be FBX.\n */\n static isFBX(input)\n {\n try\n {\n return isFBX(asUint8Array(input, \"Fbx input\"));\n }\n catch\n {\n return false;\n }\n }\n\n /**\n * Emit targets for this format (canonical frozen enum).\n */\n static Output = Object.freeze({\n CMF: OUTPUT_CMF,\n GR2: OUTPUT_GR2,\n RAW: OUTPUT_RAW,\n JSON: OUTPUT_JSON,\n FBX_JSON: OUTPUT_FBX_JSON\n });\n static CLASS_KEYS = CLASS_KEYS;\n static id = \"fbx\";\n static mediaTypes = Object.freeze([ \"geometry\" ]);\n static outputs = CjsFormat.defineOutputs({\n gr2: { decoded: true },\n cmf: { decoded: true },\n fbxJson: { role: \"debug\", decoded: true, probes: [ \"fbxJson\", \"document\" ] },\n raw: { role: \"debug\", default: true, passthrough: true, probes: [ \"raw\", \"document\" ] }\n });\n static extensions = Object.freeze([ \".fbx\" ]);\n}\n\nexport default CjsFbxFormat;\n"],"names":["FORMAT_NAME","CjsFbxFormat","CjsFormat","DEFAULT_VALUES","constructor","options","SetValues","normalizeValues","inputType","GetValues","SetClasses","classes","SetClass","type","Class","validateClassKey","undefined","validateClass","GetClass","HasClass","Read","input","readWithValues","Write","writeFbx","WriteShared","writeSharedFbx","ReadAsync","Inspect","inspectWithValues","ToJSON","value","toJsonValue","read","write","writeShared","readAsync","inspect","probeSupport","probeSupportWithValues","toJSON","isFBX","asUint8Array","Output","Object","freeze","CMF","OUTPUT_CMF","GR2","OUTPUT_GR2","RAW","OUTPUT_RAW","JSON","OUTPUT_JSON","FBX_JSON","OUTPUT_FBX_JSON","CLASS_KEYS","id","mediaTypes","outputs","defineOutputs","gr2","decoded","cmf","fbxJson","role","probes","raw","default","passthrough","extensions"],"mappings":"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"}
1
+ {"version":3,"file":"CjsFbxFormat.js","sources":["../../../../../src/resource/formats/fbx/CjsFbxFormat.js"],"sourcesContent":["import { asUint8Array } from \"#utils/bytes\";\nimport { CjsFormat } from \"../../format/CjsFormat.js\";\nimport {\n CLASS_KEYS,\n DEFAULT_VALUES,\n OUTPUT_CMF,\n OUTPUT_FBX_JSON,\n OUTPUT_GR2,\n OUTPUT_JSON,\n OUTPUT_RAW,\n inspectWithValues,\n isFBX,\n probeSupportWithValues,\n normalizeValues,\n readWithValues,\n toJsonValue,\n validateClass,\n validateClassKey\n} from \"./core/helpers.js\";\nimport { writeFbx, writeSharedFbx } from \"./core/writer.js\";\n\nconst FORMAT_NAME = \"CjsFbxFormat\";\n\n/**\n * CarbonEngineJS-facing FBX format surface.\n *\n * FBX is recognized, inspected, imported into CMF/GR2 compatibility graphs,\n * and exported from native CMF in pure JavaScript. Geometry, skeletons, skin,\n * morph targets, and their animations are in scope; cameras and lights are not.\n */\nexport class CjsFbxFormat extends CjsFormat\n{\n #values = DEFAULT_VALUES;\n\n /**\n * Create a reusable FBX format profile.\n *\n * @param {object} [options] Default read/inspect options.\n */\n constructor(options = {})\n {\n super();\n this.SetValues(options);\n }\n\n /**\n * Merge options into this profile.\n *\n * @param {object} [options] Values to merge.\n * @returns {CjsFbxFormat} This format profile.\n */\n SetValues(options = {})\n {\n this.#values = normalizeValues(this.#values, { inputType: \"fbx\", ...options }, FORMAT_NAME);\n return this;\n }\n\n /**\n * Get normalized profile values with optional per-call overrides.\n *\n * @param {object} [options] Per-call values.\n * @returns {object} Normalized read values.\n */\n GetValues(options = {})\n {\n return normalizeValues(this.#values, { inputType: \"fbx\", ...options }, FORMAT_NAME);\n }\n\n /**\n * Set multiple output node constructors for this profile.\n *\n * These constructors are used only for explicit runtime output targets such\n * as `emit: \"gr2\"` and `emit: \"cmf\"` paths. Debug `fbxJson` output\n * remains plain data.\n *\n * @param {object} [classes] Map of output node class keys to constructors.\n * @returns {CjsFbxFormat} This format profile.\n */\n SetClasses(classes = {})\n {\n return this.SetValues({ classes });\n }\n\n /**\n * Set one output node constructor for this profile.\n *\n * @param {string} type Output node class key.\n * @param {Function|null|undefined} Class Constructor to use, or nullish to delete.\n * @returns {CjsFbxFormat} This format profile.\n */\n SetClass(type, Class)\n {\n validateClassKey(type, FORMAT_NAME);\n\n if (Class === null || Class === undefined)\n {\n const classes = { ...this.#values.classes };\n delete classes[type];\n this.#values = { ...this.#values, classes };\n return this;\n }\n\n validateClass(type, Class, FORMAT_NAME);\n return this.SetValues({ classes: { [type]: Class } });\n }\n\n /**\n * Get a configured output node constructor.\n *\n * @param {string} type Output node class key.\n * @returns {Function|undefined} The registered constructor, if any.\n */\n GetClass(type)\n {\n validateClassKey(type, FORMAT_NAME);\n return this.#values.classes[type];\n }\n\n /**\n * Whether this profile has a constructor registered for an output node key.\n *\n * @param {string} type Output node class key.\n * @returns {boolean} True when a constructor is registered.\n */\n HasClass(type)\n {\n return !!this.GetClass(type);\n }\n\n /**\n * Read FBX bytes with this profile.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input FBX bytes.\n * @param {object} [options] Per-call values.\n * @returns {object} Raw or debug payload for the selected emit target.\n */\n Read(input, options = {})\n {\n return readWithValues(input, this.GetValues(options));\n }\n\n /** Write a native CMF graph as deterministic binary FBX 7400 bytes. */\n Write(input, options = {})\n {\n return writeFbx(input, options);\n }\n\n /** Convert shared or GR2-shaped geometry through CMF and write FBX. */\n WriteShared(input, options = {})\n {\n return writeSharedFbx(input, options);\n }\n\n /**\n * Read FBX bytes asynchronously with this profile.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input FBX bytes.\n * @param {object} [options] Per-call values.\n * @returns {Promise<object>} Raw or debug payload for the selected emit target.\n */\n async ReadAsync(input, options = {})\n {\n return this.Read(input, options);\n }\n\n /**\n * Inspect FBX bytes without converting geometry.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input FBX bytes.\n * @param {object} [options] Per-call values.\n * @returns {object} Lightweight FBX metadata.\n */\n Inspect(input, options = {})\n {\n return inspectWithValues(input, this.GetValues(options));\n }\n\n /**\n * Convert format output into JSON-compatible debug data.\n *\n * @param {any} value Format output.\n * @returns {any} JSON-compatible value.\n */\n ToJSON(value)\n {\n return toJsonValue(value);\n }\n\n /**\n * One-shot FBX read.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input FBX bytes.\n * @param {object} [options] Read options.\n * @returns {object} Raw or debug payload for the selected emit target.\n */\n static read(input, options = {})\n {\n return readWithValues(input, normalizeValues(DEFAULT_VALUES, { inputType: \"fbx\", ...options }, FORMAT_NAME));\n }\n\n /** Write a native CMF graph as deterministic binary FBX 7400 bytes. */\n static write(input, options = {})\n {\n return writeFbx(input, options);\n }\n\n /** Convert shared or GR2-shaped geometry through CMF and write FBX. */\n static writeShared(input, options = {})\n {\n return writeSharedFbx(input, options);\n }\n\n /**\n * One-shot asynchronous FBX read.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input FBX bytes.\n * @param {object} [options] Read options.\n * @returns {Promise<object>} Raw or debug payload for the selected emit target.\n */\n static async readAsync(input, options = {})\n {\n return CjsFbxFormat.read(input, options);\n }\n\n /**\n * One-shot FBX inspection.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input FBX bytes.\n * @param {object} [options] Inspect options.\n * @returns {object} Lightweight FBX metadata.\n */\n static inspect(input, options = {})\n {\n return inspectWithValues(input, normalizeValues(DEFAULT_VALUES, { inputType: \"fbx\", ...options }, FORMAT_NAME));\n }\n\n /**\n * One-shot FBX support probe.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input FBX bytes.\n * @param {object} [options] Probe options.\n * @returns {object} Support/probe report.\n */\n static probeSupport(input, options = {})\n {\n return probeSupportWithValues(input, normalizeValues(DEFAULT_VALUES, { inputType: \"fbx\", ...options }, FORMAT_NAME));\n }\n\n /**\n * Convert format output into JSON-compatible debug data.\n *\n * @param {any} value Format output.\n * @returns {any} JSON-compatible value.\n */\n static toJSON(value)\n {\n return toJsonValue(value);\n }\n\n /**\n * Test whether bytes look like an FBX file.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input Candidate FBX bytes.\n * @returns {boolean} True when the input appears to be FBX.\n */\n static isFBX(input)\n {\n try\n {\n return isFBX(asUint8Array(input, \"Fbx input\"));\n }\n catch\n {\n return false;\n }\n }\n\n /**\n * Emit targets for this format (canonical frozen enum).\n */\n static Output = Object.freeze({\n CMF: OUTPUT_CMF,\n GR2: OUTPUT_GR2,\n RAW: OUTPUT_RAW,\n JSON: OUTPUT_JSON,\n FBX_JSON: OUTPUT_FBX_JSON\n });\n static CLASS_KEYS = CLASS_KEYS;\n static id = \"fbx\";\n static mediaTypes = Object.freeze([ \"geometry\" ]);\n // FBX is written THROUGH CMF: `write` takes a native CMF graph and\n // `writeShared` converts shared or GR2-shaped geometry into one first.\n static inputs = CjsFormat.defineInputs({\n cmf: { default: true, payloadType: \"geometry\" },\n shared: { payloadType: \"geometry\" }\n });\n\n static outputs = CjsFormat.defineOutputs({\n gr2: { decoded: true },\n cmf: { decoded: true },\n fbxJson: { role: \"debug\", decoded: true, probes: [ \"fbxJson\", \"document\" ] },\n raw: { role: \"debug\", default: true, passthrough: true, probes: [ \"raw\", \"document\" ] }\n });\n static extensions = Object.freeze([ \".fbx\" ]);\n}\n\nexport default CjsFbxFormat;\n"],"names":["FORMAT_NAME","CjsFbxFormat","CjsFormat","DEFAULT_VALUES","constructor","options","SetValues","normalizeValues","inputType","GetValues","SetClasses","classes","SetClass","type","Class","validateClassKey","undefined","validateClass","GetClass","HasClass","Read","input","readWithValues","Write","writeFbx","WriteShared","writeSharedFbx","ReadAsync","Inspect","inspectWithValues","ToJSON","value","toJsonValue","read","write","writeShared","readAsync","inspect","probeSupport","probeSupportWithValues","toJSON","isFBX","asUint8Array","Output","Object","freeze","CMF","OUTPUT_CMF","GR2","OUTPUT_GR2","RAW","OUTPUT_RAW","JSON","OUTPUT_JSON","FBX_JSON","OUTPUT_FBX_JSON","CLASS_KEYS","id","mediaTypes","inputs","defineInputs","cmf","default","payloadType","shared","outputs","defineOutputs","gr2","decoded","fbxJson","role","probes","raw","passthrough","extensions"],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { adler32 } from '#utils/checksum';
1
2
  import { asUint8Array } from '#utils/bytes';
2
3
  import { generateNormals, generateTangents, generateBiNormals } from '#math/mesh';
3
4
  import { GR2_CLASS_KEYS, CMF_CLASS_KEYS } from '../../cmf/core/constants.js';
@@ -41,7 +42,6 @@ const DEFLATE_LENGTH_BASE = Object.freeze([3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15,
41
42
  const DEFLATE_LENGTH_EXTRA = Object.freeze([0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0]);
42
43
  const DEFLATE_DISTANCE_BASE = Object.freeze([1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577]);
43
44
  const DEFLATE_DISTANCE_EXTRA = Object.freeze([0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13]);
44
- const ADLER32_MOD = 65521;
45
45
  const TRIANGULATION_EPSILON = 1e-10;
46
46
  const IDENTITY_MATRIX4 = Object.freeze([1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]);
47
47
  const DEFAULT_ROTATION_ORDER = "XYZ";
@@ -903,6 +903,23 @@ function readUncompressedArray(bytes, offset, type, length, byteLength) {
903
903
  }
904
904
  return value;
905
905
  }
906
+
907
+ // THE ONE HAND-ROLLED INFLATE IN THIS PACKAGE, AND WHY IT STAYS. Everywhere else
908
+ // that meets a deflate stream uses the shared `decompressBytes` over the
909
+ // platform's `DecompressionStream` — `formats/vta` and `formats/png` both do.
910
+ // FBX cannot: `DecompressionStream` is asynchronous by specification and there is
911
+ // no synchronous platform inflate, while a compressed FBX array is decoded INLINE
912
+ // during a synchronous recursive node walk (`readBinaryArrayProperty` at :1037,
913
+ // which calls this at :1063). Making this await would make the whole node walk
914
+ // async and take `CjsFbxFormat.read` — the synchronous entry point — with it.
915
+ //
916
+ // So this is a platform constraint, not an oversight, and not a preference for
917
+ // hand-rolled code. If a SECOND synchronous inflate is ever needed, this moves to
918
+ // a shared home rather than being copied; one caller is not yet a shared module.
919
+ //
920
+ // Carbon offers no donor either way: `mesh` vendors ufbx
921
+ // (`mesh/vendor/github.com/ufbx`), so Carbon's FBX decompression lives inside
922
+ // third-party C rather than in code there is anything to port.
906
923
  function inflateZlib(source, expectedLength) {
907
924
  if (source.byteLength < 6) {
908
925
  throw new Error("fbx: compressed array zlib stream is truncated");
@@ -1061,17 +1078,6 @@ function copyInflatedBytes(state, distance, length) {
1061
1078
  writeInflatedByte(state, state.output[state.offset - distance]);
1062
1079
  }
1063
1080
  }
1064
- function adler32(bytes) {
1065
- let a = 1,
1066
- b = 0;
1067
- for (const byte of bytes) {
1068
- a += byte;
1069
- b += a;
1070
- a %= ADLER32_MOD;
1071
- b %= ADLER32_MOD;
1072
- }
1073
- return (b << 16 >>> 0 | a) >>> 0;
1074
- }
1075
1081
 
1076
1082
  /**
1077
1083
  * Bit reader over a zlib/deflate stream used to inflate compressed FBX