@carbonenginejs/runtime-trinity 0.5.0 → 0.7.0

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 (1499) hide show
  1. package/README.md +35 -243
  2. package/dist/controllers/CjsControllerExpressionProgram.js +157 -0
  3. package/dist/controllers/CjsControllerExpressionProgram.js.map +1 -1
  4. package/dist/controllers/ITr2ControllerAction.js +57 -0
  5. package/dist/controllers/ITr2ControllerAction.js.map +1 -1
  6. package/dist/controllers/Tr2ActionAnimateCurveSet.js +12 -2
  7. package/dist/controllers/Tr2ActionAnimateCurveSet.js.map +1 -1
  8. package/dist/controllers/Tr2ActionAnimateValue.js +28 -2
  9. package/dist/controllers/Tr2ActionAnimateValue.js.map +1 -1
  10. package/dist/controllers/Tr2ActionBindRTPC.js +13 -2
  11. package/dist/controllers/Tr2ActionBindRTPC.js.map +1 -1
  12. package/dist/controllers/Tr2ActionCallback.js +7 -2
  13. package/dist/controllers/Tr2ActionCallback.js.map +1 -1
  14. package/dist/controllers/Tr2ActionChildEffect.js +65 -2
  15. package/dist/controllers/Tr2ActionChildEffect.js.map +1 -1
  16. package/dist/controllers/Tr2ActionOverlay.js +70 -2
  17. package/dist/controllers/Tr2ActionOverlay.js.map +1 -1
  18. package/dist/controllers/Tr2ActionPlayCurveSet.js +18 -2
  19. package/dist/controllers/Tr2ActionPlayCurveSet.js.map +1 -1
  20. package/dist/controllers/Tr2ActionPlayMeshAnimation.js +31 -2
  21. package/dist/controllers/Tr2ActionPlayMeshAnimation.js.map +1 -1
  22. package/dist/controllers/Tr2ActionPlaySound.js +13 -2
  23. package/dist/controllers/Tr2ActionPlaySound.js.map +1 -1
  24. package/dist/controllers/Tr2ActionPython.js +13 -2
  25. package/dist/controllers/Tr2ActionPython.js.map +1 -1
  26. package/dist/controllers/Tr2ActionResetClipSphereCenter.js +21 -4
  27. package/dist/controllers/Tr2ActionResetClipSphereCenter.js.map +1 -1
  28. package/dist/controllers/Tr2ActionSetAttenuationScaling.js +7 -2
  29. package/dist/controllers/Tr2ActionSetAttenuationScaling.js.map +1 -1
  30. package/dist/controllers/Tr2ActionSetAudioEmitterPrefix.js +7 -2
  31. package/dist/controllers/Tr2ActionSetAudioEmitterPrefix.js.map +1 -1
  32. package/dist/controllers/Tr2ActionSetAudioSwitch.js +7 -2
  33. package/dist/controllers/Tr2ActionSetAudioSwitch.js.map +1 -1
  34. package/dist/controllers/Tr2ActionSetExternalControllerVariable.js +25 -2
  35. package/dist/controllers/Tr2ActionSetExternalControllerVariable.js.map +1 -1
  36. package/dist/controllers/Tr2ActionSetShaderOption.js +7 -2
  37. package/dist/controllers/Tr2ActionSetShaderOption.js.map +1 -1
  38. package/dist/controllers/Tr2ActionSetValue.js +37 -2
  39. package/dist/controllers/Tr2ActionSetValue.js.map +1 -1
  40. package/dist/controllers/Tr2ActionSpawnParticles.js +12 -2
  41. package/dist/controllers/Tr2ActionSpawnParticles.js.map +1 -1
  42. package/dist/controllers/Tr2BindingPoint.js +71 -4
  43. package/dist/controllers/Tr2BindingPoint.js.map +1 -1
  44. package/dist/controllers/Tr2Controller.js +39 -2
  45. package/dist/controllers/Tr2Controller.js.map +1 -1
  46. package/dist/controllers/Tr2ControllerEventHandler.js +12 -2
  47. package/dist/controllers/Tr2ControllerEventHandler.js.map +1 -1
  48. package/dist/controllers/Tr2ControllerExpression.js +19 -2
  49. package/dist/controllers/Tr2ControllerExpression.js.map +1 -1
  50. package/dist/controllers/Tr2ControllerFloatVariable.js +8 -2
  51. package/dist/controllers/Tr2ControllerFloatVariable.js.map +1 -1
  52. package/dist/controllers/Tr2ControllerReference.js +13 -2
  53. package/dist/controllers/Tr2ControllerReference.js.map +1 -1
  54. package/dist/controllers/Tr2StateMachine.js +19 -2
  55. package/dist/controllers/Tr2StateMachine.js.map +1 -1
  56. package/dist/controllers/Tr2StateMachineState.js +49 -2
  57. package/dist/controllers/Tr2StateMachineState.js.map +1 -1
  58. package/dist/controllers/Tr2StateMachineTransition.js +31 -2
  59. package/dist/controllers/Tr2StateMachineTransition.js.map +1 -1
  60. package/dist/controllers/Tr2SyncToAnimation.js +7 -2
  61. package/dist/controllers/Tr2SyncToAnimation.js.map +1 -1
  62. package/dist/controllers/Tr2TimelineController.js +63 -2
  63. package/dist/controllers/Tr2TimelineController.js.map +1 -1
  64. package/dist/controllers/Tr2TimelineEntry.js +2 -2
  65. package/dist/controllers/Tr2TimelineEntry.js.map +1 -1
  66. package/dist/controllers/contracts.js +24 -1
  67. package/dist/controllers/contracts.js.map +1 -1
  68. package/dist/controllers/index.js +1 -1
  69. package/dist/curves/CjsGrannyCurves.js +151 -1
  70. package/dist/curves/CjsGrannyCurves.js.map +1 -1
  71. package/dist/curves/Tr2BoneMatrixCurve.js +27 -4
  72. package/dist/curves/Tr2BoneMatrixCurve.js.map +1 -1
  73. package/dist/curves/Tr2CameraFollowCurveKey.js +9 -3
  74. package/dist/curves/Tr2CameraFollowCurveKey.js.map +1 -1
  75. package/dist/curves/Tr2CurveColor.js +10 -4
  76. package/dist/curves/Tr2CurveColor.js.map +1 -1
  77. package/dist/curves/Tr2CurveColorMixer.js +10 -4
  78. package/dist/curves/Tr2CurveColorMixer.js.map +1 -1
  79. package/dist/curves/Tr2CurveCombiner.js +8 -3
  80. package/dist/curves/Tr2CurveCombiner.js.map +1 -1
  81. package/dist/curves/Tr2CurveConstant.js +22 -6
  82. package/dist/curves/Tr2CurveConstant.js.map +1 -1
  83. package/dist/curves/Tr2CurveEulerRotation.js +8 -3
  84. package/dist/curves/Tr2CurveEulerRotation.js.map +1 -1
  85. package/dist/curves/Tr2CurveEulerRotationExpression.js +69 -3
  86. package/dist/curves/Tr2CurveEulerRotationExpression.js.map +1 -1
  87. package/dist/curves/Tr2CurveQuaternion.js +8 -3
  88. package/dist/curves/Tr2CurveQuaternion.js.map +1 -1
  89. package/dist/curves/Tr2CurveQuaternionKey.js +8 -3
  90. package/dist/curves/Tr2CurveQuaternionKey.js.map +1 -1
  91. package/dist/curves/Tr2CurveRandomAxisRotation.js +31 -3
  92. package/dist/curves/Tr2CurveRandomAxisRotation.js.map +1 -1
  93. package/dist/curves/Tr2CurveScalar.js +40 -5
  94. package/dist/curves/Tr2CurveScalar.js.map +1 -1
  95. package/dist/curves/Tr2CurveScalarExpression.js +13 -2
  96. package/dist/curves/Tr2CurveScalarExpression.js.map +1 -1
  97. package/dist/curves/Tr2CurveScalarKey.js +8 -2
  98. package/dist/curves/Tr2CurveScalarKey.js.map +1 -1
  99. package/dist/curves/Tr2CurveSetRange.js +7 -2
  100. package/dist/curves/Tr2CurveSetRange.js.map +1 -1
  101. package/dist/curves/Tr2CurveVector2.js +8 -3
  102. package/dist/curves/Tr2CurveVector2.js.map +1 -1
  103. package/dist/curves/Tr2CurveVector3.js +8 -3
  104. package/dist/curves/Tr2CurveVector3.js.map +1 -1
  105. package/dist/curves/Tr2CurveVector3Expression.js +74 -3
  106. package/dist/curves/Tr2CurveVector3Expression.js.map +1 -1
  107. package/dist/curves/Tr2CurveVector3Lerp.js +9 -3
  108. package/dist/curves/Tr2CurveVector3Lerp.js.map +1 -1
  109. package/dist/curves/Tr2DistanceTracker.js +9 -3
  110. package/dist/curves/Tr2DistanceTracker.js.map +1 -1
  111. package/dist/curves/Tr2FollowCurve.js +9 -3
  112. package/dist/curves/Tr2FollowCurve.js.map +1 -1
  113. package/dist/curves/Tr2GrannyEventTrack.js +6 -1
  114. package/dist/curves/Tr2GrannyEventTrack.js.map +1 -1
  115. package/dist/curves/Tr2GrannyTrack.js +8 -2
  116. package/dist/curves/Tr2GrannyTrack.js.map +1 -1
  117. package/dist/curves/Tr2GrannyTransformTrack.js +9 -3
  118. package/dist/curves/Tr2GrannyTransformTrack.js.map +1 -1
  119. package/dist/curves/Tr2GrannyVectorTrack.js +6 -1
  120. package/dist/curves/Tr2GrannyVectorTrack.js.map +1 -1
  121. package/dist/curves/Tr2MatrixKey.js +8 -3
  122. package/dist/curves/Tr2MatrixKey.js.map +1 -1
  123. package/dist/curves/Tr2ObjectFollowCurveKey.js +10 -4
  124. package/dist/curves/Tr2ObjectFollowCurveKey.js.map +1 -1
  125. package/dist/curves/Tr2QuaternionLerpCurve.js +10 -4
  126. package/dist/curves/Tr2QuaternionLerpCurve.js.map +1 -1
  127. package/dist/curves/Tr2RotationAdapter.js +9 -3
  128. package/dist/curves/Tr2RotationAdapter.js.map +1 -1
  129. package/dist/curves/Tr2ScalarExprKey.js +21 -3
  130. package/dist/curves/Tr2ScalarExprKey.js.map +1 -1
  131. package/dist/curves/Tr2ScalarExprKeyCurve.js +27 -4
  132. package/dist/curves/Tr2ScalarExprKeyCurve.js.map +1 -1
  133. package/dist/curves/Tr2ScalarFader.js +14 -3
  134. package/dist/curves/Tr2ScalarFader.js.map +1 -1
  135. package/dist/curves/Tr2TranslationAdapter.js +10 -4
  136. package/dist/curves/Tr2TranslationAdapter.js.map +1 -1
  137. package/dist/curves/TriColorSequencer.js +10 -4
  138. package/dist/curves/TriColorSequencer.js.map +1 -1
  139. package/dist/curves/TriCurveSet.js +25 -2
  140. package/dist/curves/TriCurveSet.js.map +1 -1
  141. package/dist/curves/TriEventCurve.js +25 -2
  142. package/dist/curves/TriEventCurve.js.map +1 -1
  143. package/dist/curves/TriEventKey.js +7 -2
  144. package/dist/curves/TriEventKey.js.map +1 -1
  145. package/dist/curves/TriPerlinCurve.js +33 -3
  146. package/dist/curves/TriPerlinCurve.js.map +1 -1
  147. package/dist/curves/TriVectorSequencer.js +10 -4
  148. package/dist/curves/TriVectorSequencer.js.map +1 -1
  149. package/dist/eve/AudioGameObject.js +95 -7
  150. package/dist/eve/AudioGameObject.js.map +1 -1
  151. package/dist/eve/BackAndForthData.js +10 -3
  152. package/dist/eve/BackAndForthData.js.map +1 -1
  153. package/dist/eve/CjsDistributionRandom.js +6 -0
  154. package/dist/eve/CjsDistributionRandom.js.map +1 -1
  155. package/dist/eve/CjsEveThrottleableState.js +11 -0
  156. package/dist/eve/CjsEveThrottleableState.js.map +1 -1
  157. package/dist/eve/EveChildUpdateParams.js +11 -4
  158. package/dist/eve/EveChildUpdateParams.js.map +1 -1
  159. package/dist/eve/EveComponentTypes.js.map +1 -1
  160. package/dist/eve/EveCustomMask.js +64 -33
  161. package/dist/eve/EveCustomMask.js.map +1 -1
  162. package/dist/eve/EveDistanceField.js +87 -3
  163. package/dist/eve/EveDistanceField.js.map +1 -1
  164. package/dist/eve/EveEntity.js +138 -0
  165. package/dist/eve/EveEntity.js.map +1 -0
  166. package/dist/eve/EveImpactOverlay.js +64 -3
  167. package/dist/eve/EveImpactOverlay.js.map +1 -1
  168. package/dist/eve/EveLODHelper.js +17 -13
  169. package/dist/eve/EveLODHelper.js.map +1 -1
  170. package/dist/eve/EveLineData.js +6 -4
  171. package/dist/eve/EveLineData.js.map +1 -1
  172. package/dist/eve/EveThrottleable.js +13 -2
  173. package/dist/eve/EveThrottleable.js.map +1 -1
  174. package/dist/eve/EveUpdateContext.js +3 -3
  175. package/dist/eve/EveUpdateContext.js.map +1 -1
  176. package/dist/eve/FollowASplineData.js +9 -2
  177. package/dist/eve/FollowASplineData.js.map +1 -1
  178. package/dist/eve/FormationData.js +8 -2
  179. package/dist/eve/FormationData.js.map +1 -1
  180. package/dist/eve/InertiaData.js +10 -3
  181. package/dist/eve/InertiaData.js.map +1 -1
  182. package/dist/eve/PlacementDataWithIdentifier.js +11 -4
  183. package/dist/eve/PlacementDataWithIdentifier.js.map +1 -1
  184. package/dist/eve/PlayFXData.js +10 -3
  185. package/dist/eve/PlayFXData.js.map +1 -1
  186. package/dist/eve/SeekTargetData.js +10 -3
  187. package/dist/eve/SeekTargetData.js.map +1 -1
  188. package/dist/eve/attachment/EveSpaceObjectAttachmentUtils.js +105 -0
  189. package/dist/eve/attachment/EveSpaceObjectAttachmentUtils.js.map +1 -0
  190. package/dist/eve/attachment/banner/EveBannerItem.js +70 -0
  191. package/dist/eve/attachment/banner/EveBannerItem.js.map +1 -0
  192. package/dist/eve/{EveBannerLight.js → attachment/banner/EveBannerLight.js} +16 -5
  193. package/dist/eve/attachment/banner/EveBannerLight.js.map +1 -0
  194. package/dist/eve/attachment/banner/EveBannerSet.js +537 -0
  195. package/dist/eve/attachment/banner/EveBannerSet.js.map +1 -0
  196. package/dist/eve/{EveBoosterSet2.js → attachment/booster/EveBoosterSet2.js} +267 -46
  197. package/dist/eve/attachment/booster/EveBoosterSet2.js.map +1 -0
  198. package/dist/eve/{EveBoosterSet2Renderable.js → attachment/booster/EveBoosterSet2Renderable.js} +216 -15
  199. package/dist/eve/attachment/booster/EveBoosterSet2Renderable.js.map +1 -0
  200. package/dist/eve/{EveTrailsSet.js → attachment/booster/EveTrailsSet.js} +52 -4
  201. package/dist/eve/attachment/booster/EveTrailsSet.js.map +1 -0
  202. package/dist/eve/attachment/decal/DecalMeshCache.js +2 -2
  203. package/dist/eve/attachment/decal/DecalMeshCache.js.map +1 -1
  204. package/dist/eve/attachment/decal/EveSpaceObjectDecal.js +512 -0
  205. package/dist/eve/attachment/decal/EveSpaceObjectDecal.js.map +1 -0
  206. package/dist/eve/attachment/haze/EveHazeSet.js +187 -0
  207. package/dist/eve/attachment/haze/EveHazeSet.js.map +1 -0
  208. package/dist/eve/attachment/haze/EveHazeSetItem.js +64 -0
  209. package/dist/eve/attachment/haze/EveHazeSetItem.js.map +1 -0
  210. package/dist/eve/{EveHazeSetLight.js → attachment/haze/EveHazeSetLight.js} +16 -5
  211. package/dist/eve/attachment/haze/EveHazeSetLight.js.map +1 -0
  212. package/dist/eve/attachment/itemSetBounds.js +131 -0
  213. package/dist/eve/attachment/itemSetBounds.js.map +1 -0
  214. package/dist/eve/{EvePlaneLight.js → attachment/plane/EvePlaneLight.js} +17 -5
  215. package/dist/eve/attachment/plane/EvePlaneLight.js.map +1 -0
  216. package/dist/eve/attachment/plane/EvePlaneSet.js +303 -0
  217. package/dist/eve/attachment/plane/EvePlaneSet.js.map +1 -0
  218. package/dist/eve/attachment/plane/EvePlaneSetItem.js +72 -0
  219. package/dist/eve/attachment/plane/EvePlaneSetItem.js.map +1 -0
  220. package/dist/eve/{EveSpotlightLight.js → attachment/spotlight/EveSpotlightLight.js} +16 -5
  221. package/dist/eve/attachment/spotlight/EveSpotlightLight.js.map +1 -0
  222. package/dist/eve/attachment/spotlight/EveSpotlightSet.js +235 -0
  223. package/dist/eve/attachment/spotlight/EveSpotlightSet.js.map +1 -0
  224. package/dist/eve/attachment/spotlight/EveSpotlightSetItem.js +61 -0
  225. package/dist/eve/attachment/spotlight/EveSpotlightSetItem.js.map +1 -0
  226. package/dist/eve/{EveSpriteLight.js → attachment/sprite/EveSpriteLight.js} +17 -5
  227. package/dist/eve/attachment/sprite/EveSpriteLight.js.map +1 -0
  228. package/dist/eve/attachment/sprite/EveSpriteLineSet.js +192 -0
  229. package/dist/eve/attachment/sprite/EveSpriteLineSet.js.map +1 -0
  230. package/dist/eve/{EveSpriteLineSetItem.js → attachment/sprite/EveSpriteLineSetItem.js} +34 -9
  231. package/dist/eve/attachment/sprite/EveSpriteLineSetItem.js.map +1 -0
  232. package/dist/eve/attachment/sprite/EveSpriteSet.js +255 -0
  233. package/dist/eve/attachment/sprite/EveSpriteSet.js.map +1 -0
  234. package/dist/{generated/eve/attachment/sprites → eve/attachment/sprite}/EveSpriteSetItem.js +28 -31
  235. package/dist/eve/attachment/sprite/EveSpriteSetItem.js.map +1 -0
  236. package/dist/eve/attachment/turrets/EveTurretFiringFX.js +187 -5
  237. package/dist/eve/attachment/turrets/EveTurretFiringFX.js.map +1 -1
  238. package/dist/eve/attachment/turrets/EveTurretSet.js +333 -19
  239. package/dist/eve/attachment/turrets/EveTurretSet.js.map +1 -1
  240. package/dist/eve/attachment/turrets/EveTurretTarget.js +115 -3
  241. package/dist/eve/attachment/turrets/EveTurretTarget.js.map +1 -1
  242. package/dist/eve/camera/EveCamera.js +644 -0
  243. package/dist/eve/camera/EveCamera.js.map +1 -0
  244. package/dist/eve/child/EveChildAudio.js +67 -4
  245. package/dist/eve/child/EveChildAudio.js.map +1 -1
  246. package/dist/eve/child/EveChildBehaviorSystem.js +412 -0
  247. package/dist/eve/child/EveChildBehaviorSystem.js.map +1 -0
  248. package/dist/{generated/eve → eve}/child/EveChildBulletStorm.js +46 -8
  249. package/dist/eve/child/EveChildBulletStorm.js.map +1 -0
  250. package/dist/eve/child/EveChildContainer.js +181 -22
  251. package/dist/eve/child/EveChildContainer.js.map +1 -1
  252. package/dist/eve/child/EveChildEffectPropagator.js +5 -5
  253. package/dist/eve/child/EveChildEffectPropagator.js.map +1 -1
  254. package/dist/eve/child/EveChildFogVolume.js +76 -4
  255. package/dist/eve/child/EveChildFogVolume.js.map +1 -1
  256. package/dist/eve/child/EveChildInheritProperties.js +20 -3
  257. package/dist/eve/child/EveChildInheritProperties.js.map +1 -1
  258. package/dist/eve/child/EveChildInstanceTransform.js +4 -4
  259. package/dist/eve/child/EveChildInstanceTransform.js.map +1 -1
  260. package/dist/eve/child/EveChildInstancedMeshes.js +485 -23
  261. package/dist/eve/child/EveChildInstancedMeshes.js.map +1 -1
  262. package/dist/eve/child/EveChildLightingOverride.js +78 -4
  263. package/dist/eve/child/EveChildLightingOverride.js.map +1 -1
  264. package/dist/{generated/eve → eve}/child/EveChildLink.js +23 -22
  265. package/dist/eve/child/EveChildLink.js.map +1 -0
  266. package/dist/eve/child/EveChildMesh.js +366 -111
  267. package/dist/eve/child/EveChildMesh.js.map +1 -1
  268. package/dist/eve/child/EveChildSpherePin.js +108 -0
  269. package/dist/eve/child/EveChildSpherePin.js.map +1 -0
  270. package/dist/eve/child/EveChildTransform.js +48 -5
  271. package/dist/eve/child/EveChildTransform.js.map +1 -1
  272. package/dist/eve/child/EveCloudVolumeBall.js +4 -4
  273. package/dist/eve/child/EveCloudVolumeBall.js.map +1 -1
  274. package/dist/eve/child/IEveSpaceObjectChild.js +7 -2
  275. package/dist/eve/child/IEveSpaceObjectChild.js.map +1 -1
  276. package/dist/eve/child/behaviors/CollisionAvoidance.js +112 -0
  277. package/dist/eve/child/behaviors/CollisionAvoidance.js.map +1 -0
  278. package/dist/eve/child/behaviors/DroneAgent.js +5 -5
  279. package/dist/eve/child/behaviors/DroneAgent.js.map +1 -1
  280. package/dist/eve/child/behaviors/InclusionVolume.js +131 -0
  281. package/dist/eve/child/behaviors/InclusionVolume.js.map +1 -0
  282. package/dist/eve/child/behaviors/Wander.js +99 -0
  283. package/dist/eve/child/behaviors/Wander.js.map +1 -0
  284. package/dist/{generated/eve → eve}/child/behaviors/enums.js +1 -1
  285. package/dist/eve/child/behaviors/enums.js.map +1 -0
  286. package/dist/eve/child/behaviors/lifecycle/ProcessLifetime.js +540 -0
  287. package/dist/eve/child/behaviors/lifecycle/ProcessLifetime.js.map +1 -0
  288. package/dist/eve/{ProcessLifetimeData.js → child/behaviors/lifecycle/ProcessLifetimeData.js} +10 -4
  289. package/dist/eve/child/behaviors/lifecycle/ProcessLifetimeData.js.map +1 -0
  290. package/dist/eve/child/behaviors/{SplineTunnel.js → tunnels/SplineTunnel.js} +11 -9
  291. package/dist/eve/child/behaviors/tunnels/SplineTunnel.js.map +1 -0
  292. package/dist/eve/child/behaviors/tunnels/SplineTunnelGroup.js +211 -0
  293. package/dist/eve/child/behaviors/tunnels/SplineTunnelGroup.js.map +1 -0
  294. package/dist/eve/child/behaviors/{SplineTunnelPoint.js → tunnels/SplineTunnelPoint.js} +6 -6
  295. package/dist/eve/child/behaviors/tunnels/SplineTunnelPoint.js.map +1 -0
  296. package/dist/eve/child/lineSetPaths/EveBezierCurve.js +82 -8
  297. package/dist/eve/child/lineSetPaths/EveBezierCurve.js.map +1 -1
  298. package/dist/eve/child/lineSetPaths/EveCircle.js +82 -8
  299. package/dist/eve/child/lineSetPaths/EveCircle.js.map +1 -1
  300. package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierAttachToBone.js +27 -19
  301. package/dist/eve/child/modifiers/EveChildModifierAttachToBone.js.map +1 -0
  302. package/dist/eve/child/modifiers/EveChildModifierBillboard2D.js +8 -3
  303. package/dist/eve/child/modifiers/EveChildModifierBillboard2D.js.map +1 -1
  304. package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierBillboard3D.js +26 -23
  305. package/dist/eve/child/modifiers/EveChildModifierBillboard3D.js.map +1 -0
  306. package/dist/eve/child/modifiers/EveChildModifierBooster.js +10 -4
  307. package/dist/eve/child/modifiers/EveChildModifierBooster.js.map +1 -1
  308. package/dist/eve/child/modifiers/EveChildModifierCameraOrientedRotationConstrained.js +12 -6
  309. package/dist/eve/child/modifiers/EveChildModifierCameraOrientedRotationConstrained.js.map +1 -1
  310. package/dist/eve/child/modifiers/EveChildModifierHalo.js +9 -4
  311. package/dist/eve/child/modifiers/EveChildModifierHalo.js.map +1 -1
  312. package/dist/eve/child/modifiers/EveChildModifierHaloInverted.js +10 -4
  313. package/dist/eve/child/modifiers/EveChildModifierHaloInverted.js.map +1 -1
  314. package/dist/eve/child/modifiers/EveChildModifierSRT.js +10 -5
  315. package/dist/eve/child/modifiers/EveChildModifierSRT.js.map +1 -1
  316. package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierStretch.js +36 -22
  317. package/dist/eve/child/modifiers/EveChildModifierStretch.js.map +1 -0
  318. package/dist/eve/child/modifiers/EveChildModifierTransformCommon.js +2 -2
  319. package/dist/eve/child/modifiers/EveChildModifierTransformCommon.js.map +1 -1
  320. package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierTranslateWithCamera.js +19 -17
  321. package/dist/eve/child/modifiers/EveChildModifierTranslateWithCamera.js.map +1 -0
  322. package/dist/{generated/eve → eve}/child/procedural/EveChildProceduralContainer.js +15 -8
  323. package/dist/eve/child/procedural/EveChildProceduralContainer.js.map +1 -0
  324. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodAttributeMap.js +14 -14
  325. package/dist/eve/child/procedural/selection/EveProceduralMethodAttributeMap.js.map +1 -0
  326. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js +8 -8
  327. package/dist/eve/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js.map +1 -0
  328. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodCycling.js +14 -14
  329. package/dist/eve/child/procedural/selection/EveProceduralMethodCycling.js.map +1 -0
  330. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodCyclingParameter.js +10 -10
  331. package/dist/eve/child/procedural/selection/EveProceduralMethodCyclingParameter.js.map +1 -0
  332. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodRandom.js +19 -19
  333. package/dist/eve/child/procedural/selection/EveProceduralMethodRandom.js.map +1 -0
  334. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodRandomParameter.js +9 -9
  335. package/dist/eve/child/procedural/selection/EveProceduralMethodRandomParameter.js.map +1 -0
  336. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodThresholdParameter.js +9 -9
  337. package/dist/eve/child/procedural/selection/EveProceduralMethodThresholdParameter.js.map +1 -0
  338. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodThresholds.js +19 -19
  339. package/dist/eve/child/procedural/selection/EveProceduralMethodThresholds.js.map +1 -0
  340. package/dist/{generated/eve → eve}/distribution/EveBaseDistributionMethod.js +136 -7
  341. package/dist/eve/distribution/EveBaseDistributionMethod.js.map +1 -0
  342. package/dist/{generated/eve → eve}/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js +14 -3
  343. package/dist/eve/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js.map +1 -0
  344. package/dist/{generated/eve → eve}/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js +13 -5
  345. package/dist/eve/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js.map +1 -0
  346. package/dist/{generated/eve → eve}/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js +16 -5
  347. package/dist/eve/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js.map +1 -0
  348. package/dist/eve/distribution/attributeModifiers/InitialPlacement.js +2 -2
  349. package/dist/eve/distribution/attributeModifiers/InitialPlacement.js.map +1 -1
  350. package/dist/eve/distribution/attributeModifiers/enums.js.map +1 -0
  351. package/dist/{generated/eve → eve}/distribution/placement/EveDistributionPlacementGeneratorLocators.js +18 -5
  352. package/dist/eve/distribution/placement/EveDistributionPlacementGeneratorLocators.js.map +1 -0
  353. package/dist/{generated/eve → eve}/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js +33 -5
  354. package/dist/eve/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js.map +1 -0
  355. package/dist/{generated/eve → eve}/distribution/placement/EveDistributionPlacementGeneratorVolume.js +38 -7
  356. package/dist/eve/distribution/placement/EveDistributionPlacementGeneratorVolume.js.map +1 -0
  357. package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js +16 -4
  358. package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js.map +1 -0
  359. package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js +16 -5
  360. package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js.map +1 -0
  361. package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js +17 -6
  362. package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js.map +1 -0
  363. package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js +16 -5
  364. package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js.map +1 -0
  365. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerBurst.js +21 -3
  366. package/dist/eve/distribution/spawners/EveDistributionSpawnerBurst.js.map +1 -0
  367. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerControllerTrigger.js +27 -3
  368. package/dist/eve/distribution/spawners/EveDistributionSpawnerControllerTrigger.js.map +1 -0
  369. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerInterval.js +19 -3
  370. package/dist/eve/distribution/spawners/EveDistributionSpawnerInterval.js.map +1 -0
  371. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerTriggerPlane.js +24 -5
  372. package/dist/eve/distribution/spawners/EveDistributionSpawnerTriggerPlane.js.map +1 -0
  373. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerTriggerSnake.js +23 -4
  374. package/dist/eve/distribution/spawners/EveDistributionSpawnerTriggerSnake.js.map +1 -0
  375. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerTriggerSphere.js +23 -4
  376. package/dist/eve/distribution/spawners/EveDistributionSpawnerTriggerSphere.js.map +1 -0
  377. package/dist/{generated/eve/effect → eve/effect/lensflare}/EveLensflare.js +81 -9
  378. package/dist/eve/effect/lensflare/EveLensflare.js.map +1 -0
  379. package/dist/eve/effect/multiEffect/EveMultiEffect.js +302 -0
  380. package/dist/eve/effect/multiEffect/EveMultiEffect.js.map +1 -0
  381. package/dist/eve/effect/multiEffect/EveMultiEffectParameter.js +92 -0
  382. package/dist/eve/effect/multiEffect/EveMultiEffectParameter.js.map +1 -0
  383. package/dist/eve/index.js +118 -46
  384. package/dist/eve/index.js.map +1 -1
  385. package/dist/eve/lights/CjsLightData.js +12 -5
  386. package/dist/eve/lights/CjsLightData.js.map +1 -1
  387. package/dist/eve/lights/LightFeatures.js +2 -2
  388. package/dist/eve/lights/LightFeatures.js.map +1 -1
  389. package/dist/eve/lights/Tr2Light.js +130 -4
  390. package/dist/eve/lights/Tr2Light.js.map +1 -1
  391. package/dist/eve/lights/Tr2PointLight.js +9 -4
  392. package/dist/eve/lights/Tr2PointLight.js.map +1 -1
  393. package/dist/eve/lights/Tr2SpotLight.js +9 -4
  394. package/dist/eve/lights/Tr2SpotLight.js.map +1 -1
  395. package/dist/eve/lights/Tr2TexturedPointLight.js +11 -1
  396. package/dist/eve/lights/Tr2TexturedPointLight.js.map +1 -1
  397. package/dist/eve/lights/lightConversion.js +196 -0
  398. package/dist/eve/lights/lightConversion.js.map +1 -0
  399. package/dist/eve/{EveLocator2.js → locator/EveLocator2.js} +23 -4
  400. package/dist/eve/locator/EveLocator2.js.map +1 -0
  401. package/dist/eve/{EveLocatorSets.js → locator/EveLocatorSets.js} +46 -4
  402. package/dist/eve/locator/EveLocatorSets.js.map +1 -0
  403. package/dist/eve/{Locator.js → locator/Locator.js} +10 -5
  404. package/dist/eve/locator/Locator.js.map +1 -0
  405. package/dist/eve/{LocatorData.js → locator/LocatorData.js} +7 -5
  406. package/dist/eve/locator/LocatorData.js.map +1 -0
  407. package/dist/eve/overlays/EveMeshOverlayEffect.js +208 -0
  408. package/dist/eve/overlays/EveMeshOverlayEffect.js.map +1 -0
  409. package/dist/eve/{EveParticleDirectForce.js → particles/force/EveParticleDirectForce.js} +6 -6
  410. package/dist/eve/particles/force/EveParticleDirectForce.js.map +1 -0
  411. package/dist/eve/{EveParticleDragForce.js → particles/force/EveParticleDragForce.js} +6 -6
  412. package/dist/eve/particles/force/EveParticleDragForce.js.map +1 -0
  413. package/dist/eve/{EveParticleSpring.js → particles/force/EveParticleSpring.js} +7 -7
  414. package/dist/eve/particles/force/EveParticleSpring.js.map +1 -0
  415. package/dist/eve/particles/static/EveSceneStaticParticles.js +326 -0
  416. package/dist/eve/particles/static/EveSceneStaticParticles.js.map +1 -0
  417. package/dist/eve/perObjectData/childPerObjectRecords.js +90 -0
  418. package/dist/eve/perObjectData/childPerObjectRecords.js.map +1 -0
  419. package/dist/eve/renderable/stretch/CjsStretchRuntime.js +78 -2
  420. package/dist/eve/renderable/stretch/CjsStretchRuntime.js.map +1 -1
  421. package/dist/eve/renderable/stretch/EveFiringEffectElementContainer.js +88 -4
  422. package/dist/eve/renderable/stretch/EveFiringEffectElementContainer.js.map +1 -1
  423. package/dist/eve/renderable/stretch/EveLocalPositionCurve.js +95 -4
  424. package/dist/eve/renderable/stretch/EveLocalPositionCurve.js.map +1 -1
  425. package/dist/eve/renderable/stretch/EveRemotePositionCurve.js +40 -4
  426. package/dist/eve/renderable/stretch/EveRemotePositionCurve.js.map +1 -1
  427. package/dist/eve/renderable/stretch/EveStretch.js +162 -13
  428. package/dist/eve/renderable/stretch/EveStretch.js.map +1 -1
  429. package/dist/eve/renderable/stretch/EveStretch2.js +125 -16
  430. package/dist/eve/renderable/stretch/EveStretch2.js.map +1 -1
  431. package/dist/eve/renderable/stretch/EveStretch3.js +265 -12
  432. package/dist/eve/renderable/stretch/EveStretch3.js.map +1 -1
  433. package/dist/eve/scene/EveSpaceScene.js +62 -12
  434. package/dist/eve/scene/EveSpaceScene.js.map +1 -1
  435. package/dist/{generated/eve/scene → eve/scene/components}/EveComponentCollection.js +26 -3
  436. package/dist/eve/scene/components/EveComponentCollection.js.map +1 -0
  437. package/dist/{generated/eve/scene → eve/scene/components}/EveComponentRegistry.js +76 -4
  438. package/dist/eve/scene/components/EveComponentRegistry.js.map +1 -0
  439. package/dist/eve/scene/picking/EvePickingContext.js +61 -0
  440. package/dist/eve/scene/picking/EvePickingContext.js.map +1 -0
  441. package/dist/eve/scene/shadows/TriShadowFrustum.js +70 -0
  442. package/dist/eve/scene/shadows/TriShadowFrustum.js.map +1 -0
  443. package/dist/eve/scene/shadows/TriShadowOrthoFrustum.js +129 -0
  444. package/dist/eve/scene/shadows/TriShadowOrthoFrustum.js.map +1 -0
  445. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js +20 -20
  446. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js.map +1 -0
  447. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js +21 -21
  448. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js.map +1 -0
  449. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js +14 -14
  450. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js.map +1 -0
  451. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js +13 -13
  452. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js.map +1 -0
  453. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js +32 -32
  454. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js.map +1 -0
  455. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js +11 -11
  456. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js.map +1 -0
  457. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js +25 -25
  458. package/dist/eve/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js.map +1 -0
  459. package/dist/eve/smartLights/attributeModifiers/enums.js.map +1 -0
  460. package/dist/{generated/eve → eve}/socket/EveSocketParameterBindingBase.js +28 -3
  461. package/dist/eve/socket/EveSocketParameterBindingBase.js.map +1 -0
  462. package/dist/{generated/eve → eve}/socket/EveSocketParameterBool.js +18 -2
  463. package/dist/eve/socket/EveSocketParameterBool.js.map +1 -0
  464. package/dist/{generated/eve → eve}/socket/EveSocketParameterColor.js +23 -7
  465. package/dist/eve/socket/EveSocketParameterColor.js.map +1 -0
  466. package/dist/eve/socket/EveSocketParameterFilePath.js +6 -6
  467. package/dist/eve/socket/EveSocketParameterFilePath.js.map +1 -1
  468. package/dist/{generated/eve → eve}/socket/EveSocketParameterFloat.js +18 -2
  469. package/dist/eve/socket/EveSocketParameterFloat.js.map +1 -0
  470. package/dist/{generated/eve → eve}/socket/EveSocketParameterInt.js +18 -2
  471. package/dist/eve/socket/EveSocketParameterInt.js.map +1 -0
  472. package/dist/{generated/eve → eve}/socket/EveSocketParameterString.js +44 -4
  473. package/dist/eve/socket/EveSocketParameterString.js.map +1 -0
  474. package/dist/{generated/eve → eve}/socket/EveSocketParameterVector2.js +19 -3
  475. package/dist/eve/socket/EveSocketParameterVector2.js.map +1 -0
  476. package/dist/{generated/eve → eve}/socket/EveSocketParameterVector3.js +19 -3
  477. package/dist/eve/socket/EveSocketParameterVector3.js.map +1 -0
  478. package/dist/{generated/eve → eve}/socket/EveSocketParameterVector4.js +19 -3
  479. package/dist/eve/socket/EveSocketParameterVector4.js.map +1 -0
  480. package/dist/eve/spaceObject/EveEffectRoot2.js +69 -33
  481. package/dist/eve/spaceObject/EveEffectRoot2.js.map +1 -1
  482. package/dist/eve/spaceObject/EveMissile.js +55 -7
  483. package/dist/eve/spaceObject/EveMissile.js.map +1 -1
  484. package/dist/eve/spaceObject/EveMissileWarhead.js +112 -16
  485. package/dist/eve/spaceObject/EveMissileWarhead.js.map +1 -1
  486. package/dist/eve/spaceObject/EveMobile.js +107 -3
  487. package/dist/eve/spaceObject/EveMobile.js.map +1 -1
  488. package/dist/eve/spaceObject/EveRootTransform.js +21 -4
  489. package/dist/eve/spaceObject/EveRootTransform.js.map +1 -1
  490. package/dist/{generated/eve → eve}/spaceObject/EveShip2.js +34 -14
  491. package/dist/eve/spaceObject/EveShip2.js.map +1 -0
  492. package/dist/eve/spaceObject/EveSpaceObject2.js +747 -205
  493. package/dist/eve/spaceObject/EveSpaceObject2.js.map +1 -1
  494. package/dist/eve/spaceObject/EveStation2.js +1 -1
  495. package/dist/eve/spaceObject/EveStation2.js.map +1 -1
  496. package/dist/eve/spaceObject/EveTransform.js +124 -24
  497. package/dist/eve/spaceObject/EveTransform.js.map +1 -1
  498. package/dist/eve/spaceObject/IEveSpaceObject2ParentData.js +70 -0
  499. package/dist/eve/spaceObject/IEveSpaceObject2ParentData.js.map +1 -0
  500. package/dist/eve/spaceObject/createEveSpaceObjectMainPerObjectValues.js +19 -16
  501. package/dist/eve/spaceObject/createEveSpaceObjectMainPerObjectValues.js.map +1 -1
  502. package/dist/eve/spaceObject/fxAttributes/EveCameraFxAttributes.js +92 -0
  503. package/dist/eve/spaceObject/fxAttributes/EveCameraFxAttributes.js.map +1 -0
  504. package/dist/eve/spaceObject/fxAttributes/EveSpaceObjectFxAttributes.js +158 -0
  505. package/dist/eve/spaceObject/fxAttributes/EveSpaceObjectFxAttributes.js.map +1 -0
  506. package/dist/eve/spaceObject/planet/EvePlanet.js +63 -0
  507. package/dist/eve/spaceObject/planet/EvePlanet.js.map +1 -0
  508. package/dist/eve/spaceObject/swarm/EveSwarmRenderable.js +225 -0
  509. package/dist/eve/spaceObject/swarm/EveSwarmRenderable.js.map +1 -0
  510. package/dist/eve/spaceObject/swarm/SwarmVehicle.js +4 -4
  511. package/dist/eve/spaceObject/swarm/SwarmVehicle.js.map +1 -1
  512. package/dist/eve/spaceObject/swarm/SwarmVehicleDebug.js +3 -3
  513. package/dist/eve/spaceObject/swarm/SwarmVehicleDebug.js.map +1 -1
  514. package/dist/eve/ui/EveEllipseDefinition.js +18 -3
  515. package/dist/eve/ui/EveEllipseDefinition.js.map +1 -1
  516. package/dist/eve/ui/EveEllipseSet.js +44 -2
  517. package/dist/eve/ui/EveEllipseSet.js.map +1 -1
  518. package/dist/eve/ui/EveSpherePin.js +159 -0
  519. package/dist/eve/ui/EveSpherePin.js.map +1 -0
  520. package/dist/eve/ui/EveSprite2dBracket.js +9 -4
  521. package/dist/eve/ui/EveSprite2dBracket.js.map +1 -1
  522. package/dist/eve/ui/EveUiObject.js +12 -1
  523. package/dist/eve/ui/EveUiObject.js.map +1 -1
  524. package/dist/{generated/eve/ui → eve/ui/lines}/EveLineSet.js +71 -10
  525. package/dist/eve/ui/lines/EveLineSet.js.map +1 -0
  526. package/dist/eve/ui/tacticalOverlay/EveTacticalOverlayTrackObject.js +78 -0
  527. package/dist/eve/ui/tacticalOverlay/EveTacticalOverlayTrackObject.js.map +1 -0
  528. package/dist/{generated/eve/ui → eve/ui/tacticalOverlay}/EveTacticalTrails.js +24 -4
  529. package/dist/eve/ui/tacticalOverlay/EveTacticalTrails.js.map +1 -0
  530. package/dist/eve/virtualCamera/EveVirtualCamera.js +158 -6
  531. package/dist/eve/virtualCamera/EveVirtualCamera.js.map +1 -1
  532. package/dist/eve/virtualCamera/EveVirtualCameraSystem.js +67 -2
  533. package/dist/eve/virtualCamera/EveVirtualCameraSystem.js.map +1 -1
  534. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatAdd.js +18 -1
  535. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatAdd.js.map +1 -1
  536. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatBase.js +21 -2
  537. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatBase.js.map +1 -1
  538. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatDamping.js +18 -1
  539. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatDamping.js.map +1 -1
  540. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatNoise.js +30 -1
  541. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatNoise.js.map +1 -1
  542. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatSet.js +16 -1
  543. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatSet.js.map +1 -1
  544. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Base.js +42 -4
  545. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Base.js.map +1 -1
  546. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Damping.js +19 -2
  547. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Damping.js.map +1 -1
  548. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Inertia.js +20 -2
  549. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Inertia.js.map +1 -1
  550. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveBetween.js +22 -2
  551. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveBetween.js.map +1 -1
  552. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveForward.js +22 -2
  553. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveForward.js.map +1 -1
  554. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveRight.js +13 -2
  555. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveRight.js.map +1 -1
  556. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveUp.js +16 -2
  557. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveUp.js.map +1 -1
  558. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Offset.js +18 -2
  559. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Offset.js.map +1 -1
  560. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Orbit.js +23 -3
  561. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Orbit.js.map +1 -1
  562. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Shake.js +38 -2
  563. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Shake.js.map +1 -1
  564. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionBase.js +38 -2
  565. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionBase.js.map +1 -1
  566. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionCut.js +12 -1
  567. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionCut.js.map +1 -1
  568. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionLerp.js +39 -2
  569. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionLerp.js.map +1 -1
  570. package/dist/eve/volume/EveBoxVolume.js +63 -4
  571. package/dist/eve/volume/EveBoxVolume.js.map +1 -1
  572. package/dist/eve/volume/EveEllipsoidVolume.js +58 -4
  573. package/dist/eve/volume/EveEllipsoidVolume.js.map +1 -1
  574. package/dist/eve/volume/EveSphereVolume.js +37 -3
  575. package/dist/eve/volume/EveSphereVolume.js.map +1 -1
  576. package/dist/generated/curves/Tr2VectorFunctionModifier.js +3 -3
  577. package/dist/generated/curves/Tr2VectorFunctionModifier.js.map +1 -1
  578. package/dist/generated/eve/child/EveChildCloud.js +5 -5
  579. package/dist/generated/eve/child/EveChildCloud.js.map +1 -1
  580. package/dist/generated/eve/child/EveChildCloud2.js +759 -48
  581. package/dist/generated/eve/child/EveChildCloud2.js.map +1 -1
  582. package/dist/generated/eve/child/EveChildExplosion.js +4 -4
  583. package/dist/generated/eve/child/EveChildExplosion.js.map +1 -1
  584. package/dist/generated/eve/child/EveChildInstanceContainer.js +1 -1
  585. package/dist/generated/eve/child/EveChildInstanceContainer.js.map +1 -1
  586. package/dist/generated/eve/child/EveChildInstanceMeshRenderer.js +3 -3
  587. package/dist/generated/eve/child/EveChildInstanceMeshRenderer.js.map +1 -1
  588. package/dist/generated/eve/child/EveChildLineSet.js +2 -2
  589. package/dist/generated/eve/child/EveChildLineSet.js.map +1 -1
  590. package/dist/generated/eve/child/EveChildParticleSphere.js +3 -3
  591. package/dist/generated/eve/child/EveChildParticleSphere.js.map +1 -1
  592. package/dist/generated/eve/child/EveChildParticleSystem.js +16 -10
  593. package/dist/generated/eve/child/EveChildParticleSystem.js.map +1 -1
  594. package/dist/generated/eve/child/EveChildPlug.js +1 -1
  595. package/dist/generated/eve/child/EveChildPlug.js.map +1 -1
  596. package/dist/generated/eve/child/EveChildPostProcessVolume.js +4 -4
  597. package/dist/generated/eve/child/EveChildPostProcessVolume.js.map +1 -1
  598. package/dist/generated/eve/child/EveChildQuad.js +5 -5
  599. package/dist/generated/eve/child/EveChildQuad.js.map +1 -1
  600. package/dist/generated/eve/child/EveChildRef.js +1 -1
  601. package/dist/generated/eve/child/EveChildRef.js.map +1 -1
  602. package/dist/generated/eve/child/EveChildSocket.js +2 -2
  603. package/dist/generated/eve/child/EveChildSocket.js.map +1 -1
  604. package/dist/generated/eve/child/EveCloudEditableVolume.js +2 -2
  605. package/dist/generated/eve/child/EveCloudEditableVolume.js.map +1 -1
  606. package/dist/generated/eve/child/EveCloudVolumeTextureParameter.js +2 -2
  607. package/dist/generated/eve/child/EveCloudVolumeTextureParameter.js.map +1 -1
  608. package/dist/generated/eve/child/IEveLightingOverride.js +2 -2
  609. package/dist/generated/eve/child/IEveLightingOverride.js.map +1 -1
  610. package/dist/generated/eve/child/behaviors/Allign.js +3 -3
  611. package/dist/generated/eve/child/behaviors/Allign.js.map +1 -1
  612. package/dist/generated/eve/child/behaviors/ApproachGroup.js +3 -3
  613. package/dist/generated/eve/child/behaviors/ApproachGroup.js.map +1 -1
  614. package/dist/generated/eve/child/behaviors/BackAndForth.js +18 -21
  615. package/dist/generated/eve/child/behaviors/BackAndForth.js.map +1 -1
  616. package/dist/generated/eve/child/behaviors/BehaviorGroup.js +7 -7
  617. package/dist/generated/eve/child/behaviors/BehaviorGroup.js.map +1 -1
  618. package/dist/generated/eve/child/behaviors/BehaviorGroupBooster.js +5 -5
  619. package/dist/generated/eve/child/behaviors/BehaviorGroupBooster.js.map +1 -1
  620. package/dist/generated/eve/child/behaviors/DroneAvoidance.js +3 -3
  621. package/dist/generated/eve/child/behaviors/DroneAvoidance.js.map +1 -1
  622. package/dist/generated/eve/child/behaviors/EveKDdroneManagementTree.js +29 -32
  623. package/dist/generated/eve/child/behaviors/EveKDdroneManagementTree.js.map +1 -1
  624. package/dist/generated/eve/child/behaviors/FollowASpline.js +16 -20
  625. package/dist/generated/eve/child/behaviors/FollowASpline.js.map +1 -1
  626. package/dist/generated/eve/child/behaviors/Formation.js +4 -4
  627. package/dist/generated/eve/child/behaviors/Formation.js.map +1 -1
  628. package/dist/generated/eve/child/behaviors/Inertia.js +4 -4
  629. package/dist/generated/eve/child/behaviors/Inertia.js.map +1 -1
  630. package/dist/generated/eve/child/behaviors/PlayFX.js +16 -16
  631. package/dist/generated/eve/child/behaviors/PlayFX.js.map +1 -1
  632. package/dist/generated/eve/child/behaviors/SeekTarget.js +4 -4
  633. package/dist/generated/eve/child/behaviors/SeekTarget.js.map +1 -1
  634. package/dist/generated/eve/child/behaviors/SpawnDrones.js +4 -4
  635. package/dist/generated/eve/child/behaviors/SpawnDrones.js.map +1 -1
  636. package/dist/generated/eve/child/behaviors/index.js +0 -6
  637. package/dist/generated/eve/child/behaviors/index.js.map +1 -1
  638. package/dist/generated/eve/child/index.js +0 -23
  639. package/dist/generated/eve/child/index.js.map +1 -1
  640. package/dist/generated/eve/child/lineSetPaths/EveLineChildContainer.js +1 -1
  641. package/dist/generated/eve/child/lineSetPaths/EveLineChildContainer.js.map +1 -1
  642. package/dist/generated/eve/effect/EveOccluder.js +2 -2
  643. package/dist/generated/eve/effect/EveOccluder.js.map +1 -1
  644. package/dist/generated/eve/effect/EveStarfield.js +2 -2
  645. package/dist/generated/eve/effect/EveStarfield.js.map +1 -1
  646. package/dist/generated/eve/effect/index.js +0 -3
  647. package/dist/generated/eve/effect/index.js.map +1 -1
  648. package/dist/generated/eve/index.js +0 -88
  649. package/dist/generated/eve/index.js.map +1 -1
  650. package/dist/generated/eve/lights/Tr2FactionLight.js +4 -4
  651. package/dist/generated/eve/lights/Tr2FactionLight.js.map +1 -1
  652. package/dist/generated/eve/scene/EvePendingPickingReadback.js +2 -2
  653. package/dist/generated/eve/scene/EvePendingPickingReadback.js.map +1 -1
  654. package/dist/generated/eve/scene/EveSpaceSceneRenderDriver.js +3 -3
  655. package/dist/generated/eve/scene/EveSpaceSceneRenderDriver.js.map +1 -1
  656. package/dist/generated/eve/scene/index.js +0 -6
  657. package/dist/generated/eve/scene/index.js.map +1 -1
  658. package/dist/generated/eve/smartLights/EveChildSmartLightSet.js +2 -2
  659. package/dist/generated/eve/smartLights/EveChildSmartLightSet.js.map +1 -1
  660. package/dist/generated/eve/smartLights/EveSmartLightBaseGroup.js +3 -3
  661. package/dist/generated/eve/smartLights/EveSmartLightBaseGroup.js.map +1 -1
  662. package/dist/generated/eve/smartLights/EveSmartLightColorShareGroup.js +23 -23
  663. package/dist/generated/eve/smartLights/EveSmartLightColorShareGroup.js.map +1 -1
  664. package/dist/generated/eve/smartLights/EveSmartLightMesh.js +1 -1
  665. package/dist/generated/eve/smartLights/EveSmartLightMesh.js.map +1 -1
  666. package/dist/generated/eve/smartLights/EveSmartLightPointLight.js +6 -6
  667. package/dist/generated/eve/smartLights/EveSmartLightPointLight.js.map +1 -1
  668. package/dist/generated/eve/smartLights/EveSmartLightQuad.js +6 -6
  669. package/dist/generated/eve/smartLights/EveSmartLightQuad.js.map +1 -1
  670. package/dist/generated/eve/smartLights/EveSmartLightSpotLight.js +1 -1
  671. package/dist/generated/eve/smartLights/EveSmartLightSpotLight.js.map +1 -1
  672. package/dist/generated/eve/smartLights/index.js +0 -8
  673. package/dist/generated/eve/smartLights/index.js.map +1 -1
  674. package/dist/generated/eve/spaceObject/index.js +0 -4
  675. package/dist/generated/eve/spaceObject/index.js.map +1 -1
  676. package/dist/generated/eve/spaceObject/swarm/EveSwarm.js +194 -173
  677. package/dist/generated/eve/spaceObject/swarm/EveSwarm.js.map +1 -1
  678. package/dist/generated/eve/spaceObject/swarm/index.js +0 -1
  679. package/dist/generated/eve/spaceObject/swarm/index.js.map +1 -1
  680. package/dist/generated/eve/ui/EveConnector.js +4 -4
  681. package/dist/generated/eve/ui/EveConnector.js.map +1 -1
  682. package/dist/generated/eve/ui/EveCurveLineSet.js +2 -2
  683. package/dist/generated/eve/ui/EveCurveLineSet.js.map +1 -1
  684. package/dist/generated/eve/ui/EveLineContainer.js +2 -2
  685. package/dist/generated/eve/ui/EveLineContainer.js.map +1 -1
  686. package/dist/generated/eve/ui/EveProjectBracket.js +4 -4
  687. package/dist/generated/eve/ui/EveProjectBracket.js.map +1 -1
  688. package/dist/generated/eve/ui/EveSprite2dBracketRenderer.js +2 -2
  689. package/dist/generated/eve/ui/EveSprite2dBracketRenderer.js.map +1 -1
  690. package/dist/generated/eve/ui/EveTacticalOverlay.js +4 -4
  691. package/dist/generated/eve/ui/EveTacticalOverlay.js.map +1 -1
  692. package/dist/generated/eve/ui/index.js +0 -4
  693. package/dist/generated/eve/ui/index.js.map +1 -1
  694. package/dist/generated/font/Tr2FontManager.js +2 -2
  695. package/dist/generated/font/Tr2FontManager.js.map +1 -1
  696. package/dist/generated/font/Tr2FontMeasurer.js +2 -2
  697. package/dist/generated/font/Tr2FontMeasurer.js.map +1 -1
  698. package/dist/generated/font/Tr2SBitWrapper.js +2 -2
  699. package/dist/generated/font/Tr2SBitWrapper.js.map +1 -1
  700. package/dist/generated/index.js +0 -93
  701. package/dist/generated/index.js.map +1 -1
  702. package/dist/generated/particle/ITr2GenericEmitter.js +4 -4
  703. package/dist/generated/particle/ITr2GenericEmitter.js.map +1 -1
  704. package/dist/generated/particle/Tr2CapsuleShapeAttributeGenerator.js +4 -4
  705. package/dist/generated/particle/Tr2CapsuleShapeAttributeGenerator.js.map +1 -1
  706. package/dist/generated/particle/Tr2ConsecutiveIntegerAttributeGenerator.js +3 -3
  707. package/dist/generated/particle/Tr2ConsecutiveIntegerAttributeGenerator.js.map +1 -1
  708. package/dist/generated/particle/Tr2DynamicEmitter.js +2 -2
  709. package/dist/generated/particle/Tr2DynamicEmitter.js.map +1 -1
  710. package/dist/generated/particle/Tr2ElementBlendConstraint.js +3 -3
  711. package/dist/generated/particle/Tr2ElementBlendConstraint.js.map +1 -1
  712. package/dist/generated/particle/Tr2ForceSphereVolume.js +3 -3
  713. package/dist/generated/particle/Tr2ForceSphereVolume.js.map +1 -1
  714. package/dist/generated/particle/Tr2GpuParticleSystem.js +2 -2
  715. package/dist/generated/particle/Tr2GpuParticleSystem.js.map +1 -1
  716. package/dist/generated/particle/Tr2ParticleSystem.js +3 -3
  717. package/dist/generated/particle/Tr2ParticleSystem.js.map +1 -1
  718. package/dist/generated/particle/Tr2ParticleTurbulenceForce.js +5 -5
  719. package/dist/generated/particle/Tr2ParticleTurbulenceForce.js.map +1 -1
  720. package/dist/generated/particle/Tr2PlaneConstraint.js +4 -4
  721. package/dist/generated/particle/Tr2PlaneConstraint.js.map +1 -1
  722. package/dist/generated/particle/Tr2RandomDirectionAttributeGenerator.js +2 -2
  723. package/dist/generated/particle/Tr2RandomDirectionAttributeGenerator.js.map +1 -1
  724. package/dist/generated/particle/Tr2RandomIntegerAttributeGenerator.js +3 -3
  725. package/dist/generated/particle/Tr2RandomIntegerAttributeGenerator.js.map +1 -1
  726. package/dist/generated/particle/Tr2RandomUniformAttributeGenerator.js +3 -3
  727. package/dist/generated/particle/Tr2RandomUniformAttributeGenerator.js.map +1 -1
  728. package/dist/generated/particle/Tr2SphereConstraint.js +4 -4
  729. package/dist/generated/particle/Tr2SphereConstraint.js.map +1 -1
  730. package/dist/generated/particle/Tr2SphereShapeAttributeGenerator.js +4 -4
  731. package/dist/generated/particle/Tr2SphereShapeAttributeGenerator.js.map +1 -1
  732. package/dist/generated/particle/Tr2StaticEmitter.js +2 -2
  733. package/dist/generated/particle/Tr2StaticEmitter.js.map +1 -1
  734. package/dist/generated/postProcess/Tr2PostProcessRenderer.js +2 -2
  735. package/dist/generated/postProcess/Tr2PostProcessRenderer.js.map +1 -1
  736. package/dist/generated/raytracing/Tr2RaytracingGeometry.js +3 -3
  737. package/dist/generated/raytracing/Tr2RaytracingGeometry.js.map +1 -1
  738. package/dist/generated/raytracing/Tr2RaytracingManager.js +2 -2
  739. package/dist/generated/raytracing/Tr2RaytracingManager.js.map +1 -1
  740. package/dist/generated/raytracing/Tr2RaytracingMesh.js +2 -2
  741. package/dist/generated/raytracing/Tr2RaytracingMesh.js.map +1 -1
  742. package/dist/generated/raytracing/Tr2RaytracingPipelineStateManager.js +2 -2
  743. package/dist/generated/raytracing/Tr2RaytracingPipelineStateManager.js.map +1 -1
  744. package/dist/generated/renderJob/Tr2RenderNodeEffect.js +2 -2
  745. package/dist/generated/renderJob/Tr2RenderNodeEffect.js.map +1 -1
  746. package/dist/generated/renderJob/Tr2RenderNodeSprite2dScene.js +2 -2
  747. package/dist/generated/renderJob/Tr2RenderNodeSprite2dScene.js.map +1 -1
  748. package/dist/generated/renderJob/Tr2StepExecuteRenderNode.js +1 -1
  749. package/dist/generated/renderJob/Tr2StepExecuteRenderNode.js.map +1 -1
  750. package/dist/generated/renderJob/TriStepClearUav.js +2 -2
  751. package/dist/generated/renderJob/TriStepClearUav.js.map +1 -1
  752. package/dist/generated/renderJob/TriStepFilterVisibilityResults.js +1 -1
  753. package/dist/generated/renderJob/TriStepFilterVisibilityResults.js.map +1 -1
  754. package/dist/generated/renderJob/TriStepPythonCB.js +1 -1
  755. package/dist/generated/renderJob/TriStepPythonCB.js.map +1 -1
  756. package/dist/generated/renderJob/TriStepRemoteUpdate.js +1 -1
  757. package/dist/generated/renderJob/TriStepRemoteUpdate.js.map +1 -1
  758. package/dist/generated/renderJob/TriStepRenderAtlas.js +3 -3
  759. package/dist/generated/renderJob/TriStepRenderAtlas.js.map +1 -1
  760. package/dist/generated/renderJob/TriStepRenderDebug.js +2 -2
  761. package/dist/generated/renderJob/TriStepRenderDebug.js.map +1 -1
  762. package/dist/generated/renderJob/TriStepRenderEffect.js +2 -2
  763. package/dist/generated/renderJob/TriStepRenderEffect.js.map +1 -1
  764. package/dist/generated/renderJob/TriStepRenderFps.js +1 -1
  765. package/dist/generated/renderJob/TriStepRenderFps.js.map +1 -1
  766. package/dist/generated/renderJob/TriStepRenderLineGraph.js +1 -1
  767. package/dist/generated/renderJob/TriStepRenderLineGraph.js.map +1 -1
  768. package/dist/generated/renderJob/TriStepRenderObject.js +1 -1
  769. package/dist/generated/renderJob/TriStepRenderObject.js.map +1 -1
  770. package/dist/generated/renderJob/TriStepRenderPass.js +1 -1
  771. package/dist/generated/renderJob/TriStepRenderPass.js.map +1 -1
  772. package/dist/generated/renderJob/TriStepRenderScene.js +1 -1
  773. package/dist/generated/renderJob/TriStepRenderScene.js.map +1 -1
  774. package/dist/generated/renderJob/TriStepRenderSceneDebug.js +1 -1
  775. package/dist/generated/renderJob/TriStepRenderSceneDebug.js.map +1 -1
  776. package/dist/generated/renderJob/TriStepRenderTexture.js +2 -2
  777. package/dist/generated/renderJob/TriStepRenderTexture.js.map +1 -1
  778. package/dist/generated/renderJob/TriStepRunComputeShader.js +1 -1
  779. package/dist/generated/renderJob/TriStepRunComputeShader.js.map +1 -1
  780. package/dist/generated/renderJob/TriStepSetDebugRenderer.js +1 -1
  781. package/dist/generated/renderJob/TriStepSetDebugRenderer.js.map +1 -1
  782. package/dist/generated/renderJob/TriStepSetUpscalingContextID.js +1 -1
  783. package/dist/generated/renderJob/TriStepSetUpscalingContextID.js.map +1 -1
  784. package/dist/generated/renderJob/TriStepSetVariableStore.js +1 -1
  785. package/dist/generated/renderJob/TriStepSetVariableStore.js.map +1 -1
  786. package/dist/generated/renderJob/TriStepTestBlocking.js +1 -1
  787. package/dist/generated/renderJob/TriStepTestBlocking.js.map +1 -1
  788. package/dist/generated/renderJob/TriStepToggleCubemap.js +1 -1
  789. package/dist/generated/renderJob/TriStepToggleCubemap.js.map +1 -1
  790. package/dist/generated/renderJob/TriStepUpdate.js +1 -1
  791. package/dist/generated/renderJob/TriStepUpdate.js.map +1 -1
  792. package/dist/generated/sprite2d/Tr2Sprite2d.js +1 -1
  793. package/dist/generated/sprite2d/Tr2Sprite2d.js.map +1 -1
  794. package/dist/generated/sprite2d/Tr2Sprite2dArc.js +2 -2
  795. package/dist/generated/sprite2d/Tr2Sprite2dArc.js.map +1 -1
  796. package/dist/generated/sprite2d/Tr2Sprite2dContainer.js +1 -1
  797. package/dist/generated/sprite2d/Tr2Sprite2dContainer.js.map +1 -1
  798. package/dist/generated/sprite2d/Tr2Sprite2dContainerBase.js +1 -1
  799. package/dist/generated/sprite2d/Tr2Sprite2dContainerBase.js.map +1 -1
  800. package/dist/generated/sprite2d/Tr2Sprite2dDisplayList.js +4 -4
  801. package/dist/generated/sprite2d/Tr2Sprite2dDisplayList.js.map +1 -1
  802. package/dist/generated/sprite2d/Tr2Sprite2dFrame.js +1 -1
  803. package/dist/generated/sprite2d/Tr2Sprite2dFrame.js.map +1 -1
  804. package/dist/generated/sprite2d/Tr2Sprite2dLayer.js +2 -2
  805. package/dist/generated/sprite2d/Tr2Sprite2dLayer.js.map +1 -1
  806. package/dist/generated/sprite2d/Tr2Sprite2dLine.js +3 -3
  807. package/dist/generated/sprite2d/Tr2Sprite2dLine.js.map +1 -1
  808. package/dist/generated/sprite2d/Tr2Sprite2dLineTrace.js +3 -3
  809. package/dist/generated/sprite2d/Tr2Sprite2dLineTrace.js.map +1 -1
  810. package/dist/generated/sprite2d/Tr2Sprite2dPickingMask.js +2 -2
  811. package/dist/generated/sprite2d/Tr2Sprite2dPickingMask.js.map +1 -1
  812. package/dist/generated/sprite2d/Tr2Sprite2dPolygon.js +4 -4
  813. package/dist/generated/sprite2d/Tr2Sprite2dPolygon.js.map +1 -1
  814. package/dist/generated/sprite2d/Tr2Sprite2dRenderJob.js +1 -1
  815. package/dist/generated/sprite2d/Tr2Sprite2dRenderJob.js.map +1 -1
  816. package/dist/generated/sprite2d/Tr2Sprite2dScene.js +6 -6
  817. package/dist/generated/sprite2d/Tr2Sprite2dScene.js.map +1 -1
  818. package/dist/generated/sprite2d/Tr2Sprite2dStretch.js +1 -1
  819. package/dist/generated/sprite2d/Tr2Sprite2dStretch.js.map +1 -1
  820. package/dist/generated/sprite2d/Tr2Sprite2dStretchVertical.js +1 -1
  821. package/dist/generated/sprite2d/Tr2Sprite2dStretchVertical.js.map +1 -1
  822. package/dist/generated/sprite2d/Tr2Sprite2dTextObject.js +1 -1
  823. package/dist/generated/sprite2d/Tr2Sprite2dTextObject.js.map +1 -1
  824. package/dist/generated/sprite2d/Tr2Sprite2dTexture.js +3 -3
  825. package/dist/generated/sprite2d/Tr2Sprite2dTexture.js.map +1 -1
  826. package/dist/generated/sprite2d/Tr2Sprite2dTransform.js +2 -2
  827. package/dist/generated/sprite2d/Tr2Sprite2dTransform.js.map +1 -1
  828. package/dist/generated/sprite2d/Tr2Sprite2dVertex.js +2 -2
  829. package/dist/generated/sprite2d/Tr2Sprite2dVertex.js.map +1 -1
  830. package/dist/generated/sprite2d/Tr2SpriteObject.js +3 -3
  831. package/dist/generated/sprite2d/Tr2SpriteObject.js.map +1 -1
  832. package/dist/generated/sprite2d/Tr2SpriteObjectBase.js +2 -2
  833. package/dist/generated/sprite2d/Tr2SpriteObjectBase.js.map +1 -1
  834. package/dist/generated/sprite2d/Tr2TexturedSpriteObject.js +1 -1
  835. package/dist/generated/sprite2d/Tr2TexturedSpriteObject.js.map +1 -1
  836. package/dist/generated/trinityCore/ITr2FroxelFogSettings.js +2 -2
  837. package/dist/generated/trinityCore/ITr2FroxelFogSettings.js.map +1 -1
  838. package/dist/generated/trinityCore/ITr2ImpostorSource.js +3 -3
  839. package/dist/generated/trinityCore/ITr2ImpostorSource.js.map +1 -1
  840. package/dist/generated/trinityCore/ITr2InstanceData.js +2 -2
  841. package/dist/generated/trinityCore/ITr2InstanceData.js.map +1 -1
  842. package/dist/generated/trinityCore/Tr2AtlasTexture.js +2 -2
  843. package/dist/generated/trinityCore/Tr2AtlasTexture.js.map +1 -1
  844. package/dist/generated/trinityCore/Tr2BoundingLineSet.js +2 -2
  845. package/dist/generated/trinityCore/Tr2BoundingLineSet.js.map +1 -1
  846. package/dist/generated/trinityCore/Tr2CurveLineSet.js +5 -5
  847. package/dist/generated/trinityCore/Tr2CurveLineSet.js.map +1 -1
  848. package/dist/generated/trinityCore/Tr2DebugRenderer.js +4 -4
  849. package/dist/generated/trinityCore/Tr2DebugRenderer.js.map +1 -1
  850. package/dist/generated/trinityCore/Tr2Denoiser.js +2 -2
  851. package/dist/generated/trinityCore/Tr2Denoiser.js.map +1 -1
  852. package/dist/generated/trinityCore/Tr2GpuProfiler.js +2 -2
  853. package/dist/generated/trinityCore/Tr2GpuProfiler.js.map +1 -1
  854. package/dist/generated/trinityCore/Tr2GpuStructuredBuffer.js +2 -2
  855. package/dist/generated/trinityCore/Tr2GpuStructuredBuffer.js.map +1 -1
  856. package/dist/generated/trinityCore/Tr2GrannyPrimitiveSet.js +1 -1
  857. package/dist/generated/trinityCore/Tr2GrannyPrimitiveSet.js.map +1 -1
  858. package/dist/generated/trinityCore/Tr2HostBitmap.js +3 -3
  859. package/dist/generated/trinityCore/Tr2HostBitmap.js.map +1 -1
  860. package/dist/generated/trinityCore/Tr2ImpostorManager.js +2 -2
  861. package/dist/generated/trinityCore/Tr2ImpostorManager.js.map +1 -1
  862. package/dist/generated/trinityCore/Tr2KelvinColor.js +2 -2
  863. package/dist/generated/trinityCore/Tr2KelvinColor.js.map +1 -1
  864. package/dist/generated/trinityCore/Tr2LineGraph.js +3 -3
  865. package/dist/generated/trinityCore/Tr2LineGraph.js.map +1 -1
  866. package/dist/generated/trinityCore/Tr2LineSet.js +3 -3
  867. package/dist/generated/trinityCore/Tr2LineSet.js.map +1 -1
  868. package/dist/generated/trinityCore/Tr2ManipulationTool.js +5 -5
  869. package/dist/generated/trinityCore/Tr2ManipulationTool.js.map +1 -1
  870. package/dist/generated/trinityCore/Tr2PrimitiveScene.js +2 -2
  871. package/dist/generated/trinityCore/Tr2PrimitiveScene.js.map +1 -1
  872. package/dist/generated/trinityCore/Tr2PrimitiveSet.js +4 -4
  873. package/dist/generated/trinityCore/Tr2PrimitiveSet.js.map +1 -1
  874. package/dist/generated/trinityCore/Tr2PrimitiveText.js +3 -3
  875. package/dist/generated/trinityCore/Tr2PrimitiveText.js.map +1 -1
  876. package/dist/generated/trinityCore/Tr2ProjectBoundingBoxBracket.js +2 -2
  877. package/dist/generated/trinityCore/Tr2ProjectBoundingBoxBracket.js.map +1 -1
  878. package/dist/generated/trinityCore/Tr2QuadRenderer.js +2 -2
  879. package/dist/generated/trinityCore/Tr2QuadRenderer.js.map +1 -1
  880. package/dist/generated/trinityCore/Tr2ReflectionProbe.js +4 -4
  881. package/dist/generated/trinityCore/Tr2ReflectionProbe.js.map +1 -1
  882. package/dist/generated/trinityCore/Tr2RingBuffer.js +2 -2
  883. package/dist/generated/trinityCore/Tr2RingBuffer.js.map +1 -1
  884. package/dist/generated/trinityCore/Tr2RotationTool.js +2 -2
  885. package/dist/generated/trinityCore/Tr2RotationTool.js.map +1 -1
  886. package/dist/generated/trinityCore/Tr2SSAO.js +2 -2
  887. package/dist/generated/trinityCore/Tr2SSAO.js.map +1 -1
  888. package/dist/generated/trinityCore/Tr2SSSSS.js +3 -3
  889. package/dist/generated/trinityCore/Tr2SSSSS.js.map +1 -1
  890. package/dist/generated/trinityCore/Tr2ScalingTool.js +3 -3
  891. package/dist/generated/trinityCore/Tr2ScalingTool.js.map +1 -1
  892. package/dist/generated/trinityCore/Tr2ShadowMap.js +2 -2
  893. package/dist/generated/trinityCore/Tr2ShadowMap.js.map +1 -1
  894. package/dist/generated/trinityCore/Tr2SolidSet.js +3 -3
  895. package/dist/generated/trinityCore/Tr2SolidSet.js.map +1 -1
  896. package/dist/generated/trinityCore/Tr2StreamingBitmapSaver.js +3 -3
  897. package/dist/generated/trinityCore/Tr2StreamingBitmapSaver.js.map +1 -1
  898. package/dist/generated/trinityCore/Tr2TextureAnimation.js +2 -2
  899. package/dist/generated/trinityCore/Tr2TextureAnimation.js.map +1 -1
  900. package/dist/generated/trinityCore/Tr2TextureArray.js +3 -3
  901. package/dist/generated/trinityCore/Tr2TextureArray.js.map +1 -1
  902. package/dist/generated/trinityCore/Tr2TextureAtlas.js +3 -3
  903. package/dist/generated/trinityCore/Tr2TextureAtlas.js.map +1 -1
  904. package/dist/generated/trinityCore/Tr2TextureAtlasMan.js +2 -2
  905. package/dist/generated/trinityCore/Tr2TextureAtlasMan.js.map +1 -1
  906. package/dist/generated/trinityCore/Tr2TextureReference.js +2 -2
  907. package/dist/generated/trinityCore/Tr2TextureReference.js.map +1 -1
  908. package/dist/generated/trinityCore/Tr2Transform.js +5 -5
  909. package/dist/generated/trinityCore/Tr2Transform.js.map +1 -1
  910. package/dist/generated/trinityCore/Tr2TransientTextureReference.js +2 -2
  911. package/dist/generated/trinityCore/Tr2TransientTextureReference.js.map +1 -1
  912. package/dist/generated/trinityCore/Tr2TranslationTool.js +2 -2
  913. package/dist/generated/trinityCore/Tr2TranslationTool.js.map +1 -1
  914. package/dist/generated/trinityCore/Tr2VolumetricsRenderer.js +2 -2
  915. package/dist/generated/trinityCore/Tr2VolumetricsRenderer.js.map +1 -1
  916. package/dist/generated/trinityCore/TriLineSet.js +4 -4
  917. package/dist/generated/trinityCore/TriLineSet.js.map +1 -1
  918. package/dist/generated/trinityCore/TriRigidOrientation.js +4 -4
  919. package/dist/generated/trinityCore/TriRigidOrientation.js.map +1 -1
  920. package/dist/generated/trinityCore/index.js +0 -5
  921. package/dist/generated/trinityCore/index.js.map +1 -1
  922. package/dist/generated/utilities/Float4x3.js +2 -2
  923. package/dist/generated/utilities/Float4x3.js.map +1 -1
  924. package/dist/generated/utilities/Obb.js +3 -3
  925. package/dist/generated/utilities/Obb.js.map +1 -1
  926. package/dist/generated/utilities/Tr2MaterialBoundsAdjustment.js +2 -2
  927. package/dist/generated/utilities/Tr2MaterialBoundsAdjustment.js.map +1 -1
  928. package/dist/index.js +131 -152
  929. package/dist/index.js.map +1 -1
  930. package/dist/particle/Tr2GpuSharedEmitter.js +43 -4
  931. package/dist/particle/Tr2GpuSharedEmitter.js.map +1 -1
  932. package/dist/particle/Tr2GpuUniqueEmitter.js +7 -2
  933. package/dist/particle/Tr2GpuUniqueEmitter.js.map +1 -1
  934. package/dist/particle/Tr2ParticleAttractorForce.js +13 -3
  935. package/dist/particle/Tr2ParticleAttractorForce.js.map +1 -1
  936. package/dist/particle/Tr2ParticleDirectForce.js +10 -3
  937. package/dist/particle/Tr2ParticleDirectForce.js.map +1 -1
  938. package/dist/particle/Tr2ParticleDragForce.js +10 -3
  939. package/dist/particle/Tr2ParticleDragForce.js.map +1 -1
  940. package/dist/particle/Tr2ParticleElementData.js +2 -2
  941. package/dist/particle/Tr2ParticleElementData.js.map +1 -1
  942. package/dist/particle/Tr2ParticleElementDeclaration.js +7 -2
  943. package/dist/particle/Tr2ParticleElementDeclaration.js.map +1 -1
  944. package/dist/particle/Tr2ParticleElementDeclarationName.js +2 -2
  945. package/dist/particle/Tr2ParticleElementDeclarationName.js.map +1 -1
  946. package/dist/particle/Tr2ParticleFluidDragForce.js +13 -3
  947. package/dist/particle/Tr2ParticleFluidDragForce.js.map +1 -1
  948. package/dist/particle/Tr2ParticleSpring.js +13 -3
  949. package/dist/particle/Tr2ParticleSpring.js.map +1 -1
  950. package/dist/particle/Tr2ParticleVortexForce.js +13 -3
  951. package/dist/particle/Tr2ParticleVortexForce.js.map +1 -1
  952. package/dist/particle/particleElementBinding.js +12 -0
  953. package/dist/particle/particleElementBinding.js.map +1 -1
  954. package/dist/postProcess/BlurContext.js +2 -2
  955. package/dist/postProcess/BlurContext.js.map +1 -1
  956. package/dist/postProcess/GaussianData.js +4 -4
  957. package/dist/postProcess/GaussianData.js.map +1 -1
  958. package/dist/postProcess/Tr2PPBloomEffect.js +8 -2
  959. package/dist/postProcess/Tr2PPBloomEffect.js.map +1 -1
  960. package/dist/postProcess/Tr2PPColorCorrectionEffect.js +2 -2
  961. package/dist/postProcess/Tr2PPColorCorrectionEffect.js.map +1 -1
  962. package/dist/postProcess/Tr2PPDepthOfFieldEffect.js +17 -1
  963. package/dist/postProcess/Tr2PPDepthOfFieldEffect.js.map +1 -1
  964. package/dist/postProcess/Tr2PPDesaturateEffect.js +1 -1
  965. package/dist/postProcess/Tr2PPDesaturateEffect.js.map +1 -1
  966. package/dist/postProcess/Tr2PPDynamicExposureEffect.js +1 -1
  967. package/dist/postProcess/Tr2PPDynamicExposureEffect.js.map +1 -1
  968. package/dist/postProcess/Tr2PPEffect.js +2 -2
  969. package/dist/postProcess/Tr2PPEffect.js.map +1 -1
  970. package/dist/postProcess/Tr2PPFadeEffect.js +2 -2
  971. package/dist/postProcess/Tr2PPFadeEffect.js.map +1 -1
  972. package/dist/postProcess/Tr2PPFilmGrainEffect.js +1 -1
  973. package/dist/postProcess/Tr2PPFilmGrainEffect.js.map +1 -1
  974. package/dist/postProcess/Tr2PPFogEffect.js +4 -4
  975. package/dist/postProcess/Tr2PPFogEffect.js.map +1 -1
  976. package/dist/postProcess/Tr2PPGenericEffect.js +8 -1
  977. package/dist/postProcess/Tr2PPGenericEffect.js.map +1 -1
  978. package/dist/postProcess/Tr2PPGodRaysEffect.js +2 -2
  979. package/dist/postProcess/Tr2PPGodRaysEffect.js.map +1 -1
  980. package/dist/postProcess/Tr2PPLutEffect.js +1 -1
  981. package/dist/postProcess/Tr2PPLutEffect.js.map +1 -1
  982. package/dist/postProcess/Tr2PPSignalLossEffect.js +1 -1
  983. package/dist/postProcess/Tr2PPSignalLossEffect.js.map +1 -1
  984. package/dist/postProcess/Tr2PPTaaEffect.js +11 -1
  985. package/dist/postProcess/Tr2PPTaaEffect.js.map +1 -1
  986. package/dist/postProcess/Tr2PPTonemappingEffect.js +6 -1
  987. package/dist/postProcess/Tr2PPTonemappingEffect.js.map +1 -1
  988. package/dist/postProcess/Tr2PPVignetteEffect.js +3 -3
  989. package/dist/postProcess/Tr2PPVignetteEffect.js.map +1 -1
  990. package/dist/postProcess/Tr2PostProcess.js +7 -2
  991. package/dist/postProcess/Tr2PostProcess.js.map +1 -1
  992. package/dist/postProcess/Tr2PostProcess2.js +149 -2
  993. package/dist/postProcess/Tr2PostProcess2.js.map +1 -1
  994. package/dist/postProcess/Tr2PostProcessAttributes.js +94 -5
  995. package/dist/postProcess/Tr2PostProcessAttributes.js.map +1 -1
  996. package/dist/renderJob/Tr2RenderJobs.js +36 -2
  997. package/dist/renderJob/Tr2RenderJobs.js.map +1 -1
  998. package/dist/renderJob/TriRenderJob.js +61 -2
  999. package/dist/renderJob/TriRenderJob.js.map +1 -1
  1000. package/dist/renderJob/TriRenderStep.js +22 -2
  1001. package/dist/renderJob/TriRenderStep.js.map +1 -1
  1002. package/dist/renderJob/TriStepClear.js +20 -2
  1003. package/dist/renderJob/TriStepClear.js.map +1 -1
  1004. package/dist/renderJob/TriStepCopyRenderTarget.js +52 -1
  1005. package/dist/renderJob/TriStepCopyRenderTarget.js.map +1 -1
  1006. package/dist/renderJob/TriStepEnableWireframeMode.js +10 -1
  1007. package/dist/renderJob/TriStepEnableWireframeMode.js.map +1 -1
  1008. package/dist/renderJob/TriStepGenerateMipMaps.js +10 -1
  1009. package/dist/renderJob/TriStepGenerateMipMaps.js.map +1 -1
  1010. package/dist/renderJob/TriStepPopDepthStencil.js +7 -1
  1011. package/dist/renderJob/TriStepPopDepthStencil.js.map +1 -1
  1012. package/dist/renderJob/TriStepPopProjection.js +7 -1
  1013. package/dist/renderJob/TriStepPopProjection.js.map +1 -1
  1014. package/dist/renderJob/TriStepPopRenderTarget.js +13 -1
  1015. package/dist/renderJob/TriStepPopRenderTarget.js.map +1 -1
  1016. package/dist/renderJob/TriStepPopViewTransform.js +7 -1
  1017. package/dist/renderJob/TriStepPopViewTransform.js.map +1 -1
  1018. package/dist/renderJob/TriStepPopViewport.js +7 -1
  1019. package/dist/renderJob/TriStepPopViewport.js.map +1 -1
  1020. package/dist/renderJob/TriStepPresentSwapChain.js +13 -1
  1021. package/dist/renderJob/TriStepPresentSwapChain.js.map +1 -1
  1022. package/dist/renderJob/TriStepPushDepthStencil.js +18 -1
  1023. package/dist/renderJob/TriStepPushDepthStencil.js.map +1 -1
  1024. package/dist/renderJob/TriStepPushProjection.js +7 -1
  1025. package/dist/renderJob/TriStepPushProjection.js.map +1 -1
  1026. package/dist/renderJob/TriStepPushRenderTarget.js +10 -1
  1027. package/dist/renderJob/TriStepPushRenderTarget.js.map +1 -1
  1028. package/dist/renderJob/TriStepPushViewTransform.js +7 -1
  1029. package/dist/renderJob/TriStepPushViewTransform.js.map +1 -1
  1030. package/dist/renderJob/TriStepPushViewport.js +7 -1
  1031. package/dist/renderJob/TriStepPushViewport.js.map +1 -1
  1032. package/dist/renderJob/TriStepRemoteSync.js +18 -1
  1033. package/dist/renderJob/TriStepRemoteSync.js.map +1 -1
  1034. package/dist/renderJob/TriStepResolve.js +14 -1
  1035. package/dist/renderJob/TriStepResolve.js.map +1 -1
  1036. package/dist/renderJob/TriStepRunJob.js +13 -1
  1037. package/dist/renderJob/TriStepRunJob.js.map +1 -1
  1038. package/dist/renderJob/TriStepSetDepthStencil.js +13 -1
  1039. package/dist/renderJob/TriStepSetDepthStencil.js.map +1 -1
  1040. package/dist/renderJob/TriStepSetProjection.js +15 -1
  1041. package/dist/renderJob/TriStepSetProjection.js.map +1 -1
  1042. package/dist/renderJob/TriStepSetRenderState.js +22 -2
  1043. package/dist/renderJob/TriStepSetRenderState.js.map +1 -1
  1044. package/dist/renderJob/TriStepSetRenderTarget.js +13 -1
  1045. package/dist/renderJob/TriStepSetRenderTarget.js.map +1 -1
  1046. package/dist/renderJob/TriStepSetStdRndStates.js +19 -1
  1047. package/dist/renderJob/TriStepSetStdRndStates.js.map +1 -1
  1048. package/dist/renderJob/TriStepSetView.js +30 -3
  1049. package/dist/renderJob/TriStepSetView.js.map +1 -1
  1050. package/dist/renderJob/TriStepSetViewport.js +18 -1
  1051. package/dist/renderJob/TriStepSetViewport.js.map +1 -1
  1052. package/dist/renderJob/TriStepSetVisualizationMode.js +20 -1
  1053. package/dist/renderJob/TriStepSetVisualizationMode.js.map +1 -1
  1054. package/dist/shader/Tr2Effect.js +219 -4
  1055. package/dist/shader/Tr2Effect.js.map +1 -1
  1056. package/dist/shader/Tr2Material.js +43 -2
  1057. package/dist/shader/Tr2Material.js.map +1 -1
  1058. package/dist/shader/index.js +1 -11
  1059. package/dist/shader/index.js.map +1 -1
  1060. package/dist/shader/material/Tr2EffectLibraryParameters.js +9 -2
  1061. package/dist/shader/material/Tr2EffectLibraryParameters.js.map +1 -1
  1062. package/dist/shader/material/Tr2EffectParam.js +2 -2
  1063. package/dist/shader/material/Tr2EffectParam.js.map +1 -1
  1064. package/dist/shader/material/Tr2EffectPassParameters.js +25 -2
  1065. package/dist/shader/material/Tr2EffectPassParameters.js.map +1 -1
  1066. package/dist/shader/material/Tr2EffectTechniqueInputs.js +2 -2
  1067. package/dist/shader/material/Tr2EffectTechniqueInputs.js.map +1 -1
  1068. package/dist/shader/material/Tr2MaterialStageInput.js +17 -2
  1069. package/dist/shader/material/Tr2MaterialStageInput.js.map +1 -1
  1070. package/dist/shader/material/Tr2SharedConstantBuffers.js +2 -2
  1071. package/dist/shader/material/Tr2SharedConstantBuffers.js.map +1 -1
  1072. package/dist/shader/parameter/CjsParameter.js +95 -1
  1073. package/dist/shader/parameter/CjsParameter.js.map +1 -1
  1074. package/dist/shader/parameter/CjsVectorParameter.js +20 -0
  1075. package/dist/shader/parameter/CjsVectorParameter.js.map +1 -1
  1076. package/dist/shader/parameter/Tr2ConstantEffectParameter.js +2 -2
  1077. package/dist/shader/parameter/Tr2ConstantEffectParameter.js.map +1 -1
  1078. package/dist/shader/parameter/Tr2FloatParameter.js +54 -1
  1079. package/dist/shader/parameter/Tr2FloatParameter.js.map +1 -1
  1080. package/dist/shader/parameter/Tr2GeometryBufferParameter.js +41 -2
  1081. package/dist/shader/parameter/Tr2GeometryBufferParameter.js.map +1 -1
  1082. package/dist/shader/parameter/Tr2Matrix4Parameter.js +56 -2
  1083. package/dist/shader/parameter/Tr2Matrix4Parameter.js.map +1 -1
  1084. package/dist/shader/parameter/Tr2RuntimeTextureParameter.js +55 -1
  1085. package/dist/shader/parameter/Tr2RuntimeTextureParameter.js.map +1 -1
  1086. package/dist/shader/parameter/Tr2TextureAnimationParameter.js +36 -1
  1087. package/dist/shader/parameter/Tr2TextureAnimationParameter.js.map +1 -1
  1088. package/dist/shader/parameter/Tr2Vector2Parameter.js +89 -3
  1089. package/dist/shader/parameter/Tr2Vector2Parameter.js.map +1 -1
  1090. package/dist/shader/parameter/Tr2Vector3Parameter.js +98 -3
  1091. package/dist/shader/parameter/Tr2Vector3Parameter.js.map +1 -1
  1092. package/dist/shader/parameter/Tr2Vector4Parameter.js +108 -3
  1093. package/dist/shader/parameter/Tr2Vector4Parameter.js.map +1 -1
  1094. package/dist/shader/parameter/TriFloatArrayParameter.js +27 -1
  1095. package/dist/shader/parameter/TriFloatArrayParameter.js.map +1 -1
  1096. package/dist/shader/parameter/TriTextureParameter.js +86 -2
  1097. package/dist/shader/parameter/TriTextureParameter.js.map +1 -1
  1098. package/dist/shader/parameter/TriTransformParameter.js +29 -6
  1099. package/dist/shader/parameter/TriTransformParameter.js.map +1 -1
  1100. package/dist/shader/parameter/TriVariableParameter.js +40 -2
  1101. package/dist/shader/parameter/TriVariableParameter.js.map +1 -1
  1102. package/dist/shader/parameter/TriVector4.js +5 -3
  1103. package/dist/shader/parameter/TriVector4.js.map +1 -1
  1104. package/dist/shader/reflection/Tr2ShaderOption.js +8 -3
  1105. package/dist/shader/reflection/Tr2ShaderOption.js.map +1 -1
  1106. package/dist/shader/sampler/Tr2SamplerOverride.js +2 -2
  1107. package/dist/shader/sampler/Tr2SamplerOverride.js.map +1 -1
  1108. package/dist/shader/sampler/Tr2SamplerOverrideData.js +2 -2
  1109. package/dist/shader/sampler/Tr2SamplerOverrideData.js.map +1 -1
  1110. package/dist/shader/support/CjsVariableStore.js +140 -0
  1111. package/dist/shader/support/CjsVariableStore.js.map +1 -1
  1112. package/dist/shader/support/Tr2DataTextureManager.js +2 -2
  1113. package/dist/shader/support/Tr2DataTextureManager.js.map +1 -1
  1114. package/dist/shader/support/Tr2EffectStateManager.js +2 -2
  1115. package/dist/shader/support/Tr2EffectStateManager.js.map +1 -1
  1116. package/dist/shader/support/Tr2ShaderBuffer.js +17 -2
  1117. package/dist/shader/support/Tr2ShaderBuffer.js.map +1 -1
  1118. package/dist/sprite2d/Tr2Sprite2dClipRect.js +2 -2
  1119. package/dist/sprite2d/Tr2Sprite2dClipRect.js.map +1 -1
  1120. package/dist/sprite2d/Tr2Sprite2dD3DVertex.js +2 -2
  1121. package/dist/sprite2d/Tr2Sprite2dD3DVertex.js.map +1 -1
  1122. package/dist/sprite2d/Tr2Sprite2dLineTraceVertex.js +4 -4
  1123. package/dist/sprite2d/Tr2Sprite2dLineTraceVertex.js.map +1 -1
  1124. package/dist/sprite2d/Tr2Sprite2dTriangle.js +2 -2
  1125. package/dist/sprite2d/Tr2Sprite2dTriangle.js.map +1 -1
  1126. package/dist/sprite2d/Tr2Sprite2dVertexBase.js +5 -5
  1127. package/dist/sprite2d/Tr2Sprite2dVertexBase.js.map +1 -1
  1128. package/dist/trinityCore/CjsBatchManager.js +67 -1
  1129. package/dist/trinityCore/CjsBatchManager.js.map +1 -1
  1130. package/dist/trinityCore/GrannyBoneOffset.js +56 -5
  1131. package/dist/trinityCore/GrannyBoneOffset.js.map +1 -1
  1132. package/dist/trinityCore/ITriRenderBatchAccumulator.js +90 -2
  1133. package/dist/trinityCore/ITriRenderBatchAccumulator.js.map +1 -1
  1134. package/dist/trinityCore/Tr2DepthStencil.js +3 -3
  1135. package/dist/trinityCore/Tr2DepthStencil.js.map +1 -1
  1136. package/dist/trinityCore/Tr2DirectInstanceData.js +22 -3
  1137. package/dist/trinityCore/Tr2DirectInstanceData.js.map +1 -1
  1138. package/dist/trinityCore/Tr2ExpressionTermInfo.js +23 -2
  1139. package/dist/trinityCore/Tr2ExpressionTermInfo.js.map +1 -1
  1140. package/dist/trinityCore/Tr2GpuBuffer.js +8 -3
  1141. package/dist/trinityCore/Tr2GpuBuffer.js.map +1 -1
  1142. package/dist/{generated/trinityCore → trinityCore}/Tr2GrannyAnimation.js +143 -14
  1143. package/dist/trinityCore/Tr2GrannyAnimation.js.map +1 -0
  1144. package/dist/trinityCore/Tr2InstancedMesh.js +54 -2
  1145. package/dist/trinityCore/Tr2InstancedMesh.js.map +1 -1
  1146. package/dist/trinityCore/Tr2MaterialParameterStore.js +7 -2
  1147. package/dist/trinityCore/Tr2MaterialParameterStore.js.map +1 -1
  1148. package/dist/trinityCore/Tr2Mesh.js +38 -1
  1149. package/dist/trinityCore/Tr2Mesh.js.map +1 -1
  1150. package/dist/trinityCore/Tr2MeshArea.js +80 -2
  1151. package/dist/trinityCore/Tr2MeshArea.js.map +1 -1
  1152. package/dist/trinityCore/Tr2MeshBase.js +101 -5
  1153. package/dist/trinityCore/Tr2MeshBase.js.map +1 -1
  1154. package/dist/trinityCore/Tr2PerObjectData.js +10 -0
  1155. package/dist/trinityCore/Tr2PerObjectData.js.map +1 -1
  1156. package/dist/trinityCore/Tr2PickType.js +33 -0
  1157. package/dist/trinityCore/Tr2PickType.js.map +1 -0
  1158. package/dist/trinityCore/Tr2PrimaryRenderContext.js +2 -2
  1159. package/dist/trinityCore/Tr2PrimaryRenderContext.js.map +1 -1
  1160. package/dist/trinityCore/Tr2RenderBatch.js +139 -2
  1161. package/dist/trinityCore/Tr2RenderBatch.js.map +1 -1
  1162. package/dist/trinityCore/Tr2RenderContext.js +275 -4
  1163. package/dist/trinityCore/Tr2RenderContext.js.map +1 -1
  1164. package/dist/trinityCore/Tr2RenderTarget.js +3 -3
  1165. package/dist/trinityCore/Tr2RenderTarget.js.map +1 -1
  1166. package/dist/trinityCore/Tr2RuntimeGpuBuffer.js +2 -2
  1167. package/dist/trinityCore/Tr2RuntimeGpuBuffer.js.map +1 -1
  1168. package/dist/trinityCore/Tr2RuntimeInstanceData.js +182 -3
  1169. package/dist/trinityCore/Tr2RuntimeInstanceData.js.map +1 -1
  1170. package/dist/trinityCore/Tr2SerializedMorphAnimation.js +2 -2
  1171. package/dist/trinityCore/Tr2SerializedMorphAnimation.js.map +1 -1
  1172. package/dist/trinityCore/Tr2ShLightingManager.js +397 -0
  1173. package/dist/trinityCore/Tr2ShLightingManager.js.map +1 -0
  1174. package/dist/trinityCore/Tr2SwapChain.js +2 -2
  1175. package/dist/trinityCore/Tr2SwapChain.js.map +1 -1
  1176. package/dist/trinityCore/Tr2VariableStore.js +28 -2
  1177. package/dist/trinityCore/Tr2VariableStore.js.map +1 -1
  1178. package/dist/trinityCore/Tr2VisibilityResults.js +9 -4
  1179. package/dist/trinityCore/Tr2VisibilityResults.js.map +1 -1
  1180. package/dist/trinityCore/TriDevice.js +8 -3
  1181. package/dist/trinityCore/TriDevice.js.map +1 -1
  1182. package/dist/trinityCore/TriFloat.js +2 -2
  1183. package/dist/trinityCore/TriFloat.js.map +1 -1
  1184. package/dist/trinityCore/TriFrustum.js +24 -17
  1185. package/dist/trinityCore/TriFrustum.js.map +1 -1
  1186. package/dist/trinityCore/TriFrustumOrtho.js +2 -2
  1187. package/dist/trinityCore/TriFrustumOrtho.js.map +1 -1
  1188. package/dist/trinityCore/TriObserverLocal.js +46 -3
  1189. package/dist/trinityCore/TriObserverLocal.js.map +1 -1
  1190. package/dist/trinityCore/TriProjection.js +88 -34
  1191. package/dist/trinityCore/TriProjection.js.map +1 -1
  1192. package/dist/trinityCore/TriRect.js +14 -2
  1193. package/dist/trinityCore/TriRect.js.map +1 -1
  1194. package/dist/trinityCore/TriRenderBatchAccumulator.js +48 -2
  1195. package/dist/trinityCore/TriRenderBatchAccumulator.js.map +1 -1
  1196. package/dist/trinityCore/TriRenderBatchMap.js +47 -1
  1197. package/dist/trinityCore/TriRenderBatchMap.js.map +1 -1
  1198. package/dist/trinityCore/TriSettings.js +40 -2
  1199. package/dist/trinityCore/TriSettings.js.map +1 -1
  1200. package/dist/trinityCore/TriTorque.js +4 -4
  1201. package/dist/trinityCore/TriTorque.js.map +1 -1
  1202. package/dist/trinityCore/TriVariable.js +32 -2
  1203. package/dist/trinityCore/TriVariable.js.map +1 -1
  1204. package/dist/trinityCore/TriView.js +19 -4
  1205. package/dist/trinityCore/TriView.js.map +1 -1
  1206. package/dist/trinityCore/TriViewport.js +14 -2
  1207. package/dist/trinityCore/TriViewport.js.map +1 -1
  1208. package/dist/trinityCore/{Tr2BindingVector3.js → binding/Tr2BindingVector3.js} +4 -4
  1209. package/dist/trinityCore/binding/Tr2BindingVector3.js.map +1 -0
  1210. package/dist/trinityCore/binding/Tr2DynamicBinding.js +266 -0
  1211. package/dist/trinityCore/binding/Tr2DynamicBinding.js.map +1 -0
  1212. package/dist/trinityCore/binding/Tr2ExternalParameter.js +392 -0
  1213. package/dist/trinityCore/binding/Tr2ExternalParameter.js.map +1 -0
  1214. package/dist/trinityCore/{Tr2PyValueBinding.js → binding/Tr2PyValueBinding.js} +31 -7
  1215. package/dist/trinityCore/binding/Tr2PyValueBinding.js.map +1 -0
  1216. package/dist/trinityCore/binding/TriValueBinding.js +648 -0
  1217. package/dist/trinityCore/binding/TriValueBinding.js.map +1 -0
  1218. package/dist/trinityCore/index.js +11 -2
  1219. package/dist/trinityCore/index.js.map +1 -1
  1220. package/dist/trinityCore/pickRay.js +84 -0
  1221. package/dist/trinityCore/pickRay.js.map +1 -0
  1222. package/dist/trinityCore/rawData/CjsPerObjectLayouts.js +931 -0
  1223. package/dist/trinityCore/rawData/CjsPerObjectLayouts.js.map +1 -0
  1224. package/dist/trinityCore/rawData/RawData.js +434 -0
  1225. package/dist/trinityCore/rawData/RawData.js.map +1 -0
  1226. package/dist/trinityCore/rawData/TriPoolAllocator.js +357 -0
  1227. package/dist/trinityCore/rawData/TriPoolAllocator.js.map +1 -0
  1228. package/dist/ui/Tr2PresentParameters.js +2 -2
  1229. package/dist/ui/Tr2PresentParameters.js.map +1 -1
  1230. package/dist/utilities/Range.js +55 -2
  1231. package/dist/utilities/Range.js.map +1 -1
  1232. package/docs/README.md +88 -0
  1233. package/docs/architecture.md +162 -0
  1234. package/docs/concepts/eve-runtime-behavior.md +86 -0
  1235. package/docs/concepts/generated-class-lifecycle.md +116 -0
  1236. package/docs/reference/api.md +76 -0
  1237. package/docs/reference/classes/eve-runtime.md +106 -0
  1238. package/docs/reference/classes/trinity-core.md +26 -0
  1239. package/docs/reference/implementation-status.md +104 -0
  1240. package/docs/reference/main-semantic-extraction.md +104 -0
  1241. package/package.json +33 -26
  1242. package/dist/eve/DecalVSPerObjectData.js +0 -34
  1243. package/dist/eve/DecalVSPerObjectData.js.map +0 -1
  1244. package/dist/eve/EveBannerItem.js +0 -43
  1245. package/dist/eve/EveBannerItem.js.map +0 -1
  1246. package/dist/eve/EveBannerLight.js.map +0 -1
  1247. package/dist/eve/EveBannerSet.js +0 -109
  1248. package/dist/eve/EveBannerSet.js.map +0 -1
  1249. package/dist/eve/EveBasicPerObjectData.js +0 -31
  1250. package/dist/eve/EveBasicPerObjectData.js.map +0 -1
  1251. package/dist/eve/EveBoosterSet2.js.map +0 -1
  1252. package/dist/eve/EveBoosterSet2Renderable.js.map +0 -1
  1253. package/dist/eve/EveChildSpherePinPerObjectData.js +0 -37
  1254. package/dist/eve/EveChildSpherePinPerObjectData.js.map +0 -1
  1255. package/dist/eve/EveHazeSet.js +0 -72
  1256. package/dist/eve/EveHazeSet.js.map +0 -1
  1257. package/dist/eve/EveHazeSetLight.js.map +0 -1
  1258. package/dist/eve/EveLocator2.js.map +0 -1
  1259. package/dist/eve/EveLocatorSets.js.map +0 -1
  1260. package/dist/eve/EveParticleDirectForce.js.map +0 -1
  1261. package/dist/eve/EveParticleDragForce.js.map +0 -1
  1262. package/dist/eve/EveParticleSpring.js.map +0 -1
  1263. package/dist/eve/EvePerObjectPSData.js +0 -29
  1264. package/dist/eve/EvePerObjectPSData.js.map +0 -1
  1265. package/dist/eve/EvePerObjectVSData.js +0 -29
  1266. package/dist/eve/EvePerObjectVSData.js.map +0 -1
  1267. package/dist/eve/EvePlaneLight.js.map +0 -1
  1268. package/dist/eve/EvePlaneSet.js +0 -104
  1269. package/dist/eve/EvePlaneSet.js.map +0 -1
  1270. package/dist/eve/EvePlaneSetItem.js +0 -45
  1271. package/dist/eve/EvePlaneSetItem.js.map +0 -1
  1272. package/dist/eve/EveSpaceObjectDecal.js +0 -150
  1273. package/dist/eve/EveSpaceObjectDecal.js.map +0 -1
  1274. package/dist/eve/EveSpaceObjectPSData.js +0 -73
  1275. package/dist/eve/EveSpaceObjectPSData.js.map +0 -1
  1276. package/dist/eve/EveSpaceObjectVSData.js +0 -79
  1277. package/dist/eve/EveSpaceObjectVSData.js.map +0 -1
  1278. package/dist/eve/EveSpacePerObjectData.js +0 -97
  1279. package/dist/eve/EveSpacePerObjectData.js.map +0 -1
  1280. package/dist/eve/EveSpherePinPerObjectData.js +0 -37
  1281. package/dist/eve/EveSpherePinPerObjectData.js.map +0 -1
  1282. package/dist/eve/EveSpotlightLight.js.map +0 -1
  1283. package/dist/eve/EveSpotlightSet.js +0 -98
  1284. package/dist/eve/EveSpotlightSet.js.map +0 -1
  1285. package/dist/eve/EveSpriteLight.js.map +0 -1
  1286. package/dist/eve/EveSpriteLineSet.js +0 -74
  1287. package/dist/eve/EveSpriteLineSet.js.map +0 -1
  1288. package/dist/eve/EveSpriteLineSetItem.js.map +0 -1
  1289. package/dist/eve/EveSpriteSet.js +0 -115
  1290. package/dist/eve/EveSpriteSet.js.map +0 -1
  1291. package/dist/eve/EveTrailsSet.js.map +0 -1
  1292. package/dist/eve/Locator.js.map +0 -1
  1293. package/dist/eve/LocatorData.js.map +0 -1
  1294. package/dist/eve/ProcessLifetimeData.js.map +0 -1
  1295. package/dist/eve/attachment/turrets/EveTurretSetPSData.js +0 -47
  1296. package/dist/eve/attachment/turrets/EveTurretSetPSData.js.map +0 -1
  1297. package/dist/eve/attachment/turrets/EveTurretSetVSData.js +0 -62
  1298. package/dist/eve/attachment/turrets/EveTurretSetVSData.js.map +0 -1
  1299. package/dist/eve/child/behaviors/SplineTunnel.js.map +0 -1
  1300. package/dist/eve/child/behaviors/SplineTunnelPoint.js.map +0 -1
  1301. package/dist/eve/perObjectData/DecalPSPerObjectData.js +0 -56
  1302. package/dist/eve/perObjectData/DecalPSPerObjectData.js.map +0 -1
  1303. package/dist/eve/perObjectData/EveMissileWarheadPerObjectData.js +0 -31
  1304. package/dist/eve/perObjectData/EveMissileWarheadPerObjectData.js.map +0 -1
  1305. package/dist/eve/perObjectData/EveTurretSetPerObjectData.js +0 -36
  1306. package/dist/eve/perObjectData/EveTurretSetPerObjectData.js.map +0 -1
  1307. package/dist/eve/perObjectData/MergeMorphsConstantBuffer.js +0 -64
  1308. package/dist/eve/perObjectData/MergeMorphsConstantBuffer.js.map +0 -1
  1309. package/dist/generated/eve/EveCamera.js +0 -264
  1310. package/dist/generated/eve/EveCamera.js.map +0 -1
  1311. package/dist/generated/eve/EveEntity.js +0 -81
  1312. package/dist/generated/eve/EveEntity.js.map +0 -1
  1313. package/dist/generated/eve/attachment/decal/index.js +0 -2
  1314. package/dist/generated/eve/attachment/decal/index.js.map +0 -1
  1315. package/dist/generated/eve/attachment/haze/EveHazeSetItem.js +0 -52
  1316. package/dist/generated/eve/attachment/haze/EveHazeSetItem.js.map +0 -1
  1317. package/dist/generated/eve/attachment/haze/index.js +0 -2
  1318. package/dist/generated/eve/attachment/haze/index.js.map +0 -1
  1319. package/dist/generated/eve/attachment/index.js +0 -5
  1320. package/dist/generated/eve/attachment/index.js.map +0 -1
  1321. package/dist/generated/eve/attachment/spotlights/EveSpotlightSetItem.js +0 -55
  1322. package/dist/generated/eve/attachment/spotlights/EveSpotlightSetItem.js.map +0 -1
  1323. package/dist/generated/eve/attachment/spotlights/index.js +0 -2
  1324. package/dist/generated/eve/attachment/spotlights/index.js.map +0 -1
  1325. package/dist/generated/eve/attachment/sprites/EveSpriteSetItem.js.map +0 -1
  1326. package/dist/generated/eve/attachment/sprites/index.js +0 -2
  1327. package/dist/generated/eve/attachment/sprites/index.js.map +0 -1
  1328. package/dist/generated/eve/attachment/turrets/enums.js +0 -32
  1329. package/dist/generated/eve/attachment/turrets/enums.js.map +0 -1
  1330. package/dist/generated/eve/attachment/turrets/index.js +0 -2
  1331. package/dist/generated/eve/attachment/turrets/index.js.map +0 -1
  1332. package/dist/generated/eve/child/EveChildBehaviorSystem.js +0 -357
  1333. package/dist/generated/eve/child/EveChildBehaviorSystem.js.map +0 -1
  1334. package/dist/generated/eve/child/EveChildBulletStorm.js.map +0 -1
  1335. package/dist/generated/eve/child/EveChildLink.js.map +0 -1
  1336. package/dist/generated/eve/child/EveChildSpherePin.js +0 -54
  1337. package/dist/generated/eve/child/EveChildSpherePin.js.map +0 -1
  1338. package/dist/generated/eve/child/behaviors/CollisionAvoidance.js +0 -85
  1339. package/dist/generated/eve/child/behaviors/CollisionAvoidance.js.map +0 -1
  1340. package/dist/generated/eve/child/behaviors/InclusionVolume.js +0 -104
  1341. package/dist/generated/eve/child/behaviors/InclusionVolume.js.map +0 -1
  1342. package/dist/generated/eve/child/behaviors/ProcessLifetime.js +0 -458
  1343. package/dist/generated/eve/child/behaviors/ProcessLifetime.js.map +0 -1
  1344. package/dist/generated/eve/child/behaviors/SplineTunnelGroup.js +0 -161
  1345. package/dist/generated/eve/child/behaviors/SplineTunnelGroup.js.map +0 -1
  1346. package/dist/generated/eve/child/behaviors/Wander.js +0 -92
  1347. package/dist/generated/eve/child/behaviors/Wander.js.map +0 -1
  1348. package/dist/generated/eve/child/behaviors/enums.js.map +0 -1
  1349. package/dist/generated/eve/child/modifiers/EveChildModifierAttachToBone.js.map +0 -1
  1350. package/dist/generated/eve/child/modifiers/EveChildModifierBillboard3D.js.map +0 -1
  1351. package/dist/generated/eve/child/modifiers/EveChildModifierStretch.js.map +0 -1
  1352. package/dist/generated/eve/child/modifiers/EveChildModifierTranslateWithCamera.js.map +0 -1
  1353. package/dist/generated/eve/child/modifiers/index.js +0 -5
  1354. package/dist/generated/eve/child/modifiers/index.js.map +0 -1
  1355. package/dist/generated/eve/child/procedural/EveChildProceduralContainer.js.map +0 -1
  1356. package/dist/generated/eve/child/procedural/index.js +0 -10
  1357. package/dist/generated/eve/child/procedural/index.js.map +0 -1
  1358. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodAttributeMap.js.map +0 -1
  1359. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js.map +0 -1
  1360. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodCycling.js.map +0 -1
  1361. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodCyclingParameter.js.map +0 -1
  1362. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodRandom.js.map +0 -1
  1363. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodRandomParameter.js.map +0 -1
  1364. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodThresholdParameter.js.map +0 -1
  1365. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodThresholds.js.map +0 -1
  1366. package/dist/generated/eve/child/procedural/selection/index.js +0 -9
  1367. package/dist/generated/eve/child/procedural/selection/index.js.map +0 -1
  1368. package/dist/generated/eve/distribution/EveBaseDistributionMethod.js.map +0 -1
  1369. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js.map +0 -1
  1370. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js.map +0 -1
  1371. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js.map +0 -1
  1372. package/dist/generated/eve/distribution/attributeModifiers/enums.js.map +0 -1
  1373. package/dist/generated/eve/distribution/attributeModifiers/index.js +0 -5
  1374. package/dist/generated/eve/distribution/attributeModifiers/index.js.map +0 -1
  1375. package/dist/generated/eve/distribution/index.js +0 -19
  1376. package/dist/generated/eve/distribution/index.js.map +0 -1
  1377. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorLocators.js.map +0 -1
  1378. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js.map +0 -1
  1379. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorVolume.js.map +0 -1
  1380. package/dist/generated/eve/distribution/placement/index.js +0 -4
  1381. package/dist/generated/eve/distribution/placement/index.js.map +0 -1
  1382. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js.map +0 -1
  1383. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js.map +0 -1
  1384. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js.map +0 -1
  1385. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js.map +0 -1
  1386. package/dist/generated/eve/distribution/spawnModifiers/index.js +0 -5
  1387. package/dist/generated/eve/distribution/spawnModifiers/index.js.map +0 -1
  1388. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerBurst.js.map +0 -1
  1389. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerControllerTrigger.js.map +0 -1
  1390. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerInterval.js.map +0 -1
  1391. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerPlane.js.map +0 -1
  1392. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerSnake.js.map +0 -1
  1393. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerSphere.js.map +0 -1
  1394. package/dist/generated/eve/distribution/spawners/index.js +0 -7
  1395. package/dist/generated/eve/distribution/spawners/index.js.map +0 -1
  1396. package/dist/generated/eve/effect/EveLensflare.js.map +0 -1
  1397. package/dist/generated/eve/effect/EveMultiEffect.js +0 -84
  1398. package/dist/generated/eve/effect/EveMultiEffect.js.map +0 -1
  1399. package/dist/generated/eve/effect/EveMultiEffectParameter.js +0 -45
  1400. package/dist/generated/eve/effect/EveMultiEffectParameter.js.map +0 -1
  1401. package/dist/generated/eve/fxAttributes/EveCameraFxAttributes.js +0 -47
  1402. package/dist/generated/eve/fxAttributes/EveCameraFxAttributes.js.map +0 -1
  1403. package/dist/generated/eve/fxAttributes/EveSpaceObjectFxAttributes.js +0 -63
  1404. package/dist/generated/eve/fxAttributes/EveSpaceObjectFxAttributes.js.map +0 -1
  1405. package/dist/generated/eve/fxAttributes/index.js +0 -3
  1406. package/dist/generated/eve/fxAttributes/index.js.map +0 -1
  1407. package/dist/generated/eve/overlays/EveMeshOverlayEffect.js +0 -58
  1408. package/dist/generated/eve/overlays/EveMeshOverlayEffect.js.map +0 -1
  1409. package/dist/generated/eve/overlays/index.js +0 -2
  1410. package/dist/generated/eve/overlays/index.js.map +0 -1
  1411. package/dist/generated/eve/perObjectData/EveBoosterSetPerObjectData.js +0 -66
  1412. package/dist/generated/eve/perObjectData/EveBoosterSetPerObjectData.js.map +0 -1
  1413. package/dist/generated/eve/perObjectData/EveChildBulletStormPerObjectData.js +0 -39
  1414. package/dist/generated/eve/perObjectData/EveChildBulletStormPerObjectData.js.map +0 -1
  1415. package/dist/generated/eve/perObjectData/EveDecalPerObjectData.js +0 -34
  1416. package/dist/generated/eve/perObjectData/EveDecalPerObjectData.js.map +0 -1
  1417. package/dist/generated/eve/perObjectData/EveSceneStaticParticlesPerObjectData.js +0 -32
  1418. package/dist/generated/eve/perObjectData/EveSceneStaticParticlesPerObjectData.js.map +0 -1
  1419. package/dist/generated/eve/perObjectData/index.js +0 -5
  1420. package/dist/generated/eve/perObjectData/index.js.map +0 -1
  1421. package/dist/generated/eve/scene/EveComponentCollection.js.map +0 -1
  1422. package/dist/generated/eve/scene/EveComponentRegistry.js.map +0 -1
  1423. package/dist/generated/eve/scene/EvePickingContext.js +0 -43
  1424. package/dist/generated/eve/scene/EvePickingContext.js.map +0 -1
  1425. package/dist/generated/eve/scene/EveSceneStaticParticles.js +0 -173
  1426. package/dist/generated/eve/scene/EveSceneStaticParticles.js.map +0 -1
  1427. package/dist/generated/eve/scene/TriShadowFrustum.js +0 -83
  1428. package/dist/generated/eve/scene/TriShadowFrustum.js.map +0 -1
  1429. package/dist/generated/eve/scene/TriShadowOrthoFrustum.js +0 -140
  1430. package/dist/generated/eve/scene/TriShadowOrthoFrustum.js.map +0 -1
  1431. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js.map +0 -1
  1432. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js.map +0 -1
  1433. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js.map +0 -1
  1434. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js.map +0 -1
  1435. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js.map +0 -1
  1436. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js.map +0 -1
  1437. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js.map +0 -1
  1438. package/dist/generated/eve/smartLights/attributeModifiers/enums.js.map +0 -1
  1439. package/dist/generated/eve/smartLights/attributeModifiers/index.js +0 -9
  1440. package/dist/generated/eve/smartLights/attributeModifiers/index.js.map +0 -1
  1441. package/dist/generated/eve/socket/EveSocketParameterBindingBase.js.map +0 -1
  1442. package/dist/generated/eve/socket/EveSocketParameterBool.js.map +0 -1
  1443. package/dist/generated/eve/socket/EveSocketParameterColor.js.map +0 -1
  1444. package/dist/generated/eve/socket/EveSocketParameterFloat.js.map +0 -1
  1445. package/dist/generated/eve/socket/EveSocketParameterInt.js.map +0 -1
  1446. package/dist/generated/eve/socket/EveSocketParameterString.js.map +0 -1
  1447. package/dist/generated/eve/socket/EveSocketParameterVector2.js.map +0 -1
  1448. package/dist/generated/eve/socket/EveSocketParameterVector3.js.map +0 -1
  1449. package/dist/generated/eve/socket/EveSocketParameterVector4.js.map +0 -1
  1450. package/dist/generated/eve/socket/index.js +0 -10
  1451. package/dist/generated/eve/socket/index.js.map +0 -1
  1452. package/dist/generated/eve/spaceObject/EvePlanet.js +0 -47
  1453. package/dist/generated/eve/spaceObject/EvePlanet.js.map +0 -1
  1454. package/dist/generated/eve/spaceObject/EveShip2.js.map +0 -1
  1455. package/dist/generated/eve/spaceObject/IEveSpaceObject2.js +0 -46
  1456. package/dist/generated/eve/spaceObject/IEveSpaceObject2.js.map +0 -1
  1457. package/dist/generated/eve/spaceObject/swarm/EveSwarmRenderable.js +0 -129
  1458. package/dist/generated/eve/spaceObject/swarm/EveSwarmRenderable.js.map +0 -1
  1459. package/dist/generated/eve/ui/EveLineSet.js.map +0 -1
  1460. package/dist/generated/eve/ui/EveSpherePin.js +0 -94
  1461. package/dist/generated/eve/ui/EveSpherePin.js.map +0 -1
  1462. package/dist/generated/eve/ui/EveTacticalOverlayTrackObject.js +0 -44
  1463. package/dist/generated/eve/ui/EveTacticalOverlayTrackObject.js.map +0 -1
  1464. package/dist/generated/eve/ui/EveTacticalTrails.js.map +0 -1
  1465. package/dist/generated/trinityCore/Tr2DynamicBinding.js +0 -58
  1466. package/dist/generated/trinityCore/Tr2DynamicBinding.js.map +0 -1
  1467. package/dist/generated/trinityCore/Tr2ExternalParameter.js +0 -164
  1468. package/dist/generated/trinityCore/Tr2ExternalParameter.js.map +0 -1
  1469. package/dist/generated/trinityCore/Tr2GrannyAnimation.js.map +0 -1
  1470. package/dist/generated/trinityCore/Tr2ShLightingManager.js +0 -48
  1471. package/dist/generated/trinityCore/Tr2ShLightingManager.js.map +0 -1
  1472. package/dist/generated/trinityCore/TriValueBinding.js +0 -249
  1473. package/dist/generated/trinityCore/TriValueBinding.js.map +0 -1
  1474. package/dist/shader/Tr2Shader.js +0 -150
  1475. package/dist/shader/Tr2Shader.js.map +0 -1
  1476. package/dist/shader/reflection/Tr2EffectConstant.js +0 -61
  1477. package/dist/shader/reflection/Tr2EffectConstant.js.map +0 -1
  1478. package/dist/shader/reflection/Tr2EffectDefine.js +0 -34
  1479. package/dist/shader/reflection/Tr2EffectDefine.js.map +0 -1
  1480. package/dist/shader/reflection/Tr2EffectDescription.js +0 -34
  1481. package/dist/shader/reflection/Tr2EffectDescription.js.map +0 -1
  1482. package/dist/shader/reflection/Tr2EffectLibrary.js +0 -61
  1483. package/dist/shader/reflection/Tr2EffectLibrary.js.map +0 -1
  1484. package/dist/shader/reflection/Tr2EffectParameterAnnotation.js +0 -54
  1485. package/dist/shader/reflection/Tr2EffectParameterAnnotation.js.map +0 -1
  1486. package/dist/shader/reflection/Tr2EffectResource.js +0 -63
  1487. package/dist/shader/reflection/Tr2EffectResource.js.map +0 -1
  1488. package/dist/shader/reflection/Tr2EffectStageInput.js +0 -58
  1489. package/dist/shader/reflection/Tr2EffectStageInput.js.map +0 -1
  1490. package/dist/shader/reflection/Tr2EffectTechnique.js +0 -40
  1491. package/dist/shader/reflection/Tr2EffectTechnique.js.map +0 -1
  1492. package/dist/shader/reflection/Tr2Pass.js +0 -46
  1493. package/dist/shader/reflection/Tr2Pass.js.map +0 -1
  1494. package/dist/shader/sampler/Tr2SamplerSetup.js +0 -34
  1495. package/dist/shader/sampler/Tr2SamplerSetup.js.map +0 -1
  1496. package/dist/trinityCore/Tr2BindingVector3.js.map +0 -1
  1497. package/dist/trinityCore/Tr2PyValueBinding.js.map +0 -1
  1498. /package/dist/{generated/eve → eve}/distribution/attributeModifiers/enums.js +0 -0
  1499. /package/dist/{generated/eve → eve}/smartLights/attributeModifiers/enums.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CjsPerObjectLayouts.js","sources":["../../../../src/trinityCore/rawData/CjsPerObjectLayouts.js"],"sourcesContent":["// Per-object constant-data layouts.\n//\n// This catalog has no CarbonEngine counterpart, which is why it is Cjs* rather\n// than Tr2*/Tri*: C++ gets a struct's layout free from the type system\n// (`accumulator->Allocate<T>()` + placement new), so Carbon never needs to\n// declare one. JavaScript has to.\n//\n// Carbon uploads per-object data by memcpy'ing the C++ struct straight into the\n// constant buffer (EveSpaceObject2.cpp:1469-1483), so the C++ declaration order\n// IS the byte layout the shader reads. Field ORDER and field SIZE are therefore\n// the entire binding contract: renaming a field is safe, reordering or resizing\n// one silently shifts every field after it.\n//\n// Layouts are grouped per object, with up to three buffers:\n//\n// vs - bound to the vertex stage (and cs/gs/hs/ds, per Carbon's mask)\n// ps - bound to the pixel stage\n// shared - ONE buffer bound to both stages, where Carbon uploads the same\n// bytes twice rather than declaring a pair\n//\n// Every matrix stored here is TRANSPOSED, matching Carbon's `= Transpose(m)`\n// staging fill. See the carbon-math-conventions skill.\n//\n// Defaults are frozen and are COPIED into a record's buffer on allocation,\n// never assigned by reference. Carbon's arena does not clear on Alloc, so a\n// field with no default shows the previous tenant's bytes - that reproduces\n// \"unwritten slots = allocator garbage\". Declaring a default opts a field out\n// of that.\n\n\n/**\n * Declared C++ member types. String values rather than ordinals so a typo\n * throws at lookup instead of silently packing wrong, and a layout dump reads\n * `\"matrix4\"` rather than `3`.\n */\nconst Types = Object.freeze({\n /** 16 floats. Stored transposed; written with SetAndTranspose. */\n MATRIX4: \"matrix4\",\n\n /** 4 floats. */\n QUATERNION: \"quaternion\",\n\n /** 4 floats. */\n VECTOR4: \"vector4\",\n\n /** 3 floats. */\n VECTOR3: \"vector3\",\n\n /** 2 floats. */\n VECTOR2: \"vector2\",\n\n /** 1 float. */\n FLOAT: \"float\",\n\n /** 1 lane, bit-cast into the buffer's Uint32 view. */\n UINT32: \"uint32\",\n\n /** 1 lane, two's-complement bit-cast. */\n INT32: \"int32\"\n});\n\n\n/** Float lanes per declared type. */\nconst LANES = Object.freeze({\n [Types.MATRIX4]: 16,\n [Types.QUATERNION]: 4,\n [Types.VECTOR4]: 4,\n [Types.VECTOR3]: 3,\n [Types.VECTOR2]: 2,\n [Types.FLOAT]: 1,\n [Types.UINT32]: 1,\n [Types.INT32]: 1\n});\n\n\n/**\n * Declared type -> the encoder kind that writes its bytes. These are the string\n * values of `RawDataType`; see ToRawLayout for why they are not imported.\n */\nconst ENCODINGS = Object.freeze({\n [Types.MATRIX4]: \"matrix\",\n [Types.UINT32]: \"uint\",\n [Types.INT32]: \"int\"\n});\n\n\nconst ZERO4 = Object.freeze([0, 0, 0, 0]);\n\n\nconst IDENTITY = Object.freeze([\n 1, 0, 0, 0,\n 0, 1, 0, 0,\n 0, 0, 1, 0,\n 0, 0, 0, 1\n]);\n\n\n/** EveTransform.h:161-163 - three matrices, the simplest placeable payload. */\nexport const EveBasic = Object.freeze({\n vs: {\n struct: \"EveBasicPerObjectData\",\n fields: {\n world: { type: Types.MATRIX4, default: IDENTITY },\n worldLast: { type: Types.MATRIX4, default: IDENTITY },\n worldInverse: { type: Types.MATRIX4, default: IDENTITY }\n }\n }\n});\n\n\n/** EveMissileWarhead.h:194 */\nexport const EveMissileWarhead = Object.freeze({\n vs: {\n struct: \"EveMissileWarheadPerObjectData\",\n fields: {\n world: { type: Types.MATRIX4, default: IDENTITY },\n missileSize: { type: Types.VECTOR4 }\n }\n }\n});\n\n\n/** EveSceneStaticParticles.h:105 */\nexport const EveSceneStaticParticles = Object.freeze({\n vs: {\n struct: \"EveSceneStaticParticlesPerObjectData\",\n fields: {\n world: { type: Types.MATRIX4, default: IDENTITY },\n lastWorld: { type: Types.MATRIX4, default: IDENTITY }\n }\n }\n});\n\n\n/**\n * EveConstantBufferFormats.h:16/:11 - the generic Tr2PerObjectDataStandard\n * pair, consumed by EveLineSet / EveCurveLineSet / EveEllipseSet. Each half is\n * one WorldMat, uploaded as two separate buffers.\n */\nexport const EvePerObject = Object.freeze({\n vs: {\n struct: \"EvePerObjectVSData\",\n fields: { WorldMat: { type: Types.MATRIX4, default: IDENTITY } }\n },\n ps: {\n struct: \"EvePerObjectPSData\",\n fields: { WorldMat: { type: Types.MATRIX4, default: IDENTITY } }\n }\n});\n\n\n/**\n * EveLensflare.cpp:41-45 - same bytes bound to VS and PS. `indices[2..3]` are\n * never written in Carbon and are left as allocator garbage.\n */\nexport const EveLensflare = Object.freeze({\n shared: {\n struct: \"EveLensflarePerObjectData\",\n fields: {\n directionScale: { type: Types.VECTOR4 },\n indices: { type: Types.UINT32, count: 4 }\n }\n }\n});\n\n\n/** EveSpherePin.h:25 - the ui variant (EveSpherePin.cpp:415-425). */\nexport const EveSpherePin = Object.freeze({\n shared: {\n struct: \"EveSpherePinPerObjectData\",\n fields: {\n worldMatrix: { type: Types.MATRIX4, default: IDENTITY },\n pinPosition: { type: Types.VECTOR4 },\n pinRotation: { type: Types.VECTOR4 },\n pinColor: { type: Types.VECTOR4 },\n pinThreshold: { type: Types.VECTOR4 },\n pinRadiusPrecalc: { type: Types.VECTOR4 },\n pinUV: { type: Types.VECTOR4 }\n }\n }\n});\n\n\n/** EveChildSpherePin.h:16 - the same field run as the ui pin. */\nexport const EveChildSpherePin = Object.freeze({\n shared: {\n struct: \"EveChildSpherePinPerObjectData\",\n fields: {\n worldMatrix: { type: Types.MATRIX4, default: IDENTITY },\n pinPosition: { type: Types.VECTOR4 },\n pinRotation: { type: Types.VECTOR4 },\n pinColor: { type: Types.VECTOR4 },\n pinThreshold: { type: Types.VECTOR4 },\n pinRadiusPrecalc: { type: Types.VECTOR4 },\n pinUV: { type: Types.VECTOR4 }\n }\n }\n});\n\n\n/**\n * EveSpaceObjectDecal.h:27-45 - uploaded as two constant buffers\n * (cpp:975-976). `unused` shares clipRadius2Sq's register and is Carbon's\n * explicit pad; it is declared so the layout is right and never written.\n */\nexport const EveSpaceObjectDecal = Object.freeze({\n vs: {\n struct: \"DecalVSPerObjectData\",\n fields: {\n worldMatrix: { type: Types.MATRIX4, default: IDENTITY },\n invWorldMatrix: { type: Types.MATRIX4, default: IDENTITY },\n decalMatrix: { type: Types.MATRIX4, default: IDENTITY },\n inverseDecalMatrix: { type: Types.MATRIX4, default: IDENTITY },\n parentBoneMatrix: { type: Types.MATRIX4, default: IDENTITY },\n invParentBoneMatrix: { type: Types.MATRIX4, default: IDENTITY }\n }\n },\n ps: {\n struct: \"DecalPSPerObjectData\",\n fields: {\n // .x killCount (a uint widened to float), .y the 0..1 visibility\n // ramp, .zw reserved (cpp:369-382).\n displayData: { type: Types.VECTOR4 },\n shipData: { type: Types.VECTOR4 },\n clipData: { type: Types.VECTOR4 },\n clipRadius2Sq: { type: Types.FLOAT },\n unused: { type: Types.VECTOR3 },\n shLightingCoefficients: { type: Types.VECTOR4, count: 7, default: ZERO4 }\n }\n }\n});\n\n\n/**\n * EveBoosterSet2.h:48-71 - a VertexShaderData + PixelShaderData pair uploaded\n * as two constant buffers (cpp:1325-1329). `boosterIntensity` is declared on\n * BOTH stages and written separately for each; it is not a duplicate. The\n * padding scalars are Carbon's explicit register pads and stay unwritten.\n */\nexport const EveBoosterSet = Object.freeze({\n vs: {\n struct: \"EveBoosterSetVSData\",\n fields: {\n shipMatrix: { type: Types.MATRIX4, default: IDENTITY },\n boosterIntensity: { type: Types.FLOAT },\n shipSpeed: { type: Types.FLOAT },\n maxBoosterSize: { type: Types.FLOAT },\n padding: { type: Types.FLOAT },\n // EVE_MAX_CONTROL_POINT_COUNT (EveBoosterSet2.h:36)\n trailsControlPositions: { type: Types.VECTOR4, count: 5 },\n trailsControlNormals: { type: Types.VECTOR4, count: 5 }\n }\n },\n ps: {\n struct: \"EveBoosterSetPSData\",\n fields: {\n boosterIntensity: { type: Types.FLOAT },\n trailIntensity: { type: Types.FLOAT },\n warpIntensity: { type: Types.FLOAT },\n padding2: { type: Types.FLOAT }\n }\n }\n});\n\n\n/**\n * EveChildBulletStorm.h:20 - VS only. `targetPositionsWS` slots past the filled\n * target count stay allocator garbage (cpp:403-407); the bound is a bare\n * literal `[10]` in Carbon, not a named constant.\n */\nexport const EveChildBulletStorm = Object.freeze({\n vs: {\n struct: \"EveChildBulletStormPerObjectData\",\n fields: {\n worldTransform: { type: Types.MATRIX4, default: IDENTITY },\n effectInfo: { type: Types.VECTOR4 },\n targetPositionsWS: { type: Types.VECTOR4, count: 10 }\n }\n }\n});\n\n\n/**\n * EveStretch2.cpp:327-337 - Carbon uploads the contiguous member run\n * m_source..m_effectData[2] (EveStretch2.h:105-109) as four vec4s to VS and PS.\n */\nexport const EveStretch2 = Object.freeze({\n shared: {\n struct: \"EveStretch2PerObjectData\",\n fields: {\n sourceData: { type: Types.VECTOR4 },\n destinationData: { type: Types.VECTOR4 },\n effectData: { type: Types.VECTOR4, count: 2 }\n }\n }\n});\n\n\n/**\n * EveSpaceObject2.h:99 (vs) / :122 (ps) - the persistent pair. Unlike every\n * other entry here these live as members on the owner across frames and are\n * READ BACK (GetParentData cpp:1877-1883, GetPerObjectStructs cpp:1485-1490),\n * which is why the record exposes Get accessors at all.\n *\n * The HLSL counterpart names are from shadercompiler/tests/RayTracingTest.cpp:654-666,\n * which declares this block field-for-field.\n */\nexport const EveSpaceObject = Object.freeze({\n vs: {\n struct: \"EveSpaceObjectVSData\",\n fields: {\n worldTransform: { type: Types.MATRIX4, default: IDENTITY },\n worldTransformLast: { type: Types.MATRIX4, default: IDENTITY },\n invWorldTransform: { type: Types.MATRIX4, default: IDENTITY },\n // Four independent floats, not a bitfield: .x booster glow\n // intensity, .y activation strength, .z dirt level, .w bounding\n // sphere radius. Constructor value at cpp:195.\n shipData: { type: Types.VECTOR4, default: Object.freeze([1, 1, 0, 1]) },\n clipData: { type: Types.VECTOR4 },\n // Carbon's spelling (sic) - \"ellpsoid\" matches the source struct.\n ellpsoidRadii: { type: Types.VECTOR4 },\n ellpsoidCenter: { type: Types.VECTOR4 },\n // EVE_SPACEOBJECT_CUSTOWMASK_MAX (sic) = 2, EveSpaceObject2.h:49.\n // EveCustomMask::ZeroPerObjectData writes IDENTITY into an unused\n // slot, not zero (EveCustomMask.cpp:88-93).\n customMaskMatrix: { type: Types.MATRIX4, count: 2, default: IDENTITY },\n customMaskData: { type: Types.VECTOR4, count: 2 },\n // GPU ring offsets - engine-owned, no CPU derivation exists.\n boneOffsets: { type: Types.UINT32, count: 4 },\n morphTargetVertexDataOffset: { type: Types.UINT32 },\n morphTargetAnimationDataOffset: { type: Types.UINT32 },\n activeMorphTargetsCount: { type: Types.UINT32 },\n bakedMorphTargetVertexDataOffset: { type: Types.UINT32 },\n customData: { type: Types.VECTOR4, default: Object.freeze([0, 0, 0, 0]) }\n }\n },\n ps: {\n struct: \"EveSpaceObjectPSData\",\n fields: {\n worldTransform: { type: Types.MATRIX4, default: IDENTITY },\n worldTransformLast: { type: Types.MATRIX4, default: IDENTITY },\n invWorldTransform: { type: Types.MATRIX4, default: IDENTITY },\n shipData: { type: Types.VECTOR4, default: Object.freeze([1, 1, 0, 1]) },\n // Clipdata1.xyz / .w - a SIGNED squared radius; the sign carries\n // the inside/outside test (RayTracingTest.cpp:678-679).\n clipSphereCenter: { type: Types.VECTOR3 },\n clipRadiusSq: { type: Types.FLOAT },\n // Miscdata.xyzw - all four lanes used.\n clipRadius2Sq: { type: Types.FLOAT },\n impactDataOffset: { type: Types.FLOAT },\n clipSphereFactor2: { type: Types.FLOAT },\n clipSphereFactor: { type: Types.FLOAT },\n // Tr2ShLightingManager::PACKED_COEFFICIENT_COUNT = 7.\n shLightingCoefficients: { type: Types.VECTOR4, count: 7, default: ZERO4 },\n customMaskMaterialIDs: { type: Types.VECTOR4, count: 2 },\n customMaskTargets: { type: Types.VECTOR4, count: 2 },\n // Both slots packed into one vec4: (u0, v0, u1, v1).\n customMaskClamps: { type: Types.VECTOR4 },\n // EveSpaceObject2 never writes this; the children's literal is the\n // only documented neutral (EveChildMesh.cpp:65).\n screenSize: { type: Types.VECTOR4, default: Object.freeze([0.5, 0.5, 0.5, 1]) },\n customData: { type: Types.VECTOR4, default: Object.freeze([0, 0, 0, 0]) }\n }\n }\n});\n\n\n/**\n * EveTurretSet.h:47 (vs) / :63 (ps). The turret translation and rotation rings\n * are filled for VISIBLE turrets only; the remainder stays allocator garbage.\n */\nexport const EveTurretSet = Object.freeze({\n vs: {\n struct: \"EveTurretSetVSData\",\n fields: {\n baseCutoffData: { type: Types.VECTOR4 },\n turretSetData: { type: Types.VECTOR4 },\n shipMatrix: { type: Types.MATRIX4, default: IDENTITY },\n prevShipMatrix: { type: Types.MATRIX4, default: IDENTITY },\n // GPU bone-ring offsets - engine-owned.\n currentBoneOffset: { type: Types.UINT32 },\n prevBoneOffset: { type: Types.UINT32 },\n _unused: { type: Types.UINT32, count: 2 },\n // EVE_MAX_TURRETS_PER_SET (EveTurretSet.h:43)\n turretTranslation: { type: Types.VECTOR4, count: 24 },\n turretRotation: { type: Types.QUATERNION, count: 24 }\n }\n },\n ps: {\n struct: \"EveTurretSetPSData\",\n fields: {\n shipData: { type: Types.VECTOR4 },\n clipData1: { type: Types.VECTOR4 },\n clipRadius2Sq: { type: Types.FLOAT },\n unused: { type: Types.VECTOR3 },\n shLightingCoefficients: { type: Types.VECTOR4, count: 7, default: ZERO4 }\n }\n }\n});\n\n\n/**\n * EveSpaceObject2.h:143 - the merged VS+PS variant used by the instanced path.\n * Uploaded through a STRUCTURED BUFFER rather than a constant buffer\n * (EveInstancedMeshManager.cpp:69-77), so it carries no register.\n *\n * Field order is NOT the same as the EveSpaceObject VS/PS pair: the five clip\n * scalars sit at fields 6-10 here, before the ellipsoid. Since the upload is a\n * raw memcpy, that order is the contract.\n */\nexport const EveSpacePerObject = Object.freeze({\n shared: {\n struct: \"EveSpacePerObjectData\",\n fields: {\n worldTransform: { type: Types.MATRIX4, default: IDENTITY },\n worldTransformLast: { type: Types.MATRIX4, default: IDENTITY },\n invWorldTransform: { type: Types.MATRIX4, default: IDENTITY },\n // This struct's own initialiser is (0,0,0,0), unlike the\n // EveSpaceObject2 constructor's (1,1,0,1).\n shipData: { type: Types.VECTOR4 },\n clipSphereCenter: { type: Types.VECTOR3 },\n clipRadiusSq: { type: Types.FLOAT },\n clipRadius2Sq: { type: Types.FLOAT },\n impactDataOffset: { type: Types.FLOAT },\n clipSphereFactor2: { type: Types.FLOAT },\n clipSphereFactor: { type: Types.FLOAT },\n ellpsoidRadii: { type: Types.VECTOR4 },\n ellpsoidCenter: { type: Types.VECTOR4 },\n // EveSpaceObject2.h:160 initialises this to all-zero, contradicting\n // EveCustomMask::ZeroPerObjectData's IdentityMatrix. The zero path\n // is the live one, so identity wins; reproduced as written.\n customMaskMatrix: { type: Types.MATRIX4, count: 2, default: IDENTITY },\n customMaskData: { type: Types.VECTOR4, count: 2 },\n customMaskMaterialIDs: { type: Types.VECTOR4, count: 2 },\n customMaskTargets: { type: Types.VECTOR4, count: 2 },\n customMaskClamps: { type: Types.VECTOR4 },\n boneOffsets: { type: Types.UINT32, count: 4 },\n customData: { type: Types.VECTOR4 },\n shLighting: { type: Types.VECTOR4, count: 7, default: ZERO4 }\n }\n }\n});\n\n\n/** Tr2ConstantBufferFormats.h:35 - the generic, non-EVE per-object block. */\n/**\n * Tr2ConstantBufferFormats.h:35. Catalogued but deliberately PRODUCERLESS in\n * this package: its only Carbon filler is `Tr2InteriorPlaceable::GetPerObjectData`\n * (Interior/Tr2InteriorPlaceable.cpp:555-585), and interior placeables are not\n * runtime-trinity classes. The layout lives here because the catalog is the\n * org-wide truth, exported on the `/perobject` subpath; whichever package ports\n * the placeable consumes it from there rather than redeclaring it.\n */\nexport const Tr2PerObject = Object.freeze({\n vs: {\n struct: \"Tr2PerObjectVSData\",\n fields: {\n WorldMat: { type: Types.MATRIX4, default: IDENTITY },\n boundingCylinderLocalHeight: { type: Types.FLOAT },\n boundingCylinderLocalXZCenter: { type: Types.VECTOR2 },\n boundingCylinderRotation: { type: Types.FLOAT }\n }\n }\n});\n\n\nconst GROUPS = Object.freeze({\n EveBasic,\n EveMissileWarhead,\n EveSceneStaticParticles,\n EvePerObject,\n EveLensflare,\n EveSpherePin,\n EveChildSpherePin,\n EveSpaceObjectDecal,\n EveBoosterSet,\n EveChildBulletStorm,\n EveStretch2,\n EveSpaceObject,\n EveTurretSet,\n EveSpacePerObject,\n Tr2PerObject\n});\n\n\n/** Which stages each group key binds to. */\nconst STAGES = Object.freeze({\n vs: Object.freeze([\"vs\"]),\n ps: Object.freeze([\"ps\"]),\n shared: Object.freeze([\"vs\", \"ps\"])\n});\n\n\n/**\n * Resolved per-object layouts, keyed by struct name.\n *\n * Offsets are FLOAT offsets from the start of one record. Carbon's C++ layout\n * needs no padding here because every per-object struct is hand-padded with\n * explicit `_unused` / `padding` members so each float4-sized member already\n * lands on a register boundary; both invariants are asserted at build time.\n */\nexport class CjsPerObjectLayouts\n{\n\n static Types = Types;\n\n static Groups = GROUPS;\n\n /** Resolved layouts by struct name, built once. */\n static #layouts = null;\n\n /**\n * The layout for one struct name, or null when it is not catalogued. A\n * caller must treat null as \"not covered\" and fail rather than guess.\n */\n static Get(struct)\n {\n const layouts = CjsPerObjectLayouts.#Resolved();\n\n return layouts.get(struct) ?? null;\n }\n\n /** Every catalogued struct name. */\n static Names()\n {\n return [...CjsPerObjectLayouts.#Resolved().keys()];\n }\n\n /**\n * A layout in the shape RawData consumes: float offsets keyed by name,\n * plus the stride, stages, and the defaults to apply on allocation.\n *\n * Encodings are the string values of `RawDataType`, written literally\n * rather than imported so this module stays free of a cycle (RawData\n * imports this one for its persistent factory). `per-object-layouts.test.js`\n * asserts the two agree.\n *\n * A default on an array field is repeated across every element: the neutral\n * for a slot - identity for an unused custom mask - applies to every slot,\n * not just the first.\n */\n static ToRawLayout(struct)\n {\n const layout = CjsPerObjectLayouts.Get(struct);\n\n if (!layout)\n {\n return null;\n }\n\n const fields = {};\n const defaults = [];\n\n for (const field of layout.fields.values())\n {\n fields[field.name] = {\n offset: field.offset,\n size: field.size,\n elements: field.count,\n encoding: ENCODINGS[field.type] ?? \"vector\"\n };\n\n if (field.default)\n {\n defaults.push({\n offset: field.offset,\n values: field.count > 1\n ? Array.from({ length: field.count }, () => [ ...field.default ]).flat()\n : [ ...field.default ]\n });\n }\n }\n\n return { fields, stride: layout.stride, stages: layout.stages, defaults };\n }\n\n /** The group a struct belongs to, with its stage key, or null. */\n static Find(struct)\n {\n for (const [group, buffers] of Object.entries(GROUPS))\n {\n for (const [key, buffer] of Object.entries(buffers))\n {\n if (buffer.struct === struct)\n {\n return { group, key, buffer };\n }\n }\n }\n\n return null;\n }\n\n /**\n * The resolved layout map, built once on first use and cached.\n * @returns {Map} struct name -> resolved layout\n */\n static #Resolved()\n {\n if (!CjsPerObjectLayouts.#layouts)\n {\n CjsPerObjectLayouts.#layouts = buildLayouts();\n }\n\n return CjsPerObjectLayouts.#layouts;\n }\n\n}\n\n\n/** Resolves every group's buffers into flat, offset-bearing layouts. */\nfunction buildLayouts()\n{\n const layouts = new Map();\n\n for (const [group, buffers] of Object.entries(GROUPS))\n {\n for (const [key, buffer] of Object.entries(buffers))\n {\n if (layouts.has(buffer.struct))\n {\n throw new Error(`CjsPerObjectLayouts: duplicate struct name \"${buffer.struct}\"`);\n }\n\n layouts.set(buffer.struct, resolveLayout(group, key, buffer));\n }\n }\n\n return layouts;\n}\n\n\n/** Lays out one buffer, asserting Carbon's two register invariants. */\nfunction resolveLayout(group, key, buffer)\n{\n const fields = new Map();\n let offset = 0;\n\n for (const [name, declared] of Object.entries(buffer.fields))\n {\n const lanes = LANES[declared.type];\n\n if (lanes === undefined)\n {\n throw new Error(`CjsPerObjectLayouts: ${buffer.struct}.${name} has unknown type \"${declared.type}\"`);\n }\n\n const count = declared.count ?? 1;\n\n // Carbon hand-pads its per-object structs so no float4-sized member\n // ever needs implicit padding. A catalog entry that breaks that is\n // wrong, so it fails loud rather than silently inserting a gap.\n if (lanes >= 4 && offset % 4)\n {\n throw new Error(\n `CjsPerObjectLayouts: ${buffer.struct}.${name} would start at float ${offset}, `\n + \"which is not a register boundary\"\n );\n }\n\n fields.set(name, {\n name,\n type: declared.type,\n offset,\n size: lanes,\n count,\n default: declared.default ?? null,\n isMatrix: declared.type === Types.MATRIX4,\n isInteger: declared.type === Types.UINT32 || declared.type === Types.INT32\n });\n\n offset += lanes * count;\n }\n\n // Tr2PerObjectData.h:57 - \"Size of per-object data must be a multiple of\n // Vector4\". Reproduced so a bad catalog entry fails at build, not on screen.\n if (offset % 4)\n {\n throw new Error(\n `CjsPerObjectLayouts: ${buffer.struct} is ${offset} floats, not a multiple of Vector4`\n );\n }\n\n return Object.freeze({\n struct: buffer.struct,\n group,\n key,\n stages: STAGES[key] ?? STAGES.vs,\n fields,\n stride: offset,\n registerCount: offset / 4\n });\n}\n"],"names":["Types","Object","freeze","MATRIX4","QUATERNION","VECTOR4","VECTOR3","VECTOR2","FLOAT","UINT32","INT32","LANES","ENCODINGS","ZERO4","IDENTITY","EveBasic","vs","struct","fields","world","type","default","worldLast","worldInverse","EveMissileWarhead","missileSize","EveSceneStaticParticles","lastWorld","EvePerObject","WorldMat","ps","EveLensflare","shared","directionScale","indices","count","EveSpherePin","worldMatrix","pinPosition","pinRotation","pinColor","pinThreshold","pinRadiusPrecalc","pinUV","EveChildSpherePin","EveSpaceObjectDecal","invWorldMatrix","decalMatrix","inverseDecalMatrix","parentBoneMatrix","invParentBoneMatrix","displayData","shipData","clipData","clipRadius2Sq","unused","shLightingCoefficients","EveBoosterSet","shipMatrix","boosterIntensity","shipSpeed","maxBoosterSize","padding","trailsControlPositions","trailsControlNormals","trailIntensity","warpIntensity","padding2","EveChildBulletStorm","worldTransform","effectInfo","targetPositionsWS","EveStretch2","sourceData","destinationData","effectData","EveSpaceObject","worldTransformLast","invWorldTransform","ellpsoidRadii","ellpsoidCenter","customMaskMatrix","customMaskData","boneOffsets","morphTargetVertexDataOffset","morphTargetAnimationDataOffset","activeMorphTargetsCount","bakedMorphTargetVertexDataOffset","customData","clipSphereCenter","clipRadiusSq","impactDataOffset","clipSphereFactor2","clipSphereFactor","customMaskMaterialIDs","customMaskTargets","customMaskClamps","screenSize","EveTurretSet","baseCutoffData","turretSetData","prevShipMatrix","currentBoneOffset","prevBoneOffset","_unused","turretTranslation","turretRotation","clipData1","EveSpacePerObject","shLighting","Tr2PerObject","boundingCylinderLocalHeight","boundingCylinderLocalXZCenter","boundingCylinderRotation","GROUPS","STAGES","CjsPerObjectLayouts","Groups","Get","layouts","get","Names","keys","ToRawLayout","layout","defaults","field","values","name","offset","size","elements","encoding","push","Array","from","length","flat","stride","stages","Find","group","buffers","entries","key","buffer","#Resolved","buildLayouts","Map","has","Error","set","resolveLayout","declared","lanes","undefined","isMatrix","isInteger","registerCount"],"mappings":"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"}
@@ -0,0 +1,434 @@
1
+ import { CjsPerObjectLayouts } from './CjsPerObjectLayouts.js';
2
+
3
+ // GPU-free per-object / per-frame constant data.
4
+ //
5
+ // A RawData is a thin, write-mostly view over a slice of a packed constant
6
+ // buffer: name -> encoded bytes. It is NOT a CjsModel (no persistence, no
7
+ // reactivity) - it is GPU staging. Most records are leased per frame from the
8
+ // arena and consumed by the engine's uploader; a few are PERSISTENT, owned by
9
+ // an object across frames via RawData.create and marked with Invalidate.
10
+ //
11
+ // Why matrices are stored transposed: Carbon transposes every per-object matrix
12
+ // on its way to the GPU (`m_vsData.worldTransform = Transpose( m_worldTransform )`
13
+ // and every other PopulatePerObjectData), because HLSL constant buffers pack
14
+ // column_major by default while Carbon's Matrix is row-major. The requirement is
15
+ // the shader's, not a math-library artifact, so the port pays it identically.
16
+ //
17
+ // Verbs (name ALWAYS first - a keyed store, not a math op):
18
+ // SetAndTranspose(name, value) a MATRIX4 field; PERFORMS the transpose
19
+ // GetTransposed(name) a MATRIX4 field; returns what is stored
20
+ // Set(name, value) / Get(name) everything else; both throw on a matrix
21
+ // Copy(name, out) bytes OUT into a caller-owned buffer
22
+ // ...Index(name, index, ...) one element of an array field
23
+ //
24
+ // Every matrix is stored TRANSPOSED, so Set/Get refuse matrix fields and name
25
+ // the pair to use instead. The orientation is stated at the call site and
26
+ // checked at runtime rather than remembered. There is no SetRaw: its only two
27
+ // uses computed Inverse(Transpose(M)), which equals Transpose(Inverse(M)), so
28
+ // inverting the logical matrix gives the same bytes. See the
29
+ // carbon-math-conventions skill, F6.
30
+ //
31
+ // The indexed forms exist because Carbon fills arrays PARTIALLY - it writes
32
+ // m_turretTranslation[i] for VISIBLE turrets only, and the unwritten tail keeps
33
+ // whatever the arena held. A whole-array write would destroy that parity.
34
+ //
35
+ // Get returns a LIVE reference into the buffer, so writing through it is a
36
+ // zero-copy write. That is deliberate: Carbon hands out a raw pointer into
37
+ // m_psData for exactly this (EveSpaceObject2.cpp:1877-1883).
38
+ //
39
+ // MULTI-PAYLOAD RENDERABLES: Carbon's dominant composite shape is a distinct
40
+ // VS struct + PS struct uploaded as TWO constant buffers (turret, decal,
41
+ // booster, the Tr2PerObjectDataWithPersistentBuffers family). That is TWO
42
+ // Allocs here, returned from GetPerObjectData as a plain record:
43
+ // { vs: store.Alloc("DecalVSPerObjectData"), ps: store.Alloc("DecalPSPerObjectData") }
44
+ // The batch pipeline threads the record through untouched. A payload bound to
45
+ // more than one stage from the SAME bytes (sphere pin, lensflare) stays ONE
46
+ // RawData whose struct is registered with stages: ["vs", "ps"] - the engine
47
+ // reads the binding from GetLayout().stages.
48
+
49
+ /**
50
+ * The encoding KIND of a struct field - a packing directive, not a math type.
51
+ * Selects which encoder writes the bytes. Constants (not bare strings) so a
52
+ * typo throws at the lookup instead of silently packing wrong.
53
+ */
54
+ const RawDataType = Object.freeze({
55
+ /** Square matrix, stored TRANSPOSED (HLSL column_major). N inferred from size. */
56
+ MATRIX: "matrix",
57
+ /** Straight copy - float / vec2 / vec3 / vec4. */
58
+ VECTOR: "vector",
59
+ /** Integer bit-cast into the float buffer's Uint32 lanes (e.g. bone offsets). */
60
+ UINT: "uint",
61
+ /**
62
+ * SIGNED integer bit-cast (two's complement) - e.g. the interior lightCount.
63
+ * Same bytes as UINT for non-negatives; kept distinct so a reflection-based
64
+ * packer can type the lane i32 vs u32.
65
+ */
66
+ INT: "int",
67
+ /**
68
+ * mat4 packed column-stride into 12 floats (Carbon Float4x3; skill gotcha 7).
69
+ *
70
+ * No CATALOGUED struct has a Float4x3 field - Carbon's per-object structs
71
+ * carry bone ring OFFSETS, not the palette itself - so this encoder is
72
+ * currently exercised only by `test/raw-data.test.js`. It is kept rather than
73
+ * removed because the packing rule it encodes is the one that shipped wrong
74
+ * once already (row-stride instead of column-stride, invisible for identity
75
+ * bones), and `Tr2GrannyAnimation` maintains exactly such a palette. If a
76
+ * struct ever declares a Float4x3, this is the encoder it needs.
77
+ */
78
+ MATRIX_3X4: "matrix3x4"
79
+ });
80
+
81
+ /**
82
+ * Encoders: (floats, uints, field, value) -> void. `field` is the resolved
83
+ * layout entry { offset, size, elements, encoding } with offset RELATIVE to
84
+ * the slice start (the views are already sliced to this struct's slot).
85
+ * `size` is the DESTINATION footprint in floats per element.
86
+ */
87
+ const RawDataEncoders = Object.freeze({
88
+ [RawDataType.MATRIX](floats, _uints, field, value) {
89
+ const n = Math.sqrt(field.size);
90
+ for (let element = 0; element < field.elements; element++) {
91
+ const source = element * field.size;
92
+ const destination = field.offset + element * field.size;
93
+
94
+ // Transpose on the shared byte layout: buffer(r,c) = value(c,r). This is
95
+ // exactly Carbon's `= Transpose(m)` staging fill.
96
+ for (let row = 0; row < n; row++) {
97
+ for (let column = 0; column < n; column++) {
98
+ floats[destination + row * n + column] = value[source + column * n + row];
99
+ }
100
+ }
101
+ }
102
+ },
103
+ [RawDataType.VECTOR](floats, _uints, field, value) {
104
+ const total = field.size * field.elements;
105
+ for (let index = 0; index < total; index++) {
106
+ floats[field.offset + index] = value[index];
107
+ }
108
+ },
109
+ [RawDataType.UINT](_floats, uints, field, value) {
110
+ const total = field.size * field.elements;
111
+ for (let index = 0; index < total; index++) {
112
+ uints[field.offset + index] = value[index] >>> 0;
113
+ }
114
+ },
115
+ [RawDataType.INT](_floats, uints, field, value) {
116
+ const total = field.size * field.elements;
117
+
118
+ // Uint32 assignment stores the two's-complement bit pattern, which is
119
+ // exactly what a signed lane needs (-1 -> 0xFFFFFFFF).
120
+ for (let index = 0; index < total; index++) {
121
+ uints[field.offset + index] = value[index] | 0;
122
+ }
123
+ },
124
+ [RawDataType.MATRIX_3X4](floats, _uints, field, value) {
125
+ // Column-stride pack of a 16-float mat4 into 12 floats (size must be 12):
126
+ // rows come from (v0,v4,v8,v12) / (v1,v5,v9,v13) / (v2,v6,v10,v14).
127
+ for (let element = 0; element < field.elements; element++) {
128
+ const source = element * 16;
129
+ const destination = field.offset + element * field.size;
130
+ for (let row = 0; row < 3; row++) {
131
+ floats[destination + row * 4 + 0] = value[source + row + 0];
132
+ floats[destination + row * 4 + 1] = value[source + row + 4];
133
+ floats[destination + row * 4 + 2] = value[source + row + 8];
134
+ floats[destination + row * 4 + 3] = value[source + row + 12];
135
+ }
136
+ }
137
+ }
138
+ });
139
+
140
+ /**
141
+ * A packed constant-data slice bound to a resolved layout. Instances are
142
+ * handed out by a TriPoolAllocator (transient, arena-backed) or constructed
143
+ * directly by an object that owns a persistent buffer.
144
+ */
145
+ class RawData {
146
+ /** Resolved layout: { fields: { name -> { offset, size, elements, encoding } }, stride }. */
147
+ #layout = null;
148
+
149
+ /** Float32 view of this struct's slot (offsets are relative to its start). */
150
+ #floats = null;
151
+
152
+ /** Uint32 view over the SAME bytes, for UINT lanes. */
153
+ #uints = null;
154
+
155
+ /** Whether the payload has changed since an uploader last matched it. */
156
+ #dirty = true;
157
+
158
+ /** Catalogued struct name, when this record was built from one. */
159
+ #struct = null;
160
+
161
+ /**
162
+ * @param {object} layout - resolved layout for one struct
163
+ * @param {Float32Array} floats - the slice (start = struct slot)
164
+ * @param {Uint32Array} uints - Uint32 view over the same slice
165
+ * @param {String} [struct] - catalogued struct name, when there is one
166
+ */
167
+ constructor(layout, floats, uints, struct = null) {
168
+ this.#layout = layout;
169
+ this.#floats = floats;
170
+ this.#uints = uints;
171
+ this.#struct = struct;
172
+ }
173
+
174
+ /** The catalogued struct name, or null for an ad-hoc record. */
175
+ GetStruct() {
176
+ return this.#struct;
177
+ }
178
+
179
+ /** Whether a field exists in the layout. */
180
+ Has(name) {
181
+ return Object.prototype.hasOwnProperty.call(this.#layout.fields, name);
182
+ }
183
+
184
+ /**
185
+ * Resolve a field, optionally narrowed to ONE element of an array field.
186
+ * The narrowed view shifts the offset by element * size and clamps
187
+ * elements to 1, so every verb writes exactly one slot and the unwritten
188
+ * tail keeps its arena bytes (Carbon's visible-turrets-only fill).
189
+ */
190
+ #Field(name, element) {
191
+ const field = this.#layout.fields[name];
192
+ if (!field) {
193
+ throw new Error(`RawData: unknown field "${name}"`);
194
+ }
195
+ if (element === undefined) {
196
+ return field;
197
+ }
198
+ if (!Number.isInteger(element) || element < 0 || element >= field.elements) {
199
+ throw new Error(`RawData: element ${element} is out of range for field "${name}" (elements: ${field.elements})`);
200
+ }
201
+ return {
202
+ offset: field.offset + element * field.size,
203
+ size: field.size,
204
+ elements: 1,
205
+ encoding: field.encoding
206
+ };
207
+ }
208
+
209
+ /**
210
+ * Write a LOGICAL value, encoded per the field's kind (MATRIX transposes,
211
+ * UINT/INT bit-cast, MATRIX_3X4 column-stride packs, VECTOR copies). Pass
212
+ * `element` to write one slot of an array field.
213
+ */
214
+ Set(name, value, element) {
215
+ this.#NotMatrix(name, "Set");
216
+ this.#Write(this.#Field(name, element), name, value);
217
+ }
218
+
219
+ /**
220
+ * Copy a field's packed bytes OUT into a caller-owned buffer. Never returns
221
+ * a reference into the payload. Debug / inspection only - the render path is
222
+ * write-only. Pass `element` to copy one slot of an array field.
223
+ */
224
+ Copy(name, out, element) {
225
+ const field = this.#Field(name, element);
226
+ const total = field.size * field.elements;
227
+ for (let index = 0; index < total; index++) {
228
+ out[index] = this.#floats[field.offset + index];
229
+ }
230
+ return out;
231
+ }
232
+
233
+ /**
234
+ * Write a matrix, transposing it into the buffer.
235
+ *
236
+ * Carbon stores every per-object matrix transposed (`m_vsData.worldTransform
237
+ * = Transpose( m_worldTransform )`), so the record is GPU-form and terminal.
238
+ * This method performs the transpose, which means a producer passes its
239
+ * LOGICAL matrix and cannot forget the step; it also transposes straight into
240
+ * the destination, so no scratch matrix is needed.
241
+ *
242
+ * Matrix fields only. See carbon-math-conventions F1/F6.
243
+ */
244
+ SetAndTranspose(name, value) {
245
+ this.#AssertMatrix(name);
246
+ this.#Write(this.#Field(name, undefined), name, value);
247
+ }
248
+
249
+ /** SetAndTranspose for one element of an array field, e.g. customMaskMatrix. */
250
+ SetAndTransposeIndex(name, index, value) {
251
+ this.#AssertMatrix(name);
252
+ this.#Write(this.#Field(name, index), name, value);
253
+ }
254
+
255
+ /** Write one element of an array field. Non-matrix fields only. */
256
+ SetIndex(name, index, value) {
257
+ this.#NotMatrix(name, "SetIndex");
258
+ this.#Write(this.#Field(name, index), name, value);
259
+ }
260
+
261
+ /** Encodes one value into a resolved field. */
262
+ #Write(field, name, value) {
263
+ const encoder = RawDataEncoders[field.encoding];
264
+ if (!encoder) {
265
+ throw new Error(`RawData: no encoder for encoding "${field.encoding}" (field "${name}")`);
266
+ }
267
+ encoder(this.#floats, this.#uints, field, value);
268
+ }
269
+
270
+ /**
271
+ * A live reference into the buffer for one field - writing through it is a
272
+ * zero-copy write, which is deliberate: Carbon hands out a raw pointer into
273
+ * `m_psData` for exactly this (GetParentData, cpp:1877-1883).
274
+ *
275
+ * Non-matrix fields only; a matrix is transposed and indistinguishable from a
276
+ * logical one, so it must be read through GetTransposed.
277
+ */
278
+ Get(name) {
279
+ this.#NotMatrix(name, "Get");
280
+ return this.#View(this.#Field(name, undefined));
281
+ }
282
+
283
+ /** Get for one element of an array field. Non-matrix fields only. */
284
+ GetIndex(name, index) {
285
+ this.#NotMatrix(name, "GetIndex");
286
+ return this.#View(this.#Field(name, index));
287
+ }
288
+
289
+ /**
290
+ * A live reference to a stored matrix. The value IS transposed - the name
291
+ * says so at the call site, because doing maths with it as though it were
292
+ * logical is silently wrong.
293
+ */
294
+ GetTransposed(name) {
295
+ this.#AssertMatrix(name);
296
+ return this.#View(this.#Field(name, undefined));
297
+ }
298
+
299
+ /** GetTransposed for one element of an array field. */
300
+ GetTransposedIndex(name, index) {
301
+ this.#AssertMatrix(name);
302
+ return this.#View(this.#Field(name, index));
303
+ }
304
+
305
+ /** Copy one element of an array field out into a caller-owned buffer. */
306
+ CopyIndex(name, index, out) {
307
+ return this.Copy(name, out, index);
308
+ }
309
+
310
+ /**
311
+ * Zero every byte - Carbon's `memset( &data, 0, sizeof(data) )`. Declared
312
+ * defaults are NOT re-applied: memset does not respect them either, and a
313
+ * caller that wants them writes them back explicitly, as Carbon does.
314
+ */
315
+ Zero() {
316
+ this.#floats.fill(0);
317
+ this.#dirty = true;
318
+ return this;
319
+ }
320
+
321
+ /**
322
+ * Copy another record's bytes into this one wholesale - Carbon's by-value
323
+ * struct assignment (`vsData = m_vsData`, cpp:1487). Both records must carry
324
+ * the SAME layout: the bytes are copied without re-encoding, so a mismatched
325
+ * stride would silently reinterpret every field after the first difference.
326
+ */
327
+ CopyFrom(other) {
328
+ const source = other?.GetLayout?.();
329
+
330
+ // A store-registered layout and a RawData.create layout are distinct
331
+ // objects for the same struct, so identity cannot be the only test - but
332
+ // the STRIDE cannot stand in for it either: EveSpaceObjectVSData and
333
+ // EveSpaceObjectPSData are both 116 floats and share nothing else. The
334
+ // struct name is the test; an unnamed ad-hoc record needs the same layout
335
+ // object.
336
+ const sameStruct = this.#struct !== null && other.GetStruct?.() === this.#struct;
337
+ if (!source || !sameStruct && source !== this.#layout) {
338
+ throw new Error(`RawData: CopyFrom requires a record of the same struct (this "${this.#struct}", other "${other?.GetStruct?.() ?? "unknown"}")`);
339
+ }
340
+ this.#floats.set(other.GetData());
341
+ this.#dirty = true;
342
+ return this;
343
+ }
344
+
345
+ /** A Float32 view over one field's lanes, sharing the record's bytes. */
346
+ #View(field) {
347
+ const total = field.size * field.elements;
348
+ return this.#floats.subarray(field.offset, field.offset + total);
349
+ }
350
+
351
+ /** Asserts a field IS a matrix. */
352
+ #AssertMatrix(name) {
353
+ const field = this.#Field(name, undefined);
354
+ if (field.encoding !== RawDataType.MATRIX) {
355
+ throw new Error(`RawData: field "${name}" is "${field.encoding}", not a matrix - use Set/Get, not the transposed pair`);
356
+ }
357
+ }
358
+
359
+ /** Asserts a field is NOT a matrix, so the orientation cannot be lost. */
360
+ #NotMatrix(name, verb) {
361
+ const field = this.#Field(name, undefined);
362
+ if (field.encoding === RawDataType.MATRIX) {
363
+ throw new Error(`RawData: field "${name}" is a matrix and is stored TRANSPOSED - ` + `use ${verb.startsWith("Set") ? "SetAndTranspose" : "GetTransposed"}, not ${verb}`);
364
+ }
365
+ }
366
+
367
+ /**
368
+ * Marks the payload as changed since the engine last uploaded it.
369
+ *
370
+ * Only meaningful for a PERSISTENT record - one owned by an object across
371
+ * frames rather than leased from the arena. Carbon's equivalent is
372
+ * `Tr2PersistentPerObjectData::InvalidateBufferData`, called once per frame
373
+ * from the owner's async update (EveSpaceObject2.cpp:626-627); when the flag
374
+ * is clear the engine rebinds the existing GPU buffer with no lock and no
375
+ * memcpy (Tr2PersistentPerObjectData.h:118-124).
376
+ *
377
+ * A transient arena record needs none of this - it is filled and consumed
378
+ * within the frame - so the flag simply stays true there.
379
+ */
380
+ Invalidate() {
381
+ this.#dirty = true;
382
+ return this;
383
+ }
384
+
385
+ /** Whether the payload has changed since ClearDirty. */
386
+ IsDirty() {
387
+ return this.#dirty;
388
+ }
389
+
390
+ /** Called by an uploader once the GPU buffer matches this payload. */
391
+ ClearDirty() {
392
+ this.#dirty = false;
393
+ return this;
394
+ }
395
+
396
+ /**
397
+ * A PERSISTENT record: one this object owns across frames, with its own
398
+ * buffer, outside the arena.
399
+ *
400
+ * This is Carbon's second per-object shape. Most payloads are leased from the
401
+ * frame pool and die at Reset, but five types keep theirs as members because
402
+ * the values are stable across a frame AND are read back - EveSpaceObject2
403
+ * reads its own stored matrices (cpp:3747) and hands shLighting to
404
+ * attachments as a live pointer (cpp:1877-1883). Those are the records that
405
+ * want Get/GetTransposed.
406
+ *
407
+ * Defaults are applied once here rather than per allocation.
408
+ */
409
+ static create(struct) {
410
+ const layout = CjsPerObjectLayouts.ToRawLayout(struct);
411
+ if (!layout) {
412
+ throw new Error(`RawData: struct "${struct}" is not in CjsPerObjectLayouts`);
413
+ }
414
+ const floats = new Float32Array(layout.stride);
415
+ const uints = new Uint32Array(floats.buffer);
416
+ for (const preset of layout.defaults) {
417
+ floats.set(preset.values, preset.offset);
418
+ }
419
+ return new RawData(layout, floats, uints, struct);
420
+ }
421
+
422
+ /** The packed Float32 slice - what the engine uploader memcpys/binds. */
423
+ GetData() {
424
+ return this.#floats;
425
+ }
426
+
427
+ /** The resolved layout (offsets/sizes/encodings) - the engine's bind map. */
428
+ GetLayout() {
429
+ return this.#layout;
430
+ }
431
+ }
432
+
433
+ export { RawData, RawDataEncoders, RawDataType };
434
+ //# sourceMappingURL=RawData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RawData.js","sources":["../../../../src/trinityCore/rawData/RawData.js"],"sourcesContent":["import { CjsPerObjectLayouts } from \"./CjsPerObjectLayouts.js\";\n\n\n// GPU-free per-object / per-frame constant data.\n//\n// A RawData is a thin, write-mostly view over a slice of a packed constant\n// buffer: name -> encoded bytes. It is NOT a CjsModel (no persistence, no\n// reactivity) - it is GPU staging. Most records are leased per frame from the\n// arena and consumed by the engine's uploader; a few are PERSISTENT, owned by\n// an object across frames via RawData.create and marked with Invalidate.\n//\n// Why matrices are stored transposed: Carbon transposes every per-object matrix\n// on its way to the GPU (`m_vsData.worldTransform = Transpose( m_worldTransform )`\n// and every other PopulatePerObjectData), because HLSL constant buffers pack\n// column_major by default while Carbon's Matrix is row-major. The requirement is\n// the shader's, not a math-library artifact, so the port pays it identically.\n//\n// Verbs (name ALWAYS first - a keyed store, not a math op):\n// SetAndTranspose(name, value) a MATRIX4 field; PERFORMS the transpose\n// GetTransposed(name) a MATRIX4 field; returns what is stored\n// Set(name, value) / Get(name) everything else; both throw on a matrix\n// Copy(name, out) bytes OUT into a caller-owned buffer\n// ...Index(name, index, ...) one element of an array field\n//\n// Every matrix is stored TRANSPOSED, so Set/Get refuse matrix fields and name\n// the pair to use instead. The orientation is stated at the call site and\n// checked at runtime rather than remembered. There is no SetRaw: its only two\n// uses computed Inverse(Transpose(M)), which equals Transpose(Inverse(M)), so\n// inverting the logical matrix gives the same bytes. See the\n// carbon-math-conventions skill, F6.\n//\n// The indexed forms exist because Carbon fills arrays PARTIALLY - it writes\n// m_turretTranslation[i] for VISIBLE turrets only, and the unwritten tail keeps\n// whatever the arena held. A whole-array write would destroy that parity.\n//\n// Get returns a LIVE reference into the buffer, so writing through it is a\n// zero-copy write. That is deliberate: Carbon hands out a raw pointer into\n// m_psData for exactly this (EveSpaceObject2.cpp:1877-1883).\n//\n// MULTI-PAYLOAD RENDERABLES: Carbon's dominant composite shape is a distinct\n// VS struct + PS struct uploaded as TWO constant buffers (turret, decal,\n// booster, the Tr2PerObjectDataWithPersistentBuffers family). That is TWO\n// Allocs here, returned from GetPerObjectData as a plain record:\n// { vs: store.Alloc(\"DecalVSPerObjectData\"), ps: store.Alloc(\"DecalPSPerObjectData\") }\n// The batch pipeline threads the record through untouched. A payload bound to\n// more than one stage from the SAME bytes (sphere pin, lensflare) stays ONE\n// RawData whose struct is registered with stages: [\"vs\", \"ps\"] - the engine\n// reads the binding from GetLayout().stages.\n\n/**\n * The encoding KIND of a struct field - a packing directive, not a math type.\n * Selects which encoder writes the bytes. Constants (not bare strings) so a\n * typo throws at the lookup instead of silently packing wrong.\n */\nexport const RawDataType = Object.freeze({\n /** Square matrix, stored TRANSPOSED (HLSL column_major). N inferred from size. */\n MATRIX: \"matrix\",\n\n /** Straight copy - float / vec2 / vec3 / vec4. */\n VECTOR: \"vector\",\n\n /** Integer bit-cast into the float buffer's Uint32 lanes (e.g. bone offsets). */\n UINT: \"uint\",\n\n /**\n * SIGNED integer bit-cast (two's complement) - e.g. the interior lightCount.\n * Same bytes as UINT for non-negatives; kept distinct so a reflection-based\n * packer can type the lane i32 vs u32.\n */\n INT: \"int\",\n\n /**\n * mat4 packed column-stride into 12 floats (Carbon Float4x3; skill gotcha 7).\n *\n * No CATALOGUED struct has a Float4x3 field - Carbon's per-object structs\n * carry bone ring OFFSETS, not the palette itself - so this encoder is\n * currently exercised only by `test/raw-data.test.js`. It is kept rather than\n * removed because the packing rule it encodes is the one that shipped wrong\n * once already (row-stride instead of column-stride, invisible for identity\n * bones), and `Tr2GrannyAnimation` maintains exactly such a palette. If a\n * struct ever declares a Float4x3, this is the encoder it needs.\n */\n MATRIX_3X4: \"matrix3x4\"\n});\n\n/**\n * Encoders: (floats, uints, field, value) -> void. `field` is the resolved\n * layout entry { offset, size, elements, encoding } with offset RELATIVE to\n * the slice start (the views are already sliced to this struct's slot).\n * `size` is the DESTINATION footprint in floats per element.\n */\nexport const RawDataEncoders = Object.freeze({\n [RawDataType.MATRIX](floats, _uints, field, value)\n {\n const n = Math.sqrt(field.size);\n\n for (let element = 0; element < field.elements; element++)\n {\n const source = element * field.size;\n const destination = field.offset + element * field.size;\n\n // Transpose on the shared byte layout: buffer(r,c) = value(c,r). This is\n // exactly Carbon's `= Transpose(m)` staging fill.\n for (let row = 0; row < n; row++)\n {\n for (let column = 0; column < n; column++)\n {\n floats[destination + row * n + column] = value[source + column * n + row];\n }\n }\n }\n },\n\n [RawDataType.VECTOR](floats, _uints, field, value)\n {\n const total = field.size * field.elements;\n\n for (let index = 0; index < total; index++)\n {\n floats[field.offset + index] = value[index];\n }\n },\n\n [RawDataType.UINT](_floats, uints, field, value)\n {\n const total = field.size * field.elements;\n\n for (let index = 0; index < total; index++)\n {\n uints[field.offset + index] = value[index] >>> 0;\n }\n },\n\n [RawDataType.INT](_floats, uints, field, value)\n {\n const total = field.size * field.elements;\n\n // Uint32 assignment stores the two's-complement bit pattern, which is\n // exactly what a signed lane needs (-1 -> 0xFFFFFFFF).\n for (let index = 0; index < total; index++)\n {\n uints[field.offset + index] = value[index] | 0;\n }\n },\n\n [RawDataType.MATRIX_3X4](floats, _uints, field, value)\n {\n // Column-stride pack of a 16-float mat4 into 12 floats (size must be 12):\n // rows come from (v0,v4,v8,v12) / (v1,v5,v9,v13) / (v2,v6,v10,v14).\n for (let element = 0; element < field.elements; element++)\n {\n const source = element * 16;\n const destination = field.offset + element * field.size;\n\n for (let row = 0; row < 3; row++)\n {\n floats[destination + row * 4 + 0] = value[source + row + 0];\n floats[destination + row * 4 + 1] = value[source + row + 4];\n floats[destination + row * 4 + 2] = value[source + row + 8];\n floats[destination + row * 4 + 3] = value[source + row + 12];\n }\n }\n }\n});\n\n/**\n * A packed constant-data slice bound to a resolved layout. Instances are\n * handed out by a TriPoolAllocator (transient, arena-backed) or constructed\n * directly by an object that owns a persistent buffer.\n */\nexport class RawData\n{\n /** Resolved layout: { fields: { name -> { offset, size, elements, encoding } }, stride }. */\n #layout = null;\n\n /** Float32 view of this struct's slot (offsets are relative to its start). */\n #floats = null;\n\n /** Uint32 view over the SAME bytes, for UINT lanes. */\n #uints = null;\n\n /** Whether the payload has changed since an uploader last matched it. */\n #dirty = true;\n\n /** Catalogued struct name, when this record was built from one. */\n #struct = null;\n\n /**\n * @param {object} layout - resolved layout for one struct\n * @param {Float32Array} floats - the slice (start = struct slot)\n * @param {Uint32Array} uints - Uint32 view over the same slice\n * @param {String} [struct] - catalogued struct name, when there is one\n */\n constructor(layout, floats, uints, struct = null)\n {\n this.#layout = layout;\n this.#floats = floats;\n this.#uints = uints;\n this.#struct = struct;\n }\n\n /** The catalogued struct name, or null for an ad-hoc record. */\n GetStruct()\n {\n return this.#struct;\n }\n\n /** Whether a field exists in the layout. */\n Has(name)\n {\n return Object.prototype.hasOwnProperty.call(this.#layout.fields, name);\n }\n\n /**\n * Resolve a field, optionally narrowed to ONE element of an array field.\n * The narrowed view shifts the offset by element * size and clamps\n * elements to 1, so every verb writes exactly one slot and the unwritten\n * tail keeps its arena bytes (Carbon's visible-turrets-only fill).\n */\n #Field(name, element)\n {\n const field = this.#layout.fields[name];\n\n if (!field)\n {\n throw new Error(`RawData: unknown field \"${name}\"`);\n }\n\n if (element === undefined)\n {\n return field;\n }\n\n if (!Number.isInteger(element) || element < 0 || element >= field.elements)\n {\n throw new Error(`RawData: element ${element} is out of range for field \"${name}\" (elements: ${field.elements})`);\n }\n\n return {\n offset: field.offset + element * field.size,\n size: field.size,\n elements: 1,\n encoding: field.encoding\n };\n }\n\n /**\n * Write a LOGICAL value, encoded per the field's kind (MATRIX transposes,\n * UINT/INT bit-cast, MATRIX_3X4 column-stride packs, VECTOR copies). Pass\n * `element` to write one slot of an array field.\n */\n Set(name, value, element)\n {\n this.#NotMatrix(name, \"Set\");\n this.#Write(this.#Field(name, element), name, value);\n }\n\n /**\n * Copy a field's packed bytes OUT into a caller-owned buffer. Never returns\n * a reference into the payload. Debug / inspection only - the render path is\n * write-only. Pass `element` to copy one slot of an array field.\n */\n Copy(name, out, element)\n {\n const field = this.#Field(name, element);\n const total = field.size * field.elements;\n\n for (let index = 0; index < total; index++)\n {\n out[index] = this.#floats[field.offset + index];\n }\n\n return out;\n }\n\n /**\n * Write a matrix, transposing it into the buffer.\n *\n * Carbon stores every per-object matrix transposed (`m_vsData.worldTransform\n * = Transpose( m_worldTransform )`), so the record is GPU-form and terminal.\n * This method performs the transpose, which means a producer passes its\n * LOGICAL matrix and cannot forget the step; it also transposes straight into\n * the destination, so no scratch matrix is needed.\n *\n * Matrix fields only. See carbon-math-conventions F1/F6.\n */\n SetAndTranspose(name, value)\n {\n this.#AssertMatrix(name);\n this.#Write(this.#Field(name, undefined), name, value);\n }\n\n /** SetAndTranspose for one element of an array field, e.g. customMaskMatrix. */\n SetAndTransposeIndex(name, index, value)\n {\n this.#AssertMatrix(name);\n this.#Write(this.#Field(name, index), name, value);\n }\n\n /** Write one element of an array field. Non-matrix fields only. */\n SetIndex(name, index, value)\n {\n this.#NotMatrix(name, \"SetIndex\");\n this.#Write(this.#Field(name, index), name, value);\n }\n\n /** Encodes one value into a resolved field. */\n #Write(field, name, value)\n {\n const encoder = RawDataEncoders[field.encoding];\n\n if (!encoder)\n {\n throw new Error(`RawData: no encoder for encoding \"${field.encoding}\" (field \"${name}\")`);\n }\n\n encoder(this.#floats, this.#uints, field, value);\n }\n\n /**\n * A live reference into the buffer for one field - writing through it is a\n * zero-copy write, which is deliberate: Carbon hands out a raw pointer into\n * `m_psData` for exactly this (GetParentData, cpp:1877-1883).\n *\n * Non-matrix fields only; a matrix is transposed and indistinguishable from a\n * logical one, so it must be read through GetTransposed.\n */\n Get(name)\n {\n this.#NotMatrix(name, \"Get\");\n\n return this.#View(this.#Field(name, undefined));\n }\n\n /** Get for one element of an array field. Non-matrix fields only. */\n GetIndex(name, index)\n {\n this.#NotMatrix(name, \"GetIndex\");\n\n return this.#View(this.#Field(name, index));\n }\n\n /**\n * A live reference to a stored matrix. The value IS transposed - the name\n * says so at the call site, because doing maths with it as though it were\n * logical is silently wrong.\n */\n GetTransposed(name)\n {\n this.#AssertMatrix(name);\n\n return this.#View(this.#Field(name, undefined));\n }\n\n /** GetTransposed for one element of an array field. */\n GetTransposedIndex(name, index)\n {\n this.#AssertMatrix(name);\n\n return this.#View(this.#Field(name, index));\n }\n\n /** Copy one element of an array field out into a caller-owned buffer. */\n CopyIndex(name, index, out)\n {\n return this.Copy(name, out, index);\n }\n\n /**\n * Zero every byte - Carbon's `memset( &data, 0, sizeof(data) )`. Declared\n * defaults are NOT re-applied: memset does not respect them either, and a\n * caller that wants them writes them back explicitly, as Carbon does.\n */\n Zero()\n {\n this.#floats.fill(0);\n this.#dirty = true;\n\n return this;\n }\n\n /**\n * Copy another record's bytes into this one wholesale - Carbon's by-value\n * struct assignment (`vsData = m_vsData`, cpp:1487). Both records must carry\n * the SAME layout: the bytes are copied without re-encoding, so a mismatched\n * stride would silently reinterpret every field after the first difference.\n */\n CopyFrom(other)\n {\n const source = other?.GetLayout?.();\n\n // A store-registered layout and a RawData.create layout are distinct\n // objects for the same struct, so identity cannot be the only test - but\n // the STRIDE cannot stand in for it either: EveSpaceObjectVSData and\n // EveSpaceObjectPSData are both 116 floats and share nothing else. The\n // struct name is the test; an unnamed ad-hoc record needs the same layout\n // object.\n const sameStruct = this.#struct !== null && other.GetStruct?.() === this.#struct;\n\n if (!source || (!sameStruct && source !== this.#layout))\n {\n throw new Error(\n `RawData: CopyFrom requires a record of the same struct (this \"${this.#struct}\", other \"${other?.GetStruct?.() ?? \"unknown\"}\")`\n );\n }\n\n this.#floats.set(other.GetData());\n this.#dirty = true;\n\n return this;\n }\n\n /** A Float32 view over one field's lanes, sharing the record's bytes. */\n #View(field)\n {\n const total = field.size * field.elements;\n\n return this.#floats.subarray(field.offset, field.offset + total);\n }\n\n /** Asserts a field IS a matrix. */\n #AssertMatrix(name)\n {\n const field = this.#Field(name, undefined);\n\n if (field.encoding !== RawDataType.MATRIX)\n {\n throw new Error(\n `RawData: field \"${name}\" is \"${field.encoding}\", not a matrix - use Set/Get, not the transposed pair`\n );\n }\n }\n\n /** Asserts a field is NOT a matrix, so the orientation cannot be lost. */\n #NotMatrix(name, verb)\n {\n const field = this.#Field(name, undefined);\n\n if (field.encoding === RawDataType.MATRIX)\n {\n throw new Error(\n `RawData: field \"${name}\" is a matrix and is stored TRANSPOSED - `\n + `use ${verb.startsWith(\"Set\") ? \"SetAndTranspose\" : \"GetTransposed\"}, not ${verb}`\n );\n }\n }\n\n /**\n * Marks the payload as changed since the engine last uploaded it.\n *\n * Only meaningful for a PERSISTENT record - one owned by an object across\n * frames rather than leased from the arena. Carbon's equivalent is\n * `Tr2PersistentPerObjectData::InvalidateBufferData`, called once per frame\n * from the owner's async update (EveSpaceObject2.cpp:626-627); when the flag\n * is clear the engine rebinds the existing GPU buffer with no lock and no\n * memcpy (Tr2PersistentPerObjectData.h:118-124).\n *\n * A transient arena record needs none of this - it is filled and consumed\n * within the frame - so the flag simply stays true there.\n */\n Invalidate()\n {\n this.#dirty = true;\n\n return this;\n }\n\n /** Whether the payload has changed since ClearDirty. */\n IsDirty()\n {\n return this.#dirty;\n }\n\n /** Called by an uploader once the GPU buffer matches this payload. */\n ClearDirty()\n {\n this.#dirty = false;\n\n return this;\n }\n\n /**\n * A PERSISTENT record: one this object owns across frames, with its own\n * buffer, outside the arena.\n *\n * This is Carbon's second per-object shape. Most payloads are leased from the\n * frame pool and die at Reset, but five types keep theirs as members because\n * the values are stable across a frame AND are read back - EveSpaceObject2\n * reads its own stored matrices (cpp:3747) and hands shLighting to\n * attachments as a live pointer (cpp:1877-1883). Those are the records that\n * want Get/GetTransposed.\n *\n * Defaults are applied once here rather than per allocation.\n */\n static create(struct)\n {\n const layout = CjsPerObjectLayouts.ToRawLayout(struct);\n\n if (!layout)\n {\n throw new Error(`RawData: struct \"${struct}\" is not in CjsPerObjectLayouts`);\n }\n\n const floats = new Float32Array(layout.stride);\n const uints = new Uint32Array(floats.buffer);\n\n for (const preset of layout.defaults)\n {\n floats.set(preset.values, preset.offset);\n }\n\n return new RawData(layout, floats, uints, struct);\n }\n\n /** The packed Float32 slice - what the engine uploader memcpys/binds. */\n GetData()\n {\n return this.#floats;\n }\n\n /** The resolved layout (offsets/sizes/encodings) - the engine's bind map. */\n GetLayout()\n {\n return this.#layout;\n }\n}\n"],"names":["RawDataType","Object","freeze","MATRIX","VECTOR","UINT","INT","MATRIX_3X4","RawDataEncoders","floats","_uints","field","value","n","Math","sqrt","size","element","elements","source","destination","offset","row","column","total","index","_floats","uints","RawData","constructor","layout","struct","GetStruct","Has","name","prototype","hasOwnProperty","call","fields","#Field","Error","undefined","Number","isInteger","encoding","Set","Copy","out","SetAndTranspose","SetAndTransposeIndex","SetIndex","#Write","encoder","Get","GetIndex","GetTransposed","GetTransposedIndex","CopyIndex","Zero","fill","CopyFrom","other","GetLayout","sameStruct","set","GetData","#View","subarray","#AssertMatrix","#NotMatrix","verb","startsWith","Invalidate","IsDirty","ClearDirty","create","CjsPerObjectLayouts","ToRawLayout","Float32Array","stride","Uint32Array","buffer","preset","defaults","values"],"mappings":"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"}