@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,15 +1,19 @@
1
1
  import { identity as _identity, applyDecs2311 as _applyDecs2311 } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
- import { io, type, impl } from '#schema';
2
+ import { io, type, impl, carbon } from '#schema';
3
3
  import { EveSpaceObjectChild as _EveSpaceObjectChild } from './EveSpaceObjectChild.js';
4
4
  import { mat4 } from '#math/mat4';
5
5
  import { quat } from '#math/quat';
6
6
  import { vec3 } from '#math/vec3';
7
7
  import { RenderingMode, TriBatchType, ReflectionMode } from '#consts/graphics';
8
8
  import { EveComponentType, ShouldReflect } from '../EveComponentTypes.js';
9
- import { Tr2PerObjectData } from '../../core/rawData/Tr2PerObjectData.js';
10
- import { Tr2RenderBatch } from '../../core/batch/Tr2RenderBatch.js';
11
- import { TriFrustumOrtho } from '../../core/view/TriFrustumOrtho.js';
9
+ import { Tr2PerObjectData } from '../../core/rawData/perObjectData/Tr2PerObjectData.js';
10
+ import { Tr2RenderBatch } from '../../core/batch/TriRenderBatch/Tr2RenderBatch.js';
11
+ import '../../core/batch/TriRenderBatch/DefaultKeyGenerator.js';
12
+ import '../../core/batch/TriRenderBatch/EffectKeyGenerator.js';
13
+ import '../../core/batch/TriRenderBatch/ITriRenderBatchAccumulator.js';
12
14
  import { Tr2RenderReason, Tr2VolumerticQuality } from '../../generated/trinityCore/enums.js';
15
+ import '#consts/render-context';
16
+ import { TriFrustumOrtho } from '../../core/view/TriFrustumOrtho.js';
13
17
  import { withITr2Renderable } from '../../core/ITr2Renderable.js';
14
18
 
15
19
  var _withITr2Renderable;
@@ -42,11 +46,11 @@ const LIGHT_SCRATCH = {
42
46
  color: vec3.create()
43
47
  };
44
48
 
45
- /** Carbon OrthoNormalBasisZ (math Matrix_inline.h:531-546): identity; row Z =
46
- * Normalize(z); X seeded (0,1,0) when |Z.x| > 0.99 else (1,0,0); Y =
47
- * Normalize(Cross(X, Z)); X = Cross(Y, Z). Carbon's basis rows land at gl flat
48
- * [0..2]/[4..6]/[8..10] on the shared byte layout - single-matrix build, no
49
- * composition, no operand swap. A zero-length z NaNs exactly as Carbon's
49
+ /** Carbon OrthoNormalBasisZ (math Matrix_inline.h:531-546): identity; row Z =
50
+ * Normalize(z); X seeded (0,1,0) when |Z.x| > 0.99 else (1,0,0); Y =
51
+ * Normalize(Cross(X, Z)); X = Cross(Y, Z). Carbon's basis rows land at gl flat
52
+ * [0..2]/[4..6]/[8..10] on the shared byte layout - single-matrix build, no
53
+ * composition, no operand swap. A zero-length z NaNs exactly as Carbon's
50
54
  * Normalize does. */
51
55
  function OrthoNormalBasisZ(out, z) {
52
56
  mat4.identity(out);
@@ -77,9 +81,9 @@ function OrthoNormalBasisZ(out, z) {
77
81
  return out;
78
82
  }
79
83
 
80
- /** Carbon OrthoOffCenterMatrix (math Matrix_inline.h:749-765): D3D-style
81
- * z-in-[0,1] off-center orthographic projection. Deliberately NOT gl-matrix's
82
- * mat4.ortho (GL z-in-[-1,1], different off-center terms). Carbon m[i][j]
84
+ /** Carbon OrthoOffCenterMatrix (math Matrix_inline.h:749-765): D3D-style
85
+ * z-in-[0,1] off-center orthographic projection. Deliberately NOT gl-matrix's
86
+ * mat4.ortho (GL z-in-[-1,1], different off-center terms). Carbon m[i][j]
83
87
  * lands at gl flat [i*4+j] on the shared byte layout. */
84
88
  function OrthoOffCenterMatrix(out, l, r, b, t, zn, zf) {
85
89
  mat4.identity(out);
@@ -92,8 +96,8 @@ function OrthoOffCenterMatrix(out, l, r, b, t, zn, zf) {
92
96
  return out;
93
97
  }
94
98
 
95
- /** Carbon TransformNormal(v, M) - row-vector basis-only transform (no
96
- * translation): out_j = sum_i v_i * M[i][j], rows at gl flat [0..2]/[4..6]/
99
+ /** Carbon TransformNormal(v, M) - row-vector basis-only transform (no
100
+ * translation): out_j = sum_i v_i * M[i][j], rows at gl flat [0..2]/[4..6]/
97
101
  * [8..10]. vec3.transformMat4 would add the translation - do not use it. */
98
102
  function TransformNormal(out, v, m) {
99
103
  const x = v[0];
@@ -116,7 +120,7 @@ new class extends _identity {
116
120
  } = _applyDecs2311(this, [type.define({
117
121
  className: "EveChildCloud2",
118
122
  family: "eve/child"
119
- })], [[[io, io.notify, io, io.persist, type, type.int32, void 0, type.enum("ReflectionMode")], 16, "reflectionMode"], [[io, io.persist, type, type.int32, void 0, type.enum("Tr2VolumerticQuality")], 16, "minVisibleQuality"], [[io, io.persist, type, type.float32], 16, "sortingModifier"], [[io, io.persist, void 0, type.model("Tr2TextureAnimation")], 16, "animation"], [[io, io.notify, io, io.readwrite, void 0, type.objectRef("Tr2DepthStencil")], 16, "shadowMapDS"], [[io, io.read, void 0, type.objectRef("Tr2TextureReference")], 16, "lightmap"], [[io, io.read, type, type.float32], 16, "lightmapSizeScale"], [[io, io.persist, void 0, type.list("Tr2Light")], 16, "lights"], [[io, io.persist, type, type.float32], 16, "minScreenSize"], [[io, io.persist, type, type.quat], 16, "rotation"], [[io, io.persist, type, type.vec3], 16, "translation"], [[io, io.persist, type, type.vec3], 16, "scaling"], [[io, io.notify, io, io.persist, void 0, type.model("Tr2Effect")], 16, "reflectionEffect"], [[io, io.notify, io, io.persist, void 0, type.model("Tr2Effect")], 16, "effect"], [[io, io.persist, type, type.uint32], 16, "noiseTextureSize"], [[io, io.read, type, type.vec3], 16, "mapOffset0"], [[io, io.read, type, type.vec3], 16, "mapOffset1"], [[io, io.read, type, type.vec3], 16, "mapOffset2"], [[io, io.persist, type, type.boolean], 16, "castShadows"], [[io, io.persist, type, type.boolean], 16, "receiveShadows"], [[io, io.persist, type, type.string], 16, "name"], [[io, io.persist, type, type.vec3], 16, "detailTiling1"], [[io, io.persist, type, type.vec3], 16, "detailTiling2"], [[io, io.persist, type, type.vec3], 16, "textureTiling"], [[io, io.notify, io, io.persist, type, type.boolean], 16, "display"], [[impl, impl.implemented], 18, "RegisterComponents"], [[impl, impl.adapted, void 0, impl.reason("DensityMap texture discovery and empty-lightmap creation (cpp:634-674) are engine-owned resource work - lightmapWidth stays 0 until the engine stamps it, which fail-closes UpdateVolumetricLightmap; the hash invalidation, animation gate and renderedLastFrame contract are ported.")], 18, "UpdateSyncronous"], [[impl, impl.implemented], 18, "UpdateAsyncronous"], [[impl, impl.implemented], 18, "GetBoundingSphere"], [[impl, impl.implemented], 18, "GetLocalToWorldTransform"], [[impl, impl.implemented], 18, "IsVisible"], [[impl, impl.implemented], 18, "HasValidTransform"], [[impl, impl.implemented], 18, "IsLightmapDirty"], [[impl, impl.implemented], 18, "MarkLightmapDirty"], [[impl, impl.implemented], 18, "GetLights"], [[impl, impl.implemented], 18, "GetSortValue"], [[impl, impl.adapted, void 0, impl.reason("The procedural unit-cube vertex/index buffers and declaration (OnPrepareResources cpp:453-532) are engine-realized, so the buffer-validity gate (cpp:267-270) and shader-state gate (cpp:271-274) reduce to the effect presence check; the batch records the effect, per-object data and draw arguments for the engine to bind the cube.")], 18, "GetVolumetricBatches"], [[impl, impl.adapted, void 0, impl.reason("The 3D lightmap texture lifecycle, per-object upload and LightMap variable swaps (cpp:327-352, 363-372) are engine-owned; the GenerateLightmap dispatch is delegated to a renderContext.RunComputeShader duck and fail-closes to false when absent.")], 18, "UpdateVolumetricLightmap"], [[impl, impl.adapted, void 0, impl.reason("Carbon dereferences m_effect with no null guard (cpp:417); the JS option writes are optional-chained. Everything else is verbatim, including the missing degree conversion in the sun-motion threshold.")], 18, "SetSceneInformation"], [[impl, impl.adapted, void 0, impl.reason("The 'Shadow' technique gate applies only when a shader-state interface is realized - in GPU-free collection the engine drops the batch at realization otherwise; NULL_DECLARATION maps to declaration 0.")], 18, "GetVolumetricShadowBatches"], [[impl, impl.implemented], 18, "GetVolumetricShadowInfo"], [[impl, impl.implemented], 18, "SetupShadowFrustum"], [[impl, impl.adapted, void 0, impl.reason("Depth-stencil creation and the viewport/render-target pushes (cpp:801-823) are engine-owned, delegated to a renderContext duck; the gate and return contract are ported.")], 18, "PrepareCloudShadowMap"], [[impl, impl.adapted, void 0, impl.reason("The variable store is engine-owned (depthShadowMapHandle is an injected duck); Carbon's unguarded m_shadowMapDS dereference is optional-chained.")], 18, "SetCloudShadowMapHandle"], [[impl, impl.adapted, void 0, impl.reason("Unit-cube buffers/declaration are engine-realized (as GetVolumetricBatches); the perObjectData parameter is unused because Carbon allocates the cloud's own with screenSize 10000 (cpp:878).")], 18, "GetBatches"], [[impl, impl.implemented], 18, "HasTransparentBatches"], [[impl, impl.adapted, void 0, impl.reason("EveChildCloudPerObjectData's device constant buffers are engine-owned; the record carries the object reference, the collection-time screenSize and the CPU field block.")], 18, "GetPerObjectData"], [[impl, impl.adapted, void 0, impl.reason("Tr2Renderer's view/projection globals relocate onto the optional renderContext duck (identity/zero fallbacks when absent - the engine repopulates at realization); rand() maps to Math.random with a zero-size guard Carbon's UB-free ctor default (32) never needed; the Tr2Light Perlin flicker inside GetLight awaits the frame-clock seam.")], 18, "PopulatePerObjectData"]], 0, void 0, _withITr2Renderable));
123
+ })], [[[io, io.notify, io, io.persist, type, type.int32, void 0, type.enum("ReflectionMode")], 16, "reflectionMode"], [[io, io.persist, type, type.int32, void 0, type.enum("Tr2VolumerticQuality")], 16, "minVisibleQuality"], [[io, io.persist, type, type.float32], 16, "sortingModifier"], [[io, io.persist, void 0, type.model("Tr2TextureAnimation")], 16, "animation"], [[io, io.notify, io, io.readwrite, void 0, type.objectRef("Tr2DepthStencil")], 16, "shadowMapDS"], [[io, io.read, void 0, type.objectRef("Tr2TextureReference")], 16, "lightmap"], [[io, io.read, type, type.float32], 16, "lightmapSizeScale"], [[io, io.persist, void 0, type.list("Tr2Light")], 16, "lights"], [[io, io.persist, type, type.float32], 16, "minScreenSize"], [[io, io.persist, type, type.quat], 16, "rotation"], [[io, io.persist, type, type.vec3], 16, "translation"], [[io, io.persist, type, type.vec3], 16, "scaling"], [[io, io.notify, io, io.persist, void 0, type.model("Tr2Effect")], 16, "reflectionEffect"], [[io, io.notify, io, io.persist, void 0, type.model("Tr2Effect")], 16, "effect"], [[io, io.persist, type, type.uint32], 16, "noiseTextureSize"], [[io, io.read, type, type.vec3], 16, "mapOffset0"], [[io, io.read, type, type.vec3], 16, "mapOffset1"], [[io, io.read, type, type.vec3], 16, "mapOffset2"], [[io, io.persist, type, type.boolean], 16, "castShadows"], [[io, io.persist, type, type.boolean], 16, "receiveShadows"], [[io, io.persist, type, type.string], 16, "name"], [[io, io.persist, type, type.vec3], 16, "detailTiling1"], [[io, io.persist, type, type.vec3], 16, "detailTiling2"], [[io, io.persist, type, type.vec3], 16, "textureTiling"], [[io, io.notify, io, io.persist, type, type.boolean], 16, "display"], [[impl, impl.implemented], 18, "RegisterComponents"], [[impl, impl.adapted, void 0, impl.reason("DensityMap texture discovery and empty-lightmap creation (cpp:634-674) are engine-owned resource work - lightmapWidth stays 0 until the engine stamps it, which fail-closes UpdateVolumetricLightmap; the hash invalidation, animation gate and renderedLastFrame contract are ported.")], 18, "UpdateSyncronous"], [[impl, impl.implemented], 18, "UpdateAsyncronous"], [[impl, impl.implemented], 18, "GetBoundingSphere"], [[impl, impl.implemented], 18, "GetLocalToWorldTransform"], [[impl, impl.implemented], 18, "IsVisible"], [[impl, impl.implemented], 18, "HasValidTransform"], [[impl, impl.implemented], 18, "IsLightmapDirty"], [[impl, impl.implemented], 18, "MarkLightmapDirty"], [[impl, impl.implemented], 18, "GetLights"], [[impl, impl.implemented], 18, "GetSortValue"], [[impl, impl.adapted, void 0, impl.reason("The procedural unit-cube vertex/index buffers and declaration (OnPrepareResources cpp:453-532) are engine-realized, so the buffer-validity gate (cpp:267-270) and shader-state gate (cpp:271-274) reduce to the effect presence check; the batch records the effect, per-object data and draw arguments for the engine to bind the cube.")], 18, "GetVolumetricBatches"], [[impl, impl.adapted, void 0, impl.reason("The 3D lightmap texture lifecycle, per-object upload and LightMap variable swaps (cpp:327-352, 363-372) are engine-owned; the GenerateLightmap dispatch is delegated to a renderContext.RunComputeShader duck and fail-closes to false when absent.")], 18, "UpdateVolumetricLightmap"], [[impl, impl.adapted, void 0, impl.reason("Carbon dereferences m_effect with no null guard (cpp:417); the JS option writes are optional-chained. Everything else is verbatim, including the missing degree conversion in the sun-motion threshold.")], 18, "SetSceneInformation"], [[impl, impl.adapted, void 0, impl.reason("The 'Shadow' technique gate applies only when a shader-state interface is realized - in GPU-free collection the engine drops the batch at realization otherwise; NULL_DECLARATION maps to declaration 0.")], 18, "GetVolumetricShadowBatches"], [[impl, impl.implemented], 18, "GetVolumetricShadowInfo"], [[impl, impl.implemented], 18, "SetupShadowFrustum"], [[carbon, carbon.method, impl, impl.notImplemented, void 0, impl.reason("Needs Tr2DepthStencil, which is a generated shell: Create throws and GetTexture/IsValid/GetWidth/GetHeight are absent. The receiveShadows gate and the false return are ported.")], 18, "PrepareCloudShadowMap"], [[impl, impl.adapted, void 0, impl.reason("The variable store is engine-owned (depthShadowMapHandle is an injected duck); Carbon's unguarded m_shadowMapDS dereference is optional-chained.")], 18, "SetCloudShadowMapHandle"], [[impl, impl.adapted, void 0, impl.reason("Unit-cube buffers/declaration are engine-realized (as GetVolumetricBatches); the perObjectData parameter is unused because Carbon allocates the cloud's own with screenSize 10000 (cpp:878).")], 18, "GetBatches"], [[impl, impl.implemented], 18, "HasTransparentBatches"], [[impl, impl.adapted, void 0, impl.reason("EveChildCloudPerObjectData's device constant buffers are engine-owned; the record carries the object reference, the collection-time screenSize and the CPU field block.")], 18, "GetPerObjectData"], [[impl, impl.adapted, void 0, impl.reason("Tr2Renderer's view/projection globals relocate onto the optional renderContext duck (identity/zero fallbacks when absent - the engine repopulates at realization); rand() maps to Math.random with a zero-size guard Carbon's UB-free ctor default (32) never needed; the Tr2Light Perlin flicker inside GetLight awaits the frame-clock seam.")], 18, "PopulatePerObjectData"]], 0, void 0, _withITr2Renderable));
120
124
  }
121
125
  /** m_reflectionMode (EntityComponents::ReflectionMode - enum ReflectionMode) [READWRITE, PERSIST, NOTIFY, ENUM] */
122
126
  reflectionMode = (_initProto(this), _init_reflectionMode(this, 0));
@@ -231,8 +235,8 @@ new class extends _identity {
231
235
  /** m_effectHash - effect identity tracked by UpdateSyncronous (cpp:625-633). */
232
236
  effectHash = 0;
233
237
 
234
- /** Unscaled lightmap dimensions - Carbon discovers them from the effect's
235
- * DensityMap resource (cpp:634-665, engine-owned in JS; 0 fail-closes
238
+ /** Unscaled lightmap dimensions - Carbon discovers them from the effect's
239
+ * DensityMap resource (cpp:634-665, engine-owned in JS; 0 fail-closes
236
240
  * UpdateVolumetricLightmap). */
237
241
  lightmapWidth = 0;
238
242
 
@@ -251,35 +255,35 @@ new class extends _identity {
251
255
  /** m_localSunDirection (SetSceneInformation cpp:407). */
252
256
  localSunDirection = vec3.create();
253
257
 
254
- /** m_depthSlices - SceneInformation::depthSliceCount = 4
258
+ /** m_depthSlices - SceneInformation::depthSliceCount = 4
255
259
  * (ITr2VolumetricRenderable.h:26). */
256
260
  depthSlices = new Float32Array(4);
257
261
 
258
- /** m_targetWidth - Carbon leaves it uninitialized until SetSceneInformation;
259
- * JS zeroes (targetInvSize then divides by zero to Infinity, matching
262
+ /** m_targetWidth - Carbon leaves it uninitialized until SetSceneInformation;
263
+ * JS zeroes (targetInvSize then divides by zero to Infinity, matching
260
264
  * Carbon's float semantics on garbage-free zero). */
261
265
  targetWidth = 0;
262
266
 
263
267
  /** m_targetHeight - see targetWidth. */
264
268
  targetHeight = 0;
265
269
 
266
- /** m_lightViewProj - Carbon: uninitialized memory until SetupShadowFrustum;
270
+ /** m_lightViewProj - Carbon: uninitialized memory until SetupShadowFrustum;
267
271
  * JS: identity. */
268
272
  lightViewProj = mat4.create();
269
273
 
270
274
  /** m_shadowMapSize (cpp:101). */
271
275
  shadowMapSize = 512;
272
276
 
273
- /** The global "DepthShadowMap" variable handle Carbon registers in the ctor
274
- * (cpp:115) - the variable store is engine-owned in JS, so the handle is an
277
+ /** The global "DepthShadowMap" variable handle Carbon registers in the ctor
278
+ * (cpp:115) - the variable store is engine-owned in JS, so the handle is an
275
279
  * engine-injected duck. */
276
280
  depthShadowMapHandle = null;
277
281
 
278
- /** Carbon EveChildCloud2::RegisterComponents (EveChildCloud2.cpp:148-163):
279
- * LightOwner when lights are authored; VolumetricRenderable UNCONDITIONAL;
280
- * ReflectionRenderable only when ShouldReflect && display &&
281
- * reflectionEffect. Note: no whole-block display gate in Carbon. No
282
- * UnRegisterComponents override (base no-op; EveEntity::UnRegister already
282
+ /** Carbon EveChildCloud2::RegisterComponents (EveChildCloud2.cpp:148-163):
283
+ * LightOwner when lights are authored; VolumetricRenderable UNCONDITIONAL;
284
+ * ReflectionRenderable only when ShouldReflect && display &&
285
+ * reflectionEffect. Note: no whole-block display gate in Carbon. No
286
+ * UnRegisterComponents override (base no-op; EveEntity::UnRegister already
283
287
  * removes the components, EveEntity.cpp:90). */
284
288
  RegisterComponents() {
285
289
  const registry = this.GetComponentRegistry();
@@ -294,13 +298,13 @@ new class extends _identity {
294
298
  }
295
299
  }
296
300
 
297
- /** Carbon EveChildCloud2::UpdateSyncronous (cpp:621-685): an effect-hash
298
- * change invalidates the lightmap and zeroes its dimensions (cpp:625-633);
299
- * the DensityMap-driven dimension discovery and the empty-lightmap fallback
300
- * (cpp:634-674) are GPU/resource work; the texture animation advances gated
301
- * on UpdateOnlyWhenRendered/renderedLastFrame (cpp:677-683) and
302
- * renderedLastFrame is cleared every pass (cpp:684) - the flag is only
303
- * re-stamped by the volumetric batch path (GetVolumetricBatches cpp:283),
301
+ /** Carbon EveChildCloud2::UpdateSyncronous (cpp:621-685): an effect-hash
302
+ * change invalidates the lightmap and zeroes its dimensions (cpp:625-633);
303
+ * the DensityMap-driven dimension discovery and the empty-lightmap fallback
304
+ * (cpp:634-674) are GPU/resource work; the texture animation advances gated
305
+ * on UpdateOnlyWhenRendered/renderedLastFrame (cpp:677-683) and
306
+ * renderedLastFrame is cleared every pass (cpp:684) - the flag is only
307
+ * re-stamped by the volumetric batch path (GetVolumetricBatches cpp:283),
304
308
  * deliberately NOT by the reflection path. */
305
309
  UpdateSyncronous(updateContext, _params) {
306
310
  if (this.effect) {
@@ -315,20 +319,20 @@ new class extends _identity {
315
319
  }
316
320
  if (this.animation) {
317
321
  if (!this.animation.UpdateOnlyWhenRendered?.() || this.renderedLastFrame) {
318
- this.animation.AdvanceTime?.(updateContext?.GetDeltaT?.() ?? 0);
322
+ this.animation.AdvanceTime?.(updateContext?.GetDeltaT() ?? 0);
319
323
  }
320
324
  }
321
325
  this.renderedLastFrame = false;
322
326
  }
323
327
 
324
- /** Carbon EveChildCloud2::UpdateAsyncronous (cpp:687-708): local SRT
325
- * transform (cpp:689); world = localTransform * parent - Carbon row-vector,
326
- * local applies first, so the gl-matrix operands swap (cpp:693); bounding
327
- * sphere = CcpMath::Sphere(unit cube, world) which transforms ONLY the min
328
- * and max corners (math Sphere.cpp:10-17 - the cheap two-corner form, not an
329
- * 8-corner bound; preserved); map-offset scroll from the origin-shift-
330
- * corrected world movement rotated into local space (cpp:697-704 - QUIRK
331
- * kept verbatim: the .z offset scrolls by mapTiling.y, cpp:703); adjusted
328
+ /** Carbon EveChildCloud2::UpdateAsyncronous (cpp:687-708): local SRT
329
+ * transform (cpp:689); world = localTransform * parent - Carbon row-vector,
330
+ * local applies first, so the gl-matrix operands swap (cpp:693); bounding
331
+ * sphere = CcpMath::Sphere(unit cube, world) which transforms ONLY the min
332
+ * and max corners (math Sphere.cpp:10-17 - the cheap two-corner form, not an
333
+ * 8-corner bound; preserved); map-offset scroll from the origin-shift-
334
+ * corrected world movement rotated into local space (cpp:697-704 - QUIRK
335
+ * kept verbatim: the .z offset scrolls by mapTiling.y, cpp:703); adjusted
332
336
  * min screen size (cpp:706); hasUpdated stamp (cpp:707). */
333
337
  UpdateAsyncronous(updateContext, params = {}) {
334
338
  // Carbon TransformationMatrix(m_scaling, m_rotation, m_translation)
@@ -355,7 +359,7 @@ new class extends _identity {
355
359
 
356
360
  // shift = -originShift + (new - previous world translation), then rotated
357
361
  // into local space with TransformNormal(shift, Inverse(world)) (cpp:697-698).
358
- const originShift = updateContext?.GetOriginShift?.();
362
+ const originShift = updateContext?.GetOriginShift();
359
363
  SHIFT_SCRATCH[0] = (originShift ? -originShift[0] : 0) + w[12] - prevX;
360
364
  SHIFT_SCRATCH[1] = (originShift ? -originShift[1] : 0) + w[13] - prevY;
361
365
  SHIFT_SCRATCH[2] = (originShift ? -originShift[2] : 0) + w[14] - prevZ;
@@ -373,12 +377,12 @@ new class extends _identity {
373
377
  // Carbon bug preserved verbatim: .z scrolls by mapTiling.y (cpp:703).
374
378
  offset[2] = (offset[2] + SHIFT_SCRATCH[2] * tiling[1]) % 1;
375
379
  }
376
- this.adjustedMinScreenSize = this.minScreenSize * (updateContext?.GetLodFactor?.() ?? 1);
380
+ this.adjustedMinScreenSize = this.minScreenSize * (updateContext?.GetLodFactor() ?? 1);
377
381
  this.hasUpdated = true;
378
382
  }
379
383
 
380
- /** Carbon EveChildCloud2::GetBoundingSphere (cpp:226-230): the packed
381
- * (center, radius) cloud sphere, unconditionally true. IEveSpaceObjectChild
384
+ /** Carbon EveChildCloud2::GetBoundingSphere (cpp:226-230): the packed
385
+ * (center, radius) cloud sphere, unconditionally true. IEveSpaceObjectChild
382
386
  * override - parent bounds unions consume it optional-chained. */
383
387
  GetBoundingSphere(out = new Float32Array(4), _query = 0) {
384
388
  out[0] = this.boundingSphere.center[0];
@@ -388,7 +392,7 @@ new class extends _identity {
388
392
  return true;
389
393
  }
390
394
 
391
- /** Carbon EveChildCloud2::GetLocalToWorldTransform (cpp:232-235); the
395
+ /** Carbon EveChildCloud2::GetLocalToWorldTransform (cpp:232-235); the
392
396
  * optional out follows the EveChildContainer copy-out shape. */
393
397
  GetLocalToWorldTransform(out = null) {
394
398
  if (out) {
@@ -397,14 +401,14 @@ new class extends _identity {
397
401
  return this.worldTransform;
398
402
  }
399
403
 
400
- /** Carbon EveChildCloud2::IsVisible (cpp:837-852): display + one-arg
401
- * IsSphereVisible (the back-plane-ignored TriFrustum quirk applies), then
402
- * the Sphere-duck GetPixelSizeAccross (Est path) against minScreenSize *
403
- * the LIVE lodFactor (not the adjusted stamp). Carbon's override of the
404
- * defaulted ITr2Renderable::IsVisible (h:47-50 returns true) - without it
404
+ /** Carbon EveChildCloud2::IsVisible (cpp:837-852): display + one-arg
405
+ * IsSphereVisible (the back-plane-ignored TriFrustum quirk applies), then
406
+ * the Sphere-duck GetPixelSizeAccross (Est path) against minScreenSize *
407
+ * the LIVE lodFactor (not the adjusted stamp). Carbon's override of the
408
+ * defaulted ITr2Renderable::IsVisible (h:47-50 returns true) - without it
405
409
  * the reflection gather would treat the cloud as always visible. */
406
410
  IsVisible(updateContext) {
407
- const frustum = updateContext?.GetFrustum?.();
411
+ const frustum = updateContext?.GetFrustum();
408
412
  if (!frustum) {
409
413
  return false;
410
414
  }
@@ -413,13 +417,13 @@ new class extends _identity {
413
417
  return false;
414
418
  }
415
419
  const screenSize = frustum.GetPixelSizeAccross(sphere);
416
- if (screenSize < this.minScreenSize * (updateContext?.GetLodFactor?.() ?? 1)) {
420
+ if (screenSize < this.minScreenSize * (updateContext?.GetLodFactor() ?? 1)) {
417
421
  return false;
418
422
  }
419
423
  return true;
420
424
  }
421
425
 
422
- /** Carbon EveChildCloud2::HasValidTransform (cpp:309-317): determinant is
426
+ /** Carbon EveChildCloud2::HasValidTransform (cpp:309-317): determinant is
423
427
  * nonzero and finite. */
424
428
  HasValidTransform() {
425
429
  const det = mat4.determinant(this.worldTransform);
@@ -431,20 +435,20 @@ new class extends _identity {
431
435
  return this.lightmapDirty;
432
436
  }
433
437
 
434
- /** Carbon EveChildCloud2::MarkLightmapDirty (cpp:753-757): also zeroes the
435
- * dirty offset (contrast SetSceneInformation's scale-change path, which
438
+ /** Carbon EveChildCloud2::MarkLightmapDirty (cpp:753-757): also zeroes the
439
+ * dirty offset (contrast SetSceneInformation's scale-change path, which
436
440
  * sets the flag WITHOUT resetting the offset - cpp:398-402). */
437
441
  MarkLightmapDirty(dirty) {
438
442
  this.lightmapDirty = !!dirty;
439
443
  this.lightmapDirtyOffset = 0;
440
444
  }
441
445
 
442
- /** Carbon EveChildCloud2::GetLights (cpp:732-746): display gate only (no
443
- * hasUpdated gate, unlike EveChildContainer), average world-basis-row-length
444
- * scaling (Carbon LengthEst; exact hypot is the accepted divergence - single
445
- * matrix reads, no composition), each light submitted with the world
446
- * transform through the duck-typed manager. Inside Tr2Light::AddLight
447
- * Carbon composes boneTransform * transform (Tr2Light.cpp:132) - that swap
446
+ /** Carbon EveChildCloud2::GetLights (cpp:732-746): display gate only (no
447
+ * hasUpdated gate, unlike EveChildContainer), average world-basis-row-length
448
+ * scaling (Carbon LengthEst; exact hypot is the accepted divergence - single
449
+ * matrix reads, no composition), each light submitted with the world
450
+ * transform through the duck-typed manager. Inside Tr2Light::AddLight
451
+ * Carbon composes boneTransform * transform (Tr2Light.cpp:132) - that swap
448
452
  * belongs to the Tr2Light port, not here. */
449
453
  GetLights(lightManager) {
450
454
  if (!this.display) {
@@ -457,12 +461,12 @@ new class extends _identity {
457
461
  }
458
462
  }
459
463
 
460
- /** Carbon's two GetSortValue overloads, dispatched on argument presence:
461
- * the ITr2VolumetricRenderable frustum form (cpp:237-242) - view distance
462
- * minus |authored local scaling| * sortingModifier, consumed by the
463
- * volumetric renderer's DESCENDING stable sort (farthest first,
464
- * Tr2VolumetricsRenderer.cpp:276-287) - and the ITr2Renderable zero-arg
465
- * form (cpp:914-917) - float32 max (finite, NOT Infinity), so the
464
+ /** Carbon's two GetSortValue overloads, dispatched on argument presence:
465
+ * the ITr2VolumetricRenderable frustum form (cpp:237-242) - view distance
466
+ * minus |authored local scaling| * sortingModifier, consumed by the
467
+ * volumetric renderer's DESCENDING stable sort (farthest first,
468
+ * Tr2VolumetricsRenderer.cpp:276-287) - and the ITr2Renderable zero-arg
469
+ * form (cpp:914-917) - float32 max (finite, NOT Infinity), so the
466
470
  * transparent reflection pass sorts the cloud to draw first. */
467
471
  GetSortValue(frustum = null) {
468
472
  if (!frustum) {
@@ -476,13 +480,13 @@ new class extends _identity {
476
480
  return Math.hypot(dx, dy, dz) - vec3.length(this.scaling) * this.sortingModifier;
477
481
  }
478
482
 
479
- /** Carbon EveChildCloud2::GetVolumetricBatches (cpp:244-284), exact gate
480
- * order: quality (cpp:246), display+hasUpdated+frustum sphere (cpp:250),
481
- * Sphere-duck pixel size vs the adjusted min screen size (cpp:256-260),
482
- * HasValidTransform (cpp:262), unit-cube buffers + effect shader
483
- * (cpp:267-274), then ONE transparent volumetric batch with the real
484
- * screenSize per-object data and Carbon's 36-index draw (cpp:276-281).
485
- * Stamps renderedLastFrame (cpp:283) - the texture-animation keep-alive.
483
+ /** Carbon EveChildCloud2::GetVolumetricBatches (cpp:244-284), exact gate
484
+ * order: quality (cpp:246), display+hasUpdated+frustum sphere (cpp:250),
485
+ * Sphere-duck pixel size vs the adjusted min screen size (cpp:256-260),
486
+ * HasValidTransform (cpp:262), unit-cube buffers + effect shader
487
+ * (cpp:267-274), then ONE transparent volumetric batch with the real
488
+ * screenSize per-object data and Carbon's 36-index draw (cpp:276-281).
489
+ * Stamps renderedLastFrame (cpp:283) - the texture-animation keep-alive.
486
490
  * Returns whether a batch was committed (JS addition; Carbon returns void). */
487
491
  GetVolumetricBatches(frustum, batches) {
488
492
  if (this.currentQuality < this.minVisibleQuality) {
@@ -515,15 +519,15 @@ new class extends _identity {
515
519
  return committed;
516
520
  }
517
521
 
518
- /** Carbon EveChildCloud2::UpdateVolumetricLightmap (cpp:319-382): the
519
- * scene-facing contract is the gates and the bool return - true means "this
520
- * cloud consumed the frame's single scene-wide lightmap budget"
521
- * (Tr2VolumetricsRenderer::ProcessComponentsUntil stops at the FIRST true,
522
- * cpp:219-221). Slice budget: VOXELS_PER_UPDATE = 6400000 * scale^3;
523
- * slices = max(VOXELS / (scaledHeight * scaledDepth), 1) (cpp:354-355).
524
- * QUIRK verbatim: the dispatch group Y/Z counts use the UNSCALED dims while
525
- * the slice count uses the scaled ones (cpp:359-361). Success advances
526
- * lightmapDirtyOffset by slices; reaching scaledWidth completes the map
522
+ /** Carbon EveChildCloud2::UpdateVolumetricLightmap (cpp:319-382): the
523
+ * scene-facing contract is the gates and the bool return - true means "this
524
+ * cloud consumed the frame's single scene-wide lightmap budget"
525
+ * (Tr2VolumetricsRenderer::ProcessComponentsUntil stops at the FIRST true,
526
+ * cpp:219-221). Slice budget: VOXELS_PER_UPDATE = 6400000 * scale^3;
527
+ * slices = max(VOXELS / (scaledHeight * scaledDepth), 1) (cpp:354-355).
528
+ * QUIRK verbatim: the dispatch group Y/Z counts use the UNSCALED dims while
529
+ * the slice count uses the scaled ones (cpp:359-361). Success advances
530
+ * lightmapDirtyOffset by slices; reaching scaledWidth completes the map
527
531
  * (dirty false, offset 0); failure resets the offset and returns false. */
528
532
  UpdateVolumetricLightmap(renderContext) {
529
533
  if (this.currentQuality < this.minVisibleQuality || !this.hasUpdated) {
@@ -549,15 +553,15 @@ new class extends _identity {
549
553
  return false;
550
554
  }
551
555
 
552
- /** Carbon EveChildCloud2::SetSceneInformation (cpp:384-424): quality maps to
553
- * lightmapSizeScale (Low 0.1 / Medium 0.15 / default 0.25, cpp:386-397); a
554
- * scale change sets lightmapDirty WITHOUT resetting the dirty offset
555
- * (cpp:398-402 - asymmetric vs MarkLightmapDirty, preserved); copies the 4
556
- * depth slices; localSunDirection = Normalize(TransformNormal(sunDir,
557
- * Inverse(world))) (cpp:407 - single-matrix inverse + basis transform, no
558
- * composition); re-dirties the lightmap when the sun moved past
559
- * cos(5/180) - QUIRK verbatim: Carbon omits the degree conversion, so the
560
- * threshold is ~1.59 degrees, not 5 (cpp:408); stamps target dims; flips
556
+ /** Carbon EveChildCloud2::SetSceneInformation (cpp:384-424): quality maps to
557
+ * lightmapSizeScale (Low 0.1 / Medium 0.15 / default 0.25, cpp:386-397); a
558
+ * scale change sets lightmapDirty WITHOUT resetting the dirty offset
559
+ * (cpp:398-402 - asymmetric vs MarkLightmapDirty, preserved); copies the 4
560
+ * depth slices; localSunDirection = Normalize(TransformNormal(sunDir,
561
+ * Inverse(world))) (cpp:407 - single-matrix inverse + basis transform, no
562
+ * composition); re-dirties the lightmap when the sun moved past
563
+ * cos(5/180) - QUIRK verbatim: Carbon omits the degree conversion, so the
564
+ * threshold is ~1.59 degrees, not 5 (cpp:408); stamps target dims; flips
561
565
  * the two cloud-shadow effect options (cpp:417-423). */
562
566
  SetSceneInformation(sceneInformation) {
563
567
  let lightmapSizeScale;
@@ -596,11 +600,11 @@ new class extends _identity {
596
600
  this.effect?.SetOption?.("CLOUD_SHADOW_ALGORITHM", receive && sceneInformation.raytracedShadows ? "CLOUD_SHADOWS_RAYTRACED" : "CLOUD_SHADOWS_CASCADED");
597
601
  }
598
602
 
599
- /** Carbon EveChildCloud2::GetVolumetricShadowBatches (cpp:759-785): gated on
600
- * display + effect + castShadows, then the "Shadow" technique presence
601
- * (cpp:766-776); emits ONE alpha, declaration-less (NULL_DECLARATION,
602
- * cpp:782), non-indexed single-triangle batch with screenSize-1 per-object
603
- * data (cpp:778-784). Does NOT stamp renderedLastFrame. Returns whether the
603
+ /** Carbon EveChildCloud2::GetVolumetricShadowBatches (cpp:759-785): gated on
604
+ * display + effect + castShadows, then the "Shadow" technique presence
605
+ * (cpp:766-776); emits ONE alpha, declaration-less (NULL_DECLARATION,
606
+ * cpp:782), non-indexed single-triangle batch with screenSize-1 per-object
607
+ * data (cpp:778-784). Does NOT stamp renderedLastFrame. Returns whether the
604
608
  * batch was committed (JS addition). */
605
609
  GetVolumetricShadowBatches(batches) {
606
610
  if (!this.display || !this.effect || !this.castShadows) {
@@ -625,25 +629,25 @@ new class extends _identity {
625
629
  return batches?.Commit?.(batch) === true;
626
630
  }
627
631
 
628
- /** Carbon EveChildCloud2::GetVolumetricShadowInfo (cpp:787-790): pure
629
- * delegation to SetupShadowFrustum. The scene calls this to build the
630
- * shadow-camera package before rendering casters into the cloud shadow map
632
+ /** Carbon EveChildCloud2::GetVolumetricShadowInfo (cpp:787-790): pure
633
+ * delegation to SetupShadowFrustum. The scene calls this to build the
634
+ * shadow-camera package before rendering casters into the cloud shadow map
631
635
  * (EveSpaceScene.cpp:2355-2371). */
632
636
  GetVolumetricShadowInfo(shadowInfo, sunDir) {
633
637
  return this.SetupShadowFrustum(shadowInfo, sunDir);
634
638
  }
635
639
 
636
- /** Carbon EveChildCloud2::SetupShadowFrustum (cpp:886-907):
637
- * lightView = Inverse(OrthoNormalBasisZ(-sunDir)) (cpp:889 - single-matrix
638
- * build + invert); the unit-cube AABB transformed by worldTransform *
639
- * lightView - COMPOSITION, world applies first, so the gl-matrix operands
640
- * swap (cpp:893; all 8 corners, math AxisAlignedBox.cpp:9-33); max.z
641
- * extended by the 2,500,000 sun-ray magic constant (cpp:895); lightViewProj
642
- * = lightView * OrthoOffCenterMatrix(...) - COMPOSITION, lightView first,
643
- * operands swap (cpp:897), with Carbon's deliberately mirrored argument
644
- * order (max.x, min.x, max.y, min.y, -max.z, -min.z) and D3D z-in-[0,1]
645
- * formula both preserved; DeriveFrustum(lightView, aabb.min, aabb.max)
646
- * (cpp:900-901); outputs aabbMax / lightViewProj copy / shadowFrustum /
640
+ /** Carbon EveChildCloud2::SetupShadowFrustum (cpp:886-907):
641
+ * lightView = Inverse(OrthoNormalBasisZ(-sunDir)) (cpp:889 - single-matrix
642
+ * build + invert); the unit-cube AABB transformed by worldTransform *
643
+ * lightView - COMPOSITION, world applies first, so the gl-matrix operands
644
+ * swap (cpp:893; all 8 corners, math AxisAlignedBox.cpp:9-33); max.z
645
+ * extended by the 2,500,000 sun-ray magic constant (cpp:895); lightViewProj
646
+ * = lightView * OrthoOffCenterMatrix(...) - COMPOSITION, lightView first,
647
+ * operands swap (cpp:897), with Carbon's deliberately mirrored argument
648
+ * order (max.x, min.x, max.y, min.y, -max.z, -min.z) and D3D z-in-[0,1]
649
+ * formula both preserved; DeriveFrustum(lightView, aabb.min, aabb.max)
650
+ * (cpp:900-901); outputs aabbMax / lightViewProj copy / shadowFrustum /
647
651
  * shadowMapSize (cpp:903-906). */
648
652
  SetupShadowFrustum(shadowInfo, sunDir) {
649
653
  vec3.set(SUN_SCRATCH, -sunDir[0], -sunDir[1], -sunDir[2]);
@@ -687,23 +691,46 @@ new class extends _identity {
687
691
  return shadowInfo;
688
692
  }
689
693
 
690
- /** Carbon EveChildCloud2::PrepareCloudShadowMap (cpp:792-826): the CPU
691
- * contract is the receiveShadows gate (cpp:796-799) and the bool return -
692
- * the scene calls SetCloudShadowMapHandle ONLY after a true return
693
- * (EveSpaceScene.cpp:2365-2368), which is what makes Carbon's unguarded
694
- * m_shadowMapDS dereference there safe. */
695
- PrepareCloudShadowMap(renderContext) {
694
+ /**
695
+ * Makes this cloud's depth-stencil the render target for its shadow pass.
696
+ *
697
+ * THE GATE IS PORTED AND THE WORK IS NOT, which is why this returns false in
698
+ * one case and throws in the other. Carbon's contract
699
+ * (`EveChildCloud2.cpp:774-808`) is that `receiveShadows` decides whether
700
+ * there is a shadow map at all, and the scene calls `SetCloudShadowMapHandle`
701
+ * ONLY after a true return (`EveSpaceScene.cpp:2365-2368`) - which is what
702
+ * makes Carbon's unguarded `m_shadowMapDS` dereference there safe.
703
+ *
704
+ * A cloud that does not receive shadows is therefore fully correct here.
705
+ *
706
+ * WHAT IS MISSING. Carbon creates the depth-stencil, pushes it as the target,
707
+ * clears depth and sets the viewport. Every push, the clear and
708
+ * `SetReadOnlyDepth` exist here; `Tr2DepthStencil` does not. Ours is a
709
+ * generated shell whose `Create` throws and which declares none of
710
+ * `GetTexture`, `IsValid`, `GetWidth` or `GetHeight` - the four Carbon uses
711
+ * (`Tr2DepthStencil.h:29,40,48,54-55`).
712
+ *
713
+ * THIS USED TO RETURN TRUE HAVING DONE NOTHING. The body was
714
+ * `renderContext?.PrepareCloudShadowMap?.(this)` against a method no render
715
+ * context defines - optional-chained, so it no-opped, and the scene then
716
+ * published a shadow-map handle for a shadow map that was never rendered.
717
+ * Failing here is the point: the gap is in `Tr2DepthStencil`, and it should
718
+ * be visible from the one place that needs it.
719
+ *
720
+ * @returns {boolean} False when this cloud receives no shadows; otherwise
721
+ * never returns.
722
+ */
723
+ PrepareCloudShadowMap() {
696
724
  if (!this.receiveShadows) {
697
725
  return false;
698
726
  }
699
- renderContext?.PrepareCloudShadowMap?.(this);
700
- return true;
727
+ throw new Error("EveChildCloud2.PrepareCloudShadowMap: needs Tr2DepthStencil.Create and its " + "GetTexture/IsValid/GetWidth/GetHeight accessors, which are unported.");
701
728
  }
702
729
 
703
- /** Carbon EveChildCloud2::SetCloudShadowMapHandle (cpp:829-835): publish the
704
- * shadow depth-stencil into the global "DepthShadowMap" variable handle
705
- * (registered in the Carbon ctor, cpp:115). QUIRK: Carbon dereferences
706
- * m_shadowMapDS with no null guard - safe only via the
730
+ /** Carbon EveChildCloud2::SetCloudShadowMapHandle (cpp:829-835): publish the
731
+ * shadow depth-stencil into the global "DepthShadowMap" variable handle
732
+ * (registered in the Carbon ctor, cpp:115). QUIRK: Carbon dereferences
733
+ * m_shadowMapDS with no null guard - safe only via the
707
734
  * PrepareCloudShadowMap-first call order (see above). */
708
735
  SetCloudShadowMapHandle() {
709
736
  if (this.shadowMapDS?.IsValid?.()) {
@@ -711,13 +738,13 @@ new class extends _identity {
711
738
  }
712
739
  }
713
740
 
714
- /** Carbon EveChildCloud2::GetBatches (cpp:854-884): quality gate, then ONLY
715
- * the (REFLECTION, TRANSPARENT) type/reason pair produces anything
716
- * (cpp:860) - every other combination is a silent no-op; HasValidTransform
717
- * + unit-cube buffers + reflectionEffect gates (cpp:862-874); one alpha
718
- * batch with the hardcoded 10000 screen size forcing max lodFactor
719
- * (cpp:878). QUIRK: unlike GetVolumetricBatches this does NOT stamp
720
- * renderedLastFrame - reflection-only rendering does not keep texture
741
+ /** Carbon EveChildCloud2::GetBatches (cpp:854-884): quality gate, then ONLY
742
+ * the (REFLECTION, TRANSPARENT) type/reason pair produces anything
743
+ * (cpp:860) - every other combination is a silent no-op; HasValidTransform
744
+ * + unit-cube buffers + reflectionEffect gates (cpp:862-874); one alpha
745
+ * batch with the hardcoded 10000 screen size forcing max lodFactor
746
+ * (cpp:878). QUIRK: unlike GetVolumetricBatches this does NOT stamp
747
+ * renderedLastFrame - reflection-only rendering does not keep texture
721
748
  * animations alive. Returns whether a batch was committed (JS addition). */
722
749
  GetBatches(batches, batchType, _perObjectData, reason = Tr2RenderReason.TR2RENDERREASON_NORMAL) {
723
750
  if (this.currentQuality < this.minVisibleQuality) {
@@ -740,18 +767,18 @@ new class extends _identity {
740
767
  return batches?.Commit?.(batch) === true;
741
768
  }
742
769
 
743
- /** Carbon EveChildCloud2::HasTransparentBatches (cpp:909-912):
744
- * unconditionally true - the reflection gather always routes the cloud
770
+ /** Carbon EveChildCloud2::HasTransparentBatches (cpp:909-912):
771
+ * unconditionally true - the reflection gather always routes the cloud
745
772
  * through the transparent leg that feeds GetBatches' type/reason filter. */
746
773
  HasTransparentBatches() {
747
774
  return true;
748
775
  }
749
776
 
750
- /** Carbon's two GetPerObjectData overloads (public, screenSize 1:
751
- * cpp:919-927; private, caller screenSize: cpp:534-542): allocate from the
752
- * accumulator and populate. The GPU-free record carries the live object
753
- * reference plus the CPU-populated field block (cloudData); view-dependent
754
- * members are refreshed by the engine calling PopulatePerObjectData again
777
+ /** Carbon's two GetPerObjectData overloads (public, screenSize 1:
778
+ * cpp:919-927; private, caller screenSize: cpp:534-542): allocate from the
779
+ * accumulator and populate. The GPU-free record carries the live object
780
+ * reference plus the CPU-populated field block (cloudData); view-dependent
781
+ * members are refreshed by the engine calling PopulatePerObjectData again
755
782
  * with its render context at realization (screenSize is stamped for that). */
756
783
  GetPerObjectData(accumulator = null, screenSize = 1) {
757
784
  const data = typeof accumulator?.Allocate === "function" ? accumulator.Allocate(Tr2PerObjectData) : new Tr2PerObjectData();
@@ -764,16 +791,16 @@ new class extends _identity {
764
791
  return data;
765
792
  }
766
793
 
767
- /** Carbon EveChildCloud2::PopulatePerObjectData (cpp:544-619) against the
768
- * PerObjectData block (EveChildCloud2.h:125-145). Compositions (Carbon
769
- * row-vector -> gl-matrix operands swap):
770
- * - cpp:548/567 worldTransform * viewTransform (world first) ->
771
- * mat4.multiply(WV, view, world); the cpp:567 transpose is folded into
772
- * explicit element reads: viewDirection = TransformNormal((0,0,-1),
773
- * worldViewT) = (-WV[2], -WV[6], -WV[10]); depthSliceN =
774
- * -WV[14] - slice * WV[15].
775
- * Single-matrix sites (NO swap): the cpp:546/547/551 HLSL packing
776
- * transposes, cpp:550 TransformCoord with the inverted world, cpp:578
794
+ /** Carbon EveChildCloud2::PopulatePerObjectData (cpp:544-619) against the
795
+ * PerObjectData block (EveChildCloud2.h:125-145). Compositions (Carbon
796
+ * row-vector -> gl-matrix operands swap):
797
+ * - cpp:548/567 worldTransform * viewTransform (world first) ->
798
+ * mat4.multiply(WV, view, world); the cpp:567 transpose is folded into
799
+ * explicit element reads: viewDirection = TransformNormal((0,0,-1),
800
+ * worldViewT) = (-WV[2], -WV[6], -WV[10]); depthSliceN =
801
+ * -WV[14] - slice * WV[15].
802
+ * Single-matrix sites (NO swap): the cpp:546/547/551 HLSL packing
803
+ * transposes, cpp:550 TransformCoord with the inverted world, cpp:578
777
804
  * Decompose (mat4.getScaling). */
778
805
  PopulatePerObjectData(data, screenSize = 1, renderContext = null) {
779
806
  const w = this.worldTransform;