@carbonenginejs/runtime-trinity 0.6.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 (1087) 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 +10 -0
  7. package/dist/controllers/Tr2ActionAnimateCurveSet.js.map +1 -1
  8. package/dist/controllers/Tr2ActionAnimateValue.js +26 -0
  9. package/dist/controllers/Tr2ActionAnimateValue.js.map +1 -1
  10. package/dist/controllers/Tr2ActionBindRTPC.js +11 -0
  11. package/dist/controllers/Tr2ActionBindRTPC.js.map +1 -1
  12. package/dist/controllers/Tr2ActionCallback.js +5 -0
  13. package/dist/controllers/Tr2ActionCallback.js.map +1 -1
  14. package/dist/controllers/Tr2ActionChildEffect.js +63 -0
  15. package/dist/controllers/Tr2ActionChildEffect.js.map +1 -1
  16. package/dist/controllers/Tr2ActionOverlay.js +68 -0
  17. package/dist/controllers/Tr2ActionOverlay.js.map +1 -1
  18. package/dist/controllers/Tr2ActionPlayCurveSet.js +16 -0
  19. package/dist/controllers/Tr2ActionPlayCurveSet.js.map +1 -1
  20. package/dist/controllers/Tr2ActionPlayMeshAnimation.js +29 -0
  21. package/dist/controllers/Tr2ActionPlayMeshAnimation.js.map +1 -1
  22. package/dist/controllers/Tr2ActionPlaySound.js +11 -0
  23. package/dist/controllers/Tr2ActionPlaySound.js.map +1 -1
  24. package/dist/controllers/Tr2ActionPython.js +11 -0
  25. package/dist/controllers/Tr2ActionPython.js.map +1 -1
  26. package/dist/controllers/Tr2ActionResetClipSphereCenter.js +17 -0
  27. package/dist/controllers/Tr2ActionResetClipSphereCenter.js.map +1 -1
  28. package/dist/controllers/Tr2ActionSetAttenuationScaling.js +5 -0
  29. package/dist/controllers/Tr2ActionSetAttenuationScaling.js.map +1 -1
  30. package/dist/controllers/Tr2ActionSetAudioEmitterPrefix.js +5 -0
  31. package/dist/controllers/Tr2ActionSetAudioEmitterPrefix.js.map +1 -1
  32. package/dist/controllers/Tr2ActionSetAudioSwitch.js +5 -0
  33. package/dist/controllers/Tr2ActionSetAudioSwitch.js.map +1 -1
  34. package/dist/controllers/Tr2ActionSetExternalControllerVariable.js +23 -0
  35. package/dist/controllers/Tr2ActionSetExternalControllerVariable.js.map +1 -1
  36. package/dist/controllers/Tr2ActionSetShaderOption.js +5 -0
  37. package/dist/controllers/Tr2ActionSetShaderOption.js.map +1 -1
  38. package/dist/controllers/Tr2ActionSetValue.js +35 -0
  39. package/dist/controllers/Tr2ActionSetValue.js.map +1 -1
  40. package/dist/controllers/Tr2ActionSpawnParticles.js +10 -0
  41. package/dist/controllers/Tr2ActionSpawnParticles.js.map +1 -1
  42. package/dist/controllers/Tr2BindingPoint.js +67 -0
  43. package/dist/controllers/Tr2BindingPoint.js.map +1 -1
  44. package/dist/controllers/Tr2Controller.js +37 -0
  45. package/dist/controllers/Tr2Controller.js.map +1 -1
  46. package/dist/controllers/Tr2ControllerEventHandler.js +10 -0
  47. package/dist/controllers/Tr2ControllerEventHandler.js.map +1 -1
  48. package/dist/controllers/Tr2ControllerExpression.js +17 -0
  49. package/dist/controllers/Tr2ControllerExpression.js.map +1 -1
  50. package/dist/controllers/Tr2ControllerFloatVariable.js +6 -0
  51. package/dist/controllers/Tr2ControllerFloatVariable.js.map +1 -1
  52. package/dist/controllers/Tr2ControllerReference.js +11 -0
  53. package/dist/controllers/Tr2ControllerReference.js.map +1 -1
  54. package/dist/controllers/Tr2StateMachine.js +17 -0
  55. package/dist/controllers/Tr2StateMachine.js.map +1 -1
  56. package/dist/controllers/Tr2StateMachineState.js +47 -0
  57. package/dist/controllers/Tr2StateMachineState.js.map +1 -1
  58. package/dist/controllers/Tr2StateMachineTransition.js +29 -0
  59. package/dist/controllers/Tr2StateMachineTransition.js.map +1 -1
  60. package/dist/controllers/Tr2SyncToAnimation.js +5 -0
  61. package/dist/controllers/Tr2SyncToAnimation.js.map +1 -1
  62. package/dist/controllers/Tr2TimelineController.js +61 -0
  63. package/dist/controllers/Tr2TimelineController.js.map +1 -1
  64. package/dist/controllers/contracts.js +24 -1
  65. package/dist/controllers/contracts.js.map +1 -1
  66. package/dist/controllers/index.js +1 -1
  67. package/dist/curves/CjsGrannyCurves.js +150 -0
  68. package/dist/curves/CjsGrannyCurves.js.map +1 -1
  69. package/dist/curves/Tr2BoneMatrixCurve.js +23 -0
  70. package/dist/curves/Tr2BoneMatrixCurve.js.map +1 -1
  71. package/dist/curves/Tr2CameraFollowCurveKey.js +6 -0
  72. package/dist/curves/Tr2CameraFollowCurveKey.js.map +1 -1
  73. package/dist/curves/Tr2CurveColor.js +6 -0
  74. package/dist/curves/Tr2CurveColor.js.map +1 -1
  75. package/dist/curves/Tr2CurveColorMixer.js +6 -0
  76. package/dist/curves/Tr2CurveColorMixer.js.map +1 -1
  77. package/dist/curves/Tr2CurveCombiner.js +5 -0
  78. package/dist/curves/Tr2CurveCombiner.js.map +1 -1
  79. package/dist/curves/Tr2CurveConstant.js +16 -0
  80. package/dist/curves/Tr2CurveConstant.js.map +1 -1
  81. package/dist/curves/Tr2CurveEulerRotation.js +5 -0
  82. package/dist/curves/Tr2CurveEulerRotation.js.map +1 -1
  83. package/dist/curves/Tr2CurveEulerRotationExpression.js +66 -0
  84. package/dist/curves/Tr2CurveEulerRotationExpression.js.map +1 -1
  85. package/dist/curves/Tr2CurveQuaternion.js +5 -0
  86. package/dist/curves/Tr2CurveQuaternion.js.map +1 -1
  87. package/dist/curves/Tr2CurveQuaternionKey.js +5 -0
  88. package/dist/curves/Tr2CurveQuaternionKey.js.map +1 -1
  89. package/dist/curves/Tr2CurveRandomAxisRotation.js +28 -0
  90. package/dist/curves/Tr2CurveRandomAxisRotation.js.map +1 -1
  91. package/dist/curves/Tr2CurveScalar.js +35 -0
  92. package/dist/curves/Tr2CurveScalar.js.map +1 -1
  93. package/dist/curves/Tr2CurveScalarExpression.js +11 -0
  94. package/dist/curves/Tr2CurveScalarExpression.js.map +1 -1
  95. package/dist/curves/Tr2CurveScalarKey.js +6 -0
  96. package/dist/curves/Tr2CurveScalarKey.js.map +1 -1
  97. package/dist/curves/Tr2CurveSetRange.js +5 -0
  98. package/dist/curves/Tr2CurveSetRange.js.map +1 -1
  99. package/dist/curves/Tr2CurveVector2.js +5 -0
  100. package/dist/curves/Tr2CurveVector2.js.map +1 -1
  101. package/dist/curves/Tr2CurveVector3.js +5 -0
  102. package/dist/curves/Tr2CurveVector3.js.map +1 -1
  103. package/dist/curves/Tr2CurveVector3Expression.js +71 -0
  104. package/dist/curves/Tr2CurveVector3Expression.js.map +1 -1
  105. package/dist/curves/Tr2CurveVector3Lerp.js +6 -0
  106. package/dist/curves/Tr2CurveVector3Lerp.js.map +1 -1
  107. package/dist/curves/Tr2DistanceTracker.js +6 -0
  108. package/dist/curves/Tr2DistanceTracker.js.map +1 -1
  109. package/dist/curves/Tr2FollowCurve.js +6 -0
  110. package/dist/curves/Tr2FollowCurve.js.map +1 -1
  111. package/dist/curves/Tr2GrannyEventTrack.js +5 -0
  112. package/dist/curves/Tr2GrannyEventTrack.js.map +1 -1
  113. package/dist/curves/Tr2GrannyTrack.js +6 -0
  114. package/dist/curves/Tr2GrannyTrack.js.map +1 -1
  115. package/dist/curves/Tr2GrannyTransformTrack.js +6 -0
  116. package/dist/curves/Tr2GrannyTransformTrack.js.map +1 -1
  117. package/dist/curves/Tr2GrannyVectorTrack.js +5 -0
  118. package/dist/curves/Tr2GrannyVectorTrack.js.map +1 -1
  119. package/dist/curves/Tr2MatrixKey.js +5 -0
  120. package/dist/curves/Tr2MatrixKey.js.map +1 -1
  121. package/dist/curves/Tr2ObjectFollowCurveKey.js +6 -0
  122. package/dist/curves/Tr2ObjectFollowCurveKey.js.map +1 -1
  123. package/dist/curves/Tr2QuaternionLerpCurve.js +6 -0
  124. package/dist/curves/Tr2QuaternionLerpCurve.js.map +1 -1
  125. package/dist/curves/Tr2RotationAdapter.js +6 -0
  126. package/dist/curves/Tr2RotationAdapter.js.map +1 -1
  127. package/dist/curves/Tr2ScalarExprKey.js +18 -0
  128. package/dist/curves/Tr2ScalarExprKey.js.map +1 -1
  129. package/dist/curves/Tr2ScalarExprKeyCurve.js +23 -0
  130. package/dist/curves/Tr2ScalarExprKeyCurve.js.map +1 -1
  131. package/dist/curves/Tr2ScalarFader.js +11 -0
  132. package/dist/curves/Tr2ScalarFader.js.map +1 -1
  133. package/dist/curves/Tr2TranslationAdapter.js +6 -0
  134. package/dist/curves/Tr2TranslationAdapter.js.map +1 -1
  135. package/dist/curves/TriColorSequencer.js +6 -0
  136. package/dist/curves/TriColorSequencer.js.map +1 -1
  137. package/dist/curves/TriCurveSet.js +23 -0
  138. package/dist/curves/TriCurveSet.js.map +1 -1
  139. package/dist/curves/TriEventCurve.js +23 -0
  140. package/dist/curves/TriEventCurve.js.map +1 -1
  141. package/dist/curves/TriEventKey.js +5 -0
  142. package/dist/curves/TriEventKey.js.map +1 -1
  143. package/dist/curves/TriPerlinCurve.js +30 -0
  144. package/dist/curves/TriPerlinCurve.js.map +1 -1
  145. package/dist/curves/TriVectorSequencer.js +6 -0
  146. package/dist/curves/TriVectorSequencer.js.map +1 -1
  147. package/dist/eve/AudioGameObject.js +89 -1
  148. package/dist/eve/AudioGameObject.js.map +1 -1
  149. package/dist/eve/BackAndForthData.js +7 -0
  150. package/dist/eve/BackAndForthData.js.map +1 -1
  151. package/dist/eve/CjsDistributionRandom.js +6 -0
  152. package/dist/eve/CjsDistributionRandom.js.map +1 -1
  153. package/dist/eve/CjsEveThrottleableState.js +11 -0
  154. package/dist/eve/CjsEveThrottleableState.js.map +1 -1
  155. package/dist/eve/EveChildUpdateParams.js +7 -0
  156. package/dist/eve/EveChildUpdateParams.js.map +1 -1
  157. package/dist/eve/EveComponentTypes.js.map +1 -1
  158. package/dist/eve/EveCustomMask.js +58 -27
  159. package/dist/eve/EveCustomMask.js.map +1 -1
  160. package/dist/eve/EveDistanceField.js +84 -0
  161. package/dist/eve/EveDistanceField.js.map +1 -1
  162. package/dist/eve/EveEntity.js +138 -0
  163. package/dist/eve/EveEntity.js.map +1 -0
  164. package/dist/eve/EveImpactOverlay.js +61 -0
  165. package/dist/eve/EveImpactOverlay.js.map +1 -1
  166. package/dist/eve/EveLODHelper.js +17 -13
  167. package/dist/eve/EveLODHelper.js.map +1 -1
  168. package/dist/eve/EveLineData.js +2 -0
  169. package/dist/eve/EveLineData.js.map +1 -1
  170. package/dist/eve/EveThrottleable.js +11 -0
  171. package/dist/eve/EveThrottleable.js.map +1 -1
  172. package/dist/eve/FollowASplineData.js +7 -0
  173. package/dist/eve/FollowASplineData.js.map +1 -1
  174. package/dist/eve/FormationData.js +6 -0
  175. package/dist/eve/FormationData.js.map +1 -1
  176. package/dist/eve/InertiaData.js +7 -0
  177. package/dist/eve/InertiaData.js.map +1 -1
  178. package/dist/eve/PlacementDataWithIdentifier.js +7 -0
  179. package/dist/eve/PlacementDataWithIdentifier.js.map +1 -1
  180. package/dist/eve/PlayFXData.js +7 -0
  181. package/dist/eve/PlayFXData.js.map +1 -1
  182. package/dist/eve/SeekTargetData.js +7 -0
  183. package/dist/eve/SeekTargetData.js.map +1 -1
  184. package/dist/eve/{EveSpaceObjectAttachmentUtils.js → attachment/EveSpaceObjectAttachmentUtils.js} +11 -11
  185. package/dist/eve/attachment/EveSpaceObjectAttachmentUtils.js.map +1 -0
  186. package/dist/eve/attachment/banner/EveBannerItem.js +70 -0
  187. package/dist/eve/attachment/banner/EveBannerItem.js.map +1 -0
  188. package/dist/eve/{EveBannerLight.js → attachment/banner/EveBannerLight.js} +13 -2
  189. package/dist/eve/attachment/banner/EveBannerLight.js.map +1 -0
  190. package/dist/eve/attachment/banner/EveBannerSet.js +537 -0
  191. package/dist/eve/attachment/banner/EveBannerSet.js.map +1 -0
  192. package/dist/eve/{EveBoosterSet2.js → attachment/booster/EveBoosterSet2.js} +204 -35
  193. package/dist/eve/attachment/booster/EveBoosterSet2.js.map +1 -0
  194. package/dist/eve/{EveBoosterSet2Renderable.js → attachment/booster/EveBoosterSet2Renderable.js} +205 -12
  195. package/dist/eve/attachment/booster/EveBoosterSet2Renderable.js.map +1 -0
  196. package/dist/eve/{EveTrailsSet.js → attachment/booster/EveTrailsSet.js} +49 -1
  197. package/dist/eve/attachment/booster/EveTrailsSet.js.map +1 -0
  198. package/dist/eve/attachment/decal/EveSpaceObjectDecal.js +512 -0
  199. package/dist/eve/attachment/decal/EveSpaceObjectDecal.js.map +1 -0
  200. package/dist/eve/{EveHazeSet.js → attachment/haze/EveHazeSet.js} +65 -6
  201. package/dist/eve/attachment/haze/EveHazeSet.js.map +1 -0
  202. package/dist/eve/attachment/haze/EveHazeSetItem.js +64 -0
  203. package/dist/eve/attachment/haze/EveHazeSetItem.js.map +1 -0
  204. package/dist/eve/{EveHazeSetLight.js → attachment/haze/EveHazeSetLight.js} +13 -2
  205. package/dist/eve/attachment/haze/EveHazeSetLight.js.map +1 -0
  206. package/dist/eve/attachment/itemSetBounds.js +131 -0
  207. package/dist/eve/attachment/itemSetBounds.js.map +1 -0
  208. package/dist/eve/{EvePlaneLight.js → attachment/plane/EvePlaneLight.js} +14 -2
  209. package/dist/eve/attachment/plane/EvePlaneLight.js.map +1 -0
  210. package/dist/eve/{EvePlaneSet.js → attachment/plane/EvePlaneSet.js} +119 -7
  211. package/dist/eve/attachment/plane/EvePlaneSet.js.map +1 -0
  212. package/dist/eve/attachment/plane/EvePlaneSetItem.js +72 -0
  213. package/dist/eve/attachment/plane/EvePlaneSetItem.js.map +1 -0
  214. package/dist/eve/{EveSpotlightLight.js → attachment/spotlight/EveSpotlightLight.js} +13 -2
  215. package/dist/eve/attachment/spotlight/EveSpotlightLight.js.map +1 -0
  216. package/dist/eve/{EveSpotlightSet.js → attachment/spotlight/EveSpotlightSet.js} +86 -6
  217. package/dist/eve/attachment/spotlight/EveSpotlightSet.js.map +1 -0
  218. package/dist/eve/attachment/spotlight/EveSpotlightSetItem.js +61 -0
  219. package/dist/eve/attachment/spotlight/EveSpotlightSetItem.js.map +1 -0
  220. package/dist/eve/{EveSpriteLight.js → attachment/sprite/EveSpriteLight.js} +14 -2
  221. package/dist/eve/attachment/sprite/EveSpriteLight.js.map +1 -0
  222. package/dist/eve/{EveSpriteLineSet.js → attachment/sprite/EveSpriteLineSet.js} +69 -7
  223. package/dist/eve/attachment/sprite/EveSpriteLineSet.js.map +1 -0
  224. package/dist/eve/{EveSpriteLineSetItem.js → attachment/sprite/EveSpriteLineSetItem.js} +29 -4
  225. package/dist/eve/attachment/sprite/EveSpriteLineSetItem.js.map +1 -0
  226. package/dist/eve/{EveSpriteSet.js → attachment/sprite/EveSpriteSet.js} +87 -8
  227. package/dist/eve/attachment/sprite/EveSpriteSet.js.map +1 -0
  228. package/dist/{generated/eve/attachment/sprites → eve/attachment/sprite}/EveSpriteSetItem.js +23 -26
  229. package/dist/eve/attachment/sprite/EveSpriteSetItem.js.map +1 -0
  230. package/dist/eve/attachment/turrets/EveTurretFiringFX.js +184 -2
  231. package/dist/eve/attachment/turrets/EveTurretFiringFX.js.map +1 -1
  232. package/dist/eve/attachment/turrets/EveTurretSet.js +236 -7
  233. package/dist/eve/attachment/turrets/EveTurretSet.js.map +1 -1
  234. package/dist/eve/attachment/turrets/EveTurretTarget.js +112 -0
  235. package/dist/eve/attachment/turrets/EveTurretTarget.js.map +1 -1
  236. package/dist/eve/camera/EveCamera.js +644 -0
  237. package/dist/eve/camera/EveCamera.js.map +1 -0
  238. package/dist/eve/child/EveChildAudio.js +63 -0
  239. package/dist/eve/child/EveChildAudio.js.map +1 -1
  240. package/dist/eve/child/EveChildBehaviorSystem.js +412 -0
  241. package/dist/eve/child/EveChildBehaviorSystem.js.map +1 -0
  242. package/dist/{generated/eve → eve}/child/EveChildBulletStorm.js +41 -3
  243. package/dist/eve/child/EveChildBulletStorm.js.map +1 -0
  244. package/dist/eve/child/EveChildContainer.js +175 -16
  245. package/dist/eve/child/EveChildContainer.js.map +1 -1
  246. package/dist/eve/child/EveChildEffectPropagator.js +1 -1
  247. package/dist/eve/child/EveChildEffectPropagator.js.map +1 -1
  248. package/dist/eve/child/EveChildFogVolume.js +72 -0
  249. package/dist/eve/child/EveChildFogVolume.js.map +1 -1
  250. package/dist/eve/child/EveChildInheritProperties.js +17 -0
  251. package/dist/eve/child/EveChildInheritProperties.js.map +1 -1
  252. package/dist/eve/child/EveChildInstancedMeshes.js +211 -1
  253. package/dist/eve/child/EveChildInstancedMeshes.js.map +1 -1
  254. package/dist/eve/child/EveChildLightingOverride.js +74 -0
  255. package/dist/eve/child/EveChildLightingOverride.js.map +1 -1
  256. package/dist/{generated/eve → eve}/child/EveChildLink.js +17 -16
  257. package/dist/eve/child/EveChildLink.js.map +1 -0
  258. package/dist/eve/child/EveChildMesh.js +351 -105
  259. package/dist/eve/child/EveChildMesh.js.map +1 -1
  260. package/dist/eve/child/EveChildSpherePin.js +108 -0
  261. package/dist/eve/child/EveChildSpherePin.js.map +1 -0
  262. package/dist/eve/child/EveChildTransform.js +44 -1
  263. package/dist/eve/child/EveChildTransform.js.map +1 -1
  264. package/dist/eve/child/IEveSpaceObjectChild.js +5 -0
  265. package/dist/eve/child/IEveSpaceObjectChild.js.map +1 -1
  266. package/dist/eve/child/behaviors/CollisionAvoidance.js +112 -0
  267. package/dist/eve/child/behaviors/CollisionAvoidance.js.map +1 -0
  268. package/dist/eve/child/behaviors/InclusionVolume.js +131 -0
  269. package/dist/eve/child/behaviors/InclusionVolume.js.map +1 -0
  270. package/dist/eve/child/behaviors/Wander.js +99 -0
  271. package/dist/eve/child/behaviors/Wander.js.map +1 -0
  272. package/dist/{generated/eve → eve}/child/behaviors/enums.js +1 -1
  273. package/dist/eve/child/behaviors/enums.js.map +1 -0
  274. package/dist/eve/child/behaviors/lifecycle/ProcessLifetime.js +540 -0
  275. package/dist/eve/child/behaviors/lifecycle/ProcessLifetime.js.map +1 -0
  276. package/dist/eve/{ProcessLifetimeData.js → child/behaviors/lifecycle/ProcessLifetimeData.js} +8 -2
  277. package/dist/eve/child/behaviors/lifecycle/ProcessLifetimeData.js.map +1 -0
  278. package/dist/eve/child/behaviors/{SplineTunnel.js → tunnels/SplineTunnel.js} +9 -7
  279. package/dist/eve/child/behaviors/tunnels/SplineTunnel.js.map +1 -0
  280. package/dist/eve/child/behaviors/tunnels/SplineTunnelGroup.js +211 -0
  281. package/dist/eve/child/behaviors/tunnels/SplineTunnelGroup.js.map +1 -0
  282. package/dist/eve/child/behaviors/{SplineTunnelPoint.js → tunnels/SplineTunnelPoint.js} +3 -3
  283. package/dist/eve/child/behaviors/tunnels/SplineTunnelPoint.js.map +1 -0
  284. package/dist/eve/child/lineSetPaths/EveBezierCurve.js +65 -0
  285. package/dist/eve/child/lineSetPaths/EveBezierCurve.js.map +1 -1
  286. package/dist/eve/child/lineSetPaths/EveCircle.js +63 -0
  287. package/dist/eve/child/lineSetPaths/EveCircle.js.map +1 -1
  288. package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierAttachToBone.js +24 -16
  289. package/dist/eve/child/modifiers/EveChildModifierAttachToBone.js.map +1 -0
  290. package/dist/eve/child/modifiers/EveChildModifierBillboard2D.js +5 -0
  291. package/dist/eve/child/modifiers/EveChildModifierBillboard2D.js.map +1 -1
  292. package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierBillboard3D.js +22 -19
  293. package/dist/eve/child/modifiers/EveChildModifierBillboard3D.js.map +1 -0
  294. package/dist/eve/child/modifiers/EveChildModifierBooster.js +6 -0
  295. package/dist/eve/child/modifiers/EveChildModifierBooster.js.map +1 -1
  296. package/dist/eve/child/modifiers/EveChildModifierCameraOrientedRotationConstrained.js +5 -0
  297. package/dist/eve/child/modifiers/EveChildModifierCameraOrientedRotationConstrained.js.map +1 -1
  298. package/dist/eve/child/modifiers/EveChildModifierHalo.js +5 -0
  299. package/dist/eve/child/modifiers/EveChildModifierHalo.js.map +1 -1
  300. package/dist/eve/child/modifiers/EveChildModifierHaloInverted.js +6 -0
  301. package/dist/eve/child/modifiers/EveChildModifierHaloInverted.js.map +1 -1
  302. package/dist/eve/child/modifiers/EveChildModifierSRT.js +5 -0
  303. package/dist/eve/child/modifiers/EveChildModifierSRT.js.map +1 -1
  304. package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierStretch.js +31 -17
  305. package/dist/eve/child/modifiers/EveChildModifierStretch.js.map +1 -0
  306. package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierTranslateWithCamera.js +16 -14
  307. package/dist/eve/child/modifiers/EveChildModifierTranslateWithCamera.js.map +1 -0
  308. package/dist/{generated/eve → eve}/child/procedural/EveChildProceduralContainer.js +11 -4
  309. package/dist/eve/child/procedural/EveChildProceduralContainer.js.map +1 -0
  310. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodAttributeMap.js +12 -12
  311. package/dist/eve/child/procedural/selection/EveProceduralMethodAttributeMap.js.map +1 -0
  312. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js +6 -6
  313. package/dist/eve/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js.map +1 -0
  314. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodCycling.js +12 -12
  315. package/dist/eve/child/procedural/selection/EveProceduralMethodCycling.js.map +1 -0
  316. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodCyclingParameter.js +8 -8
  317. package/dist/eve/child/procedural/selection/EveProceduralMethodCyclingParameter.js.map +1 -0
  318. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodRandom.js +17 -17
  319. package/dist/eve/child/procedural/selection/EveProceduralMethodRandom.js.map +1 -0
  320. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodRandomParameter.js +7 -7
  321. package/dist/eve/child/procedural/selection/EveProceduralMethodRandomParameter.js.map +1 -0
  322. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodThresholdParameter.js +7 -7
  323. package/dist/eve/child/procedural/selection/EveProceduralMethodThresholdParameter.js.map +1 -0
  324. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodThresholds.js +17 -17
  325. package/dist/eve/child/procedural/selection/EveProceduralMethodThresholds.js.map +1 -0
  326. package/dist/{generated/eve → eve}/distribution/EveBaseDistributionMethod.js +132 -3
  327. package/dist/eve/distribution/EveBaseDistributionMethod.js.map +1 -0
  328. package/dist/{generated/eve → eve}/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js +12 -1
  329. package/dist/eve/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js.map +1 -0
  330. package/dist/{generated/eve → eve}/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js +9 -1
  331. package/dist/eve/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js.map +1 -0
  332. package/dist/{generated/eve → eve}/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js +12 -1
  333. package/dist/eve/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js.map +1 -0
  334. package/dist/eve/distribution/attributeModifiers/enums.js.map +1 -0
  335. package/dist/{generated/eve → eve}/distribution/placement/EveDistributionPlacementGeneratorLocators.js +16 -3
  336. package/dist/eve/distribution/placement/EveDistributionPlacementGeneratorLocators.js.map +1 -0
  337. package/dist/{generated/eve → eve}/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js +31 -3
  338. package/dist/eve/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js.map +1 -0
  339. package/dist/{generated/eve → eve}/distribution/placement/EveDistributionPlacementGeneratorVolume.js +34 -3
  340. package/dist/eve/distribution/placement/EveDistributionPlacementGeneratorVolume.js.map +1 -0
  341. package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js +14 -2
  342. package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js.map +1 -0
  343. package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js +13 -2
  344. package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js.map +1 -0
  345. package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js +13 -2
  346. package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js.map +1 -0
  347. package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js +13 -2
  348. package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js.map +1 -0
  349. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerBurst.js +19 -1
  350. package/dist/eve/distribution/spawners/EveDistributionSpawnerBurst.js.map +1 -0
  351. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerControllerTrigger.js +25 -1
  352. package/dist/eve/distribution/spawners/EveDistributionSpawnerControllerTrigger.js.map +1 -0
  353. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerInterval.js +17 -1
  354. package/dist/eve/distribution/spawners/EveDistributionSpawnerInterval.js.map +1 -0
  355. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerTriggerPlane.js +20 -1
  356. package/dist/eve/distribution/spawners/EveDistributionSpawnerTriggerPlane.js.map +1 -0
  357. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerTriggerSnake.js +20 -1
  358. package/dist/eve/distribution/spawners/EveDistributionSpawnerTriggerSnake.js.map +1 -0
  359. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerTriggerSphere.js +20 -1
  360. package/dist/eve/distribution/spawners/EveDistributionSpawnerTriggerSphere.js.map +1 -0
  361. package/dist/{generated/eve/effect → eve/effect/lensflare}/EveLensflare.js +44 -2
  362. package/dist/eve/effect/lensflare/EveLensflare.js.map +1 -0
  363. package/dist/eve/effect/multiEffect/EveMultiEffect.js +302 -0
  364. package/dist/eve/effect/multiEffect/EveMultiEffect.js.map +1 -0
  365. package/dist/eve/effect/multiEffect/EveMultiEffectParameter.js +92 -0
  366. package/dist/eve/effect/multiEffect/EveMultiEffectParameter.js.map +1 -0
  367. package/dist/eve/index.js +117 -47
  368. package/dist/eve/index.js.map +1 -1
  369. package/dist/eve/lights/CjsLightData.js +7 -0
  370. package/dist/eve/lights/CjsLightData.js.map +1 -1
  371. package/dist/eve/lights/Tr2Light.js +41 -0
  372. package/dist/eve/lights/Tr2Light.js.map +1 -1
  373. package/dist/eve/lights/Tr2PointLight.js +5 -0
  374. package/dist/eve/lights/Tr2PointLight.js.map +1 -1
  375. package/dist/eve/lights/Tr2SpotLight.js +5 -0
  376. package/dist/eve/lights/Tr2SpotLight.js.map +1 -1
  377. package/dist/eve/lights/Tr2TexturedPointLight.js +10 -0
  378. package/dist/eve/lights/Tr2TexturedPointLight.js.map +1 -1
  379. package/dist/eve/lights/lightConversion.js +29 -27
  380. package/dist/eve/lights/lightConversion.js.map +1 -1
  381. package/dist/eve/{EveLocator2.js → locator/EveLocator2.js} +20 -1
  382. package/dist/eve/locator/EveLocator2.js.map +1 -0
  383. package/dist/eve/{EveLocatorSets.js → locator/EveLocatorSets.js} +43 -1
  384. package/dist/eve/locator/EveLocatorSets.js.map +1 -0
  385. package/dist/eve/{Locator.js → locator/Locator.js} +6 -1
  386. package/dist/eve/locator/Locator.js.map +1 -0
  387. package/dist/eve/{LocatorData.js → locator/LocatorData.js} +3 -1
  388. package/dist/eve/locator/LocatorData.js.map +1 -0
  389. package/dist/eve/overlays/EveMeshOverlayEffect.js +208 -0
  390. package/dist/eve/overlays/EveMeshOverlayEffect.js.map +1 -0
  391. package/dist/eve/{EveParticleDirectForce.js → particles/force/EveParticleDirectForce.js} +5 -5
  392. package/dist/eve/particles/force/EveParticleDirectForce.js.map +1 -0
  393. package/dist/eve/{EveParticleDragForce.js → particles/force/EveParticleDragForce.js} +5 -5
  394. package/dist/eve/particles/force/EveParticleDragForce.js.map +1 -0
  395. package/dist/eve/{EveParticleSpring.js → particles/force/EveParticleSpring.js} +6 -6
  396. package/dist/eve/particles/force/EveParticleSpring.js.map +1 -0
  397. package/dist/{generated/eve/scene → eve/particles/static}/EveSceneStaticParticles.js +70 -36
  398. package/dist/eve/particles/static/EveSceneStaticParticles.js.map +1 -0
  399. package/dist/eve/perObjectData/childPerObjectRecords.js +90 -0
  400. package/dist/eve/perObjectData/childPerObjectRecords.js.map +1 -0
  401. package/dist/eve/renderable/stretch/CjsStretchRuntime.js +76 -0
  402. package/dist/eve/renderable/stretch/CjsStretchRuntime.js.map +1 -1
  403. package/dist/eve/renderable/stretch/EveFiringEffectElementContainer.js +85 -1
  404. package/dist/eve/renderable/stretch/EveFiringEffectElementContainer.js.map +1 -1
  405. package/dist/eve/renderable/stretch/EveLocalPositionCurve.js +91 -0
  406. package/dist/eve/renderable/stretch/EveLocalPositionCurve.js.map +1 -1
  407. package/dist/eve/renderable/stretch/EveRemotePositionCurve.js +36 -0
  408. package/dist/eve/renderable/stretch/EveRemotePositionCurve.js.map +1 -1
  409. package/dist/eve/renderable/stretch/EveStretch.js +158 -9
  410. package/dist/eve/renderable/stretch/EveStretch.js.map +1 -1
  411. package/dist/eve/renderable/stretch/EveStretch2.js +121 -12
  412. package/dist/eve/renderable/stretch/EveStretch2.js.map +1 -1
  413. package/dist/eve/renderable/stretch/EveStretch3.js +261 -8
  414. package/dist/eve/renderable/stretch/EveStretch3.js.map +1 -1
  415. package/dist/eve/scene/EveSpaceScene.js +56 -6
  416. package/dist/eve/scene/EveSpaceScene.js.map +1 -1
  417. package/dist/{generated/eve/scene → eve/scene/components}/EveComponentCollection.js +24 -1
  418. package/dist/eve/scene/components/EveComponentCollection.js.map +1 -0
  419. package/dist/{generated/eve/scene → eve/scene/components}/EveComponentRegistry.js +74 -2
  420. package/dist/eve/scene/components/EveComponentRegistry.js.map +1 -0
  421. package/dist/eve/scene/picking/EvePickingContext.js +61 -0
  422. package/dist/eve/scene/picking/EvePickingContext.js.map +1 -0
  423. package/dist/eve/scene/shadows/TriShadowFrustum.js +70 -0
  424. package/dist/eve/scene/shadows/TriShadowFrustum.js.map +1 -0
  425. package/dist/eve/scene/shadows/TriShadowOrthoFrustum.js +129 -0
  426. package/dist/eve/scene/shadows/TriShadowOrthoFrustum.js.map +1 -0
  427. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js +19 -19
  428. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js.map +1 -0
  429. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js +19 -19
  430. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js.map +1 -0
  431. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js +12 -12
  432. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js.map +1 -0
  433. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js +12 -12
  434. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js.map +1 -0
  435. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js +30 -30
  436. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js.map +1 -0
  437. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js +9 -9
  438. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js.map +1 -0
  439. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js +23 -23
  440. package/dist/eve/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js.map +1 -0
  441. package/dist/eve/smartLights/attributeModifiers/enums.js.map +1 -0
  442. package/dist/{generated/eve → eve}/socket/EveSocketParameterBindingBase.js +26 -1
  443. package/dist/eve/socket/EveSocketParameterBindingBase.js.map +1 -0
  444. package/dist/{generated/eve → eve}/socket/EveSocketParameterBool.js +17 -1
  445. package/dist/eve/socket/EveSocketParameterBool.js.map +1 -0
  446. package/dist/{generated/eve → eve}/socket/EveSocketParameterColor.js +21 -5
  447. package/dist/eve/socket/EveSocketParameterColor.js.map +1 -0
  448. package/dist/eve/socket/EveSocketParameterFilePath.js +5 -5
  449. package/dist/eve/socket/EveSocketParameterFilePath.js.map +1 -1
  450. package/dist/{generated/eve → eve}/socket/EveSocketParameterFloat.js +17 -1
  451. package/dist/eve/socket/EveSocketParameterFloat.js.map +1 -0
  452. package/dist/{generated/eve → eve}/socket/EveSocketParameterInt.js +17 -1
  453. package/dist/eve/socket/EveSocketParameterInt.js.map +1 -0
  454. package/dist/{generated/eve → eve}/socket/EveSocketParameterString.js +42 -2
  455. package/dist/eve/socket/EveSocketParameterString.js.map +1 -0
  456. package/dist/{generated/eve → eve}/socket/EveSocketParameterVector2.js +17 -1
  457. package/dist/eve/socket/EveSocketParameterVector2.js.map +1 -0
  458. package/dist/{generated/eve → eve}/socket/EveSocketParameterVector3.js +17 -1
  459. package/dist/eve/socket/EveSocketParameterVector3.js.map +1 -0
  460. package/dist/{generated/eve → eve}/socket/EveSocketParameterVector4.js +17 -1
  461. package/dist/eve/socket/EveSocketParameterVector4.js.map +1 -0
  462. package/dist/eve/spaceObject/EveEffectRoot2.js +58 -31
  463. package/dist/eve/spaceObject/EveEffectRoot2.js.map +1 -1
  464. package/dist/eve/spaceObject/EveMissile.js +49 -1
  465. package/dist/eve/spaceObject/EveMissile.js.map +1 -1
  466. package/dist/eve/spaceObject/EveMissileWarhead.js +100 -1
  467. package/dist/eve/spaceObject/EveMissileWarhead.js.map +1 -1
  468. package/dist/eve/spaceObject/EveMobile.js +104 -0
  469. package/dist/eve/spaceObject/EveMobile.js.map +1 -1
  470. package/dist/eve/spaceObject/EveRootTransform.js +17 -0
  471. package/dist/eve/spaceObject/EveRootTransform.js.map +1 -1
  472. package/dist/{generated/eve → eve}/spaceObject/EveShip2.js +32 -12
  473. package/dist/eve/spaceObject/EveShip2.js.map +1 -0
  474. package/dist/eve/spaceObject/EveSpaceObject2.js +726 -199
  475. package/dist/eve/spaceObject/EveSpaceObject2.js.map +1 -1
  476. package/dist/eve/spaceObject/EveTransform.js +100 -4
  477. package/dist/eve/spaceObject/EveTransform.js.map +1 -1
  478. package/dist/eve/spaceObject/IEveSpaceObject2ParentData.js +70 -0
  479. package/dist/eve/spaceObject/IEveSpaceObject2ParentData.js.map +1 -0
  480. package/dist/eve/spaceObject/createEveSpaceObjectMainPerObjectValues.js +19 -16
  481. package/dist/eve/spaceObject/createEveSpaceObjectMainPerObjectValues.js.map +1 -1
  482. package/dist/eve/spaceObject/fxAttributes/EveCameraFxAttributes.js +92 -0
  483. package/dist/eve/spaceObject/fxAttributes/EveCameraFxAttributes.js.map +1 -0
  484. package/dist/eve/spaceObject/fxAttributes/EveSpaceObjectFxAttributes.js +158 -0
  485. package/dist/eve/spaceObject/fxAttributes/EveSpaceObjectFxAttributes.js.map +1 -0
  486. package/dist/{generated/eve/spaceObject → eve/spaceObject/planet}/EvePlanet.js +2 -2
  487. package/dist/eve/spaceObject/planet/EvePlanet.js.map +1 -0
  488. package/dist/{generated/eve → eve}/spaceObject/swarm/EveSwarmRenderable.js +102 -64
  489. package/dist/eve/spaceObject/swarm/EveSwarmRenderable.js.map +1 -0
  490. package/dist/eve/ui/EveEllipseDefinition.js +15 -0
  491. package/dist/eve/ui/EveEllipseDefinition.js.map +1 -1
  492. package/dist/eve/ui/EveEllipseSet.js +42 -0
  493. package/dist/eve/ui/EveEllipseSet.js.map +1 -1
  494. package/dist/{generated/eve → eve}/ui/EveSpherePin.js +76 -11
  495. package/dist/eve/ui/EveSpherePin.js.map +1 -0
  496. package/dist/eve/ui/EveSprite2dBracket.js +5 -0
  497. package/dist/eve/ui/EveSprite2dBracket.js.map +1 -1
  498. package/dist/eve/ui/EveUiObject.js +11 -0
  499. package/dist/eve/ui/EveUiObject.js.map +1 -1
  500. package/dist/{generated/eve/ui → eve/ui/lines}/EveLineSet.js +67 -6
  501. package/dist/eve/ui/lines/EveLineSet.js.map +1 -0
  502. package/dist/eve/ui/tacticalOverlay/EveTacticalOverlayTrackObject.js +78 -0
  503. package/dist/eve/ui/tacticalOverlay/EveTacticalOverlayTrackObject.js.map +1 -0
  504. package/dist/{generated/eve/ui → eve/ui/tacticalOverlay}/EveTacticalTrails.js +22 -2
  505. package/dist/eve/ui/tacticalOverlay/EveTacticalTrails.js.map +1 -0
  506. package/dist/eve/virtualCamera/EveVirtualCamera.js +152 -0
  507. package/dist/eve/virtualCamera/EveVirtualCamera.js.map +1 -1
  508. package/dist/eve/virtualCamera/EveVirtualCameraSystem.js +65 -0
  509. package/dist/eve/virtualCamera/EveVirtualCameraSystem.js.map +1 -1
  510. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatAdd.js +17 -0
  511. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatAdd.js.map +1 -1
  512. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatBase.js +19 -0
  513. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatBase.js.map +1 -1
  514. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatDamping.js +17 -0
  515. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatDamping.js.map +1 -1
  516. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatNoise.js +29 -0
  517. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatNoise.js.map +1 -1
  518. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatSet.js +15 -0
  519. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatSet.js.map +1 -1
  520. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Base.js +38 -0
  521. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Base.js.map +1 -1
  522. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Damping.js +17 -0
  523. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Damping.js.map +1 -1
  524. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Inertia.js +18 -0
  525. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Inertia.js.map +1 -1
  526. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveBetween.js +20 -0
  527. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveBetween.js.map +1 -1
  528. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveForward.js +20 -0
  529. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveForward.js.map +1 -1
  530. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveRight.js +11 -0
  531. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveRight.js.map +1 -1
  532. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveUp.js +14 -0
  533. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveUp.js.map +1 -1
  534. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Offset.js +16 -0
  535. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Offset.js.map +1 -1
  536. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Orbit.js +20 -0
  537. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Orbit.js.map +1 -1
  538. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Shake.js +36 -0
  539. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Shake.js.map +1 -1
  540. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionBase.js +36 -0
  541. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionBase.js.map +1 -1
  542. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionCut.js +11 -0
  543. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionCut.js.map +1 -1
  544. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionLerp.js +37 -0
  545. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionLerp.js.map +1 -1
  546. package/dist/eve/volume/EveBoxVolume.js +59 -0
  547. package/dist/eve/volume/EveBoxVolume.js.map +1 -1
  548. package/dist/eve/volume/EveEllipsoidVolume.js +54 -0
  549. package/dist/eve/volume/EveEllipsoidVolume.js.map +1 -1
  550. package/dist/eve/volume/EveSphereVolume.js +34 -0
  551. package/dist/eve/volume/EveSphereVolume.js.map +1 -1
  552. package/dist/generated/eve/child/EveChildCloud2.js +138 -138
  553. package/dist/generated/eve/child/EveChildCloud2.js.map +1 -1
  554. package/dist/generated/eve/child/EveChildParticleSystem.js +10 -4
  555. package/dist/generated/eve/child/EveChildParticleSystem.js.map +1 -1
  556. package/dist/generated/eve/child/EveChildSocket.js +1 -1
  557. package/dist/generated/eve/child/EveChildSocket.js.map +1 -1
  558. package/dist/generated/eve/child/behaviors/BackAndForth.js +14 -17
  559. package/dist/generated/eve/child/behaviors/BackAndForth.js.map +1 -1
  560. package/dist/generated/eve/child/behaviors/BehaviorGroup.js +2 -2
  561. package/dist/generated/eve/child/behaviors/BehaviorGroup.js.map +1 -1
  562. package/dist/generated/eve/child/behaviors/EveKDdroneManagementTree.js +26 -29
  563. package/dist/generated/eve/child/behaviors/EveKDdroneManagementTree.js.map +1 -1
  564. package/dist/generated/eve/child/behaviors/FollowASpline.js +13 -17
  565. package/dist/generated/eve/child/behaviors/FollowASpline.js.map +1 -1
  566. package/dist/generated/eve/child/behaviors/PlayFX.js +14 -14
  567. package/dist/generated/eve/child/behaviors/PlayFX.js.map +1 -1
  568. package/dist/generated/eve/child/behaviors/SeekTarget.js +1 -1
  569. package/dist/generated/eve/child/behaviors/SeekTarget.js.map +1 -1
  570. package/dist/generated/eve/child/behaviors/index.js +0 -6
  571. package/dist/generated/eve/child/behaviors/index.js.map +1 -1
  572. package/dist/generated/eve/child/index.js +0 -23
  573. package/dist/generated/eve/child/index.js.map +1 -1
  574. package/dist/generated/eve/effect/index.js +0 -3
  575. package/dist/generated/eve/effect/index.js.map +1 -1
  576. package/dist/generated/eve/index.js +0 -88
  577. package/dist/generated/eve/index.js.map +1 -1
  578. package/dist/generated/eve/scene/index.js +0 -6
  579. package/dist/generated/eve/scene/index.js.map +1 -1
  580. package/dist/generated/eve/smartLights/EveSmartLightColorShareGroup.js +20 -20
  581. package/dist/generated/eve/smartLights/EveSmartLightColorShareGroup.js.map +1 -1
  582. package/dist/generated/eve/smartLights/EveSmartLightPointLight.js +1 -1
  583. package/dist/generated/eve/smartLights/EveSmartLightPointLight.js.map +1 -1
  584. package/dist/generated/eve/smartLights/index.js +0 -8
  585. package/dist/generated/eve/smartLights/index.js.map +1 -1
  586. package/dist/generated/eve/spaceObject/index.js +0 -4
  587. package/dist/generated/eve/spaceObject/index.js.map +1 -1
  588. package/dist/generated/eve/spaceObject/swarm/EveSwarm.js +11 -11
  589. package/dist/generated/eve/spaceObject/swarm/EveSwarm.js.map +1 -1
  590. package/dist/generated/eve/spaceObject/swarm/index.js +0 -1
  591. package/dist/generated/eve/spaceObject/swarm/index.js.map +1 -1
  592. package/dist/generated/eve/ui/index.js +0 -4
  593. package/dist/generated/eve/ui/index.js.map +1 -1
  594. package/dist/generated/index.js +0 -93
  595. package/dist/generated/index.js.map +1 -1
  596. package/dist/generated/trinityCore/index.js +0 -5
  597. package/dist/generated/trinityCore/index.js.map +1 -1
  598. package/dist/index.js +130 -155
  599. package/dist/index.js.map +1 -1
  600. package/dist/particle/Tr2GpuSharedEmitter.js +39 -0
  601. package/dist/particle/Tr2GpuSharedEmitter.js.map +1 -1
  602. package/dist/particle/Tr2GpuUniqueEmitter.js +5 -0
  603. package/dist/particle/Tr2GpuUniqueEmitter.js.map +1 -1
  604. package/dist/particle/Tr2ParticleAttractorForce.js +10 -0
  605. package/dist/particle/Tr2ParticleAttractorForce.js.map +1 -1
  606. package/dist/particle/Tr2ParticleDirectForce.js +7 -0
  607. package/dist/particle/Tr2ParticleDirectForce.js.map +1 -1
  608. package/dist/particle/Tr2ParticleDragForce.js +7 -0
  609. package/dist/particle/Tr2ParticleDragForce.js.map +1 -1
  610. package/dist/particle/Tr2ParticleElementDeclaration.js +5 -0
  611. package/dist/particle/Tr2ParticleElementDeclaration.js.map +1 -1
  612. package/dist/particle/Tr2ParticleFluidDragForce.js +10 -0
  613. package/dist/particle/Tr2ParticleFluidDragForce.js.map +1 -1
  614. package/dist/particle/Tr2ParticleSpring.js +10 -0
  615. package/dist/particle/Tr2ParticleSpring.js.map +1 -1
  616. package/dist/particle/Tr2ParticleVortexForce.js +10 -0
  617. package/dist/particle/Tr2ParticleVortexForce.js.map +1 -1
  618. package/dist/particle/particleElementBinding.js +12 -0
  619. package/dist/particle/particleElementBinding.js.map +1 -1
  620. package/dist/postProcess/Tr2PPBloomEffect.js +6 -0
  621. package/dist/postProcess/Tr2PPBloomEffect.js.map +1 -1
  622. package/dist/postProcess/Tr2PPDepthOfFieldEffect.js +16 -0
  623. package/dist/postProcess/Tr2PPDepthOfFieldEffect.js.map +1 -1
  624. package/dist/postProcess/Tr2PPGenericEffect.js +7 -0
  625. package/dist/postProcess/Tr2PPGenericEffect.js.map +1 -1
  626. package/dist/postProcess/Tr2PPTaaEffect.js +10 -0
  627. package/dist/postProcess/Tr2PPTaaEffect.js.map +1 -1
  628. package/dist/postProcess/Tr2PPTonemappingEffect.js +5 -0
  629. package/dist/postProcess/Tr2PPTonemappingEffect.js.map +1 -1
  630. package/dist/postProcess/Tr2PostProcess.js +5 -0
  631. package/dist/postProcess/Tr2PostProcess.js.map +1 -1
  632. package/dist/postProcess/Tr2PostProcess2.js +147 -0
  633. package/dist/postProcess/Tr2PostProcess2.js.map +1 -1
  634. package/dist/postProcess/Tr2PostProcessAttributes.js +89 -0
  635. package/dist/postProcess/Tr2PostProcessAttributes.js.map +1 -1
  636. package/dist/renderJob/Tr2RenderJobs.js +34 -0
  637. package/dist/renderJob/Tr2RenderJobs.js.map +1 -1
  638. package/dist/renderJob/TriRenderJob.js +59 -0
  639. package/dist/renderJob/TriRenderJob.js.map +1 -1
  640. package/dist/renderJob/TriRenderStep.js +20 -0
  641. package/dist/renderJob/TriRenderStep.js.map +1 -1
  642. package/dist/renderJob/TriStepClear.js +18 -0
  643. package/dist/renderJob/TriStepClear.js.map +1 -1
  644. package/dist/renderJob/TriStepCopyRenderTarget.js +51 -0
  645. package/dist/renderJob/TriStepCopyRenderTarget.js.map +1 -1
  646. package/dist/renderJob/TriStepEnableWireframeMode.js +9 -0
  647. package/dist/renderJob/TriStepEnableWireframeMode.js.map +1 -1
  648. package/dist/renderJob/TriStepGenerateMipMaps.js +9 -0
  649. package/dist/renderJob/TriStepGenerateMipMaps.js.map +1 -1
  650. package/dist/renderJob/TriStepPopDepthStencil.js +6 -0
  651. package/dist/renderJob/TriStepPopDepthStencil.js.map +1 -1
  652. package/dist/renderJob/TriStepPopProjection.js +6 -0
  653. package/dist/renderJob/TriStepPopProjection.js.map +1 -1
  654. package/dist/renderJob/TriStepPopRenderTarget.js +12 -0
  655. package/dist/renderJob/TriStepPopRenderTarget.js.map +1 -1
  656. package/dist/renderJob/TriStepPopViewTransform.js +6 -0
  657. package/dist/renderJob/TriStepPopViewTransform.js.map +1 -1
  658. package/dist/renderJob/TriStepPopViewport.js +6 -0
  659. package/dist/renderJob/TriStepPopViewport.js.map +1 -1
  660. package/dist/renderJob/TriStepPresentSwapChain.js +12 -0
  661. package/dist/renderJob/TriStepPresentSwapChain.js.map +1 -1
  662. package/dist/renderJob/TriStepPushDepthStencil.js +17 -0
  663. package/dist/renderJob/TriStepPushDepthStencil.js.map +1 -1
  664. package/dist/renderJob/TriStepPushProjection.js +6 -0
  665. package/dist/renderJob/TriStepPushProjection.js.map +1 -1
  666. package/dist/renderJob/TriStepPushRenderTarget.js +9 -0
  667. package/dist/renderJob/TriStepPushRenderTarget.js.map +1 -1
  668. package/dist/renderJob/TriStepPushViewTransform.js +6 -0
  669. package/dist/renderJob/TriStepPushViewTransform.js.map +1 -1
  670. package/dist/renderJob/TriStepPushViewport.js +6 -0
  671. package/dist/renderJob/TriStepPushViewport.js.map +1 -1
  672. package/dist/renderJob/TriStepRemoteSync.js +17 -0
  673. package/dist/renderJob/TriStepRemoteSync.js.map +1 -1
  674. package/dist/renderJob/TriStepResolve.js +13 -0
  675. package/dist/renderJob/TriStepResolve.js.map +1 -1
  676. package/dist/renderJob/TriStepRunJob.js +12 -0
  677. package/dist/renderJob/TriStepRunJob.js.map +1 -1
  678. package/dist/renderJob/TriStepSetDepthStencil.js +12 -0
  679. package/dist/renderJob/TriStepSetDepthStencil.js.map +1 -1
  680. package/dist/renderJob/TriStepSetProjection.js +14 -0
  681. package/dist/renderJob/TriStepSetProjection.js.map +1 -1
  682. package/dist/renderJob/TriStepSetRenderState.js +20 -0
  683. package/dist/renderJob/TriStepSetRenderState.js.map +1 -1
  684. package/dist/renderJob/TriStepSetRenderTarget.js +12 -0
  685. package/dist/renderJob/TriStepSetRenderTarget.js.map +1 -1
  686. package/dist/renderJob/TriStepSetStdRndStates.js +18 -0
  687. package/dist/renderJob/TriStepSetStdRndStates.js.map +1 -1
  688. package/dist/renderJob/TriStepSetView.js +29 -2
  689. package/dist/renderJob/TriStepSetView.js.map +1 -1
  690. package/dist/renderJob/TriStepSetViewport.js +17 -0
  691. package/dist/renderJob/TriStepSetViewport.js.map +1 -1
  692. package/dist/renderJob/TriStepSetVisualizationMode.js +19 -0
  693. package/dist/renderJob/TriStepSetVisualizationMode.js.map +1 -1
  694. package/dist/shader/Tr2Effect.js +217 -2
  695. package/dist/shader/Tr2Effect.js.map +1 -1
  696. package/dist/shader/Tr2Material.js +41 -0
  697. package/dist/shader/Tr2Material.js.map +1 -1
  698. package/dist/shader/index.js +1 -11
  699. package/dist/shader/index.js.map +1 -1
  700. package/dist/shader/material/Tr2EffectLibraryParameters.js +7 -0
  701. package/dist/shader/material/Tr2EffectLibraryParameters.js.map +1 -1
  702. package/dist/shader/material/Tr2EffectPassParameters.js +23 -0
  703. package/dist/shader/material/Tr2EffectPassParameters.js.map +1 -1
  704. package/dist/shader/material/Tr2MaterialStageInput.js +15 -0
  705. package/dist/shader/material/Tr2MaterialStageInput.js.map +1 -1
  706. package/dist/shader/parameter/CjsParameter.js +94 -0
  707. package/dist/shader/parameter/CjsParameter.js.map +1 -1
  708. package/dist/shader/parameter/CjsVectorParameter.js +20 -0
  709. package/dist/shader/parameter/CjsVectorParameter.js.map +1 -1
  710. package/dist/shader/parameter/Tr2FloatParameter.js +53 -0
  711. package/dist/shader/parameter/Tr2FloatParameter.js.map +1 -1
  712. package/dist/shader/parameter/Tr2GeometryBufferParameter.js +39 -0
  713. package/dist/shader/parameter/Tr2GeometryBufferParameter.js.map +1 -1
  714. package/dist/shader/parameter/Tr2Matrix4Parameter.js +54 -0
  715. package/dist/shader/parameter/Tr2Matrix4Parameter.js.map +1 -1
  716. package/dist/shader/parameter/Tr2RuntimeTextureParameter.js +54 -0
  717. package/dist/shader/parameter/Tr2RuntimeTextureParameter.js.map +1 -1
  718. package/dist/shader/parameter/Tr2TextureAnimationParameter.js +35 -0
  719. package/dist/shader/parameter/Tr2TextureAnimationParameter.js.map +1 -1
  720. package/dist/shader/parameter/Tr2Vector2Parameter.js +86 -0
  721. package/dist/shader/parameter/Tr2Vector2Parameter.js.map +1 -1
  722. package/dist/shader/parameter/Tr2Vector3Parameter.js +95 -0
  723. package/dist/shader/parameter/Tr2Vector3Parameter.js.map +1 -1
  724. package/dist/shader/parameter/Tr2Vector4Parameter.js +105 -0
  725. package/dist/shader/parameter/Tr2Vector4Parameter.js.map +1 -1
  726. package/dist/shader/parameter/TriFloatArrayParameter.js +26 -0
  727. package/dist/shader/parameter/TriFloatArrayParameter.js.map +1 -1
  728. package/dist/shader/parameter/TriTextureParameter.js +84 -0
  729. package/dist/shader/parameter/TriTextureParameter.js.map +1 -1
  730. package/dist/shader/parameter/TriTransformParameter.js +2 -0
  731. package/dist/shader/parameter/TriTransformParameter.js.map +1 -1
  732. package/dist/shader/parameter/TriVariableParameter.js +38 -0
  733. package/dist/shader/parameter/TriVariableParameter.js.map +1 -1
  734. package/dist/shader/parameter/TriVector4.js +2 -0
  735. package/dist/shader/parameter/TriVector4.js.map +1 -1
  736. package/dist/shader/reflection/Tr2ShaderOption.js +6 -1
  737. package/dist/shader/reflection/Tr2ShaderOption.js.map +1 -1
  738. package/dist/shader/support/CjsVariableStore.js +140 -0
  739. package/dist/shader/support/CjsVariableStore.js.map +1 -1
  740. package/dist/shader/support/Tr2ShaderBuffer.js +15 -0
  741. package/dist/shader/support/Tr2ShaderBuffer.js.map +1 -1
  742. package/dist/trinityCore/CjsBatchManager.js +62 -2
  743. package/dist/trinityCore/CjsBatchManager.js.map +1 -1
  744. package/dist/trinityCore/GrannyBoneOffset.js +51 -0
  745. package/dist/trinityCore/GrannyBoneOffset.js.map +1 -1
  746. package/dist/trinityCore/ITriRenderBatchAccumulator.js +65 -3
  747. package/dist/trinityCore/ITriRenderBatchAccumulator.js.map +1 -1
  748. package/dist/trinityCore/Tr2DirectInstanceData.js +19 -0
  749. package/dist/trinityCore/Tr2DirectInstanceData.js.map +1 -1
  750. package/dist/trinityCore/Tr2ExpressionTermInfo.js +21 -0
  751. package/dist/trinityCore/Tr2ExpressionTermInfo.js.map +1 -1
  752. package/dist/trinityCore/Tr2GpuBuffer.js +5 -0
  753. package/dist/trinityCore/Tr2GpuBuffer.js.map +1 -1
  754. package/dist/{generated/trinityCore → trinityCore}/Tr2GrannyAnimation.js +137 -8
  755. package/dist/trinityCore/Tr2GrannyAnimation.js.map +1 -0
  756. package/dist/trinityCore/Tr2InstancedMesh.js +52 -0
  757. package/dist/trinityCore/Tr2InstancedMesh.js.map +1 -1
  758. package/dist/trinityCore/Tr2MaterialParameterStore.js +5 -0
  759. package/dist/trinityCore/Tr2MaterialParameterStore.js.map +1 -1
  760. package/dist/trinityCore/Tr2Mesh.js +37 -0
  761. package/dist/trinityCore/Tr2Mesh.js.map +1 -1
  762. package/dist/trinityCore/Tr2MeshArea.js +78 -0
  763. package/dist/trinityCore/Tr2MeshArea.js.map +1 -1
  764. package/dist/trinityCore/Tr2MeshBase.js +98 -2
  765. package/dist/trinityCore/Tr2MeshBase.js.map +1 -1
  766. package/dist/trinityCore/Tr2PerObjectData.js +10 -0
  767. package/dist/trinityCore/Tr2PerObjectData.js.map +1 -1
  768. package/dist/trinityCore/Tr2PickType.js +33 -0
  769. package/dist/trinityCore/Tr2PickType.js.map +1 -0
  770. package/dist/trinityCore/Tr2RenderBatch.js +137 -0
  771. package/dist/trinityCore/Tr2RenderBatch.js.map +1 -1
  772. package/dist/trinityCore/Tr2RenderContext.js +271 -0
  773. package/dist/trinityCore/Tr2RenderContext.js.map +1 -1
  774. package/dist/trinityCore/Tr2RuntimeInstanceData.js +179 -0
  775. package/dist/trinityCore/Tr2RuntimeInstanceData.js.map +1 -1
  776. package/dist/trinityCore/Tr2ShLightingManager.js +397 -0
  777. package/dist/trinityCore/Tr2ShLightingManager.js.map +1 -0
  778. package/dist/trinityCore/Tr2VariableStore.js +26 -0
  779. package/dist/trinityCore/Tr2VariableStore.js.map +1 -1
  780. package/dist/trinityCore/Tr2VisibilityResults.js +5 -0
  781. package/dist/trinityCore/Tr2VisibilityResults.js.map +1 -1
  782. package/dist/trinityCore/TriDevice.js +5 -0
  783. package/dist/trinityCore/TriDevice.js.map +1 -1
  784. package/dist/trinityCore/TriFrustum.js +21 -14
  785. package/dist/trinityCore/TriFrustum.js.map +1 -1
  786. package/dist/trinityCore/TriObserverLocal.js +43 -0
  787. package/dist/trinityCore/TriObserverLocal.js.map +1 -1
  788. package/dist/trinityCore/TriProjection.js +86 -32
  789. package/dist/trinityCore/TriProjection.js.map +1 -1
  790. package/dist/trinityCore/TriRect.js +12 -0
  791. package/dist/trinityCore/TriRect.js.map +1 -1
  792. package/dist/trinityCore/TriRenderBatchAccumulator.js +46 -0
  793. package/dist/trinityCore/TriRenderBatchAccumulator.js.map +1 -1
  794. package/dist/trinityCore/TriRenderBatchMap.js +39 -2
  795. package/dist/trinityCore/TriRenderBatchMap.js.map +1 -1
  796. package/dist/trinityCore/TriSettings.js +38 -0
  797. package/dist/trinityCore/TriSettings.js.map +1 -1
  798. package/dist/trinityCore/TriVariable.js +30 -0
  799. package/dist/trinityCore/TriVariable.js.map +1 -1
  800. package/dist/trinityCore/TriView.js +16 -1
  801. package/dist/trinityCore/TriView.js.map +1 -1
  802. package/dist/trinityCore/TriViewport.js +12 -0
  803. package/dist/trinityCore/TriViewport.js.map +1 -1
  804. package/dist/trinityCore/{Tr2BindingVector3.js → binding/Tr2BindingVector3.js} +1 -1
  805. package/dist/trinityCore/binding/Tr2BindingVector3.js.map +1 -0
  806. package/dist/trinityCore/binding/Tr2DynamicBinding.js +266 -0
  807. package/dist/trinityCore/binding/Tr2DynamicBinding.js.map +1 -0
  808. package/dist/trinityCore/binding/Tr2ExternalParameter.js +392 -0
  809. package/dist/trinityCore/binding/Tr2ExternalParameter.js.map +1 -0
  810. package/dist/trinityCore/{Tr2PyValueBinding.js → binding/Tr2PyValueBinding.js} +30 -6
  811. package/dist/trinityCore/binding/Tr2PyValueBinding.js.map +1 -0
  812. package/dist/trinityCore/binding/TriValueBinding.js +648 -0
  813. package/dist/trinityCore/binding/TriValueBinding.js.map +1 -0
  814. package/dist/trinityCore/index.js +11 -4
  815. package/dist/trinityCore/index.js.map +1 -1
  816. package/dist/trinityCore/pickRay.js +84 -0
  817. package/dist/trinityCore/pickRay.js.map +1 -0
  818. package/dist/trinityCore/rawData/CjsPerObjectLayouts.js +931 -0
  819. package/dist/trinityCore/rawData/CjsPerObjectLayouts.js.map +1 -0
  820. package/dist/trinityCore/rawData/RawData.js +294 -38
  821. package/dist/trinityCore/rawData/RawData.js.map +1 -1
  822. package/dist/trinityCore/rawData/TriPoolAllocator.js +357 -0
  823. package/dist/trinityCore/rawData/TriPoolAllocator.js.map +1 -0
  824. package/dist/utilities/Range.js +53 -0
  825. package/dist/utilities/Range.js.map +1 -1
  826. package/docs/README.md +88 -0
  827. package/docs/architecture.md +162 -0
  828. package/docs/concepts/eve-runtime-behavior.md +86 -0
  829. package/docs/concepts/generated-class-lifecycle.md +116 -0
  830. package/docs/reference/api.md +76 -0
  831. package/docs/reference/classes/eve-runtime.md +106 -0
  832. package/docs/reference/classes/trinity-core.md +26 -0
  833. package/docs/reference/implementation-status.md +104 -0
  834. package/docs/reference/main-semantic-extraction.md +104 -0
  835. package/package.json +33 -24
  836. package/dist/eve/DecalVSPerObjectData.js +0 -34
  837. package/dist/eve/DecalVSPerObjectData.js.map +0 -1
  838. package/dist/eve/EveBannerItem.js +0 -43
  839. package/dist/eve/EveBannerItem.js.map +0 -1
  840. package/dist/eve/EveBannerLight.js.map +0 -1
  841. package/dist/eve/EveBannerSet.js +0 -190
  842. package/dist/eve/EveBannerSet.js.map +0 -1
  843. package/dist/eve/EveBasicPerObjectData.js +0 -31
  844. package/dist/eve/EveBasicPerObjectData.js.map +0 -1
  845. package/dist/eve/EveBoosterSet2.js.map +0 -1
  846. package/dist/eve/EveBoosterSet2Renderable.js.map +0 -1
  847. package/dist/eve/EveChildSpherePinPerObjectData.js +0 -37
  848. package/dist/eve/EveChildSpherePinPerObjectData.js.map +0 -1
  849. package/dist/eve/EveHazeSet.js.map +0 -1
  850. package/dist/eve/EveHazeSetLight.js.map +0 -1
  851. package/dist/eve/EveLocator2.js.map +0 -1
  852. package/dist/eve/EveLocatorSets.js.map +0 -1
  853. package/dist/eve/EveParticleDirectForce.js.map +0 -1
  854. package/dist/eve/EveParticleDragForce.js.map +0 -1
  855. package/dist/eve/EveParticleSpring.js.map +0 -1
  856. package/dist/eve/EvePerObjectPSData.js +0 -29
  857. package/dist/eve/EvePerObjectPSData.js.map +0 -1
  858. package/dist/eve/EvePerObjectVSData.js +0 -29
  859. package/dist/eve/EvePerObjectVSData.js.map +0 -1
  860. package/dist/eve/EvePlaneLight.js.map +0 -1
  861. package/dist/eve/EvePlaneSet.js.map +0 -1
  862. package/dist/eve/EvePlaneSetItem.js +0 -45
  863. package/dist/eve/EvePlaneSetItem.js.map +0 -1
  864. package/dist/eve/EveSpaceObjectAttachmentUtils.js.map +0 -1
  865. package/dist/eve/EveSpaceObjectDecal.js +0 -150
  866. package/dist/eve/EveSpaceObjectDecal.js.map +0 -1
  867. package/dist/eve/EveSpaceObjectPSData.js +0 -73
  868. package/dist/eve/EveSpaceObjectPSData.js.map +0 -1
  869. package/dist/eve/EveSpaceObjectVSData.js +0 -79
  870. package/dist/eve/EveSpaceObjectVSData.js.map +0 -1
  871. package/dist/eve/EveSpacePerObjectData.js +0 -97
  872. package/dist/eve/EveSpacePerObjectData.js.map +0 -1
  873. package/dist/eve/EveSpherePinPerObjectData.js +0 -37
  874. package/dist/eve/EveSpherePinPerObjectData.js.map +0 -1
  875. package/dist/eve/EveSpotlightLight.js.map +0 -1
  876. package/dist/eve/EveSpotlightSet.js.map +0 -1
  877. package/dist/eve/EveSpriteLight.js.map +0 -1
  878. package/dist/eve/EveSpriteLineSet.js.map +0 -1
  879. package/dist/eve/EveSpriteLineSetItem.js.map +0 -1
  880. package/dist/eve/EveSpriteSet.js.map +0 -1
  881. package/dist/eve/EveTrailsSet.js.map +0 -1
  882. package/dist/eve/Locator.js.map +0 -1
  883. package/dist/eve/LocatorData.js.map +0 -1
  884. package/dist/eve/ProcessLifetimeData.js.map +0 -1
  885. package/dist/eve/attachment/turrets/EveTurretSetPSData.js +0 -47
  886. package/dist/eve/attachment/turrets/EveTurretSetPSData.js.map +0 -1
  887. package/dist/eve/attachment/turrets/EveTurretSetVSData.js +0 -62
  888. package/dist/eve/attachment/turrets/EveTurretSetVSData.js.map +0 -1
  889. package/dist/eve/child/behaviors/SplineTunnel.js.map +0 -1
  890. package/dist/eve/child/behaviors/SplineTunnelPoint.js.map +0 -1
  891. package/dist/eve/perObjectData/DecalPSPerObjectData.js +0 -56
  892. package/dist/eve/perObjectData/DecalPSPerObjectData.js.map +0 -1
  893. package/dist/eve/perObjectData/EveMissileWarheadPerObjectData.js +0 -31
  894. package/dist/eve/perObjectData/EveMissileWarheadPerObjectData.js.map +0 -1
  895. package/dist/eve/perObjectData/EveTurretSetPerObjectData.js +0 -36
  896. package/dist/eve/perObjectData/EveTurretSetPerObjectData.js.map +0 -1
  897. package/dist/eve/perObjectData/MergeMorphsConstantBuffer.js +0 -64
  898. package/dist/eve/perObjectData/MergeMorphsConstantBuffer.js.map +0 -1
  899. package/dist/generated/eve/EveCamera.js +0 -264
  900. package/dist/generated/eve/EveCamera.js.map +0 -1
  901. package/dist/generated/eve/EveEntity.js +0 -81
  902. package/dist/generated/eve/EveEntity.js.map +0 -1
  903. package/dist/generated/eve/attachment/decal/index.js +0 -2
  904. package/dist/generated/eve/attachment/decal/index.js.map +0 -1
  905. package/dist/generated/eve/attachment/haze/EveHazeSetItem.js +0 -52
  906. package/dist/generated/eve/attachment/haze/EveHazeSetItem.js.map +0 -1
  907. package/dist/generated/eve/attachment/haze/index.js +0 -2
  908. package/dist/generated/eve/attachment/haze/index.js.map +0 -1
  909. package/dist/generated/eve/attachment/index.js +0 -5
  910. package/dist/generated/eve/attachment/index.js.map +0 -1
  911. package/dist/generated/eve/attachment/spotlights/EveSpotlightSetItem.js +0 -55
  912. package/dist/generated/eve/attachment/spotlights/EveSpotlightSetItem.js.map +0 -1
  913. package/dist/generated/eve/attachment/spotlights/index.js +0 -2
  914. package/dist/generated/eve/attachment/spotlights/index.js.map +0 -1
  915. package/dist/generated/eve/attachment/sprites/EveSpriteSetItem.js.map +0 -1
  916. package/dist/generated/eve/attachment/sprites/index.js +0 -2
  917. package/dist/generated/eve/attachment/sprites/index.js.map +0 -1
  918. package/dist/generated/eve/attachment/turrets/enums.js +0 -32
  919. package/dist/generated/eve/attachment/turrets/enums.js.map +0 -1
  920. package/dist/generated/eve/attachment/turrets/index.js +0 -2
  921. package/dist/generated/eve/attachment/turrets/index.js.map +0 -1
  922. package/dist/generated/eve/child/EveChildBehaviorSystem.js +0 -357
  923. package/dist/generated/eve/child/EveChildBehaviorSystem.js.map +0 -1
  924. package/dist/generated/eve/child/EveChildBulletStorm.js.map +0 -1
  925. package/dist/generated/eve/child/EveChildLink.js.map +0 -1
  926. package/dist/generated/eve/child/EveChildSpherePin.js +0 -54
  927. package/dist/generated/eve/child/EveChildSpherePin.js.map +0 -1
  928. package/dist/generated/eve/child/behaviors/CollisionAvoidance.js +0 -85
  929. package/dist/generated/eve/child/behaviors/CollisionAvoidance.js.map +0 -1
  930. package/dist/generated/eve/child/behaviors/InclusionVolume.js +0 -104
  931. package/dist/generated/eve/child/behaviors/InclusionVolume.js.map +0 -1
  932. package/dist/generated/eve/child/behaviors/ProcessLifetime.js +0 -458
  933. package/dist/generated/eve/child/behaviors/ProcessLifetime.js.map +0 -1
  934. package/dist/generated/eve/child/behaviors/SplineTunnelGroup.js +0 -161
  935. package/dist/generated/eve/child/behaviors/SplineTunnelGroup.js.map +0 -1
  936. package/dist/generated/eve/child/behaviors/Wander.js +0 -92
  937. package/dist/generated/eve/child/behaviors/Wander.js.map +0 -1
  938. package/dist/generated/eve/child/behaviors/enums.js.map +0 -1
  939. package/dist/generated/eve/child/modifiers/EveChildModifierAttachToBone.js.map +0 -1
  940. package/dist/generated/eve/child/modifiers/EveChildModifierBillboard3D.js.map +0 -1
  941. package/dist/generated/eve/child/modifiers/EveChildModifierStretch.js.map +0 -1
  942. package/dist/generated/eve/child/modifiers/EveChildModifierTranslateWithCamera.js.map +0 -1
  943. package/dist/generated/eve/child/modifiers/index.js +0 -5
  944. package/dist/generated/eve/child/modifiers/index.js.map +0 -1
  945. package/dist/generated/eve/child/procedural/EveChildProceduralContainer.js.map +0 -1
  946. package/dist/generated/eve/child/procedural/index.js +0 -10
  947. package/dist/generated/eve/child/procedural/index.js.map +0 -1
  948. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodAttributeMap.js.map +0 -1
  949. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js.map +0 -1
  950. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodCycling.js.map +0 -1
  951. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodCyclingParameter.js.map +0 -1
  952. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodRandom.js.map +0 -1
  953. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodRandomParameter.js.map +0 -1
  954. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodThresholdParameter.js.map +0 -1
  955. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodThresholds.js.map +0 -1
  956. package/dist/generated/eve/child/procedural/selection/index.js +0 -9
  957. package/dist/generated/eve/child/procedural/selection/index.js.map +0 -1
  958. package/dist/generated/eve/distribution/EveBaseDistributionMethod.js.map +0 -1
  959. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js.map +0 -1
  960. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js.map +0 -1
  961. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js.map +0 -1
  962. package/dist/generated/eve/distribution/attributeModifiers/enums.js.map +0 -1
  963. package/dist/generated/eve/distribution/attributeModifiers/index.js +0 -5
  964. package/dist/generated/eve/distribution/attributeModifiers/index.js.map +0 -1
  965. package/dist/generated/eve/distribution/index.js +0 -19
  966. package/dist/generated/eve/distribution/index.js.map +0 -1
  967. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorLocators.js.map +0 -1
  968. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js.map +0 -1
  969. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorVolume.js.map +0 -1
  970. package/dist/generated/eve/distribution/placement/index.js +0 -4
  971. package/dist/generated/eve/distribution/placement/index.js.map +0 -1
  972. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js.map +0 -1
  973. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js.map +0 -1
  974. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js.map +0 -1
  975. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js.map +0 -1
  976. package/dist/generated/eve/distribution/spawnModifiers/index.js +0 -5
  977. package/dist/generated/eve/distribution/spawnModifiers/index.js.map +0 -1
  978. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerBurst.js.map +0 -1
  979. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerControllerTrigger.js.map +0 -1
  980. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerInterval.js.map +0 -1
  981. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerPlane.js.map +0 -1
  982. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerSnake.js.map +0 -1
  983. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerSphere.js.map +0 -1
  984. package/dist/generated/eve/distribution/spawners/index.js +0 -7
  985. package/dist/generated/eve/distribution/spawners/index.js.map +0 -1
  986. package/dist/generated/eve/effect/EveLensflare.js.map +0 -1
  987. package/dist/generated/eve/effect/EveMultiEffect.js +0 -84
  988. package/dist/generated/eve/effect/EveMultiEffect.js.map +0 -1
  989. package/dist/generated/eve/effect/EveMultiEffectParameter.js +0 -45
  990. package/dist/generated/eve/effect/EveMultiEffectParameter.js.map +0 -1
  991. package/dist/generated/eve/fxAttributes/EveCameraFxAttributes.js +0 -47
  992. package/dist/generated/eve/fxAttributes/EveCameraFxAttributes.js.map +0 -1
  993. package/dist/generated/eve/fxAttributes/EveSpaceObjectFxAttributes.js +0 -63
  994. package/dist/generated/eve/fxAttributes/EveSpaceObjectFxAttributes.js.map +0 -1
  995. package/dist/generated/eve/fxAttributes/index.js +0 -3
  996. package/dist/generated/eve/fxAttributes/index.js.map +0 -1
  997. package/dist/generated/eve/overlays/EveMeshOverlayEffect.js +0 -58
  998. package/dist/generated/eve/overlays/EveMeshOverlayEffect.js.map +0 -1
  999. package/dist/generated/eve/overlays/index.js +0 -2
  1000. package/dist/generated/eve/overlays/index.js.map +0 -1
  1001. package/dist/generated/eve/perObjectData/EveBoosterSetPerObjectData.js +0 -66
  1002. package/dist/generated/eve/perObjectData/EveBoosterSetPerObjectData.js.map +0 -1
  1003. package/dist/generated/eve/perObjectData/EveChildBulletStormPerObjectData.js +0 -39
  1004. package/dist/generated/eve/perObjectData/EveChildBulletStormPerObjectData.js.map +0 -1
  1005. package/dist/generated/eve/perObjectData/EveDecalPerObjectData.js +0 -34
  1006. package/dist/generated/eve/perObjectData/EveDecalPerObjectData.js.map +0 -1
  1007. package/dist/generated/eve/perObjectData/EveSceneStaticParticlesPerObjectData.js +0 -32
  1008. package/dist/generated/eve/perObjectData/EveSceneStaticParticlesPerObjectData.js.map +0 -1
  1009. package/dist/generated/eve/perObjectData/index.js +0 -5
  1010. package/dist/generated/eve/perObjectData/index.js.map +0 -1
  1011. package/dist/generated/eve/scene/EveComponentCollection.js.map +0 -1
  1012. package/dist/generated/eve/scene/EveComponentRegistry.js.map +0 -1
  1013. package/dist/generated/eve/scene/EvePickingContext.js +0 -43
  1014. package/dist/generated/eve/scene/EvePickingContext.js.map +0 -1
  1015. package/dist/generated/eve/scene/EveSceneStaticParticles.js.map +0 -1
  1016. package/dist/generated/eve/scene/TriShadowFrustum.js +0 -83
  1017. package/dist/generated/eve/scene/TriShadowFrustum.js.map +0 -1
  1018. package/dist/generated/eve/scene/TriShadowOrthoFrustum.js +0 -140
  1019. package/dist/generated/eve/scene/TriShadowOrthoFrustum.js.map +0 -1
  1020. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js.map +0 -1
  1021. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js.map +0 -1
  1022. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js.map +0 -1
  1023. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js.map +0 -1
  1024. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js.map +0 -1
  1025. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js.map +0 -1
  1026. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js.map +0 -1
  1027. package/dist/generated/eve/smartLights/attributeModifiers/enums.js.map +0 -1
  1028. package/dist/generated/eve/smartLights/attributeModifiers/index.js +0 -9
  1029. package/dist/generated/eve/smartLights/attributeModifiers/index.js.map +0 -1
  1030. package/dist/generated/eve/socket/EveSocketParameterBindingBase.js.map +0 -1
  1031. package/dist/generated/eve/socket/EveSocketParameterBool.js.map +0 -1
  1032. package/dist/generated/eve/socket/EveSocketParameterColor.js.map +0 -1
  1033. package/dist/generated/eve/socket/EveSocketParameterFloat.js.map +0 -1
  1034. package/dist/generated/eve/socket/EveSocketParameterInt.js.map +0 -1
  1035. package/dist/generated/eve/socket/EveSocketParameterString.js.map +0 -1
  1036. package/dist/generated/eve/socket/EveSocketParameterVector2.js.map +0 -1
  1037. package/dist/generated/eve/socket/EveSocketParameterVector3.js.map +0 -1
  1038. package/dist/generated/eve/socket/EveSocketParameterVector4.js.map +0 -1
  1039. package/dist/generated/eve/socket/index.js +0 -10
  1040. package/dist/generated/eve/socket/index.js.map +0 -1
  1041. package/dist/generated/eve/spaceObject/EvePlanet.js.map +0 -1
  1042. package/dist/generated/eve/spaceObject/EveShip2.js.map +0 -1
  1043. package/dist/generated/eve/spaceObject/IEveSpaceObject2.js +0 -46
  1044. package/dist/generated/eve/spaceObject/IEveSpaceObject2.js.map +0 -1
  1045. package/dist/generated/eve/spaceObject/swarm/EveSwarmRenderable.js.map +0 -1
  1046. package/dist/generated/eve/ui/EveLineSet.js.map +0 -1
  1047. package/dist/generated/eve/ui/EveSpherePin.js.map +0 -1
  1048. package/dist/generated/eve/ui/EveTacticalOverlayTrackObject.js +0 -44
  1049. package/dist/generated/eve/ui/EveTacticalOverlayTrackObject.js.map +0 -1
  1050. package/dist/generated/eve/ui/EveTacticalTrails.js.map +0 -1
  1051. package/dist/generated/trinityCore/Tr2DynamicBinding.js +0 -58
  1052. package/dist/generated/trinityCore/Tr2DynamicBinding.js.map +0 -1
  1053. package/dist/generated/trinityCore/Tr2ExternalParameter.js +0 -164
  1054. package/dist/generated/trinityCore/Tr2ExternalParameter.js.map +0 -1
  1055. package/dist/generated/trinityCore/Tr2GrannyAnimation.js.map +0 -1
  1056. package/dist/generated/trinityCore/Tr2ShLightingManager.js +0 -48
  1057. package/dist/generated/trinityCore/Tr2ShLightingManager.js.map +0 -1
  1058. package/dist/generated/trinityCore/TriValueBinding.js +0 -249
  1059. package/dist/generated/trinityCore/TriValueBinding.js.map +0 -1
  1060. package/dist/shader/Tr2Shader.js +0 -150
  1061. package/dist/shader/Tr2Shader.js.map +0 -1
  1062. package/dist/shader/reflection/Tr2EffectConstant.js +0 -61
  1063. package/dist/shader/reflection/Tr2EffectConstant.js.map +0 -1
  1064. package/dist/shader/reflection/Tr2EffectDefine.js +0 -34
  1065. package/dist/shader/reflection/Tr2EffectDefine.js.map +0 -1
  1066. package/dist/shader/reflection/Tr2EffectDescription.js +0 -34
  1067. package/dist/shader/reflection/Tr2EffectDescription.js.map +0 -1
  1068. package/dist/shader/reflection/Tr2EffectLibrary.js +0 -61
  1069. package/dist/shader/reflection/Tr2EffectLibrary.js.map +0 -1
  1070. package/dist/shader/reflection/Tr2EffectParameterAnnotation.js +0 -54
  1071. package/dist/shader/reflection/Tr2EffectParameterAnnotation.js.map +0 -1
  1072. package/dist/shader/reflection/Tr2EffectResource.js +0 -63
  1073. package/dist/shader/reflection/Tr2EffectResource.js.map +0 -1
  1074. package/dist/shader/reflection/Tr2EffectStageInput.js +0 -58
  1075. package/dist/shader/reflection/Tr2EffectStageInput.js.map +0 -1
  1076. package/dist/shader/reflection/Tr2EffectTechnique.js +0 -40
  1077. package/dist/shader/reflection/Tr2EffectTechnique.js.map +0 -1
  1078. package/dist/shader/reflection/Tr2Pass.js +0 -46
  1079. package/dist/shader/reflection/Tr2Pass.js.map +0 -1
  1080. package/dist/shader/sampler/Tr2SamplerSetup.js +0 -34
  1081. package/dist/shader/sampler/Tr2SamplerSetup.js.map +0 -1
  1082. package/dist/trinityCore/Tr2BindingVector3.js.map +0 -1
  1083. package/dist/trinityCore/Tr2PyValueBinding.js.map +0 -1
  1084. package/dist/trinityCore/rawData/RawDataStore.js +0 -232
  1085. package/dist/trinityCore/rawData/RawDataStore.js.map +0 -1
  1086. /package/dist/{generated/eve → eve}/distribution/attributeModifiers/enums.js +0 -0
  1087. /package/dist/{generated/eve → eve}/smartLights/attributeModifiers/enums.js +0 -0
@@ -0,0 +1,357 @@
1
+ import { RawDataType, RawData } from './RawData.js';
2
+ import { CjsPerObjectLayouts } from './CjsPerObjectLayouts.js';
3
+
4
+ // Factory + arena for RawData constant-data payloads.
5
+ //
6
+ // Named for Carbon TriPoolAllocator (TriPoolAllocator.h/.cpp): the same job,
7
+ // lifetime and per-frame Clear. Carbon bump-allocates with placement new and
8
+ // wholesale Clear()s at EndRenderContext (Tr2Renderer.cpp:1072-1081), which is
9
+ // exactly what Alloc/Reset do here. It also carries the struct-layout registry,
10
+ // which C++ gets free from the type system via Allocate<T>().
11
+ //
12
+ // A pool is PER-ENGINE (one CjsLibrary = one live backend). Structs are
13
+ // REGISTERED on the instance - registration resolves each struct's layout right
14
+ // then, so a struct that cannot be laid out fails loud at registration, naming
15
+ // it.
16
+ //
17
+ // TRINITY COMPUTES THE OFFSETS. This once required an engine-injected packer,
18
+ // on the premise that the physical layout is BACKEND-SPECIFIC. That premise is
19
+ // false for these buffers, verified 2026-07-28: every backend declares them as
20
+ // a flat array of vec4 - WGSL `array<vec4<f32>, N>`, GLSL `vec4 cbN[N]`, or a
21
+ // std140 block wrapping `vec4 data[N]` - and std140's stride for an array of
22
+ // vec4 is 16 bytes, identical to tight C++ packing. The std140 rules that DO
23
+ // diverge (vec3 padded to 16, scalar array stride) never engage, because there
24
+ // are no struct members to pad: the translated shader indexes the flat array
25
+ // and reassembles fields itself.
26
+ //
27
+ // Layouts resolve from two sources, in order:
28
+ //
29
+ // 1. CjsPerObjectLayouts, when the struct name is a Carbon struct. Those
30
+ // offsets are declared, not derived, because Carbon memcpy's the C++
31
+ // struct (EveSpaceObject2.cpp:1469-1483) and its members sit on float4
32
+ // boundaries - tight-packing a FLOAT member would drift from it.
33
+ // 2. tight packing of the supplied def, for an ad-hoc struct the catalog
34
+ // does not carry.
35
+ //
36
+ // Offsets are FLOAT offsets relative to one instance's slot (the same offset
37
+ // indexes the Float32 and Uint32 views).
38
+ //
39
+ // Allocation is an ARENA (bump), not a free-list:
40
+ // - Alloc(name) bumps a cursor and returns a view ("snip off what you need")
41
+ // into a RETAINED backing buffer - the buffer is NOT recreated per frame.
42
+ // - Reset() rewinds the cursor; every slot is freed at once, O(1); the
43
+ // chunks are kept and reused next frame.
44
+ // - There is no Unalloc: transient slots live until their batch dispatches,
45
+ // so Reset is the only free. Permanent per-object data is not Alloc'd - a
46
+ // static placeable constructs its own RawData and owns it across frames.
47
+ //
48
+ // Maps to Carbon: Alloc == accumulator.Allocate (Tr2Renderer::GetPoolAllocator,
49
+ // reset per frame). No clear-on-Alloc, so an unwritten field shows the previous
50
+ // tenant's bytes - that reproduces Carbon's "unwritten slots = allocator
51
+ // garbage" (declared defaults are re-applied on Alloc; everything else is
52
+ // write-what-you-rely-on).
53
+ //
54
+ // Design: PER-OBJECT-DATA-DESIGN-2026-07-24.md
55
+
56
+ /** Declared catalog type -> the encoder kind that writes its bytes. */
57
+ const CATALOG_ENCODINGS = {
58
+ [CjsPerObjectLayouts.Types.MATRIX4]: RawDataType.MATRIX,
59
+ [CjsPerObjectLayouts.Types.UINT32]: RawDataType.UINT,
60
+ [CjsPerObjectLayouts.Types.INT32]: RawDataType.INT
61
+ };
62
+
63
+ /**
64
+ * A catalog layout as a store field-def array.
65
+ *
66
+ * A default on an array field is repeated across every element: the store
67
+ * applies each default at a single offset, and Carbon's neutral for a slot
68
+ * (identity for an unused custom mask) applies to every slot, not just the
69
+ * first.
70
+ */
71
+ function catalogDef(layout) {
72
+ const def = [];
73
+ for (const field of layout.fields.values()) {
74
+ let value = null;
75
+ if (field.default) {
76
+ value = field.count > 1 ? Array.from({
77
+ length: field.count
78
+ }, () => [...field.default]).flat() : [...field.default];
79
+ }
80
+ def.push({
81
+ name: field.name,
82
+ size: field.size,
83
+ elements: field.count,
84
+ encoding: CATALOG_ENCODINGS[field.type] ?? RawDataType.VECTOR,
85
+ default: value
86
+ });
87
+ }
88
+ return def;
89
+ }
90
+
91
+ /**
92
+ * Carbon's declared layout for a struct, or null when the catalog omits it.
93
+ */
94
+ function catalogLayout(structName) {
95
+ const layout = CjsPerObjectLayouts.Get(structName);
96
+ if (!layout) {
97
+ return null;
98
+ }
99
+ const fields = {};
100
+ for (const field of layout.fields.values()) {
101
+ fields[field.name] = {
102
+ offset: field.offset,
103
+ size: field.size,
104
+ elements: field.count,
105
+ encoding: CATALOG_ENCODINGS[field.type] ?? RawDataType.VECTOR
106
+ };
107
+ }
108
+ return {
109
+ fields,
110
+ stride: layout.stride
111
+ };
112
+ }
113
+
114
+ /**
115
+ * Tight layout for an ad-hoc struct the catalog does not carry: fields in
116
+ * declared order, no padding.
117
+ */
118
+ function tightLayout(normalized) {
119
+ const fields = {};
120
+ let offset = 0;
121
+ for (const field of normalized) {
122
+ fields[field.name] = {
123
+ offset,
124
+ size: field.size,
125
+ elements: field.elements,
126
+ encoding: field.encoding
127
+ };
128
+ offset += field.size * field.elements;
129
+ }
130
+ return {
131
+ fields,
132
+ stride: offset
133
+ };
134
+ }
135
+
136
+ /** Registers constant-data struct shapes and leases packed payloads from a per-engine arena. */
137
+ class TriPoolAllocator {
138
+ /** Registered layouts: name -> { fields, stride, defaults }. */
139
+ #layouts = new Map();
140
+
141
+ /** Retained arena chunks (Float32) and their Uint32 aliases. */
142
+ #chunks = [];
143
+ #chunkAliases = [];
144
+
145
+ /** Floats per chunk; also the largest struct a single Alloc may request. */
146
+ #chunkFloats = 8192;
147
+ #chunkIndex = 0;
148
+ #cursor = 0;
149
+
150
+ /**
151
+ * @param {object} [options]
152
+ * @param {number} [options.chunkFloats] - arena chunk size in floats.
153
+ */
154
+ constructor(options = {}) {
155
+ if (Number.isInteger(options.chunkFloats) && options.chunkFloats > 0) {
156
+ this.#chunkFloats = options.chunkFloats;
157
+ }
158
+ this.#AddChunk();
159
+ }
160
+
161
+ /**
162
+ * Register several structs at once: { StructName: def, ... }. Each value is a
163
+ * field-def array (see RegisterStruct) or { def, stages } when the struct
164
+ * binds anywhere other than the default vertex-stage slot. Returns the store
165
+ * for chaining.
166
+ */
167
+ Register(structs) {
168
+ for (const name of Object.keys(structs)) {
169
+ const entry = structs[name];
170
+ if (Array.isArray(entry)) {
171
+ this.RegisterStruct(name, entry);
172
+ } else {
173
+ this.RegisterStruct(name, entry.def, {
174
+ stages: entry.stages
175
+ });
176
+ }
177
+ }
178
+ return this;
179
+ }
180
+
181
+ /**
182
+ * Register one struct and RESOLVE its layout immediately. `def` is an array
183
+ * of field defs: { name, encoding, size, elements?, default? }, where `size`
184
+ * may instead be a defaults ARRAY whose length is the size. Omit `def`
185
+ * entirely for a Carbon struct and the catalog supplies it. Returns the store
186
+ * for chaining.
187
+ *
188
+ * `options.stages` declares which per-object constant slots the payload binds
189
+ * (default ["vs"]). This is Carbon-SEMANTIC knowledge - which
190
+ * FillAndSetConstants calls exist for the struct - so it travels with the def
191
+ * rather than the layout: ["vs"] a vertex-stage payload, ["ps"] a pixel payload (one
192
+ * half of a { vs, ps } record), ["vs", "ps"] the SAME bytes bound to both
193
+ * slots (sphere pin, lensflare). The engine reads it from GetLayout().stages.
194
+ */
195
+ RegisterStruct(name, def, options = {}) {
196
+ if (def === undefined) {
197
+ // No def supplied: take Carbon's, from the catalog.
198
+ const layout = CjsPerObjectLayouts.Get(name);
199
+ if (!layout) {
200
+ throw new Error(`TriPoolAllocator: struct "${name}" is not in CjsPerObjectLayouts - add it there, or pass a def explicitly`);
201
+ }
202
+ def = catalogDef(layout);
203
+ options = {
204
+ ...options,
205
+ stages: options.stages ?? layout.stages
206
+ };
207
+ }
208
+ const normalized = TriPoolAllocator.normalizeDef(def);
209
+ const stages = TriPoolAllocator.normalizeStages(name, options.stages);
210
+
211
+ // Carbon's declared offsets win: its members sit on float4 boundaries, so
212
+ // tight-packing them would drift the moment a struct carries a FLOAT.
213
+ const resolved = catalogLayout(name) ?? tightLayout(normalized);
214
+ if (resolved.stride > this.#chunkFloats) {
215
+ throw new Error(`TriPoolAllocator: struct "${name}" (${resolved.stride} floats) exceeds the chunk size (${this.#chunkFloats})`);
216
+ }
217
+ const defaults = [];
218
+ for (const field of normalized) {
219
+ if (field.default) {
220
+ const entry = resolved.fields[field.name];
221
+ if (entry) {
222
+ defaults.push({
223
+ offset: entry.offset,
224
+ values: field.default
225
+ });
226
+ }
227
+ }
228
+ }
229
+ this.#layouts.set(name, {
230
+ fields: resolved.fields,
231
+ stride: resolved.stride,
232
+ defaults,
233
+ stages
234
+ });
235
+ return this;
236
+ }
237
+
238
+ /** Whether a struct has been registered on this store. */
239
+ Has(name) {
240
+ return this.#layouts.has(name);
241
+ }
242
+
243
+ /**
244
+ * Lease a TRANSIENT payload for a registered struct. Bumps the arena and
245
+ * returns a RawData view over the next slot, with declared defaults applied.
246
+ * Valid until the next Reset().
247
+ */
248
+ Alloc(name) {
249
+ const layout = this.#layouts.get(name);
250
+ if (!layout) {
251
+ throw new Error(`TriPoolAllocator: struct "${name}" is not registered on this store (call Register/RegisterStruct first)`);
252
+ }
253
+ const stride = layout.stride;
254
+ if (this.#cursor + stride > this.#chunkFloats) {
255
+ this.#chunkIndex++;
256
+ this.#cursor = 0;
257
+ if (this.#chunkIndex >= this.#chunks.length) {
258
+ this.#AddChunk();
259
+ }
260
+ }
261
+ const start = this.#cursor;
262
+ this.#cursor += stride;
263
+ const floats = this.#chunks[this.#chunkIndex].subarray(start, start + stride);
264
+ const uints = this.#chunkAliases[this.#chunkIndex].subarray(start, start + stride);
265
+ for (const preset of layout.defaults) {
266
+ const values = preset.values;
267
+ for (let index = 0; index < values.length; index++) {
268
+ floats[preset.offset + index] = values[index];
269
+ }
270
+ }
271
+ return new RawData(layout, floats, uints, name);
272
+ }
273
+
274
+ /**
275
+ * Free every transient slot at once (frame end). Rewinds the arena cursor;
276
+ * the backing chunks are RETAINED and reused - nothing is reallocated.
277
+ */
278
+ Reset() {
279
+ this.#chunkIndex = 0;
280
+ this.#cursor = 0;
281
+ }
282
+
283
+ /**
284
+ * Appends a fresh arena chunk of chunkFloats floats plus a Uint32 alias view
285
+ * over the same bytes, so payload fields can be written as floats or raw bits.
286
+ */
287
+ #AddChunk() {
288
+ const chunk = new Float32Array(this.#chunkFloats);
289
+ this.#chunks.push(chunk);
290
+ this.#chunkAliases.push(new Uint32Array(chunk.buffer));
291
+ }
292
+
293
+ /** The field encoding kinds (packing directives). */
294
+ static Type = RawDataType;
295
+
296
+ /** The per-object binding slots a struct may declare via options.stages. */
297
+ static Stages = Object.freeze(["vs", "ps", "gs", "cs", "hs", "ds"]);
298
+
299
+ /**
300
+ * Validate a stages declaration: a non-empty array drawn from
301
+ * TriPoolAllocator.Stages, no duplicates. Defaults to ["vs"] (Carbon's most
302
+ * common single-payload binding). Returns a frozen copy.
303
+ */
304
+ static normalizeStages(structName, stages) {
305
+ if (stages === undefined || stages === null) {
306
+ return TriPoolAllocator.defaultStages;
307
+ }
308
+ if (!Array.isArray(stages) || !stages.length) {
309
+ throw new Error(`TriPoolAllocator: struct "${structName}" stages must be a non-empty array`);
310
+ }
311
+ for (const stage of stages) {
312
+ if (!TriPoolAllocator.Stages.includes(stage)) {
313
+ throw new Error(`TriPoolAllocator: struct "${structName}" has unknown stage "${stage}" (expected one of: ${TriPoolAllocator.Stages.join(", ")})`);
314
+ }
315
+ }
316
+ if (new Set(stages).size !== stages.length) {
317
+ throw new Error(`TriPoolAllocator: struct "${structName}" declares a duplicate stage`);
318
+ }
319
+ return Object.freeze([...stages]);
320
+ }
321
+ static defaultStages = Object.freeze(["vs"]);
322
+
323
+ /**
324
+ * Normalize a raw def: default elements to 1, resolve size-as-defaults-array,
325
+ * require a name and encoding. Physical offsets are NOT computed here - they
326
+ * are resolved at registration, from the catalog or by tight packing.
327
+ */
328
+ static normalizeDef(def) {
329
+ return def.map(field => {
330
+ if (!field.name) {
331
+ throw new Error("TriPoolAllocator: every struct field needs a name");
332
+ }
333
+ if (!field.encoding) {
334
+ throw new Error(`TriPoolAllocator: field "${field.name}" needs an encoding (TriPoolAllocator.Type.*)`);
335
+ }
336
+ let size = field.size;
337
+ let defaultValue = field.default ?? null;
338
+ if (Array.isArray(size)) {
339
+ defaultValue = size;
340
+ size = size.length;
341
+ }
342
+ if (!Number.isInteger(size) || size <= 0) {
343
+ throw new Error(`TriPoolAllocator: field "${field.name}" needs a positive integer size`);
344
+ }
345
+ return {
346
+ name: field.name,
347
+ elements: Number.isInteger(field.elements) && field.elements > 0 ? field.elements : 1,
348
+ size,
349
+ encoding: field.encoding,
350
+ default: defaultValue
351
+ };
352
+ });
353
+ }
354
+ }
355
+
356
+ export { TriPoolAllocator };
357
+ //# sourceMappingURL=TriPoolAllocator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TriPoolAllocator.js","sources":["../../../../src/trinityCore/rawData/TriPoolAllocator.js"],"sourcesContent":["// Factory + arena for RawData constant-data payloads.\n//\n// Named for Carbon TriPoolAllocator (TriPoolAllocator.h/.cpp): the same job,\n// lifetime and per-frame Clear. Carbon bump-allocates with placement new and\n// wholesale Clear()s at EndRenderContext (Tr2Renderer.cpp:1072-1081), which is\n// exactly what Alloc/Reset do here. It also carries the struct-layout registry,\n// which C++ gets free from the type system via Allocate<T>().\n//\n// A pool is PER-ENGINE (one CjsLibrary = one live backend). Structs are\n// REGISTERED on the instance - registration resolves each struct's layout right\n// then, so a struct that cannot be laid out fails loud at registration, naming\n// it.\n//\n// TRINITY COMPUTES THE OFFSETS. This once required an engine-injected packer,\n// on the premise that the physical layout is BACKEND-SPECIFIC. That premise is\n// false for these buffers, verified 2026-07-28: every backend declares them as\n// a flat array of vec4 - WGSL `array<vec4<f32>, N>`, GLSL `vec4 cbN[N]`, or a\n// std140 block wrapping `vec4 data[N]` - and std140's stride for an array of\n// vec4 is 16 bytes, identical to tight C++ packing. The std140 rules that DO\n// diverge (vec3 padded to 16, scalar array stride) never engage, because there\n// are no struct members to pad: the translated shader indexes the flat array\n// and reassembles fields itself.\n//\n// Layouts resolve from two sources, in order:\n//\n// 1. CjsPerObjectLayouts, when the struct name is a Carbon struct. Those\n// offsets are declared, not derived, because Carbon memcpy's the C++\n// struct (EveSpaceObject2.cpp:1469-1483) and its members sit on float4\n// boundaries - tight-packing a FLOAT member would drift from it.\n// 2. tight packing of the supplied def, for an ad-hoc struct the catalog\n// does not carry.\n//\n// Offsets are FLOAT offsets relative to one instance's slot (the same offset\n// indexes the Float32 and Uint32 views).\n//\n// Allocation is an ARENA (bump), not a free-list:\n// - Alloc(name) bumps a cursor and returns a view (\"snip off what you need\")\n// into a RETAINED backing buffer - the buffer is NOT recreated per frame.\n// - Reset() rewinds the cursor; every slot is freed at once, O(1); the\n// chunks are kept and reused next frame.\n// - There is no Unalloc: transient slots live until their batch dispatches,\n// so Reset is the only free. Permanent per-object data is not Alloc'd - a\n// static placeable constructs its own RawData and owns it across frames.\n//\n// Maps to Carbon: Alloc == accumulator.Allocate (Tr2Renderer::GetPoolAllocator,\n// reset per frame). No clear-on-Alloc, so an unwritten field shows the previous\n// tenant's bytes - that reproduces Carbon's \"unwritten slots = allocator\n// garbage\" (declared defaults are re-applied on Alloc; everything else is\n// write-what-you-rely-on).\n//\n// Design: PER-OBJECT-DATA-DESIGN-2026-07-24.md\nimport { RawData, RawDataType } from \"./RawData.js\";\nimport { CjsPerObjectLayouts } from \"./CjsPerObjectLayouts.js\";\n\n\n/** Declared catalog type -> the encoder kind that writes its bytes. */\nconst CATALOG_ENCODINGS = {\n [CjsPerObjectLayouts.Types.MATRIX4]: RawDataType.MATRIX,\n [CjsPerObjectLayouts.Types.UINT32]: RawDataType.UINT,\n [CjsPerObjectLayouts.Types.INT32]: RawDataType.INT\n};\n\n\n/**\n * A catalog layout as a store field-def array.\n *\n * A default on an array field is repeated across every element: the store\n * applies each default at a single offset, and Carbon's neutral for a slot\n * (identity for an unused custom mask) applies to every slot, not just the\n * first.\n */\nfunction catalogDef(layout)\n{\n const def = [];\n\n for (const field of layout.fields.values())\n {\n let value = null;\n\n if (field.default)\n {\n value = field.count > 1\n ? Array.from({ length: field.count }, () => [ ...field.default ]).flat()\n : [ ...field.default ];\n }\n\n def.push({\n name: field.name,\n size: field.size,\n elements: field.count,\n encoding: CATALOG_ENCODINGS[field.type] ?? RawDataType.VECTOR,\n default: value\n });\n }\n\n return def;\n}\n\n\n/**\n * Carbon's declared layout for a struct, or null when the catalog omits it.\n */\nfunction catalogLayout(structName)\n{\n const layout = CjsPerObjectLayouts.Get(structName);\n\n if (!layout)\n {\n return null;\n }\n\n const fields = {};\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: CATALOG_ENCODINGS[field.type] ?? RawDataType.VECTOR\n };\n }\n\n return { fields, stride: layout.stride };\n}\n\n\n/**\n * Tight layout for an ad-hoc struct the catalog does not carry: fields in\n * declared order, no padding.\n */\nfunction tightLayout(normalized)\n{\n const fields = {};\n let offset = 0;\n\n for (const field of normalized)\n {\n fields[field.name] = {\n offset,\n size: field.size,\n elements: field.elements,\n encoding: field.encoding\n };\n offset += field.size * field.elements;\n }\n\n return { fields, stride: offset };\n}\n\n\n/** Registers constant-data struct shapes and leases packed payloads from a per-engine arena. */\nexport class TriPoolAllocator\n{\n /** Registered layouts: name -> { fields, stride, defaults }. */\n #layouts = new Map();\n\n /** Retained arena chunks (Float32) and their Uint32 aliases. */\n #chunks = [];\n\n #chunkAliases = [];\n\n /** Floats per chunk; also the largest struct a single Alloc may request. */\n #chunkFloats = 8192;\n\n #chunkIndex = 0;\n\n #cursor = 0;\n\n /**\n * @param {object} [options]\n * @param {number} [options.chunkFloats] - arena chunk size in floats.\n */\n constructor(options = {})\n {\n if (Number.isInteger(options.chunkFloats) && options.chunkFloats > 0)\n {\n this.#chunkFloats = options.chunkFloats;\n }\n\n this.#AddChunk();\n }\n\n /**\n * Register several structs at once: { StructName: def, ... }. Each value is a\n * field-def array (see RegisterStruct) or { def, stages } when the struct\n * binds anywhere other than the default vertex-stage slot. Returns the store\n * for chaining.\n */\n Register(structs)\n {\n for (const name of Object.keys(structs))\n {\n const entry = structs[name];\n\n if (Array.isArray(entry))\n {\n this.RegisterStruct(name, entry);\n }\n else\n {\n this.RegisterStruct(name, entry.def, { stages: entry.stages });\n }\n }\n\n return this;\n }\n\n /**\n * Register one struct and RESOLVE its layout immediately. `def` is an array\n * of field defs: { name, encoding, size, elements?, default? }, where `size`\n * may instead be a defaults ARRAY whose length is the size. Omit `def`\n * entirely for a Carbon struct and the catalog supplies it. Returns the store\n * for chaining.\n *\n * `options.stages` declares which per-object constant slots the payload binds\n * (default [\"vs\"]). This is Carbon-SEMANTIC knowledge - which\n * FillAndSetConstants calls exist for the struct - so it travels with the def\n * rather than the layout: [\"vs\"] a vertex-stage payload, [\"ps\"] a pixel payload (one\n * half of a { vs, ps } record), [\"vs\", \"ps\"] the SAME bytes bound to both\n * slots (sphere pin, lensflare). The engine reads it from GetLayout().stages.\n */\n RegisterStruct(name, def, options = {})\n {\n if (def === undefined)\n {\n // No def supplied: take Carbon's, from the catalog.\n const layout = CjsPerObjectLayouts.Get(name);\n\n if (!layout)\n {\n throw new Error(\n `TriPoolAllocator: struct \"${name}\" is not in CjsPerObjectLayouts - add it there, or pass a def explicitly`\n );\n }\n\n def = catalogDef(layout);\n options = { ...options, stages: options.stages ?? layout.stages };\n }\n\n const normalized = TriPoolAllocator.normalizeDef(def);\n const stages = TriPoolAllocator.normalizeStages(name, options.stages);\n\n // Carbon's declared offsets win: its members sit on float4 boundaries, so\n // tight-packing them would drift the moment a struct carries a FLOAT.\n const resolved = catalogLayout(name) ?? tightLayout(normalized);\n\n if (resolved.stride > this.#chunkFloats)\n {\n throw new Error(`TriPoolAllocator: struct \"${name}\" (${resolved.stride} floats) exceeds the chunk size (${this.#chunkFloats})`);\n }\n\n const defaults = [];\n\n for (const field of normalized)\n {\n if (field.default)\n {\n const entry = resolved.fields[field.name];\n\n if (entry)\n {\n defaults.push({ offset: entry.offset, values: field.default });\n }\n }\n }\n\n this.#layouts.set(name, { fields: resolved.fields, stride: resolved.stride, defaults, stages });\n\n return this;\n }\n\n /** Whether a struct has been registered on this store. */\n Has(name)\n {\n return this.#layouts.has(name);\n }\n\n /**\n * Lease a TRANSIENT payload for a registered struct. Bumps the arena and\n * returns a RawData view over the next slot, with declared defaults applied.\n * Valid until the next Reset().\n */\n Alloc(name)\n {\n const layout = this.#layouts.get(name);\n\n if (!layout)\n {\n throw new Error(`TriPoolAllocator: struct \"${name}\" is not registered on this store (call Register/RegisterStruct first)`);\n }\n\n const stride = layout.stride;\n\n if (this.#cursor + stride > this.#chunkFloats)\n {\n this.#chunkIndex++;\n this.#cursor = 0;\n\n if (this.#chunkIndex >= this.#chunks.length)\n {\n this.#AddChunk();\n }\n }\n\n const start = this.#cursor;\n this.#cursor += stride;\n\n const floats = this.#chunks[this.#chunkIndex].subarray(start, start + stride);\n const uints = this.#chunkAliases[this.#chunkIndex].subarray(start, start + stride);\n\n for (const preset of layout.defaults)\n {\n const values = preset.values;\n\n for (let index = 0; index < values.length; index++)\n {\n floats[preset.offset + index] = values[index];\n }\n }\n\n return new RawData(layout, floats, uints, name);\n }\n\n /**\n * Free every transient slot at once (frame end). Rewinds the arena cursor;\n * the backing chunks are RETAINED and reused - nothing is reallocated.\n */\n Reset()\n {\n this.#chunkIndex = 0;\n this.#cursor = 0;\n }\n\n /**\n * Appends a fresh arena chunk of chunkFloats floats plus a Uint32 alias view\n * over the same bytes, so payload fields can be written as floats or raw bits.\n */\n #AddChunk()\n {\n const chunk = new Float32Array(this.#chunkFloats);\n this.#chunks.push(chunk);\n this.#chunkAliases.push(new Uint32Array(chunk.buffer));\n }\n\n /** The field encoding kinds (packing directives). */\n static Type = RawDataType;\n\n /** The per-object binding slots a struct may declare via options.stages. */\n static Stages = Object.freeze([\"vs\", \"ps\", \"gs\", \"cs\", \"hs\", \"ds\"]);\n\n /**\n * Validate a stages declaration: a non-empty array drawn from\n * TriPoolAllocator.Stages, no duplicates. Defaults to [\"vs\"] (Carbon's most\n * common single-payload binding). Returns a frozen copy.\n */\n static normalizeStages(structName, stages)\n {\n if (stages === undefined || stages === null)\n {\n return TriPoolAllocator.defaultStages;\n }\n\n if (!Array.isArray(stages) || !stages.length)\n {\n throw new Error(`TriPoolAllocator: struct \"${structName}\" stages must be a non-empty array`);\n }\n\n for (const stage of stages)\n {\n if (!TriPoolAllocator.Stages.includes(stage))\n {\n throw new Error(`TriPoolAllocator: struct \"${structName}\" has unknown stage \"${stage}\" (expected one of: ${TriPoolAllocator.Stages.join(\", \")})`);\n }\n }\n\n if (new Set(stages).size !== stages.length)\n {\n throw new Error(`TriPoolAllocator: struct \"${structName}\" declares a duplicate stage`);\n }\n\n return Object.freeze([...stages]);\n }\n\n static defaultStages = Object.freeze([\"vs\"]);\n\n /**\n * Normalize a raw def: default elements to 1, resolve size-as-defaults-array,\n * require a name and encoding. Physical offsets are NOT computed here - they\n * are resolved at registration, from the catalog or by tight packing.\n */\n static normalizeDef(def)\n {\n return def.map(field =>\n {\n if (!field.name)\n {\n throw new Error(\"TriPoolAllocator: every struct field needs a name\");\n }\n\n if (!field.encoding)\n {\n throw new Error(`TriPoolAllocator: field \"${field.name}\" needs an encoding (TriPoolAllocator.Type.*)`);\n }\n\n let size = field.size;\n let defaultValue = field.default ?? null;\n\n if (Array.isArray(size))\n {\n defaultValue = size;\n size = size.length;\n }\n\n if (!Number.isInteger(size) || size <= 0)\n {\n throw new Error(`TriPoolAllocator: field \"${field.name}\" needs a positive integer size`);\n }\n\n return {\n name: field.name,\n elements: Number.isInteger(field.elements) && field.elements > 0 ? field.elements : 1,\n size,\n encoding: field.encoding,\n default: defaultValue\n };\n });\n }\n\n}\n"],"names":["CATALOG_ENCODINGS","CjsPerObjectLayouts","Types","MATRIX4","RawDataType","MATRIX","UINT32","UINT","INT32","INT","catalogDef","layout","def","field","fields","values","value","default","count","Array","from","length","flat","push","name","size","elements","encoding","type","VECTOR","catalogLayout","structName","Get","offset","stride","tightLayout","normalized","TriPoolAllocator","Map","constructor","options","Number","isInteger","chunkFloats","Register","structs","Object","keys","entry","isArray","RegisterStruct","stages","undefined","Error","normalizeDef","normalizeStages","resolved","defaults","set","Has","has","Alloc","get","start","floats","subarray","uints","preset","index","RawData","Reset","#AddChunk","chunk","Float32Array","Uint32Array","buffer","Type","Stages","freeze","defaultStages","stage","includes","join","Set","map","defaultValue"],"mappings":"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"}
@@ -3,6 +3,12 @@ import { CjsModel } from '@carbonenginejs/runtime-utils/model';
3
3
  import { type, carbon, impl } from '@carbonenginejs/runtime-utils/schema';
4
4
 
5
5
  let _initProto, _initClass, _init_isUniform, _init_extra_isUniform, _init_centerPoint, _init_extra_centerPoint, _init_minRangePoint, _init_extra_minRangePoint, _init_maxRangePoint, _init_extra_maxRangePoint;
6
+
7
+ /**
8
+ * A center point with a lower and an upper range point, optionally kept
9
+ * symmetric about the center, and clamped for display against separate slider
10
+ * bounds.
11
+ */
6
12
  let _Range;
7
13
  class Range extends CjsModel {
8
14
  static {
@@ -59,6 +65,8 @@ class Range extends CjsModel {
59
65
  }
60
66
  this.#syncRangePoints();
61
67
  }
68
+
69
+ /** Returns the point both range points are measured from. */
62
70
  GetCenterPoint() {
63
71
  return this.centerPoint;
64
72
  }
@@ -67,21 +75,41 @@ class Range extends CjsModel {
67
75
  GetMinRangePoint() {
68
76
  return this.minRangePoint;
69
77
  }
78
+
79
+ /**
80
+ * Returns the upper range point after Carbon's clamp, which is a min against
81
+ * the slider maximum, not a max (Range.cpp:68-71).
82
+ */
70
83
  GetMaxRangePoint() {
71
84
  return this.maxRangePoint;
72
85
  }
86
+
87
+ /**
88
+ * Flips symmetric mode, and when turning it on collapses both sides to the
89
+ * smaller of the two distances from the center.
90
+ */
73
91
  ToggleIsUniform() {
74
92
  this.isUniform = !this.isUniform;
75
93
  if (this.isUniform) {
76
94
  this.FixUniformity();
77
95
  }
78
96
  }
97
+
98
+ /**
99
+ * Sets symmetric mode, fixing up the range points immediately when enabling
100
+ * it.
101
+ */
79
102
  SetIsUniform(value) {
80
103
  this.isUniform = value;
81
104
  if (this.isUniform) {
82
105
  this.FixUniformity();
83
106
  }
84
107
  }
108
+
109
+ /**
110
+ * Makes the range symmetric by adopting the smaller of the two distances from
111
+ * the center on both sides, so uniformity narrows rather than widens.
112
+ */
85
113
  FixUniformity() {
86
114
  const minRangeDelta = this.centerPoint - this.#minRange;
87
115
  const maxRangeDelta = this.#maxRange - this.centerPoint;
@@ -89,23 +117,48 @@ class Range extends CjsModel {
89
117
  this.SetMinRangePoint(this.centerPoint - newDelta);
90
118
  this.SetMaxRangePoint(this.centerPoint + newDelta);
91
119
  }
120
+
121
+ /**
122
+ * Reports whether the two range points are being kept symmetric about the
123
+ * center.
124
+ */
92
125
  GetIsUniform() {
93
126
  return this.isUniform;
94
127
  }
128
+
129
+ /**
130
+ * Sets the lower slider bound the exposed range points are clamped against,
131
+ * and re-clamps them.
132
+ */
95
133
  SetSliderMin(value) {
96
134
  this.#sliderRangeMin = value;
97
135
  this.#syncRangePoints();
98
136
  }
137
+
138
+ /**
139
+ * Sets the upper slider bound the exposed range points are clamped against,
140
+ * and re-clamps them.
141
+ */
99
142
  SetSliderMax(value) {
100
143
  this.#sliderRangeMax = value;
101
144
  this.#syncRangePoints();
102
145
  }
146
+
147
+ /** Returns the lower slider bound used when clamping the exposed range points. */
103
148
  GetSliderMin() {
104
149
  return this.#sliderRangeMin;
105
150
  }
151
+
152
+ /** Returns the upper slider bound used when clamping the exposed range points. */
106
153
  GetSliderMax() {
107
154
  return this.#sliderRangeMax;
108
155
  }
156
+
157
+ /**
158
+ * Recomputes the exposed minRangePoint and maxRangePoint from the internal
159
+ * range and the slider bounds; Carbon derives these on read (Range.cpp:63-71)
160
+ * and clamps both with min, which is reproduced here rather than corrected.
161
+ */
109
162
  #syncRangePoints() {
110
163
  this.minRangePoint = Math.min(this.#minRange, this.#sliderRangeMin);
111
164
  this.maxRangePoint = Math.min(this.#maxRange, this.#sliderRangeMax);
@@ -1 +1 @@
1
- {"version":3,"file":"Range.js","sources":["../../../src/utilities/Range.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\Utilities\\Range.h\n// Source: E:\\carbonengine\\trinity\\trinity\\Utilities\\Range.cpp\n// Source: E:\\carbonengine\\trinity\\trinity\\Utilities\\Range_Blue.cpp\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\nimport { carbon, impl, type } from \"@carbonenginejs/runtime-utils/schema\";\n\n\n@type.define({\n className: \"Range\",\n family: \"utilities\"\n})\nexport class Range extends CjsModel\n{\n @type.boolean\n isUniform = true;\n\n @type.float32\n centerPoint = 0;\n\n @type.float32\n minRangePoint = 0;\n\n @type.float32\n maxRangePoint = 0;\n\n #minRange = 0;\n\n #maxRange = 0;\n\n #sliderRangeMin = 0;\n\n #sliderRangeMax = 0;\n\n /** Moves the range while preserving both distances from its center. */\n @carbon.method\n @impl.implemented\n SetCenterPoint(value)\n {\n const delta = value - this.centerPoint;\n this.centerPoint = value;\n this.#minRange += delta;\n this.#maxRange += delta;\n this.#syncRangePoints();\n }\n\n /** Configures the symmetric range and its slider bounds. */\n @carbon.method\n @impl.implemented\n Setup(rangeCenterPoint, rangeDeltaFromCenter, sliderMin, sliderMax)\n {\n this.centerPoint = rangeCenterPoint;\n this.#minRange = this.centerPoint - rangeDeltaFromCenter;\n this.#maxRange = this.centerPoint + rangeDeltaFromCenter;\n this.#sliderRangeMin = sliderMin;\n this.#sliderRangeMax = sliderMax;\n this.#syncRangePoints();\n }\n\n /** Sets the lower range point and mirrors it when uniform. */\n @carbon.method\n @impl.implemented\n SetMinRangePoint(value)\n {\n this.#minRange = Math.min(value, this.centerPoint);\n if (this.isUniform)\n {\n this.#maxRange = this.centerPoint + (this.centerPoint - this.#minRange);\n }\n this.#syncRangePoints();\n }\n\n /** Sets the upper range point and mirrors it when uniform. */\n @carbon.method\n @impl.implemented\n SetMaxRangePoint(value)\n {\n this.#maxRange = Math.max(value, this.centerPoint);\n if (this.isUniform)\n {\n this.#minRange = this.centerPoint - (this.#maxRange - this.centerPoint);\n }\n this.#syncRangePoints();\n }\n\n @carbon.method\n @impl.implemented\n GetCenterPoint()\n {\n return this.centerPoint;\n }\n\n /** Preserves Carbon's exact lower-bound comparison behavior. */\n @carbon.method\n @impl.implemented\n GetMinRangePoint()\n {\n return this.minRangePoint;\n }\n\n @carbon.method\n @impl.implemented\n GetMaxRangePoint()\n {\n return this.maxRangePoint;\n }\n\n @carbon.method\n @impl.implemented\n ToggleIsUniform()\n {\n this.isUniform = !this.isUniform;\n if (this.isUniform)\n {\n this.FixUniformity();\n }\n }\n\n @carbon.method\n @impl.implemented\n SetIsUniform(value)\n {\n this.isUniform = value;\n if (this.isUniform)\n {\n this.FixUniformity();\n }\n }\n\n FixUniformity()\n {\n const minRangeDelta = this.centerPoint - this.#minRange;\n const maxRangeDelta = this.#maxRange - this.centerPoint;\n const newDelta = Math.min(minRangeDelta, maxRangeDelta);\n this.SetMinRangePoint(this.centerPoint - newDelta);\n this.SetMaxRangePoint(this.centerPoint + newDelta);\n }\n\n @carbon.method\n @impl.implemented\n GetIsUniform()\n {\n return this.isUniform;\n }\n\n @carbon.method\n @impl.implemented\n SetSliderMin(value)\n {\n this.#sliderRangeMin = value;\n this.#syncRangePoints();\n }\n\n @carbon.method\n @impl.implemented\n SetSliderMax(value)\n {\n this.#sliderRangeMax = value;\n this.#syncRangePoints();\n }\n\n @carbon.method\n @impl.implemented\n GetSliderMin()\n {\n return this.#sliderRangeMin;\n }\n\n @carbon.method\n @impl.implemented\n GetSliderMax()\n {\n return this.#sliderRangeMax;\n }\n\n #syncRangePoints()\n {\n this.minRangePoint = Math.min(this.#minRange, this.#sliderRangeMin);\n this.maxRangePoint = Math.min(this.#maxRange, this.#sliderRangeMax);\n }\n}\n"],"names":["_Range","Range","CjsModel","e","_init_isUniform","_init_extra_isUniform","_init_centerPoint","_init_extra_centerPoint","_init_minRangePoint","_init_extra_minRangePoint","_init_maxRangePoint","_init_extra_maxRangePoint","_initProto","c","_initClass","_applyDecs","type","define","className","family","boolean","float32","carbon","method","impl","implemented","isUniform","centerPoint","minRangePoint","maxRangePoint","SetCenterPoint","value","delta","Setup","rangeCenterPoint","rangeDeltaFromCenter","sliderMin","sliderMax","SetMinRangePoint","Math","min","SetMaxRangePoint","max","GetCenterPoint","GetMinRangePoint","GetMaxRangePoint","ToggleIsUniform","FixUniformity","SetIsUniform","minRangeDelta","maxRangeDelta","newDelta","GetIsUniform","SetSliderMin","SetSliderMax","GetSliderMin","GetSliderMax","#syncRangePoints"],"mappings":"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"}
1
+ {"version":3,"file":"Range.js","sources":["../../../src/utilities/Range.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\Utilities\\Range.h\r\n// Source: E:\\carbonengine\\trinity\\trinity\\Utilities\\Range.cpp\r\n// Source: E:\\carbonengine\\trinity\\trinity\\Utilities\\Range_Blue.cpp\r\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\r\nimport { carbon, impl, type } from \"@carbonenginejs/runtime-utils/schema\";\r\n\r\n\r\n/**\r\n * A center point with a lower and an upper range point, optionally kept\r\n * symmetric about the center, and clamped for display against separate slider\r\n * bounds.\r\n */\r\n@type.define({\r\n className: \"Range\",\r\n family: \"utilities\"\r\n})\r\nexport class Range extends CjsModel\r\n{\r\n @type.boolean\r\n isUniform = true;\r\n\r\n @type.float32\r\n centerPoint = 0;\r\n\r\n @type.float32\r\n minRangePoint = 0;\r\n\r\n @type.float32\r\n maxRangePoint = 0;\r\n\r\n #minRange = 0;\r\n\r\n #maxRange = 0;\r\n\r\n #sliderRangeMin = 0;\r\n\r\n #sliderRangeMax = 0;\r\n\r\n /** Moves the range while preserving both distances from its center. */\r\n @carbon.method\r\n @impl.implemented\r\n SetCenterPoint(value)\r\n {\r\n const delta = value - this.centerPoint;\r\n this.centerPoint = value;\r\n this.#minRange += delta;\r\n this.#maxRange += delta;\r\n this.#syncRangePoints();\r\n }\r\n\r\n /** Configures the symmetric range and its slider bounds. */\r\n @carbon.method\r\n @impl.implemented\r\n Setup(rangeCenterPoint, rangeDeltaFromCenter, sliderMin, sliderMax)\r\n {\r\n this.centerPoint = rangeCenterPoint;\r\n this.#minRange = this.centerPoint - rangeDeltaFromCenter;\r\n this.#maxRange = this.centerPoint + rangeDeltaFromCenter;\r\n this.#sliderRangeMin = sliderMin;\r\n this.#sliderRangeMax = sliderMax;\r\n this.#syncRangePoints();\r\n }\r\n\r\n /** Sets the lower range point and mirrors it when uniform. */\r\n @carbon.method\r\n @impl.implemented\r\n SetMinRangePoint(value)\r\n {\r\n this.#minRange = Math.min(value, this.centerPoint);\r\n if (this.isUniform)\r\n {\r\n this.#maxRange = this.centerPoint + (this.centerPoint - this.#minRange);\r\n }\r\n this.#syncRangePoints();\r\n }\r\n\r\n /** Sets the upper range point and mirrors it when uniform. */\r\n @carbon.method\r\n @impl.implemented\r\n SetMaxRangePoint(value)\r\n {\r\n this.#maxRange = Math.max(value, this.centerPoint);\r\n if (this.isUniform)\r\n {\r\n this.#minRange = this.centerPoint - (this.#maxRange - this.centerPoint);\r\n }\r\n this.#syncRangePoints();\r\n }\r\n\r\n /** Returns the point both range points are measured from. */\r\n @carbon.method\r\n @impl.implemented\r\n GetCenterPoint()\r\n {\r\n return this.centerPoint;\r\n }\r\n\r\n /** Preserves Carbon's exact lower-bound comparison behavior. */\r\n @carbon.method\r\n @impl.implemented\r\n GetMinRangePoint()\r\n {\r\n return this.minRangePoint;\r\n }\r\n\r\n /**\r\n * Returns the upper range point after Carbon's clamp, which is a min against\r\n * the slider maximum, not a max (Range.cpp:68-71).\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n GetMaxRangePoint()\r\n {\r\n return this.maxRangePoint;\r\n }\r\n\r\n /**\r\n * Flips symmetric mode, and when turning it on collapses both sides to the\r\n * smaller of the two distances from the center.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n ToggleIsUniform()\r\n {\r\n this.isUniform = !this.isUniform;\r\n if (this.isUniform)\r\n {\r\n this.FixUniformity();\r\n }\r\n }\r\n\r\n /**\r\n * Sets symmetric mode, fixing up the range points immediately when enabling\r\n * it.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n SetIsUniform(value)\r\n {\r\n this.isUniform = value;\r\n if (this.isUniform)\r\n {\r\n this.FixUniformity();\r\n }\r\n }\r\n\r\n /**\r\n * Makes the range symmetric by adopting the smaller of the two distances from\r\n * the center on both sides, so uniformity narrows rather than widens.\r\n */\r\n FixUniformity()\r\n {\r\n const minRangeDelta = this.centerPoint - this.#minRange;\r\n const maxRangeDelta = this.#maxRange - this.centerPoint;\r\n const newDelta = Math.min(minRangeDelta, maxRangeDelta);\r\n this.SetMinRangePoint(this.centerPoint - newDelta);\r\n this.SetMaxRangePoint(this.centerPoint + newDelta);\r\n }\r\n\r\n /**\r\n * Reports whether the two range points are being kept symmetric about the\r\n * center.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n GetIsUniform()\r\n {\r\n return this.isUniform;\r\n }\r\n\r\n /**\r\n * Sets the lower slider bound the exposed range points are clamped against,\r\n * and re-clamps them.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n SetSliderMin(value)\r\n {\r\n this.#sliderRangeMin = value;\r\n this.#syncRangePoints();\r\n }\r\n\r\n /**\r\n * Sets the upper slider bound the exposed range points are clamped against,\r\n * and re-clamps them.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n SetSliderMax(value)\r\n {\r\n this.#sliderRangeMax = value;\r\n this.#syncRangePoints();\r\n }\r\n\r\n /** Returns the lower slider bound used when clamping the exposed range points. */\r\n @carbon.method\r\n @impl.implemented\r\n GetSliderMin()\r\n {\r\n return this.#sliderRangeMin;\r\n }\r\n\r\n /** Returns the upper slider bound used when clamping the exposed range points. */\r\n @carbon.method\r\n @impl.implemented\r\n GetSliderMax()\r\n {\r\n return this.#sliderRangeMax;\r\n }\r\n\r\n /**\r\n * Recomputes the exposed minRangePoint and maxRangePoint from the internal\r\n * range and the slider bounds; Carbon derives these on read (Range.cpp:63-71)\r\n * and clamps both with min, which is reproduced here rather than corrected.\r\n */\r\n #syncRangePoints()\r\n {\r\n this.minRangePoint = Math.min(this.#minRange, this.#sliderRangeMin);\r\n this.maxRangePoint = Math.min(this.#maxRange, this.#sliderRangeMax);\r\n }\r\n}\r\n"],"names":["_Range","Range","CjsModel","e","_init_isUniform","_init_extra_isUniform","_init_centerPoint","_init_extra_centerPoint","_init_minRangePoint","_init_extra_minRangePoint","_init_maxRangePoint","_init_extra_maxRangePoint","_initProto","c","_initClass","_applyDecs","type","define","className","family","boolean","float32","carbon","method","impl","implemented","isUniform","centerPoint","minRangePoint","maxRangePoint","SetCenterPoint","value","delta","Setup","rangeCenterPoint","rangeDeltaFromCenter","sliderMin","sliderMax","SetMinRangePoint","Math","min","SetMaxRangePoint","max","GetCenterPoint","GetMinRangePoint","GetMaxRangePoint","ToggleIsUniform","FixUniformity","SetIsUniform","minRangeDelta","maxRangeDelta","newDelta","GetIsUniform","SetSliderMin","SetSliderMax","GetSliderMin","GetSliderMax","#syncRangePoints"],"mappings":"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"}
package/docs/README.md ADDED
@@ -0,0 +1,88 @@
1
+ # Runtime Trinity documentation
2
+
3
+ Status: Evolving
4
+ Scope: `@carbonenginejs/runtime-trinity`
5
+ Audience: Runtime authors, engine authors, integrators, and maintainers
6
+ Summary: Explains the GPU-free Trinity graph, its public entry points, and its ownership boundaries.
7
+
8
+ ## Purpose
9
+
10
+ `@carbonenginejs/runtime-trinity` owns serializable Carbon Trinity and Eve
11
+ object graphs together with portable CPU-side behavior. Applications can
12
+ hydrate, inspect, update, and collect renderer-neutral work from those graphs
13
+ without creating a canvas, graphics context, or GPU device.
14
+
15
+ The source contains generated schema intake and maintained implementations.
16
+ Classes leave `src/generated` before their first substantive manual source
17
+ change and move into readable source-area directories. A promoted class may
18
+ remain explicitly incomplete while its bounded portable behavior is reviewed.
19
+ The parity audit can expose additional inherited or interface obligations
20
+ after promotion; current exceptions remain explicit in the
21
+ implementation-status reference.
22
+
23
+ ## Use this package when
24
+
25
+ Use `@carbonenginejs/runtime-trinity` when code needs to:
26
+
27
+ - hydrate or serialize Trinity and Eve graph objects;
28
+ - update curves, controllers, cameras, scene objects, or effects on the CPU;
29
+ - collect render batches and render-job intents for an engine to realize;
30
+ - inspect schema-decorated fields and enum choices; or
31
+ - build a headless tool that must not depend on WebGL or WebGPU.
32
+
33
+ Use an engine package when code needs device creation, shader realization,
34
+ resource uploads, draw submission, presentation, or device-loss recovery.
35
+
36
+ ## Where it fits
37
+
38
+ ```text
39
+ @carbonenginejs/tools-core -- reviewed source --> @carbonenginejs/runtime-trinity
40
+ @carbonenginejs/runtime-trinity -- depends on --> runtime-utils + runtime-resource
41
+
42
+ @carbonenginejs/runtime-resource -- decoded values --> application composition
43
+ @carbonenginejs/runtime-trinity -- graph and intents --> application composition
44
+ application composition --> @carbonenginejs/engine-webgpu or host engine
45
+ ```
46
+
47
+ `@carbonenginejs/runtime-utils` provides the shared model, schema, constants,
48
+ and math foundation. `@carbonenginejs/tools-core` is a build-time producer of
49
+ schema and generated-class input, not a runtime dependency.
50
+ `@carbonenginejs/runtime-resource` owns decoded geometry and texture values,
51
+ `Tr2EffectRes`, canonical `Tr2Shader`/reflection records, portable hydration,
52
+ permutation selection, and shader caching. Trinity owns the mutable
53
+ `Tr2Effect`/`Tr2Material` facade, parameters, authored options, sampler
54
+ overrides, and graph behavior. Engine packages own live backend objects and
55
+ realize the combined renderer-neutral graph.
56
+
57
+ Character GState behavior belongs to `@carbonenginejs/runtime-character`.
58
+ Applications or `@carbonenginejs/runtime-core` compose these domains.
59
+
60
+ ## Start here
61
+
62
+ ```js
63
+ import { EveCamera } from "@carbonenginejs/runtime-trinity/eve";
64
+
65
+ const camera = new EveCamera();
66
+ camera.translationFromParent = 100;
67
+ camera.Update(0, 16 / 9);
68
+
69
+ const view = camera.GetViewMatrix();
70
+ ```
71
+
72
+ Import a focused public subpath when the consumer only needs one source
73
+ family. The root entry aggregates the complete public runtime.
74
+
75
+ ## Documentation map
76
+
77
+ - [Architecture and ownership boundaries](architecture.md)
78
+ - [Current API](reference/api.md)
79
+ - [Main semantic extraction](reference/main-semantic-extraction.md)
80
+ - [Eve runtime behavior](concepts/eve-runtime-behavior.md)
81
+ - [Generated-class lifecycle](concepts/generated-class-lifecycle.md)
82
+ - [Implementation status and audits](reference/implementation-status.md)
83
+ - [Eve runtime classes](reference/classes/eve-runtime.md)
84
+ - [Trinity core classes](reference/classes/trinity-core.md)
85
+
86
+ A complete class-purpose catalog is planned after generated classes carry
87
+ reviewed descriptor metadata and the shared documentation checker supports the
88
+ package's deliberate dropped-class quarantine.