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

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 (935) 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/schema/CjsSchema.js +20 -2
  80. package/dist/global/schema/CjsSchema.js.map +1 -1
  81. package/dist/global/schema/hydration.js +14 -0
  82. package/dist/global/schema/hydration.js.map +1 -1
  83. package/dist/global/utils/bytes.js +22 -4
  84. package/dist/global/utils/bytes.js.map +1 -1
  85. package/dist/global/utils/checksum.js +80 -0
  86. package/dist/global/utils/checksum.js.map +1 -0
  87. package/dist/global/utils/errors/CjsCancellationError.js +36 -0
  88. package/dist/global/utils/errors/CjsCancellationError.js.map +1 -0
  89. package/dist/global/utils/errors/CjsError.js +21 -52
  90. package/dist/global/utils/errors/CjsError.js.map +1 -1
  91. package/dist/global/utils/errors/abort.js +1 -1
  92. package/dist/global/utils/errors/abort.js.map +1 -1
  93. package/dist/global/utils/errors/index.js +2 -1
  94. package/dist/global/utils/errors/index.js.map +1 -1
  95. package/dist/global/utils/index.js +4 -2
  96. package/dist/global/utils/index.js.map +1 -1
  97. package/dist/index.js +95 -35
  98. package/dist/index.js.map +1 -1
  99. package/dist/input/Tr2MainWindow.js +7 -9
  100. package/dist/input/Tr2MainWindow.js.map +1 -1
  101. package/dist/resource/CjsResMan.js +33 -39
  102. package/dist/resource/CjsResMan.js.map +1 -1
  103. package/dist/resource/CjsResource.js +19 -5
  104. package/dist/resource/CjsResource.js.map +1 -1
  105. package/dist/resource/audio/AudioGeometryResData.js +22 -27
  106. package/dist/resource/audio/AudioGeometryResData.js.map +1 -1
  107. package/dist/resource/audio/CjsAudioRes.js +4 -5
  108. package/dist/resource/audio/CjsAudioRes.js.map +1 -1
  109. package/dist/resource/format/CjsBitReader.js +263 -0
  110. package/dist/resource/format/CjsBitReader.js.map +1 -0
  111. package/dist/resource/format/CjsByteReader.js +130 -125
  112. package/dist/resource/format/CjsByteReader.js.map +1 -1
  113. package/dist/resource/format/CjsFormat.js +11 -4
  114. package/dist/resource/format/CjsFormat.js.map +1 -1
  115. package/dist/resource/format/CjsFormatError.js +37 -1
  116. package/dist/resource/format/CjsFormatError.js.map +1 -1
  117. package/dist/resource/format/CjsResourceProbe.js +41 -37
  118. package/dist/resource/format/CjsResourceProbe.js.map +1 -1
  119. package/dist/resource/format/carbonRecordGuard.js +33 -0
  120. package/dist/resource/format/carbonRecordGuard.js.map +1 -0
  121. package/dist/resource/format/imageSignatures.js +202 -0
  122. package/dist/resource/format/imageSignatures.js.map +1 -0
  123. package/dist/resource/format/index.js +2 -1
  124. package/dist/resource/format/index.js.map +1 -1
  125. package/dist/resource/format/jsonPolicies.js +180 -0
  126. package/dist/resource/format/jsonPolicies.js.map +1 -0
  127. package/dist/resource/formats/black/core/helpers.js +18 -29
  128. package/dist/resource/formats/black/core/helpers.js.map +1 -1
  129. package/dist/resource/formats/bnk/CjsBnkFormat.js +4 -3
  130. package/dist/resource/formats/bnk/CjsBnkFormat.js.map +1 -1
  131. package/dist/resource/formats/bnk/core/WwiseCursor.js +218 -0
  132. package/dist/resource/formats/bnk/core/WwiseCursor.js.map +1 -0
  133. package/dist/resource/formats/bnk/core/busNodes.js +2 -1
  134. package/dist/resource/formats/bnk/core/busNodes.js.map +1 -1
  135. package/dist/resource/formats/bnk/core/effectNodes.js +2 -1
  136. package/dist/resource/formats/bnk/core/effectNodes.js.map +1 -1
  137. package/dist/resource/formats/bnk/core/eventAction.js +15 -93
  138. package/dist/resource/formats/bnk/core/eventAction.js.map +1 -1
  139. package/dist/resource/formats/bnk/core/globalSettings.js +19 -94
  140. package/dist/resource/formats/bnk/core/globalSettings.js.map +1 -1
  141. package/dist/resource/formats/bnk/core/helpers.js +2 -48
  142. package/dist/resource/formats/bnk/core/helpers.js.map +1 -1
  143. package/dist/resource/formats/bnk/core/musicNodes.js +42 -134
  144. package/dist/resource/formats/bnk/core/musicNodes.js.map +1 -1
  145. package/dist/resource/formats/bnk/core/nodeBase.js +20 -111
  146. package/dist/resource/formats/bnk/core/nodeBase.js.map +1 -1
  147. package/dist/resource/formats/bnk/core/sfxNodes.js +2 -1
  148. package/dist/resource/formats/bnk/core/sfxNodes.js.map +1 -1
  149. package/dist/resource/formats/cmf/CjsCmfFormat.js +242 -228
  150. package/dist/resource/formats/cmf/CjsCmfFormat.js.map +1 -1
  151. package/dist/resource/formats/cmf/core/binary.js +54 -60
  152. package/dist/resource/formats/cmf/core/binary.js.map +1 -1
  153. package/dist/resource/formats/dds/CjsDdsFormat.js +5 -3
  154. package/dist/resource/formats/dds/CjsDdsFormat.js.map +1 -1
  155. package/dist/resource/formats/dds/core/bc6h.js +16 -18
  156. package/dist/resource/formats/dds/core/bc6h.js.map +1 -1
  157. package/dist/resource/formats/dds/core/bc7.js +28 -24
  158. package/dist/resource/formats/dds/core/bc7.js.map +1 -1
  159. package/dist/resource/formats/dds/core/helpers.js +7 -133
  160. package/dist/resource/formats/dds/core/helpers.js.map +1 -1
  161. package/dist/resource/formats/dxbc/CjsDxbcFormat.js +3 -2
  162. package/dist/resource/formats/dxbc/CjsDxbcFormat.js.map +1 -1
  163. package/dist/resource/formats/dxbc/core/helpers.js +4 -32
  164. package/dist/resource/formats/dxbc/core/helpers.js.map +1 -1
  165. package/dist/resource/formats/fbx/CjsFbxFormat.js +11 -0
  166. package/dist/resource/formats/fbx/CjsFbxFormat.js.map +1 -1
  167. package/dist/resource/formats/fbx/core/helpers.js +18 -12
  168. package/dist/resource/formats/fbx/core/helpers.js.map +1 -1
  169. package/dist/resource/formats/flac/CjsFlacFormat.js +4 -9
  170. package/dist/resource/formats/flac/CjsFlacFormat.js.map +1 -1
  171. package/dist/resource/formats/flac/core/helpers.js +1 -62
  172. package/dist/resource/formats/flac/core/helpers.js.map +1 -1
  173. package/dist/resource/formats/gif/CjsGifFormat.js +4 -9
  174. package/dist/resource/formats/gif/CjsGifFormat.js.map +1 -1
  175. package/dist/resource/formats/gif/core/helpers.js +1 -63
  176. package/dist/resource/formats/gif/core/helpers.js.map +1 -1
  177. package/dist/resource/formats/gltf/CjsGltfFormat.js +4 -3
  178. package/dist/resource/formats/gltf/CjsGltfFormat.js.map +1 -1
  179. package/dist/resource/formats/gltf/core/helpers.js +3 -19
  180. package/dist/resource/formats/gltf/core/helpers.js.map +1 -1
  181. package/dist/resource/formats/gr2/CjsGr2Format.js +105 -92
  182. package/dist/resource/formats/gr2/CjsGr2Format.js.map +1 -1
  183. package/dist/resource/formats/gr2/core/container.js +1 -10
  184. package/dist/resource/formats/gr2/core/container.js.map +1 -1
  185. package/dist/resource/formats/gr2/core/helpers.js +24 -35
  186. package/dist/resource/formats/gr2/core/helpers.js.map +1 -1
  187. package/dist/resource/formats/gr2/core/shared.js +193 -189
  188. package/dist/resource/formats/gr2/core/shared.js.map +1 -1
  189. package/dist/resource/formats/hlsl/CjsHlslFormat.js +4 -3
  190. package/dist/resource/formats/hlsl/CjsHlslFormat.js.map +1 -1
  191. package/dist/resource/formats/hlsl/core/helpers.js +1 -30
  192. package/dist/resource/formats/hlsl/core/helpers.js.map +1 -1
  193. package/dist/resource/formats/jpeg/CjsJpegFormat.js +5 -3
  194. package/dist/resource/formats/jpeg/CjsJpegFormat.js.map +1 -1
  195. package/dist/resource/formats/jpeg/core/helpers.js +7 -134
  196. package/dist/resource/formats/jpeg/core/helpers.js.map +1 -1
  197. package/dist/resource/formats/mp3/CjsMp3Format.js +4 -9
  198. package/dist/resource/formats/mp3/CjsMp3Format.js.map +1 -1
  199. package/dist/resource/formats/mp3/core/helpers.js +1 -64
  200. package/dist/resource/formats/mp3/core/helpers.js.map +1 -1
  201. package/dist/resource/formats/mp4/CjsMp4Format.js +4 -9
  202. package/dist/resource/formats/mp4/CjsMp4Format.js.map +1 -1
  203. package/dist/resource/formats/mp4/core/helpers.js +1 -73
  204. package/dist/resource/formats/mp4/core/helpers.js.map +1 -1
  205. package/dist/resource/formats/obj/CjsObjFormat.js +4 -3
  206. package/dist/resource/formats/obj/CjsObjFormat.js.map +1 -1
  207. package/dist/resource/formats/obj/core/helpers.js +93 -115
  208. package/dist/resource/formats/obj/core/helpers.js.map +1 -1
  209. package/dist/resource/formats/ogg/CjsOggFormat.js +4 -3
  210. package/dist/resource/formats/ogg/CjsOggFormat.js.map +1 -1
  211. package/dist/resource/formats/ogg/core/helpers.js +1 -15
  212. package/dist/resource/formats/ogg/core/helpers.js.map +1 -1
  213. package/dist/resource/formats/ogg/core/vorbis.js +138 -144
  214. package/dist/resource/formats/ogg/core/vorbis.js.map +1 -1
  215. package/dist/resource/formats/pickle/CjsPickleFormat.js +83 -114
  216. package/dist/resource/formats/pickle/CjsPickleFormat.js.map +1 -1
  217. package/dist/resource/formats/png/CjsPngFormat.js +5 -3
  218. package/dist/resource/formats/png/CjsPngFormat.js.map +1 -1
  219. package/dist/resource/formats/png/core/helpers.js +13 -152
  220. package/dist/resource/formats/png/core/helpers.js.map +1 -1
  221. package/dist/resource/formats/png/core/writer.js +3 -27
  222. package/dist/resource/formats/png/core/writer.js.map +1 -1
  223. package/dist/resource/formats/red/core/helpers.js +19 -29
  224. package/dist/resource/formats/red/core/helpers.js.map +1 -1
  225. package/dist/resource/formats/stl/CjsStlFormat.js +158 -147
  226. package/dist/resource/formats/stl/CjsStlFormat.js.map +1 -1
  227. package/dist/resource/formats/stl/core/helpers.js +44 -66
  228. package/dist/resource/formats/stl/core/helpers.js.map +1 -1
  229. package/dist/resource/formats/tga/CjsTgaFormat.js +5 -3
  230. package/dist/resource/formats/tga/CjsTgaFormat.js.map +1 -1
  231. package/dist/resource/formats/tga/core/helpers.js +7 -153
  232. package/dist/resource/formats/tga/core/helpers.js.map +1 -1
  233. package/dist/resource/formats/vta/CjsVtaFormat.js +4 -3
  234. package/dist/resource/formats/vta/CjsVtaFormat.js.map +1 -1
  235. package/dist/resource/formats/vta/core/helpers.js +1 -17
  236. package/dist/resource/formats/vta/core/helpers.js.map +1 -1
  237. package/dist/resource/formats/wav/CjsWavFormat.js +4 -3
  238. package/dist/resource/formats/wav/CjsWavFormat.js.map +1 -1
  239. package/dist/resource/formats/wav/core/helpers.js +1 -15
  240. package/dist/resource/formats/wav/core/helpers.js.map +1 -1
  241. package/dist/resource/formats/webgl/CjsWebglFormat.js +4 -3
  242. package/dist/resource/formats/webgl/CjsWebglFormat.js.map +1 -1
  243. package/dist/resource/formats/webgl/core/glsl/DxbcGlslEmitter.js +69 -9
  244. package/dist/resource/formats/webgl/core/glsl/DxbcGlslEmitter.js.map +1 -1
  245. package/dist/resource/formats/webgl/core/glsl/DxbcGlslOperandFormatter.js +12 -3
  246. package/dist/resource/formats/webgl/core/glsl/DxbcGlslOperandFormatter.js.map +1 -1
  247. package/dist/resource/formats/webgl/core/helpers.js +39 -68
  248. package/dist/resource/formats/webgl/core/helpers.js.map +1 -1
  249. package/dist/resource/formats/webgpu/CjsWebgpuFormat.js +4 -3
  250. package/dist/resource/formats/webgpu/CjsWebgpuFormat.js.map +1 -1
  251. package/dist/resource/formats/webgpu/core/helpers.js +4 -30
  252. package/dist/resource/formats/webgpu/core/helpers.js.map +1 -1
  253. package/dist/resource/formats/webm/CjsWebmFormat.js +4 -9
  254. package/dist/resource/formats/webm/CjsWebmFormat.js.map +1 -1
  255. package/dist/resource/formats/webm/core/helpers.js +1 -73
  256. package/dist/resource/formats/webm/core/helpers.js.map +1 -1
  257. package/dist/resource/formats/webp/CjsWebpFormat.js +4 -9
  258. package/dist/resource/formats/webp/CjsWebpFormat.js.map +1 -1
  259. package/dist/resource/formats/webp/core/helpers.js +1 -62
  260. package/dist/resource/formats/webp/core/helpers.js.map +1 -1
  261. package/dist/resource/formats/wem/CjsWemFormat.js +4 -3
  262. package/dist/resource/formats/wem/CjsWemFormat.js.map +1 -1
  263. package/dist/resource/formats/wem/core/bitStream.js +83 -106
  264. package/dist/resource/formats/wem/core/bitStream.js.map +1 -1
  265. package/dist/resource/formats/wem/core/codebookLibrary.js +52 -52
  266. package/dist/resource/formats/wem/core/codebookLibrary.js.map +1 -1
  267. package/dist/resource/formats/wem/core/helpers.js +1 -15
  268. package/dist/resource/formats/wem/core/helpers.js.map +1 -1
  269. package/dist/resource/formats/wem/core/wemToOgg.js +67 -67
  270. package/dist/resource/formats/wem/core/wemToOgg.js.map +1 -1
  271. package/dist/resource/geometry/MeshDecalData.js +23 -25
  272. package/dist/resource/geometry/MeshDecalData.js.map +1 -1
  273. package/dist/resource/geometry/MeshDecalLodData.js +14 -23
  274. package/dist/resource/geometry/MeshDecalLodData.js.map +1 -1
  275. package/dist/resource/geometry/TriGeometryRes.js +299 -284
  276. package/dist/resource/geometry/TriGeometryRes.js.map +1 -1
  277. package/dist/resource/geometry/TriGeometryResAreaData.js +30 -31
  278. package/dist/resource/geometry/TriGeometryResAreaData.js.map +1 -1
  279. package/dist/resource/geometry/TriGeometryResJointData.js +16 -24
  280. package/dist/resource/geometry/TriGeometryResJointData.js.map +1 -1
  281. package/dist/resource/geometry/TriGeometryResLodData.js +50 -41
  282. package/dist/resource/geometry/TriGeometryResLodData.js.map +1 -1
  283. package/dist/resource/geometry/TriGeometryResMeshData.js +32 -32
  284. package/dist/resource/geometry/TriGeometryResMeshData.js.map +1 -1
  285. package/dist/resource/geometry/TriGeometryResSkeletonData.js +14 -23
  286. package/dist/resource/geometry/TriGeometryResSkeletonData.js.map +1 -1
  287. package/dist/resource/geometry/TriJointBinding.js +16 -24
  288. package/dist/resource/geometry/TriJointBinding.js.map +1 -1
  289. package/dist/resource/geometry/TriMorphTargetGeometryConstants.js +22 -27
  290. package/dist/resource/geometry/TriMorphTargetGeometryConstants.js.map +1 -1
  291. package/dist/resource/geometry/TriRtGeometryConstants.js +50 -41
  292. package/dist/resource/geometry/TriRtGeometryConstants.js.map +1 -1
  293. package/dist/resource/geometry/granny/GStateBindingCallbackData.js +12 -22
  294. package/dist/resource/geometry/granny/GStateBindingCallbackData.js.map +1 -1
  295. package/dist/resource/geometry/granny/Tr2GrannyIntersectionResult.js +30 -31
  296. package/dist/resource/geometry/granny/Tr2GrannyIntersectionResult.js.map +1 -1
  297. package/dist/resource/index.js +1 -1
  298. package/dist/resource/shader/reflection/Tr2EffectConstant.js +16 -17
  299. package/dist/resource/shader/reflection/Tr2EffectConstant.js.map +1 -1
  300. package/dist/resource/shader/reflection/Tr2EffectDescription.js +26 -28
  301. package/dist/resource/shader/reflection/Tr2EffectDescription.js.map +1 -1
  302. package/dist/resource/shader/reflection/Tr2EffectLibrary.js +24 -25
  303. package/dist/resource/shader/reflection/Tr2EffectLibrary.js.map +1 -1
  304. package/dist/resource/shader/reflection/Tr2EffectParameterAnnotation.js +21 -22
  305. package/dist/resource/shader/reflection/Tr2EffectParameterAnnotation.js.map +1 -1
  306. package/dist/resource/shader/reflection/Tr2EffectResource.js +25 -26
  307. package/dist/resource/shader/reflection/Tr2EffectResource.js.map +1 -1
  308. package/dist/resource/shader/reflection/Tr2EffectStageInput.js +69 -72
  309. package/dist/resource/shader/reflection/Tr2EffectStageInput.js.map +1 -1
  310. package/dist/resource/shader/reflection/Tr2EffectTechnique.js +17 -18
  311. package/dist/resource/shader/reflection/Tr2EffectTechnique.js.map +1 -1
  312. package/dist/resource/shader/reflection/Tr2Pass.js +42 -43
  313. package/dist/resource/shader/reflection/Tr2Pass.js.map +1 -1
  314. package/dist/resource/shader/reflection/Tr2RenderStateSetup.js +26 -5
  315. package/dist/resource/shader/reflection/Tr2RenderStateSetup.js.map +1 -1
  316. package/dist/resource/shader/reflection/carbonRecordFields.js +87 -90
  317. package/dist/resource/shader/reflection/carbonRecordFields.js.map +1 -1
  318. package/dist/resource/shader/sampler/Tr2SamplerSetup.js +32 -34
  319. package/dist/resource/shader/sampler/Tr2SamplerSetup.js.map +1 -1
  320. package/dist/resource/texture/CjsTextureArrayRes.js +1 -6
  321. package/dist/resource/texture/CjsTextureArrayRes.js.map +1 -1
  322. package/dist/resource/texture/Tr2TextureLodManager.js +35 -27
  323. package/dist/resource/texture/Tr2TextureLodManager.js.map +1 -1
  324. package/dist/resource/texture/Tr2TextureLodUpdateRequest.js +16 -24
  325. package/dist/resource/texture/Tr2TextureLodUpdateRequest.js.map +1 -1
  326. package/dist/resource/texture/Tr2TexturePackChannel.js +16 -24
  327. package/dist/resource/texture/Tr2TexturePackChannel.js.map +1 -1
  328. package/dist/resource/texture/Tr2TexturePipeline.js +24 -20
  329. package/dist/resource/texture/Tr2TexturePipeline.js.map +1 -1
  330. package/dist/resource/texture/Tr2TexturePipelineParams.js +14 -23
  331. package/dist/resource/texture/Tr2TexturePipelineParams.js.map +1 -1
  332. package/dist/resource/texture/Tr2TexturePipelineStepCompress.js +18 -25
  333. package/dist/resource/texture/Tr2TexturePipelineStepCompress.js.map +1 -1
  334. package/dist/resource/texture/Tr2TexturePipelineStepGenerateMips.js +11 -16
  335. package/dist/resource/texture/Tr2TexturePipelineStepGenerateMips.js.map +1 -1
  336. package/dist/resource/texture/Tr2TexturePipelineStepLimitSize.js +14 -23
  337. package/dist/resource/texture/Tr2TexturePipelineStepLimitSize.js.map +1 -1
  338. package/dist/resource/texture/Tr2TexturePipelineStepLoad.js +12 -22
  339. package/dist/resource/texture/Tr2TexturePipelineStepLoad.js.map +1 -1
  340. package/dist/resource/texture/Tr2TexturePipelineStepPack.js +38 -26
  341. package/dist/resource/texture/Tr2TexturePipelineStepPack.js.map +1 -1
  342. package/dist/resource/worker/CjsResManMainThreadLoader.js +2 -5
  343. package/dist/resource/worker/CjsResManMainThreadLoader.js.map +1 -1
  344. package/dist/resource/worker/CjsResManWorkerLoader.js +6 -7
  345. package/dist/resource/worker/CjsResManWorkerLoader.js.map +1 -1
  346. package/dist/resource/worker/protocol.js +18 -1
  347. package/dist/resource/worker/protocol.js.map +1 -1
  348. package/dist/sof/EveSOF.js +2 -222
  349. package/dist/sof/EveSOF.js.map +1 -1
  350. package/dist/sof/SofDocumentBuilder.js +205 -0
  351. package/dist/sof/SofDocumentBuilder.js.map +1 -0
  352. package/dist/sof/faction/ErrSOFFactionColorSetTypeNotFound.js +16 -0
  353. package/dist/sof/faction/ErrSOFFactionColorSetTypeNotFound.js.map +1 -0
  354. package/dist/sof/faction/ErrSOFFactionColorSetTypeUnknown.js +16 -0
  355. package/dist/sof/faction/ErrSOFFactionColorSetTypeUnknown.js.map +1 -0
  356. package/dist/sof/faction/EveSOFDataFactionColorSet.js +3 -27
  357. package/dist/sof/faction/EveSOFDataFactionColorSet.js.map +1 -1
  358. package/dist/sof/faction/index.js +3 -1
  359. package/dist/sof/faction/index.js.map +1 -1
  360. package/dist/sof/generic/ErrSOFAreaShaderNotFound.js +18 -0
  361. package/dist/sof/generic/ErrSOFAreaShaderNotFound.js.map +1 -0
  362. package/dist/sof/generic/ErrSOFDecalShaderNotFound.js +18 -0
  363. package/dist/sof/generic/ErrSOFDecalShaderNotFound.js.map +1 -0
  364. package/dist/sof/generic/ErrSOFMaterialPrefixNotFound.js +21 -0
  365. package/dist/sof/generic/ErrSOFMaterialPrefixNotFound.js.map +1 -0
  366. package/dist/sof/generic/ErrSOFPatternMaterialPrefixNotFound.js +21 -0
  367. package/dist/sof/generic/ErrSOFPatternMaterialPrefixNotFound.js.map +1 -0
  368. package/dist/sof/generic/EveSOFDataGeneric.js +5 -69
  369. package/dist/sof/generic/EveSOFDataGeneric.js.map +1 -1
  370. package/dist/sof/generic/index.js +5 -1
  371. package/dist/sof/generic/index.js.map +1 -1
  372. package/dist/sof/index.js +23 -7
  373. package/dist/sof/index.js.map +1 -1
  374. package/dist/sof/pattern/ErrSOFProjectionNotFound.js +20 -0
  375. package/dist/sof/pattern/ErrSOFProjectionNotFound.js.map +1 -0
  376. package/dist/sof/pattern/EveSOFDataPattern.js +2 -17
  377. package/dist/sof/pattern/EveSOFDataPattern.js.map +1 -1
  378. package/dist/sof/pattern/index.js +2 -1
  379. package/dist/sof/pattern/index.js.map +1 -1
  380. package/dist/sof/shared/ErrSOFAreaTypeNotFound.js +16 -0
  381. package/dist/sof/shared/ErrSOFAreaTypeNotFound.js.map +1 -0
  382. package/dist/sof/shared/ErrSOFLogoSetTypeNotFound.js +16 -0
  383. package/dist/sof/shared/ErrSOFLogoSetTypeNotFound.js.map +1 -0
  384. package/dist/sof/shared/ErrSOFLogoSetTypeUnknown.js +16 -0
  385. package/dist/sof/shared/ErrSOFLogoSetTypeUnknown.js.map +1 -0
  386. package/dist/sof/shared/EveSOFDataArea.js +2 -13
  387. package/dist/sof/shared/EveSOFDataArea.js.map +1 -1
  388. package/dist/sof/shared/EveSOFDataLogoSet.js +3 -27
  389. package/dist/sof/shared/EveSOFDataLogoSet.js.map +1 -1
  390. package/dist/sof/shared/EveSOFDataParameter.js +2 -146
  391. package/dist/sof/shared/EveSOFDataParameter.js.map +1 -1
  392. package/dist/sof/shared/EveSOFDataParameterBool.js +40 -0
  393. package/dist/sof/shared/EveSOFDataParameterBool.js.map +1 -0
  394. package/dist/sof/shared/EveSOFDataParameterColor.js +36 -0
  395. package/dist/sof/shared/EveSOFDataParameterColor.js.map +1 -0
  396. package/dist/sof/shared/EveSOFDataParameterFloat.js +37 -0
  397. package/dist/sof/shared/EveSOFDataParameterFloat.js.map +1 -0
  398. package/dist/sof/shared/EveSOFDataParameterInt.js +37 -0
  399. package/dist/sof/shared/EveSOFDataParameterInt.js.map +1 -0
  400. package/dist/sof/shared/EveSOFDataParameterVector2.js +37 -0
  401. package/dist/sof/shared/EveSOFDataParameterVector2.js.map +1 -0
  402. package/dist/sof/shared/EveSOFDataParameterVector3.js +37 -0
  403. package/dist/sof/shared/EveSOFDataParameterVector3.js.map +1 -0
  404. package/dist/sof/shared/{EveSOFDataSpotlightAttachment.js → EveSOFDataSpotLightAttachment.js} +1 -1
  405. package/dist/sof/shared/{EveSOFDataSpotlightAttachment.js.map → EveSOFDataSpotLightAttachment.js.map} +1 -1
  406. package/dist/sof/shared/index.js +13 -4
  407. package/dist/sof/shared/index.js.map +1 -1
  408. package/dist/sof/sofDocumentValues.js +33 -0
  409. package/dist/sof/sofDocumentValues.js.map +1 -0
  410. package/dist/trinity/controllers/ITr2Controller/ITr2ActionController.js +168 -0
  411. package/dist/trinity/controllers/ITr2Controller/ITr2ActionController.js.map +1 -0
  412. package/dist/trinity/controllers/{ITr2Controller.js → ITr2Controller/ITr2Controller.js} +2 -134
  413. package/dist/trinity/controllers/ITr2Controller/ITr2Controller.js.map +1 -0
  414. package/dist/trinity/controllers/Tr2Controller.js +2 -1
  415. package/dist/trinity/controllers/Tr2Controller.js.map +1 -1
  416. package/dist/trinity/controllers/Tr2ControllerReference.js +2 -1
  417. package/dist/trinity/controllers/Tr2ControllerReference.js.map +1 -1
  418. package/dist/trinity/controllers/action/ITr2ControllerAction.js +2 -1
  419. package/dist/trinity/controllers/action/ITr2ControllerAction.js.map +1 -1
  420. package/dist/trinity/controllers/action/Tr2ActionSpawnParticles.js +10 -9
  421. package/dist/trinity/controllers/action/Tr2ActionSpawnParticles.js.map +1 -1
  422. package/dist/trinity/controllers/expression/CjsControllerExpressionCompileError.js +26 -0
  423. package/dist/trinity/controllers/expression/CjsControllerExpressionCompileError.js.map +1 -0
  424. package/dist/trinity/controllers/expression/CjsControllerExpressionEvaluateError.js +24 -0
  425. package/dist/trinity/controllers/expression/CjsControllerExpressionEvaluateError.js.map +1 -0
  426. package/dist/trinity/controllers/expression/CjsControllerExpressionParser.js +387 -0
  427. package/dist/trinity/controllers/expression/CjsControllerExpressionParser.js.map +1 -0
  428. package/dist/trinity/controllers/expression/CjsControllerExpressionProgram.js +4 -1011
  429. package/dist/trinity/controllers/expression/CjsControllerExpressionProgram.js.map +1 -1
  430. package/dist/trinity/controllers/expression/expressionRuntime.js +605 -0
  431. package/dist/trinity/controllers/expression/expressionRuntime.js.map +1 -0
  432. package/dist/trinity/controllers/index.js +5 -2
  433. package/dist/trinity/controllers/index.js.map +1 -1
  434. package/dist/trinity/controllers/state/ITr2StateMachineStateFinalizer.js +2 -1
  435. package/dist/trinity/controllers/state/ITr2StateMachineStateFinalizer.js.map +1 -1
  436. package/dist/trinity/controllers/timeline/Tr2TimelineController.js +2 -1
  437. package/dist/trinity/controllers/timeline/Tr2TimelineController.js.map +1 -1
  438. package/dist/trinity/core/ITr2Updateable.js +2 -1
  439. package/dist/trinity/core/ITr2Updateable.js.map +1 -1
  440. package/dist/trinity/core/Tr2Blitter.js +6 -3
  441. package/dist/trinity/core/Tr2Blitter.js.map +1 -1
  442. package/dist/trinity/core/Tr2Denoiser.js +256 -0
  443. package/dist/trinity/core/Tr2Denoiser.js.map +1 -0
  444. package/dist/trinity/core/Tr2GpuResourcePool/GpuResourceHandle.js +115 -0
  445. package/dist/trinity/core/Tr2GpuResourcePool/GpuResourceHandle.js.map +1 -0
  446. package/dist/trinity/core/Tr2GpuResourcePool/TextureSize2D.js +79 -0
  447. package/dist/trinity/core/Tr2GpuResourcePool/TextureSize2D.js.map +1 -0
  448. package/dist/trinity/core/{Tr2GpuResourcePool.js → Tr2GpuResourcePool/Tr2GpuResourcePool.js} +63 -151
  449. package/dist/trinity/core/Tr2GpuResourcePool/Tr2GpuResourcePool.js.map +1 -0
  450. package/dist/trinity/core/{Tr2QuadRenderer.js → Tr2QuadRenderer/Tr2QuadRenderer.js} +8 -30
  451. package/dist/trinity/core/Tr2QuadRenderer/Tr2QuadRenderer.js.map +1 -0
  452. package/dist/trinity/core/Tr2QuadRenderer/Tr2QuadRendererEffectRecord.js +38 -0
  453. package/dist/trinity/core/Tr2QuadRenderer/Tr2QuadRendererEffectRecord.js.map +1 -0
  454. package/dist/trinity/core/Tr2RenderUtils.js +20 -3
  455. package/dist/trinity/core/Tr2RenderUtils.js.map +1 -1
  456. package/dist/trinity/core/Tr2Renderer.js +146 -1
  457. package/dist/trinity/core/Tr2Renderer.js.map +1 -1
  458. package/dist/trinity/core/Tr2ShadowMap.js +135 -14
  459. package/dist/trinity/core/Tr2ShadowMap.js.map +1 -1
  460. package/dist/trinity/core/{Tr2TextureArray.js → Tr2TextureArray/Tr2TextureArray.js} +3 -58
  461. package/dist/trinity/core/Tr2TextureArray/Tr2TextureArray.js.map +1 -0
  462. package/dist/trinity/core/Tr2TextureArray/Tr2TextureArrayElement.js +61 -0
  463. package/dist/trinity/core/Tr2TextureArray/Tr2TextureArrayElement.js.map +1 -0
  464. package/dist/trinity/core/batch/TriRenderBatch/DefaultKeyGenerator.js +26 -0
  465. package/dist/trinity/core/batch/TriRenderBatch/DefaultKeyGenerator.js.map +1 -0
  466. package/dist/trinity/core/batch/TriRenderBatch/EffectKeyGenerator.js +29 -0
  467. package/dist/trinity/core/batch/TriRenderBatch/EffectKeyGenerator.js.map +1 -0
  468. package/dist/trinity/core/batch/{ITriRenderBatchAccumulator.js → TriRenderBatch/ITriRenderBatchAccumulator.js} +30 -30
  469. package/dist/trinity/core/batch/TriRenderBatch/ITriRenderBatchAccumulator.js.map +1 -0
  470. package/dist/trinity/core/batch/{Tr2RenderBatch.js → TriRenderBatch/Tr2RenderBatch.js} +81 -154
  471. package/dist/trinity/core/batch/TriRenderBatch/Tr2RenderBatch.js.map +1 -0
  472. package/dist/trinity/core/batch/{TriRenderBatchAccumulator.js → TriRenderBatch/TriRenderBatchAccumulator.js} +7 -38
  473. package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAccumulator.js.map +1 -0
  474. package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlock.js +61 -0
  475. package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlock.js.map +1 -0
  476. package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlocksWithSharedMaterial.js +40 -0
  477. package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlocksWithSharedMaterial.js.map +1 -0
  478. package/dist/trinity/core/batch/TriRenderBatchMap.js +6 -1
  479. package/dist/trinity/core/batch/TriRenderBatchMap.js.map +1 -1
  480. package/dist/trinity/core/context/Tr2RenderContext.js +75 -57
  481. package/dist/trinity/core/context/Tr2RenderContext.js.map +1 -1
  482. package/dist/trinity/core/context/Tr2VisibilityResults/Tr2VisibilityEvent.js +67 -0
  483. package/dist/trinity/core/context/Tr2VisibilityResults/Tr2VisibilityEvent.js.map +1 -0
  484. package/dist/trinity/core/context/Tr2VisibilityResults/Tr2VisibilityResults.js +50 -0
  485. package/dist/trinity/core/context/Tr2VisibilityResults/Tr2VisibilityResults.js.map +1 -0
  486. package/dist/trinity/core/device/Tr2DepthStencil.js +186 -13
  487. package/dist/trinity/core/device/Tr2DepthStencil.js.map +1 -1
  488. package/dist/trinity/core/device/{Tr2RingBuffer.js → Tr2RingBuffer/Tr2RingBuffer.js} +27 -79
  489. package/dist/trinity/core/device/Tr2RingBuffer/Tr2RingBuffer.js.map +1 -0
  490. package/dist/trinity/core/device/Tr2RingBuffer/Tr2RingBufferOffsets.js +114 -0
  491. package/dist/trinity/core/device/Tr2RingBuffer/Tr2RingBufferOffsets.js.map +1 -0
  492. package/dist/trinity/core/device/{Tr2SuballocatedBuffer.js → Tr2SuballocatedBuffer/Tr2SuballocatedBuffer.js} +5 -59
  493. package/dist/trinity/core/device/Tr2SuballocatedBuffer/Tr2SuballocatedBuffer.js.map +1 -0
  494. package/dist/trinity/core/device/Tr2SuballocatedBuffer/Tr2SuballocatedBufferAllocation.js +80 -0
  495. package/dist/trinity/core/device/Tr2SuballocatedBuffer/Tr2SuballocatedBufferAllocation.js.map +1 -0
  496. package/dist/trinity/core/index.js +42 -15
  497. package/dist/trinity/core/index.js.map +1 -1
  498. package/dist/trinity/core/lighting/Tr2LightManager.js +6 -1
  499. package/dist/trinity/core/lighting/Tr2LightManager.js.map +1 -1
  500. package/dist/trinity/core/mesh/{ITr2ImpostorSource.js → ITr2ImpostorSource/ITr2ImpostorSource.js} +6 -28
  501. package/dist/trinity/core/mesh/ITr2ImpostorSource/ITr2ImpostorSource.js.map +1 -0
  502. package/dist/trinity/core/mesh/ITr2ImpostorSource/ITr2ImpostorSourceImpostorHash.js +32 -0
  503. package/dist/trinity/core/mesh/ITr2ImpostorSource/ITr2ImpostorSourceImpostorHash.js.map +1 -0
  504. package/dist/trinity/core/mesh/{ITr2InstanceData.js → ITr2InstanceData/ITr2InstanceData.js} +5 -29
  505. package/dist/trinity/core/mesh/ITr2InstanceData/ITr2InstanceData.js.map +1 -0
  506. package/dist/trinity/core/mesh/ITr2InstanceData/ITr2InstanceDataInstanceData.js +33 -0
  507. package/dist/trinity/core/mesh/ITr2InstanceData/ITr2InstanceDataInstanceData.js.map +1 -0
  508. package/dist/trinity/core/mesh/Tr2DirectInstanceData.js +2 -1
  509. package/dist/trinity/core/mesh/Tr2DirectInstanceData.js.map +1 -1
  510. package/dist/trinity/core/mesh/Tr2MeshBase.js +7 -1
  511. package/dist/trinity/core/mesh/Tr2MeshBase.js.map +1 -1
  512. package/dist/trinity/core/mesh/Tr2RuntimeInstanceData.js +2 -1
  513. package/dist/trinity/core/mesh/Tr2RuntimeInstanceData.js.map +1 -1
  514. package/dist/trinity/core/mesh/TriGeometryResAllocations.js +6 -2
  515. package/dist/trinity/core/mesh/TriGeometryResAllocations.js.map +1 -1
  516. package/dist/trinity/core/rawData/CjsConstantLayout.js +196 -0
  517. package/dist/trinity/core/rawData/CjsConstantLayout.js.map +1 -0
  518. package/dist/trinity/core/rawData/CjsPerFrameLayouts.js +8 -3
  519. package/dist/trinity/core/rawData/CjsPerFrameLayouts.js.map +1 -1
  520. package/dist/trinity/core/rawData/CjsPerObjectLayouts.js +40 -732
  521. package/dist/trinity/core/rawData/CjsPerObjectLayouts.js.map +1 -1
  522. package/dist/trinity/core/rawData/layouts/CjsEveBasicLayout.js +34 -0
  523. package/dist/trinity/core/rawData/layouts/CjsEveBasicLayout.js.map +1 -0
  524. package/dist/trinity/core/rawData/layouts/CjsEveBoosterSetLayout.js +69 -0
  525. package/dist/trinity/core/rawData/layouts/CjsEveBoosterSetLayout.js.map +1 -0
  526. package/dist/trinity/core/rawData/layouts/CjsEveChildBoosterSetLayout.js +59 -0
  527. package/dist/trinity/core/rawData/layouts/CjsEveChildBoosterSetLayout.js.map +1 -0
  528. package/dist/trinity/core/rawData/layouts/CjsEveChildBulletStormLayout.js +37 -0
  529. package/dist/trinity/core/rawData/layouts/CjsEveChildBulletStormLayout.js.map +1 -0
  530. package/dist/trinity/core/rawData/layouts/CjsEveChildSpherePinLayout.js +44 -0
  531. package/dist/trinity/core/rawData/layouts/CjsEveChildSpherePinLayout.js.map +1 -0
  532. package/dist/trinity/core/rawData/layouts/CjsEveLensflareLayout.js +31 -0
  533. package/dist/trinity/core/rawData/layouts/CjsEveLensflareLayout.js.map +1 -0
  534. package/dist/trinity/core/rawData/layouts/CjsEveMissileWarheadLayout.js +29 -0
  535. package/dist/trinity/core/rawData/layouts/CjsEveMissileWarheadLayout.js.map +1 -0
  536. package/dist/trinity/core/rawData/layouts/CjsEvePerObjectLayout.js +39 -0
  537. package/dist/trinity/core/rawData/layouts/CjsEvePerObjectLayout.js.map +1 -0
  538. package/dist/trinity/core/rawData/layouts/CjsEveSceneStaticParticlesLayout.js +30 -0
  539. package/dist/trinity/core/rawData/layouts/CjsEveSceneStaticParticlesLayout.js.map +1 -0
  540. package/dist/trinity/core/rawData/layouts/CjsEveSpaceObjectDecalLayout.js +78 -0
  541. package/dist/trinity/core/rawData/layouts/CjsEveSpaceObjectDecalLayout.js.map +1 -0
  542. package/dist/trinity/core/rawData/layouts/CjsEveSpaceObjectLayout.js +169 -0
  543. package/dist/trinity/core/rawData/layouts/CjsEveSpaceObjectLayout.js.map +1 -0
  544. package/dist/trinity/core/rawData/layouts/CjsEveSpacePerObjectLayout.js +107 -0
  545. package/dist/trinity/core/rawData/layouts/CjsEveSpacePerObjectLayout.js.map +1 -0
  546. package/dist/trinity/core/rawData/layouts/CjsEveSpherePinLayout.js +44 -0
  547. package/dist/trinity/core/rawData/layouts/CjsEveSpherePinLayout.js.map +1 -0
  548. package/dist/trinity/core/rawData/layouts/CjsEveStretch2Layout.js +34 -0
  549. package/dist/trinity/core/rawData/layouts/CjsEveStretch2Layout.js.map +1 -0
  550. package/dist/trinity/core/rawData/layouts/CjsEveTurretSetLayout.js +82 -0
  551. package/dist/trinity/core/rawData/layouts/CjsEveTurretSetLayout.js.map +1 -0
  552. package/dist/trinity/core/rawData/layouts/CjsTr2PerObjectLayout.js +42 -0
  553. package/dist/trinity/core/rawData/layouts/CjsTr2PerObjectLayout.js.map +1 -0
  554. package/dist/trinity/core/rawData/perObjectData/EveBasicPerObjectData.js +55 -0
  555. package/dist/trinity/core/rawData/perObjectData/EveBasicPerObjectData.js.map +1 -0
  556. package/dist/trinity/core/rawData/perObjectData/EveBoosterSetPerObjectData.js +59 -0
  557. package/dist/trinity/core/rawData/perObjectData/EveBoosterSetPerObjectData.js.map +1 -0
  558. package/dist/trinity/core/rawData/perObjectData/EveChildBoosterSetPerObjectData.js +59 -0
  559. package/dist/trinity/core/rawData/perObjectData/EveChildBoosterSetPerObjectData.js.map +1 -0
  560. package/dist/trinity/core/rawData/perObjectData/EveChildBulletStormPerObjectData.js +55 -0
  561. package/dist/trinity/core/rawData/perObjectData/EveChildBulletStormPerObjectData.js.map +1 -0
  562. package/dist/trinity/core/rawData/perObjectData/EveChildSpherePinPerObjectData.js +55 -0
  563. package/dist/trinity/core/rawData/perObjectData/EveChildSpherePinPerObjectData.js.map +1 -0
  564. package/dist/trinity/core/rawData/perObjectData/EveDecalPerObjectData.js +59 -0
  565. package/dist/trinity/core/rawData/perObjectData/EveDecalPerObjectData.js.map +1 -0
  566. package/dist/trinity/core/rawData/perObjectData/EveLensflarePerObjectData.js +55 -0
  567. package/dist/trinity/core/rawData/perObjectData/EveLensflarePerObjectData.js.map +1 -0
  568. package/dist/trinity/core/rawData/perObjectData/EveMissileWarheadPerObjectData.js +55 -0
  569. package/dist/trinity/core/rawData/perObjectData/EveMissileWarheadPerObjectData.js.map +1 -0
  570. package/dist/trinity/core/rawData/perObjectData/EveSceneStaticParticlesPerObjectData.js +55 -0
  571. package/dist/trinity/core/rawData/perObjectData/EveSceneStaticParticlesPerObjectData.js.map +1 -0
  572. package/dist/trinity/core/rawData/perObjectData/EveSpherePinPerObjectData.js +55 -0
  573. package/dist/trinity/core/rawData/perObjectData/EveSpherePinPerObjectData.js.map +1 -0
  574. package/dist/trinity/core/rawData/perObjectData/EveTurretSetPerObjectData.js +59 -0
  575. package/dist/trinity/core/rawData/perObjectData/EveTurretSetPerObjectData.js.map +1 -0
  576. package/dist/trinity/core/rawData/perObjectData/StretchPerObjectData.js +55 -0
  577. package/dist/trinity/core/rawData/perObjectData/StretchPerObjectData.js.map +1 -0
  578. package/dist/trinity/core/rawData/{Tr2PerObjectData.js → perObjectData/Tr2PerObjectData.js} +110 -62
  579. package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectData.js.map +1 -0
  580. package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataPSBuffer.js +104 -0
  581. package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataPSBuffer.js.map +1 -0
  582. package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataStandard.js +87 -0
  583. package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataStandard.js.map +1 -0
  584. package/dist/trinity/core/variable/TriVariable.js +83 -83
  585. package/dist/trinity/core/variable/TriVariable.js.map +1 -1
  586. package/dist/trinity/core/vertex/{Tr2VertexDefinition.js → Tr2VertexDefinition/Tr2VertexDefinition.js} +4 -20
  587. package/dist/trinity/core/vertex/Tr2VertexDefinition/Tr2VertexDefinition.js.map +1 -0
  588. package/dist/trinity/core/vertex/Tr2VertexDefinition/Tr2VertexDefinitionItem.js +29 -0
  589. package/dist/trinity/core/vertex/Tr2VertexDefinition/Tr2VertexDefinitionItem.js.map +1 -0
  590. package/dist/trinity/core/volumetrics/Tr2VolumetricsRenderer.js +116 -36
  591. package/dist/trinity/core/volumetrics/Tr2VolumetricsRenderer.js.map +1 -1
  592. package/dist/trinity/curves/curve/Tr2CurveRandomAxisRotation.js +50 -92
  593. package/dist/trinity/curves/curve/Tr2CurveRandomAxisRotation.js.map +1 -1
  594. package/dist/trinity/eve/EveModularObjectModifier.js +9 -5
  595. package/dist/trinity/eve/EveModularObjectModifier.js.map +1 -1
  596. package/dist/trinity/eve/IEveInheritPropertiesOwner.js +2 -1
  597. package/dist/trinity/eve/IEveInheritPropertiesOwner.js.map +1 -1
  598. package/dist/trinity/eve/IEveSpaceObject2.js +2 -1
  599. package/dist/trinity/eve/IEveSpaceObject2.js.map +1 -1
  600. package/dist/trinity/eve/IEveTransform.js +2 -1
  601. package/dist/trinity/eve/IEveTransform.js.map +1 -1
  602. package/dist/trinity/eve/attachment/banner/EveBannerSet.js +2 -2
  603. package/dist/trinity/eve/attachment/banner/EveBannerSet.js.map +1 -1
  604. package/dist/trinity/eve/attachment/booster/EveBoosterSet2.js +109 -133
  605. package/dist/trinity/eve/attachment/booster/EveBoosterSet2.js.map +1 -1
  606. package/dist/trinity/eve/attachment/booster/EveBoosterSet2Item.js +40 -0
  607. package/dist/trinity/eve/attachment/booster/EveBoosterSet2Item.js.map +1 -0
  608. package/dist/trinity/eve/attachment/booster/EveBoosterSet2Renderable.js +1 -1
  609. package/dist/trinity/eve/attachment/booster/EveBoosterSet2Renderable.js.map +1 -1
  610. package/dist/trinity/eve/attachment/decal/DecalMeshCache.js +2 -14
  611. package/dist/trinity/eve/attachment/decal/DecalMeshCache.js.map +1 -1
  612. package/dist/trinity/eve/attachment/decal/DecalMeshCacheMeshBuffers.js +18 -0
  613. package/dist/trinity/eve/attachment/decal/DecalMeshCacheMeshBuffers.js.map +1 -0
  614. package/dist/trinity/eve/attachment/decal/EveSpaceObjectDecal.js +1 -1
  615. package/dist/trinity/eve/attachment/decal/EveSpaceObjectDecal.js.map +1 -1
  616. package/dist/trinity/eve/attachment/haze/EveHazeSet.js +1 -1
  617. package/dist/trinity/eve/attachment/haze/EveHazeSet.js.map +1 -1
  618. package/dist/trinity/eve/attachment/plane/EvePlaneSet.js +1 -1
  619. package/dist/trinity/eve/attachment/plane/EvePlaneSet.js.map +1 -1
  620. package/dist/trinity/eve/attachment/spotlight/EveSpotlightSet.js +2 -2
  621. package/dist/trinity/eve/attachment/spotlight/EveSpotlightSet.js.map +1 -1
  622. package/dist/trinity/eve/attachment/sprite/EveSpriteLineSet.js +1 -1
  623. package/dist/trinity/eve/attachment/sprite/EveSpriteLineSet.js.map +1 -1
  624. package/dist/trinity/eve/attachment/sprite/EveSpriteSet.js +4 -2
  625. package/dist/trinity/eve/attachment/sprite/EveSpriteSet.js.map +1 -1
  626. package/dist/trinity/eve/attachment/turrets/EveTurretSet.js +143 -139
  627. package/dist/trinity/eve/attachment/turrets/EveTurretSet.js.map +1 -1
  628. package/dist/trinity/eve/camera/EveCamera.js +1 -1
  629. package/dist/trinity/eve/camera/EveCamera.js.map +1 -1
  630. package/dist/trinity/eve/child/EveChildBoosterSet.js +12 -1
  631. package/dist/trinity/eve/child/EveChildBoosterSet.js.map +1 -1
  632. package/dist/trinity/eve/child/EveChildCloud2.js +178 -151
  633. package/dist/trinity/eve/child/EveChildCloud2.js.map +1 -1
  634. package/dist/trinity/eve/child/EveChildContainer.js +141 -141
  635. package/dist/trinity/eve/child/EveChildContainer.js.map +1 -1
  636. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMesh.js +87 -0
  637. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMesh.js.map +1 -0
  638. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshArea.js +46 -0
  639. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshArea.js.map +1 -0
  640. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshInstance.js +35 -0
  641. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshInstance.js.map +1 -0
  642. package/dist/trinity/eve/child/{EveChildInstancedMeshes.js → EveChildInstancedMeshes/EveChildInstancedMeshes.js} +42 -163
  643. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshes.js.map +1 -0
  644. package/dist/trinity/eve/child/EveChildMesh.js +218 -218
  645. package/dist/trinity/eve/child/EveChildMesh.js.map +1 -1
  646. package/dist/trinity/eve/child/EveChildPartData/EveChildPartData.js +53 -0
  647. package/dist/trinity/eve/child/EveChildPartData/EveChildPartData.js.map +1 -0
  648. package/dist/trinity/eve/child/{EveChildPartData.js → EveChildPartData/EveChildPartDataPartData.js} +9 -45
  649. package/dist/trinity/eve/child/EveChildPartData/EveChildPartDataPartData.js.map +1 -0
  650. package/dist/trinity/eve/child/EveChildParticleSystem.js +30 -29
  651. package/dist/trinity/eve/child/EveChildParticleSystem.js.map +1 -1
  652. package/dist/trinity/eve/child/EveChildTransform.js +5 -0
  653. package/dist/trinity/eve/child/EveChildTransform.js.map +1 -1
  654. package/dist/trinity/eve/child/EveChildTurret.js +7 -0
  655. package/dist/trinity/eve/child/EveChildTurret.js.map +1 -1
  656. package/dist/trinity/eve/index.js +10 -4
  657. package/dist/trinity/eve/index.js.map +1 -1
  658. package/dist/trinity/eve/lights/Tr2Light.js +5 -0
  659. package/dist/trinity/eve/lights/Tr2Light.js.map +1 -1
  660. package/dist/trinity/eve/overlays/overlayBatches.js +6 -1
  661. package/dist/trinity/eve/overlays/overlayBatches.js.map +1 -1
  662. package/dist/trinity/eve/particles/static/EveSceneStaticParticles.js +4 -4
  663. package/dist/trinity/eve/particles/static/EveSceneStaticParticles.js.map +1 -1
  664. package/dist/trinity/eve/renderable/stretch/EveStretch2.js +76 -71
  665. package/dist/trinity/eve/renderable/stretch/EveStretch2.js.map +1 -1
  666. package/dist/trinity/eve/renderable/stretch/EveStretch3.js +1 -1
  667. package/dist/trinity/eve/renderable/stretch/EveStretch3.js.map +1 -1
  668. package/dist/trinity/eve/spaceObject/EveShip2.js +3 -3
  669. package/dist/trinity/eve/spaceObject/EveShip2.js.map +1 -1
  670. package/dist/trinity/eve/spaceObject/EveSpaceObject2.js +408 -407
  671. package/dist/trinity/eve/spaceObject/EveSpaceObject2.js.map +1 -1
  672. package/dist/trinity/eve/ui/EveTacticalOverlay.js +1 -1
  673. package/dist/trinity/eve/ui/EveTacticalOverlay.js.map +1 -1
  674. package/dist/trinity/eve/ui/lines/EveCurveLineSet.js +9 -9
  675. package/dist/trinity/eve/ui/lines/EveCurveLineSet.js.map +1 -1
  676. package/dist/trinity/eve/ui/lines/EveLineSet.js +27 -25
  677. package/dist/trinity/eve/ui/lines/EveLineSet.js.map +1 -1
  678. package/dist/trinity/eve/ui/tacticalOverlay/EveTacticalTrails.js +3 -2
  679. package/dist/trinity/eve/ui/tacticalOverlay/EveTacticalTrails.js.map +1 -1
  680. package/dist/trinity/generated/index.js +0 -1
  681. package/dist/trinity/generated/index.js.map +1 -1
  682. package/dist/trinity/generated/trinityCore/index.js +0 -1
  683. package/dist/trinity/generated/trinityCore/index.js.map +1 -1
  684. package/dist/trinity/index.js +59 -23
  685. package/dist/trinity/index.js.map +1 -1
  686. package/dist/trinity/particle/{ITr2GenericEmitter.js → ITr2GenericEmitter/ITr2GenericEmitter.js} +4 -32
  687. package/dist/trinity/particle/ITr2GenericEmitter/ITr2GenericEmitter.js.map +1 -0
  688. package/dist/trinity/particle/ITr2GenericEmitter/ITr2GenericEmitterUpdateArguments.js +36 -0
  689. package/dist/trinity/particle/ITr2GenericEmitter/ITr2GenericEmitterUpdateArguments.js.map +1 -0
  690. package/dist/trinity/particle/Tr2ParticleSystem.js +4 -2
  691. package/dist/trinity/particle/Tr2ParticleSystem.js.map +1 -1
  692. package/dist/trinity/particle/element/Tr2ParticleElementData.js +15 -4
  693. package/dist/trinity/particle/element/Tr2ParticleElementData.js.map +1 -1
  694. package/dist/trinity/particle/emitter/Tr2DynamicEmitter.js +21 -20
  695. package/dist/trinity/particle/emitter/Tr2DynamicEmitter.js.map +1 -1
  696. package/dist/trinity/particle/emitter/Tr2GpuSharedEmitter.js +23 -22
  697. package/dist/trinity/particle/emitter/Tr2GpuSharedEmitter.js.map +1 -1
  698. package/dist/trinity/particle/emitter/Tr2StaticEmitter.js +14 -13
  699. package/dist/trinity/particle/emitter/Tr2StaticEmitter.js.map +1 -1
  700. package/dist/trinity/particle/index.js +2 -1
  701. package/dist/trinity/particle/index.js.map +1 -1
  702. package/dist/trinity/renderJob/step/TriStepPushRenderTarget.js +7 -1
  703. package/dist/trinity/renderJob/step/TriStepPushRenderTarget.js.map +1 -1
  704. package/dist/trinity/shader/Tr2Effect.js +131 -58
  705. package/dist/trinity/shader/Tr2Effect.js.map +1 -1
  706. package/dist/trinity/shader/Tr2EffectStateManager.js +17 -5
  707. package/dist/trinity/shader/Tr2EffectStateManager.js.map +1 -1
  708. package/dist/trinity/shader/Tr2Material.js +21 -4
  709. package/dist/trinity/shader/Tr2Material.js.map +1 -1
  710. package/dist/trinity/shader/material/Tr2EffectPassParameters.js +4 -1
  711. package/dist/trinity/shader/material/Tr2EffectPassParameters.js.map +1 -1
  712. package/dist/trinity/shader/parameter/Tr2GeometryBufferParameter.js +2 -2
  713. package/dist/trinity/shader/parameter/Tr2GeometryBufferParameter.js.map +1 -1
  714. package/dist/trinityal/Tr2BufferAL/Tr2BufferDescriptionAL.js +79 -0
  715. package/dist/trinityal/Tr2BufferAL/Tr2BufferDescriptionAL.js.map +1 -0
  716. package/dist/trinityal/{Tr2DeviceResourceAL.js → Tr2DeviceResourceAL/Tr2BaseDeviceResourceAL.js} +77 -79
  717. package/dist/trinityal/Tr2DeviceResourceAL/Tr2BaseDeviceResourceAL.js.map +1 -0
  718. package/dist/trinityal/Tr2DeviceResourceAL/Tr2DeviceResourceAL.js +24 -0
  719. package/dist/trinityal/Tr2DeviceResourceAL/Tr2DeviceResourceAL.js.map +1 -0
  720. package/dist/trinityal/Tr2DrawUPHelper.js +2 -1
  721. package/dist/trinityal/Tr2DrawUPHelper.js.map +1 -1
  722. package/dist/trinityal/Tr2HalHelperStructures/Tr2MsaaDesc.js +45 -0
  723. package/dist/trinityal/Tr2HalHelperStructures/Tr2MsaaDesc.js.map +1 -0
  724. package/dist/trinityal/Tr2HalHelperStructures/Tr2SamplerDescription.js +154 -0
  725. package/dist/trinityal/Tr2HalHelperStructures/Tr2SamplerDescription.js.map +1 -0
  726. package/dist/trinityal/Tr2HalHelperStructures/Tr2SubresourceData.js +48 -0
  727. package/dist/trinityal/Tr2HalHelperStructures/Tr2SubresourceData.js.map +1 -0
  728. package/dist/trinityal/Tr2HalHelperStructures/Tr2TextureCoordBox.js +75 -0
  729. package/dist/trinityal/Tr2HalHelperStructures/Tr2TextureCoordBox.js.map +1 -0
  730. package/dist/trinityal/{Tr2HalHelperStructures.js → Tr2HalHelperStructures/Tr2TextureSubresource.js} +11 -115
  731. package/dist/trinityal/Tr2HalHelperStructures/Tr2TextureSubresource.js.map +1 -0
  732. package/dist/trinityal/Tr2HalHelperStructures/Tr2Viewport.js +51 -0
  733. package/dist/trinityal/Tr2HalHelperStructures/Tr2Viewport.js.map +1 -0
  734. package/dist/trinityal/{Tr2RenderPassAL.js → Tr2RenderPassAL/Tr2ColorAttachment.js} +5 -28
  735. package/dist/trinityal/Tr2RenderPassAL/Tr2ColorAttachment.js.map +1 -0
  736. package/dist/trinityal/Tr2RenderPassAL/Tr2DepthAttachment.js +38 -0
  737. package/dist/trinityal/Tr2RenderPassAL/Tr2DepthAttachment.js.map +1 -0
  738. package/dist/trinityal/Tr2ResourceSetAL/Tr2RegisterMapAL.js +80 -0
  739. package/dist/trinityal/Tr2ResourceSetAL/Tr2RegisterMapAL.js.map +1 -0
  740. package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetAL.js +76 -0
  741. package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetAL.js.map +1 -0
  742. package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetALStub.js +96 -0
  743. package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetALStub.js.map +1 -0
  744. package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetDescriptionAL.js +196 -0
  745. package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetDescriptionAL.js.map +1 -0
  746. package/dist/trinityal/index.js +22 -9
  747. package/dist/trinityal/index.js.map +1 -1
  748. package/dist/trinityal/stub/Tr2BufferALStub.js +86 -141
  749. package/dist/trinityal/stub/Tr2BufferALStub.js.map +1 -1
  750. package/dist/trinityal/stub/Tr2CapsALStub.js +17 -0
  751. package/dist/trinityal/stub/Tr2CapsALStub.js.map +1 -1
  752. package/dist/trinityal/stub/Tr2ConstantBufferALStub.js +57 -41
  753. package/dist/trinityal/stub/Tr2ConstantBufferALStub.js.map +1 -1
  754. package/dist/trinityal/stub/Tr2FenceALStub.js +18 -2
  755. package/dist/trinityal/stub/Tr2FenceALStub.js.map +1 -1
  756. package/dist/trinityal/stub/Tr2GpuTimerALStub.js +97 -0
  757. package/dist/trinityal/stub/Tr2GpuTimerALStub.js.map +1 -0
  758. package/dist/trinityal/stub/Tr2OcclusionQueryALStub.js +124 -0
  759. package/dist/trinityal/stub/Tr2OcclusionQueryALStub.js.map +1 -0
  760. package/dist/trinityal/stub/Tr2PipelineStatsQueryALStub/Tr2PipelineStatsQueryALStub.js +146 -0
  761. package/dist/trinityal/stub/Tr2PipelineStatsQueryALStub/Tr2PipelineStatsQueryALStub.js.map +1 -0
  762. package/dist/trinityal/stub/Tr2RenderContextALStub/Tr2BindlessResourcesAL.js +28 -0
  763. package/dist/trinityal/stub/Tr2RenderContextALStub/Tr2BindlessResourcesAL.js.map +1 -0
  764. package/dist/trinityal/stub/{Tr2RenderContextALStub.js → Tr2RenderContextALStub/Tr2RenderContextALStub.js} +70 -75
  765. package/dist/trinityal/stub/Tr2RenderContextALStub/Tr2RenderContextALStub.js.map +1 -0
  766. package/dist/trinityal/stub/Tr2SamplerStateALStub.js +47 -31
  767. package/dist/trinityal/stub/Tr2SamplerStateALStub.js.map +1 -1
  768. package/dist/trinityal/stub/Tr2ShaderALStub.js +61 -45
  769. package/dist/trinityal/stub/Tr2ShaderALStub.js.map +1 -1
  770. package/dist/trinityal/stub/Tr2ShaderProgramALStub.js +51 -33
  771. package/dist/trinityal/stub/Tr2ShaderProgramALStub.js.map +1 -1
  772. package/dist/trinityal/stub/Tr2SwapChainALStub.js +61 -45
  773. package/dist/trinityal/stub/Tr2SwapChainALStub.js.map +1 -1
  774. package/dist/trinityal/stub/Tr2TextureALStub.js +188 -171
  775. package/dist/trinityal/stub/Tr2TextureALStub.js.map +1 -1
  776. package/dist/trinityal/stub/Tr2VertexLayoutALStub.js +43 -27
  777. package/dist/trinityal/stub/Tr2VertexLayoutALStub.js.map +1 -1
  778. package/dist/trinityal/stub/{Tr2VideoAdapterInfoALStub.js → Tr2VideoAdapterInfoStub.js} +16 -1
  779. package/dist/trinityal/stub/Tr2VideoAdapterInfoStub.js.map +1 -0
  780. package/dist/trinityal/stub/index.js +8 -4
  781. package/dist/trinityal/stub/index.js.map +1 -1
  782. package/dist/trinityal/vertexLayoutMatch.js +2 -2
  783. package/dist/trinityal/vertexLayoutMatch.js.map +1 -1
  784. package/dist/trinityal/webgpu/CjsWebgpuBufferAL.js +105 -90
  785. package/dist/trinityal/webgpu/CjsWebgpuBufferAL.js.map +1 -1
  786. package/dist/trinityal/webgpu/CjsWebgpuCapsAL.js +17 -0
  787. package/dist/trinityal/webgpu/CjsWebgpuCapsAL.js.map +1 -1
  788. package/dist/trinityal/webgpu/CjsWebgpuConstantBufferAL.js +15 -0
  789. package/dist/trinityal/webgpu/CjsWebgpuConstantBufferAL.js.map +1 -1
  790. package/dist/trinityal/webgpu/CjsWebgpuDevice.js +2 -2
  791. package/dist/trinityal/webgpu/CjsWebgpuDevice.js.map +1 -1
  792. package/dist/trinityal/webgpu/CjsWebgpuRenderContextAL.js +900 -938
  793. package/dist/trinityal/webgpu/CjsWebgpuRenderContextAL.js.map +1 -1
  794. package/dist/trinityal/webgpu/CjsWebgpuResourceSetAL.js +56 -60
  795. package/dist/trinityal/webgpu/CjsWebgpuResourceSetAL.js.map +1 -1
  796. package/dist/trinityal/webgpu/CjsWebgpuSamplerStateAL.js +16 -1
  797. package/dist/trinityal/webgpu/CjsWebgpuSamplerStateAL.js.map +1 -1
  798. package/dist/trinityal/webgpu/CjsWebgpuShaderAL.js +100 -379
  799. package/dist/trinityal/webgpu/CjsWebgpuShaderAL.js.map +1 -1
  800. package/dist/trinityal/webgpu/CjsWebgpuShaderProgramAL.js +330 -0
  801. package/dist/trinityal/webgpu/CjsWebgpuShaderProgramAL.js.map +1 -0
  802. package/dist/trinityal/webgpu/CjsWebgpuTextureAL.js +15 -0
  803. package/dist/trinityal/webgpu/CjsWebgpuTextureAL.js.map +1 -1
  804. package/dist/trinityal/webgpu/core/{constantArena.js → CjsWebgpuConstantArena.js} +1 -1
  805. package/dist/trinityal/webgpu/core/CjsWebgpuConstantArena.js.map +1 -0
  806. package/dist/trinityal/webgpu/core/{batchGroups.js → CjsWebgpuEncodeState.js} +1 -1
  807. package/dist/trinityal/webgpu/core/CjsWebgpuEncodeState.js.map +1 -0
  808. package/dist/trinityal/webgpu/core/{perFrameSource.js → CjsWebgpuPerFrameSource.js} +1 -1
  809. package/dist/trinityal/webgpu/core/CjsWebgpuPerFrameSource.js.map +1 -0
  810. package/dist/trinityal/webgpu/core/{pipelineCache.js → CjsWebgpuPipelineCache.js} +1 -1
  811. package/dist/trinityal/webgpu/core/CjsWebgpuPipelineCache.js.map +1 -0
  812. package/dist/trinityal/webgpu/core/{psoDescription.js → CjsWebgpuPsoDescription.js} +2 -2
  813. package/dist/trinityal/webgpu/core/CjsWebgpuPsoDescription.js.map +1 -0
  814. package/dist/trinityal/webgpu/core/{renderTarget.js → CjsWebgpuRenderTarget.js} +1 -1
  815. package/dist/trinityal/webgpu/core/CjsWebgpuRenderTarget.js.map +1 -0
  816. package/dist/trinityal/webgpu/core/{samplerSource.js → CjsWebgpuSamplerSource.js} +1 -1
  817. package/dist/trinityal/webgpu/core/CjsWebgpuSamplerSource.js.map +1 -0
  818. package/dist/trinityal/webgpu/core/{textureSource.js → CjsWebgpuTextureSource.js} +1 -1
  819. package/dist/trinityal/webgpu/core/CjsWebgpuTextureSource.js.map +1 -0
  820. package/dist/trinityal/webgpu/core/{trinityBatchDispatcher.js → CjsWebgpuTrinityBatchDispatcher.js} +4 -4
  821. package/dist/trinityal/webgpu/core/CjsWebgpuTrinityBatchDispatcher.js.map +1 -0
  822. package/dist/trinityal/webgpu/core/{trinityBatchResolver.js → CjsWebgpuTrinityBatchResolver.js} +81 -81
  823. package/dist/trinityal/webgpu/core/CjsWebgpuTrinityBatchResolver.js.map +1 -0
  824. package/dist/trinityal/webgpu/core/{trinityPassEncoder.js → CjsWebgpuTrinityPassEncoder.js} +2 -2
  825. package/dist/trinityal/webgpu/core/CjsWebgpuTrinityPassEncoder.js.map +1 -0
  826. package/dist/trinityal/webgpu/core/{workQueue.js → CjsWebgpuWorkQueue.js} +1 -1
  827. package/dist/trinityal/webgpu/core/CjsWebgpuWorkQueue.js.map +1 -0
  828. package/dist/trinityal/webgpu/internal.js +12 -11
  829. package/dist/trinityal/webgpu/internal.js.map +1 -1
  830. package/docs/audio/reference/classes/trinity.md +44 -34
  831. package/docs/character/architecture.md +276 -0
  832. package/docs/character/reference/character-appearance-plans.md +30 -66
  833. package/docs/character/reference/prepared-libraries.md +14 -30
  834. package/docs/global/reference/api.md +2 -1
  835. package/docs/global/reference/classes/README.md +53 -71
  836. package/docs/global/reference/classes/dropped.md +16 -0
  837. package/docs/resource/README.md +19 -15
  838. package/docs/resource/architecture.md +9 -2
  839. package/docs/resource/concepts/format-capabilities.md +124 -80
  840. package/docs/resource/concepts/shared-format-helpers.md +94 -0
  841. package/docs/resource/formats/README.md +230 -224
  842. package/docs/resource/formats/bitknit2.md +221 -0
  843. package/docs/resource/formats/carbon-effect-container.md +184 -269
  844. package/docs/resource/formats/gr2.md +6 -1
  845. package/docs/resource/formats/schemabound.md +28 -48
  846. package/docs/resource/formats/static.md +70 -97
  847. package/docs/resource/formats/webgl/carbon-constant-layouts.md +8 -8
  848. package/docs/resource/formats/webgl/decl-io.md +165 -256
  849. package/docs/resource/formats/webgl/memory-structured.md +64 -142
  850. package/docs/resource/formats/webgl/texture-sample.md +109 -138
  851. package/docs/resource/formats/webgpu/formats/carbon-webgpu.md +38 -69
  852. package/docs/resource/formats/webgpu/guides/effect-packaging.md +54 -116
  853. package/docs/resource/formats/webgpu/reference/api.md +64 -67
  854. package/docs/resource/formats/webgpu/reference/wgsl-compatibility.md +158 -345
  855. package/docs/resource/reference/classes/core.md +256 -236
  856. package/docs/resource/reference/classes/formats.md +1668 -1672
  857. package/docs/resource/reference/workers.md +4 -2
  858. package/docs/sof/reference/classes/core.md +1 -1
  859. package/docs/sof/reference/classes/faction.md +2 -2
  860. package/docs/sof/reference/classes/generic.md +4 -4
  861. package/docs/sof/reference/classes/pattern.md +1 -1
  862. package/docs/sof/reference/classes/shared.md +10 -10
  863. package/docs/trinity/architecture.md +55 -44
  864. package/docs/trinity/concepts/generated-class-lifecycle.md +10 -15
  865. package/docs/trinity/reference/classes/curves-and-utilities.md +496 -506
  866. package/docs/trinity/reference/classes/dropped.md +0 -189
  867. package/docs/trinity/reference/classes/eve-runtime.md +8 -8
  868. package/docs/trinity/reference/classes/generated.md +0 -10
  869. package/docs/trinity/reference/classes/particle.md +2 -2
  870. package/docs/trinity/reference/classes/trinity-core.md +1554 -1256
  871. package/docs/trinity/reference/implementation-status.md +50 -75
  872. package/docs/trinity/reference/main-semantic-extraction.md +13 -17
  873. package/docs/trinityal/reference/classes/README.md +77 -27
  874. package/docs/trinityal/reference/classes/dropped.md +92 -0
  875. package/docs/trinityal/webgpu/README.md +3 -1
  876. package/docs/trinityal/webgpu/architecture.md +121 -228
  877. package/docs/trinityal/webgpu/reference/api.md +5 -5
  878. package/docs/trinityal/webgpu/reference/classes/README.md +13 -13
  879. package/format-notices/gr2/NOTICE +18 -12
  880. package/format-notices/gr2/THIRD-PARTY-NOTICES.md +5 -5
  881. package/package.json +4 -1
  882. package/dist/audio/trinity/audio/AudActionLog.js +0 -173
  883. package/dist/audio/trinity/audio/AudActionLog.js.map +0 -1
  884. package/dist/audio/trinity/audio/AudObstructionOcclusion.js.map +0 -1
  885. package/dist/global/contracts/CjsScriptCallback.js +0 -94
  886. package/dist/global/contracts/CjsScriptCallback.js.map +0 -1
  887. package/dist/trinity/controllers/ITr2Controller.js.map +0 -1
  888. package/dist/trinity/core/Tr2GpuResourcePool.js.map +0 -1
  889. package/dist/trinity/core/Tr2QuadRenderer.js.map +0 -1
  890. package/dist/trinity/core/Tr2TextureArray.js.map +0 -1
  891. package/dist/trinity/core/batch/ITriRenderBatchAccumulator.js.map +0 -1
  892. package/dist/trinity/core/batch/Tr2RenderBatch.js.map +0 -1
  893. package/dist/trinity/core/batch/TriRenderBatchAccumulator.js.map +0 -1
  894. package/dist/trinity/core/context/CjsShadowMapExecutor.js +0 -43
  895. package/dist/trinity/core/context/CjsShadowMapExecutor.js.map +0 -1
  896. package/dist/trinity/core/context/CjsVolumetricsExecutor.js +0 -64
  897. package/dist/trinity/core/context/CjsVolumetricsExecutor.js.map +0 -1
  898. package/dist/trinity/core/context/Tr2VisibilityResults.js +0 -109
  899. package/dist/trinity/core/context/Tr2VisibilityResults.js.map +0 -1
  900. package/dist/trinity/core/device/Tr2RingBuffer.js.map +0 -1
  901. package/dist/trinity/core/device/Tr2SuballocatedBuffer.js.map +0 -1
  902. package/dist/trinity/core/mesh/ITr2ImpostorSource.js.map +0 -1
  903. package/dist/trinity/core/mesh/ITr2InstanceData.js.map +0 -1
  904. package/dist/trinity/core/rawData/Tr2PerObjectData.js.map +0 -1
  905. package/dist/trinity/core/rawData/constantLayout.js +0 -175
  906. package/dist/trinity/core/rawData/constantLayout.js.map +0 -1
  907. package/dist/trinity/core/vertex/Tr2VertexDefinition.js.map +0 -1
  908. package/dist/trinity/eve/child/EveChildInstancedMeshes.js.map +0 -1
  909. package/dist/trinity/eve/child/EveChildPartData.js.map +0 -1
  910. package/dist/trinity/generated/trinityCore/Tr2Denoiser.js +0 -47
  911. package/dist/trinity/generated/trinityCore/Tr2Denoiser.js.map +0 -1
  912. package/dist/trinity/particle/ITr2GenericEmitter.js.map +0 -1
  913. package/dist/trinityal/Tr2DeviceResourceAL.js.map +0 -1
  914. package/dist/trinityal/Tr2HalHelperStructures.js.map +0 -1
  915. package/dist/trinityal/Tr2RenderPassAL.js.map +0 -1
  916. package/dist/trinityal/Tr2ResourceSetAL.js +0 -419
  917. package/dist/trinityal/Tr2ResourceSetAL.js.map +0 -1
  918. package/dist/trinityal/Tr2SamplerDescription.js +0 -72
  919. package/dist/trinityal/Tr2SamplerDescription.js.map +0 -1
  920. package/dist/trinityal/stub/Tr2QueryALStub.js +0 -326
  921. package/dist/trinityal/stub/Tr2QueryALStub.js.map +0 -1
  922. package/dist/trinityal/stub/Tr2RenderContextALStub.js.map +0 -1
  923. package/dist/trinityal/stub/Tr2VideoAdapterInfoALStub.js.map +0 -1
  924. package/dist/trinityal/webgpu/core/batchGroups.js.map +0 -1
  925. package/dist/trinityal/webgpu/core/constantArena.js.map +0 -1
  926. package/dist/trinityal/webgpu/core/perFrameSource.js.map +0 -1
  927. package/dist/trinityal/webgpu/core/pipelineCache.js.map +0 -1
  928. package/dist/trinityal/webgpu/core/psoDescription.js.map +0 -1
  929. package/dist/trinityal/webgpu/core/renderTarget.js.map +0 -1
  930. package/dist/trinityal/webgpu/core/samplerSource.js.map +0 -1
  931. package/dist/trinityal/webgpu/core/textureSource.js.map +0 -1
  932. package/dist/trinityal/webgpu/core/trinityBatchDispatcher.js.map +0 -1
  933. package/dist/trinityal/webgpu/core/trinityBatchResolver.js.map +0 -1
  934. package/dist/trinityal/webgpu/core/trinityPassEncoder.js.map +0 -1
  935. package/dist/trinityal/webgpu/core/workQueue.js.map +0 -1
@@ -1,3 +1,5 @@
1
+ import { toJsonAcyclic } from '../../../format/jsonPolicies.js';
2
+
1
3
  const OUTPUT_JSON = "json";
2
4
  const OUTPUT_PAYLOAD = "payload";
3
5
  const OUTPUT_RUNTIME = "runtime";
@@ -58,9 +60,9 @@ function validateClassKey(classKeys, key, readerName) {
58
60
  }
59
61
  }
60
62
 
61
- /**
62
- * Validates a resolved runtime class constructor for the RED object-graph
63
- * reader.
63
+ /**
64
+ * Validates a resolved runtime class constructor for the RED object-graph
65
+ * reader.
64
66
  */
65
67
  function validateClass(classKeys, type, Class, readerName) {
66
68
  validateClassKey(classKeys, type, readerName);
@@ -82,9 +84,9 @@ function mergeClasses(values, classes, classKeys, readerName) {
82
84
  values.classes = next;
83
85
  }
84
86
 
85
- /**
86
- * Normalizes reader options against their supported defaults for the RED
87
- * object-graph reader.
87
+ /**
88
+ * Normalizes reader options against their supported defaults for the RED
89
+ * object-graph reader.
88
90
  */
89
91
  function normalizeValues(base, options, classKeys, readerName) {
90
92
  if (!options || typeof options !== "object") {
@@ -122,30 +124,18 @@ function copyReaderOptions(values) {
122
124
  return readerOptions;
123
125
  }
124
126
 
125
- /**
126
- * Converts a parsed payload into a JSON-safe value for the RED object-graph
127
- * reader.
127
+ /**
128
+ * Converts a parsed payload into a JSON-safe value for the RED object-graph
129
+ * reader.
128
130
  */
129
- function toJsonValue(value, seen = new WeakSet()) {
130
- if (value === null || typeof value !== "object") return value;
131
- if (ArrayBuffer.isView(value)) return Array.from(value, item => toJsonValue(item, seen));
132
- if (Array.isArray(value)) return value.map(item => toJsonValue(item, seen));
133
- if (seen.has(value)) {
134
- throw new TypeError("Reader.toJSON cannot convert circular data");
135
- }
136
- if (typeof value.toJSON === "function") {
137
- seen.add(value);
138
- const json = toJsonValue(value.toJSON(), seen);
139
- seen.delete(value);
140
- return json;
141
- }
142
- seen.add(value);
143
- const out = {};
144
- for (const key of Object.keys(value)) {
145
- out[key] = toJsonValue(value[key], seen);
146
- }
147
- seen.delete(value);
148
- return out;
131
+ /**
132
+ * Convert to JSON, refusing a cycle, naming this reader in the error.
133
+ *
134
+ * @param {*} value Any decoded value.
135
+ * @returns {*} A JSON-safe value.
136
+ */
137
+ function toJsonValue(value) {
138
+ return toJsonAcyclic(value, "Reader");
149
139
  }
150
140
 
151
141
  export { DEFAULT_VALUES, OUTPUT_JSON, OUTPUT_PAYLOAD, OUTPUT_RAW, OUTPUT_RUNTIME, copyReaderOptions, normalizeValues, toJsonValue, validateClass, validateClassKey };
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sources":["../../../../../../src/resource/formats/red/core/helpers.js"],"sourcesContent":["export const OUTPUT_JSON = \"json\";\r\nexport const OUTPUT_PAYLOAD = \"payload\";\r\nexport const OUTPUT_RUNTIME = \"runtime\";\r\nexport const OUTPUT_RAW = \"raw\";\r\n\r\nexport const DEFAULT_VALUES = Object.freeze({\r\n emit: OUTPUT_JSON,\r\n schema: null,\r\n registry: null,\r\n firstId: 1,\r\n parse: null,\r\n adapter: null,\r payloadTypeField: \"_type\",\r\n payloadIdField: \"_id\",\r\n payloadReferenceField: \"_reference\",\r\n payloadValuesField: \"_values\",\r\n classes: Object.freeze({})\r\n});\r\n\r\nconst OPTION_KEYS = new Set(Object.keys(DEFAULT_VALUES));\r\n\n\r\nfunction normalizeEmit(emit, readerName)\r\n{\r\n if (emit === undefined || emit === OUTPUT_JSON) return OUTPUT_JSON;\r\n if (emit === OUTPUT_PAYLOAD) return OUTPUT_PAYLOAD;\r\n if (emit === OUTPUT_RUNTIME) return OUTPUT_RUNTIME;\r\n if (emit === OUTPUT_RAW) return OUTPUT_RAW;\r\n throw new Error(`${readerName} unknown emit value \"${emit}\"`);\r\n}\r\n\r\nfunction assertKnownOptions(options, readerName)\r\n{\r\n for (const key of Object.keys(options))\r\n {\r\n if (!OPTION_KEYS.has(key))\r\n {\r\n throw new TypeError(`${readerName} unknown option \"${key}\"`);\r\n }\r\n }\r\n}\r\n\r\nfunction classMap(values)\r\n{\r\n return values && values.classes ? values.classes : {};\r\n}\r\n\r\nfunction cloneValues(values)\r\n{\r\n return {\r\n emit: values.emit,\r\n schema: values.schema ?? null,\r\n registry: values.registry ?? null,\r\n firstId: values.firstId ?? 1,\r\n parse: values.parse ?? null,\r\n adapter: values.adapter ?? null,\r payloadTypeField: values.payloadTypeField,\r\n payloadIdField: values.payloadIdField,\r\n payloadReferenceField: values.payloadReferenceField,\r\n payloadValuesField: values.payloadValuesField,\r\n classes: { ...classMap(values) }\r\n };\r\n}\r\n\r\n/** Validates a requested runtime class key for the RED object-graph reader. */\r\nexport function validateClassKey(classKeys, key, readerName)\r\n{\r\n if (typeof key !== \"string\" || !key)\r\n {\r\n throw new Error(`${readerName} class type must be a non-empty string`);\r\n }\r\n}\r\n\r\n/**\r\n * Validates a resolved runtime class constructor for the RED object-graph\r\n * reader.\r\n */\r\nexport function validateClass(classKeys, type, Class, readerName)\r\n{\r\n validateClassKey(classKeys, type, readerName);\r\n if (typeof Class !== \"function\")\r\n {\r\n throw new TypeError(`${readerName} class \"${type}\" must be a constructor`);\r\n }\r\n}\r\n\r\nfunction mergeClasses(values, classes, classKeys, readerName)\r\n{\r\n if (!classes || typeof classes !== \"object\")\r\n {\r\n throw new TypeError(`${readerName} classes option must be an object`);\r\n }\r\n\r\n const next = { ...values.classes };\r\n for (const [ type, Class ] of Object.entries(classes))\r\n {\r\n validateClass(classKeys, type, Class, readerName);\r\n next[type] = Class;\r\n }\r\n values.classes = next;\r\n}\r\n\r\n/**\r\n * Normalizes reader options against their supported defaults for the RED\r\n * object-graph reader.\r\n */\r\nexport function normalizeValues(base, options, classKeys, readerName)\r\n{\r\n if (!options || typeof options !== \"object\")\r\n {\r\n throw new TypeError(`${readerName} options must be an object`);\r\n }\r\n\r\n assertKnownOptions(options, readerName);\r\n\r\n const values = cloneValues(base);\r\n if (Object.hasOwn(options, \"emit\")) values.emit = normalizeEmit(options.emit, readerName);\r\n if (Object.hasOwn(options, \"schema\")) values.schema = options.schema ?? null;\r\n if (Object.hasOwn(options, \"registry\")) values.registry = options.registry ?? null;\r\n if (Object.hasOwn(options, \"firstId\")) values.firstId = options.firstId ?? 1;\r\n if (Object.hasOwn(options, \"parse\"))\r\n {\r\n if (options.parse !== null && options.parse !== undefined && typeof options.parse !== \"function\")\r\n {\r\n throw new TypeError(`${readerName} parse option must be a function`);\r\n }\r\n values.parse = options.parse ?? null;\r\n }\r\n if (Object.hasOwn(options, \"adapter\")) values.adapter = options.adapter ?? null;\r if (Object.hasOwn(options, \"payloadTypeField\")) values.payloadTypeField = options.payloadTypeField;\r\n if (Object.hasOwn(options, \"payloadIdField\")) values.payloadIdField = options.payloadIdField;\r\n if (Object.hasOwn(options, \"payloadReferenceField\")) values.payloadReferenceField = options.payloadReferenceField;\r\n if (Object.hasOwn(options, \"payloadValuesField\")) values.payloadValuesField = options.payloadValuesField;\r\n if (Object.hasOwn(options, \"classes\")) mergeClasses(values, options.classes, classKeys, readerName);\r\n return values;\r\n}\r\n\r\n/** Copies reader options accepted by the current RED object-graph reader. */\r\nexport function copyReaderOptions(values)\r\n{\r\n const { emit: _emit, schema: _schema, classes: _classes, ...readerOptions } = values;\r\n return readerOptions;\r\n}\r\n\r\n/**\r\n * Converts a parsed payload into a JSON-safe value for the RED object-graph\r\n * reader.\r\n */\r\nexport function toJsonValue(value, seen = new WeakSet())\r\n{\r\n if (value === null || typeof value !== \"object\") return value;\r\n if (ArrayBuffer.isView(value)) return Array.from(value, item => toJsonValue(item, seen));\r\n if (Array.isArray(value)) return value.map(item => toJsonValue(item, seen));\r\n\r\n if (seen.has(value))\r\n {\r\n throw new TypeError(\"Reader.toJSON cannot convert circular data\");\r\n }\r\n\r\n if (typeof value.toJSON === \"function\")\r\n {\r\n seen.add(value);\r\n const json = toJsonValue(value.toJSON(), seen);\r\n seen.delete(value);\r\n return json;\r\n }\r\n\r\n seen.add(value);\r\n const out = {};\r\n for (const key of Object.keys(value))\r\n {\r\n out[key] = toJsonValue(value[key], seen);\r\n }\r\n seen.delete(value);\r\n return out;\r\n}\r\n"],"names":["OUTPUT_JSON","OUTPUT_PAYLOAD","OUTPUT_RUNTIME","OUTPUT_RAW","DEFAULT_VALUES","Object","freeze","emit","schema","registry","firstId","parse","adapter","payloadTypeField","payloadIdField","payloadReferenceField","payloadValuesField","classes","OPTION_KEYS","Set","keys","normalizeEmit","readerName","undefined","Error","assertKnownOptions","options","key","has","TypeError","classMap","values","cloneValues","validateClassKey","classKeys","validateClass","type","Class","mergeClasses","next","entries","normalizeValues","base","hasOwn","copyReaderOptions","_emit","_schema","_classes","readerOptions","toJsonValue","value","seen","WeakSet","ArrayBuffer","isView","Array","from","item","isArray","map","toJSON","add","json","delete","out"],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sources":["../../../../../../src/resource/formats/red/core/helpers.js"],"sourcesContent":["import { toJsonAcyclic } from \"../../../format/jsonPolicies.js\";\n\nexport const OUTPUT_JSON = \"json\";\nexport const OUTPUT_PAYLOAD = \"payload\";\nexport const OUTPUT_RUNTIME = \"runtime\";\nexport const OUTPUT_RAW = \"raw\";\n\nexport const DEFAULT_VALUES = Object.freeze({\n emit: OUTPUT_JSON,\n schema: null,\n registry: null,\n firstId: 1,\n parse: null,\n adapter: null,\n payloadTypeField: \"_type\",\n payloadIdField: \"_id\",\n payloadReferenceField: \"_reference\",\n payloadValuesField: \"_values\",\n classes: Object.freeze({})\n});\n\nconst OPTION_KEYS = new Set(Object.keys(DEFAULT_VALUES));\n\n\nfunction normalizeEmit(emit, readerName)\n{\n if (emit === undefined || emit === OUTPUT_JSON) return OUTPUT_JSON;\n if (emit === OUTPUT_PAYLOAD) return OUTPUT_PAYLOAD;\n if (emit === OUTPUT_RUNTIME) return OUTPUT_RUNTIME;\n if (emit === OUTPUT_RAW) return OUTPUT_RAW;\n throw new Error(`${readerName} unknown emit value \"${emit}\"`);\n}\n\nfunction assertKnownOptions(options, readerName)\n{\n for (const key of Object.keys(options))\n {\n if (!OPTION_KEYS.has(key))\n {\n throw new TypeError(`${readerName} unknown option \"${key}\"`);\n }\n }\n}\n\nfunction classMap(values)\n{\n return values && values.classes ? values.classes : {};\n}\n\nfunction cloneValues(values)\n{\n return {\n emit: values.emit,\n schema: values.schema ?? null,\n registry: values.registry ?? null,\n firstId: values.firstId ?? 1,\n parse: values.parse ?? null,\n adapter: values.adapter ?? null,\n payloadTypeField: values.payloadTypeField,\n payloadIdField: values.payloadIdField,\n payloadReferenceField: values.payloadReferenceField,\n payloadValuesField: values.payloadValuesField,\n classes: { ...classMap(values) }\n };\n}\n\n/** Validates a requested runtime class key for the RED object-graph reader. */\nexport function validateClassKey(classKeys, key, readerName)\n{\n if (typeof key !== \"string\" || !key)\n {\n throw new Error(`${readerName} class type must be a non-empty string`);\n }\n}\n\n/**\n * Validates a resolved runtime class constructor for the RED object-graph\n * reader.\n */\nexport function validateClass(classKeys, type, Class, readerName)\n{\n validateClassKey(classKeys, type, readerName);\n if (typeof Class !== \"function\")\n {\n throw new TypeError(`${readerName} class \"${type}\" must be a constructor`);\n }\n}\n\nfunction mergeClasses(values, classes, classKeys, readerName)\n{\n if (!classes || typeof classes !== \"object\")\n {\n throw new TypeError(`${readerName} classes option must be an object`);\n }\n\n const next = { ...values.classes };\n for (const [ type, Class ] of Object.entries(classes))\n {\n validateClass(classKeys, type, Class, readerName);\n next[type] = Class;\n }\n values.classes = next;\n}\n\n/**\n * Normalizes reader options against their supported defaults for the RED\n * object-graph reader.\n */\nexport function normalizeValues(base, options, classKeys, readerName)\n{\n if (!options || typeof options !== \"object\")\n {\n throw new TypeError(`${readerName} options must be an object`);\n }\n\n assertKnownOptions(options, readerName);\n\n const values = cloneValues(base);\n if (Object.hasOwn(options, \"emit\")) values.emit = normalizeEmit(options.emit, readerName);\n if (Object.hasOwn(options, \"schema\")) values.schema = options.schema ?? null;\n if (Object.hasOwn(options, \"registry\")) values.registry = options.registry ?? null;\n if (Object.hasOwn(options, \"firstId\")) values.firstId = options.firstId ?? 1;\n if (Object.hasOwn(options, \"parse\"))\n {\n if (options.parse !== null && options.parse !== undefined && typeof options.parse !== \"function\")\n {\n throw new TypeError(`${readerName} parse option must be a function`);\n }\n values.parse = options.parse ?? null;\n }\n if (Object.hasOwn(options, \"adapter\")) values.adapter = options.adapter ?? null;\n if (Object.hasOwn(options, \"payloadTypeField\")) values.payloadTypeField = options.payloadTypeField;\n if (Object.hasOwn(options, \"payloadIdField\")) values.payloadIdField = options.payloadIdField;\n if (Object.hasOwn(options, \"payloadReferenceField\")) values.payloadReferenceField = options.payloadReferenceField;\n if (Object.hasOwn(options, \"payloadValuesField\")) values.payloadValuesField = options.payloadValuesField;\n if (Object.hasOwn(options, \"classes\")) mergeClasses(values, options.classes, classKeys, readerName);\n return values;\n}\n\n/** Copies reader options accepted by the current RED object-graph reader. */\nexport function copyReaderOptions(values)\n{\n const { emit: _emit, schema: _schema, classes: _classes, ...readerOptions } = values;\n return readerOptions;\n}\n\n/**\n * Converts a parsed payload into a JSON-safe value for the RED object-graph\n * reader.\n */\n/**\n * Convert to JSON, refusing a cycle, naming this reader in the error.\n *\n * @param {*} value Any decoded value.\n * @returns {*} A JSON-safe value.\n */\nexport function toJsonValue(value)\n{\n return toJsonAcyclic(value, \"Reader\");\n}\n"],"names":["OUTPUT_JSON","OUTPUT_PAYLOAD","OUTPUT_RUNTIME","OUTPUT_RAW","DEFAULT_VALUES","Object","freeze","emit","schema","registry","firstId","parse","adapter","payloadTypeField","payloadIdField","payloadReferenceField","payloadValuesField","classes","OPTION_KEYS","Set","keys","normalizeEmit","readerName","undefined","Error","assertKnownOptions","options","key","has","TypeError","classMap","values","cloneValues","validateClassKey","classKeys","validateClass","type","Class","mergeClasses","next","entries","normalizeValues","base","hasOwn","copyReaderOptions","_emit","_schema","_classes","readerOptions","toJsonValue","value","toJsonAcyclic"],"mappings":"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"}
@@ -1,50 +1,51 @@
1
1
  import { CjsFormat } from '../../format/CjsFormat.js';
2
- import { DEFAULT_VALUES, normalizeValues, validateClassKey, validateClass, readWithValues, writeWithValues, inspectWithValues, toJsonValue, OUTPUT_CMF, OUTPUT_GR2, OUTPUT_SHARED, OUTPUT_STL_JSON, OUTPUT_JSON, CLASS_KEYS } from './core/helpers.js';
2
+ import { DEFAULT_VALUES, normalizeValues, validateClassKey, validateClass, readWithValues, writeWithValues, inspectWithValues, OUTPUT_CMF, OUTPUT_GR2, OUTPUT_SHARED, OUTPUT_STL_JSON, OUTPUT_JSON, CLASS_KEYS } from './core/helpers.js';
3
+ import { toJsonWithArrayValues } from '../../format/jsonPolicies.js';
3
4
  import { isStl, isBinaryStl } from './core/stl.js';
4
5
 
5
6
  const FORMAT_NAME = "CjsStlFormat";
6
7
 
7
- /**
8
- * Shared mesh accepted by the STL writer. STL exports only `vertex.position`
9
- * and triangular `indices[].faces`; all other shared channels are ignored.
10
- *
11
- * @typedef {object} CjsStlSharedMesh
12
- * @property {string} [name] Diagnostic mesh name; `solidName` controls the STL header.
13
- * @property {{position: ArrayLike<number>, normal?: ArrayLike<number>}} vertex Shared vertex channels.
14
- * @property {Array<{name?: string, faces: ArrayLike<number>}>} indices Triangle index groups.
8
+ /**
9
+ * Shared mesh accepted by the STL writer. STL exports only `vertex.position`
10
+ * and triangular `indices[].faces`; all other shared channels are ignored.
11
+ *
12
+ * @typedef {object} CjsStlSharedMesh
13
+ * @property {string} [name] Diagnostic mesh name; `solidName` controls the STL header.
14
+ * @property {{position: ArrayLike<number>, normal?: ArrayLike<number>}} vertex Shared vertex channels.
15
+ * @property {Array<{name?: string, faces: ArrayLike<number>}>} indices Triangle index groups.
15
16
  */
16
17
 
17
- /**
18
- * Shared geometry root accepted by the STL writer.
19
- *
20
- * @typedef {object} CjsStlSharedRoot
21
- * @property {Array<CjsStlSharedMesh>} meshes Meshes flattened into one STL solid.
22
- * @property {string} [grannyFileSource] Optional source label used by inspection.
18
+ /**
19
+ * Shared geometry root accepted by the STL writer.
20
+ *
21
+ * @typedef {object} CjsStlSharedRoot
22
+ * @property {Array<CjsStlSharedMesh>} meshes Meshes flattened into one STL solid.
23
+ * @property {string} [grannyFileSource] Optional source label used by inspection.
23
24
  */
24
25
 
25
- /**
26
- * Reusable STL read, write, and inspection options.
27
- *
28
- * @typedef {object} CjsStlFormatOptions
29
- * @property {"shared"|"stlJson"|"json"|"gr2"|"cmf"} [emit="stlJson"] Read output contract.
30
- * @property {string} [source="memory"] Source label stored in read/inspection output.
31
- * @property {boolean} [binary=true] Whether writes return binary bytes instead of ASCII text.
32
- * @property {string} [solidName="carbonenginejs"] Sanitized ASCII solid name and binary header label.
33
- * @property {number} [scale=1] Positive finite multiplier applied to exported positions.
34
- * @property {boolean} [recalculateNormals=true] Derive facet normals from winding instead of vertex normals.
35
- * @property {boolean} [weldVertices=false] Weld equal positions while reading STL.
36
- * @property {number} [weldTolerance=1e-5] Non-negative read/inspection position tolerance.
37
- * @property {boolean} [skipDegenerate=true] Omit degenerate shared triangles during writes.
38
- * @property {boolean} [requireWatertight=false] Reject writes with printability topology issues.
39
- * @property {Record<string, Function>} [classes] Caller constructors used for read hydration.
26
+ /**
27
+ * Reusable STL read, write, and inspection options.
28
+ *
29
+ * @typedef {object} CjsStlFormatOptions
30
+ * @property {"shared"|"stlJson"|"json"|"gr2"|"cmf"} [emit="stlJson"] Read output contract.
31
+ * @property {string} [source="memory"] Source label stored in read/inspection output.
32
+ * @property {boolean} [binary=true] Whether writes return binary bytes instead of ASCII text.
33
+ * @property {string} [solidName="carbonenginejs"] Sanitized ASCII solid name and binary header label.
34
+ * @property {number} [scale=1] Positive finite multiplier applied to exported positions.
35
+ * @property {boolean} [recalculateNormals=true] Derive facet normals from winding instead of vertex normals.
36
+ * @property {boolean} [weldVertices=false] Weld equal positions while reading STL.
37
+ * @property {number} [weldTolerance=1e-5] Non-negative read/inspection position tolerance.
38
+ * @property {boolean} [skipDegenerate=true] Omit degenerate shared triangles during writes.
39
+ * @property {boolean} [requireWatertight=false] Reject writes with printability topology issues.
40
+ * @property {Record<string, Function>} [classes] Caller constructors used for read hydration.
40
41
  */
41
42
 
42
- /**
43
- * CarbonEngineJS-facing STL format surface.
44
- *
45
- * The Cjs prefix marks this as a JavaScript format/construction boundary.
46
- * STL is a triangle-only import/export format; the JSON contract is the shared
47
- * CarbonEngineJS mesh schema.
43
+ /**
44
+ * CarbonEngineJS-facing STL format surface.
45
+ *
46
+ * The Cjs prefix marks this as a JavaScript format/construction boundary.
47
+ * STL is a triangle-only import/export format; the JSON contract is the shared
48
+ * CarbonEngineJS mesh schema.
48
49
  */
49
50
  class CjsStlFormat extends CjsFormat {
50
51
  #emit = DEFAULT_VALUES.emit;
@@ -59,26 +60,26 @@ class CjsStlFormat extends CjsFormat {
59
60
  #requireWatertight = DEFAULT_VALUES.requireWatertight;
60
61
  #classes = DEFAULT_VALUES.classes;
61
62
 
62
- /**
63
- * Create a reusable format profile.
64
- *
65
- * The instance stores only normalized options; each `Read`, `Write`, or
66
- * `Inspect` call may provide non-mutating overrides.
67
- *
68
- * @param {CjsStlFormatOptions} [options={}] Default format values.
69
- * @throws {TypeError} If an option, output mode, numeric value, or class map is invalid.
63
+ /**
64
+ * Create a reusable format profile.
65
+ *
66
+ * The instance stores only normalized options; each `Read`, `Write`, or
67
+ * `Inspect` call may provide non-mutating overrides.
68
+ *
69
+ * @param {CjsStlFormatOptions} [options={}] Default format values.
70
+ * @throws {TypeError} If an option, output mode, numeric value, or class map is invalid.
70
71
  */
71
72
  constructor(options = {}) {
72
73
  super();
73
74
  this.SetValues(options);
74
75
  }
75
76
 
76
- /**
77
- * Set format values for this reusable profile.
78
- *
79
- * @param {CjsStlFormatOptions} [options={}] Values to merge into the profile.
80
- * @returns {CjsStlFormat} This format profile.
81
- * @throws {TypeError} If an option, output mode, numeric value, or class map is invalid.
77
+ /**
78
+ * Set format values for this reusable profile.
79
+ *
80
+ * @param {CjsStlFormatOptions} [options={}] Values to merge into the profile.
81
+ * @returns {CjsStlFormat} This format profile.
82
+ * @throws {TypeError} If an option, output mode, numeric value, or class map is invalid.
82
83
  */
83
84
  SetValues(options = {}) {
84
85
  const values = normalizeValues(this.GetValues(), options, FORMAT_NAME);
@@ -96,12 +97,12 @@ class CjsStlFormat extends CjsFormat {
96
97
  return this;
97
98
  }
98
99
 
99
- /**
100
- * Get this profile's current values, optionally with per-call overrides.
101
- *
102
- * @param {CjsStlFormatOptions} [options={}] Optional values to merge into a copy.
103
- * @returns {CjsStlFormatOptions} A validated copy of the effective values.
104
- * @throws {TypeError} If an override is invalid.
100
+ /**
101
+ * Get this profile's current values, optionally with per-call overrides.
102
+ *
103
+ * @param {CjsStlFormatOptions} [options={}] Optional values to merge into a copy.
104
+ * @returns {CjsStlFormatOptions} A validated copy of the effective values.
105
+ * @throws {TypeError} If an override is invalid.
105
106
  */
106
107
  GetValues(options = {}) {
107
108
  return normalizeValues({
@@ -119,11 +120,11 @@ class CjsStlFormat extends CjsFormat {
119
120
  }, options, FORMAT_NAME);
120
121
  }
121
122
 
122
- /**
123
- * Set multiple node-class constructors for this profile.
124
- *
125
- * @param {object} [classes] Map of node class keys to constructors.
126
- * @returns {CjsStlFormat} This format profile.
123
+ /**
124
+ * Set multiple node-class constructors for this profile.
125
+ *
126
+ * @param {object} [classes] Map of node class keys to constructors.
127
+ * @returns {CjsStlFormat} This format profile.
127
128
  */
128
129
  SetClasses(classes = {}) {
129
130
  return this.SetValues({
@@ -131,12 +132,12 @@ class CjsStlFormat extends CjsFormat {
131
132
  });
132
133
  }
133
134
 
134
- /**
135
- * Set one node-class constructor for this profile.
136
- *
137
- * @param {string} type Node class key.
138
- * @param {Function|null|undefined} Class Constructor to use, or nullish to delete.
139
- * @returns {CjsStlFormat} This format profile.
135
+ /**
136
+ * Set one node-class constructor for this profile.
137
+ *
138
+ * @param {string} type Node class key.
139
+ * @param {Function|null|undefined} Class Constructor to use, or nullish to delete.
140
+ * @returns {CjsStlFormat} This format profile.
140
141
  */
141
142
  SetClass(type, Class) {
142
143
  if (Class === null || Class === undefined) {
@@ -156,145 +157,145 @@ class CjsStlFormat extends CjsFormat {
156
157
  });
157
158
  }
158
159
 
159
- /**
160
- * Get a configured node-class constructor.
161
- *
162
- * @param {string} type Node class key.
163
- * @returns {Function|undefined} The registered constructor, if any.
160
+ /**
161
+ * Get a configured node-class constructor.
162
+ *
163
+ * @param {string} type Node class key.
164
+ * @returns {Function|undefined} The registered constructor, if any.
164
165
  */
165
166
  GetClass(type) {
166
167
  validateClassKey(type, FORMAT_NAME);
167
168
  return this.#classes[type];
168
169
  }
169
170
 
170
- /**
171
- * Whether this format profile has a constructor registered for a node class key.
172
- *
173
- * @param {string} type Node class key.
174
- * @returns {boolean} True when a constructor is registered.
171
+ /**
172
+ * Whether this format profile has a constructor registered for a node class key.
173
+ *
174
+ * @param {string} type Node class key.
175
+ * @returns {boolean} True when a constructor is registered.
175
176
  */
176
177
  HasClass(type) {
177
178
  return !!this.GetClass(type);
178
179
  }
179
180
 
180
- /**
181
- * Read STL text/bytes with this profile's values.
182
- *
183
- * @param {string|Uint8Array|ArrayBuffer|DataView} input STL text or bytes.
184
- * @param {object} [options] Per-call value overrides.
185
- * @returns {object} The shared CarbonEngineJS JSON mesh schema.
181
+ /**
182
+ * Read STL text/bytes with this profile's values.
183
+ *
184
+ * @param {string|Uint8Array|ArrayBuffer|DataView} input STL text or bytes.
185
+ * @param {object} [options] Per-call value overrides.
186
+ * @returns {object} The shared CarbonEngineJS JSON mesh schema.
186
187
  */
187
188
  Read(input, options = {}) {
188
189
  return readWithValues(this, input, this.GetValues(options));
189
190
  }
190
191
 
191
- /**
192
- * Write shared JSON geometry as STL with this profile's values.
193
- *
194
- * Multiple meshes and index groups are flattened in encounter order because
195
- * STL has no portable material or scene hierarchy. Degenerate triangles are
196
- * skipped by default. Binary output validates that every coordinate is
197
- * representable as float32 rather than silently writing infinities.
198
- *
199
- * @param {CjsStlSharedRoot|CjsStlSharedMesh} input Shared JSON root or mesh.
200
- * @param {CjsStlFormatOptions} [options={}] Per-call writer overrides.
201
- * @returns {string|Uint8Array} ASCII STL text or binary STL bytes.
202
- * @throws {TypeError|RangeError|Error} If geometry, indices, coordinates, topology, or options are invalid.
192
+ /**
193
+ * Write shared JSON geometry as STL with this profile's values.
194
+ *
195
+ * Multiple meshes and index groups are flattened in encounter order because
196
+ * STL has no portable material or scene hierarchy. Degenerate triangles are
197
+ * skipped by default. Binary output validates that every coordinate is
198
+ * representable as float32 rather than silently writing infinities.
199
+ *
200
+ * @param {CjsStlSharedRoot|CjsStlSharedMesh} input Shared JSON root or mesh.
201
+ * @param {CjsStlFormatOptions} [options={}] Per-call writer overrides.
202
+ * @returns {string|Uint8Array} ASCII STL text or binary STL bytes.
203
+ * @throws {TypeError|RangeError|Error} If geometry, indices, coordinates, topology, or options are invalid.
203
204
  */
204
205
  Write(input, options = {}) {
205
206
  return writeWithValues(input, this.GetValues(options));
206
207
  }
207
208
 
208
- /**
209
- * Inspect STL text/bytes or shared JSON geometry for printability blockers.
210
- *
211
- * @param {any} input STL text/bytes or shared JSON root/mesh.
212
- * @param {object} [options] Per-call value overrides.
213
- * @returns {object} Plain printability report.
209
+ /**
210
+ * Inspect STL text/bytes or shared JSON geometry for printability blockers.
211
+ *
212
+ * @param {any} input STL text/bytes or shared JSON root/mesh.
213
+ * @param {object} [options] Per-call value overrides.
214
+ * @returns {object} Plain printability report.
214
215
  */
215
216
  Inspect(input, options = {}) {
216
217
  return inspectWithValues(input, this.GetValues(options));
217
218
  }
218
219
 
219
- /**
220
- * Convert format output to JSON-compatible data.
221
- *
222
- * @param {any} value Format output to convert.
223
- * @returns {any} Plain JSON-compatible data.
220
+ /**
221
+ * Convert format output to JSON-compatible data.
222
+ *
223
+ * @param {any} value Format output to convert.
224
+ * @returns {any} Plain JSON-compatible data.
224
225
  */
225
226
  ToJSON(value) {
226
- return toJsonValue(value);
227
+ return toJsonWithArrayValues(value);
227
228
  }
228
229
 
229
- /**
230
- * Static one-shot read. Static methods use camelCase by convention.
231
- *
232
- * @param {string|Uint8Array|ArrayBuffer|DataView} input STL text or bytes.
233
- * @param {object} [options] Format values.
234
- * @returns {object} The shared CarbonEngineJS JSON mesh schema.
230
+ /**
231
+ * Static one-shot read. Static methods use camelCase by convention.
232
+ *
233
+ * @param {string|Uint8Array|ArrayBuffer|DataView} input STL text or bytes.
234
+ * @param {object} [options] Format values.
235
+ * @returns {object} The shared CarbonEngineJS JSON mesh schema.
235
236
  */
236
237
  static read(input, options = {}) {
237
238
  return readWithValues(CjsStlFormat, input, normalizeValues(DEFAULT_VALUES, options, FORMAT_NAME));
238
239
  }
239
240
 
240
- /**
241
- * Static one-shot write.
242
- *
243
- * The call is one-shot and does not mutate `input`. Multiple meshes and
244
- * index groups are flattened into a single STL solid in encounter order.
245
- *
246
- * @param {CjsStlSharedRoot|CjsStlSharedMesh} input Shared JSON root or mesh.
247
- * @param {CjsStlFormatOptions} [options={}] Writer values.
248
- * @returns {string|Uint8Array} ASCII STL text or binary STL bytes.
249
- * @throws {TypeError|RangeError|Error} If geometry, indices, coordinates, topology, or options are invalid.
241
+ /**
242
+ * Static one-shot write.
243
+ *
244
+ * The call is one-shot and does not mutate `input`. Multiple meshes and
245
+ * index groups are flattened into a single STL solid in encounter order.
246
+ *
247
+ * @param {CjsStlSharedRoot|CjsStlSharedMesh} input Shared JSON root or mesh.
248
+ * @param {CjsStlFormatOptions} [options={}] Writer values.
249
+ * @returns {string|Uint8Array} ASCII STL text or binary STL bytes.
250
+ * @throws {TypeError|RangeError|Error} If geometry, indices, coordinates, topology, or options are invalid.
250
251
  */
251
252
  static write(input, options = {}) {
252
253
  return writeWithValues(input, normalizeValues(DEFAULT_VALUES, options, FORMAT_NAME));
253
254
  }
254
255
 
255
- /**
256
- * Static one-shot inspection.
257
- *
258
- * @param {any} input STL text/bytes or shared JSON root/mesh.
259
- * @param {object} [options] Format values.
260
- * @returns {object} Plain printability report.
256
+ /**
257
+ * Static one-shot inspection.
258
+ *
259
+ * @param {any} input STL text/bytes or shared JSON root/mesh.
260
+ * @param {object} [options] Format values.
261
+ * @returns {object} Plain printability report.
261
262
  */
262
263
  static inspect(input, options = {}) {
263
264
  return inspectWithValues(input, normalizeValues(DEFAULT_VALUES, options, FORMAT_NAME));
264
265
  }
265
266
 
266
- /**
267
- * Static JSON-compatible conversion.
268
- *
269
- * @param {any} value Format output to convert.
270
- * @returns {any} Plain JSON-compatible data.
267
+ /**
268
+ * Static JSON-compatible conversion.
269
+ *
270
+ * @param {any} value Format output to convert.
271
+ * @returns {any} Plain JSON-compatible data.
271
272
  */
272
273
  static toJSON(value) {
273
- return toJsonValue(value);
274
+ return toJsonWithArrayValues(value);
274
275
  }
275
276
 
276
- /**
277
- * Cheap sniff for STL-like input.
278
- *
279
- * @param {string|Uint8Array|ArrayBuffer|DataView} input Candidate STL input.
280
- * @returns {boolean} True when input looks like STL.
277
+ /**
278
+ * Cheap sniff for STL-like input.
279
+ *
280
+ * @param {string|Uint8Array|ArrayBuffer|DataView} input Candidate STL input.
281
+ * @returns {boolean} True when input looks like STL.
281
282
  */
282
283
  static isStl(input) {
283
284
  return isStl(input);
284
285
  }
285
286
 
286
- /**
287
- * Check whether byte-like input has an exact binary STL layout.
288
- *
289
- * @param {string|Uint8Array|ArrayBuffer|DataView} input Candidate STL input.
290
- * @returns {boolean} True when input is binary STL bytes.
287
+ /**
288
+ * Check whether byte-like input has an exact binary STL layout.
289
+ *
290
+ * @param {string|Uint8Array|ArrayBuffer|DataView} input Candidate STL input.
291
+ * @returns {boolean} True when input is binary STL bytes.
291
292
  */
292
293
  static isBinaryStl(input) {
293
294
  return isBinaryStl(input);
294
295
  }
295
296
 
296
- /**
297
- * Emit targets for this format (canonical frozen enum).
297
+ /**
298
+ * Emit targets for this format (canonical frozen enum).
298
299
  */
299
300
  static Output = Object.freeze({
300
301
  JSON: OUTPUT_JSON,
@@ -306,6 +307,16 @@ class CjsStlFormat extends CjsFormat {
306
307
  static CLASS_KEYS = CLASS_KEYS;
307
308
  static id = "stl";
308
309
  static mediaTypes = Object.freeze(["geometry"]);
310
+ // STL takes the shared geometry root directly rather than going through
311
+ // CMF, because it carries triangles and nothing else worth preserving.
312
+ // Lossless for what STL can represent; everything else was never in scope.
313
+ static inputs = CjsFormat.defineInputs({
314
+ shared: {
315
+ default: true,
316
+ payloadType: "geometry",
317
+ options: ["binary", "solidName", "scale", "recalculateNormals", "weldVertices"]
318
+ }
319
+ });
309
320
  static outputs = CjsFormat.defineOutputs({
310
321
  shared: {
311
322
  decoded: true