@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":"CjsCharacterWebgl2EffectRouter.js","sources":["../../../../src/character/webgl2/CjsCharacterWebgl2EffectRouter.js"],"sourcesContent":["const DX11_AVATAR_ROOT = \"res:/graphics/effect.dx11/managed/interior/avatar/\";\n\nconst ROUTES = Object.freeze([\n {\n family: \"linear\",\n names: [ \"skinnedavatarbrdflinear\" ],\n target: DX11_AVATAR_ROOT + \"skinnedavatarbrdflinear.sm_hi\",\n required: [ \"TransformUV0\", \"DiffuseMap\", \"NormalMap\", \"SpecularMap\" ],\n controls: [\n \"TransformUV0\", \"MaterialDiffuseColor\", \"MaterialSpecularColor\",\n \"MaterialSpecularCurve\", \"MaterialSpecularFactors\", \"MaterialCutoutColor\",\n \"MaterialLibraryID\", \"MaterialCubeReflection\", \"MaterialCubeReflectionControl\",\n \"MaterialCubeReflectionColor\", \"SkinGlowColor\", \"SkinGlowThreshold\",\n \"SkinGlowSpecularAlpha\", \"DecalClip\"\n ]\n },\n {\n family: \"double-linear\",\n names: [ \"skinnedavatarbrdfdoublelinear\" ],\n target: DX11_AVATAR_ROOT + \"skinnedavatarbrdfdoublelinear.sm_hi\",\n required: [ \"TransformUV0\", \"DiffuseMap\", \"NormalMap\", \"SpecularMap\" ],\n controls: [\n \"TransformUV0\", \"MaterialDiffuseColor\", \"MaterialSpecularColor\",\n \"MaterialSpecularCurve\", \"MaterialSpecularFactors\", \"MaterialCutoutColor\",\n \"MaterialLibraryID\", \"MaterialCubeReflection\", \"MaterialCubeReflectionControl\",\n \"MaterialCubeReflectionColor\", \"Material2DiffuseColor\", \"Material2SpecularColor\",\n \"Material2SpecularCurve\", \"Material2SpecularFactors\", \"Material2LibraryID\",\n \"Material2CubeReflection\", \"Material2CubeReflectionControl\",\n \"Material2CubeReflectionColor\", \"SkinGlowColor\", \"SkinGlowThreshold\",\n \"SkinGlowSpecularAlpha\", \"DecalClip\"\n ]\n },\n {\n family: \"detailed-hair\",\n names: [ \"skinnedavatarhair_detailed\" ],\n target: DX11_AVATAR_ROOT + \"skinnedavatarhair_detailed.sm_hi\",\n required: [ \"TransformUV0\", \"DiffuseMap\", \"NormalMap\", \"SpecularMap\", \"TangentMap\" ],\n controls: [\n \"TransformUV0\", \"MaterialDiffuseColor\", \"MaterialCutoutColor\", \"HairDiffuseBias\",\n \"HairParameters\", \"HairSpecularColor1\", \"HairSpecularColor2\",\n \"HairSpecularFactors1\", \"HairSpecularFactors2\", \"TangentMapParameters\"\n ]\n }\n]);\n\nconst TEXTURE_PARAMETERS = Object.freeze([\n \"DiffuseMap\", \"NormalMap\", \"SpecularMap\", \"TangentMap\", \"IrradianceMap\",\n \"ColorNdotLLookupMap\", \"ReflectionMap\", \"ClothingReflectionCube\", \"ShadowCubeMap0\",\n \"CutMaskMap\", \"FresnelLookupMap\", \"SpotlightShadow0\", \"SpotlightShadow1\",\n \"SpotlightShadow2\", \"SpotlightShadow3\"\n]);\n\n/**\n * Backend-only router from audited avatar effects to DX11 shader paths, which\n * the resource host overlays to WebGL2. It preserves only compatible material\n * state on the passed live effect and does not reach for a global facade.\n */\nexport class CjsCharacterWebgl2EffectRouter\n{\n static Route(effects)\n {\n const report = {\n status: \"unchanged\",\n requiresWatch: false,\n applied: [],\n deferred: [],\n retained: []\n };\n const seen = new Set();\n for (const effect of effects ?? [])\n {\n if (!effect || seen.has(effect)) continue;\n seen.add(effect);\n const result = RouteEffect(effect);\n report.requiresWatch ||= result.requiresWatch === true;\n report[result.status]?.push(result);\n }\n if (report.applied.length) report.status = \"applied\";\n else if (report.deferred.length) report.status = \"deferred\";\n return report;\n }\n\n static RestoreAfterWatch(effects)\n {\n const report = { status: \"unchanged\", restored: [], deferred: [] };\n const seen = new Set();\n for (const effect of effects ?? [])\n {\n if (!effect || seen.has(effect)) continue;\n seen.add(effect);\n const result = RestoreRoutedEffectAfterWatch(effect);\n report[result.status]?.push(result);\n }\n if (report.restored.length) report.status = \"restored\";\n else if (report.deferred.length) report.status = \"deferred\";\n return report;\n }\n}\n\nfunction RouteEffect(effect)\n{\n const sourcePath = String(effect?.effectFilePath ?? \"\").trim();\n if (IsDx11AvatarPath(sourcePath))\n {\n return { status: \"retained\", sourcePath, reason: \"already-dx11\" };\n }\n const route = FindRoute(sourcePath);\n if (!route) return { status: \"retained\", sourcePath, reason: \"family-unqualified\" };\n if (!route.required.every(name => HasParameter(effect, name)))\n {\n return {\n status: \"deferred\", sourcePath, targetPath: route.target, family: route.family,\n reason: \"source-contract-unqualified\"\n };\n }\n\n const snapshot = CaptureEffectState(effect, route);\n try\n {\n SetEffectFilePath(effect, route.target);\n effect.Initialize?.();\n effect.AutoPopulate?.(false);\n if (!route.required.every(name => HasParameter(effect, name)))\n {\n throw new Error(\"destination-contract-unqualified\");\n }\n const restored = RestoreEffectSnapshot(effect, snapshot);\n effect._characterAuthoredEffectFilePath ??= sourcePath;\n effect._characterWebgl2EffectRoute = {\n status: \"applied\",\n family: route.family,\n sourcePath,\n targetPath: route.target,\n initialRestore: restored\n };\n effect._characterWebgl2EffectRouteSnapshot = snapshot;\n return { ...effect._characterWebgl2EffectRoute, requiresWatch: true };\n }\n catch (error)\n {\n RestoreEffectState(effect, snapshot);\n return {\n status: \"deferred\", sourcePath, targetPath: route.target, family: route.family,\n reason: String(error?.message ?? error), requiresWatch: true\n };\n }\n}\n\nfunction RestoreRoutedEffectAfterWatch(effect)\n{\n const route = effect?._characterWebgl2EffectRoute;\n const snapshot = effect?._characterWebgl2EffectRouteSnapshot;\n if (!route || !snapshot) return { status: \"retained\" };\n if (String(effect?.effectFilePath ?? \"\") !== route.targetPath)\n {\n return {\n status: \"deferred\", sourcePath: route.sourcePath, targetPath: route.targetPath,\n family: route.family, reason: \"destination-path-replaced-before-watch-restore\"\n };\n }\n try\n {\n const contract = ROUTES.find(candidate => candidate.family === route.family\n && candidate.target === route.targetPath);\n if (!contract || !contract.required.every(name => HasParameter(effect, name)))\n {\n throw new Error(\"destination-contract-unqualified-after-watch\");\n }\n const restored = RestoreEffectSnapshot(effect, snapshot);\n route.finalRestore = restored;\n return {\n status: \"restored\", sourcePath: route.sourcePath, targetPath: route.targetPath,\n family: route.family, ...restored\n };\n }\n catch (error)\n {\n return {\n status: \"deferred\", sourcePath: route.sourcePath, targetPath: route.targetPath,\n family: route.family, reason: String(error?.message ?? error)\n };\n }\n}\n\nfunction FindRoute(path)\n{\n const normalized = String(path).toLowerCase();\n return ROUTES.find(route => route.names.some(name => new RegExp(\n \"(?:^|/)\" + name.replace(\"_\", \"(?:_|)\") + \"\\\\.(?:fx|sm_[a-z0-9_]+)$\",\n \"u\"\n ).test(normalized))) ?? null;\n}\n\nfunction IsDx11AvatarPath(path)\n{\n return /^res:\\/graphics\\/effect\\.dx11\\/managed\\/interior\\/avatar\\//iu.test(path);\n}\n\nfunction CaptureEffectState(effect, route)\n{\n return {\n effectFilePath: String(effect?.effectFilePath ?? \"\"),\n controls: CaptureControls(effect, route.controls),\n textures: CaptureTextures(effect)\n };\n}\n\nfunction RestoreEffectState(effect, snapshot)\n{\n SetEffectFilePath(effect, snapshot.effectFilePath);\n effect.Initialize?.();\n effect.AutoPopulate?.(false);\n RestoreControls(effect, snapshot.controls);\n RestoreTextures(effect, snapshot.textures);\n}\n\nfunction RestoreEffectSnapshot(effect, snapshot)\n{\n return {\n restoredControls: RestoreControls(effect, snapshot.controls),\n restoredTextures: RestoreTextures(effect, snapshot.textures),\n passStatePolicy: \"native-dx11\"\n };\n}\n\nfunction CaptureControls(effect, names)\n{\n const controls = {};\n for (const name of names)\n {\n const value = ReadParameterValue(effect?.parameters?.[name]);\n const shape = GetShape(value);\n if (shape) controls[name] = { value, shape };\n }\n return controls;\n}\n\nfunction RestoreControls(effect, controls)\n{\n const restored = [];\n for (const [ name, source ] of Object.entries(controls ?? {}))\n {\n const parameter = effect?.parameters?.[name];\n if (!parameter || GetShape(ReadParameterValue(parameter)) !== source.shape) continue;\n SetParameterValue(effect, name, parameter, source.value);\n restored.push(name);\n }\n return restored;\n}\n\nfunction CaptureTextures(effect)\n{\n const textures = {};\n for (const name of TEXTURE_PARAMETERS)\n {\n const parameter = effect?.parameters?.[name];\n if (!parameter) continue;\n const resourcePath = String(\n parameter?.resourcePath || parameter?.textureRes?.path || \"\"\n ).trim();\n if (!parameter?.textureRes && !resourcePath) continue;\n textures[name] = {\n textureRes: parameter.textureRes ?? null,\n resourcePath,\n isAttached: parameter.isAttached === true\n };\n }\n return textures;\n}\n\nfunction RestoreTextures(effect, textures)\n{\n const restored = [];\n for (const [ name, source ] of Object.entries(textures ?? {}))\n {\n const parameter = effect?.parameters?.[name];\n if (!parameter) continue;\n if (source.textureRes && typeof parameter.AttachTextureRes === \"function\")\n {\n parameter.AttachTextureRes(source.textureRes);\n restored.push(name);\n }\n else if (source.resourcePath && typeof parameter.SetValue === \"function\")\n {\n parameter.SetValue(source.resourcePath);\n restored.push(name);\n }\n }\n return restored;\n}\n\nfunction HasParameter(effect, name)\n{\n return Boolean(effect?.parameters?.[name]);\n}\n\nfunction SetEffectFilePath(effect, effectFilePath)\n{\n if (typeof effect?.SetValues === \"function\") effect.SetValues({ effectFilePath });\n else effect.effectFilePath = effectFilePath;\n}\n\nfunction ReadParameterValue(parameter)\n{\n try\n {\n const value = typeof parameter?.GetValue === \"function\"\n ? parameter.GetValue([])\n : parameter?.value;\n if (Array.isArray(value) || ArrayBuffer.isView(value)) return Array.from(value);\n return Number.isFinite(value) ? value : null;\n }\n catch\n {\n return null;\n }\n}\n\nfunction SetParameterValue(effect, name, parameter, value)\n{\n const copy = Array.isArray(value) ? [ ...value ] : value;\n if (typeof parameter?.SetValue === \"function\")\n {\n parameter.SetValue(copy);\n return;\n }\n if (typeof effect?.SetParameters === \"function\"\n && effect.SetParameters({ [name]: copy }) !== false) return;\n throw new Error(\"WebGL2 effect route cannot restore \" + name);\n}\n\nfunction GetShape(value)\n{\n if (Number.isFinite(value)) return \"scalar\";\n if (!Array.isArray(value) || !value.length || !value.every(Number.isFinite)) return null;\n return \"vector-\" + value.length;\n}\n\nexport default CjsCharacterWebgl2EffectRouter;\n"],"names":["DX11_AVATAR_ROOT","ROUTES","Object","freeze","family","names","target","required","controls","TEXTURE_PARAMETERS","CjsCharacterWebgl2EffectRouter","Route","effects","report","status","requiresWatch","applied","deferred","retained","seen","Set","effect","has","add","result","RouteEffect","push","length","RestoreAfterWatch","restored","RestoreRoutedEffectAfterWatch","sourcePath","String","effectFilePath","trim","IsDx11AvatarPath","reason","route","FindRoute","every","name","HasParameter","targetPath","snapshot","CaptureEffectState","SetEffectFilePath","Initialize","AutoPopulate","Error","RestoreEffectSnapshot","_characterAuthoredEffectFilePath","_characterWebgl2EffectRoute","initialRestore","_characterWebgl2EffectRouteSnapshot","error","RestoreEffectState","message","contract","find","candidate","finalRestore","path","normalized","toLowerCase","some","RegExp","replace","test","CaptureControls","textures","CaptureTextures","RestoreControls","RestoreTextures","restoredControls","restoredTextures","passStatePolicy","value","ReadParameterValue","parameters","shape","GetShape","source","entries","parameter","SetParameterValue","resourcePath","textureRes","isAttached","AttachTextureRes","SetValue","Boolean","SetValues","GetValue","Array","isArray","ArrayBuffer","isView","from","Number","isFinite","copy","SetParameters"],"mappings":"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"}
1
+ {"version":3,"file":"CjsCharacterWebgl2EffectRouter.js","sources":["../../../../src/character/webgl2/CjsCharacterWebgl2EffectRouter.js"],"sourcesContent":["const DX11_AVATAR_ROOT = \"res:/graphics/effect.dx11/managed/interior/avatar/\";\n\nconst ROUTES = Object.freeze([\n {\n family: \"linear\",\n names: [ \"skinnedavatarbrdflinear\" ],\n target: DX11_AVATAR_ROOT + \"skinnedavatarbrdflinear.sm_hi\",\n required: [ \"TransformUV0\", \"DiffuseMap\", \"NormalMap\", \"SpecularMap\" ],\n controls: [\n \"TransformUV0\", \"MaterialDiffuseColor\", \"MaterialSpecularColor\",\n \"MaterialSpecularCurve\", \"MaterialSpecularFactors\", \"MaterialCutoutColor\",\n \"MaterialLibraryID\", \"MaterialCubeReflection\", \"MaterialCubeReflectionControl\",\n \"MaterialCubeReflectionColor\", \"SkinGlowColor\", \"SkinGlowThreshold\",\n \"SkinGlowSpecularAlpha\", \"DecalClip\"\n ]\n },\n {\n family: \"double-linear\",\n names: [ \"skinnedavatarbrdfdoublelinear\" ],\n target: DX11_AVATAR_ROOT + \"skinnedavatarbrdfdoublelinear.sm_hi\",\n required: [ \"TransformUV0\", \"DiffuseMap\", \"NormalMap\", \"SpecularMap\" ],\n controls: [\n \"TransformUV0\", \"MaterialDiffuseColor\", \"MaterialSpecularColor\",\n \"MaterialSpecularCurve\", \"MaterialSpecularFactors\", \"MaterialCutoutColor\",\n \"MaterialLibraryID\", \"MaterialCubeReflection\", \"MaterialCubeReflectionControl\",\n \"MaterialCubeReflectionColor\", \"Material2DiffuseColor\", \"Material2SpecularColor\",\n \"Material2SpecularCurve\", \"Material2SpecularFactors\", \"Material2LibraryID\",\n \"Material2CubeReflection\", \"Material2CubeReflectionControl\",\n \"Material2CubeReflectionColor\", \"SkinGlowColor\", \"SkinGlowThreshold\",\n \"SkinGlowSpecularAlpha\", \"DecalClip\"\n ]\n },\n {\n family: \"detailed-hair\",\n names: [ \"skinnedavatarhair_detailed\" ],\n target: DX11_AVATAR_ROOT + \"skinnedavatarhair_detailed.sm_hi\",\n required: [ \"TransformUV0\", \"DiffuseMap\", \"NormalMap\", \"SpecularMap\", \"TangentMap\" ],\n controls: [\n \"TransformUV0\", \"MaterialDiffuseColor\", \"MaterialCutoutColor\", \"HairDiffuseBias\",\n \"HairParameters\", \"HairSpecularColor1\", \"HairSpecularColor2\",\n \"HairSpecularFactors1\", \"HairSpecularFactors2\", \"TangentMapParameters\"\n ]\n }\n]);\n\nconst TEXTURE_PARAMETERS = Object.freeze([\n \"DiffuseMap\", \"NormalMap\", \"SpecularMap\", \"TangentMap\", \"IrradianceMap\",\n \"ColorNdotLLookupMap\", \"ReflectionMap\", \"ClothingReflectionCube\", \"ShadowCubeMap0\",\n \"CutMaskMap\", \"FresnelLookupMap\", \"SpotlightShadow0\", \"SpotlightShadow1\",\n \"SpotlightShadow2\", \"SpotlightShadow3\"\n]);\n\n/**\n * Backend-only router from audited avatar effects to DX11 shader paths, which\n * the resource host overlays to WebGL2. It preserves only compatible material\n * state on the passed live effect and does not reach for a global facade.\n */\nexport class CjsCharacterWebgl2EffectRouter\n{\n /**\n * Routes each distinct effect and reports applied, deferred, and retained\n * effects with their watch requirements.\n */\n static Route(effects)\n {\n const report = {\n status: \"unchanged\",\n requiresWatch: false,\n applied: [],\n deferred: [],\n retained: []\n };\n const seen = new Set();\n for (const effect of effects ?? [])\n {\n if (!effect || seen.has(effect)) continue;\n seen.add(effect);\n const result = RouteEffect(effect);\n report.requiresWatch ||= result.requiresWatch === true;\n report[result.status]?.push(result);\n }\n if (report.applied.length) report.status = \"applied\";\n else if (report.deferred.length) report.status = \"deferred\";\n return report;\n }\n\n /**\n * Restores saved state on each distinct routed effect and reports restored\n * or deferred results.\n */\n static RestoreAfterWatch(effects)\n {\n const report = { status: \"unchanged\", restored: [], deferred: [] };\n const seen = new Set();\n for (const effect of effects ?? [])\n {\n if (!effect || seen.has(effect)) continue;\n seen.add(effect);\n const result = RestoreRoutedEffectAfterWatch(effect);\n report[result.status]?.push(result);\n }\n if (report.restored.length) report.status = \"restored\";\n else if (report.deferred.length) report.status = \"deferred\";\n return report;\n }\n}\n\nfunction RouteEffect(effect)\n{\n const sourcePath = String(effect?.effectFilePath ?? \"\").trim();\n if (IsDx11AvatarPath(sourcePath))\n {\n return { status: \"retained\", sourcePath, reason: \"already-dx11\" };\n }\n const route = FindRoute(sourcePath);\n if (!route) return { status: \"retained\", sourcePath, reason: \"family-unqualified\" };\n if (!route.required.every(name => HasParameter(effect, name)))\n {\n return {\n status: \"deferred\", sourcePath, targetPath: route.target, family: route.family,\n reason: \"source-contract-unqualified\"\n };\n }\n\n const snapshot = CaptureEffectState(effect, route);\n try\n {\n SetEffectFilePath(effect, route.target);\n effect.Initialize?.();\n effect.AutoPopulate?.(false);\n if (!route.required.every(name => HasParameter(effect, name)))\n {\n throw new Error(\"destination-contract-unqualified\");\n }\n const restored = RestoreEffectSnapshot(effect, snapshot);\n effect._characterAuthoredEffectFilePath ??= sourcePath;\n effect._characterWebgl2EffectRoute = {\n status: \"applied\",\n family: route.family,\n sourcePath,\n targetPath: route.target,\n initialRestore: restored\n };\n effect._characterWebgl2EffectRouteSnapshot = snapshot;\n return { ...effect._characterWebgl2EffectRoute, requiresWatch: true };\n }\n catch (error)\n {\n RestoreEffectState(effect, snapshot);\n return {\n status: \"deferred\", sourcePath, targetPath: route.target, family: route.family,\n reason: String(error?.message ?? error), requiresWatch: true\n };\n }\n}\n\nfunction RestoreRoutedEffectAfterWatch(effect)\n{\n const route = effect?._characterWebgl2EffectRoute;\n const snapshot = effect?._characterWebgl2EffectRouteSnapshot;\n if (!route || !snapshot) return { status: \"retained\" };\n if (String(effect?.effectFilePath ?? \"\") !== route.targetPath)\n {\n return {\n status: \"deferred\", sourcePath: route.sourcePath, targetPath: route.targetPath,\n family: route.family, reason: \"destination-path-replaced-before-watch-restore\"\n };\n }\n try\n {\n const contract = ROUTES.find(candidate => candidate.family === route.family\n && candidate.target === route.targetPath);\n if (!contract || !contract.required.every(name => HasParameter(effect, name)))\n {\n throw new Error(\"destination-contract-unqualified-after-watch\");\n }\n const restored = RestoreEffectSnapshot(effect, snapshot);\n route.finalRestore = restored;\n return {\n status: \"restored\", sourcePath: route.sourcePath, targetPath: route.targetPath,\n family: route.family, ...restored\n };\n }\n catch (error)\n {\n return {\n status: \"deferred\", sourcePath: route.sourcePath, targetPath: route.targetPath,\n family: route.family, reason: String(error?.message ?? error)\n };\n }\n}\n\nfunction FindRoute(path)\n{\n const normalized = String(path).toLowerCase();\n return ROUTES.find(route => route.names.some(name => new RegExp(\n \"(?:^|/)\" + name.replace(\"_\", \"(?:_|)\") + \"\\\\.(?:fx|sm_[a-z0-9_]+)$\",\n \"u\"\n ).test(normalized))) ?? null;\n}\n\nfunction IsDx11AvatarPath(path)\n{\n return /^res:\\/graphics\\/effect\\.dx11\\/managed\\/interior\\/avatar\\//iu.test(path);\n}\n\nfunction CaptureEffectState(effect, route)\n{\n return {\n effectFilePath: String(effect?.effectFilePath ?? \"\"),\n controls: CaptureControls(effect, route.controls),\n textures: CaptureTextures(effect)\n };\n}\n\nfunction RestoreEffectState(effect, snapshot)\n{\n SetEffectFilePath(effect, snapshot.effectFilePath);\n effect.Initialize?.();\n effect.AutoPopulate?.(false);\n RestoreControls(effect, snapshot.controls);\n RestoreTextures(effect, snapshot.textures);\n}\n\nfunction RestoreEffectSnapshot(effect, snapshot)\n{\n return {\n restoredControls: RestoreControls(effect, snapshot.controls),\n restoredTextures: RestoreTextures(effect, snapshot.textures),\n passStatePolicy: \"native-dx11\"\n };\n}\n\nfunction CaptureControls(effect, names)\n{\n const controls = {};\n for (const name of names)\n {\n const value = ReadParameterValue(effect?.parameters?.[name]);\n const shape = GetShape(value);\n if (shape) controls[name] = { value, shape };\n }\n return controls;\n}\n\nfunction RestoreControls(effect, controls)\n{\n const restored = [];\n for (const [ name, source ] of Object.entries(controls ?? {}))\n {\n const parameter = effect?.parameters?.[name];\n if (!parameter || GetShape(ReadParameterValue(parameter)) !== source.shape) continue;\n SetParameterValue(effect, name, parameter, source.value);\n restored.push(name);\n }\n return restored;\n}\n\nfunction CaptureTextures(effect)\n{\n const textures = {};\n for (const name of TEXTURE_PARAMETERS)\n {\n const parameter = effect?.parameters?.[name];\n if (!parameter) continue;\n const resourcePath = String(\n parameter?.resourcePath || parameter?.textureRes?.path || \"\"\n ).trim();\n if (!parameter?.textureRes && !resourcePath) continue;\n textures[name] = {\n textureRes: parameter.textureRes ?? null,\n resourcePath,\n isAttached: parameter.isAttached === true\n };\n }\n return textures;\n}\n\nfunction RestoreTextures(effect, textures)\n{\n const restored = [];\n for (const [ name, source ] of Object.entries(textures ?? {}))\n {\n const parameter = effect?.parameters?.[name];\n if (!parameter) continue;\n if (source.textureRes && typeof parameter.AttachTextureRes === \"function\")\n {\n parameter.AttachTextureRes(source.textureRes);\n restored.push(name);\n }\n else if (source.resourcePath && typeof parameter.SetValue === \"function\")\n {\n parameter.SetValue(source.resourcePath);\n restored.push(name);\n }\n }\n return restored;\n}\n\nfunction HasParameter(effect, name)\n{\n return Boolean(effect?.parameters?.[name]);\n}\n\nfunction SetEffectFilePath(effect, effectFilePath)\n{\n if (typeof effect?.SetValues === \"function\") effect.SetValues({ effectFilePath });\n else effect.effectFilePath = effectFilePath;\n}\n\nfunction ReadParameterValue(parameter)\n{\n try\n {\n const value = typeof parameter?.GetValue === \"function\"\n ? parameter.GetValue([])\n : parameter?.value;\n if (Array.isArray(value) || ArrayBuffer.isView(value)) return Array.from(value);\n return Number.isFinite(value) ? value : null;\n }\n catch\n {\n return null;\n }\n}\n\nfunction SetParameterValue(effect, name, parameter, value)\n{\n const copy = Array.isArray(value) ? [ ...value ] : value;\n if (typeof parameter?.SetValue === \"function\")\n {\n parameter.SetValue(copy);\n return;\n }\n if (typeof effect?.SetParameters === \"function\"\n && effect.SetParameters({ [name]: copy }) !== false) return;\n throw new Error(\"WebGL2 effect route cannot restore \" + name);\n}\n\nfunction GetShape(value)\n{\n if (Number.isFinite(value)) return \"scalar\";\n if (!Array.isArray(value) || !value.length || !value.every(Number.isFinite)) return null;\n return \"vector-\" + value.length;\n}\n\nexport default CjsCharacterWebgl2EffectRouter;\n"],"names":["DX11_AVATAR_ROOT","ROUTES","Object","freeze","family","names","target","required","controls","TEXTURE_PARAMETERS","CjsCharacterWebgl2EffectRouter","Route","effects","report","status","requiresWatch","applied","deferred","retained","seen","Set","effect","has","add","result","RouteEffect","push","length","RestoreAfterWatch","restored","RestoreRoutedEffectAfterWatch","sourcePath","String","effectFilePath","trim","IsDx11AvatarPath","reason","route","FindRoute","every","name","HasParameter","targetPath","snapshot","CaptureEffectState","SetEffectFilePath","Initialize","AutoPopulate","Error","RestoreEffectSnapshot","_characterAuthoredEffectFilePath","_characterWebgl2EffectRoute","initialRestore","_characterWebgl2EffectRouteSnapshot","error","RestoreEffectState","message","contract","find","candidate","finalRestore","path","normalized","toLowerCase","some","RegExp","replace","test","CaptureControls","textures","CaptureTextures","RestoreControls","RestoreTextures","restoredControls","restoredTextures","passStatePolicy","value","ReadParameterValue","parameters","shape","GetShape","source","entries","parameter","SetParameterValue","resourcePath","textureRes","isAttached","AttachTextureRes","SetValue","Boolean","SetValues","GetValue","Array","isArray","ArrayBuffer","isView","from","Number","isFinite","copy","SetParameters"],"mappings":"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"}
@@ -0,0 +1,142 @@
1
+ import { impl } from '../schema/index.js';
2
+ import { CjsSchema } from '../schema/CjsSchema.js';
3
+
4
+ // Source: blueexposure/include/BlueScriptCallback.h
5
+ // blueexposure/BlueScriptCallback.cpp
6
+ //
7
+ // Carbon's BlueScriptCallback: "encapsulates script callback functions. One can
8
+ // store a script function in BlueScriptCallback and subsequently call it from
9
+ // C++." Tr2MainWindow holds sixteen of them - every window, mouse, key, focus
10
+ // and IME hook it exposes (Tr2MainWindow.h:191-226) - so the type is the
11
+ // donor's, not ours.
12
+ //
13
+ // ONE CONCRETE CLASS, BECAUSE THAT IS WHAT CARBON HAS. This was previously a
14
+ // nominal base with two private subclasses adapting a function and a
15
+ // callback-shaped object. Carbon has no such hierarchy: it stores one
16
+ // BlueScriptValue and dispatches on it. The subclasses were also what made the
17
+ // file unsplittable - the base's `from` constructed them while they extended
18
+ // it, which is an ESM cycle that throws on evaluation.
19
+ //
20
+ // Call AND CallVoid ARE CARBON'S PAIR, not an invention: Call takes the return
21
+ // value by reference, CallVoid discards it (BlueScriptCallback.h:67-104).
22
+ //
23
+ // WHAT DIVERGES, AND WHY. Carbon returns BlueScriptCallbackStatus from every
24
+ // call, carrying OK / CALL_ERROR / EXCEPTION plus the captured Python type,
25
+ // value and traceback, so a caller can MuteException or ReportException. That
26
+ // object exists because a C++ caller cannot see a Python exception any other
27
+ // way. JavaScript has one exception mechanism for both sides, so a throwing
28
+ // callback simply propagates, and no status is returned. Nothing here consumes
29
+ // a status today; if mute/report behaviour is ever needed, it is a real port of
30
+ // BlueScriptCallbackStatus and not a flag on this class.
31
+
32
+ /**
33
+ * A stored script callback that can be invoked later.
34
+ *
35
+ * External JavaScript functions and callback-shaped host objects are adapted
36
+ * once through {@link CjsScriptCallback.from}; runtime hot paths then call
37
+ * `Call` or `CallVoid` directly.
38
+ */
39
+ class CjsScriptCallback {
40
+ /** Carbon's `m_callback` (BlueScriptValue): the stored callable, or null. */
41
+ #callback = null;
42
+
43
+ /**
44
+ * Wraps one already-validated callable.
45
+ *
46
+ * Carbon's default constructor leaves the callback null, which is the
47
+ * invalid state `IsValid` reports; constructing with no argument does the
48
+ * same here. Prefer `from` at any boundary, which validates first.
49
+ *
50
+ * @param {Function|{Call: Function, CallVoid: Function}|null} [callback]
51
+ */
52
+ constructor(callback = null) {
53
+ this.#callback = callback ?? null;
54
+ }
55
+
56
+ /**
57
+ * Adapts one external callback value to this nominal identity.
58
+ *
59
+ * Carbon reaches the same point through BlueExtractArgumentImpl, which
60
+ * extracts a callable out of a script argument and rejects anything else
61
+ * (BlueScriptCallback.h:112-117). This is that boundary in JavaScript.
62
+ *
63
+ * @param {CjsScriptCallback|Function|object|null|undefined} value - Callback boundary value.
64
+ * @returns {CjsScriptCallback|null} A nominal callback or null.
65
+ */
66
+ static from(value) {
67
+ if (value === null || value === undefined) return null;
68
+ if (value instanceof CjsScriptCallback) return value;
69
+ if (typeof value === "function") return new CjsScriptCallback(value);
70
+ if (typeof value !== "object" || typeof value.Call !== "function" || typeof value.CallVoid !== "function") {
71
+ throw new TypeError("A script callback must be a function, CjsScriptCallback, or object with Call and CallVoid methods.");
72
+ }
73
+ return new CjsScriptCallback(value);
74
+ }
75
+
76
+ /**
77
+ * Reports whether a callback is stored.
78
+ *
79
+ * @returns {boolean} True when this callback can be invoked.
80
+ */
81
+ IsValid() {
82
+ return this.#callback !== null;
83
+ }
84
+
85
+ /**
86
+ * Releases the stored callback, leaving this invalid.
87
+ *
88
+ * @returns {void}
89
+ */
90
+ Destroy() {
91
+ this.#callback = null;
92
+ }
93
+
94
+ /**
95
+ * Invokes a callback whose return value is significant.
96
+ *
97
+ * An invalid callback does nothing and returns undefined, matching Carbon,
98
+ * which returns CALL_ERROR rather than failing
99
+ * (BlueScriptCallback.cpp:282-287).
100
+ *
101
+ * @param {...*} args - Callback arguments.
102
+ * @returns {*} Callback result, or undefined when invalid.
103
+ */
104
+ Call(...args) {
105
+ const callback = this.#callback;
106
+ if (callback === null) return undefined;
107
+ return typeof callback === "function" ? callback(...args) : callback.Call(...args);
108
+ }
109
+
110
+ /**
111
+ * Invokes a notification callback and discards its result.
112
+ *
113
+ * @param {...*} args - Callback arguments.
114
+ * @returns {void}
115
+ */
116
+ CallVoid(...args) {
117
+ const callback = this.#callback;
118
+ if (callback === null) return;
119
+ if (typeof callback === "function") callback(...args);else callback.CallVoid(...args);
120
+ }
121
+ }
122
+
123
+ // DECLARED AS CALLS, NOT DECORATORS, matching every other file in this folder.
124
+ CjsSchema.decorateMethod(CjsScriptCallback, "IsValid", impl.implemented);
125
+ CjsSchema.decorateMethod(CjsScriptCallback, "Destroy", impl.implemented);
126
+ CjsSchema.decorateMethod(CjsScriptCallback, "Call", impl.adapted);
127
+ CjsSchema.decorateMethod(CjsScriptCallback, "Call", impl.reason("Carbon returns BlueScriptCallbackStatus so a C++ caller can see a Python exception; JavaScript shares one exception mechanism, so a throwing callback propagates and no status is returned."));
128
+ CjsSchema.decorateMethod(CjsScriptCallback, "CallVoid", impl.adapted);
129
+ CjsSchema.decorateMethod(CjsScriptCallback, "CallVoid", impl.reason("Carbon returns BlueScriptCallbackStatus so a C++ caller can see a Python exception; JavaScript shares one exception mechanism, so a throwing callback propagates and no status is returned."));
130
+
131
+ // THE DONOR IS NAMED, not left to be derived from this class's name. The port
132
+ // keeps its Cjs name - schema can call a class whatever we want - and this
133
+ // declaration is the only thing tying it back to BlueScriptCallback. Without it
134
+ // a deliberately renamed port is indistinguishable from an invention, which is
135
+ // exactly how this class read before 2026-09-13.
136
+ CjsSchema.define(CjsScriptCallback, {
137
+ className: "CjsScriptCallback",
138
+ carbon: "BlueScriptCallback"
139
+ });
140
+
141
+ export { CjsScriptCallback };
142
+ //# sourceMappingURL=CjsScriptCallback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CjsScriptCallback.js","sources":["../../../../src/global/blue/CjsScriptCallback.js"],"sourcesContent":["// Source: blueexposure/include/BlueScriptCallback.h\n// blueexposure/BlueScriptCallback.cpp\n//\n// Carbon's BlueScriptCallback: \"encapsulates script callback functions. One can\n// store a script function in BlueScriptCallback and subsequently call it from\n// C++.\" Tr2MainWindow holds sixteen of them - every window, mouse, key, focus\n// and IME hook it exposes (Tr2MainWindow.h:191-226) - so the type is the\n// donor's, not ours.\n//\n// ONE CONCRETE CLASS, BECAUSE THAT IS WHAT CARBON HAS. This was previously a\n// nominal base with two private subclasses adapting a function and a\n// callback-shaped object. Carbon has no such hierarchy: it stores one\n// BlueScriptValue and dispatches on it. The subclasses were also what made the\n// file unsplittable - the base's `from` constructed them while they extended\n// it, which is an ESM cycle that throws on evaluation.\n//\n// Call AND CallVoid ARE CARBON'S PAIR, not an invention: Call takes the return\n// value by reference, CallVoid discards it (BlueScriptCallback.h:67-104).\n//\n// WHAT DIVERGES, AND WHY. Carbon returns BlueScriptCallbackStatus from every\n// call, carrying OK / CALL_ERROR / EXCEPTION plus the captured Python type,\n// value and traceback, so a caller can MuteException or ReportException. That\n// object exists because a C++ caller cannot see a Python exception any other\n// way. JavaScript has one exception mechanism for both sides, so a throwing\n// callback simply propagates, and no status is returned. Nothing here consumes\n// a status today; if mute/report behaviour is ever needed, it is a real port of\n// BlueScriptCallbackStatus and not a flag on this class.\nimport { CjsSchema, impl } from \"../schema/index.js\";\n\n/**\n * A stored script callback that can be invoked later.\n *\n * External JavaScript functions and callback-shaped host objects are adapted\n * once through {@link CjsScriptCallback.from}; runtime hot paths then call\n * `Call` or `CallVoid` directly.\n */\nexport class CjsScriptCallback\n{\n\n /** Carbon's `m_callback` (BlueScriptValue): the stored callable, or null. */\n #callback = null;\n\n /**\n * Wraps one already-validated callable.\n *\n * Carbon's default constructor leaves the callback null, which is the\n * invalid state `IsValid` reports; constructing with no argument does the\n * same here. Prefer `from` at any boundary, which validates first.\n *\n * @param {Function|{Call: Function, CallVoid: Function}|null} [callback]\n */\n constructor(callback = null)\n {\n this.#callback = callback ?? null;\n }\n\n /**\n * Adapts one external callback value to this nominal identity.\n *\n * Carbon reaches the same point through BlueExtractArgumentImpl, which\n * extracts a callable out of a script argument and rejects anything else\n * (BlueScriptCallback.h:112-117). This is that boundary in JavaScript.\n *\n * @param {CjsScriptCallback|Function|object|null|undefined} value - Callback boundary value.\n * @returns {CjsScriptCallback|null} A nominal callback or null.\n */\n static from(value)\n {\n if (value === null || value === undefined) return null;\n if (value instanceof CjsScriptCallback) return value;\n if (typeof value === \"function\") return new CjsScriptCallback(value);\n if (typeof value !== \"object\" || typeof value.Call !== \"function\" || typeof value.CallVoid !== \"function\")\n {\n throw new TypeError(\"A script callback must be a function, CjsScriptCallback, or object with Call and CallVoid methods.\");\n }\n return new CjsScriptCallback(value);\n }\n\n /**\n * Reports whether a callback is stored.\n *\n * @returns {boolean} True when this callback can be invoked.\n */\n IsValid()\n {\n return this.#callback !== null;\n }\n\n /**\n * Releases the stored callback, leaving this invalid.\n *\n * @returns {void}\n */\n Destroy()\n {\n this.#callback = null;\n }\n\n /**\n * Invokes a callback whose return value is significant.\n *\n * An invalid callback does nothing and returns undefined, matching Carbon,\n * which returns CALL_ERROR rather than failing\n * (BlueScriptCallback.cpp:282-287).\n *\n * @param {...*} args - Callback arguments.\n * @returns {*} Callback result, or undefined when invalid.\n */\n Call(...args)\n {\n const callback = this.#callback;\n\n if (callback === null) return undefined;\n return typeof callback === \"function\" ? callback(...args) : callback.Call(...args);\n }\n\n /**\n * Invokes a notification callback and discards its result.\n *\n * @param {...*} args - Callback arguments.\n * @returns {void}\n */\n CallVoid(...args)\n {\n const callback = this.#callback;\n\n if (callback === null) return;\n if (typeof callback === \"function\") callback(...args);\n else callback.CallVoid(...args);\n }\n\n}\n\n// DECLARED AS CALLS, NOT DECORATORS, matching every other file in this folder.\nCjsSchema.decorateMethod(CjsScriptCallback, \"IsValid\", impl.implemented);\nCjsSchema.decorateMethod(CjsScriptCallback, \"Destroy\", impl.implemented);\nCjsSchema.decorateMethod(CjsScriptCallback, \"Call\", impl.adapted);\nCjsSchema.decorateMethod(CjsScriptCallback, \"Call\", impl.reason(\"Carbon returns BlueScriptCallbackStatus so a C++ caller can see a Python exception; JavaScript shares one exception mechanism, so a throwing callback propagates and no status is returned.\"));\nCjsSchema.decorateMethod(CjsScriptCallback, \"CallVoid\", impl.adapted);\nCjsSchema.decorateMethod(CjsScriptCallback, \"CallVoid\", impl.reason(\"Carbon returns BlueScriptCallbackStatus so a C++ caller can see a Python exception; JavaScript shares one exception mechanism, so a throwing callback propagates and no status is returned.\"));\n\n// THE DONOR IS NAMED, not left to be derived from this class's name. The port\n// keeps its Cjs name - schema can call a class whatever we want - and this\n// declaration is the only thing tying it back to BlueScriptCallback. Without it\n// a deliberately renamed port is indistinguishable from an invention, which is\n// exactly how this class read before 2026-09-13.\nCjsSchema.define(CjsScriptCallback, { className: \"CjsScriptCallback\", carbon: \"BlueScriptCallback\" });\n"],"names":["CjsScriptCallback","constructor","callback","from","value","undefined","Call","CallVoid","TypeError","IsValid","Destroy","args","CjsSchema","decorateMethod","impl","implemented","adapted","reason","define","className","carbon"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { CjsScriptCallback } from './CjsScriptCallback.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -230,5 +230,55 @@ const PixelFormatFromCanonical = Object.freeze({
230
230
  "bc7-rgba-unorm-srgb": PixelFormat.PIXEL_FORMAT_BC7_UNORM_SRGB
231
231
  });
232
232
 
233
- export { DepthStencilFormat, GetBlockByteSize, GetBytesPerPixel, IsCompressedFormat, PixelFormat, PixelFormatFromCanonical, TextureType };
233
+ /**
234
+ * Carbon's `ExFlag` (`Tr2RenderContextEnum.h:201-207`): extra creation options.
235
+ *
236
+ * A BITFIELD, and Carbon declares an `operator|` for it. Note the gap - there
237
+ * is no `1 << 2`, and transcribing these as 0,1,2,3 would silently make
238
+ * DRAW_INDIRECT collide with a flag Carbon does not have.
239
+ */
240
+ const ExFlag = Object.freeze({
241
+ EX_NONE: 0,
242
+ EX_CREATE_SHARED: 1,
243
+ EX_BIND_UNORDERED_ACCESS: 2,
244
+ EX_DRAW_INDIRECT: 8
245
+ });
246
+
247
+ /**
248
+ * Maps a depth-stencil format to the pixel format a texture is created with.
249
+ *
250
+ * Carbon `Tr2RenderContextEnum::ConvertDepthStencilFormat`
251
+ * (`Tr2RenderContextEnum.cpp:177-193`). It lives beside the two enums it maps
252
+ * between rather than on any one caller: `Tr2DepthStencil` needs it and so does
253
+ * Metal's upscaling path, and a second copy is how two tables drift.
254
+ *
255
+ * AUTO AND READABLE RESOLVE TO D24S8, which is Carbon's choice rather than an
256
+ * inference - they share a case with the explicit D24 formats. Anything else,
257
+ * including the lockable D15S1 and D24X4S4 that no backend here creates,
258
+ * resolves to UNKNOWN, and a texture create refuses it.
259
+ *
260
+ * @param {number} format A `DepthStencilFormat` value.
261
+ * @returns {number} A `PixelFormat` value.
262
+ */
263
+ function ConvertDepthStencilFormat(format) {
264
+ switch (format) {
265
+ case DepthStencilFormat.DSFMT_D24S8:
266
+ case DepthStencilFormat.DSFMT_D24X8:
267
+ case DepthStencilFormat.DSFMT_AUTO:
268
+ case DepthStencilFormat.DSFMT_READABLE:
269
+ case DepthStencilFormat.DSFMT_D24FS8:
270
+ return PixelFormat.PIXEL_FORMAT_D24_UNORM_S8_UINT;
271
+ case DepthStencilFormat.DSFMT_D16:
272
+ case DepthStencilFormat.DSFMT_D16_LOCKABLE:
273
+ return PixelFormat.PIXEL_FORMAT_D16_UNORM;
274
+ case DepthStencilFormat.DSFMT_D32:
275
+ case DepthStencilFormat.DSFMT_D32F:
276
+ case DepthStencilFormat.DSFMT_D32F_LOCKABLE:
277
+ return PixelFormat.PIXEL_FORMAT_D32_FLOAT;
278
+ default:
279
+ return PixelFormat.PIXEL_FORMAT_UNKNOWN;
280
+ }
281
+ }
282
+
283
+ export { ConvertDepthStencilFormat, DepthStencilFormat, ExFlag, GetBlockByteSize, GetBytesPerPixel, IsCompressedFormat, PixelFormat, PixelFormatFromCanonical, TextureType };
234
284
  //# sourceMappingURL=formats.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"formats.js","sources":["../../../../../src/global/consts/renderContext/formats.js"],"sourcesContent":["// Source: trinity/trinityal/Tr2RenderContextEnum.h (PixelFormat, DepthStencilFormat)\n// Source: trinity/shadercompiler/EffectData.h (TextureType)\n\r\n/** Carbon numeric GPU pixel formats (distinct from the abstract graphics/pixelFormats string vocabulary). */\r\nexport const PixelFormat = Object.freeze({\r\n PIXEL_FORMAT_UNKNOWN: 0,\r\n PIXEL_FORMAT_R32G32B32A32_TYPELESS: 1,\r\n PIXEL_FORMAT_R32G32B32A32_FLOAT: 2,\r\n PIXEL_FORMAT_R32G32B32A32_UINT: 3,\r\n PIXEL_FORMAT_R32G32B32A32_SINT: 4,\r\n PIXEL_FORMAT_R32G32B32_TYPELESS: 5,\r\n PIXEL_FORMAT_R32G32B32_FLOAT: 6,\r\n PIXEL_FORMAT_R32G32B32_UINT: 7,\r\n PIXEL_FORMAT_R32G32B32_SINT: 8,\r\n PIXEL_FORMAT_R16G16B16A16_TYPELESS: 9,\r\n PIXEL_FORMAT_R16G16B16A16_FLOAT: 10,\r\n PIXEL_FORMAT_R16G16B16A16_UNORM: 11,\r\n PIXEL_FORMAT_R16G16B16A16_UINT: 12,\r\n PIXEL_FORMAT_R16G16B16A16_SNORM: 13,\r\n PIXEL_FORMAT_R16G16B16A16_SINT: 14,\r\n PIXEL_FORMAT_R32G32_TYPELESS: 15,\r\n PIXEL_FORMAT_R32G32_FLOAT: 16,\r\n PIXEL_FORMAT_R32G32_UINT: 17,\r\n PIXEL_FORMAT_R32G32_SINT: 18,\r\n PIXEL_FORMAT_R32G8X24_TYPELESS: 19,\r\n PIXEL_FORMAT_D32_FLOAT_S8X24_UINT: 20,\r\n PIXEL_FORMAT_R32_FLOAT_X8X24_TYPELESS: 21,\r\n PIXEL_FORMAT_X32_TYPELESS_G8X24_UINT: 22,\r\n PIXEL_FORMAT_R10G10B10A2_TYPELESS: 23,\r\n PIXEL_FORMAT_R10G10B10A2_UNORM: 24,\r\n PIXEL_FORMAT_R10G10B10A2_UINT: 25,\r\n PIXEL_FORMAT_R11G11B10_FLOAT: 26,\r\n PIXEL_FORMAT_R8G8B8A8_TYPELESS: 27,\r\n PIXEL_FORMAT_R8G8B8A8_UNORM: 28,\r\n PIXEL_FORMAT_R8G8B8A8_UNORM_SRGB: 29,\r\n PIXEL_FORMAT_R8G8B8A8_UINT: 30,\r\n PIXEL_FORMAT_R8G8B8A8_SNORM: 31,\r\n PIXEL_FORMAT_R8G8B8A8_SINT: 32,\r\n PIXEL_FORMAT_R16G16_TYPELESS: 33,\r\n PIXEL_FORMAT_R16G16_FLOAT: 34,\r\n PIXEL_FORMAT_R16G16_UNORM: 35,\r\n PIXEL_FORMAT_R16G16_UINT: 36,\r\n PIXEL_FORMAT_R16G16_SNORM: 37,\r\n PIXEL_FORMAT_R16G16_SINT: 38,\r\n PIXEL_FORMAT_R32_TYPELESS: 39,\r\n PIXEL_FORMAT_D32_FLOAT: 40,\r\n PIXEL_FORMAT_R32_FLOAT: 41,\r\n PIXEL_FORMAT_R32_UINT: 42,\r\n PIXEL_FORMAT_R32_SINT: 43,\r\n PIXEL_FORMAT_R24G8_TYPELESS: 44,\r\n PIXEL_FORMAT_D24_UNORM_S8_UINT: 45,\r\n PIXEL_FORMAT_R24_UNORM_X8_TYPELESS: 46,\r\n PIXEL_FORMAT_X24_TYPELESS_G8_UINT: 47,\r\n PIXEL_FORMAT_R8G8_TYPELESS: 48,\r\n PIXEL_FORMAT_R8G8_UNORM: 49,\r\n PIXEL_FORMAT_R8G8_UINT: 50,\r\n PIXEL_FORMAT_R8G8_SNORM: 51,\r\n PIXEL_FORMAT_R8G8_SINT: 52,\r\n PIXEL_FORMAT_R16_TYPELESS: 53,\r\n PIXEL_FORMAT_R16_FLOAT: 54,\r\n PIXEL_FORMAT_D16_UNORM: 55,\r\n PIXEL_FORMAT_R16_UNORM: 56,\r\n PIXEL_FORMAT_R16_UINT: 57,\r\n PIXEL_FORMAT_R16_SNORM: 58,\r\n PIXEL_FORMAT_R16_SINT: 59,\r\n PIXEL_FORMAT_R8_TYPELESS: 60,\r\n PIXEL_FORMAT_R8_UNORM: 61,\r\n PIXEL_FORMAT_R8_UINT: 62,\r\n PIXEL_FORMAT_R8_SNORM: 63,\r\n PIXEL_FORMAT_R8_SINT: 64,\r\n PIXEL_FORMAT_A8_UNORM: 65,\r\n PIXEL_FORMAT_R1_UNORM: 66,\r\n PIXEL_FORMAT_R9G9B9E5_SHAREDEXP: 67,\r\n PIXEL_FORMAT_R8G8_B8G8_UNORM: 68,\r\n PIXEL_FORMAT_G8R8_G8B8_UNORM: 69,\r\n PIXEL_FORMAT_BC1_TYPELESS: 70,\r\n PIXEL_FORMAT_BC1_UNORM: 71,\r\n PIXEL_FORMAT_BC1_UNORM_SRGB: 72,\r\n PIXEL_FORMAT_BC2_TYPELESS: 73,\r\n PIXEL_FORMAT_BC2_UNORM: 74,\r\n PIXEL_FORMAT_BC2_UNORM_SRGB: 75,\r\n PIXEL_FORMAT_BC3_TYPELESS: 76,\r\n PIXEL_FORMAT_BC3_UNORM: 77,\r\n PIXEL_FORMAT_BC3_UNORM_SRGB: 78,\r\n PIXEL_FORMAT_BC4_TYPELESS: 79,\r\n PIXEL_FORMAT_BC4_UNORM: 80,\r\n PIXEL_FORMAT_BC4_SNORM: 81,\r\n PIXEL_FORMAT_BC5_TYPELESS: 82,\r\n PIXEL_FORMAT_BC5_UNORM: 83,\r\n PIXEL_FORMAT_BC5_SNORM: 84,\r\n PIXEL_FORMAT_B5G6R5_UNORM: 85,\r\n PIXEL_FORMAT_B5G5R5A1_UNORM: 86,\r\n PIXEL_FORMAT_B8G8R8A8_UNORM: 87,\r\n PIXEL_FORMAT_B8G8R8X8_UNORM: 88,\r\n PIXEL_FORMAT_R10G10B10_XR_BIAS_A2_UNORM: 89,\r\n PIXEL_FORMAT_B8G8R8A8_TYPELESS: 90,\r\n PIXEL_FORMAT_B8G8R8A8_UNORM_SRGB: 91,\r\n PIXEL_FORMAT_B8G8R8X8_TYPELESS: 92,\r\n PIXEL_FORMAT_B8G8R8X8_UNORM_SRGB: 93,\r\n PIXEL_FORMAT_BC6H_TYPELESS: 94,\r\n PIXEL_FORMAT_BC6H_UF16: 95,\r\n PIXEL_FORMAT_BC6H_SF16: 96,\r\n PIXEL_FORMAT_BC7_TYPELESS: 97,\r\n PIXEL_FORMAT_BC7_UNORM: 98,\r\n PIXEL_FORMAT_BC7_UNORM_SRGB: 99,\r\n PIXEL_FORMAT_SENTINEL: 100,\r\n PIXEL_FORMAT_FORCE_UINT: 4294967295\r\n});\r\n\r\nexport const DepthStencilFormat = Object.freeze({\r\n DSFMT_UNKNOWN: 0,\r\n DSFMT_D24S8: 1,\r\n DSFMT_D24X8: 2,\r\n DSFMT_D24FS8: 3,\r\n DSFMT_D32F: 4,\r\n DSFMT_D32: 5,\r\n DSFMT_READABLE: 6,\r\n DSFMT_AUTO: 7,\r\n DSFMT_D16_LOCKABLE: 8,\r\n DSFMT_D15S1: 9,\r\n DSFMT_D24X4S4: 10,\r\n DSFMT_D16: 11,\r\n DSFMT_D32F_LOCKABLE: 12\r\n});\r\n\r\n/** Carbon texture/buffer view type (Tr2RenderContextEnum::TextureType). */\r\nexport const TextureType = Object.freeze({\r\n TEX_TYPE_1D: 1,\r\n TEX_TYPE_2D: 2,\r\n TEX_TYPE_3D: 3,\r\n TEX_TYPE_CUBE: 4,\r\n TEX_TYPE_TYPELESS: 5,\r\n TEX_TYPE_BUFFER: 6,\r\n TEX_TYPE_STRUCTURED_BUFFER: 7,\r\n TEX_TYPE_TBUFFER: 8,\r\n TEX_TYPE_BYTEADDRESS_BUFFER: 9,\r\n TEX_TYPE_UAV_RWTYPED: 10,\r\n TEX_TYPE_UAV_RWSTRUCTURED: 11,\r\n TEX_TYPE_UAV_RWBYTEADDRESS: 12,\r\n TEX_TYPE_UAV_APPEND_STRUCTURED: 13,\r\n TEX_TYPE_UAV_CONSUME_STRUCTURED: 14,\r\n TEX_TYPE_UAV_RWSTRUCTURED_WITH_COUNTER: 15,\r\n TEX_TYPE_RAYTRACING_ACCELERATION_STRUCTURE: 16,\r\n TEX_TYPE_INVALID: 17\r\n});\r\n\n\n// Carbon keeps the three functions below in the same header as the enum they\n// switch over (`imageio/include/PixelFormat.h:119-295`), so they live here too.\n// They are tables, not policy: every value is transcribed, including the ones\n// that look wrong.\n\nconst COMPRESSED_FORMATS = new Set([\n PixelFormat.PIXEL_FORMAT_BC1_TYPELESS,\n PixelFormat.PIXEL_FORMAT_BC1_UNORM,\n PixelFormat.PIXEL_FORMAT_BC1_UNORM_SRGB,\n PixelFormat.PIXEL_FORMAT_BC2_TYPELESS,\n PixelFormat.PIXEL_FORMAT_BC2_UNORM,\n PixelFormat.PIXEL_FORMAT_BC2_UNORM_SRGB,\n PixelFormat.PIXEL_FORMAT_BC3_TYPELESS,\n PixelFormat.PIXEL_FORMAT_BC3_UNORM,\n PixelFormat.PIXEL_FORMAT_BC3_UNORM_SRGB,\n PixelFormat.PIXEL_FORMAT_BC4_TYPELESS,\n PixelFormat.PIXEL_FORMAT_BC4_UNORM,\n PixelFormat.PIXEL_FORMAT_BC4_SNORM,\n PixelFormat.PIXEL_FORMAT_BC5_TYPELESS,\n PixelFormat.PIXEL_FORMAT_BC5_UNORM,\n PixelFormat.PIXEL_FORMAT_BC5_SNORM,\n PixelFormat.PIXEL_FORMAT_BC6H_TYPELESS,\n PixelFormat.PIXEL_FORMAT_BC6H_UF16,\n PixelFormat.PIXEL_FORMAT_BC6H_SF16,\n PixelFormat.PIXEL_FORMAT_BC7_TYPELESS,\n PixelFormat.PIXEL_FORMAT_BC7_UNORM,\n PixelFormat.PIXEL_FORMAT_BC7_UNORM_SRGB\n]);\n\n/** Eight-byte block formats; every other compressed format is sixteen. */\nconst EIGHT_BYTE_BLOCK_FORMATS = new Set([\n PixelFormat.PIXEL_FORMAT_BC1_TYPELESS,\n PixelFormat.PIXEL_FORMAT_BC1_UNORM,\n PixelFormat.PIXEL_FORMAT_BC1_UNORM_SRGB,\n PixelFormat.PIXEL_FORMAT_BC4_TYPELESS,\n PixelFormat.PIXEL_FORMAT_BC4_UNORM,\n PixelFormat.PIXEL_FORMAT_BC4_SNORM\n]);\n\n/**\n * Whether a format stores blocks rather than pixels.\n *\n * @param {number} format A `PixelFormat` value.\n * @returns {boolean} True for the BC family.\n */\nexport function IsCompressedFormat(format)\n{\n return COMPRESSED_FORMATS.has(format);\n}\n\n/**\n * Bytes in one compressed block, or 0 when the format is not a block image.\n *\n * @param {number} format A `PixelFormat` value.\n * @returns {number} Block size in bytes.\n */\nexport function GetBlockByteSize(format)\n{\n if (!COMPRESSED_FORMATS.has(format)) return 0;\n\n return EIGHT_BYTE_BLOCK_FORMATS.has(format) ? 8 : 16;\n}\n\n// CARBON'S TABLE, INCLUDING THE THREE-CHANNEL ENTRY. The R32G32B32 formats are\n// listed with the four-channel ones and so report 16 bytes rather than 12\n// (`PixelFormat.h:203-215`). That is deliberate transcription, not an oversight:\n// changing it here would make our mip pitch disagree with the engine we mirror.\nconst BYTES_PER_PIXEL = new Map([\n [ 16, [\n PixelFormat.PIXEL_FORMAT_R32G32B32A32_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R32G32B32A32_FLOAT,\n PixelFormat.PIXEL_FORMAT_R32G32B32A32_UINT,\n PixelFormat.PIXEL_FORMAT_R32G32B32A32_SINT,\n PixelFormat.PIXEL_FORMAT_R32G32B32_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R32G32B32_FLOAT,\n PixelFormat.PIXEL_FORMAT_R32G32B32_UINT,\n PixelFormat.PIXEL_FORMAT_R32G32B32_SINT\n ] ],\n [ 8, [\n PixelFormat.PIXEL_FORMAT_R16G16B16A16_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R16G16B16A16_FLOAT,\n PixelFormat.PIXEL_FORMAT_R16G16B16A16_UNORM,\n PixelFormat.PIXEL_FORMAT_R16G16B16A16_UINT,\n PixelFormat.PIXEL_FORMAT_R16G16B16A16_SNORM,\n PixelFormat.PIXEL_FORMAT_R16G16B16A16_SINT,\n PixelFormat.PIXEL_FORMAT_R32G32_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R32G32_FLOAT,\n PixelFormat.PIXEL_FORMAT_R32G32_UINT,\n PixelFormat.PIXEL_FORMAT_R32G32_SINT,\n PixelFormat.PIXEL_FORMAT_R32G8X24_TYPELESS,\n PixelFormat.PIXEL_FORMAT_D32_FLOAT_S8X24_UINT,\n PixelFormat.PIXEL_FORMAT_R32_FLOAT_X8X24_TYPELESS,\n PixelFormat.PIXEL_FORMAT_X32_TYPELESS_G8X24_UINT\n ] ],\n [ 4, [\n PixelFormat.PIXEL_FORMAT_R10G10B10A2_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R10G10B10A2_UNORM,\n PixelFormat.PIXEL_FORMAT_R10G10B10A2_UINT,\n PixelFormat.PIXEL_FORMAT_R11G11B10_FLOAT,\n PixelFormat.PIXEL_FORMAT_R8G8B8A8_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R8G8B8A8_UNORM,\n PixelFormat.PIXEL_FORMAT_R8G8B8A8_UNORM_SRGB,\n PixelFormat.PIXEL_FORMAT_R8G8B8A8_UINT,\n PixelFormat.PIXEL_FORMAT_R8G8B8A8_SNORM,\n PixelFormat.PIXEL_FORMAT_R8G8B8A8_SINT,\n PixelFormat.PIXEL_FORMAT_R16G16_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R16G16_FLOAT,\n PixelFormat.PIXEL_FORMAT_R16G16_UNORM,\n PixelFormat.PIXEL_FORMAT_R16G16_UINT,\n PixelFormat.PIXEL_FORMAT_R16G16_SNORM,\n PixelFormat.PIXEL_FORMAT_R16G16_SINT,\n PixelFormat.PIXEL_FORMAT_R32_TYPELESS,\n PixelFormat.PIXEL_FORMAT_D32_FLOAT,\n PixelFormat.PIXEL_FORMAT_R32_FLOAT,\n PixelFormat.PIXEL_FORMAT_R32_UINT,\n PixelFormat.PIXEL_FORMAT_R32_SINT,\n PixelFormat.PIXEL_FORMAT_R24G8_TYPELESS,\n PixelFormat.PIXEL_FORMAT_D24_UNORM_S8_UINT,\n PixelFormat.PIXEL_FORMAT_R24_UNORM_X8_TYPELESS,\n PixelFormat.PIXEL_FORMAT_X24_TYPELESS_G8_UINT,\n PixelFormat.PIXEL_FORMAT_R9G9B9E5_SHAREDEXP,\n PixelFormat.PIXEL_FORMAT_R8G8_B8G8_UNORM,\n PixelFormat.PIXEL_FORMAT_G8R8_G8B8_UNORM,\n PixelFormat.PIXEL_FORMAT_B8G8R8A8_UNORM,\n PixelFormat.PIXEL_FORMAT_B8G8R8X8_UNORM,\n PixelFormat.PIXEL_FORMAT_R10G10B10_XR_BIAS_A2_UNORM,\n PixelFormat.PIXEL_FORMAT_B8G8R8A8_TYPELESS,\n PixelFormat.PIXEL_FORMAT_B8G8R8A8_UNORM_SRGB,\n PixelFormat.PIXEL_FORMAT_B8G8R8X8_TYPELESS,\n PixelFormat.PIXEL_FORMAT_B8G8R8X8_UNORM_SRGB\n ] ],\n [ 2, [\n PixelFormat.PIXEL_FORMAT_R8G8_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R8G8_UNORM,\n PixelFormat.PIXEL_FORMAT_R8G8_UINT,\n PixelFormat.PIXEL_FORMAT_R8G8_SNORM,\n PixelFormat.PIXEL_FORMAT_R8G8_SINT,\n PixelFormat.PIXEL_FORMAT_R16_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R16_FLOAT,\n PixelFormat.PIXEL_FORMAT_D16_UNORM,\n PixelFormat.PIXEL_FORMAT_R16_UNORM,\n PixelFormat.PIXEL_FORMAT_R16_UINT,\n PixelFormat.PIXEL_FORMAT_R16_SNORM,\n PixelFormat.PIXEL_FORMAT_R16_SINT,\n PixelFormat.PIXEL_FORMAT_B5G6R5_UNORM,\n PixelFormat.PIXEL_FORMAT_B5G5R5A1_UNORM\n ] ],\n [ 1, [\n PixelFormat.PIXEL_FORMAT_R8_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R8_UNORM,\n PixelFormat.PIXEL_FORMAT_R8_UINT,\n PixelFormat.PIXEL_FORMAT_R8_SNORM,\n PixelFormat.PIXEL_FORMAT_R8_SINT,\n PixelFormat.PIXEL_FORMAT_A8_UNORM\n ] ]\n]);\n\nconst BYTES_BY_FORMAT = new Map();\n\nfor (const [ bytes, formats ] of BYTES_PER_PIXEL)\n{\n for (const format of formats) BYTES_BY_FORMAT.set(format, bytes);\n}\n\n/**\n * Bytes in one pixel, or 0 for a compressed or unknown format.\n *\n * @param {number} format A `PixelFormat` value.\n * @returns {number} Size in bytes.\n */\nexport function GetBytesPerPixel(format)\n{\n const bytes = BYTES_BY_FORMAT.get(format);\n\n return bytes === undefined ? 0 : bytes;\n}\n\n\n/**\n * The canonical pixel-format STRING a texture payload carries\n * (`graphics/pixelFormats.js`, what the DDS and image readers emit) to Carbon's\n * numeric enum, which `Tr2BitmapDimensions` and every `Tr2TextureAL` speak.\n * Typeless, depth and packed formats have no string and are absent.\n */\nexport const PixelFormatFromCanonical = Object.freeze({\n \"r8unorm\": PixelFormat.PIXEL_FORMAT_R8_UNORM,\n \"rg8unorm\": PixelFormat.PIXEL_FORMAT_R8G8_UNORM,\n \"rgba8unorm\": PixelFormat.PIXEL_FORMAT_R8G8B8A8_UNORM,\n \"rgba8unorm-srgb\": PixelFormat.PIXEL_FORMAT_R8G8B8A8_UNORM_SRGB,\n \"bgra8unorm\": PixelFormat.PIXEL_FORMAT_B8G8R8A8_UNORM,\n \"bgra8unorm-srgb\": PixelFormat.PIXEL_FORMAT_B8G8R8A8_UNORM_SRGB,\n \"r16float\": PixelFormat.PIXEL_FORMAT_R16_FLOAT,\n \"rg16float\": PixelFormat.PIXEL_FORMAT_R16G16_FLOAT,\n \"rgba16float\": PixelFormat.PIXEL_FORMAT_R16G16B16A16_FLOAT,\n \"r32float\": PixelFormat.PIXEL_FORMAT_R32_FLOAT,\n \"rg32float\": PixelFormat.PIXEL_FORMAT_R32G32_FLOAT,\n \"rgba32float\": PixelFormat.PIXEL_FORMAT_R32G32B32A32_FLOAT,\n \"bc1-rgba-unorm\": PixelFormat.PIXEL_FORMAT_BC1_UNORM,\n \"bc1-rgba-unorm-srgb\": PixelFormat.PIXEL_FORMAT_BC1_UNORM_SRGB,\n \"bc2-rgba-unorm\": PixelFormat.PIXEL_FORMAT_BC2_UNORM,\n \"bc2-rgba-unorm-srgb\": PixelFormat.PIXEL_FORMAT_BC2_UNORM_SRGB,\n \"bc3-rgba-unorm\": PixelFormat.PIXEL_FORMAT_BC3_UNORM,\n \"bc3-rgba-unorm-srgb\": PixelFormat.PIXEL_FORMAT_BC3_UNORM_SRGB,\n \"bc4-r-unorm\": PixelFormat.PIXEL_FORMAT_BC4_UNORM,\n \"bc4-r-snorm\": PixelFormat.PIXEL_FORMAT_BC4_SNORM,\n \"bc5-rg-unorm\": PixelFormat.PIXEL_FORMAT_BC5_UNORM,\n \"bc5-rg-snorm\": PixelFormat.PIXEL_FORMAT_BC5_SNORM,\n \"bc6h-rgb-ufloat\": PixelFormat.PIXEL_FORMAT_BC6H_UF16,\n \"bc6h-rgb-float\": PixelFormat.PIXEL_FORMAT_BC6H_SF16,\n \"bc7-rgba-unorm\": PixelFormat.PIXEL_FORMAT_BC7_UNORM,\n \"bc7-rgba-unorm-srgb\": PixelFormat.PIXEL_FORMAT_BC7_UNORM_SRGB\n});\n"],"names":["PixelFormat","Object","freeze","PIXEL_FORMAT_UNKNOWN","PIXEL_FORMAT_R32G32B32A32_TYPELESS","PIXEL_FORMAT_R32G32B32A32_FLOAT","PIXEL_FORMAT_R32G32B32A32_UINT","PIXEL_FORMAT_R32G32B32A32_SINT","PIXEL_FORMAT_R32G32B32_TYPELESS","PIXEL_FORMAT_R32G32B32_FLOAT","PIXEL_FORMAT_R32G32B32_UINT","PIXEL_FORMAT_R32G32B32_SINT","PIXEL_FORMAT_R16G16B16A16_TYPELESS","PIXEL_FORMAT_R16G16B16A16_FLOAT","PIXEL_FORMAT_R16G16B16A16_UNORM","PIXEL_FORMAT_R16G16B16A16_UINT","PIXEL_FORMAT_R16G16B16A16_SNORM","PIXEL_FORMAT_R16G16B16A16_SINT","PIXEL_FORMAT_R32G32_TYPELESS","PIXEL_FORMAT_R32G32_FLOAT","PIXEL_FORMAT_R32G32_UINT","PIXEL_FORMAT_R32G32_SINT","PIXEL_FORMAT_R32G8X24_TYPELESS","PIXEL_FORMAT_D32_FLOAT_S8X24_UINT","PIXEL_FORMAT_R32_FLOAT_X8X24_TYPELESS","PIXEL_FORMAT_X32_TYPELESS_G8X24_UINT","PIXEL_FORMAT_R10G10B10A2_TYPELESS","PIXEL_FORMAT_R10G10B10A2_UNORM","PIXEL_FORMAT_R10G10B10A2_UINT","PIXEL_FORMAT_R11G11B10_FLOAT","PIXEL_FORMAT_R8G8B8A8_TYPELESS","PIXEL_FORMAT_R8G8B8A8_UNORM","PIXEL_FORMAT_R8G8B8A8_UNORM_SRGB","PIXEL_FORMAT_R8G8B8A8_UINT","PIXEL_FORMAT_R8G8B8A8_SNORM","PIXEL_FORMAT_R8G8B8A8_SINT","PIXEL_FORMAT_R16G16_TYPELESS","PIXEL_FORMAT_R16G16_FLOAT","PIXEL_FORMAT_R16G16_UNORM","PIXEL_FORMAT_R16G16_UINT","PIXEL_FORMAT_R16G16_SNORM","PIXEL_FORMAT_R16G16_SINT","PIXEL_FORMAT_R32_TYPELESS","PIXEL_FORMAT_D32_FLOAT","PIXEL_FORMAT_R32_FLOAT","PIXEL_FORMAT_R32_UINT","PIXEL_FORMAT_R32_SINT","PIXEL_FORMAT_R24G8_TYPELESS","PIXEL_FORMAT_D24_UNORM_S8_UINT","PIXEL_FORMAT_R24_UNORM_X8_TYPELESS","PIXEL_FORMAT_X24_TYPELESS_G8_UINT","PIXEL_FORMAT_R8G8_TYPELESS","PIXEL_FORMAT_R8G8_UNORM","PIXEL_FORMAT_R8G8_UINT","PIXEL_FORMAT_R8G8_SNORM","PIXEL_FORMAT_R8G8_SINT","PIXEL_FORMAT_R16_TYPELESS","PIXEL_FORMAT_R16_FLOAT","PIXEL_FORMAT_D16_UNORM","PIXEL_FORMAT_R16_UNORM","PIXEL_FORMAT_R16_UINT","PIXEL_FORMAT_R16_SNORM","PIXEL_FORMAT_R16_SINT","PIXEL_FORMAT_R8_TYPELESS","PIXEL_FORMAT_R8_UNORM","PIXEL_FORMAT_R8_UINT","PIXEL_FORMAT_R8_SNORM","PIXEL_FORMAT_R8_SINT","PIXEL_FORMAT_A8_UNORM","PIXEL_FORMAT_R1_UNORM","PIXEL_FORMAT_R9G9B9E5_SHAREDEXP","PIXEL_FORMAT_R8G8_B8G8_UNORM","PIXEL_FORMAT_G8R8_G8B8_UNORM","PIXEL_FORMAT_BC1_TYPELESS","PIXEL_FORMAT_BC1_UNORM","PIXEL_FORMAT_BC1_UNORM_SRGB","PIXEL_FORMAT_BC2_TYPELESS","PIXEL_FORMAT_BC2_UNORM","PIXEL_FORMAT_BC2_UNORM_SRGB","PIXEL_FORMAT_BC3_TYPELESS","PIXEL_FORMAT_BC3_UNORM","PIXEL_FORMAT_BC3_UNORM_SRGB","PIXEL_FORMAT_BC4_TYPELESS","PIXEL_FORMAT_BC4_UNORM","PIXEL_FORMAT_BC4_SNORM","PIXEL_FORMAT_BC5_TYPELESS","PIXEL_FORMAT_BC5_UNORM","PIXEL_FORMAT_BC5_SNORM","PIXEL_FORMAT_B5G6R5_UNORM","PIXEL_FORMAT_B5G5R5A1_UNORM","PIXEL_FORMAT_B8G8R8A8_UNORM","PIXEL_FORMAT_B8G8R8X8_UNORM","PIXEL_FORMAT_R10G10B10_XR_BIAS_A2_UNORM","PIXEL_FORMAT_B8G8R8A8_TYPELESS","PIXEL_FORMAT_B8G8R8A8_UNORM_SRGB","PIXEL_FORMAT_B8G8R8X8_TYPELESS","PIXEL_FORMAT_B8G8R8X8_UNORM_SRGB","PIXEL_FORMAT_BC6H_TYPELESS","PIXEL_FORMAT_BC6H_UF16","PIXEL_FORMAT_BC6H_SF16","PIXEL_FORMAT_BC7_TYPELESS","PIXEL_FORMAT_BC7_UNORM","PIXEL_FORMAT_BC7_UNORM_SRGB","PIXEL_FORMAT_SENTINEL","PIXEL_FORMAT_FORCE_UINT","DepthStencilFormat","DSFMT_UNKNOWN","DSFMT_D24S8","DSFMT_D24X8","DSFMT_D24FS8","DSFMT_D32F","DSFMT_D32","DSFMT_READABLE","DSFMT_AUTO","DSFMT_D16_LOCKABLE","DSFMT_D15S1","DSFMT_D24X4S4","DSFMT_D16","DSFMT_D32F_LOCKABLE","TextureType","TEX_TYPE_1D","TEX_TYPE_2D","TEX_TYPE_3D","TEX_TYPE_CUBE","TEX_TYPE_TYPELESS","TEX_TYPE_BUFFER","TEX_TYPE_STRUCTURED_BUFFER","TEX_TYPE_TBUFFER","TEX_TYPE_BYTEADDRESS_BUFFER","TEX_TYPE_UAV_RWTYPED","TEX_TYPE_UAV_RWSTRUCTURED","TEX_TYPE_UAV_RWBYTEADDRESS","TEX_TYPE_UAV_APPEND_STRUCTURED","TEX_TYPE_UAV_CONSUME_STRUCTURED","TEX_TYPE_UAV_RWSTRUCTURED_WITH_COUNTER","TEX_TYPE_RAYTRACING_ACCELERATION_STRUCTURE","TEX_TYPE_INVALID","COMPRESSED_FORMATS","Set","EIGHT_BYTE_BLOCK_FORMATS","IsCompressedFormat","format","has","GetBlockByteSize","BYTES_PER_PIXEL","Map","BYTES_BY_FORMAT","bytes","formats","set","GetBytesPerPixel","get","undefined","PixelFormatFromCanonical"],"mappings":"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"}
1
+ {"version":3,"file":"formats.js","sources":["../../../../../src/global/consts/renderContext/formats.js"],"sourcesContent":["// Source: trinity/trinityal/Tr2RenderContextEnum.h (PixelFormat, DepthStencilFormat)\n// Source: trinity/shadercompiler/EffectData.h (TextureType)\n\r\n/** Carbon numeric GPU pixel formats (distinct from the abstract graphics/pixelFormats string vocabulary). */\r\nexport const PixelFormat = Object.freeze({\r\n PIXEL_FORMAT_UNKNOWN: 0,\r\n PIXEL_FORMAT_R32G32B32A32_TYPELESS: 1,\r\n PIXEL_FORMAT_R32G32B32A32_FLOAT: 2,\r\n PIXEL_FORMAT_R32G32B32A32_UINT: 3,\r\n PIXEL_FORMAT_R32G32B32A32_SINT: 4,\r\n PIXEL_FORMAT_R32G32B32_TYPELESS: 5,\r\n PIXEL_FORMAT_R32G32B32_FLOAT: 6,\r\n PIXEL_FORMAT_R32G32B32_UINT: 7,\r\n PIXEL_FORMAT_R32G32B32_SINT: 8,\r\n PIXEL_FORMAT_R16G16B16A16_TYPELESS: 9,\r\n PIXEL_FORMAT_R16G16B16A16_FLOAT: 10,\r\n PIXEL_FORMAT_R16G16B16A16_UNORM: 11,\r\n PIXEL_FORMAT_R16G16B16A16_UINT: 12,\r\n PIXEL_FORMAT_R16G16B16A16_SNORM: 13,\r\n PIXEL_FORMAT_R16G16B16A16_SINT: 14,\r\n PIXEL_FORMAT_R32G32_TYPELESS: 15,\r\n PIXEL_FORMAT_R32G32_FLOAT: 16,\r\n PIXEL_FORMAT_R32G32_UINT: 17,\r\n PIXEL_FORMAT_R32G32_SINT: 18,\r\n PIXEL_FORMAT_R32G8X24_TYPELESS: 19,\r\n PIXEL_FORMAT_D32_FLOAT_S8X24_UINT: 20,\r\n PIXEL_FORMAT_R32_FLOAT_X8X24_TYPELESS: 21,\r\n PIXEL_FORMAT_X32_TYPELESS_G8X24_UINT: 22,\r\n PIXEL_FORMAT_R10G10B10A2_TYPELESS: 23,\r\n PIXEL_FORMAT_R10G10B10A2_UNORM: 24,\r\n PIXEL_FORMAT_R10G10B10A2_UINT: 25,\r\n PIXEL_FORMAT_R11G11B10_FLOAT: 26,\r\n PIXEL_FORMAT_R8G8B8A8_TYPELESS: 27,\r\n PIXEL_FORMAT_R8G8B8A8_UNORM: 28,\r\n PIXEL_FORMAT_R8G8B8A8_UNORM_SRGB: 29,\r\n PIXEL_FORMAT_R8G8B8A8_UINT: 30,\r\n PIXEL_FORMAT_R8G8B8A8_SNORM: 31,\r\n PIXEL_FORMAT_R8G8B8A8_SINT: 32,\r\n PIXEL_FORMAT_R16G16_TYPELESS: 33,\r\n PIXEL_FORMAT_R16G16_FLOAT: 34,\r\n PIXEL_FORMAT_R16G16_UNORM: 35,\r\n PIXEL_FORMAT_R16G16_UINT: 36,\r\n PIXEL_FORMAT_R16G16_SNORM: 37,\r\n PIXEL_FORMAT_R16G16_SINT: 38,\r\n PIXEL_FORMAT_R32_TYPELESS: 39,\r\n PIXEL_FORMAT_D32_FLOAT: 40,\r\n PIXEL_FORMAT_R32_FLOAT: 41,\r\n PIXEL_FORMAT_R32_UINT: 42,\r\n PIXEL_FORMAT_R32_SINT: 43,\r\n PIXEL_FORMAT_R24G8_TYPELESS: 44,\r\n PIXEL_FORMAT_D24_UNORM_S8_UINT: 45,\r\n PIXEL_FORMAT_R24_UNORM_X8_TYPELESS: 46,\r\n PIXEL_FORMAT_X24_TYPELESS_G8_UINT: 47,\r\n PIXEL_FORMAT_R8G8_TYPELESS: 48,\r\n PIXEL_FORMAT_R8G8_UNORM: 49,\r\n PIXEL_FORMAT_R8G8_UINT: 50,\r\n PIXEL_FORMAT_R8G8_SNORM: 51,\r\n PIXEL_FORMAT_R8G8_SINT: 52,\r\n PIXEL_FORMAT_R16_TYPELESS: 53,\r\n PIXEL_FORMAT_R16_FLOAT: 54,\r\n PIXEL_FORMAT_D16_UNORM: 55,\r\n PIXEL_FORMAT_R16_UNORM: 56,\r\n PIXEL_FORMAT_R16_UINT: 57,\r\n PIXEL_FORMAT_R16_SNORM: 58,\r\n PIXEL_FORMAT_R16_SINT: 59,\r\n PIXEL_FORMAT_R8_TYPELESS: 60,\r\n PIXEL_FORMAT_R8_UNORM: 61,\r\n PIXEL_FORMAT_R8_UINT: 62,\r\n PIXEL_FORMAT_R8_SNORM: 63,\r\n PIXEL_FORMAT_R8_SINT: 64,\r\n PIXEL_FORMAT_A8_UNORM: 65,\r\n PIXEL_FORMAT_R1_UNORM: 66,\r\n PIXEL_FORMAT_R9G9B9E5_SHAREDEXP: 67,\r\n PIXEL_FORMAT_R8G8_B8G8_UNORM: 68,\r\n PIXEL_FORMAT_G8R8_G8B8_UNORM: 69,\r\n PIXEL_FORMAT_BC1_TYPELESS: 70,\r\n PIXEL_FORMAT_BC1_UNORM: 71,\r\n PIXEL_FORMAT_BC1_UNORM_SRGB: 72,\r\n PIXEL_FORMAT_BC2_TYPELESS: 73,\r\n PIXEL_FORMAT_BC2_UNORM: 74,\r\n PIXEL_FORMAT_BC2_UNORM_SRGB: 75,\r\n PIXEL_FORMAT_BC3_TYPELESS: 76,\r\n PIXEL_FORMAT_BC3_UNORM: 77,\r\n PIXEL_FORMAT_BC3_UNORM_SRGB: 78,\r\n PIXEL_FORMAT_BC4_TYPELESS: 79,\r\n PIXEL_FORMAT_BC4_UNORM: 80,\r\n PIXEL_FORMAT_BC4_SNORM: 81,\r\n PIXEL_FORMAT_BC5_TYPELESS: 82,\r\n PIXEL_FORMAT_BC5_UNORM: 83,\r\n PIXEL_FORMAT_BC5_SNORM: 84,\r\n PIXEL_FORMAT_B5G6R5_UNORM: 85,\r\n PIXEL_FORMAT_B5G5R5A1_UNORM: 86,\r\n PIXEL_FORMAT_B8G8R8A8_UNORM: 87,\r\n PIXEL_FORMAT_B8G8R8X8_UNORM: 88,\r\n PIXEL_FORMAT_R10G10B10_XR_BIAS_A2_UNORM: 89,\r\n PIXEL_FORMAT_B8G8R8A8_TYPELESS: 90,\r\n PIXEL_FORMAT_B8G8R8A8_UNORM_SRGB: 91,\r\n PIXEL_FORMAT_B8G8R8X8_TYPELESS: 92,\r\n PIXEL_FORMAT_B8G8R8X8_UNORM_SRGB: 93,\r\n PIXEL_FORMAT_BC6H_TYPELESS: 94,\r\n PIXEL_FORMAT_BC6H_UF16: 95,\r\n PIXEL_FORMAT_BC6H_SF16: 96,\r\n PIXEL_FORMAT_BC7_TYPELESS: 97,\r\n PIXEL_FORMAT_BC7_UNORM: 98,\r\n PIXEL_FORMAT_BC7_UNORM_SRGB: 99,\r\n PIXEL_FORMAT_SENTINEL: 100,\r\n PIXEL_FORMAT_FORCE_UINT: 4294967295\r\n});\r\n\r\nexport const DepthStencilFormat = Object.freeze({\r\n DSFMT_UNKNOWN: 0,\r\n DSFMT_D24S8: 1,\r\n DSFMT_D24X8: 2,\r\n DSFMT_D24FS8: 3,\r\n DSFMT_D32F: 4,\r\n DSFMT_D32: 5,\r\n DSFMT_READABLE: 6,\r\n DSFMT_AUTO: 7,\r\n DSFMT_D16_LOCKABLE: 8,\r\n DSFMT_D15S1: 9,\r\n DSFMT_D24X4S4: 10,\r\n DSFMT_D16: 11,\r\n DSFMT_D32F_LOCKABLE: 12\r\n});\r\n\r\n/** Carbon texture/buffer view type (Tr2RenderContextEnum::TextureType). */\r\nexport const TextureType = Object.freeze({\r\n TEX_TYPE_1D: 1,\r\n TEX_TYPE_2D: 2,\r\n TEX_TYPE_3D: 3,\r\n TEX_TYPE_CUBE: 4,\r\n TEX_TYPE_TYPELESS: 5,\r\n TEX_TYPE_BUFFER: 6,\r\n TEX_TYPE_STRUCTURED_BUFFER: 7,\r\n TEX_TYPE_TBUFFER: 8,\r\n TEX_TYPE_BYTEADDRESS_BUFFER: 9,\r\n TEX_TYPE_UAV_RWTYPED: 10,\r\n TEX_TYPE_UAV_RWSTRUCTURED: 11,\r\n TEX_TYPE_UAV_RWBYTEADDRESS: 12,\r\n TEX_TYPE_UAV_APPEND_STRUCTURED: 13,\r\n TEX_TYPE_UAV_CONSUME_STRUCTURED: 14,\r\n TEX_TYPE_UAV_RWSTRUCTURED_WITH_COUNTER: 15,\r\n TEX_TYPE_RAYTRACING_ACCELERATION_STRUCTURE: 16,\r\n TEX_TYPE_INVALID: 17\r\n});\r\n\n\n// Carbon keeps the three functions below in the same header as the enum they\n// switch over (`imageio/include/PixelFormat.h:119-295`), so they live here too.\n// They are tables, not policy: every value is transcribed, including the ones\n// that look wrong.\n\nconst COMPRESSED_FORMATS = new Set([\n PixelFormat.PIXEL_FORMAT_BC1_TYPELESS,\n PixelFormat.PIXEL_FORMAT_BC1_UNORM,\n PixelFormat.PIXEL_FORMAT_BC1_UNORM_SRGB,\n PixelFormat.PIXEL_FORMAT_BC2_TYPELESS,\n PixelFormat.PIXEL_FORMAT_BC2_UNORM,\n PixelFormat.PIXEL_FORMAT_BC2_UNORM_SRGB,\n PixelFormat.PIXEL_FORMAT_BC3_TYPELESS,\n PixelFormat.PIXEL_FORMAT_BC3_UNORM,\n PixelFormat.PIXEL_FORMAT_BC3_UNORM_SRGB,\n PixelFormat.PIXEL_FORMAT_BC4_TYPELESS,\n PixelFormat.PIXEL_FORMAT_BC4_UNORM,\n PixelFormat.PIXEL_FORMAT_BC4_SNORM,\n PixelFormat.PIXEL_FORMAT_BC5_TYPELESS,\n PixelFormat.PIXEL_FORMAT_BC5_UNORM,\n PixelFormat.PIXEL_FORMAT_BC5_SNORM,\n PixelFormat.PIXEL_FORMAT_BC6H_TYPELESS,\n PixelFormat.PIXEL_FORMAT_BC6H_UF16,\n PixelFormat.PIXEL_FORMAT_BC6H_SF16,\n PixelFormat.PIXEL_FORMAT_BC7_TYPELESS,\n PixelFormat.PIXEL_FORMAT_BC7_UNORM,\n PixelFormat.PIXEL_FORMAT_BC7_UNORM_SRGB\n]);\n\n/** Eight-byte block formats; every other compressed format is sixteen. */\nconst EIGHT_BYTE_BLOCK_FORMATS = new Set([\n PixelFormat.PIXEL_FORMAT_BC1_TYPELESS,\n PixelFormat.PIXEL_FORMAT_BC1_UNORM,\n PixelFormat.PIXEL_FORMAT_BC1_UNORM_SRGB,\n PixelFormat.PIXEL_FORMAT_BC4_TYPELESS,\n PixelFormat.PIXEL_FORMAT_BC4_UNORM,\n PixelFormat.PIXEL_FORMAT_BC4_SNORM\n]);\n\n/**\n * Whether a format stores blocks rather than pixels.\n *\n * @param {number} format A `PixelFormat` value.\n * @returns {boolean} True for the BC family.\n */\nexport function IsCompressedFormat(format)\n{\n return COMPRESSED_FORMATS.has(format);\n}\n\n/**\n * Bytes in one compressed block, or 0 when the format is not a block image.\n *\n * @param {number} format A `PixelFormat` value.\n * @returns {number} Block size in bytes.\n */\nexport function GetBlockByteSize(format)\n{\n if (!COMPRESSED_FORMATS.has(format)) return 0;\n\n return EIGHT_BYTE_BLOCK_FORMATS.has(format) ? 8 : 16;\n}\n\n// CARBON'S TABLE, INCLUDING THE THREE-CHANNEL ENTRY. The R32G32B32 formats are\n// listed with the four-channel ones and so report 16 bytes rather than 12\n// (`PixelFormat.h:203-215`). That is deliberate transcription, not an oversight:\n// changing it here would make our mip pitch disagree with the engine we mirror.\nconst BYTES_PER_PIXEL = new Map([\n [ 16, [\n PixelFormat.PIXEL_FORMAT_R32G32B32A32_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R32G32B32A32_FLOAT,\n PixelFormat.PIXEL_FORMAT_R32G32B32A32_UINT,\n PixelFormat.PIXEL_FORMAT_R32G32B32A32_SINT,\n PixelFormat.PIXEL_FORMAT_R32G32B32_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R32G32B32_FLOAT,\n PixelFormat.PIXEL_FORMAT_R32G32B32_UINT,\n PixelFormat.PIXEL_FORMAT_R32G32B32_SINT\n ] ],\n [ 8, [\n PixelFormat.PIXEL_FORMAT_R16G16B16A16_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R16G16B16A16_FLOAT,\n PixelFormat.PIXEL_FORMAT_R16G16B16A16_UNORM,\n PixelFormat.PIXEL_FORMAT_R16G16B16A16_UINT,\n PixelFormat.PIXEL_FORMAT_R16G16B16A16_SNORM,\n PixelFormat.PIXEL_FORMAT_R16G16B16A16_SINT,\n PixelFormat.PIXEL_FORMAT_R32G32_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R32G32_FLOAT,\n PixelFormat.PIXEL_FORMAT_R32G32_UINT,\n PixelFormat.PIXEL_FORMAT_R32G32_SINT,\n PixelFormat.PIXEL_FORMAT_R32G8X24_TYPELESS,\n PixelFormat.PIXEL_FORMAT_D32_FLOAT_S8X24_UINT,\n PixelFormat.PIXEL_FORMAT_R32_FLOAT_X8X24_TYPELESS,\n PixelFormat.PIXEL_FORMAT_X32_TYPELESS_G8X24_UINT\n ] ],\n [ 4, [\n PixelFormat.PIXEL_FORMAT_R10G10B10A2_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R10G10B10A2_UNORM,\n PixelFormat.PIXEL_FORMAT_R10G10B10A2_UINT,\n PixelFormat.PIXEL_FORMAT_R11G11B10_FLOAT,\n PixelFormat.PIXEL_FORMAT_R8G8B8A8_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R8G8B8A8_UNORM,\n PixelFormat.PIXEL_FORMAT_R8G8B8A8_UNORM_SRGB,\n PixelFormat.PIXEL_FORMAT_R8G8B8A8_UINT,\n PixelFormat.PIXEL_FORMAT_R8G8B8A8_SNORM,\n PixelFormat.PIXEL_FORMAT_R8G8B8A8_SINT,\n PixelFormat.PIXEL_FORMAT_R16G16_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R16G16_FLOAT,\n PixelFormat.PIXEL_FORMAT_R16G16_UNORM,\n PixelFormat.PIXEL_FORMAT_R16G16_UINT,\n PixelFormat.PIXEL_FORMAT_R16G16_SNORM,\n PixelFormat.PIXEL_FORMAT_R16G16_SINT,\n PixelFormat.PIXEL_FORMAT_R32_TYPELESS,\n PixelFormat.PIXEL_FORMAT_D32_FLOAT,\n PixelFormat.PIXEL_FORMAT_R32_FLOAT,\n PixelFormat.PIXEL_FORMAT_R32_UINT,\n PixelFormat.PIXEL_FORMAT_R32_SINT,\n PixelFormat.PIXEL_FORMAT_R24G8_TYPELESS,\n PixelFormat.PIXEL_FORMAT_D24_UNORM_S8_UINT,\n PixelFormat.PIXEL_FORMAT_R24_UNORM_X8_TYPELESS,\n PixelFormat.PIXEL_FORMAT_X24_TYPELESS_G8_UINT,\n PixelFormat.PIXEL_FORMAT_R9G9B9E5_SHAREDEXP,\n PixelFormat.PIXEL_FORMAT_R8G8_B8G8_UNORM,\n PixelFormat.PIXEL_FORMAT_G8R8_G8B8_UNORM,\n PixelFormat.PIXEL_FORMAT_B8G8R8A8_UNORM,\n PixelFormat.PIXEL_FORMAT_B8G8R8X8_UNORM,\n PixelFormat.PIXEL_FORMAT_R10G10B10_XR_BIAS_A2_UNORM,\n PixelFormat.PIXEL_FORMAT_B8G8R8A8_TYPELESS,\n PixelFormat.PIXEL_FORMAT_B8G8R8A8_UNORM_SRGB,\n PixelFormat.PIXEL_FORMAT_B8G8R8X8_TYPELESS,\n PixelFormat.PIXEL_FORMAT_B8G8R8X8_UNORM_SRGB\n ] ],\n [ 2, [\n PixelFormat.PIXEL_FORMAT_R8G8_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R8G8_UNORM,\n PixelFormat.PIXEL_FORMAT_R8G8_UINT,\n PixelFormat.PIXEL_FORMAT_R8G8_SNORM,\n PixelFormat.PIXEL_FORMAT_R8G8_SINT,\n PixelFormat.PIXEL_FORMAT_R16_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R16_FLOAT,\n PixelFormat.PIXEL_FORMAT_D16_UNORM,\n PixelFormat.PIXEL_FORMAT_R16_UNORM,\n PixelFormat.PIXEL_FORMAT_R16_UINT,\n PixelFormat.PIXEL_FORMAT_R16_SNORM,\n PixelFormat.PIXEL_FORMAT_R16_SINT,\n PixelFormat.PIXEL_FORMAT_B5G6R5_UNORM,\n PixelFormat.PIXEL_FORMAT_B5G5R5A1_UNORM\n ] ],\n [ 1, [\n PixelFormat.PIXEL_FORMAT_R8_TYPELESS,\n PixelFormat.PIXEL_FORMAT_R8_UNORM,\n PixelFormat.PIXEL_FORMAT_R8_UINT,\n PixelFormat.PIXEL_FORMAT_R8_SNORM,\n PixelFormat.PIXEL_FORMAT_R8_SINT,\n PixelFormat.PIXEL_FORMAT_A8_UNORM\n ] ]\n]);\n\nconst BYTES_BY_FORMAT = new Map();\n\nfor (const [ bytes, formats ] of BYTES_PER_PIXEL)\n{\n for (const format of formats) BYTES_BY_FORMAT.set(format, bytes);\n}\n\n/**\n * Bytes in one pixel, or 0 for a compressed or unknown format.\n *\n * @param {number} format A `PixelFormat` value.\n * @returns {number} Size in bytes.\n */\nexport function GetBytesPerPixel(format)\n{\n const bytes = BYTES_BY_FORMAT.get(format);\n\n return bytes === undefined ? 0 : bytes;\n}\n\n\n/**\n * The canonical pixel-format STRING a texture payload carries\n * (`graphics/pixelFormats.js`, what the DDS and image readers emit) to Carbon's\n * numeric enum, which `Tr2BitmapDimensions` and every `Tr2TextureAL` speak.\n * Typeless, depth and packed formats have no string and are absent.\n */\nexport const PixelFormatFromCanonical = Object.freeze({\n \"r8unorm\": PixelFormat.PIXEL_FORMAT_R8_UNORM,\n \"rg8unorm\": PixelFormat.PIXEL_FORMAT_R8G8_UNORM,\n \"rgba8unorm\": PixelFormat.PIXEL_FORMAT_R8G8B8A8_UNORM,\n \"rgba8unorm-srgb\": PixelFormat.PIXEL_FORMAT_R8G8B8A8_UNORM_SRGB,\n \"bgra8unorm\": PixelFormat.PIXEL_FORMAT_B8G8R8A8_UNORM,\n \"bgra8unorm-srgb\": PixelFormat.PIXEL_FORMAT_B8G8R8A8_UNORM_SRGB,\n \"r16float\": PixelFormat.PIXEL_FORMAT_R16_FLOAT,\n \"rg16float\": PixelFormat.PIXEL_FORMAT_R16G16_FLOAT,\n \"rgba16float\": PixelFormat.PIXEL_FORMAT_R16G16B16A16_FLOAT,\n \"r32float\": PixelFormat.PIXEL_FORMAT_R32_FLOAT,\n \"rg32float\": PixelFormat.PIXEL_FORMAT_R32G32_FLOAT,\n \"rgba32float\": PixelFormat.PIXEL_FORMAT_R32G32B32A32_FLOAT,\n \"bc1-rgba-unorm\": PixelFormat.PIXEL_FORMAT_BC1_UNORM,\n \"bc1-rgba-unorm-srgb\": PixelFormat.PIXEL_FORMAT_BC1_UNORM_SRGB,\n \"bc2-rgba-unorm\": PixelFormat.PIXEL_FORMAT_BC2_UNORM,\n \"bc2-rgba-unorm-srgb\": PixelFormat.PIXEL_FORMAT_BC2_UNORM_SRGB,\n \"bc3-rgba-unorm\": PixelFormat.PIXEL_FORMAT_BC3_UNORM,\n \"bc3-rgba-unorm-srgb\": PixelFormat.PIXEL_FORMAT_BC3_UNORM_SRGB,\n \"bc4-r-unorm\": PixelFormat.PIXEL_FORMAT_BC4_UNORM,\n \"bc4-r-snorm\": PixelFormat.PIXEL_FORMAT_BC4_SNORM,\n \"bc5-rg-unorm\": PixelFormat.PIXEL_FORMAT_BC5_UNORM,\n \"bc5-rg-snorm\": PixelFormat.PIXEL_FORMAT_BC5_SNORM,\n \"bc6h-rgb-ufloat\": PixelFormat.PIXEL_FORMAT_BC6H_UF16,\n \"bc6h-rgb-float\": PixelFormat.PIXEL_FORMAT_BC6H_SF16,\n \"bc7-rgba-unorm\": PixelFormat.PIXEL_FORMAT_BC7_UNORM,\n \"bc7-rgba-unorm-srgb\": PixelFormat.PIXEL_FORMAT_BC7_UNORM_SRGB\n});\r\n\r\n/**\r\n * Carbon's `ExFlag` (`Tr2RenderContextEnum.h:201-207`): extra creation options.\r\n *\r\n * A BITFIELD, and Carbon declares an `operator|` for it. Note the gap - there\r\n * is no `1 << 2`, and transcribing these as 0,1,2,3 would silently make\r\n * DRAW_INDIRECT collide with a flag Carbon does not have.\r\n */\r\nexport const ExFlag = Object.freeze({\r\n EX_NONE: 0,\r\n EX_CREATE_SHARED: 1,\r\n EX_BIND_UNORDERED_ACCESS: 2,\r\n EX_DRAW_INDIRECT: 8\r\n});\r\n\r\n/**\r\n * Maps a depth-stencil format to the pixel format a texture is created with.\r\n *\r\n * Carbon `Tr2RenderContextEnum::ConvertDepthStencilFormat`\r\n * (`Tr2RenderContextEnum.cpp:177-193`). It lives beside the two enums it maps\r\n * between rather than on any one caller: `Tr2DepthStencil` needs it and so does\r\n * Metal's upscaling path, and a second copy is how two tables drift.\r\n *\r\n * AUTO AND READABLE RESOLVE TO D24S8, which is Carbon's choice rather than an\r\n * inference - they share a case with the explicit D24 formats. Anything else,\r\n * including the lockable D15S1 and D24X4S4 that no backend here creates,\r\n * resolves to UNKNOWN, and a texture create refuses it.\r\n *\r\n * @param {number} format A `DepthStencilFormat` value.\r\n * @returns {number} A `PixelFormat` value.\r\n */\r\nexport function ConvertDepthStencilFormat(format)\r\n{\r\n switch (format)\r\n {\r\n case DepthStencilFormat.DSFMT_D24S8:\r\n case DepthStencilFormat.DSFMT_D24X8:\r\n case DepthStencilFormat.DSFMT_AUTO:\r\n case DepthStencilFormat.DSFMT_READABLE:\r\n case DepthStencilFormat.DSFMT_D24FS8:\r\n return PixelFormat.PIXEL_FORMAT_D24_UNORM_S8_UINT;\r\n\r\n case DepthStencilFormat.DSFMT_D16:\r\n case DepthStencilFormat.DSFMT_D16_LOCKABLE:\r\n return PixelFormat.PIXEL_FORMAT_D16_UNORM;\r\n\r\n case DepthStencilFormat.DSFMT_D32:\r\n case DepthStencilFormat.DSFMT_D32F:\r\n case DepthStencilFormat.DSFMT_D32F_LOCKABLE:\r\n return PixelFormat.PIXEL_FORMAT_D32_FLOAT;\r\n\r\n default:\r\n return PixelFormat.PIXEL_FORMAT_UNKNOWN;\r\n }\r\n}\r\n"],"names":["PixelFormat","Object","freeze","PIXEL_FORMAT_UNKNOWN","PIXEL_FORMAT_R32G32B32A32_TYPELESS","PIXEL_FORMAT_R32G32B32A32_FLOAT","PIXEL_FORMAT_R32G32B32A32_UINT","PIXEL_FORMAT_R32G32B32A32_SINT","PIXEL_FORMAT_R32G32B32_TYPELESS","PIXEL_FORMAT_R32G32B32_FLOAT","PIXEL_FORMAT_R32G32B32_UINT","PIXEL_FORMAT_R32G32B32_SINT","PIXEL_FORMAT_R16G16B16A16_TYPELESS","PIXEL_FORMAT_R16G16B16A16_FLOAT","PIXEL_FORMAT_R16G16B16A16_UNORM","PIXEL_FORMAT_R16G16B16A16_UINT","PIXEL_FORMAT_R16G16B16A16_SNORM","PIXEL_FORMAT_R16G16B16A16_SINT","PIXEL_FORMAT_R32G32_TYPELESS","PIXEL_FORMAT_R32G32_FLOAT","PIXEL_FORMAT_R32G32_UINT","PIXEL_FORMAT_R32G32_SINT","PIXEL_FORMAT_R32G8X24_TYPELESS","PIXEL_FORMAT_D32_FLOAT_S8X24_UINT","PIXEL_FORMAT_R32_FLOAT_X8X24_TYPELESS","PIXEL_FORMAT_X32_TYPELESS_G8X24_UINT","PIXEL_FORMAT_R10G10B10A2_TYPELESS","PIXEL_FORMAT_R10G10B10A2_UNORM","PIXEL_FORMAT_R10G10B10A2_UINT","PIXEL_FORMAT_R11G11B10_FLOAT","PIXEL_FORMAT_R8G8B8A8_TYPELESS","PIXEL_FORMAT_R8G8B8A8_UNORM","PIXEL_FORMAT_R8G8B8A8_UNORM_SRGB","PIXEL_FORMAT_R8G8B8A8_UINT","PIXEL_FORMAT_R8G8B8A8_SNORM","PIXEL_FORMAT_R8G8B8A8_SINT","PIXEL_FORMAT_R16G16_TYPELESS","PIXEL_FORMAT_R16G16_FLOAT","PIXEL_FORMAT_R16G16_UNORM","PIXEL_FORMAT_R16G16_UINT","PIXEL_FORMAT_R16G16_SNORM","PIXEL_FORMAT_R16G16_SINT","PIXEL_FORMAT_R32_TYPELESS","PIXEL_FORMAT_D32_FLOAT","PIXEL_FORMAT_R32_FLOAT","PIXEL_FORMAT_R32_UINT","PIXEL_FORMAT_R32_SINT","PIXEL_FORMAT_R24G8_TYPELESS","PIXEL_FORMAT_D24_UNORM_S8_UINT","PIXEL_FORMAT_R24_UNORM_X8_TYPELESS","PIXEL_FORMAT_X24_TYPELESS_G8_UINT","PIXEL_FORMAT_R8G8_TYPELESS","PIXEL_FORMAT_R8G8_UNORM","PIXEL_FORMAT_R8G8_UINT","PIXEL_FORMAT_R8G8_SNORM","PIXEL_FORMAT_R8G8_SINT","PIXEL_FORMAT_R16_TYPELESS","PIXEL_FORMAT_R16_FLOAT","PIXEL_FORMAT_D16_UNORM","PIXEL_FORMAT_R16_UNORM","PIXEL_FORMAT_R16_UINT","PIXEL_FORMAT_R16_SNORM","PIXEL_FORMAT_R16_SINT","PIXEL_FORMAT_R8_TYPELESS","PIXEL_FORMAT_R8_UNORM","PIXEL_FORMAT_R8_UINT","PIXEL_FORMAT_R8_SNORM","PIXEL_FORMAT_R8_SINT","PIXEL_FORMAT_A8_UNORM","PIXEL_FORMAT_R1_UNORM","PIXEL_FORMAT_R9G9B9E5_SHAREDEXP","PIXEL_FORMAT_R8G8_B8G8_UNORM","PIXEL_FORMAT_G8R8_G8B8_UNORM","PIXEL_FORMAT_BC1_TYPELESS","PIXEL_FORMAT_BC1_UNORM","PIXEL_FORMAT_BC1_UNORM_SRGB","PIXEL_FORMAT_BC2_TYPELESS","PIXEL_FORMAT_BC2_UNORM","PIXEL_FORMAT_BC2_UNORM_SRGB","PIXEL_FORMAT_BC3_TYPELESS","PIXEL_FORMAT_BC3_UNORM","PIXEL_FORMAT_BC3_UNORM_SRGB","PIXEL_FORMAT_BC4_TYPELESS","PIXEL_FORMAT_BC4_UNORM","PIXEL_FORMAT_BC4_SNORM","PIXEL_FORMAT_BC5_TYPELESS","PIXEL_FORMAT_BC5_UNORM","PIXEL_FORMAT_BC5_SNORM","PIXEL_FORMAT_B5G6R5_UNORM","PIXEL_FORMAT_B5G5R5A1_UNORM","PIXEL_FORMAT_B8G8R8A8_UNORM","PIXEL_FORMAT_B8G8R8X8_UNORM","PIXEL_FORMAT_R10G10B10_XR_BIAS_A2_UNORM","PIXEL_FORMAT_B8G8R8A8_TYPELESS","PIXEL_FORMAT_B8G8R8A8_UNORM_SRGB","PIXEL_FORMAT_B8G8R8X8_TYPELESS","PIXEL_FORMAT_B8G8R8X8_UNORM_SRGB","PIXEL_FORMAT_BC6H_TYPELESS","PIXEL_FORMAT_BC6H_UF16","PIXEL_FORMAT_BC6H_SF16","PIXEL_FORMAT_BC7_TYPELESS","PIXEL_FORMAT_BC7_UNORM","PIXEL_FORMAT_BC7_UNORM_SRGB","PIXEL_FORMAT_SENTINEL","PIXEL_FORMAT_FORCE_UINT","DepthStencilFormat","DSFMT_UNKNOWN","DSFMT_D24S8","DSFMT_D24X8","DSFMT_D24FS8","DSFMT_D32F","DSFMT_D32","DSFMT_READABLE","DSFMT_AUTO","DSFMT_D16_LOCKABLE","DSFMT_D15S1","DSFMT_D24X4S4","DSFMT_D16","DSFMT_D32F_LOCKABLE","TextureType","TEX_TYPE_1D","TEX_TYPE_2D","TEX_TYPE_3D","TEX_TYPE_CUBE","TEX_TYPE_TYPELESS","TEX_TYPE_BUFFER","TEX_TYPE_STRUCTURED_BUFFER","TEX_TYPE_TBUFFER","TEX_TYPE_BYTEADDRESS_BUFFER","TEX_TYPE_UAV_RWTYPED","TEX_TYPE_UAV_RWSTRUCTURED","TEX_TYPE_UAV_RWBYTEADDRESS","TEX_TYPE_UAV_APPEND_STRUCTURED","TEX_TYPE_UAV_CONSUME_STRUCTURED","TEX_TYPE_UAV_RWSTRUCTURED_WITH_COUNTER","TEX_TYPE_RAYTRACING_ACCELERATION_STRUCTURE","TEX_TYPE_INVALID","COMPRESSED_FORMATS","Set","EIGHT_BYTE_BLOCK_FORMATS","IsCompressedFormat","format","has","GetBlockByteSize","BYTES_PER_PIXEL","Map","BYTES_BY_FORMAT","bytes","formats","set","GetBytesPerPixel","get","undefined","PixelFormatFromCanonical","ExFlag","EX_NONE","EX_CREATE_SHARED","EX_BIND_UNORDERED_ACCESS","EX_DRAW_INDIRECT","ConvertDepthStencilFormat"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- export { DepthStencilFormat, GetBlockByteSize, GetBytesPerPixel, IsCompressedFormat, PixelFormat, PixelFormatFromCanonical, TextureType } from './formats.js';
1
+ export { ConvertDepthStencilFormat, DepthStencilFormat, ExFlag, GetBlockByteSize, GetBytesPerPixel, IsCompressedFormat, PixelFormat, PixelFormatFromCanonical, TextureType } from './formats.js';
2
2
  export { ConstantBufferSlot, ShaderType, Topology, Tr2ColorSpace } from './pipeline.js';
3
3
  export { PresentInterval, RenderState, SwapEffect } from './presentation.js';
4
4
  export { Tr2LoadAction, Tr2StoreAction } from './renderPass.js';
5
- export { BlendMode, BlendOperation, ColorWriteEnable, CompareFunc, CullMode, FillMode } from './renderStates.js';
5
+ export { BlendMode, BlendOperation, ColorWriteEnable, CompareFunc, CullMode, FillMode, TextureAddressMode, TextureFilter } from './renderStates.js';
6
6
  export { HasBufferFlags, HasFlag, HasTextureFlags, IsWritable, Tr2CpuUsage, Tr2GpuUsage } from './resources.js';
7
7
  export { INVALID_UPSCALING_CONTEXT_ID, UpscalingResult, UpscalingSetting, UpscalingTechnique } from './upscaling.js';
8
8
  export { Tr2ImeState_MacOS, Tr2WindowMode, Tr2WindowShowState } from './window.js';
@@ -31,6 +31,21 @@ const CompareFunc = Object.freeze({
31
31
  CMP_GREATEREQUAL: 7,
32
32
  CMP_ALWAYS: 8
33
33
  });
34
+ const TextureFilter = Object.freeze({
35
+ TF_NONE: 0,
36
+ TF_POINT: 1,
37
+ TF_LINEAR: 2,
38
+ TF_ANISOTROPIC: 3,
39
+ /** Or-ed into a filter to select the comparison sampler. */
40
+ TF_COMPARISON: 0x80
41
+ });
42
+ const TextureAddressMode = Object.freeze({
43
+ TA_WRAP: 1,
44
+ TA_MIRROR: 2,
45
+ TA_CLAMP: 3,
46
+ TA_BORDER: 4,
47
+ TA_MIRROR_ONCE: 5
48
+ });
34
49
  const FillMode = Object.freeze({
35
50
  FM_POINT: 1,
36
51
  FM_WIREFRAME: 2,
@@ -62,5 +77,5 @@ const BlendOperation = Object.freeze({
62
77
  BO_MAX: 5
63
78
  });
64
79
 
65
- export { BlendMode, BlendOperation, ColorWriteEnable, CompareFunc, CullMode, FillMode };
80
+ export { BlendMode, BlendOperation, ColorWriteEnable, CompareFunc, CullMode, FillMode, TextureAddressMode, TextureFilter };
66
81
  //# sourceMappingURL=renderStates.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderStates.js","sources":["../../../../../src/global/consts/renderContext/renderStates.js"],"sourcesContent":["// Source: trinity/trinityal/Tr2RenderContextEnum.h\n// (CullMode, ColorWriteEnable, CompareFunc, FillMode, BlendMode, BlendOperation)\n//\n// The values a render state carries, beside the `RenderState` ids in\n// presentation.js that name the states themselves. Shared because the resource\n// layer interprets them and every engine layer projects them, so the two must\n// agree on one object.\n//\n// The `*_FORCE_DWORD` padding members are not carried: they are C enum-width\n// padding, not vocabulary, and a JavaScript consumer that met one would be\n// reading a value Carbon never authors.\n\nexport const CullMode = Object.freeze({\n CULLMODE_NONE: 1,\n CULLMODE_CW: 2,\n CULLMODE_CCW: 3\n});\n\nexport const ColorWriteEnable = Object.freeze({\n COLORWRITEENABLE_RED: 1 << 0,\n COLORWRITEENABLE_GREEN: 1 << 1,\n COLORWRITEENABLE_BLUE: 1 << 2,\n COLORWRITEENABLE_ALPHA: 1 << 3\n});\n\nexport const CompareFunc = Object.freeze({\n CMP_NEVER: 1,\n CMP_LESS: 2,\n CMP_EQUAL: 3,\n CMP_LESSEQUAL: 4,\n CMP_GREATER: 5,\n CMP_NOTEQUAL: 6,\n CMP_GREATEREQUAL: 7,\n CMP_ALWAYS: 8\n});\n\nexport const FillMode = Object.freeze({\n FM_POINT: 1,\n FM_WIREFRAME: 2,\n FM_SOLID: 3\n});\n\nexport const BlendMode = Object.freeze({\n BM_ZERO: 1,\n BM_ONE: 2,\n BM_SRCCOLOR: 3,\n BM_INVSRCCOLOR: 4,\n BM_SRCALPHA: 5,\n BM_INVSRCALPHA: 6,\n BM_DESTALPHA: 7,\n BM_INVDESTALPHA: 8,\n BM_DESTCOLOR: 9,\n BM_INVDESTCOLOR: 10,\n BM_SRCALPHASAT: 11,\n BM_BOTHSRCALPHA: 12,\n BM_BOTHINVSRCALPHA: 13,\n BM_BLENDFACTOR: 14,\n BM_INVBLENDFACTOR: 15\n});\n\nexport const BlendOperation = Object.freeze({\n BO_DISABLE: 0,\n BO_ADD: 1,\n BO_SUBTRACT: 2,\n BO_REVSUBTRACT: 3,\n BO_MIN: 4,\n BO_MAX: 5\n});\n"],"names":["CullMode","Object","freeze","CULLMODE_NONE","CULLMODE_CW","CULLMODE_CCW","ColorWriteEnable","COLORWRITEENABLE_RED","COLORWRITEENABLE_GREEN","COLORWRITEENABLE_BLUE","COLORWRITEENABLE_ALPHA","CompareFunc","CMP_NEVER","CMP_LESS","CMP_EQUAL","CMP_LESSEQUAL","CMP_GREATER","CMP_NOTEQUAL","CMP_GREATEREQUAL","CMP_ALWAYS","FillMode","FM_POINT","FM_WIREFRAME","FM_SOLID","BlendMode","BM_ZERO","BM_ONE","BM_SRCCOLOR","BM_INVSRCCOLOR","BM_SRCALPHA","BM_INVSRCALPHA","BM_DESTALPHA","BM_INVDESTALPHA","BM_DESTCOLOR","BM_INVDESTCOLOR","BM_SRCALPHASAT","BM_BOTHSRCALPHA","BM_BOTHINVSRCALPHA","BM_BLENDFACTOR","BM_INVBLENDFACTOR","BlendOperation","BO_DISABLE","BO_ADD","BO_SUBTRACT","BO_REVSUBTRACT","BO_MIN","BO_MAX"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;MAEaA,QAAQ,GAAGC,MAAM,CAACC,MAAM,CAAC;AAClCC,EAAAA,aAAa,EAAE,CAAC;AAChBC,EAAAA,WAAW,EAAE,CAAC;AACdC,EAAAA,YAAY,EAAE;AAClB,CAAC;MAEYC,gBAAgB,GAAGL,MAAM,CAACC,MAAM,CAAC;EAC1CK,oBAAoB,EAAE,CAAC,IAAI,CAAC;EAC5BC,sBAAsB,EAAE,CAAC,IAAI,CAAC;EAC9BC,qBAAqB,EAAE,CAAC,IAAI,CAAC;EAC7BC,sBAAsB,EAAE,CAAC,IAAI;AACjC,CAAC;MAEYC,WAAW,GAAGV,MAAM,CAACC,MAAM,CAAC;AACrCU,EAAAA,SAAS,EAAE,CAAC;AACZC,EAAAA,QAAQ,EAAE,CAAC;AACXC,EAAAA,SAAS,EAAE,CAAC;AACZC,EAAAA,aAAa,EAAE,CAAC;AAChBC,EAAAA,WAAW,EAAE,CAAC;AACdC,EAAAA,YAAY,EAAE,CAAC;AACfC,EAAAA,gBAAgB,EAAE,CAAC;AACnBC,EAAAA,UAAU,EAAE;AAChB,CAAC;MAEYC,QAAQ,GAAGnB,MAAM,CAACC,MAAM,CAAC;AAClCmB,EAAAA,QAAQ,EAAE,CAAC;AACXC,EAAAA,YAAY,EAAE,CAAC;AACfC,EAAAA,QAAQ,EAAE;AACd,CAAC;MAEYC,SAAS,GAAGvB,MAAM,CAACC,MAAM,CAAC;AACnCuB,EAAAA,OAAO,EAAE,CAAC;AACVC,EAAAA,MAAM,EAAE,CAAC;AACTC,EAAAA,WAAW,EAAE,CAAC;AACdC,EAAAA,cAAc,EAAE,CAAC;AACjBC,EAAAA,WAAW,EAAE,CAAC;AACdC,EAAAA,cAAc,EAAE,CAAC;AACjBC,EAAAA,YAAY,EAAE,CAAC;AACfC,EAAAA,eAAe,EAAE,CAAC;AAClBC,EAAAA,YAAY,EAAE,CAAC;AACfC,EAAAA,eAAe,EAAE,EAAE;AACnBC,EAAAA,cAAc,EAAE,EAAE;AAClBC,EAAAA,eAAe,EAAE,EAAE;AACnBC,EAAAA,kBAAkB,EAAE,EAAE;AACtBC,EAAAA,cAAc,EAAE,EAAE;AAClBC,EAAAA,iBAAiB,EAAE;AACvB,CAAC;MAEYC,cAAc,GAAGvC,MAAM,CAACC,MAAM,CAAC;AACxCuC,EAAAA,UAAU,EAAE,CAAC;AACbC,EAAAA,MAAM,EAAE,CAAC;AACTC,EAAAA,WAAW,EAAE,CAAC;AACdC,EAAAA,cAAc,EAAE,CAAC;AACjBC,EAAAA,MAAM,EAAE,CAAC;AACTC,EAAAA,MAAM,EAAE;AACZ,CAAC;;;;"}
1
+ {"version":3,"file":"renderStates.js","sources":["../../../../../src/global/consts/renderContext/renderStates.js"],"sourcesContent":["// Source: trinity/trinityal/Tr2RenderContextEnum.h\n// (CullMode, ColorWriteEnable, CompareFunc, FillMode, BlendMode, BlendOperation)\n//\n// The values a render state carries, beside the `RenderState` ids in\n// presentation.js that name the states themselves. Shared because the resource\n// layer interprets them and every engine layer projects them, so the two must\n// agree on one object.\n//\n// The `*_FORCE_DWORD` padding members are not carried: they are C enum-width\n// padding, not vocabulary, and a JavaScript consumer that met one would be\n// reading a value Carbon never authors.\n\nexport const CullMode = Object.freeze({\n CULLMODE_NONE: 1,\n CULLMODE_CW: 2,\n CULLMODE_CCW: 3\n});\n\nexport const ColorWriteEnable = Object.freeze({\n COLORWRITEENABLE_RED: 1 << 0,\n COLORWRITEENABLE_GREEN: 1 << 1,\n COLORWRITEENABLE_BLUE: 1 << 2,\n COLORWRITEENABLE_ALPHA: 1 << 3\n});\n\nexport const CompareFunc = Object.freeze({\n CMP_NEVER: 1,\n CMP_LESS: 2,\n CMP_EQUAL: 3,\n CMP_LESSEQUAL: 4,\n CMP_GREATER: 5,\n CMP_NOTEQUAL: 6,\n CMP_GREATEREQUAL: 7,\n CMP_ALWAYS: 8\n});\n\nexport const TextureFilter = Object.freeze({\n TF_NONE: 0,\n TF_POINT: 1,\n TF_LINEAR: 2,\n TF_ANISOTROPIC: 3,\n\n /** Or-ed into a filter to select the comparison sampler. */\n TF_COMPARISON: 0x80\n});\n\nexport const TextureAddressMode = Object.freeze({\n TA_WRAP: 1,\n TA_MIRROR: 2,\n TA_CLAMP: 3,\n TA_BORDER: 4,\n TA_MIRROR_ONCE: 5\n});\n\nexport const FillMode = Object.freeze({\n FM_POINT: 1,\n FM_WIREFRAME: 2,\n FM_SOLID: 3\n});\n\nexport const BlendMode = Object.freeze({\n BM_ZERO: 1,\n BM_ONE: 2,\n BM_SRCCOLOR: 3,\n BM_INVSRCCOLOR: 4,\n BM_SRCALPHA: 5,\n BM_INVSRCALPHA: 6,\n BM_DESTALPHA: 7,\n BM_INVDESTALPHA: 8,\n BM_DESTCOLOR: 9,\n BM_INVDESTCOLOR: 10,\n BM_SRCALPHASAT: 11,\n BM_BOTHSRCALPHA: 12,\n BM_BOTHINVSRCALPHA: 13,\n BM_BLENDFACTOR: 14,\n BM_INVBLENDFACTOR: 15\n});\n\nexport const BlendOperation = Object.freeze({\n BO_DISABLE: 0,\n BO_ADD: 1,\n BO_SUBTRACT: 2,\n BO_REVSUBTRACT: 3,\n BO_MIN: 4,\n BO_MAX: 5\n});\n"],"names":["CullMode","Object","freeze","CULLMODE_NONE","CULLMODE_CW","CULLMODE_CCW","ColorWriteEnable","COLORWRITEENABLE_RED","COLORWRITEENABLE_GREEN","COLORWRITEENABLE_BLUE","COLORWRITEENABLE_ALPHA","CompareFunc","CMP_NEVER","CMP_LESS","CMP_EQUAL","CMP_LESSEQUAL","CMP_GREATER","CMP_NOTEQUAL","CMP_GREATEREQUAL","CMP_ALWAYS","TextureFilter","TF_NONE","TF_POINT","TF_LINEAR","TF_ANISOTROPIC","TF_COMPARISON","TextureAddressMode","TA_WRAP","TA_MIRROR","TA_CLAMP","TA_BORDER","TA_MIRROR_ONCE","FillMode","FM_POINT","FM_WIREFRAME","FM_SOLID","BlendMode","BM_ZERO","BM_ONE","BM_SRCCOLOR","BM_INVSRCCOLOR","BM_SRCALPHA","BM_INVSRCALPHA","BM_DESTALPHA","BM_INVDESTALPHA","BM_DESTCOLOR","BM_INVDESTCOLOR","BM_SRCALPHASAT","BM_BOTHSRCALPHA","BM_BOTHINVSRCALPHA","BM_BLENDFACTOR","BM_INVBLENDFACTOR","BlendOperation","BO_DISABLE","BO_ADD","BO_SUBTRACT","BO_REVSUBTRACT","BO_MIN","BO_MAX"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;MAEaA,QAAQ,GAAGC,MAAM,CAACC,MAAM,CAAC;AAClCC,EAAAA,aAAa,EAAE,CAAC;AAChBC,EAAAA,WAAW,EAAE,CAAC;AACdC,EAAAA,YAAY,EAAE;AAClB,CAAC;MAEYC,gBAAgB,GAAGL,MAAM,CAACC,MAAM,CAAC;EAC1CK,oBAAoB,EAAE,CAAC,IAAI,CAAC;EAC5BC,sBAAsB,EAAE,CAAC,IAAI,CAAC;EAC9BC,qBAAqB,EAAE,CAAC,IAAI,CAAC;EAC7BC,sBAAsB,EAAE,CAAC,IAAI;AACjC,CAAC;MAEYC,WAAW,GAAGV,MAAM,CAACC,MAAM,CAAC;AACrCU,EAAAA,SAAS,EAAE,CAAC;AACZC,EAAAA,QAAQ,EAAE,CAAC;AACXC,EAAAA,SAAS,EAAE,CAAC;AACZC,EAAAA,aAAa,EAAE,CAAC;AAChBC,EAAAA,WAAW,EAAE,CAAC;AACdC,EAAAA,YAAY,EAAE,CAAC;AACfC,EAAAA,gBAAgB,EAAE,CAAC;AACnBC,EAAAA,UAAU,EAAE;AAChB,CAAC;MAEYC,aAAa,GAAGnB,MAAM,CAACC,MAAM,CAAC;AACvCmB,EAAAA,OAAO,EAAE,CAAC;AACVC,EAAAA,QAAQ,EAAE,CAAC;AACXC,EAAAA,SAAS,EAAE,CAAC;AACZC,EAAAA,cAAc,EAAE,CAAC;AAEjB;AACAC,EAAAA,aAAa,EAAE;AACnB,CAAC;MAEYC,kBAAkB,GAAGzB,MAAM,CAACC,MAAM,CAAC;AAC5CyB,EAAAA,OAAO,EAAE,CAAC;AACVC,EAAAA,SAAS,EAAE,CAAC;AACZC,EAAAA,QAAQ,EAAE,CAAC;AACXC,EAAAA,SAAS,EAAE,CAAC;AACZC,EAAAA,cAAc,EAAE;AACpB,CAAC;MAEYC,QAAQ,GAAG/B,MAAM,CAACC,MAAM,CAAC;AAClC+B,EAAAA,QAAQ,EAAE,CAAC;AACXC,EAAAA,YAAY,EAAE,CAAC;AACfC,EAAAA,QAAQ,EAAE;AACd,CAAC;MAEYC,SAAS,GAAGnC,MAAM,CAACC,MAAM,CAAC;AACnCmC,EAAAA,OAAO,EAAE,CAAC;AACVC,EAAAA,MAAM,EAAE,CAAC;AACTC,EAAAA,WAAW,EAAE,CAAC;AACdC,EAAAA,cAAc,EAAE,CAAC;AACjBC,EAAAA,WAAW,EAAE,CAAC;AACdC,EAAAA,cAAc,EAAE,CAAC;AACjBC,EAAAA,YAAY,EAAE,CAAC;AACfC,EAAAA,eAAe,EAAE,CAAC;AAClBC,EAAAA,YAAY,EAAE,CAAC;AACfC,EAAAA,eAAe,EAAE,EAAE;AACnBC,EAAAA,cAAc,EAAE,EAAE;AAClBC,EAAAA,eAAe,EAAE,EAAE;AACnBC,EAAAA,kBAAkB,EAAE,EAAE;AACtBC,EAAAA,cAAc,EAAE,EAAE;AAClBC,EAAAA,iBAAiB,EAAE;AACvB,CAAC;MAEYC,cAAc,GAAGnD,MAAM,CAACC,MAAM,CAAC;AACxCmD,EAAAA,UAAU,EAAE,CAAC;AACbC,EAAAA,MAAM,EAAE,CAAC;AACTC,EAAAA,WAAW,EAAE,CAAC;AACdC,EAAAA,cAAc,EAAE,CAAC;AACjBC,EAAAA,MAAM,EAAE,CAAC;AACTC,EAAAA,MAAM,EAAE;AACZ,CAAC;;;;"}
@@ -2,7 +2,6 @@ export { CjsBackendCandidate } from './CjsBackendCandidate.js';
2
2
  export { CjsConstantPayload } from './CjsConstantPayload.js';
3
3
  export { CjsFrameLifecycle } from './CjsFrameLifecycle.js';
4
4
  export { CjsInstancedMeshManager } from './CjsInstancedMeshManager.js';
5
- export { CjsScriptCallback } from './CjsScriptCallback.js';
6
5
  export { ITr2BoundingBox, withITr2BoundingBox } from './ITr2BoundingBox.js';
7
6
  export { ITr2RenderNode, withITr2RenderNode } from './ITr2RenderNode.js';
8
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}