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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (929) hide show
  1. package/README.md +58 -125
  2. package/dist/audio/index.js +8 -1
  3. package/dist/audio/index.js.map +1 -1
  4. package/dist/audio/trinity/audio/AudActionLog/AudActionLogCB.js +84 -0
  5. package/dist/audio/trinity/audio/AudActionLog/AudActionLogCB.js.map +1 -0
  6. package/dist/audio/trinity/audio/AudActionLog/AudActionRecord.js +14 -0
  7. package/dist/audio/trinity/audio/AudActionLog/AudActionRecord.js.map +1 -0
  8. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordExecuteActionOnPlayingID.js +26 -0
  9. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordExecuteActionOnPlayingID.js.map +1 -0
  10. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordPostEvent.js +27 -0
  11. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordPostEvent.js.map +1 -0
  12. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordSetRTPC.js +27 -0
  13. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordSetRTPC.js.map +1 -0
  14. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordSetState.js +25 -0
  15. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordSetState.js.map +1 -0
  16. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordSetSwitch.js +26 -0
  17. package/dist/audio/trinity/audio/AudActionLog/AudActionRecordSetSwitch.js.map +1 -0
  18. package/dist/audio/trinity/audio/AudActionLog/IAudActionLog.js +58 -0
  19. package/dist/audio/trinity/audio/AudActionLog/IAudActionLog.js.map +1 -0
  20. package/dist/audio/trinity/audio/AudManager.js +1 -1
  21. package/dist/audio/trinity/audio/AudManager.js.map +1 -1
  22. package/dist/audio/trinity/audio/{AudObstructionOcclusion.js → AudObstructionOcclusion/AudObstructionOcclusion.js} +8 -52
  23. package/dist/audio/trinity/audio/AudObstructionOcclusion/AudObstructionOcclusion.js.map +1 -0
  24. package/dist/audio/trinity/audio/AudObstructionOcclusion/EmitterState.js +17 -0
  25. package/dist/audio/trinity/audio/AudObstructionOcclusion/EmitterState.js.map +1 -0
  26. package/dist/audio/trinity/audio/AudObstructionOcclusion/FadingValue.js +46 -0
  27. package/dist/audio/trinity/audio/AudObstructionOcclusion/FadingValue.js.map +1 -0
  28. package/dist/audio/trinity/index.js +8 -1
  29. package/dist/audio/trinity/index.js.map +1 -1
  30. package/dist/character/CjsCharacterAppearanceConstruction.js +5 -0
  31. package/dist/character/CjsCharacterAppearanceConstruction.js.map +1 -1
  32. package/dist/character/CjsCharacterAppearanceManager.js +14 -0
  33. package/dist/character/CjsCharacterAppearanceManager.js.map +1 -1
  34. package/dist/character/CjsCharacterFoundationConstruction.js +5 -0
  35. package/dist/character/CjsCharacterFoundationConstruction.js.map +1 -1
  36. package/dist/character/CjsCharacterTexturePolicy.js +5 -0
  37. package/dist/character/CjsCharacterTexturePolicy.js.map +1 -1
  38. package/dist/character/gles/CjsCharacterGlesAppearanceAL.js +17 -0
  39. package/dist/character/gles/CjsCharacterGlesAppearanceAL.js.map +1 -1
  40. package/dist/character/gles/CjsCharacterGlesAtlasRenderer.js +2 -0
  41. package/dist/character/gles/CjsCharacterGlesAtlasRenderer.js.map +1 -1
  42. package/dist/character/gles/CjsCharacterGlesFoundationTranslator.js +5 -0
  43. package/dist/character/gles/CjsCharacterGlesFoundationTranslator.js.map +1 -1
  44. package/dist/character/gles/CjsCharacterGlesLegacyConstructionTranslator.js +5 -0
  45. package/dist/character/gles/CjsCharacterGlesLegacyConstructionTranslator.js.map +1 -1
  46. package/dist/character/gles/CjsCharacterGlesMorphDeformation.js +2 -0
  47. package/dist/character/gles/CjsCharacterGlesMorphDeformation.js.map +1 -1
  48. package/dist/character/gles/CjsCharacterGlesPaletteCompatibility.js +5 -0
  49. package/dist/character/gles/CjsCharacterGlesPaletteCompatibility.js.map +1 -1
  50. package/dist/character/gles/CjsCharacterGlesTriangleCoverage.js +5 -0
  51. package/dist/character/gles/CjsCharacterGlesTriangleCoverage.js.map +1 -1
  52. package/dist/character/webgl2/CjsCharacterWebgl2EffectRouter.js +9 -0
  53. package/dist/character/webgl2/CjsCharacterWebgl2EffectRouter.js.map +1 -1
  54. package/dist/global/blue/CjsScriptCallback.js +142 -0
  55. package/dist/global/blue/CjsScriptCallback.js.map +1 -0
  56. package/dist/global/blue/index.js +2 -0
  57. package/dist/global/blue/index.js.map +1 -0
  58. package/dist/global/consts/renderContext/formats.js +51 -1
  59. package/dist/global/consts/renderContext/formats.js.map +1 -1
  60. package/dist/global/consts/renderContext/index.js +2 -2
  61. package/dist/global/consts/renderContext/renderStates.js +16 -1
  62. package/dist/global/consts/renderContext/renderStates.js.map +1 -1
  63. package/dist/global/contracts/index.js +0 -1
  64. package/dist/global/contracts/index.js.map +1 -1
  65. package/dist/global/index.js +4 -3
  66. package/dist/global/index.js.map +1 -1
  67. package/dist/global/math/index.js +2 -0
  68. package/dist/global/math/index.js.map +1 -1
  69. package/dist/global/math/mesh.js +70 -16
  70. package/dist/global/math/mesh.js.map +1 -1
  71. package/dist/global/math/noise.js +47 -68
  72. package/dist/global/math/noise.js.map +1 -1
  73. package/dist/global/math/pool.js +18 -3
  74. package/dist/global/math/pool.js.map +1 -1
  75. package/dist/global/math/random.js +52 -0
  76. package/dist/global/math/random.js.map +1 -0
  77. package/dist/global/math/tri3.js +18 -4
  78. package/dist/global/math/tri3.js.map +1 -1
  79. package/dist/global/utils/bytes.js +22 -4
  80. package/dist/global/utils/bytes.js.map +1 -1
  81. package/dist/global/utils/checksum.js +80 -0
  82. package/dist/global/utils/checksum.js.map +1 -0
  83. package/dist/global/utils/errors/CjsCancellationError.js +36 -0
  84. package/dist/global/utils/errors/CjsCancellationError.js.map +1 -0
  85. package/dist/global/utils/errors/CjsError.js +21 -52
  86. package/dist/global/utils/errors/CjsError.js.map +1 -1
  87. package/dist/global/utils/errors/abort.js +1 -1
  88. package/dist/global/utils/errors/abort.js.map +1 -1
  89. package/dist/global/utils/errors/index.js +2 -1
  90. package/dist/global/utils/errors/index.js.map +1 -1
  91. package/dist/global/utils/index.js +4 -2
  92. package/dist/global/utils/index.js.map +1 -1
  93. package/dist/index.js +95 -35
  94. package/dist/index.js.map +1 -1
  95. package/dist/input/Tr2MainWindow.js +7 -9
  96. package/dist/input/Tr2MainWindow.js.map +1 -1
  97. package/dist/resource/CjsResMan.js +33 -39
  98. package/dist/resource/CjsResMan.js.map +1 -1
  99. package/dist/resource/CjsResource.js +19 -5
  100. package/dist/resource/CjsResource.js.map +1 -1
  101. package/dist/resource/audio/AudioGeometryResData.js +22 -27
  102. package/dist/resource/audio/AudioGeometryResData.js.map +1 -1
  103. package/dist/resource/audio/CjsAudioRes.js +4 -5
  104. package/dist/resource/audio/CjsAudioRes.js.map +1 -1
  105. package/dist/resource/format/CjsBitReader.js +263 -0
  106. package/dist/resource/format/CjsBitReader.js.map +1 -0
  107. package/dist/resource/format/CjsByteReader.js +130 -125
  108. package/dist/resource/format/CjsByteReader.js.map +1 -1
  109. package/dist/resource/format/CjsFormat.js +11 -4
  110. package/dist/resource/format/CjsFormat.js.map +1 -1
  111. package/dist/resource/format/CjsFormatError.js +37 -1
  112. package/dist/resource/format/CjsFormatError.js.map +1 -1
  113. package/dist/resource/format/CjsResourceProbe.js +41 -37
  114. package/dist/resource/format/CjsResourceProbe.js.map +1 -1
  115. package/dist/resource/format/carbonRecordGuard.js +33 -0
  116. package/dist/resource/format/carbonRecordGuard.js.map +1 -0
  117. package/dist/resource/format/imageSignatures.js +202 -0
  118. package/dist/resource/format/imageSignatures.js.map +1 -0
  119. package/dist/resource/format/index.js +2 -1
  120. package/dist/resource/format/index.js.map +1 -1
  121. package/dist/resource/format/jsonPolicies.js +180 -0
  122. package/dist/resource/format/jsonPolicies.js.map +1 -0
  123. package/dist/resource/formats/black/core/helpers.js +18 -29
  124. package/dist/resource/formats/black/core/helpers.js.map +1 -1
  125. package/dist/resource/formats/bnk/CjsBnkFormat.js +4 -3
  126. package/dist/resource/formats/bnk/CjsBnkFormat.js.map +1 -1
  127. package/dist/resource/formats/bnk/core/WwiseCursor.js +218 -0
  128. package/dist/resource/formats/bnk/core/WwiseCursor.js.map +1 -0
  129. package/dist/resource/formats/bnk/core/busNodes.js +2 -1
  130. package/dist/resource/formats/bnk/core/busNodes.js.map +1 -1
  131. package/dist/resource/formats/bnk/core/effectNodes.js +2 -1
  132. package/dist/resource/formats/bnk/core/effectNodes.js.map +1 -1
  133. package/dist/resource/formats/bnk/core/eventAction.js +15 -93
  134. package/dist/resource/formats/bnk/core/eventAction.js.map +1 -1
  135. package/dist/resource/formats/bnk/core/globalSettings.js +19 -94
  136. package/dist/resource/formats/bnk/core/globalSettings.js.map +1 -1
  137. package/dist/resource/formats/bnk/core/helpers.js +2 -48
  138. package/dist/resource/formats/bnk/core/helpers.js.map +1 -1
  139. package/dist/resource/formats/bnk/core/musicNodes.js +42 -134
  140. package/dist/resource/formats/bnk/core/musicNodes.js.map +1 -1
  141. package/dist/resource/formats/bnk/core/nodeBase.js +20 -111
  142. package/dist/resource/formats/bnk/core/nodeBase.js.map +1 -1
  143. package/dist/resource/formats/bnk/core/sfxNodes.js +2 -1
  144. package/dist/resource/formats/bnk/core/sfxNodes.js.map +1 -1
  145. package/dist/resource/formats/cmf/CjsCmfFormat.js +242 -228
  146. package/dist/resource/formats/cmf/CjsCmfFormat.js.map +1 -1
  147. package/dist/resource/formats/cmf/core/binary.js +54 -60
  148. package/dist/resource/formats/cmf/core/binary.js.map +1 -1
  149. package/dist/resource/formats/dds/CjsDdsFormat.js +5 -3
  150. package/dist/resource/formats/dds/CjsDdsFormat.js.map +1 -1
  151. package/dist/resource/formats/dds/core/bc6h.js +16 -18
  152. package/dist/resource/formats/dds/core/bc6h.js.map +1 -1
  153. package/dist/resource/formats/dds/core/bc7.js +28 -24
  154. package/dist/resource/formats/dds/core/bc7.js.map +1 -1
  155. package/dist/resource/formats/dds/core/helpers.js +7 -133
  156. package/dist/resource/formats/dds/core/helpers.js.map +1 -1
  157. package/dist/resource/formats/dxbc/CjsDxbcFormat.js +3 -2
  158. package/dist/resource/formats/dxbc/CjsDxbcFormat.js.map +1 -1
  159. package/dist/resource/formats/dxbc/core/helpers.js +4 -32
  160. package/dist/resource/formats/dxbc/core/helpers.js.map +1 -1
  161. package/dist/resource/formats/fbx/CjsFbxFormat.js +11 -0
  162. package/dist/resource/formats/fbx/CjsFbxFormat.js.map +1 -1
  163. package/dist/resource/formats/fbx/core/helpers.js +18 -12
  164. package/dist/resource/formats/fbx/core/helpers.js.map +1 -1
  165. package/dist/resource/formats/flac/CjsFlacFormat.js +4 -9
  166. package/dist/resource/formats/flac/CjsFlacFormat.js.map +1 -1
  167. package/dist/resource/formats/flac/core/helpers.js +1 -62
  168. package/dist/resource/formats/flac/core/helpers.js.map +1 -1
  169. package/dist/resource/formats/gif/CjsGifFormat.js +4 -9
  170. package/dist/resource/formats/gif/CjsGifFormat.js.map +1 -1
  171. package/dist/resource/formats/gif/core/helpers.js +1 -63
  172. package/dist/resource/formats/gif/core/helpers.js.map +1 -1
  173. package/dist/resource/formats/gltf/CjsGltfFormat.js +4 -3
  174. package/dist/resource/formats/gltf/CjsGltfFormat.js.map +1 -1
  175. package/dist/resource/formats/gltf/core/helpers.js +3 -19
  176. package/dist/resource/formats/gltf/core/helpers.js.map +1 -1
  177. package/dist/resource/formats/gr2/CjsGr2Format.js +105 -92
  178. package/dist/resource/formats/gr2/CjsGr2Format.js.map +1 -1
  179. package/dist/resource/formats/gr2/core/container.js +1 -10
  180. package/dist/resource/formats/gr2/core/container.js.map +1 -1
  181. package/dist/resource/formats/gr2/core/helpers.js +24 -35
  182. package/dist/resource/formats/gr2/core/helpers.js.map +1 -1
  183. package/dist/resource/formats/gr2/core/shared.js +193 -189
  184. package/dist/resource/formats/gr2/core/shared.js.map +1 -1
  185. package/dist/resource/formats/hlsl/CjsHlslFormat.js +4 -3
  186. package/dist/resource/formats/hlsl/CjsHlslFormat.js.map +1 -1
  187. package/dist/resource/formats/hlsl/core/helpers.js +1 -30
  188. package/dist/resource/formats/hlsl/core/helpers.js.map +1 -1
  189. package/dist/resource/formats/jpeg/CjsJpegFormat.js +5 -3
  190. package/dist/resource/formats/jpeg/CjsJpegFormat.js.map +1 -1
  191. package/dist/resource/formats/jpeg/core/helpers.js +7 -134
  192. package/dist/resource/formats/jpeg/core/helpers.js.map +1 -1
  193. package/dist/resource/formats/mp3/CjsMp3Format.js +4 -9
  194. package/dist/resource/formats/mp3/CjsMp3Format.js.map +1 -1
  195. package/dist/resource/formats/mp3/core/helpers.js +1 -64
  196. package/dist/resource/formats/mp3/core/helpers.js.map +1 -1
  197. package/dist/resource/formats/mp4/CjsMp4Format.js +4 -9
  198. package/dist/resource/formats/mp4/CjsMp4Format.js.map +1 -1
  199. package/dist/resource/formats/mp4/core/helpers.js +1 -73
  200. package/dist/resource/formats/mp4/core/helpers.js.map +1 -1
  201. package/dist/resource/formats/obj/CjsObjFormat.js +4 -3
  202. package/dist/resource/formats/obj/CjsObjFormat.js.map +1 -1
  203. package/dist/resource/formats/obj/core/helpers.js +93 -115
  204. package/dist/resource/formats/obj/core/helpers.js.map +1 -1
  205. package/dist/resource/formats/ogg/CjsOggFormat.js +4 -3
  206. package/dist/resource/formats/ogg/CjsOggFormat.js.map +1 -1
  207. package/dist/resource/formats/ogg/core/helpers.js +1 -15
  208. package/dist/resource/formats/ogg/core/helpers.js.map +1 -1
  209. package/dist/resource/formats/ogg/core/vorbis.js +138 -144
  210. package/dist/resource/formats/ogg/core/vorbis.js.map +1 -1
  211. package/dist/resource/formats/pickle/CjsPickleFormat.js +83 -114
  212. package/dist/resource/formats/pickle/CjsPickleFormat.js.map +1 -1
  213. package/dist/resource/formats/png/CjsPngFormat.js +5 -3
  214. package/dist/resource/formats/png/CjsPngFormat.js.map +1 -1
  215. package/dist/resource/formats/png/core/helpers.js +13 -152
  216. package/dist/resource/formats/png/core/helpers.js.map +1 -1
  217. package/dist/resource/formats/png/core/writer.js +3 -27
  218. package/dist/resource/formats/png/core/writer.js.map +1 -1
  219. package/dist/resource/formats/red/core/helpers.js +19 -29
  220. package/dist/resource/formats/red/core/helpers.js.map +1 -1
  221. package/dist/resource/formats/stl/CjsStlFormat.js +158 -147
  222. package/dist/resource/formats/stl/CjsStlFormat.js.map +1 -1
  223. package/dist/resource/formats/stl/core/helpers.js +44 -66
  224. package/dist/resource/formats/stl/core/helpers.js.map +1 -1
  225. package/dist/resource/formats/tga/CjsTgaFormat.js +5 -3
  226. package/dist/resource/formats/tga/CjsTgaFormat.js.map +1 -1
  227. package/dist/resource/formats/tga/core/helpers.js +7 -153
  228. package/dist/resource/formats/tga/core/helpers.js.map +1 -1
  229. package/dist/resource/formats/vta/CjsVtaFormat.js +4 -3
  230. package/dist/resource/formats/vta/CjsVtaFormat.js.map +1 -1
  231. package/dist/resource/formats/vta/core/helpers.js +1 -17
  232. package/dist/resource/formats/vta/core/helpers.js.map +1 -1
  233. package/dist/resource/formats/wav/CjsWavFormat.js +4 -3
  234. package/dist/resource/formats/wav/CjsWavFormat.js.map +1 -1
  235. package/dist/resource/formats/wav/core/helpers.js +1 -15
  236. package/dist/resource/formats/wav/core/helpers.js.map +1 -1
  237. package/dist/resource/formats/webgl/CjsWebglFormat.js +4 -3
  238. package/dist/resource/formats/webgl/CjsWebglFormat.js.map +1 -1
  239. package/dist/resource/formats/webgl/core/glsl/DxbcGlslEmitter.js +52 -4
  240. package/dist/resource/formats/webgl/core/glsl/DxbcGlslEmitter.js.map +1 -1
  241. package/dist/resource/formats/webgl/core/helpers.js +39 -68
  242. package/dist/resource/formats/webgl/core/helpers.js.map +1 -1
  243. package/dist/resource/formats/webgpu/CjsWebgpuFormat.js +4 -3
  244. package/dist/resource/formats/webgpu/CjsWebgpuFormat.js.map +1 -1
  245. package/dist/resource/formats/webgpu/core/helpers.js +4 -30
  246. package/dist/resource/formats/webgpu/core/helpers.js.map +1 -1
  247. package/dist/resource/formats/webm/CjsWebmFormat.js +4 -9
  248. package/dist/resource/formats/webm/CjsWebmFormat.js.map +1 -1
  249. package/dist/resource/formats/webm/core/helpers.js +1 -73
  250. package/dist/resource/formats/webm/core/helpers.js.map +1 -1
  251. package/dist/resource/formats/webp/CjsWebpFormat.js +4 -9
  252. package/dist/resource/formats/webp/CjsWebpFormat.js.map +1 -1
  253. package/dist/resource/formats/webp/core/helpers.js +1 -62
  254. package/dist/resource/formats/webp/core/helpers.js.map +1 -1
  255. package/dist/resource/formats/wem/CjsWemFormat.js +4 -3
  256. package/dist/resource/formats/wem/CjsWemFormat.js.map +1 -1
  257. package/dist/resource/formats/wem/core/bitStream.js +83 -106
  258. package/dist/resource/formats/wem/core/bitStream.js.map +1 -1
  259. package/dist/resource/formats/wem/core/codebookLibrary.js +52 -52
  260. package/dist/resource/formats/wem/core/codebookLibrary.js.map +1 -1
  261. package/dist/resource/formats/wem/core/helpers.js +1 -15
  262. package/dist/resource/formats/wem/core/helpers.js.map +1 -1
  263. package/dist/resource/formats/wem/core/wemToOgg.js +67 -67
  264. package/dist/resource/formats/wem/core/wemToOgg.js.map +1 -1
  265. package/dist/resource/geometry/MeshDecalData.js +23 -25
  266. package/dist/resource/geometry/MeshDecalData.js.map +1 -1
  267. package/dist/resource/geometry/MeshDecalLodData.js +14 -23
  268. package/dist/resource/geometry/MeshDecalLodData.js.map +1 -1
  269. package/dist/resource/geometry/TriGeometryRes.js +299 -284
  270. package/dist/resource/geometry/TriGeometryRes.js.map +1 -1
  271. package/dist/resource/geometry/TriGeometryResAreaData.js +30 -31
  272. package/dist/resource/geometry/TriGeometryResAreaData.js.map +1 -1
  273. package/dist/resource/geometry/TriGeometryResJointData.js +16 -24
  274. package/dist/resource/geometry/TriGeometryResJointData.js.map +1 -1
  275. package/dist/resource/geometry/TriGeometryResLodData.js +50 -41
  276. package/dist/resource/geometry/TriGeometryResLodData.js.map +1 -1
  277. package/dist/resource/geometry/TriGeometryResMeshData.js +32 -32
  278. package/dist/resource/geometry/TriGeometryResMeshData.js.map +1 -1
  279. package/dist/resource/geometry/TriGeometryResSkeletonData.js +14 -23
  280. package/dist/resource/geometry/TriGeometryResSkeletonData.js.map +1 -1
  281. package/dist/resource/geometry/TriJointBinding.js +16 -24
  282. package/dist/resource/geometry/TriJointBinding.js.map +1 -1
  283. package/dist/resource/geometry/TriMorphTargetGeometryConstants.js +22 -27
  284. package/dist/resource/geometry/TriMorphTargetGeometryConstants.js.map +1 -1
  285. package/dist/resource/geometry/TriRtGeometryConstants.js +50 -41
  286. package/dist/resource/geometry/TriRtGeometryConstants.js.map +1 -1
  287. package/dist/resource/geometry/granny/GStateBindingCallbackData.js +12 -22
  288. package/dist/resource/geometry/granny/GStateBindingCallbackData.js.map +1 -1
  289. package/dist/resource/geometry/granny/Tr2GrannyIntersectionResult.js +30 -31
  290. package/dist/resource/geometry/granny/Tr2GrannyIntersectionResult.js.map +1 -1
  291. package/dist/resource/index.js +1 -1
  292. package/dist/resource/shader/reflection/Tr2EffectConstant.js +16 -17
  293. package/dist/resource/shader/reflection/Tr2EffectConstant.js.map +1 -1
  294. package/dist/resource/shader/reflection/Tr2EffectDescription.js +26 -28
  295. package/dist/resource/shader/reflection/Tr2EffectDescription.js.map +1 -1
  296. package/dist/resource/shader/reflection/Tr2EffectLibrary.js +24 -25
  297. package/dist/resource/shader/reflection/Tr2EffectLibrary.js.map +1 -1
  298. package/dist/resource/shader/reflection/Tr2EffectParameterAnnotation.js +21 -22
  299. package/dist/resource/shader/reflection/Tr2EffectParameterAnnotation.js.map +1 -1
  300. package/dist/resource/shader/reflection/Tr2EffectResource.js +25 -26
  301. package/dist/resource/shader/reflection/Tr2EffectResource.js.map +1 -1
  302. package/dist/resource/shader/reflection/Tr2EffectStageInput.js +69 -72
  303. package/dist/resource/shader/reflection/Tr2EffectStageInput.js.map +1 -1
  304. package/dist/resource/shader/reflection/Tr2EffectTechnique.js +17 -18
  305. package/dist/resource/shader/reflection/Tr2EffectTechnique.js.map +1 -1
  306. package/dist/resource/shader/reflection/Tr2Pass.js +42 -43
  307. package/dist/resource/shader/reflection/Tr2Pass.js.map +1 -1
  308. package/dist/resource/shader/reflection/Tr2RenderStateSetup.js +26 -5
  309. package/dist/resource/shader/reflection/Tr2RenderStateSetup.js.map +1 -1
  310. package/dist/resource/shader/reflection/carbonRecordFields.js +87 -90
  311. package/dist/resource/shader/reflection/carbonRecordFields.js.map +1 -1
  312. package/dist/resource/shader/sampler/Tr2SamplerSetup.js +32 -34
  313. package/dist/resource/shader/sampler/Tr2SamplerSetup.js.map +1 -1
  314. package/dist/resource/texture/CjsTextureArrayRes.js +1 -6
  315. package/dist/resource/texture/CjsTextureArrayRes.js.map +1 -1
  316. package/dist/resource/texture/Tr2TextureLodManager.js +35 -27
  317. package/dist/resource/texture/Tr2TextureLodManager.js.map +1 -1
  318. package/dist/resource/texture/Tr2TextureLodUpdateRequest.js +16 -24
  319. package/dist/resource/texture/Tr2TextureLodUpdateRequest.js.map +1 -1
  320. package/dist/resource/texture/Tr2TexturePackChannel.js +16 -24
  321. package/dist/resource/texture/Tr2TexturePackChannel.js.map +1 -1
  322. package/dist/resource/texture/Tr2TexturePipeline.js +24 -20
  323. package/dist/resource/texture/Tr2TexturePipeline.js.map +1 -1
  324. package/dist/resource/texture/Tr2TexturePipelineParams.js +14 -23
  325. package/dist/resource/texture/Tr2TexturePipelineParams.js.map +1 -1
  326. package/dist/resource/texture/Tr2TexturePipelineStepCompress.js +18 -25
  327. package/dist/resource/texture/Tr2TexturePipelineStepCompress.js.map +1 -1
  328. package/dist/resource/texture/Tr2TexturePipelineStepGenerateMips.js +11 -16
  329. package/dist/resource/texture/Tr2TexturePipelineStepGenerateMips.js.map +1 -1
  330. package/dist/resource/texture/Tr2TexturePipelineStepLimitSize.js +14 -23
  331. package/dist/resource/texture/Tr2TexturePipelineStepLimitSize.js.map +1 -1
  332. package/dist/resource/texture/Tr2TexturePipelineStepLoad.js +12 -22
  333. package/dist/resource/texture/Tr2TexturePipelineStepLoad.js.map +1 -1
  334. package/dist/resource/texture/Tr2TexturePipelineStepPack.js +38 -26
  335. package/dist/resource/texture/Tr2TexturePipelineStepPack.js.map +1 -1
  336. package/dist/resource/worker/CjsResManMainThreadLoader.js +2 -5
  337. package/dist/resource/worker/CjsResManMainThreadLoader.js.map +1 -1
  338. package/dist/resource/worker/CjsResManWorkerLoader.js +6 -7
  339. package/dist/resource/worker/CjsResManWorkerLoader.js.map +1 -1
  340. package/dist/resource/worker/protocol.js +18 -1
  341. package/dist/resource/worker/protocol.js.map +1 -1
  342. package/dist/sof/EveSOF.js +2 -222
  343. package/dist/sof/EveSOF.js.map +1 -1
  344. package/dist/sof/SofDocumentBuilder.js +205 -0
  345. package/dist/sof/SofDocumentBuilder.js.map +1 -0
  346. package/dist/sof/faction/ErrSOFFactionColorSetTypeNotFound.js +16 -0
  347. package/dist/sof/faction/ErrSOFFactionColorSetTypeNotFound.js.map +1 -0
  348. package/dist/sof/faction/ErrSOFFactionColorSetTypeUnknown.js +16 -0
  349. package/dist/sof/faction/ErrSOFFactionColorSetTypeUnknown.js.map +1 -0
  350. package/dist/sof/faction/EveSOFDataFactionColorSet.js +3 -27
  351. package/dist/sof/faction/EveSOFDataFactionColorSet.js.map +1 -1
  352. package/dist/sof/faction/index.js +3 -1
  353. package/dist/sof/faction/index.js.map +1 -1
  354. package/dist/sof/generic/ErrSOFAreaShaderNotFound.js +18 -0
  355. package/dist/sof/generic/ErrSOFAreaShaderNotFound.js.map +1 -0
  356. package/dist/sof/generic/ErrSOFDecalShaderNotFound.js +18 -0
  357. package/dist/sof/generic/ErrSOFDecalShaderNotFound.js.map +1 -0
  358. package/dist/sof/generic/ErrSOFMaterialPrefixNotFound.js +21 -0
  359. package/dist/sof/generic/ErrSOFMaterialPrefixNotFound.js.map +1 -0
  360. package/dist/sof/generic/ErrSOFPatternMaterialPrefixNotFound.js +21 -0
  361. package/dist/sof/generic/ErrSOFPatternMaterialPrefixNotFound.js.map +1 -0
  362. package/dist/sof/generic/EveSOFDataGeneric.js +5 -69
  363. package/dist/sof/generic/EveSOFDataGeneric.js.map +1 -1
  364. package/dist/sof/generic/index.js +5 -1
  365. package/dist/sof/generic/index.js.map +1 -1
  366. package/dist/sof/index.js +23 -7
  367. package/dist/sof/index.js.map +1 -1
  368. package/dist/sof/pattern/ErrSOFProjectionNotFound.js +20 -0
  369. package/dist/sof/pattern/ErrSOFProjectionNotFound.js.map +1 -0
  370. package/dist/sof/pattern/EveSOFDataPattern.js +2 -17
  371. package/dist/sof/pattern/EveSOFDataPattern.js.map +1 -1
  372. package/dist/sof/pattern/index.js +2 -1
  373. package/dist/sof/pattern/index.js.map +1 -1
  374. package/dist/sof/shared/ErrSOFAreaTypeNotFound.js +16 -0
  375. package/dist/sof/shared/ErrSOFAreaTypeNotFound.js.map +1 -0
  376. package/dist/sof/shared/ErrSOFLogoSetTypeNotFound.js +16 -0
  377. package/dist/sof/shared/ErrSOFLogoSetTypeNotFound.js.map +1 -0
  378. package/dist/sof/shared/ErrSOFLogoSetTypeUnknown.js +16 -0
  379. package/dist/sof/shared/ErrSOFLogoSetTypeUnknown.js.map +1 -0
  380. package/dist/sof/shared/EveSOFDataArea.js +2 -13
  381. package/dist/sof/shared/EveSOFDataArea.js.map +1 -1
  382. package/dist/sof/shared/EveSOFDataLogoSet.js +3 -27
  383. package/dist/sof/shared/EveSOFDataLogoSet.js.map +1 -1
  384. package/dist/sof/shared/EveSOFDataParameter.js +2 -146
  385. package/dist/sof/shared/EveSOFDataParameter.js.map +1 -1
  386. package/dist/sof/shared/EveSOFDataParameterBool.js +40 -0
  387. package/dist/sof/shared/EveSOFDataParameterBool.js.map +1 -0
  388. package/dist/sof/shared/EveSOFDataParameterColor.js +36 -0
  389. package/dist/sof/shared/EveSOFDataParameterColor.js.map +1 -0
  390. package/dist/sof/shared/EveSOFDataParameterFloat.js +37 -0
  391. package/dist/sof/shared/EveSOFDataParameterFloat.js.map +1 -0
  392. package/dist/sof/shared/EveSOFDataParameterInt.js +37 -0
  393. package/dist/sof/shared/EveSOFDataParameterInt.js.map +1 -0
  394. package/dist/sof/shared/EveSOFDataParameterVector2.js +37 -0
  395. package/dist/sof/shared/EveSOFDataParameterVector2.js.map +1 -0
  396. package/dist/sof/shared/EveSOFDataParameterVector3.js +37 -0
  397. package/dist/sof/shared/EveSOFDataParameterVector3.js.map +1 -0
  398. package/dist/sof/shared/{EveSOFDataSpotlightAttachment.js → EveSOFDataSpotLightAttachment.js} +1 -1
  399. package/dist/sof/shared/{EveSOFDataSpotlightAttachment.js.map → EveSOFDataSpotLightAttachment.js.map} +1 -1
  400. package/dist/sof/shared/index.js +13 -4
  401. package/dist/sof/shared/index.js.map +1 -1
  402. package/dist/sof/sofDocumentValues.js +33 -0
  403. package/dist/sof/sofDocumentValues.js.map +1 -0
  404. package/dist/trinity/controllers/ITr2Controller/ITr2ActionController.js +168 -0
  405. package/dist/trinity/controllers/ITr2Controller/ITr2ActionController.js.map +1 -0
  406. package/dist/trinity/controllers/{ITr2Controller.js → ITr2Controller/ITr2Controller.js} +2 -134
  407. package/dist/trinity/controllers/ITr2Controller/ITr2Controller.js.map +1 -0
  408. package/dist/trinity/controllers/Tr2Controller.js +2 -1
  409. package/dist/trinity/controllers/Tr2Controller.js.map +1 -1
  410. package/dist/trinity/controllers/Tr2ControllerReference.js +2 -1
  411. package/dist/trinity/controllers/Tr2ControllerReference.js.map +1 -1
  412. package/dist/trinity/controllers/action/ITr2ControllerAction.js +2 -1
  413. package/dist/trinity/controllers/action/ITr2ControllerAction.js.map +1 -1
  414. package/dist/trinity/controllers/action/Tr2ActionSpawnParticles.js +10 -9
  415. package/dist/trinity/controllers/action/Tr2ActionSpawnParticles.js.map +1 -1
  416. package/dist/trinity/controllers/expression/CjsControllerExpressionCompileError.js +26 -0
  417. package/dist/trinity/controllers/expression/CjsControllerExpressionCompileError.js.map +1 -0
  418. package/dist/trinity/controllers/expression/CjsControllerExpressionEvaluateError.js +24 -0
  419. package/dist/trinity/controllers/expression/CjsControllerExpressionEvaluateError.js.map +1 -0
  420. package/dist/trinity/controllers/expression/CjsControllerExpressionParser.js +387 -0
  421. package/dist/trinity/controllers/expression/CjsControllerExpressionParser.js.map +1 -0
  422. package/dist/trinity/controllers/expression/CjsControllerExpressionProgram.js +4 -1011
  423. package/dist/trinity/controllers/expression/CjsControllerExpressionProgram.js.map +1 -1
  424. package/dist/trinity/controllers/expression/expressionRuntime.js +605 -0
  425. package/dist/trinity/controllers/expression/expressionRuntime.js.map +1 -0
  426. package/dist/trinity/controllers/index.js +5 -2
  427. package/dist/trinity/controllers/index.js.map +1 -1
  428. package/dist/trinity/controllers/state/ITr2StateMachineStateFinalizer.js +2 -1
  429. package/dist/trinity/controllers/state/ITr2StateMachineStateFinalizer.js.map +1 -1
  430. package/dist/trinity/controllers/timeline/Tr2TimelineController.js +2 -1
  431. package/dist/trinity/controllers/timeline/Tr2TimelineController.js.map +1 -1
  432. package/dist/trinity/core/ITr2Updateable.js +2 -1
  433. package/dist/trinity/core/ITr2Updateable.js.map +1 -1
  434. package/dist/trinity/core/Tr2Blitter.js +6 -3
  435. package/dist/trinity/core/Tr2Blitter.js.map +1 -1
  436. package/dist/trinity/core/Tr2Denoiser.js +256 -0
  437. package/dist/trinity/core/Tr2Denoiser.js.map +1 -0
  438. package/dist/trinity/core/Tr2GpuResourcePool/GpuResourceHandle.js +115 -0
  439. package/dist/trinity/core/Tr2GpuResourcePool/GpuResourceHandle.js.map +1 -0
  440. package/dist/trinity/core/Tr2GpuResourcePool/TextureSize2D.js +79 -0
  441. package/dist/trinity/core/Tr2GpuResourcePool/TextureSize2D.js.map +1 -0
  442. package/dist/trinity/core/{Tr2GpuResourcePool.js → Tr2GpuResourcePool/Tr2GpuResourcePool.js} +63 -151
  443. package/dist/trinity/core/Tr2GpuResourcePool/Tr2GpuResourcePool.js.map +1 -0
  444. package/dist/trinity/core/{Tr2QuadRenderer.js → Tr2QuadRenderer/Tr2QuadRenderer.js} +8 -30
  445. package/dist/trinity/core/Tr2QuadRenderer/Tr2QuadRenderer.js.map +1 -0
  446. package/dist/trinity/core/Tr2QuadRenderer/Tr2QuadRendererEffectRecord.js +38 -0
  447. package/dist/trinity/core/Tr2QuadRenderer/Tr2QuadRendererEffectRecord.js.map +1 -0
  448. package/dist/trinity/core/Tr2RenderUtils.js +20 -3
  449. package/dist/trinity/core/Tr2RenderUtils.js.map +1 -1
  450. package/dist/trinity/core/Tr2Renderer.js +146 -1
  451. package/dist/trinity/core/Tr2Renderer.js.map +1 -1
  452. package/dist/trinity/core/Tr2ShadowMap.js +135 -14
  453. package/dist/trinity/core/Tr2ShadowMap.js.map +1 -1
  454. package/dist/trinity/core/{Tr2TextureArray.js → Tr2TextureArray/Tr2TextureArray.js} +3 -58
  455. package/dist/trinity/core/Tr2TextureArray/Tr2TextureArray.js.map +1 -0
  456. package/dist/trinity/core/Tr2TextureArray/Tr2TextureArrayElement.js +61 -0
  457. package/dist/trinity/core/Tr2TextureArray/Tr2TextureArrayElement.js.map +1 -0
  458. package/dist/trinity/core/batch/TriRenderBatch/DefaultKeyGenerator.js +26 -0
  459. package/dist/trinity/core/batch/TriRenderBatch/DefaultKeyGenerator.js.map +1 -0
  460. package/dist/trinity/core/batch/TriRenderBatch/EffectKeyGenerator.js +29 -0
  461. package/dist/trinity/core/batch/TriRenderBatch/EffectKeyGenerator.js.map +1 -0
  462. package/dist/trinity/core/batch/{ITriRenderBatchAccumulator.js → TriRenderBatch/ITriRenderBatchAccumulator.js} +30 -30
  463. package/dist/trinity/core/batch/TriRenderBatch/ITriRenderBatchAccumulator.js.map +1 -0
  464. package/dist/trinity/core/batch/{Tr2RenderBatch.js → TriRenderBatch/Tr2RenderBatch.js} +81 -154
  465. package/dist/trinity/core/batch/TriRenderBatch/Tr2RenderBatch.js.map +1 -0
  466. package/dist/trinity/core/batch/{TriRenderBatchAccumulator.js → TriRenderBatch/TriRenderBatchAccumulator.js} +7 -38
  467. package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAccumulator.js.map +1 -0
  468. package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlock.js +61 -0
  469. package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlock.js.map +1 -0
  470. package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlocksWithSharedMaterial.js +40 -0
  471. package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlocksWithSharedMaterial.js.map +1 -0
  472. package/dist/trinity/core/batch/TriRenderBatchMap.js +6 -1
  473. package/dist/trinity/core/batch/TriRenderBatchMap.js.map +1 -1
  474. package/dist/trinity/core/context/Tr2RenderContext.js +75 -57
  475. package/dist/trinity/core/context/Tr2RenderContext.js.map +1 -1
  476. package/dist/trinity/core/context/Tr2VisibilityResults/Tr2VisibilityEvent.js +67 -0
  477. package/dist/trinity/core/context/Tr2VisibilityResults/Tr2VisibilityEvent.js.map +1 -0
  478. package/dist/trinity/core/context/Tr2VisibilityResults/Tr2VisibilityResults.js +50 -0
  479. package/dist/trinity/core/context/Tr2VisibilityResults/Tr2VisibilityResults.js.map +1 -0
  480. package/dist/trinity/core/device/Tr2DepthStencil.js +186 -13
  481. package/dist/trinity/core/device/Tr2DepthStencil.js.map +1 -1
  482. package/dist/trinity/core/device/{Tr2RingBuffer.js → Tr2RingBuffer/Tr2RingBuffer.js} +27 -79
  483. package/dist/trinity/core/device/Tr2RingBuffer/Tr2RingBuffer.js.map +1 -0
  484. package/dist/trinity/core/device/Tr2RingBuffer/Tr2RingBufferOffsets.js +114 -0
  485. package/dist/trinity/core/device/Tr2RingBuffer/Tr2RingBufferOffsets.js.map +1 -0
  486. package/dist/trinity/core/device/{Tr2SuballocatedBuffer.js → Tr2SuballocatedBuffer/Tr2SuballocatedBuffer.js} +5 -59
  487. package/dist/trinity/core/device/Tr2SuballocatedBuffer/Tr2SuballocatedBuffer.js.map +1 -0
  488. package/dist/trinity/core/device/Tr2SuballocatedBuffer/Tr2SuballocatedBufferAllocation.js +80 -0
  489. package/dist/trinity/core/device/Tr2SuballocatedBuffer/Tr2SuballocatedBufferAllocation.js.map +1 -0
  490. package/dist/trinity/core/index.js +42 -15
  491. package/dist/trinity/core/index.js.map +1 -1
  492. package/dist/trinity/core/lighting/Tr2LightManager.js +6 -1
  493. package/dist/trinity/core/lighting/Tr2LightManager.js.map +1 -1
  494. package/dist/trinity/core/mesh/{ITr2ImpostorSource.js → ITr2ImpostorSource/ITr2ImpostorSource.js} +6 -28
  495. package/dist/trinity/core/mesh/ITr2ImpostorSource/ITr2ImpostorSource.js.map +1 -0
  496. package/dist/trinity/core/mesh/ITr2ImpostorSource/ITr2ImpostorSourceImpostorHash.js +32 -0
  497. package/dist/trinity/core/mesh/ITr2ImpostorSource/ITr2ImpostorSourceImpostorHash.js.map +1 -0
  498. package/dist/trinity/core/mesh/{ITr2InstanceData.js → ITr2InstanceData/ITr2InstanceData.js} +5 -29
  499. package/dist/trinity/core/mesh/ITr2InstanceData/ITr2InstanceData.js.map +1 -0
  500. package/dist/trinity/core/mesh/ITr2InstanceData/ITr2InstanceDataInstanceData.js +33 -0
  501. package/dist/trinity/core/mesh/ITr2InstanceData/ITr2InstanceDataInstanceData.js.map +1 -0
  502. package/dist/trinity/core/mesh/Tr2DirectInstanceData.js +2 -1
  503. package/dist/trinity/core/mesh/Tr2DirectInstanceData.js.map +1 -1
  504. package/dist/trinity/core/mesh/Tr2MeshBase.js +7 -1
  505. package/dist/trinity/core/mesh/Tr2MeshBase.js.map +1 -1
  506. package/dist/trinity/core/mesh/Tr2RuntimeInstanceData.js +2 -1
  507. package/dist/trinity/core/mesh/Tr2RuntimeInstanceData.js.map +1 -1
  508. package/dist/trinity/core/mesh/TriGeometryResAllocations.js +6 -2
  509. package/dist/trinity/core/mesh/TriGeometryResAllocations.js.map +1 -1
  510. package/dist/trinity/core/rawData/CjsConstantLayout.js +196 -0
  511. package/dist/trinity/core/rawData/CjsConstantLayout.js.map +1 -0
  512. package/dist/trinity/core/rawData/CjsPerFrameLayouts.js +8 -3
  513. package/dist/trinity/core/rawData/CjsPerFrameLayouts.js.map +1 -1
  514. package/dist/trinity/core/rawData/CjsPerObjectLayouts.js +40 -732
  515. package/dist/trinity/core/rawData/CjsPerObjectLayouts.js.map +1 -1
  516. package/dist/trinity/core/rawData/layouts/CjsEveBasicLayout.js +34 -0
  517. package/dist/trinity/core/rawData/layouts/CjsEveBasicLayout.js.map +1 -0
  518. package/dist/trinity/core/rawData/layouts/CjsEveBoosterSetLayout.js +69 -0
  519. package/dist/trinity/core/rawData/layouts/CjsEveBoosterSetLayout.js.map +1 -0
  520. package/dist/trinity/core/rawData/layouts/CjsEveChildBoosterSetLayout.js +59 -0
  521. package/dist/trinity/core/rawData/layouts/CjsEveChildBoosterSetLayout.js.map +1 -0
  522. package/dist/trinity/core/rawData/layouts/CjsEveChildBulletStormLayout.js +37 -0
  523. package/dist/trinity/core/rawData/layouts/CjsEveChildBulletStormLayout.js.map +1 -0
  524. package/dist/trinity/core/rawData/layouts/CjsEveChildSpherePinLayout.js +44 -0
  525. package/dist/trinity/core/rawData/layouts/CjsEveChildSpherePinLayout.js.map +1 -0
  526. package/dist/trinity/core/rawData/layouts/CjsEveLensflareLayout.js +31 -0
  527. package/dist/trinity/core/rawData/layouts/CjsEveLensflareLayout.js.map +1 -0
  528. package/dist/trinity/core/rawData/layouts/CjsEveMissileWarheadLayout.js +29 -0
  529. package/dist/trinity/core/rawData/layouts/CjsEveMissileWarheadLayout.js.map +1 -0
  530. package/dist/trinity/core/rawData/layouts/CjsEvePerObjectLayout.js +39 -0
  531. package/dist/trinity/core/rawData/layouts/CjsEvePerObjectLayout.js.map +1 -0
  532. package/dist/trinity/core/rawData/layouts/CjsEveSceneStaticParticlesLayout.js +30 -0
  533. package/dist/trinity/core/rawData/layouts/CjsEveSceneStaticParticlesLayout.js.map +1 -0
  534. package/dist/trinity/core/rawData/layouts/CjsEveSpaceObjectDecalLayout.js +78 -0
  535. package/dist/trinity/core/rawData/layouts/CjsEveSpaceObjectDecalLayout.js.map +1 -0
  536. package/dist/trinity/core/rawData/layouts/CjsEveSpaceObjectLayout.js +169 -0
  537. package/dist/trinity/core/rawData/layouts/CjsEveSpaceObjectLayout.js.map +1 -0
  538. package/dist/trinity/core/rawData/layouts/CjsEveSpacePerObjectLayout.js +107 -0
  539. package/dist/trinity/core/rawData/layouts/CjsEveSpacePerObjectLayout.js.map +1 -0
  540. package/dist/trinity/core/rawData/layouts/CjsEveSpherePinLayout.js +44 -0
  541. package/dist/trinity/core/rawData/layouts/CjsEveSpherePinLayout.js.map +1 -0
  542. package/dist/trinity/core/rawData/layouts/CjsEveStretch2Layout.js +34 -0
  543. package/dist/trinity/core/rawData/layouts/CjsEveStretch2Layout.js.map +1 -0
  544. package/dist/trinity/core/rawData/layouts/CjsEveTurretSetLayout.js +82 -0
  545. package/dist/trinity/core/rawData/layouts/CjsEveTurretSetLayout.js.map +1 -0
  546. package/dist/trinity/core/rawData/layouts/CjsTr2PerObjectLayout.js +42 -0
  547. package/dist/trinity/core/rawData/layouts/CjsTr2PerObjectLayout.js.map +1 -0
  548. package/dist/trinity/core/rawData/perObjectData/EveBasicPerObjectData.js +55 -0
  549. package/dist/trinity/core/rawData/perObjectData/EveBasicPerObjectData.js.map +1 -0
  550. package/dist/trinity/core/rawData/perObjectData/EveBoosterSetPerObjectData.js +59 -0
  551. package/dist/trinity/core/rawData/perObjectData/EveBoosterSetPerObjectData.js.map +1 -0
  552. package/dist/trinity/core/rawData/perObjectData/EveChildBoosterSetPerObjectData.js +59 -0
  553. package/dist/trinity/core/rawData/perObjectData/EveChildBoosterSetPerObjectData.js.map +1 -0
  554. package/dist/trinity/core/rawData/perObjectData/EveChildBulletStormPerObjectData.js +55 -0
  555. package/dist/trinity/core/rawData/perObjectData/EveChildBulletStormPerObjectData.js.map +1 -0
  556. package/dist/trinity/core/rawData/perObjectData/EveChildSpherePinPerObjectData.js +55 -0
  557. package/dist/trinity/core/rawData/perObjectData/EveChildSpherePinPerObjectData.js.map +1 -0
  558. package/dist/trinity/core/rawData/perObjectData/EveDecalPerObjectData.js +59 -0
  559. package/dist/trinity/core/rawData/perObjectData/EveDecalPerObjectData.js.map +1 -0
  560. package/dist/trinity/core/rawData/perObjectData/EveLensflarePerObjectData.js +55 -0
  561. package/dist/trinity/core/rawData/perObjectData/EveLensflarePerObjectData.js.map +1 -0
  562. package/dist/trinity/core/rawData/perObjectData/EveMissileWarheadPerObjectData.js +55 -0
  563. package/dist/trinity/core/rawData/perObjectData/EveMissileWarheadPerObjectData.js.map +1 -0
  564. package/dist/trinity/core/rawData/perObjectData/EveSceneStaticParticlesPerObjectData.js +55 -0
  565. package/dist/trinity/core/rawData/perObjectData/EveSceneStaticParticlesPerObjectData.js.map +1 -0
  566. package/dist/trinity/core/rawData/perObjectData/EveSpherePinPerObjectData.js +55 -0
  567. package/dist/trinity/core/rawData/perObjectData/EveSpherePinPerObjectData.js.map +1 -0
  568. package/dist/trinity/core/rawData/perObjectData/EveTurretSetPerObjectData.js +59 -0
  569. package/dist/trinity/core/rawData/perObjectData/EveTurretSetPerObjectData.js.map +1 -0
  570. package/dist/trinity/core/rawData/perObjectData/StretchPerObjectData.js +55 -0
  571. package/dist/trinity/core/rawData/perObjectData/StretchPerObjectData.js.map +1 -0
  572. package/dist/trinity/core/rawData/{Tr2PerObjectData.js → perObjectData/Tr2PerObjectData.js} +110 -62
  573. package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectData.js.map +1 -0
  574. package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataPSBuffer.js +104 -0
  575. package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataPSBuffer.js.map +1 -0
  576. package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataStandard.js +87 -0
  577. package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataStandard.js.map +1 -0
  578. package/dist/trinity/core/variable/TriVariable.js +83 -83
  579. package/dist/trinity/core/variable/TriVariable.js.map +1 -1
  580. package/dist/trinity/core/vertex/{Tr2VertexDefinition.js → Tr2VertexDefinition/Tr2VertexDefinition.js} +4 -20
  581. package/dist/trinity/core/vertex/Tr2VertexDefinition/Tr2VertexDefinition.js.map +1 -0
  582. package/dist/trinity/core/vertex/Tr2VertexDefinition/Tr2VertexDefinitionItem.js +29 -0
  583. package/dist/trinity/core/vertex/Tr2VertexDefinition/Tr2VertexDefinitionItem.js.map +1 -0
  584. package/dist/trinity/core/volumetrics/Tr2VolumetricsRenderer.js +116 -36
  585. package/dist/trinity/core/volumetrics/Tr2VolumetricsRenderer.js.map +1 -1
  586. package/dist/trinity/curves/curve/Tr2CurveRandomAxisRotation.js +50 -92
  587. package/dist/trinity/curves/curve/Tr2CurveRandomAxisRotation.js.map +1 -1
  588. package/dist/trinity/eve/EveModularObjectModifier.js +9 -5
  589. package/dist/trinity/eve/EveModularObjectModifier.js.map +1 -1
  590. package/dist/trinity/eve/IEveInheritPropertiesOwner.js +2 -1
  591. package/dist/trinity/eve/IEveInheritPropertiesOwner.js.map +1 -1
  592. package/dist/trinity/eve/IEveSpaceObject2.js +2 -1
  593. package/dist/trinity/eve/IEveSpaceObject2.js.map +1 -1
  594. package/dist/trinity/eve/IEveTransform.js +2 -1
  595. package/dist/trinity/eve/IEveTransform.js.map +1 -1
  596. package/dist/trinity/eve/attachment/banner/EveBannerSet.js +2 -2
  597. package/dist/trinity/eve/attachment/banner/EveBannerSet.js.map +1 -1
  598. package/dist/trinity/eve/attachment/booster/EveBoosterSet2.js +109 -133
  599. package/dist/trinity/eve/attachment/booster/EveBoosterSet2.js.map +1 -1
  600. package/dist/trinity/eve/attachment/booster/EveBoosterSet2Item.js +40 -0
  601. package/dist/trinity/eve/attachment/booster/EveBoosterSet2Item.js.map +1 -0
  602. package/dist/trinity/eve/attachment/booster/EveBoosterSet2Renderable.js +1 -1
  603. package/dist/trinity/eve/attachment/booster/EveBoosterSet2Renderable.js.map +1 -1
  604. package/dist/trinity/eve/attachment/decal/DecalMeshCache.js +2 -14
  605. package/dist/trinity/eve/attachment/decal/DecalMeshCache.js.map +1 -1
  606. package/dist/trinity/eve/attachment/decal/DecalMeshCacheMeshBuffers.js +18 -0
  607. package/dist/trinity/eve/attachment/decal/DecalMeshCacheMeshBuffers.js.map +1 -0
  608. package/dist/trinity/eve/attachment/decal/EveSpaceObjectDecal.js +1 -1
  609. package/dist/trinity/eve/attachment/decal/EveSpaceObjectDecal.js.map +1 -1
  610. package/dist/trinity/eve/attachment/haze/EveHazeSet.js +1 -1
  611. package/dist/trinity/eve/attachment/haze/EveHazeSet.js.map +1 -1
  612. package/dist/trinity/eve/attachment/plane/EvePlaneSet.js +1 -1
  613. package/dist/trinity/eve/attachment/plane/EvePlaneSet.js.map +1 -1
  614. package/dist/trinity/eve/attachment/spotlight/EveSpotlightSet.js +2 -2
  615. package/dist/trinity/eve/attachment/spotlight/EveSpotlightSet.js.map +1 -1
  616. package/dist/trinity/eve/attachment/sprite/EveSpriteLineSet.js +1 -1
  617. package/dist/trinity/eve/attachment/sprite/EveSpriteLineSet.js.map +1 -1
  618. package/dist/trinity/eve/attachment/sprite/EveSpriteSet.js +4 -2
  619. package/dist/trinity/eve/attachment/sprite/EveSpriteSet.js.map +1 -1
  620. package/dist/trinity/eve/attachment/turrets/EveTurretSet.js +143 -139
  621. package/dist/trinity/eve/attachment/turrets/EveTurretSet.js.map +1 -1
  622. package/dist/trinity/eve/camera/EveCamera.js +1 -1
  623. package/dist/trinity/eve/camera/EveCamera.js.map +1 -1
  624. package/dist/trinity/eve/child/EveChildBoosterSet.js +12 -1
  625. package/dist/trinity/eve/child/EveChildBoosterSet.js.map +1 -1
  626. package/dist/trinity/eve/child/EveChildCloud2.js +178 -151
  627. package/dist/trinity/eve/child/EveChildCloud2.js.map +1 -1
  628. package/dist/trinity/eve/child/EveChildContainer.js +141 -141
  629. package/dist/trinity/eve/child/EveChildContainer.js.map +1 -1
  630. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMesh.js +87 -0
  631. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMesh.js.map +1 -0
  632. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshArea.js +46 -0
  633. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshArea.js.map +1 -0
  634. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshInstance.js +35 -0
  635. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshInstance.js.map +1 -0
  636. package/dist/trinity/eve/child/{EveChildInstancedMeshes.js → EveChildInstancedMeshes/EveChildInstancedMeshes.js} +42 -163
  637. package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshes.js.map +1 -0
  638. package/dist/trinity/eve/child/EveChildMesh.js +218 -218
  639. package/dist/trinity/eve/child/EveChildMesh.js.map +1 -1
  640. package/dist/trinity/eve/child/EveChildPartData/EveChildPartData.js +53 -0
  641. package/dist/trinity/eve/child/EveChildPartData/EveChildPartData.js.map +1 -0
  642. package/dist/trinity/eve/child/{EveChildPartData.js → EveChildPartData/EveChildPartDataPartData.js} +9 -45
  643. package/dist/trinity/eve/child/EveChildPartData/EveChildPartDataPartData.js.map +1 -0
  644. package/dist/trinity/eve/child/EveChildParticleSystem.js +30 -29
  645. package/dist/trinity/eve/child/EveChildParticleSystem.js.map +1 -1
  646. package/dist/trinity/eve/child/EveChildTransform.js +5 -0
  647. package/dist/trinity/eve/child/EveChildTransform.js.map +1 -1
  648. package/dist/trinity/eve/child/EveChildTurret.js +7 -0
  649. package/dist/trinity/eve/child/EveChildTurret.js.map +1 -1
  650. package/dist/trinity/eve/index.js +10 -4
  651. package/dist/trinity/eve/index.js.map +1 -1
  652. package/dist/trinity/eve/lights/Tr2Light.js +5 -0
  653. package/dist/trinity/eve/lights/Tr2Light.js.map +1 -1
  654. package/dist/trinity/eve/overlays/overlayBatches.js +6 -1
  655. package/dist/trinity/eve/overlays/overlayBatches.js.map +1 -1
  656. package/dist/trinity/eve/particles/static/EveSceneStaticParticles.js +4 -4
  657. package/dist/trinity/eve/particles/static/EveSceneStaticParticles.js.map +1 -1
  658. package/dist/trinity/eve/renderable/stretch/EveStretch2.js +76 -71
  659. package/dist/trinity/eve/renderable/stretch/EveStretch2.js.map +1 -1
  660. package/dist/trinity/eve/renderable/stretch/EveStretch3.js +1 -1
  661. package/dist/trinity/eve/renderable/stretch/EveStretch3.js.map +1 -1
  662. package/dist/trinity/eve/spaceObject/EveShip2.js +3 -3
  663. package/dist/trinity/eve/spaceObject/EveShip2.js.map +1 -1
  664. package/dist/trinity/eve/spaceObject/EveSpaceObject2.js +408 -407
  665. package/dist/trinity/eve/spaceObject/EveSpaceObject2.js.map +1 -1
  666. package/dist/trinity/eve/ui/EveTacticalOverlay.js +1 -1
  667. package/dist/trinity/eve/ui/EveTacticalOverlay.js.map +1 -1
  668. package/dist/trinity/eve/ui/lines/EveCurveLineSet.js +9 -9
  669. package/dist/trinity/eve/ui/lines/EveCurveLineSet.js.map +1 -1
  670. package/dist/trinity/eve/ui/lines/EveLineSet.js +27 -25
  671. package/dist/trinity/eve/ui/lines/EveLineSet.js.map +1 -1
  672. package/dist/trinity/eve/ui/tacticalOverlay/EveTacticalTrails.js +3 -2
  673. package/dist/trinity/eve/ui/tacticalOverlay/EveTacticalTrails.js.map +1 -1
  674. package/dist/trinity/generated/index.js +0 -1
  675. package/dist/trinity/generated/index.js.map +1 -1
  676. package/dist/trinity/generated/trinityCore/index.js +0 -1
  677. package/dist/trinity/generated/trinityCore/index.js.map +1 -1
  678. package/dist/trinity/index.js +59 -23
  679. package/dist/trinity/index.js.map +1 -1
  680. package/dist/trinity/particle/{ITr2GenericEmitter.js → ITr2GenericEmitter/ITr2GenericEmitter.js} +4 -32
  681. package/dist/trinity/particle/ITr2GenericEmitter/ITr2GenericEmitter.js.map +1 -0
  682. package/dist/trinity/particle/ITr2GenericEmitter/ITr2GenericEmitterUpdateArguments.js +36 -0
  683. package/dist/trinity/particle/ITr2GenericEmitter/ITr2GenericEmitterUpdateArguments.js.map +1 -0
  684. package/dist/trinity/particle/Tr2ParticleSystem.js +4 -2
  685. package/dist/trinity/particle/Tr2ParticleSystem.js.map +1 -1
  686. package/dist/trinity/particle/element/Tr2ParticleElementData.js +15 -4
  687. package/dist/trinity/particle/element/Tr2ParticleElementData.js.map +1 -1
  688. package/dist/trinity/particle/emitter/Tr2DynamicEmitter.js +21 -20
  689. package/dist/trinity/particle/emitter/Tr2DynamicEmitter.js.map +1 -1
  690. package/dist/trinity/particle/emitter/Tr2GpuSharedEmitter.js +23 -22
  691. package/dist/trinity/particle/emitter/Tr2GpuSharedEmitter.js.map +1 -1
  692. package/dist/trinity/particle/emitter/Tr2StaticEmitter.js +14 -13
  693. package/dist/trinity/particle/emitter/Tr2StaticEmitter.js.map +1 -1
  694. package/dist/trinity/particle/index.js +2 -1
  695. package/dist/trinity/particle/index.js.map +1 -1
  696. package/dist/trinity/renderJob/step/TriStepPushRenderTarget.js +7 -1
  697. package/dist/trinity/renderJob/step/TriStepPushRenderTarget.js.map +1 -1
  698. package/dist/trinity/shader/Tr2Effect.js +131 -58
  699. package/dist/trinity/shader/Tr2Effect.js.map +1 -1
  700. package/dist/trinity/shader/Tr2EffectStateManager.js +17 -5
  701. package/dist/trinity/shader/Tr2EffectStateManager.js.map +1 -1
  702. package/dist/trinity/shader/Tr2Material.js +21 -4
  703. package/dist/trinity/shader/Tr2Material.js.map +1 -1
  704. package/dist/trinity/shader/material/Tr2EffectPassParameters.js +4 -1
  705. package/dist/trinity/shader/material/Tr2EffectPassParameters.js.map +1 -1
  706. package/dist/trinity/shader/parameter/Tr2GeometryBufferParameter.js +2 -2
  707. package/dist/trinity/shader/parameter/Tr2GeometryBufferParameter.js.map +1 -1
  708. package/dist/trinityal/Tr2BufferAL/Tr2BufferDescriptionAL.js +79 -0
  709. package/dist/trinityal/Tr2BufferAL/Tr2BufferDescriptionAL.js.map +1 -0
  710. package/dist/trinityal/{Tr2DeviceResourceAL.js → Tr2DeviceResourceAL/Tr2BaseDeviceResourceAL.js} +77 -79
  711. package/dist/trinityal/Tr2DeviceResourceAL/Tr2BaseDeviceResourceAL.js.map +1 -0
  712. package/dist/trinityal/Tr2DeviceResourceAL/Tr2DeviceResourceAL.js +24 -0
  713. package/dist/trinityal/Tr2DeviceResourceAL/Tr2DeviceResourceAL.js.map +1 -0
  714. package/dist/trinityal/Tr2DrawUPHelper.js +2 -1
  715. package/dist/trinityal/Tr2DrawUPHelper.js.map +1 -1
  716. package/dist/trinityal/Tr2HalHelperStructures/Tr2MsaaDesc.js +45 -0
  717. package/dist/trinityal/Tr2HalHelperStructures/Tr2MsaaDesc.js.map +1 -0
  718. package/dist/trinityal/Tr2HalHelperStructures/Tr2SamplerDescription.js +154 -0
  719. package/dist/trinityal/Tr2HalHelperStructures/Tr2SamplerDescription.js.map +1 -0
  720. package/dist/trinityal/Tr2HalHelperStructures/Tr2SubresourceData.js +48 -0
  721. package/dist/trinityal/Tr2HalHelperStructures/Tr2SubresourceData.js.map +1 -0
  722. package/dist/trinityal/Tr2HalHelperStructures/Tr2TextureCoordBox.js +75 -0
  723. package/dist/trinityal/Tr2HalHelperStructures/Tr2TextureCoordBox.js.map +1 -0
  724. package/dist/trinityal/{Tr2HalHelperStructures.js → Tr2HalHelperStructures/Tr2TextureSubresource.js} +11 -115
  725. package/dist/trinityal/Tr2HalHelperStructures/Tr2TextureSubresource.js.map +1 -0
  726. package/dist/trinityal/Tr2HalHelperStructures/Tr2Viewport.js +51 -0
  727. package/dist/trinityal/Tr2HalHelperStructures/Tr2Viewport.js.map +1 -0
  728. package/dist/trinityal/{Tr2RenderPassAL.js → Tr2RenderPassAL/Tr2ColorAttachment.js} +5 -28
  729. package/dist/trinityal/Tr2RenderPassAL/Tr2ColorAttachment.js.map +1 -0
  730. package/dist/trinityal/Tr2RenderPassAL/Tr2DepthAttachment.js +38 -0
  731. package/dist/trinityal/Tr2RenderPassAL/Tr2DepthAttachment.js.map +1 -0
  732. package/dist/trinityal/Tr2ResourceSetAL/Tr2RegisterMapAL.js +80 -0
  733. package/dist/trinityal/Tr2ResourceSetAL/Tr2RegisterMapAL.js.map +1 -0
  734. package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetAL.js +76 -0
  735. package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetAL.js.map +1 -0
  736. package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetALStub.js +96 -0
  737. package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetALStub.js.map +1 -0
  738. package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetDescriptionAL.js +196 -0
  739. package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetDescriptionAL.js.map +1 -0
  740. package/dist/trinityal/index.js +22 -9
  741. package/dist/trinityal/index.js.map +1 -1
  742. package/dist/trinityal/stub/Tr2BufferALStub.js +86 -141
  743. package/dist/trinityal/stub/Tr2BufferALStub.js.map +1 -1
  744. package/dist/trinityal/stub/Tr2CapsALStub.js +17 -0
  745. package/dist/trinityal/stub/Tr2CapsALStub.js.map +1 -1
  746. package/dist/trinityal/stub/Tr2ConstantBufferALStub.js +57 -41
  747. package/dist/trinityal/stub/Tr2ConstantBufferALStub.js.map +1 -1
  748. package/dist/trinityal/stub/Tr2FenceALStub.js +18 -2
  749. package/dist/trinityal/stub/Tr2FenceALStub.js.map +1 -1
  750. package/dist/trinityal/stub/Tr2GpuTimerALStub.js +97 -0
  751. package/dist/trinityal/stub/Tr2GpuTimerALStub.js.map +1 -0
  752. package/dist/trinityal/stub/Tr2OcclusionQueryALStub.js +124 -0
  753. package/dist/trinityal/stub/Tr2OcclusionQueryALStub.js.map +1 -0
  754. package/dist/trinityal/stub/Tr2PipelineStatsQueryALStub/Tr2PipelineStatsQueryALStub.js +146 -0
  755. package/dist/trinityal/stub/Tr2PipelineStatsQueryALStub/Tr2PipelineStatsQueryALStub.js.map +1 -0
  756. package/dist/trinityal/stub/Tr2RenderContextALStub/Tr2BindlessResourcesAL.js +28 -0
  757. package/dist/trinityal/stub/Tr2RenderContextALStub/Tr2BindlessResourcesAL.js.map +1 -0
  758. package/dist/trinityal/stub/{Tr2RenderContextALStub.js → Tr2RenderContextALStub/Tr2RenderContextALStub.js} +70 -75
  759. package/dist/trinityal/stub/Tr2RenderContextALStub/Tr2RenderContextALStub.js.map +1 -0
  760. package/dist/trinityal/stub/Tr2SamplerStateALStub.js +47 -31
  761. package/dist/trinityal/stub/Tr2SamplerStateALStub.js.map +1 -1
  762. package/dist/trinityal/stub/Tr2ShaderALStub.js +61 -45
  763. package/dist/trinityal/stub/Tr2ShaderALStub.js.map +1 -1
  764. package/dist/trinityal/stub/Tr2ShaderProgramALStub.js +51 -33
  765. package/dist/trinityal/stub/Tr2ShaderProgramALStub.js.map +1 -1
  766. package/dist/trinityal/stub/Tr2SwapChainALStub.js +61 -45
  767. package/dist/trinityal/stub/Tr2SwapChainALStub.js.map +1 -1
  768. package/dist/trinityal/stub/Tr2TextureALStub.js +188 -171
  769. package/dist/trinityal/stub/Tr2TextureALStub.js.map +1 -1
  770. package/dist/trinityal/stub/Tr2VertexLayoutALStub.js +43 -27
  771. package/dist/trinityal/stub/Tr2VertexLayoutALStub.js.map +1 -1
  772. package/dist/trinityal/stub/{Tr2VideoAdapterInfoALStub.js → Tr2VideoAdapterInfoStub.js} +16 -1
  773. package/dist/trinityal/stub/Tr2VideoAdapterInfoStub.js.map +1 -0
  774. package/dist/trinityal/stub/index.js +8 -4
  775. package/dist/trinityal/stub/index.js.map +1 -1
  776. package/dist/trinityal/vertexLayoutMatch.js +2 -2
  777. package/dist/trinityal/vertexLayoutMatch.js.map +1 -1
  778. package/dist/trinityal/webgpu/CjsWebgpuBufferAL.js +105 -90
  779. package/dist/trinityal/webgpu/CjsWebgpuBufferAL.js.map +1 -1
  780. package/dist/trinityal/webgpu/CjsWebgpuCapsAL.js +17 -0
  781. package/dist/trinityal/webgpu/CjsWebgpuCapsAL.js.map +1 -1
  782. package/dist/trinityal/webgpu/CjsWebgpuConstantBufferAL.js +15 -0
  783. package/dist/trinityal/webgpu/CjsWebgpuConstantBufferAL.js.map +1 -1
  784. package/dist/trinityal/webgpu/CjsWebgpuDevice.js +2 -2
  785. package/dist/trinityal/webgpu/CjsWebgpuDevice.js.map +1 -1
  786. package/dist/trinityal/webgpu/CjsWebgpuRenderContextAL.js +900 -938
  787. package/dist/trinityal/webgpu/CjsWebgpuRenderContextAL.js.map +1 -1
  788. package/dist/trinityal/webgpu/CjsWebgpuResourceSetAL.js +56 -60
  789. package/dist/trinityal/webgpu/CjsWebgpuResourceSetAL.js.map +1 -1
  790. package/dist/trinityal/webgpu/CjsWebgpuSamplerStateAL.js +16 -1
  791. package/dist/trinityal/webgpu/CjsWebgpuSamplerStateAL.js.map +1 -1
  792. package/dist/trinityal/webgpu/CjsWebgpuShaderAL.js +100 -379
  793. package/dist/trinityal/webgpu/CjsWebgpuShaderAL.js.map +1 -1
  794. package/dist/trinityal/webgpu/CjsWebgpuShaderProgramAL.js +330 -0
  795. package/dist/trinityal/webgpu/CjsWebgpuShaderProgramAL.js.map +1 -0
  796. package/dist/trinityal/webgpu/CjsWebgpuTextureAL.js +15 -0
  797. package/dist/trinityal/webgpu/CjsWebgpuTextureAL.js.map +1 -1
  798. package/dist/trinityal/webgpu/core/{constantArena.js → CjsWebgpuConstantArena.js} +1 -1
  799. package/dist/trinityal/webgpu/core/CjsWebgpuConstantArena.js.map +1 -0
  800. package/dist/trinityal/webgpu/core/{batchGroups.js → CjsWebgpuEncodeState.js} +1 -1
  801. package/dist/trinityal/webgpu/core/CjsWebgpuEncodeState.js.map +1 -0
  802. package/dist/trinityal/webgpu/core/{perFrameSource.js → CjsWebgpuPerFrameSource.js} +1 -1
  803. package/dist/trinityal/webgpu/core/CjsWebgpuPerFrameSource.js.map +1 -0
  804. package/dist/trinityal/webgpu/core/{pipelineCache.js → CjsWebgpuPipelineCache.js} +1 -1
  805. package/dist/trinityal/webgpu/core/CjsWebgpuPipelineCache.js.map +1 -0
  806. package/dist/trinityal/webgpu/core/{psoDescription.js → CjsWebgpuPsoDescription.js} +2 -2
  807. package/dist/trinityal/webgpu/core/CjsWebgpuPsoDescription.js.map +1 -0
  808. package/dist/trinityal/webgpu/core/{renderTarget.js → CjsWebgpuRenderTarget.js} +1 -1
  809. package/dist/trinityal/webgpu/core/CjsWebgpuRenderTarget.js.map +1 -0
  810. package/dist/trinityal/webgpu/core/{samplerSource.js → CjsWebgpuSamplerSource.js} +1 -1
  811. package/dist/trinityal/webgpu/core/CjsWebgpuSamplerSource.js.map +1 -0
  812. package/dist/trinityal/webgpu/core/{textureSource.js → CjsWebgpuTextureSource.js} +1 -1
  813. package/dist/trinityal/webgpu/core/CjsWebgpuTextureSource.js.map +1 -0
  814. package/dist/trinityal/webgpu/core/{trinityBatchDispatcher.js → CjsWebgpuTrinityBatchDispatcher.js} +4 -4
  815. package/dist/trinityal/webgpu/core/CjsWebgpuTrinityBatchDispatcher.js.map +1 -0
  816. package/dist/trinityal/webgpu/core/{trinityBatchResolver.js → CjsWebgpuTrinityBatchResolver.js} +81 -81
  817. package/dist/trinityal/webgpu/core/CjsWebgpuTrinityBatchResolver.js.map +1 -0
  818. package/dist/trinityal/webgpu/core/{trinityPassEncoder.js → CjsWebgpuTrinityPassEncoder.js} +2 -2
  819. package/dist/trinityal/webgpu/core/CjsWebgpuTrinityPassEncoder.js.map +1 -0
  820. package/dist/trinityal/webgpu/core/{workQueue.js → CjsWebgpuWorkQueue.js} +1 -1
  821. package/dist/trinityal/webgpu/core/CjsWebgpuWorkQueue.js.map +1 -0
  822. package/dist/trinityal/webgpu/internal.js +12 -11
  823. package/dist/trinityal/webgpu/internal.js.map +1 -1
  824. package/docs/audio/reference/classes/trinity.md +44 -34
  825. package/docs/character/architecture.md +276 -0
  826. package/docs/character/reference/character-appearance-plans.md +30 -66
  827. package/docs/character/reference/prepared-libraries.md +14 -30
  828. package/docs/global/reference/api.md +2 -1
  829. package/docs/global/reference/classes/README.md +53 -71
  830. package/docs/global/reference/classes/dropped.md +16 -0
  831. package/docs/resource/README.md +19 -15
  832. package/docs/resource/architecture.md +9 -2
  833. package/docs/resource/concepts/format-capabilities.md +124 -80
  834. package/docs/resource/concepts/shared-format-helpers.md +94 -0
  835. package/docs/resource/formats/README.md +230 -224
  836. package/docs/resource/formats/bitknit2.md +221 -0
  837. package/docs/resource/formats/carbon-effect-container.md +184 -269
  838. package/docs/resource/formats/gr2.md +6 -1
  839. package/docs/resource/formats/schemabound.md +28 -48
  840. package/docs/resource/formats/static.md +70 -97
  841. package/docs/resource/formats/webgl/carbon-constant-layouts.md +8 -8
  842. package/docs/resource/formats/webgl/decl-io.md +165 -256
  843. package/docs/resource/formats/webgl/memory-structured.md +64 -142
  844. package/docs/resource/formats/webgl/texture-sample.md +109 -138
  845. package/docs/resource/formats/webgpu/formats/carbon-webgpu.md +38 -69
  846. package/docs/resource/formats/webgpu/guides/effect-packaging.md +54 -116
  847. package/docs/resource/formats/webgpu/reference/api.md +64 -67
  848. package/docs/resource/formats/webgpu/reference/wgsl-compatibility.md +104 -260
  849. package/docs/resource/reference/classes/core.md +256 -236
  850. package/docs/resource/reference/classes/formats.md +1668 -1672
  851. package/docs/resource/reference/workers.md +4 -2
  852. package/docs/sof/reference/classes/core.md +1 -1
  853. package/docs/sof/reference/classes/faction.md +2 -2
  854. package/docs/sof/reference/classes/generic.md +4 -4
  855. package/docs/sof/reference/classes/pattern.md +1 -1
  856. package/docs/sof/reference/classes/shared.md +10 -10
  857. package/docs/trinity/architecture.md +55 -44
  858. package/docs/trinity/concepts/generated-class-lifecycle.md +10 -15
  859. package/docs/trinity/reference/classes/curves-and-utilities.md +496 -506
  860. package/docs/trinity/reference/classes/dropped.md +0 -189
  861. package/docs/trinity/reference/classes/eve-runtime.md +8 -8
  862. package/docs/trinity/reference/classes/generated.md +0 -10
  863. package/docs/trinity/reference/classes/particle.md +2 -2
  864. package/docs/trinity/reference/classes/trinity-core.md +1554 -1256
  865. package/docs/trinity/reference/implementation-status.md +50 -75
  866. package/docs/trinity/reference/main-semantic-extraction.md +13 -17
  867. package/docs/trinityal/reference/classes/README.md +77 -27
  868. package/docs/trinityal/reference/classes/dropped.md +82 -0
  869. package/docs/trinityal/webgpu/README.md +3 -1
  870. package/docs/trinityal/webgpu/architecture.md +121 -228
  871. package/docs/trinityal/webgpu/reference/api.md +5 -5
  872. package/docs/trinityal/webgpu/reference/classes/README.md +13 -13
  873. package/format-notices/gr2/NOTICE +18 -12
  874. package/format-notices/gr2/THIRD-PARTY-NOTICES.md +5 -5
  875. package/package.json +4 -1
  876. package/dist/audio/trinity/audio/AudActionLog.js +0 -173
  877. package/dist/audio/trinity/audio/AudActionLog.js.map +0 -1
  878. package/dist/audio/trinity/audio/AudObstructionOcclusion.js.map +0 -1
  879. package/dist/global/contracts/CjsScriptCallback.js +0 -94
  880. package/dist/global/contracts/CjsScriptCallback.js.map +0 -1
  881. package/dist/trinity/controllers/ITr2Controller.js.map +0 -1
  882. package/dist/trinity/core/Tr2GpuResourcePool.js.map +0 -1
  883. package/dist/trinity/core/Tr2QuadRenderer.js.map +0 -1
  884. package/dist/trinity/core/Tr2TextureArray.js.map +0 -1
  885. package/dist/trinity/core/batch/ITriRenderBatchAccumulator.js.map +0 -1
  886. package/dist/trinity/core/batch/Tr2RenderBatch.js.map +0 -1
  887. package/dist/trinity/core/batch/TriRenderBatchAccumulator.js.map +0 -1
  888. package/dist/trinity/core/context/CjsShadowMapExecutor.js +0 -43
  889. package/dist/trinity/core/context/CjsShadowMapExecutor.js.map +0 -1
  890. package/dist/trinity/core/context/CjsVolumetricsExecutor.js +0 -64
  891. package/dist/trinity/core/context/CjsVolumetricsExecutor.js.map +0 -1
  892. package/dist/trinity/core/context/Tr2VisibilityResults.js +0 -109
  893. package/dist/trinity/core/context/Tr2VisibilityResults.js.map +0 -1
  894. package/dist/trinity/core/device/Tr2RingBuffer.js.map +0 -1
  895. package/dist/trinity/core/device/Tr2SuballocatedBuffer.js.map +0 -1
  896. package/dist/trinity/core/mesh/ITr2ImpostorSource.js.map +0 -1
  897. package/dist/trinity/core/mesh/ITr2InstanceData.js.map +0 -1
  898. package/dist/trinity/core/rawData/Tr2PerObjectData.js.map +0 -1
  899. package/dist/trinity/core/rawData/constantLayout.js +0 -175
  900. package/dist/trinity/core/rawData/constantLayout.js.map +0 -1
  901. package/dist/trinity/core/vertex/Tr2VertexDefinition.js.map +0 -1
  902. package/dist/trinity/eve/child/EveChildInstancedMeshes.js.map +0 -1
  903. package/dist/trinity/eve/child/EveChildPartData.js.map +0 -1
  904. package/dist/trinity/generated/trinityCore/Tr2Denoiser.js +0 -47
  905. package/dist/trinity/generated/trinityCore/Tr2Denoiser.js.map +0 -1
  906. package/dist/trinity/particle/ITr2GenericEmitter.js.map +0 -1
  907. package/dist/trinityal/Tr2DeviceResourceAL.js.map +0 -1
  908. package/dist/trinityal/Tr2HalHelperStructures.js.map +0 -1
  909. package/dist/trinityal/Tr2RenderPassAL.js.map +0 -1
  910. package/dist/trinityal/Tr2ResourceSetAL.js +0 -419
  911. package/dist/trinityal/Tr2ResourceSetAL.js.map +0 -1
  912. package/dist/trinityal/Tr2SamplerDescription.js +0 -72
  913. package/dist/trinityal/Tr2SamplerDescription.js.map +0 -1
  914. package/dist/trinityal/stub/Tr2QueryALStub.js +0 -326
  915. package/dist/trinityal/stub/Tr2QueryALStub.js.map +0 -1
  916. package/dist/trinityal/stub/Tr2RenderContextALStub.js.map +0 -1
  917. package/dist/trinityal/stub/Tr2VideoAdapterInfoALStub.js.map +0 -1
  918. package/dist/trinityal/webgpu/core/batchGroups.js.map +0 -1
  919. package/dist/trinityal/webgpu/core/constantArena.js.map +0 -1
  920. package/dist/trinityal/webgpu/core/perFrameSource.js.map +0 -1
  921. package/dist/trinityal/webgpu/core/pipelineCache.js.map +0 -1
  922. package/dist/trinityal/webgpu/core/psoDescription.js.map +0 -1
  923. package/dist/trinityal/webgpu/core/renderTarget.js.map +0 -1
  924. package/dist/trinityal/webgpu/core/samplerSource.js.map +0 -1
  925. package/dist/trinityal/webgpu/core/textureSource.js.map +0 -1
  926. package/dist/trinityal/webgpu/core/trinityBatchDispatcher.js.map +0 -1
  927. package/dist/trinityal/webgpu/core/trinityBatchResolver.js.map +0 -1
  928. package/dist/trinityal/webgpu/core/trinityPassEncoder.js.map +0 -1
  929. package/dist/trinityal/webgpu/core/workQueue.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"codebookLibrary.js","sources":["../../../../../../src/resource/formats/wem/core/codebookLibrary.js"],"sourcesContent":["import { BitReader, ilog } from \"./bitStream.js\";\r\n\r\n/**\r\n * Packed Vorbis codebook library handling for Wwise Vorbis repacking.\r\n *\r\n * Wwise strips the standard Vorbis codebooks from the setup header and\r\n * references entries in a shared packed library by 10-bit id. Rebuilding\r\n * expands each packed codebook back into the standard Vorbis codebook\r\n * encoding. Behavior mirrors the ww2ogg reference (BSD-licensed, Xiph.org\r\n * Foundation / Adam Gashlin); this is an original reimplementation.\r\n */\r\n\r\nfunction parseError(message)\r\n{\r\n const error = new Error(`wem: ${message}`);\r\n error.code = \"CJS_FORMAT_PARSE_ERROR\";\r\n return error;\r\n}\r\n\r\n/**\r\n * Parse a packed codebook library blob.\r\n *\r\n * Layout: codebook data, then a table of u32-le offsets; the last u32 in the\r\n * file points at the start of the offset table. Codebook `i` spans\r\n * offsets[i]..offsets[i+1].\r\n *\r\n * @param {Uint8Array} bytes Packed codebook library bytes.\r\n * @returns {object} Parsed library with `count` usable codebooks.\r\n */\r\nexport function parseCodebookLibrary(bytes)\r\n{\r\n if (bytes.length < 4) throw parseError(\"packed codebook library is truncated\");\r\n const offsetTableStart = readU32(bytes, bytes.length - 4);\r\n if (offsetTableStart > bytes.length - 4 || (bytes.length - offsetTableStart) % 4 !== 0)\r\n {\r\n throw parseError(\"packed codebook library has an invalid offset table\");\r\n }\r\n const offsetCount = (bytes.length - offsetTableStart) / 4;\r\n const offsets = new Uint32Array(offsetCount);\r\n for (let i = 0; i < offsetCount; i++)\r\n {\r\n offsets[i] = readU32(bytes, offsetTableStart + i * 4);\r\n if (offsets[i] > offsetTableStart) throw parseError(\"packed codebook offset out of range\");\r\n if (i > 0 && offsets[i] < offsets[i - 1]) throw parseError(\"packed codebook offsets not ascending\");\r\n }\r\n return {\r\n bytes,\r\n offsets,\r\n count: offsetCount - 1\r\n };\r\n}\r\n\r\n/**\r\n * Rebuild one packed codebook, referenced by library id, into `writer`.\r\n *\r\n * @param {object} library `parseCodebookLibrary` output.\r\n * @param {number} id Codebook id from the setup header.\r\n * @param {object} writer OggPageWriter positioned inside the setup packet.\r\n */\r\nexport function rebuildCodebookById(library, id, writer)\r\n{\r\n if (id < 0 || id >= library.count)\r\n {\r\n throw parseError(`invalid codebook id ${id} for library of ${library.count}`);\r\n }\r\n const start = library.offsets[id];\r\n const size = library.offsets[id + 1] - start;\r\n const reader = new BitReader(library.bytes.subarray(start, start + size));\r\n rebuildCodebook(reader, size, writer);\r\n}\r\n\r\n/**\r\n * Rebuild one packed codebook from `reader` into the standard Vorbis\r\n * codebook encoding on `writer`.\r\n *\r\n * @param {object} reader BitReader at the start of the packed codebook.\r\n * @param {number} size Packed codebook size in bytes (0 skips the size check).\r\n * @param {object} writer OggPageWriter positioned inside the setup packet.\r\n */\r\nexport function rebuildCodebook(reader, size, writer)\r\n{\r\n const dimensions = reader.readBits(4);\r\n const entries = reader.readBits(14);\r\n\r\n writer.writeBits(0x564342, 24);\r\n writer.writeBits(dimensions, 16);\r\n writer.writeBits(entries, 24);\r\n\r\n const ordered = reader.readBits(1);\r\n writer.writeBits(ordered, 1);\r\n if (ordered)\r\n {\r\n const initialLength = reader.readBits(5);\r\n writer.writeBits(initialLength, 5);\r\n\r\n let currentEntry = 0;\r\n while (currentEntry < entries)\r\n {\r\n const bits = ilog(entries - currentEntry);\r\n const number = reader.readBits(bits);\r\n writer.writeBits(number, bits);\r\n currentEntry += number;\r\n }\r\n if (currentEntry > entries) throw parseError(\"codebook current entry out of range\");\r\n }\r\n else\r\n {\r\n const codewordLengthLength = reader.readBits(3);\r\n const sparse = reader.readBits(1);\r\n if (codewordLengthLength === 0 || codewordLengthLength > 5)\r\n {\r\n throw parseError(\"nonsense codeword length\");\r\n }\r\n writer.writeBits(sparse, 1);\r\n\r\n for (let i = 0; i < entries; i++)\r\n {\r\n let present = true;\r\n if (sparse)\r\n {\r\n const presentBit = reader.readBits(1);\r\n writer.writeBits(presentBit, 1);\r\n present = presentBit !== 0;\r\n }\r\n if (present)\r\n {\r\n const codewordLength = reader.readBits(codewordLengthLength);\r\n writer.writeBits(codewordLength, 5);\r\n }\r\n }\r\n }\r\n\r\n const lookupType = reader.readBits(1);\r\n writer.writeBits(lookupType, 4);\r\n if (lookupType === 1)\r\n {\r\n const min = reader.readBits(32);\r\n const max = reader.readBits(32);\r\n const valueLength = reader.readBits(4);\r\n const sequenceFlag = reader.readBits(1);\r\n writer.writeBits(min, 32);\r\n writer.writeBits(max, 32);\r\n writer.writeBits(valueLength, 4);\r\n writer.writeBits(sequenceFlag, 1);\r\n\r\n const quantvals = bookMaptype1Quantvals(entries, dimensions);\r\n for (let i = 0; i < quantvals; i++)\r\n {\r\n writer.writeBits(reader.readBits(valueLength + 1), valueLength + 1);\r\n }\r\n }\r\n else if (lookupType !== 0)\r\n {\r\n throw parseError(`unexpected codebook lookup type ${lookupType}`);\r\n }\r\n\r\n if (size !== 0 && Math.floor(reader.totalBitsRead / 8) + 1 !== size)\r\n {\r\n throw parseError(`codebook size mismatch (expected ${size}, used ${Math.floor(reader.totalBitsRead / 8) + 1})`);\r\n }\r\n}\r\n\r\n/**\r\n * Number of quantized values for a maptype-1 codebook lookup table\r\n * (Vorbis/Tremor `_book_maptype1_quantvals`).\r\n *\r\n * @param {number} entries Codebook entry count.\r\n * @param {number} dimensions Codebook dimensions.\r\n * @returns {number} Quantized value count.\r\n */\r\nexport function bookMaptype1Quantvals(entries, dimensions)\r\n{\r\n if (dimensions === 0) return 0;\r\n const bits = ilog(entries);\r\n let vals = entries >>> Math.floor(((bits - 1) * (dimensions - 1)) / dimensions);\r\n\r\n for (;;)\r\n {\r\n let acc = 1;\r\n let acc1 = 1;\r\n for (let i = 0; i < dimensions; i++)\r\n {\r\n acc *= vals;\r\n acc1 *= vals + 1;\r\n }\r\n if (acc <= entries && acc1 > entries) return vals;\r\n if (acc > entries) vals--;\r\n else vals++;\r\n }\r\n}\r\n\r\nfunction readU32(bytes, offset)\r\n{\r\n return (bytes[offset] | (bytes[offset + 1] << 8) | (bytes[offset + 2] << 16) | (bytes[offset + 3] * 0x1000000)) >>> 0;\r\n}\r\n"],"names":["parseError","message","error","Error","code","parseCodebookLibrary","bytes","length","offsetTableStart","readU32","offsetCount","offsets","Uint32Array","i","count","rebuildCodebookById","library","id","writer","start","size","reader","BitReader","subarray","rebuildCodebook","dimensions","readBits","entries","writeBits","ordered","initialLength","currentEntry","bits","ilog","number","codewordLengthLength","sparse","present","presentBit","codewordLength","lookupType","min","max","valueLength","sequenceFlag","quantvals","bookMaptype1Quantvals","Math","floor","totalBitsRead","vals","acc","acc1","offset"],"mappings":"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"}
1
+ {"version":3,"file":"codebookLibrary.js","sources":["../../../../../../src/resource/formats/wem/core/codebookLibrary.js"],"sourcesContent":["import { BitReader, ilog } from \"./bitStream.js\";\n\n/**\n * Packed Vorbis codebook library handling for Wwise Vorbis repacking.\n *\n * Wwise strips the standard Vorbis codebooks from the setup header and\n * references entries in a shared packed library by 10-bit id. Rebuilding\n * expands each packed codebook back into the standard Vorbis codebook\n * encoding. Behavior mirrors the ww2ogg reference (BSD-licensed, Xiph.org\n * Foundation / Adam Gashlin); this is an original reimplementation.\n */\n\nfunction parseError(message)\n{\n const error = new Error(`wem: ${message}`);\n error.code = \"CJS_FORMAT_PARSE_ERROR\";\n return error;\n}\n\n/**\n * Parse a packed codebook library blob.\n *\n * Layout: codebook data, then a table of u32-le offsets; the last u32 in the\n * file points at the start of the offset table. Codebook `i` spans\n * offsets[i]..offsets[i+1].\n *\n * @param {Uint8Array} bytes Packed codebook library bytes.\n * @returns {object} Parsed library with `count` usable codebooks.\n */\nexport function parseCodebookLibrary(bytes)\n{\n if (bytes.length < 4) throw parseError(\"packed codebook library is truncated\");\n const offsetTableStart = readU32(bytes, bytes.length - 4);\n if (offsetTableStart > bytes.length - 4 || (bytes.length - offsetTableStart) % 4 !== 0)\n {\n throw parseError(\"packed codebook library has an invalid offset table\");\n }\n const offsetCount = (bytes.length - offsetTableStart) / 4;\n const offsets = new Uint32Array(offsetCount);\n for (let i = 0; i < offsetCount; i++)\n {\n offsets[i] = readU32(bytes, offsetTableStart + i * 4);\n if (offsets[i] > offsetTableStart) throw parseError(\"packed codebook offset out of range\");\n if (i > 0 && offsets[i] < offsets[i - 1]) throw parseError(\"packed codebook offsets not ascending\");\n }\n return {\n bytes,\n offsets,\n count: offsetCount - 1\n };\n}\n\n/**\n * Rebuild one packed codebook, referenced by library id, into `writer`.\n *\n * @param {object} library `parseCodebookLibrary` output.\n * @param {number} id Codebook id from the setup header.\n * @param {object} writer OggPageWriter positioned inside the setup packet.\n */\nexport function rebuildCodebookById(library, id, writer)\n{\n if (id < 0 || id >= library.count)\n {\n throw parseError(`invalid codebook id ${id} for library of ${library.count}`);\n }\n const start = library.offsets[id];\n const size = library.offsets[id + 1] - start;\n const reader = new BitReader(library.bytes.subarray(start, start + size));\n rebuildCodebook(reader, size, writer);\n}\n\n/**\n * Rebuild one packed codebook from `reader` into the standard Vorbis\n * codebook encoding on `writer`.\n *\n * @param {object} reader BitReader at the start of the packed codebook.\n * @param {number} size Packed codebook size in bytes (0 skips the size check).\n * @param {object} writer OggPageWriter positioned inside the setup packet.\n */\nexport function rebuildCodebook(reader, size, writer)\n{\n const dimensions = reader.ReadBits(4);\n const entries = reader.ReadBits(14);\n\n writer.writeBits(0x564342, 24);\n writer.writeBits(dimensions, 16);\n writer.writeBits(entries, 24);\n\n const ordered = reader.ReadBits(1);\n writer.writeBits(ordered, 1);\n if (ordered)\n {\n const initialLength = reader.ReadBits(5);\n writer.writeBits(initialLength, 5);\n\n let currentEntry = 0;\n while (currentEntry < entries)\n {\n const bits = ilog(entries - currentEntry);\n const number = reader.ReadBits(bits);\n writer.writeBits(number, bits);\n currentEntry += number;\n }\n if (currentEntry > entries) throw parseError(\"codebook current entry out of range\");\n }\n else\n {\n const codewordLengthLength = reader.ReadBits(3);\n const sparse = reader.ReadBits(1);\n if (codewordLengthLength === 0 || codewordLengthLength > 5)\n {\n throw parseError(\"nonsense codeword length\");\n }\n writer.writeBits(sparse, 1);\n\n for (let i = 0; i < entries; i++)\n {\n let present = true;\n if (sparse)\n {\n const presentBit = reader.ReadBits(1);\n writer.writeBits(presentBit, 1);\n present = presentBit !== 0;\n }\n if (present)\n {\n const codewordLength = reader.ReadBits(codewordLengthLength);\n writer.writeBits(codewordLength, 5);\n }\n }\n }\n\n const lookupType = reader.ReadBits(1);\n writer.writeBits(lookupType, 4);\n if (lookupType === 1)\n {\n const min = reader.ReadBits(32);\n const max = reader.ReadBits(32);\n const valueLength = reader.ReadBits(4);\n const sequenceFlag = reader.ReadBits(1);\n writer.writeBits(min, 32);\n writer.writeBits(max, 32);\n writer.writeBits(valueLength, 4);\n writer.writeBits(sequenceFlag, 1);\n\n const quantvals = bookMaptype1Quantvals(entries, dimensions);\n for (let i = 0; i < quantvals; i++)\n {\n writer.writeBits(reader.ReadBits(valueLength + 1), valueLength + 1);\n }\n }\n else if (lookupType !== 0)\n {\n throw parseError(`unexpected codebook lookup type ${lookupType}`);\n }\n\n if (size !== 0 && Math.floor(reader.totalBitsRead / 8) + 1 !== size)\n {\n throw parseError(`codebook size mismatch (expected ${size}, used ${Math.floor(reader.totalBitsRead / 8) + 1})`);\n }\n}\n\n/**\n * Number of quantized values for a maptype-1 codebook lookup table\n * (Vorbis/Tremor `_book_maptype1_quantvals`).\n *\n * @param {number} entries Codebook entry count.\n * @param {number} dimensions Codebook dimensions.\n * @returns {number} Quantized value count.\n */\nexport function bookMaptype1Quantvals(entries, dimensions)\n{\n if (dimensions === 0) return 0;\n const bits = ilog(entries);\n let vals = entries >>> Math.floor(((bits - 1) * (dimensions - 1)) / dimensions);\n\n for (;;)\n {\n let acc = 1;\n let acc1 = 1;\n for (let i = 0; i < dimensions; i++)\n {\n acc *= vals;\n acc1 *= vals + 1;\n }\n if (acc <= entries && acc1 > entries) return vals;\n if (acc > entries) vals--;\n else vals++;\n }\n}\n\nfunction readU32(bytes, offset)\n{\n return (bytes[offset] | (bytes[offset + 1] << 8) | (bytes[offset + 2] << 16) | (bytes[offset + 3] * 0x1000000)) >>> 0;\n}\n"],"names":["parseError","message","error","Error","code","parseCodebookLibrary","bytes","length","offsetTableStart","readU32","offsetCount","offsets","Uint32Array","i","count","rebuildCodebookById","library","id","writer","start","size","reader","BitReader","subarray","rebuildCodebook","dimensions","ReadBits","entries","writeBits","ordered","initialLength","currentEntry","bits","ilog","number","codewordLengthLength","sparse","present","presentBit","codewordLength","lookupType","min","max","valueLength","sequenceFlag","quantvals","bookMaptype1Quantvals","Math","floor","totalBitsRead","vals","acc","acc1","offset"],"mappings":"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"}
@@ -288,20 +288,6 @@ function readWithValues(input, values = DEFAULT_VALUES) {
288
288
  error.emit = values.emit;
289
289
  throw error;
290
290
  }
291
-
292
- /** Converts a parsed payload into a JSON-safe value for the WEM format reader. */
293
- function toJsonValue(value) {
294
- if (value instanceof Uint8Array) return {
295
- byteLength: value.byteLength
296
- };
297
- if (Array.isArray(value)) return value.map(toJsonValue);
298
- if (value && typeof value === "object") {
299
- const output = {};
300
- for (const [key, entry] of Object.entries(value)) output[key] = toJsonValue(entry);
301
- return output;
302
- }
303
- return value;
304
- }
305
291
  function readU16(bytes, offset, littleEndian) {
306
292
  return littleEndian ? bytes[offset] | bytes[offset + 1] << 8 : bytes[offset] << 8 | bytes[offset + 1];
307
293
  }
@@ -309,5 +295,5 @@ function readU32(bytes, offset, littleEndian) {
309
295
  return littleEndian ? (bytes[offset] | bytes[offset + 1] << 8 | bytes[offset + 2] << 16 | bytes[offset + 3] * 0x1000000) >>> 0 : bytes[offset] * 0x1000000 + (bytes[offset + 1] << 16) + (bytes[offset + 2] << 8) + bytes[offset + 3] >>> 0;
310
296
  }
311
297
 
312
- export { DEFAULT_VALUES, OUTPUT_JSON, OUTPUT_OGG, OUTPUT_PCM, OUTPUT_RAW, OUTPUT_WEM_JSON, WEM_CODEC_NAMES, inspectWEM, inspectWithValues, isWEM, normalizeEmit, normalizeValues, readWithValues, toJsonValue };
298
+ export { DEFAULT_VALUES, OUTPUT_JSON, OUTPUT_OGG, OUTPUT_PCM, OUTPUT_RAW, OUTPUT_WEM_JSON, WEM_CODEC_NAMES, inspectWEM, inspectWithValues, isWEM, normalizeEmit, normalizeValues, readWithValues };
313
299
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sources":["../../../../../../src/resource/formats/wem/core/helpers.js"],"sourcesContent":["import { asUint8Array, readFourCc } from \"#utils/bytes\";\nimport { convertWemToOgg } from \"./wemToOgg.js\";\nimport { decodePtadpcm } from \"./ptadpcm.js\";\n\nexport const OUTPUT_RAW = \"raw\";\nexport const OUTPUT_JSON = \"json\";\nexport const OUTPUT_WEM_JSON = \"wemJson\";\nexport const OUTPUT_OGG = \"ogg\";\nexport const OUTPUT_PCM = \"pcm\";\n\nexport const DEFAULT_VALUES = Object.freeze({\n emit: OUTPUT_RAW,\n inputType: \"wem\",\n source: \"\"\n});\n\n/**\n * Wwise RIFF format tags mapped to codec names.\n *\n * Tag meanings follow the publicly documented behavior of Wwise media as\n * observed by community tooling (ww2ogg, vgmstream, wwiser). Unknown tags are\n * reported as `wwise-format-0x<tag>` rather than rejected.\n */\nexport const WEM_CODEC_NAMES = Object.freeze({\n 0x0001: \"pcm\",\n 0x0002: \"wwise-ima-adpcm\",\n 0x0069: \"wwise-ima-adpcm\",\n 0x0165: \"xma2\",\n 0x0166: \"xma2\",\n 0x3040: \"wwise-opus\",\n 0x3041: \"wwise-opus-nx\",\n 0x3042: \"wwise-opus-wem\",\n 0x8311: \"wwise-ptadpcm\",\n 0xaac0: \"aac\",\n 0xfffe: \"pcm-extensible\",\n 0xffff: \"wwise-vorbis\"\n});\n\n/**\n * Normalizes reader options against their supported defaults for the WEM format\n * reader.\n */\nexport function normalizeValues(base = DEFAULT_VALUES, options = {}, readerName = \"CjsWemFormat\")\n{\n const values = { ...DEFAULT_VALUES, ...(base || {}), ...(options || {}) };\n values.inputType = values.inputType ? String(values.inputType).replace(/^\\./u, \"\").toLowerCase() : \"wem\";\n values.emit = normalizeEmit(values.emit, readerName);\n return values;\n}\n\n/** Normalizes the requested output representation for the WEM format reader. */\nexport function normalizeEmit(emit, readerName)\n{\n if (emit === undefined || emit === null) return OUTPUT_RAW;\n if (emit === OUTPUT_JSON) return OUTPUT_WEM_JSON;\n if ([ OUTPUT_RAW, OUTPUT_WEM_JSON, OUTPUT_OGG, OUTPUT_PCM ].includes(emit)) return emit;\n throw new TypeError(`${readerName}: unknown emit value ${JSON.stringify(emit)}`);\n}\n\n/** Returns a byte view over the supplied binary input for the WEM format reader. */\r/**\n * Test for a Wwise RIFF/RIFX WAVE signature.\n *\n * @param {Uint8Array} bytes Candidate bytes.\n * @returns {boolean} True when a RIFF or RIFX WAVE container is present.\n */\nexport function isWEM(bytes)\n{\n if (bytes.byteLength < 12) return false;\n const container = readFourCc(bytes, 0);\n return (container === \"RIFF\" || container === \"RIFX\") && readFourCc(bytes, 8) === \"WAVE\";\n}\n\n/**\n * Inspect Wwise media bytes without decoding audio data.\n *\n * Reports the chunk map, `fmt ` fields, codec identity, and Vorbis sample\n * count/duration when present. Inspection never throws on unknown chunks or\n * codecs; truncated trailing chunks stop the walk.\n *\n * @param {Uint8Array} bytes Wem bytes.\n * @returns {object} Wem metadata.\n */\nexport function inspectWEM(bytes)\n{\n const littleEndian = readFourCc(bytes, 0) !== \"RIFX\";\n const info = {\n sourceFormat: \"wem\",\n container: readFourCc(bytes, 0),\n littleEndian,\n riffSize: readU32(bytes, 4, littleEndian),\n codec: \"\",\n codecTag: 0,\n channels: 0,\n sampleRate: 0,\n byteRate: 0,\n blockAlign: 0,\n bitsPerSample: 0,\n extraSize: 0,\n sampleCount: 0,\n durationSeconds: 0,\n dataOffset: 0,\n dataBytes: 0,\n vorbis: null,\n chunks: []\n };\n\n let offset = 12;\n let fmtOffset = 0;\n let fmtSize = 0;\n let vorbOffset = 0;\n let vorbSize = 0;\n\n while (offset + 8 <= bytes.byteLength)\n {\n const id = readFourCc(bytes, offset);\n const size = readU32(bytes, offset + 4, littleEndian);\n const dataOffset = offset + 8;\n if (dataOffset + size > bytes.byteLength)\n {\n info.chunks.push({ id, offset, dataOffset, size, truncated: true });\n break;\n }\n info.chunks.push({ id, offset, dataOffset, size });\n\n if (id === \"fmt \" && size >= 16)\n {\n fmtOffset = dataOffset;\n fmtSize = size;\n info.codecTag = readU16(bytes, dataOffset, littleEndian);\n info.channels = readU16(bytes, dataOffset + 2, littleEndian);\n info.sampleRate = readU32(bytes, dataOffset + 4, littleEndian);\n info.byteRate = readU32(bytes, dataOffset + 8, littleEndian);\n info.blockAlign = readU16(bytes, dataOffset + 12, littleEndian);\n info.bitsPerSample = readU16(bytes, dataOffset + 14, littleEndian);\n if (size >= 18) info.extraSize = readU16(bytes, dataOffset + 16, littleEndian);\n info.codec = WEM_CODEC_NAMES[info.codecTag] || `wwise-format-0x${info.codecTag.toString(16).padStart(4, \"0\")}`;\n }\n if (id === \"vorb\")\n {\n vorbOffset = dataOffset;\n vorbSize = size;\n }\n if (id === \"data\")\n {\n info.dataOffset = dataOffset;\n info.dataBytes = size;\n }\n\n offset = dataOffset + size + (size & 1);\n }\n\n if (info.codec === \"wwise-vorbis\")\n {\n // Wwise Vorbis stores its sample count in a separate \"vorb\" chunk, or\n // inline in \"fmt \" at +0x18 when the fmt chunk is 0x42 bytes.\n if (!vorbOffset && fmtSize === 0x42)\n {\n vorbOffset = fmtOffset + 0x18;\n vorbSize = fmtSize - 0x18;\n }\n if (vorbOffset && vorbOffset + 4 <= bytes.byteLength)\n {\n info.sampleCount = readU32(bytes, vorbOffset, littleEndian);\n info.vorbis = {\n vorbOffset,\n vorbSize,\n inline: fmtSize === 0x42,\n sampleCount: info.sampleCount\n };\n }\n }\n\n if (info.sampleCount && info.sampleRate)\n {\n info.durationSeconds = info.sampleCount / info.sampleRate;\n }\n else if ((info.codec === \"pcm\" || info.codec === \"pcm-extensible\") && info.byteRate)\n {\n info.durationSeconds = info.dataBytes / info.byteRate;\n }\n\n return info;\n}\n\n/** Inspects input using normalized format options for the WEM format reader. */\nexport function inspectWithValues(input, values = DEFAULT_VALUES)\n{\n const bytes = asUint8Array(input, \"Wem input\");\n if (!isWEM(bytes))\n {\n throw new TypeError(\"CjsWemFormat: expected a RIFF/RIFX WAVE (wem) container\");\n }\n return {\n payloadType: \"audio\",\n mediaTypes: [ \"audio\" ],\n byteLength: bytes.byteLength,\n source: values.source || \"buffer\",\n ...inspectWEM(bytes)\n };\n}\n\n/**\n * Reports whether input is supported under normalized format options for the WEM\n * format reader.\n */\nexport function probeSupportWithValues(input, values = DEFAULT_VALUES)\n{\n try\n {\n const metadata = inspectWithValues(input, values);\n const oggSupport = getOggSupport(metadata);\n const pcmSupport = getPcmSupport(metadata);\n return {\n format: \"wem\",\n source: values.source || \"buffer\",\n supported: metadata.codec ? \"partial\" : \"none\",\n confidence: metadata.codec ? 1 : 0.5,\n preferredOutput: oggSupport.supported ? OUTPUT_OGG : (pcmSupport.supported ? OUTPUT_PCM : \"raw\"),\n reason: metadata.codec\n ? (oggSupport.supported\n ? \"Wwise Vorbis recognized; repacks losslessly to Ogg Vorbis.\"\n : (metadata.codec === \"wwise-vorbis\"\n ? oggSupport.reason\n : \"Wwise media container recognized; payloads pass through undecoded.\"))\n : \"RIFF/RIFX container recognized but no fmt chunk was found.\",\n metadata,\n variants: [\n {\n kind: \"raw\",\n payloadType: \"raw\",\n codec: metadata.codec || \"unknown\",\n mimeType: \"application/octet-stream\",\n supported: true,\n },\n {\n kind: OUTPUT_OGG,\n payloadType: \"raw\",\n codec: \"vorbis\",\n mimeType: \"audio/ogg\",\n supported: oggSupport.supported,\n reason: oggSupport.supported ? \"\" : oggSupport.reason\n },\n {\n kind: OUTPUT_PCM,\n payloadType: OUTPUT_PCM,\n codec: \"float32\",\n supported: pcmSupport.supported,\n reason: pcmSupport.supported ? \"\" : pcmSupport.reason\n }\n ],\n warnings: [],\n errors: []\n };\n }\n catch (error)\n {\n return {\n format: \"wem\",\n source: values.source || \"buffer\",\n supported: \"none\",\n confidence: 0,\n preferredOutput: \"\",\n reason: error.message,\n metadata: null,\n variants: [],\n warnings: [],\n errors: [ error.message ]\n };\n }\n}\n\n// PCM decode routing by codec: PTADPCM decodes through its own module;\n// uncompressed 16-bit PCM deinterleaves directly. Compressed codecs with\n// their own containers (Vorbis, Opus, XMA) are not decoded here - Vorbis\n// repacks to Ogg instead (OUTPUT_OGG).\nfunction decodeToPcm(bytes, metadata)\n{\n if (metadata.codec === \"wwise-ptadpcm\")\n {\n return decodePtadpcm(bytes, metadata);\n }\n if ((metadata.codec === \"pcm\" || metadata.codec === \"pcm-extensible\") && metadata.bitsPerSample === 16)\n {\n const channels = Math.max(1, metadata.channels);\n const sampleCount = Math.floor(metadata.dataBytes / (2 * channels));\n const channelData = [];\n for (let channel = 0; channel < channels; channel++)\n {\n channelData.push(new Float32Array(sampleCount));\n }\n for (let i = 0; i < sampleCount; i++)\n {\n for (let channel = 0; channel < channels; channel++)\n {\n const at = metadata.dataOffset + (i * channels + channel) * 2;\n const raw = bytes[at] | (bytes[at + 1] << 8);\n channelData[channel][i] = (raw >= 0x8000 ? raw - 0x10000 : raw) / 32768;\n }\n }\n return { channelData, sampleCount, sampleRate: metadata.sampleRate, channels };\n }\n const error = new Error(`wem: pcm decode is not supported for codec ${metadata.codec || \"unknown\"}`);\n error.code = \"CJS_FORMAT_OUTPUT_NOT_SUPPORTED\";\n error.sourceFormat = \"wem\";\n throw error;\n}\n\nfunction getPcmSupport(metadata)\n{\n if (metadata.codec === \"wwise-ptadpcm\") return { supported: true, reason: \"\" };\n if ((metadata.codec === \"pcm\" || metadata.codec === \"pcm-extensible\") && metadata.bitsPerSample === 16)\n {\n return { supported: true, reason: \"\" };\n }\n return {\n supported: false,\n reason: \"PCM decode covers PTADPCM and 16-bit PCM; use the ogg emit for Wwise Vorbis.\"\n };\n}\n\nfunction getOggSupport(metadata)\n{\n if (metadata.codec !== \"wwise-vorbis\")\n {\n return {\n supported: false,\n reason: \"Only Wwise Vorbis media can be repacked to Ogg.\"\n };\n }\n\n const vorbSize = metadata.vorbis?.vorbSize;\n if (vorbSize === 0x28 || vorbSize === 0x2c)\n {\n return {\n supported: false,\n reason: \"Wwise Vorbis recognized, but old header-triad Wwise Vorbis is not supported by this repacker.\"\n };\n }\n\n if (!metadata.vorbis)\n {\n return {\n supported: false,\n reason: \"Wwise Vorbis recognized, but no Vorbis layout metadata was found.\"\n };\n }\n\n return { supported: true, reason: \"\" };\n}\n\n/** Reads input using normalized format options for the WEM format reader. */\nexport function readWithValues(input, values = DEFAULT_VALUES)\n{\n const bytes = asUint8Array(input, \"Wem input\");\n const metadata = inspectWithValues(bytes, values);\n if (values.emit === OUTPUT_WEM_JSON) return metadata;\n if (values.emit === OUTPUT_OGG)\n {\n if (metadata.codec !== \"wwise-vorbis\")\n {\n const error = new Error(`wem: only Wwise Vorbis can be repacked to Ogg (found ${metadata.codec || \"unknown\"})`);\n error.code = \"CJS_FORMAT_OUTPUT_NOT_SUPPORTED\";\n error.sourceFormat = \"wem\";\n throw error;\n }\n const ogg = convertWemToOgg(bytes, { codebooks: values.codebooks });\n return {\n payloadType: \"raw\",\n sourceFormat: \"wem\",\n outputFormat: \"ogg\",\n codec: \"vorbis\",\n mimeType: \"audio/ogg\",\n sampleCount: ogg.sampleCount,\n sampleRate: ogg.sampleRate,\n channels: ogg.channels,\n durationSeconds: ogg.durationSeconds,\n loop: ogg.loop,\n pageCount: ogg.pageCount,\n metadata,\n bytes: ogg.bytes\n };\n }\n if (values.emit === OUTPUT_PCM)\n {\n const decoded = decodeToPcm(bytes, metadata);\n return {\n payloadType: OUTPUT_PCM,\n sourceFormat: \"wem\",\n outputFormat: OUTPUT_PCM,\n codec: \"float32\",\n sourceCodec: metadata.codec,\n sampleCount: decoded.sampleCount,\n sampleRate: decoded.sampleRate,\n channels: decoded.channels,\n durationSeconds: decoded.sampleRate ? decoded.sampleCount / decoded.sampleRate : 0,\n channelData: decoded.channelData,\n metadata\n };\n }\n if (values.emit === OUTPUT_RAW)\n {\n return {\n payloadType: \"raw\",\n sourceFormat: \"wem\",\n codec: metadata.codec,\n mimeType: \"application/octet-stream\",\n metadata,\n bytes\n };\n }\n\n const error = new Error(`wem: emit \"${values.emit}\" is not implemented yet`);\n error.code = \"CJS_FORMAT_OUTPUT_NOT_IMPLEMENTED\";\n error.sourceFormat = \"wem\";\n error.emit = values.emit;\n throw error;\n}\n\n/** Converts a parsed payload into a JSON-safe value for the WEM format reader. */\nexport function toJsonValue(value)\n{\n if (value instanceof Uint8Array) return { byteLength: value.byteLength };\n if (Array.isArray(value)) return value.map(toJsonValue);\n if (value && typeof value === \"object\")\n {\n const output = {};\n for (const [ key, entry ] of Object.entries(value)) output[key] = toJsonValue(entry);\n return output;\n }\n return value;\n}\n\n\nfunction readU16(bytes, offset, littleEndian)\n{\n return littleEndian\n ? bytes[offset] | (bytes[offset + 1] << 8)\n : (bytes[offset] << 8) | bytes[offset + 1];\n}\n\nfunction readU32(bytes, offset, littleEndian)\n{\n return littleEndian\n ? (bytes[offset] | (bytes[offset + 1] << 8) | (bytes[offset + 2] << 16) | (bytes[offset + 3] * 0x1000000)) >>> 0\n : ((bytes[offset] * 0x1000000) + (bytes[offset + 1] << 16) + (bytes[offset + 2] << 8) + bytes[offset + 3]) >>> 0;\n}\n\n"],"names":["OUTPUT_RAW","OUTPUT_JSON","OUTPUT_WEM_JSON","OUTPUT_OGG","OUTPUT_PCM","DEFAULT_VALUES","Object","freeze","emit","inputType","source","WEM_CODEC_NAMES","normalizeValues","base","options","readerName","values","String","replace","toLowerCase","normalizeEmit","undefined","includes","TypeError","JSON","stringify","isWEM","bytes","byteLength","container","readFourCc","inspectWEM","littleEndian","info","sourceFormat","riffSize","readU32","codec","codecTag","channels","sampleRate","byteRate","blockAlign","bitsPerSample","extraSize","sampleCount","durationSeconds","dataOffset","dataBytes","vorbis","chunks","offset","fmtOffset","fmtSize","vorbOffset","vorbSize","id","size","push","truncated","readU16","toString","padStart","inline","inspectWithValues","input","asUint8Array","payloadType","mediaTypes","decodeToPcm","metadata","decodePtadpcm","Math","max","floor","channelData","channel","Float32Array","i","at","raw","error","Error","code","readWithValues","ogg","convertWemToOgg","codebooks","outputFormat","mimeType","loop","pageCount","decoded","sourceCodec","toJsonValue","value","Uint8Array","Array","isArray","map","output","key","entry","entries"],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sources":["../../../../../../src/resource/formats/wem/core/helpers.js"],"sourcesContent":["import { toJsonWithByteSummary as toJsonValue } from \"../../../format/jsonPolicies.js\";\nimport { asUint8Array, readFourCc } from \"#utils/bytes\";\nimport { convertWemToOgg } from \"./wemToOgg.js\";\nimport { decodePtadpcm } from \"./ptadpcm.js\";\n\nexport const OUTPUT_RAW = \"raw\";\nexport const OUTPUT_JSON = \"json\";\nexport const OUTPUT_WEM_JSON = \"wemJson\";\nexport const OUTPUT_OGG = \"ogg\";\nexport const OUTPUT_PCM = \"pcm\";\n\nexport const DEFAULT_VALUES = Object.freeze({\n emit: OUTPUT_RAW,\n inputType: \"wem\",\n source: \"\"\n});\n\n/**\n * Wwise RIFF format tags mapped to codec names.\n *\n * Tag meanings follow the publicly documented behavior of Wwise media as\n * observed by community tooling (ww2ogg, vgmstream, wwiser). Unknown tags are\n * reported as `wwise-format-0x<tag>` rather than rejected.\n */\nexport const WEM_CODEC_NAMES = Object.freeze({\n 0x0001: \"pcm\",\n 0x0002: \"wwise-ima-adpcm\",\n 0x0069: \"wwise-ima-adpcm\",\n 0x0165: \"xma2\",\n 0x0166: \"xma2\",\n 0x3040: \"wwise-opus\",\n 0x3041: \"wwise-opus-nx\",\n 0x3042: \"wwise-opus-wem\",\n 0x8311: \"wwise-ptadpcm\",\n 0xaac0: \"aac\",\n 0xfffe: \"pcm-extensible\",\n 0xffff: \"wwise-vorbis\"\n});\n\n/**\n * Normalizes reader options against their supported defaults for the WEM format\n * reader.\n */\nexport function normalizeValues(base = DEFAULT_VALUES, options = {}, readerName = \"CjsWemFormat\")\n{\n const values = { ...DEFAULT_VALUES, ...(base || {}), ...(options || {}) };\n values.inputType = values.inputType ? String(values.inputType).replace(/^\\./u, \"\").toLowerCase() : \"wem\";\n values.emit = normalizeEmit(values.emit, readerName);\n return values;\n}\n\n/** Normalizes the requested output representation for the WEM format reader. */\nexport function normalizeEmit(emit, readerName)\n{\n if (emit === undefined || emit === null) return OUTPUT_RAW;\n if (emit === OUTPUT_JSON) return OUTPUT_WEM_JSON;\n if ([ OUTPUT_RAW, OUTPUT_WEM_JSON, OUTPUT_OGG, OUTPUT_PCM ].includes(emit)) return emit;\n throw new TypeError(`${readerName}: unknown emit value ${JSON.stringify(emit)}`);\n}\n\n/** Returns a byte view over the supplied binary input for the WEM format reader. */\n/**\n * Test for a Wwise RIFF/RIFX WAVE signature.\n *\n * @param {Uint8Array} bytes Candidate bytes.\n * @returns {boolean} True when a RIFF or RIFX WAVE container is present.\n */\nexport function isWEM(bytes)\n{\n if (bytes.byteLength < 12) return false;\n const container = readFourCc(bytes, 0);\n return (container === \"RIFF\" || container === \"RIFX\") && readFourCc(bytes, 8) === \"WAVE\";\n}\n\n/**\n * Inspect Wwise media bytes without decoding audio data.\n *\n * Reports the chunk map, `fmt ` fields, codec identity, and Vorbis sample\n * count/duration when present. Inspection never throws on unknown chunks or\n * codecs; truncated trailing chunks stop the walk.\n *\n * @param {Uint8Array} bytes Wem bytes.\n * @returns {object} Wem metadata.\n */\nexport function inspectWEM(bytes)\n{\n const littleEndian = readFourCc(bytes, 0) !== \"RIFX\";\n const info = {\n sourceFormat: \"wem\",\n container: readFourCc(bytes, 0),\n littleEndian,\n riffSize: readU32(bytes, 4, littleEndian),\n codec: \"\",\n codecTag: 0,\n channels: 0,\n sampleRate: 0,\n byteRate: 0,\n blockAlign: 0,\n bitsPerSample: 0,\n extraSize: 0,\n sampleCount: 0,\n durationSeconds: 0,\n dataOffset: 0,\n dataBytes: 0,\n vorbis: null,\n chunks: []\n };\n\n let offset = 12;\n let fmtOffset = 0;\n let fmtSize = 0;\n let vorbOffset = 0;\n let vorbSize = 0;\n\n while (offset + 8 <= bytes.byteLength)\n {\n const id = readFourCc(bytes, offset);\n const size = readU32(bytes, offset + 4, littleEndian);\n const dataOffset = offset + 8;\n if (dataOffset + size > bytes.byteLength)\n {\n info.chunks.push({ id, offset, dataOffset, size, truncated: true });\n break;\n }\n info.chunks.push({ id, offset, dataOffset, size });\n\n if (id === \"fmt \" && size >= 16)\n {\n fmtOffset = dataOffset;\n fmtSize = size;\n info.codecTag = readU16(bytes, dataOffset, littleEndian);\n info.channels = readU16(bytes, dataOffset + 2, littleEndian);\n info.sampleRate = readU32(bytes, dataOffset + 4, littleEndian);\n info.byteRate = readU32(bytes, dataOffset + 8, littleEndian);\n info.blockAlign = readU16(bytes, dataOffset + 12, littleEndian);\n info.bitsPerSample = readU16(bytes, dataOffset + 14, littleEndian);\n if (size >= 18) info.extraSize = readU16(bytes, dataOffset + 16, littleEndian);\n info.codec = WEM_CODEC_NAMES[info.codecTag] || `wwise-format-0x${info.codecTag.toString(16).padStart(4, \"0\")}`;\n }\n if (id === \"vorb\")\n {\n vorbOffset = dataOffset;\n vorbSize = size;\n }\n if (id === \"data\")\n {\n info.dataOffset = dataOffset;\n info.dataBytes = size;\n }\n\n offset = dataOffset + size + (size & 1);\n }\n\n if (info.codec === \"wwise-vorbis\")\n {\n // Wwise Vorbis stores its sample count in a separate \"vorb\" chunk, or\n // inline in \"fmt \" at +0x18 when the fmt chunk is 0x42 bytes.\n if (!vorbOffset && fmtSize === 0x42)\n {\n vorbOffset = fmtOffset + 0x18;\n vorbSize = fmtSize - 0x18;\n }\n if (vorbOffset && vorbOffset + 4 <= bytes.byteLength)\n {\n info.sampleCount = readU32(bytes, vorbOffset, littleEndian);\n info.vorbis = {\n vorbOffset,\n vorbSize,\n inline: fmtSize === 0x42,\n sampleCount: info.sampleCount\n };\n }\n }\n\n if (info.sampleCount && info.sampleRate)\n {\n info.durationSeconds = info.sampleCount / info.sampleRate;\n }\n else if ((info.codec === \"pcm\" || info.codec === \"pcm-extensible\") && info.byteRate)\n {\n info.durationSeconds = info.dataBytes / info.byteRate;\n }\n\n return info;\n}\n\n/** Inspects input using normalized format options for the WEM format reader. */\nexport function inspectWithValues(input, values = DEFAULT_VALUES)\n{\n const bytes = asUint8Array(input, \"Wem input\");\n if (!isWEM(bytes))\n {\n throw new TypeError(\"CjsWemFormat: expected a RIFF/RIFX WAVE (wem) container\");\n }\n return {\n payloadType: \"audio\",\n mediaTypes: [ \"audio\" ],\n byteLength: bytes.byteLength,\n source: values.source || \"buffer\",\n ...inspectWEM(bytes)\n };\n}\n\n/**\n * Reports whether input is supported under normalized format options for the WEM\n * format reader.\n */\nexport function probeSupportWithValues(input, values = DEFAULT_VALUES)\n{\n try\n {\n const metadata = inspectWithValues(input, values);\n const oggSupport = getOggSupport(metadata);\n const pcmSupport = getPcmSupport(metadata);\n return {\n format: \"wem\",\n source: values.source || \"buffer\",\n supported: metadata.codec ? \"partial\" : \"none\",\n confidence: metadata.codec ? 1 : 0.5,\n preferredOutput: oggSupport.supported ? OUTPUT_OGG : (pcmSupport.supported ? OUTPUT_PCM : \"raw\"),\n reason: metadata.codec\n ? (oggSupport.supported\n ? \"Wwise Vorbis recognized; repacks losslessly to Ogg Vorbis.\"\n : (metadata.codec === \"wwise-vorbis\"\n ? oggSupport.reason\n : \"Wwise media container recognized; payloads pass through undecoded.\"))\n : \"RIFF/RIFX container recognized but no fmt chunk was found.\",\n metadata,\n variants: [\n {\n kind: \"raw\",\n payloadType: \"raw\",\n codec: metadata.codec || \"unknown\",\n mimeType: \"application/octet-stream\",\n supported: true,\n },\n {\n kind: OUTPUT_OGG,\n payloadType: \"raw\",\n codec: \"vorbis\",\n mimeType: \"audio/ogg\",\n supported: oggSupport.supported,\n reason: oggSupport.supported ? \"\" : oggSupport.reason\n },\n {\n kind: OUTPUT_PCM,\n payloadType: OUTPUT_PCM,\n codec: \"float32\",\n supported: pcmSupport.supported,\n reason: pcmSupport.supported ? \"\" : pcmSupport.reason\n }\n ],\n warnings: [],\n errors: []\n };\n }\n catch (error)\n {\n return {\n format: \"wem\",\n source: values.source || \"buffer\",\n supported: \"none\",\n confidence: 0,\n preferredOutput: \"\",\n reason: error.message,\n metadata: null,\n variants: [],\n warnings: [],\n errors: [ error.message ]\n };\n }\n}\n\n// PCM decode routing by codec: PTADPCM decodes through its own module;\n// uncompressed 16-bit PCM deinterleaves directly. Compressed codecs with\n// their own containers (Vorbis, Opus, XMA) are not decoded here - Vorbis\n// repacks to Ogg instead (OUTPUT_OGG).\nfunction decodeToPcm(bytes, metadata)\n{\n if (metadata.codec === \"wwise-ptadpcm\")\n {\n return decodePtadpcm(bytes, metadata);\n }\n if ((metadata.codec === \"pcm\" || metadata.codec === \"pcm-extensible\") && metadata.bitsPerSample === 16)\n {\n const channels = Math.max(1, metadata.channels);\n const sampleCount = Math.floor(metadata.dataBytes / (2 * channels));\n const channelData = [];\n for (let channel = 0; channel < channels; channel++)\n {\n channelData.push(new Float32Array(sampleCount));\n }\n for (let i = 0; i < sampleCount; i++)\n {\n for (let channel = 0; channel < channels; channel++)\n {\n const at = metadata.dataOffset + (i * channels + channel) * 2;\n const raw = bytes[at] | (bytes[at + 1] << 8);\n channelData[channel][i] = (raw >= 0x8000 ? raw - 0x10000 : raw) / 32768;\n }\n }\n return { channelData, sampleCount, sampleRate: metadata.sampleRate, channels };\n }\n const error = new Error(`wem: pcm decode is not supported for codec ${metadata.codec || \"unknown\"}`);\n error.code = \"CJS_FORMAT_OUTPUT_NOT_SUPPORTED\";\n error.sourceFormat = \"wem\";\n throw error;\n}\n\nfunction getPcmSupport(metadata)\n{\n if (metadata.codec === \"wwise-ptadpcm\") return { supported: true, reason: \"\" };\n if ((metadata.codec === \"pcm\" || metadata.codec === \"pcm-extensible\") && metadata.bitsPerSample === 16)\n {\n return { supported: true, reason: \"\" };\n }\n return {\n supported: false,\n reason: \"PCM decode covers PTADPCM and 16-bit PCM; use the ogg emit for Wwise Vorbis.\"\n };\n}\n\nfunction getOggSupport(metadata)\n{\n if (metadata.codec !== \"wwise-vorbis\")\n {\n return {\n supported: false,\n reason: \"Only Wwise Vorbis media can be repacked to Ogg.\"\n };\n }\n\n const vorbSize = metadata.vorbis?.vorbSize;\n if (vorbSize === 0x28 || vorbSize === 0x2c)\n {\n return {\n supported: false,\n reason: \"Wwise Vorbis recognized, but old header-triad Wwise Vorbis is not supported by this repacker.\"\n };\n }\n\n if (!metadata.vorbis)\n {\n return {\n supported: false,\n reason: \"Wwise Vorbis recognized, but no Vorbis layout metadata was found.\"\n };\n }\n\n return { supported: true, reason: \"\" };\n}\n\n/** Reads input using normalized format options for the WEM format reader. */\nexport function readWithValues(input, values = DEFAULT_VALUES)\n{\n const bytes = asUint8Array(input, \"Wem input\");\n const metadata = inspectWithValues(bytes, values);\n if (values.emit === OUTPUT_WEM_JSON) return metadata;\n if (values.emit === OUTPUT_OGG)\n {\n if (metadata.codec !== \"wwise-vorbis\")\n {\n const error = new Error(`wem: only Wwise Vorbis can be repacked to Ogg (found ${metadata.codec || \"unknown\"})`);\n error.code = \"CJS_FORMAT_OUTPUT_NOT_SUPPORTED\";\n error.sourceFormat = \"wem\";\n throw error;\n }\n const ogg = convertWemToOgg(bytes, { codebooks: values.codebooks });\n return {\n payloadType: \"raw\",\n sourceFormat: \"wem\",\n outputFormat: \"ogg\",\n codec: \"vorbis\",\n mimeType: \"audio/ogg\",\n sampleCount: ogg.sampleCount,\n sampleRate: ogg.sampleRate,\n channels: ogg.channels,\n durationSeconds: ogg.durationSeconds,\n loop: ogg.loop,\n pageCount: ogg.pageCount,\n metadata,\n bytes: ogg.bytes\n };\n }\n if (values.emit === OUTPUT_PCM)\n {\n const decoded = decodeToPcm(bytes, metadata);\n return {\n payloadType: OUTPUT_PCM,\n sourceFormat: \"wem\",\n outputFormat: OUTPUT_PCM,\n codec: \"float32\",\n sourceCodec: metadata.codec,\n sampleCount: decoded.sampleCount,\n sampleRate: decoded.sampleRate,\n channels: decoded.channels,\n durationSeconds: decoded.sampleRate ? decoded.sampleCount / decoded.sampleRate : 0,\n channelData: decoded.channelData,\n metadata\n };\n }\n if (values.emit === OUTPUT_RAW)\n {\n return {\n payloadType: \"raw\",\n sourceFormat: \"wem\",\n codec: metadata.codec,\n mimeType: \"application/octet-stream\",\n metadata,\n bytes\n };\n }\n\n const error = new Error(`wem: emit \"${values.emit}\" is not implemented yet`);\n error.code = \"CJS_FORMAT_OUTPUT_NOT_IMPLEMENTED\";\n error.sourceFormat = \"wem\";\n error.emit = values.emit;\n throw error;\n}\n\n/** Converts a parsed payload into a JSON-safe value for the WEM format reader. */\n/** The shared JSON policy for this reader, under the name its callers use. */\nexport { toJsonValue };\n\n\nfunction readU16(bytes, offset, littleEndian)\n{\n return littleEndian\n ? bytes[offset] | (bytes[offset + 1] << 8)\n : (bytes[offset] << 8) | bytes[offset + 1];\n}\n\nfunction readU32(bytes, offset, littleEndian)\n{\n return littleEndian\n ? (bytes[offset] | (bytes[offset + 1] << 8) | (bytes[offset + 2] << 16) | (bytes[offset + 3] * 0x1000000)) >>> 0\n : ((bytes[offset] * 0x1000000) + (bytes[offset + 1] << 16) + (bytes[offset + 2] << 8) + bytes[offset + 3]) >>> 0;\n}\n\n"],"names":["OUTPUT_RAW","OUTPUT_JSON","OUTPUT_WEM_JSON","OUTPUT_OGG","OUTPUT_PCM","DEFAULT_VALUES","Object","freeze","emit","inputType","source","WEM_CODEC_NAMES","normalizeValues","base","options","readerName","values","String","replace","toLowerCase","normalizeEmit","undefined","includes","TypeError","JSON","stringify","isWEM","bytes","byteLength","container","readFourCc","inspectWEM","littleEndian","info","sourceFormat","riffSize","readU32","codec","codecTag","channels","sampleRate","byteRate","blockAlign","bitsPerSample","extraSize","sampleCount","durationSeconds","dataOffset","dataBytes","vorbis","chunks","offset","fmtOffset","fmtSize","vorbOffset","vorbSize","id","size","push","truncated","readU16","toString","padStart","inline","inspectWithValues","input","asUint8Array","payloadType","mediaTypes","decodeToPcm","metadata","decodePtadpcm","Math","max","floor","channelData","channel","Float32Array","i","at","raw","error","Error","code","readWithValues","ogg","convertWemToOgg","codebooks","outputFormat","mimeType","loop","pageCount","decoded","sourceCodec"],"mappings":"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"}
@@ -1,18 +1,18 @@
1
1
  import { readU16LE, readU16BE, readU32LE, readU32BE } from '#utils/bytes';
2
- import { OggPageWriter, BitReader, ilog } from './bitStream.js';
2
+ import { BitReader, OggPageWriter, ilog } from './bitStream.js';
3
3
  import { parseCodebookLibrary, rebuildCodebookById } from './codebookLibrary.js';
4
4
  import { getPackedCodebooksAotuv603 } from './packedCodebooksAotuv603.js';
5
5
 
6
- /**
7
- * Wwise Vorbis (.wem) to standard Ogg Vorbis repacker.
8
- *
9
- * This is a lossless container transform: the identification/comment/setup
10
- * headers are regenerated (setup codebooks expanded from the packed aoTuV
11
- * 6.03 library), modified audio packets get their type/window bits restored,
12
- * and packets are paginated with correct granule positions computed from the
13
- * mode block flags — so no separate revorb pass is needed. No audio is
14
- * decoded or re-encoded. Algorithm behavior follows the ww2ogg reference
15
- * (BSD-licensed) as an original reimplementation.
6
+ /**
7
+ * Wwise Vorbis (.wem) to standard Ogg Vorbis repacker.
8
+ *
9
+ * This is a lossless container transform: the identification/comment/setup
10
+ * headers are regenerated (setup codebooks expanded from the packed aoTuV
11
+ * 6.03 library), modified audio packets get their type/window bits restored,
12
+ * and packets are paginated with correct granule positions computed from the
13
+ * mode block flags — so no separate revorb pass is needed. No audio is
14
+ * decoded or re-encoded. Algorithm behavior follows the ww2ogg reference
15
+ * (BSD-licensed) as an original reimplementation.
16
16
  */
17
17
 
18
18
  const VENDOR = "converted from Audiokinetic Wwise by @carbonenginejs/runtime/resource";
@@ -27,11 +27,11 @@ function notSupported(message) {
27
27
  return error;
28
28
  }
29
29
 
30
- /**
31
- * Parse the Wwise Vorbis stream layout needed for repacking.
32
- *
33
- * @param {Uint8Array} bytes Wem bytes.
34
- * @returns {object} Stream layout, vorb fields, and loop info.
30
+ /**
31
+ * Parse the Wwise Vorbis stream layout needed for repacking.
32
+ *
33
+ * @param {Uint8Array} bytes Wem bytes.
34
+ * @returns {object} Stream layout, vorb fields, and loop info.
35
35
  */
36
36
  function parseWemVorbisLayout(bytes) {
37
37
  if (bytes.length < 12) throw parseError("missing RIFF");
@@ -197,11 +197,11 @@ function generateHeaders(bytes, layout, library, writer) {
197
197
  const setupHeader = readPacketHeader(bytes, layout.dataOffset + layout.setupPacketOffset, layout);
198
198
  if (setupHeader.granule !== 0) throw parseError("setup packet granule != 0");
199
199
  const reader = new BitReader(bytes, setupHeader.payloadOffset);
200
- const codebookCountLess1 = reader.readBits(8);
200
+ const codebookCountLess1 = reader.ReadBits(8);
201
201
  const codebookCount = codebookCountLess1 + 1;
202
202
  writer.writeBits(codebookCountLess1, 8);
203
203
  for (let i = 0; i < codebookCount; i++) {
204
- const codebookId = reader.readBits(10);
204
+ const codebookId = reader.ReadBits(10);
205
205
  rebuildCodebookById(library, codebookId, writer);
206
206
  }
207
207
 
@@ -210,64 +210,64 @@ function generateHeaders(bytes, layout, library, writer) {
210
210
  writer.writeBits(0, 16);
211
211
 
212
212
  // floors
213
- const floorCountLess1 = reader.readBits(6);
213
+ const floorCountLess1 = reader.ReadBits(6);
214
214
  const floorCount = floorCountLess1 + 1;
215
215
  writer.writeBits(floorCountLess1, 6);
216
216
  for (let i = 0; i < floorCount; i++) {
217
217
  writer.writeBits(1, 16);
218
- const floor1Partitions = reader.readBits(5);
218
+ const floor1Partitions = reader.ReadBits(5);
219
219
  writer.writeBits(floor1Partitions, 5);
220
220
  const partitionClassList = new Array(floor1Partitions);
221
221
  let maximumClass = 0;
222
222
  for (let j = 0; j < floor1Partitions; j++) {
223
- const partitionClass = reader.readBits(4);
223
+ const partitionClass = reader.ReadBits(4);
224
224
  writer.writeBits(partitionClass, 4);
225
225
  partitionClassList[j] = partitionClass;
226
226
  if (partitionClass > maximumClass) maximumClass = partitionClass;
227
227
  }
228
228
  const classDimensionsList = new Array(maximumClass + 1);
229
229
  for (let j = 0; j <= maximumClass; j++) {
230
- const classDimensionsLess1 = reader.readBits(3);
230
+ const classDimensionsLess1 = reader.ReadBits(3);
231
231
  writer.writeBits(classDimensionsLess1, 3);
232
232
  classDimensionsList[j] = classDimensionsLess1 + 1;
233
- const classSubclasses = reader.readBits(2);
233
+ const classSubclasses = reader.ReadBits(2);
234
234
  writer.writeBits(classSubclasses, 2);
235
235
  if (classSubclasses !== 0) {
236
- const masterbook = reader.readBits(8);
236
+ const masterbook = reader.ReadBits(8);
237
237
  writer.writeBits(masterbook, 8);
238
238
  if (masterbook >= codebookCount) throw parseError("invalid floor1 masterbook");
239
239
  }
240
240
  for (let k = 0; k < 1 << classSubclasses; k++) {
241
- const subclassBookPlus1 = reader.readBits(8);
241
+ const subclassBookPlus1 = reader.ReadBits(8);
242
242
  writer.writeBits(subclassBookPlus1, 8);
243
243
  if (subclassBookPlus1 - 1 >= 0 && subclassBookPlus1 - 1 >= codebookCount) {
244
244
  throw parseError("invalid floor1 subclass book");
245
245
  }
246
246
  }
247
247
  }
248
- writer.writeBits(reader.readBits(2), 2);
249
- const rangebits = reader.readBits(4);
248
+ writer.writeBits(reader.ReadBits(2), 2);
249
+ const rangebits = reader.ReadBits(4);
250
250
  writer.writeBits(rangebits, 4);
251
251
  for (let j = 0; j < floor1Partitions; j++) {
252
252
  for (let k = 0; k < classDimensionsList[partitionClassList[j]]; k++) {
253
- writer.writeBits(reader.readBits(rangebits), rangebits);
253
+ writer.writeBits(reader.ReadBits(rangebits), rangebits);
254
254
  }
255
255
  }
256
256
  }
257
257
 
258
258
  // residues
259
- const residueCountLess1 = reader.readBits(6);
259
+ const residueCountLess1 = reader.ReadBits(6);
260
260
  const residueCount = residueCountLess1 + 1;
261
261
  writer.writeBits(residueCountLess1, 6);
262
262
  for (let i = 0; i < residueCount; i++) {
263
- const residueType = reader.readBits(2);
263
+ const residueType = reader.ReadBits(2);
264
264
  writer.writeBits(residueType, 16);
265
265
  if (residueType > 2) throw parseError("invalid residue type");
266
- const residueBegin = reader.readBits(24);
267
- const residueEnd = reader.readBits(24);
268
- const residuePartitionSizeLess1 = reader.readBits(24);
269
- const residueClassificationsLess1 = reader.readBits(6);
270
- const residueClassbook = reader.readBits(8);
266
+ const residueBegin = reader.ReadBits(24);
267
+ const residueEnd = reader.ReadBits(24);
268
+ const residuePartitionSizeLess1 = reader.ReadBits(24);
269
+ const residueClassificationsLess1 = reader.ReadBits(6);
270
+ const residueClassbook = reader.ReadBits(8);
271
271
  const residueClassifications = residueClassificationsLess1 + 1;
272
272
  writer.writeBits(residueBegin, 24);
273
273
  writer.writeBits(residueEnd, 24);
@@ -277,13 +277,13 @@ function generateHeaders(bytes, layout, library, writer) {
277
277
  if (residueClassbook >= codebookCount) throw parseError("invalid residue classbook");
278
278
  const residueCascade = new Array(residueClassifications);
279
279
  for (let j = 0; j < residueClassifications; j++) {
280
- const lowBits = reader.readBits(3);
280
+ const lowBits = reader.ReadBits(3);
281
281
  writer.writeBits(lowBits, 3);
282
- const bitflag = reader.readBits(1);
282
+ const bitflag = reader.ReadBits(1);
283
283
  writer.writeBits(bitflag, 1);
284
284
  let highBits = 0;
285
285
  if (bitflag) {
286
- highBits = reader.readBits(5);
286
+ highBits = reader.ReadBits(5);
287
287
  writer.writeBits(highBits, 5);
288
288
  }
289
289
  residueCascade[j] = highBits * 8 + lowBits;
@@ -291,7 +291,7 @@ function generateHeaders(bytes, layout, library, writer) {
291
291
  for (let j = 0; j < residueClassifications; j++) {
292
292
  for (let k = 0; k < 8; k++) {
293
293
  if (residueCascade[j] & 1 << k) {
294
- const residueBook = reader.readBits(8);
294
+ const residueBook = reader.ReadBits(8);
295
295
  writer.writeBits(residueBook, 8);
296
296
  if (residueBook >= codebookCount) throw parseError("invalid residue book");
297
297
  }
@@ -300,28 +300,28 @@ function generateHeaders(bytes, layout, library, writer) {
300
300
  }
301
301
 
302
302
  // mappings
303
- const mappingCountLess1 = reader.readBits(6);
303
+ const mappingCountLess1 = reader.ReadBits(6);
304
304
  const mappingCount = mappingCountLess1 + 1;
305
305
  writer.writeBits(mappingCountLess1, 6);
306
306
  for (let i = 0; i < mappingCount; i++) {
307
307
  writer.writeBits(0, 16);
308
- const submapsFlag = reader.readBits(1);
308
+ const submapsFlag = reader.ReadBits(1);
309
309
  writer.writeBits(submapsFlag, 1);
310
310
  let submaps = 1;
311
311
  if (submapsFlag) {
312
- const submapsLess1 = reader.readBits(4);
312
+ const submapsLess1 = reader.ReadBits(4);
313
313
  writer.writeBits(submapsLess1, 4);
314
314
  submaps = submapsLess1 + 1;
315
315
  }
316
- const squarePolarFlag = reader.readBits(1);
316
+ const squarePolarFlag = reader.ReadBits(1);
317
317
  writer.writeBits(squarePolarFlag, 1);
318
318
  if (squarePolarFlag) {
319
- const couplingStepsLess1 = reader.readBits(8);
319
+ const couplingStepsLess1 = reader.ReadBits(8);
320
320
  writer.writeBits(couplingStepsLess1, 8);
321
321
  const couplingBits = ilog(layout.channels - 1);
322
322
  for (let j = 0; j < couplingStepsLess1 + 1; j++) {
323
- const magnitude = reader.readBits(couplingBits);
324
- const angle = reader.readBits(couplingBits);
323
+ const magnitude = reader.ReadBits(couplingBits);
324
+ const angle = reader.ReadBits(couplingBits);
325
325
  writer.writeBits(magnitude, couplingBits);
326
326
  writer.writeBits(angle, couplingBits);
327
327
  if (angle === magnitude || magnitude >= layout.channels || angle >= layout.channels) {
@@ -329,40 +329,40 @@ function generateHeaders(bytes, layout, library, writer) {
329
329
  }
330
330
  }
331
331
  }
332
- const mappingReserved = reader.readBits(2);
332
+ const mappingReserved = reader.ReadBits(2);
333
333
  writer.writeBits(mappingReserved, 2);
334
334
  if (mappingReserved !== 0) throw parseError("mapping reserved field nonzero");
335
335
  if (submaps > 1) {
336
336
  for (let j = 0; j < layout.channels; j++) {
337
- const mappingMux = reader.readBits(4);
337
+ const mappingMux = reader.ReadBits(4);
338
338
  writer.writeBits(mappingMux, 4);
339
339
  if (mappingMux >= submaps) throw parseError("mapping_mux >= submaps");
340
340
  }
341
341
  }
342
342
  for (let j = 0; j < submaps; j++) {
343
- writer.writeBits(reader.readBits(8), 8);
344
- const floorNumber = reader.readBits(8);
343
+ writer.writeBits(reader.ReadBits(8), 8);
344
+ const floorNumber = reader.ReadBits(8);
345
345
  writer.writeBits(floorNumber, 8);
346
346
  if (floorNumber >= floorCount) throw parseError("invalid floor mapping");
347
- const residueNumber = reader.readBits(8);
347
+ const residueNumber = reader.ReadBits(8);
348
348
  writer.writeBits(residueNumber, 8);
349
349
  if (residueNumber >= residueCount) throw parseError("invalid residue mapping");
350
350
  }
351
351
  }
352
352
 
353
353
  // modes
354
- const modeCountLess1 = reader.readBits(6);
354
+ const modeCountLess1 = reader.ReadBits(6);
355
355
  const modeCount = modeCountLess1 + 1;
356
356
  writer.writeBits(modeCountLess1, 6);
357
357
  const modeBlockflag = new Array(modeCount);
358
358
  const modeBits = ilog(modeCount - 1);
359
359
  for (let i = 0; i < modeCount; i++) {
360
- const blockFlag = reader.readBits(1);
360
+ const blockFlag = reader.ReadBits(1);
361
361
  writer.writeBits(blockFlag, 1);
362
362
  modeBlockflag[i] = blockFlag !== 0;
363
363
  writer.writeBits(0, 16);
364
364
  writer.writeBits(0, 16);
365
- const mapping = reader.readBits(8);
365
+ const mapping = reader.ReadBits(8);
366
366
  writer.writeBits(mapping, 8);
367
367
  if (mapping >= mappingCount) throw parseError("invalid mode mapping");
368
368
  }
@@ -380,14 +380,14 @@ function generateHeaders(bytes, layout, library, writer) {
380
380
  };
381
381
  }
382
382
 
383
- /**
384
- * Repack a Wwise Vorbis wem into a standard Ogg Vorbis stream.
385
- *
386
- * @param {Uint8Array} bytes Wem bytes (RIFF/RIFX with 0xFFFF Vorbis fmt).
387
- * @param {object} [options] Options.
388
- * @param {Uint8Array} [options.codebooks] Packed codebook library override
389
- * (defaults to the bundled aoTuV 6.03 library).
390
- * @returns {object} `{ bytes, sampleCount, sampleRate, channels, durationSeconds, loop, pageCount, modPackets }`.
383
+ /**
384
+ * Repack a Wwise Vorbis wem into a standard Ogg Vorbis stream.
385
+ *
386
+ * @param {Uint8Array} bytes Wem bytes (RIFF/RIFX with 0xFFFF Vorbis fmt).
387
+ * @param {object} [options] Options.
388
+ * @param {Uint8Array} [options.codebooks] Packed codebook library override
389
+ * (defaults to the bundled aoTuV 6.03 library).
390
+ * @returns {object} `{ bytes, sampleCount, sampleRate, channels, durationSeconds, loop, pageCount, modPackets }`.
391
391
  */
392
392
  function convertWemToOgg(bytes, options = {}) {
393
393
  const layout = parseWemVorbisLayout(bytes);
@@ -416,16 +416,16 @@ function convertWemToOgg(bytes, options = {}) {
416
416
  if (layout.modPackets) {
417
417
  // rebuild the packet type and window bits Wwise strips
418
418
  writer.writeBits(0, 1);
419
- modeNumber = payloadReader.readBits(modeBits);
419
+ modeNumber = payloadReader.ReadBits(modeBits);
420
420
  writer.writeBits(modeNumber, modeBits);
421
- const remainder = payloadReader.readBits(8 - modeBits);
421
+ const remainder = payloadReader.ReadBits(8 - modeBits);
422
422
  if (modeBlockflag[modeNumber]) {
423
423
  let nextBlockflag = false;
424
424
  if (!isLast) {
425
425
  const nextPacket = readPacketHeader(bytes, packet.nextOffset, layout);
426
426
  if (nextPacket.size > 0) {
427
427
  const nextReader = new BitReader(bytes, nextPacket.payloadOffset);
428
- nextBlockflag = modeBlockflag[nextReader.readBits(modeBits)];
428
+ nextBlockflag = modeBlockflag[nextReader.ReadBits(modeBits)];
429
429
  }
430
430
  }
431
431
  writer.writeBits(prevBlockflag ? 1 : 0, 1);
@@ -438,8 +438,8 @@ function convertWemToOgg(bytes, options = {}) {
438
438
  }
439
439
  } else {
440
440
  // standard packet: copy verbatim, peek the mode for granule math
441
- const packetType = payloadReader.readBits(1);
442
- modeNumber = payloadReader.readBits(modeBits);
441
+ const packetType = payloadReader.ReadBits(1);
442
+ modeNumber = payloadReader.ReadBits(modeBits);
443
443
  if (packetType !== 0) throw parseError("audio packet is not type 0");
444
444
  for (let i = 0; i < packet.size; i++) {
445
445
  writer.writeBits(payload[i], 8);