@carbonenginejs/runtime-trinity 0.6.0 → 0.8.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 (1091) 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 +342 -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 +143 -5
  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/CjsPerFrameLayouts.js +517 -0
  819. package/dist/trinityCore/rawData/CjsPerFrameLayouts.js.map +1 -0
  820. package/dist/trinityCore/rawData/CjsPerObjectLayouts.js +790 -0
  821. package/dist/trinityCore/rawData/CjsPerObjectLayouts.js.map +1 -0
  822. package/dist/trinityCore/rawData/RawData.js +323 -39
  823. package/dist/trinityCore/rawData/RawData.js.map +1 -1
  824. package/dist/trinityCore/rawData/TriPoolAllocator.js +357 -0
  825. package/dist/trinityCore/rawData/TriPoolAllocator.js.map +1 -0
  826. package/dist/trinityCore/rawData/constantLayout.js +175 -0
  827. package/dist/trinityCore/rawData/constantLayout.js.map +1 -0
  828. package/dist/utilities/Range.js +53 -0
  829. package/dist/utilities/Range.js.map +1 -1
  830. package/docs/README.md +88 -0
  831. package/docs/architecture.md +162 -0
  832. package/docs/concepts/eve-runtime-behavior.md +86 -0
  833. package/docs/concepts/generated-class-lifecycle.md +116 -0
  834. package/docs/reference/api.md +76 -0
  835. package/docs/reference/classes/eve-runtime.md +106 -0
  836. package/docs/reference/classes/trinity-core.md +26 -0
  837. package/docs/reference/implementation-status.md +104 -0
  838. package/docs/reference/main-semantic-extraction.md +104 -0
  839. package/package.json +34 -24
  840. package/dist/eve/DecalVSPerObjectData.js +0 -34
  841. package/dist/eve/DecalVSPerObjectData.js.map +0 -1
  842. package/dist/eve/EveBannerItem.js +0 -43
  843. package/dist/eve/EveBannerItem.js.map +0 -1
  844. package/dist/eve/EveBannerLight.js.map +0 -1
  845. package/dist/eve/EveBannerSet.js +0 -190
  846. package/dist/eve/EveBannerSet.js.map +0 -1
  847. package/dist/eve/EveBasicPerObjectData.js +0 -31
  848. package/dist/eve/EveBasicPerObjectData.js.map +0 -1
  849. package/dist/eve/EveBoosterSet2.js.map +0 -1
  850. package/dist/eve/EveBoosterSet2Renderable.js.map +0 -1
  851. package/dist/eve/EveChildSpherePinPerObjectData.js +0 -37
  852. package/dist/eve/EveChildSpherePinPerObjectData.js.map +0 -1
  853. package/dist/eve/EveHazeSet.js.map +0 -1
  854. package/dist/eve/EveHazeSetLight.js.map +0 -1
  855. package/dist/eve/EveLocator2.js.map +0 -1
  856. package/dist/eve/EveLocatorSets.js.map +0 -1
  857. package/dist/eve/EveParticleDirectForce.js.map +0 -1
  858. package/dist/eve/EveParticleDragForce.js.map +0 -1
  859. package/dist/eve/EveParticleSpring.js.map +0 -1
  860. package/dist/eve/EvePerObjectPSData.js +0 -29
  861. package/dist/eve/EvePerObjectPSData.js.map +0 -1
  862. package/dist/eve/EvePerObjectVSData.js +0 -29
  863. package/dist/eve/EvePerObjectVSData.js.map +0 -1
  864. package/dist/eve/EvePlaneLight.js.map +0 -1
  865. package/dist/eve/EvePlaneSet.js.map +0 -1
  866. package/dist/eve/EvePlaneSetItem.js +0 -45
  867. package/dist/eve/EvePlaneSetItem.js.map +0 -1
  868. package/dist/eve/EveSpaceObjectAttachmentUtils.js.map +0 -1
  869. package/dist/eve/EveSpaceObjectDecal.js +0 -150
  870. package/dist/eve/EveSpaceObjectDecal.js.map +0 -1
  871. package/dist/eve/EveSpaceObjectPSData.js +0 -73
  872. package/dist/eve/EveSpaceObjectPSData.js.map +0 -1
  873. package/dist/eve/EveSpaceObjectVSData.js +0 -79
  874. package/dist/eve/EveSpaceObjectVSData.js.map +0 -1
  875. package/dist/eve/EveSpacePerObjectData.js +0 -97
  876. package/dist/eve/EveSpacePerObjectData.js.map +0 -1
  877. package/dist/eve/EveSpherePinPerObjectData.js +0 -37
  878. package/dist/eve/EveSpherePinPerObjectData.js.map +0 -1
  879. package/dist/eve/EveSpotlightLight.js.map +0 -1
  880. package/dist/eve/EveSpotlightSet.js.map +0 -1
  881. package/dist/eve/EveSpriteLight.js.map +0 -1
  882. package/dist/eve/EveSpriteLineSet.js.map +0 -1
  883. package/dist/eve/EveSpriteLineSetItem.js.map +0 -1
  884. package/dist/eve/EveSpriteSet.js.map +0 -1
  885. package/dist/eve/EveTrailsSet.js.map +0 -1
  886. package/dist/eve/Locator.js.map +0 -1
  887. package/dist/eve/LocatorData.js.map +0 -1
  888. package/dist/eve/ProcessLifetimeData.js.map +0 -1
  889. package/dist/eve/attachment/turrets/EveTurretSetPSData.js +0 -47
  890. package/dist/eve/attachment/turrets/EveTurretSetPSData.js.map +0 -1
  891. package/dist/eve/attachment/turrets/EveTurretSetVSData.js +0 -62
  892. package/dist/eve/attachment/turrets/EveTurretSetVSData.js.map +0 -1
  893. package/dist/eve/child/behaviors/SplineTunnel.js.map +0 -1
  894. package/dist/eve/child/behaviors/SplineTunnelPoint.js.map +0 -1
  895. package/dist/eve/perObjectData/DecalPSPerObjectData.js +0 -56
  896. package/dist/eve/perObjectData/DecalPSPerObjectData.js.map +0 -1
  897. package/dist/eve/perObjectData/EveMissileWarheadPerObjectData.js +0 -31
  898. package/dist/eve/perObjectData/EveMissileWarheadPerObjectData.js.map +0 -1
  899. package/dist/eve/perObjectData/EveTurretSetPerObjectData.js +0 -36
  900. package/dist/eve/perObjectData/EveTurretSetPerObjectData.js.map +0 -1
  901. package/dist/eve/perObjectData/MergeMorphsConstantBuffer.js +0 -64
  902. package/dist/eve/perObjectData/MergeMorphsConstantBuffer.js.map +0 -1
  903. package/dist/generated/eve/EveCamera.js +0 -264
  904. package/dist/generated/eve/EveCamera.js.map +0 -1
  905. package/dist/generated/eve/EveEntity.js +0 -81
  906. package/dist/generated/eve/EveEntity.js.map +0 -1
  907. package/dist/generated/eve/attachment/decal/index.js +0 -2
  908. package/dist/generated/eve/attachment/decal/index.js.map +0 -1
  909. package/dist/generated/eve/attachment/haze/EveHazeSetItem.js +0 -52
  910. package/dist/generated/eve/attachment/haze/EveHazeSetItem.js.map +0 -1
  911. package/dist/generated/eve/attachment/haze/index.js +0 -2
  912. package/dist/generated/eve/attachment/haze/index.js.map +0 -1
  913. package/dist/generated/eve/attachment/index.js +0 -5
  914. package/dist/generated/eve/attachment/index.js.map +0 -1
  915. package/dist/generated/eve/attachment/spotlights/EveSpotlightSetItem.js +0 -55
  916. package/dist/generated/eve/attachment/spotlights/EveSpotlightSetItem.js.map +0 -1
  917. package/dist/generated/eve/attachment/spotlights/index.js +0 -2
  918. package/dist/generated/eve/attachment/spotlights/index.js.map +0 -1
  919. package/dist/generated/eve/attachment/sprites/EveSpriteSetItem.js.map +0 -1
  920. package/dist/generated/eve/attachment/sprites/index.js +0 -2
  921. package/dist/generated/eve/attachment/sprites/index.js.map +0 -1
  922. package/dist/generated/eve/attachment/turrets/enums.js +0 -32
  923. package/dist/generated/eve/attachment/turrets/enums.js.map +0 -1
  924. package/dist/generated/eve/attachment/turrets/index.js +0 -2
  925. package/dist/generated/eve/attachment/turrets/index.js.map +0 -1
  926. package/dist/generated/eve/child/EveChildBehaviorSystem.js +0 -357
  927. package/dist/generated/eve/child/EveChildBehaviorSystem.js.map +0 -1
  928. package/dist/generated/eve/child/EveChildBulletStorm.js.map +0 -1
  929. package/dist/generated/eve/child/EveChildLink.js.map +0 -1
  930. package/dist/generated/eve/child/EveChildSpherePin.js +0 -54
  931. package/dist/generated/eve/child/EveChildSpherePin.js.map +0 -1
  932. package/dist/generated/eve/child/behaviors/CollisionAvoidance.js +0 -85
  933. package/dist/generated/eve/child/behaviors/CollisionAvoidance.js.map +0 -1
  934. package/dist/generated/eve/child/behaviors/InclusionVolume.js +0 -104
  935. package/dist/generated/eve/child/behaviors/InclusionVolume.js.map +0 -1
  936. package/dist/generated/eve/child/behaviors/ProcessLifetime.js +0 -458
  937. package/dist/generated/eve/child/behaviors/ProcessLifetime.js.map +0 -1
  938. package/dist/generated/eve/child/behaviors/SplineTunnelGroup.js +0 -161
  939. package/dist/generated/eve/child/behaviors/SplineTunnelGroup.js.map +0 -1
  940. package/dist/generated/eve/child/behaviors/Wander.js +0 -92
  941. package/dist/generated/eve/child/behaviors/Wander.js.map +0 -1
  942. package/dist/generated/eve/child/behaviors/enums.js.map +0 -1
  943. package/dist/generated/eve/child/modifiers/EveChildModifierAttachToBone.js.map +0 -1
  944. package/dist/generated/eve/child/modifiers/EveChildModifierBillboard3D.js.map +0 -1
  945. package/dist/generated/eve/child/modifiers/EveChildModifierStretch.js.map +0 -1
  946. package/dist/generated/eve/child/modifiers/EveChildModifierTranslateWithCamera.js.map +0 -1
  947. package/dist/generated/eve/child/modifiers/index.js +0 -5
  948. package/dist/generated/eve/child/modifiers/index.js.map +0 -1
  949. package/dist/generated/eve/child/procedural/EveChildProceduralContainer.js.map +0 -1
  950. package/dist/generated/eve/child/procedural/index.js +0 -10
  951. package/dist/generated/eve/child/procedural/index.js.map +0 -1
  952. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodAttributeMap.js.map +0 -1
  953. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js.map +0 -1
  954. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodCycling.js.map +0 -1
  955. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodCyclingParameter.js.map +0 -1
  956. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodRandom.js.map +0 -1
  957. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodRandomParameter.js.map +0 -1
  958. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodThresholdParameter.js.map +0 -1
  959. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodThresholds.js.map +0 -1
  960. package/dist/generated/eve/child/procedural/selection/index.js +0 -9
  961. package/dist/generated/eve/child/procedural/selection/index.js.map +0 -1
  962. package/dist/generated/eve/distribution/EveBaseDistributionMethod.js.map +0 -1
  963. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js.map +0 -1
  964. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js.map +0 -1
  965. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js.map +0 -1
  966. package/dist/generated/eve/distribution/attributeModifiers/enums.js.map +0 -1
  967. package/dist/generated/eve/distribution/attributeModifiers/index.js +0 -5
  968. package/dist/generated/eve/distribution/attributeModifiers/index.js.map +0 -1
  969. package/dist/generated/eve/distribution/index.js +0 -19
  970. package/dist/generated/eve/distribution/index.js.map +0 -1
  971. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorLocators.js.map +0 -1
  972. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js.map +0 -1
  973. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorVolume.js.map +0 -1
  974. package/dist/generated/eve/distribution/placement/index.js +0 -4
  975. package/dist/generated/eve/distribution/placement/index.js.map +0 -1
  976. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js.map +0 -1
  977. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js.map +0 -1
  978. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js.map +0 -1
  979. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js.map +0 -1
  980. package/dist/generated/eve/distribution/spawnModifiers/index.js +0 -5
  981. package/dist/generated/eve/distribution/spawnModifiers/index.js.map +0 -1
  982. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerBurst.js.map +0 -1
  983. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerControllerTrigger.js.map +0 -1
  984. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerInterval.js.map +0 -1
  985. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerPlane.js.map +0 -1
  986. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerSnake.js.map +0 -1
  987. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerSphere.js.map +0 -1
  988. package/dist/generated/eve/distribution/spawners/index.js +0 -7
  989. package/dist/generated/eve/distribution/spawners/index.js.map +0 -1
  990. package/dist/generated/eve/effect/EveLensflare.js.map +0 -1
  991. package/dist/generated/eve/effect/EveMultiEffect.js +0 -84
  992. package/dist/generated/eve/effect/EveMultiEffect.js.map +0 -1
  993. package/dist/generated/eve/effect/EveMultiEffectParameter.js +0 -45
  994. package/dist/generated/eve/effect/EveMultiEffectParameter.js.map +0 -1
  995. package/dist/generated/eve/fxAttributes/EveCameraFxAttributes.js +0 -47
  996. package/dist/generated/eve/fxAttributes/EveCameraFxAttributes.js.map +0 -1
  997. package/dist/generated/eve/fxAttributes/EveSpaceObjectFxAttributes.js +0 -63
  998. package/dist/generated/eve/fxAttributes/EveSpaceObjectFxAttributes.js.map +0 -1
  999. package/dist/generated/eve/fxAttributes/index.js +0 -3
  1000. package/dist/generated/eve/fxAttributes/index.js.map +0 -1
  1001. package/dist/generated/eve/overlays/EveMeshOverlayEffect.js +0 -58
  1002. package/dist/generated/eve/overlays/EveMeshOverlayEffect.js.map +0 -1
  1003. package/dist/generated/eve/overlays/index.js +0 -2
  1004. package/dist/generated/eve/overlays/index.js.map +0 -1
  1005. package/dist/generated/eve/perObjectData/EveBoosterSetPerObjectData.js +0 -66
  1006. package/dist/generated/eve/perObjectData/EveBoosterSetPerObjectData.js.map +0 -1
  1007. package/dist/generated/eve/perObjectData/EveChildBulletStormPerObjectData.js +0 -39
  1008. package/dist/generated/eve/perObjectData/EveChildBulletStormPerObjectData.js.map +0 -1
  1009. package/dist/generated/eve/perObjectData/EveDecalPerObjectData.js +0 -34
  1010. package/dist/generated/eve/perObjectData/EveDecalPerObjectData.js.map +0 -1
  1011. package/dist/generated/eve/perObjectData/EveSceneStaticParticlesPerObjectData.js +0 -32
  1012. package/dist/generated/eve/perObjectData/EveSceneStaticParticlesPerObjectData.js.map +0 -1
  1013. package/dist/generated/eve/perObjectData/index.js +0 -5
  1014. package/dist/generated/eve/perObjectData/index.js.map +0 -1
  1015. package/dist/generated/eve/scene/EveComponentCollection.js.map +0 -1
  1016. package/dist/generated/eve/scene/EveComponentRegistry.js.map +0 -1
  1017. package/dist/generated/eve/scene/EvePickingContext.js +0 -43
  1018. package/dist/generated/eve/scene/EvePickingContext.js.map +0 -1
  1019. package/dist/generated/eve/scene/EveSceneStaticParticles.js.map +0 -1
  1020. package/dist/generated/eve/scene/TriShadowFrustum.js +0 -83
  1021. package/dist/generated/eve/scene/TriShadowFrustum.js.map +0 -1
  1022. package/dist/generated/eve/scene/TriShadowOrthoFrustum.js +0 -140
  1023. package/dist/generated/eve/scene/TriShadowOrthoFrustum.js.map +0 -1
  1024. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js.map +0 -1
  1025. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js.map +0 -1
  1026. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js.map +0 -1
  1027. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js.map +0 -1
  1028. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js.map +0 -1
  1029. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js.map +0 -1
  1030. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js.map +0 -1
  1031. package/dist/generated/eve/smartLights/attributeModifiers/enums.js.map +0 -1
  1032. package/dist/generated/eve/smartLights/attributeModifiers/index.js +0 -9
  1033. package/dist/generated/eve/smartLights/attributeModifiers/index.js.map +0 -1
  1034. package/dist/generated/eve/socket/EveSocketParameterBindingBase.js.map +0 -1
  1035. package/dist/generated/eve/socket/EveSocketParameterBool.js.map +0 -1
  1036. package/dist/generated/eve/socket/EveSocketParameterColor.js.map +0 -1
  1037. package/dist/generated/eve/socket/EveSocketParameterFloat.js.map +0 -1
  1038. package/dist/generated/eve/socket/EveSocketParameterInt.js.map +0 -1
  1039. package/dist/generated/eve/socket/EveSocketParameterString.js.map +0 -1
  1040. package/dist/generated/eve/socket/EveSocketParameterVector2.js.map +0 -1
  1041. package/dist/generated/eve/socket/EveSocketParameterVector3.js.map +0 -1
  1042. package/dist/generated/eve/socket/EveSocketParameterVector4.js.map +0 -1
  1043. package/dist/generated/eve/socket/index.js +0 -10
  1044. package/dist/generated/eve/socket/index.js.map +0 -1
  1045. package/dist/generated/eve/spaceObject/EvePlanet.js.map +0 -1
  1046. package/dist/generated/eve/spaceObject/EveShip2.js.map +0 -1
  1047. package/dist/generated/eve/spaceObject/IEveSpaceObject2.js +0 -46
  1048. package/dist/generated/eve/spaceObject/IEveSpaceObject2.js.map +0 -1
  1049. package/dist/generated/eve/spaceObject/swarm/EveSwarmRenderable.js.map +0 -1
  1050. package/dist/generated/eve/ui/EveLineSet.js.map +0 -1
  1051. package/dist/generated/eve/ui/EveSpherePin.js.map +0 -1
  1052. package/dist/generated/eve/ui/EveTacticalOverlayTrackObject.js +0 -44
  1053. package/dist/generated/eve/ui/EveTacticalOverlayTrackObject.js.map +0 -1
  1054. package/dist/generated/eve/ui/EveTacticalTrails.js.map +0 -1
  1055. package/dist/generated/trinityCore/Tr2DynamicBinding.js +0 -58
  1056. package/dist/generated/trinityCore/Tr2DynamicBinding.js.map +0 -1
  1057. package/dist/generated/trinityCore/Tr2ExternalParameter.js +0 -164
  1058. package/dist/generated/trinityCore/Tr2ExternalParameter.js.map +0 -1
  1059. package/dist/generated/trinityCore/Tr2GrannyAnimation.js.map +0 -1
  1060. package/dist/generated/trinityCore/Tr2ShLightingManager.js +0 -48
  1061. package/dist/generated/trinityCore/Tr2ShLightingManager.js.map +0 -1
  1062. package/dist/generated/trinityCore/TriValueBinding.js +0 -249
  1063. package/dist/generated/trinityCore/TriValueBinding.js.map +0 -1
  1064. package/dist/shader/Tr2Shader.js +0 -150
  1065. package/dist/shader/Tr2Shader.js.map +0 -1
  1066. package/dist/shader/reflection/Tr2EffectConstant.js +0 -61
  1067. package/dist/shader/reflection/Tr2EffectConstant.js.map +0 -1
  1068. package/dist/shader/reflection/Tr2EffectDefine.js +0 -34
  1069. package/dist/shader/reflection/Tr2EffectDefine.js.map +0 -1
  1070. package/dist/shader/reflection/Tr2EffectDescription.js +0 -34
  1071. package/dist/shader/reflection/Tr2EffectDescription.js.map +0 -1
  1072. package/dist/shader/reflection/Tr2EffectLibrary.js +0 -61
  1073. package/dist/shader/reflection/Tr2EffectLibrary.js.map +0 -1
  1074. package/dist/shader/reflection/Tr2EffectParameterAnnotation.js +0 -54
  1075. package/dist/shader/reflection/Tr2EffectParameterAnnotation.js.map +0 -1
  1076. package/dist/shader/reflection/Tr2EffectResource.js +0 -63
  1077. package/dist/shader/reflection/Tr2EffectResource.js.map +0 -1
  1078. package/dist/shader/reflection/Tr2EffectStageInput.js +0 -58
  1079. package/dist/shader/reflection/Tr2EffectStageInput.js.map +0 -1
  1080. package/dist/shader/reflection/Tr2EffectTechnique.js +0 -40
  1081. package/dist/shader/reflection/Tr2EffectTechnique.js.map +0 -1
  1082. package/dist/shader/reflection/Tr2Pass.js +0 -46
  1083. package/dist/shader/reflection/Tr2Pass.js.map +0 -1
  1084. package/dist/shader/sampler/Tr2SamplerSetup.js +0 -34
  1085. package/dist/shader/sampler/Tr2SamplerSetup.js.map +0 -1
  1086. package/dist/trinityCore/Tr2BindingVector3.js.map +0 -1
  1087. package/dist/trinityCore/Tr2PyValueBinding.js.map +0 -1
  1088. package/dist/trinityCore/rawData/RawDataStore.js +0 -232
  1089. package/dist/trinityCore/rawData/RawDataStore.js.map +0 -1
  1090. /package/dist/{generated/eve → eve}/distribution/attributeModifiers/enums.js +0 -0
  1091. /package/dist/{generated/eve → eve}/smartLights/attributeModifiers/enums.js +0 -0
@@ -2,11 +2,11 @@ import { applyDecs2311 as _applyDecs2311 } from '../../../_virtual/_rollupPlugin
2
2
  import { impl, carbon, type } from '@carbonenginejs/runtime-utils/schema';
3
3
  import { CjsModel } from '@carbonenginejs/runtime-utils/model';
4
4
  import { EveComponentCollection as _EveComponentCollecti } from './EveComponentCollection.js';
5
- import { EveComponentRequiredMethods } from '../../../eve/EveComponentTypes.js';
5
+ import { EveComponentRequiredMethods } from '../../EveComponentTypes.js';
6
6
 
7
7
  let _initProto, _initClass, _init_componentCollectionLoopGuard, _init_extra_componentCollectionLoopGuard, _init_registeredEntities, _init_extra_registeredEntities;
8
8
 
9
- /** EveComponentRegistry (eve/scene) - generated from schema shapeHash abca1458.... */
9
+ /** Indexes Eve entities and their component collections for scene processing. */
10
10
  let _EveComponentRegistry;
11
11
  class EveComponentRegistry extends CjsModel {
12
12
  static {
@@ -29,6 +29,11 @@ class EveComponentRegistry extends CjsModel {
29
29
 
30
30
  /** m_registeredEntities (std::vector<EveEntity*>) */
31
31
  registeredEntities = (_init_extra_componentCollectionLoopGuard(this), _init_registeredEntities(this, []));
32
+
33
+ /**
34
+ * Empties every component collection and detaches all registered entities,
35
+ * resetting their registry link and component state.
36
+ */
32
37
  Clear() {
33
38
  for (const collection of this.#componentCollections) {
34
39
  collection.Clear();
@@ -42,10 +47,20 @@ class EveComponentRegistry extends CjsModel {
42
47
  }
43
48
  this.registeredEntities.length = 0;
44
49
  }
50
+
51
+ /**
52
+ * Removes the entity from this registry and adds it back, moving it to the end
53
+ * of the registration order.
54
+ */
45
55
  ReRegister(entity) {
46
56
  entity.UnRegister(this);
47
57
  entity.Register(this);
48
58
  }
59
+
60
+ /**
61
+ * Adds an entity to the registry and records its index, returning false if the
62
+ * entity is already registered anywhere.
63
+ */
49
64
  Register(entity) {
50
65
  if (entity.indexInRegistry !== -1) {
51
66
  return false;
@@ -55,6 +70,12 @@ class EveComponentRegistry extends CjsModel {
55
70
  this.registeredEntities.push(entity);
56
71
  return true;
57
72
  }
73
+
74
+ /**
75
+ * Removes an entity by swapping the last registered entity into its slot,
76
+ * keeping the entity list dense, and returns false if the entity is not
77
+ * registered here.
78
+ */
58
79
  UnRegister(entity) {
59
80
  const index = entity.indexInRegistry;
60
81
  if (entity.registry !== this || index < 0 || index >= this.registeredEntities.length) {
@@ -71,14 +92,31 @@ class EveComponentRegistry extends CjsModel {
71
92
  entity.indexInRegistry = -1;
72
93
  return true;
73
94
  }
95
+
96
+ /**
97
+ * Drops the entity from every component collection while leaving it registered
98
+ * in the entity list.
99
+ */
74
100
  UnRegisterAllComponents(entity) {
75
101
  for (const collection of this.#componentCollections) {
76
102
  this.RemoveFromCollection(collection, entity);
77
103
  }
78
104
  }
105
+
106
+ /**
107
+ * Returns the collection for a component name, or null when no collection has
108
+ * been created for it yet.
109
+ */
79
110
  GetComponentCollection(componentName) {
80
111
  return this.#componentCollections.find(collection => collection.name === componentName) ?? null;
81
112
  }
113
+
114
+ /**
115
+ * Adds an entity to the named component's collection, creating the collection
116
+ * on demand, and throws if the entity is missing any method the component
117
+ * interface requires - the fail-closed stand-in for Carbon's compile-time
118
+ * RegisterComponent<T> constraint.
119
+ */
82
120
  RegisterComponent(componentName, entity) {
83
121
  // Fail-closed duck assertion: Carbon's RegisterComponent<T> cannot compile
84
122
  // for an entity that does not implement T; the JS port asserts the
@@ -96,10 +134,21 @@ class EveComponentRegistry extends CjsModel {
96
134
  }
97
135
  return this.AddToCollection(collection, entity);
98
136
  }
137
+
138
+ /**
139
+ * Removes an entity from the named component's collection, returning false
140
+ * when no such collection exists.
141
+ */
99
142
  UnRegisterComponent(componentName, entity) {
100
143
  const collection = this.GetComponentCollection(componentName);
101
144
  return collection ? this.RemoveFromCollection(collection, entity) : false;
102
145
  }
146
+
147
+ /**
148
+ * Creates a collection for a component name and assigns it the next free bit;
149
+ * throws once 32 collections exist because the entity component mask is 32
150
+ * bits wide.
151
+ */
103
152
  AddCollection(componentName) {
104
153
  if (this.#componentCollections.length >= 32) {
105
154
  throw new RangeError("EveComponentRegistry supports at most 32 component collections.");
@@ -110,6 +159,12 @@ class EveComponentRegistry extends CjsModel {
110
159
  this.#componentCollections.push(collection);
111
160
  return collection;
112
161
  }
162
+
163
+ /**
164
+ * Appends an entity to a collection and stores the resulting index on the
165
+ * entity under the collection's bit, returning false if it is already a
166
+ * member.
167
+ */
113
168
  AddToCollection(collection, entity) {
114
169
  if (entity.GetComponentIndex(collection.GetBit()) !== undefined) {
115
170
  return false;
@@ -118,6 +173,12 @@ class EveComponentRegistry extends CjsModel {
118
173
  entity.SetComponentState(collection.GetBit(), index);
119
174
  return true;
120
175
  }
176
+
177
+ /**
178
+ * Removes an entity from a collection by swapping the back element into its
179
+ * slot and fixing up the moved entity's stored index, returning false if it
180
+ * was not a member.
181
+ */
121
182
  RemoveFromCollection(collection, entity) {
122
183
  const bit = collection.GetBit();
123
184
  const index = entity.GetComponentIndex(bit);
@@ -131,9 +192,20 @@ class EveComponentRegistry extends CjsModel {
131
192
  entity.RemoveComponentState(bit);
132
193
  return true;
133
194
  }
195
+
196
+ /**
197
+ * Returns the live entity array backing the named component collection, or an
198
+ * empty array when the collection does not exist; the array is borrowed and
199
+ * changes as entities register.
200
+ */
134
201
  GetComponents(componentName) {
135
202
  return this.GetComponentCollection(componentName)?.collection ?? [];
136
203
  }
204
+
205
+ /**
206
+ * Returns how many entities are in the named component collection, or 0 when
207
+ * the collection does not exist.
208
+ */
137
209
  ComponentCount(componentName) {
138
210
  return this.GetComponentCollection(componentName)?.Size() ?? 0;
139
211
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EveComponentRegistry.js","sources":["../../../../../src/eve/scene/components/EveComponentRegistry.js"],"sourcesContent":["// Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity\r\n// Source: trinity/trinity/Eve/EveComponentRegistry.h\r\n// Source: trinity/trinity/Eve/EveComponentRegistry.cpp\r\n// Hand-maintained after promotion from generated schema intake.\r\nimport { carbon, impl, type } from \"@carbonenginejs/runtime-utils/schema\";\r\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\r\nimport { EveComponentCollection } from \"./EveComponentCollection.js\";\r\nimport { EveComponentRequiredMethods } from \"../../EveComponentTypes.js\";\r\n\r\n/** Indexes Eve entities and their component collections for scene processing. */\r\n@type.define({ className: \"EveComponentRegistry\", family: \"eve/scene\" })\r\nexport class EveComponentRegistry extends CjsModel\r\n{\r\n\r\n #componentCollections = [];\r\n\r\n /** m_componentCollectionLoopGuard (mutable std::shared_mutex) */\r\n @type.rawStruct(\"std::shared_mutex\")\r\n componentCollectionLoopGuard = null;\r\n\r\n /** m_registeredEntities (std::vector<EveEntity*>) */\r\n @type.list(\"EveEntity\")\r\n registeredEntities = [];\r\n\r\n /**\r\n * Empties every component collection and detaches all registered entities,\r\n * resetting their registry link and component state.\r\n */\r\n @impl.implemented\r\n Clear()\r\n {\r\n for (const collection of this.#componentCollections)\r\n {\r\n collection.Clear();\r\n }\r\n for (const entity of this.registeredEntities)\r\n {\r\n if (entity.registry === this)\r\n {\r\n entity.registry = null;\r\n entity.indexInRegistry = -1;\r\n entity.ClearComponentState();\r\n }\r\n }\r\n this.registeredEntities.length = 0;\r\n }\r\n\r\n /**\r\n * Removes the entity from this registry and adds it back, moving it to the end\r\n * of the registration order.\r\n */\r\n @impl.implemented\r\n ReRegister(entity)\r\n {\r\n entity.UnRegister(this);\r\n entity.Register(this);\r\n }\r\n\r\n /**\r\n * Adds an entity to the registry and records its index, returning false if the\r\n * entity is already registered anywhere.\r\n */\r\n @impl.implemented\r\n Register(entity)\r\n {\r\n if (entity.indexInRegistry !== -1)\r\n {\r\n return false;\r\n }\r\n entity.registry = this;\r\n entity.indexInRegistry = this.registeredEntities.length;\r\n this.registeredEntities.push(entity);\r\n return true;\r\n }\r\n\r\n /**\r\n * Removes an entity by swapping the last registered entity into its slot,\r\n * keeping the entity list dense, and returns false if the entity is not\r\n * registered here.\r\n */\r\n @impl.implemented\r\n UnRegister(entity)\r\n {\r\n const index = entity.indexInRegistry;\r\n if (entity.registry !== this || index < 0 || index >= this.registeredEntities.length)\r\n {\r\n return false;\r\n }\r\n const lastIndex = this.registeredEntities.length - 1;\r\n if (index !== lastIndex)\r\n {\r\n const swappedEntity = this.registeredEntities[lastIndex];\r\n swappedEntity.indexInRegistry = index;\r\n this.registeredEntities[index] = swappedEntity;\r\n }\r\n this.registeredEntities.pop();\r\n entity.registry = null;\r\n entity.indexInRegistry = -1;\r\n return true;\r\n }\r\n\r\n /**\r\n * Drops the entity from every component collection while leaving it registered\r\n * in the entity list.\r\n */\r\n @impl.implemented\r\n UnRegisterAllComponents(entity)\r\n {\r\n for (const collection of this.#componentCollections)\r\n {\r\n this.RemoveFromCollection(collection, entity);\r\n }\r\n }\r\n\r\n /**\r\n * Returns the collection for a component name, or null when no collection has\r\n * been created for it yet.\r\n */\r\n @impl.implemented\r\n GetComponentCollection(componentName)\r\n {\r\n return this.#componentCollections.find(collection => collection.name === componentName) ?? null;\r\n }\r\n\r\n /**\r\n * Adds an entity to the named component's collection, creating the collection\r\n * on demand, and throws if the entity is missing any method the component\r\n * interface requires - the fail-closed stand-in for Carbon's compile-time\r\n * RegisterComponent<T> constraint.\r\n */\r\n @impl.adapted\r\n @impl.reason(\"JavaScript passes Carbon's compile-time component name explicitly because it has no C++ template specialization.\")\r\n RegisterComponent(componentName, entity)\r\n {\r\n // Fail-closed duck assertion: Carbon's RegisterComponent<T> cannot compile\r\n // for an entity that does not implement T; the JS port asserts the\r\n // interface's pure-virtual surface (EveComponentRequiredMethods) instead.\r\n if (Object.hasOwn(EveComponentRequiredMethods, componentName))\r\n {\r\n for (const method of EveComponentRequiredMethods[componentName])\r\n {\r\n if (typeof entity?.[method] !== \"function\")\r\n {\r\n throw new TypeError(\r\n `EveComponentRegistry.RegisterComponent(\"${componentName}\"): entity `\r\n + `${entity?.constructor?.name ?? typeof entity} is missing required method ${method}().`);\r\n }\r\n }\r\n }\r\n let collection = this.GetComponentCollection(componentName);\r\n if (!collection)\r\n {\r\n collection = this.AddCollection(componentName);\r\n }\r\n return this.AddToCollection(collection, entity);\r\n }\r\n\r\n /**\r\n * Removes an entity from the named component's collection, returning false\r\n * when no such collection exists.\r\n */\r\n @impl.adapted\r\n @impl.reason(\"JavaScript passes Carbon's compile-time component name explicitly because it has no C++ template specialization.\")\r\n UnRegisterComponent(componentName, entity)\r\n {\r\n const collection = this.GetComponentCollection(componentName);\r\n return collection ? this.RemoveFromCollection(collection, entity) : false;\r\n }\r\n\r\n /**\r\n * Creates a collection for a component name and assigns it the next free bit;\r\n * throws once 32 collections exist because the entity component mask is 32\r\n * bits wide.\r\n */\r\n @impl.implemented\r\n AddCollection(componentName)\r\n {\r\n if (this.#componentCollections.length >= 32)\r\n {\r\n throw new RangeError(\"EveComponentRegistry supports at most 32 component collections.\");\r\n }\r\n const collection = new EveComponentCollection();\r\n collection.name = String(componentName);\r\n collection.bit = 2 ** this.#componentCollections.length;\r\n this.#componentCollections.push(collection);\r\n return collection;\r\n }\r\n\r\n /**\r\n * Appends an entity to a collection and stores the resulting index on the\r\n * entity under the collection's bit, returning false if it is already a\r\n * member.\r\n */\r\n @impl.implemented\r\n AddToCollection(collection, entity)\r\n {\r\n if (entity.GetComponentIndex(collection.GetBit()) !== undefined)\r\n {\r\n return false;\r\n }\r\n const index = collection.Add(entity);\r\n entity.SetComponentState(collection.GetBit(), index);\r\n return true;\r\n }\r\n\r\n /**\r\n * Removes an entity from a collection by swapping the back element into its\r\n * slot and fixing up the moved entity's stored index, returning false if it\r\n * was not a member.\r\n */\r\n @impl.implemented\r\n RemoveFromCollection(collection, entity)\r\n {\r\n const bit = collection.GetBit();\r\n const index = entity.GetComponentIndex(bit);\r\n if (index === undefined)\r\n {\r\n return false;\r\n }\r\n const swappedEntity = collection.SwapWithBack(index);\r\n if (swappedEntity)\r\n {\r\n swappedEntity.SetComponentState(bit, index);\r\n }\r\n entity.RemoveComponentState(bit);\r\n return true;\r\n }\r\n\r\n /**\r\n * Returns the live entity array backing the named component collection, or an\r\n * empty array when the collection does not exist; the array is borrowed and\r\n * changes as entities register.\r\n */\r\n @impl.implemented\r\n GetComponents(componentName)\r\n {\r\n return this.GetComponentCollection(componentName)?.collection ?? [];\r\n }\r\n\r\n /**\r\n * Returns how many entities are in the named component collection, or 0 when\r\n * the collection does not exist.\r\n */\r\n @impl.implemented\r\n ComponentCount(componentName)\r\n {\r\n return this.GetComponentCollection(componentName)?.Size() ?? 0;\r\n }\r\n\r\n /** Carbon method GetComponentInfo (MAP_METHOD_AND_WRAP). */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"Returns Carbon's vector of name/count pairs as JavaScript tuple arrays.\")\r\n GetComponentInfo()\r\n {\r\n return this.#componentCollections.map(collection => [collection.name, collection.Size()]);\r\n }\r\n\r\n}\r\n"],"names":["_EveComponentRegistry","EveComponentRegistry","CjsModel","e","_init_componentCollectionLoopGuard","_init_extra_componentCollectionLoopGuard","_init_registeredEntities","_init_extra_registeredEntities","_initProto","c","_initClass","_applyDecs","type","define","className","family","rawStruct","list","impl","implemented","adapted","reason","carbon","method","constructor","args","componentCollectionLoopGuard","registeredEntities","Clear","collection","entity","registry","indexInRegistry","ClearComponentState","length","ReRegister","UnRegister","Register","push","index","lastIndex","swappedEntity","pop","UnRegisterAllComponents","RemoveFromCollection","GetComponentCollection","componentName","find","name","RegisterComponent","Object","hasOwn","EveComponentRequiredMethods","TypeError","AddCollection","AddToCollection","UnRegisterComponent","RangeError","EveComponentCollection","String","bit","GetComponentIndex","GetBit","undefined","Add","SetComponentState","SwapWithBack","RemoveComponentState","GetComponents","ComponentCount","Size","GetComponentInfo","map"],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ import { applyDecs2311 as _applyDecs2311 } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
+ import { CjsModel } from '@carbonenginejs/runtime-utils/model';
3
+ import { type, carbon, impl } from '@carbonenginejs/runtime-utils/schema';
4
+
5
+ let _initProto, _initClass, _init_readbacks, _init_extra_readbacks, _init_lastPickedX, _init_extra_lastPickedX, _init_lastPickedY, _init_extra_lastPickedY, _init_lastPickedObject, _init_extra_lastPickedObject, _init_lastPickedArea, _init_extra_lastPickedArea;
6
+
7
+ /**
8
+ * Holds the outstanding picking readbacks and the most recent pick result -
9
+ * screen coordinates, hit object and hit area - for a scene.
10
+ */
11
+ let _EvePickingContext;
12
+ class EvePickingContext extends CjsModel {
13
+ static {
14
+ ({
15
+ e: [_init_readbacks, _init_extra_readbacks, _init_lastPickedX, _init_extra_lastPickedX, _init_lastPickedY, _init_extra_lastPickedY, _init_lastPickedObject, _init_extra_lastPickedObject, _init_lastPickedArea, _init_extra_lastPickedArea, _initProto],
16
+ c: [_EvePickingContext, _initClass]
17
+ } = _applyDecs2311(this, [type.define({
18
+ className: "EvePickingContext",
19
+ family: "eve/scene"
20
+ })], [[type.list("EvePendingPickingReadback"), 0, "readbacks"], [[type, type.uint32], 16, "lastPickedX"], [[type, type.uint32], 16, "lastPickedY"], [type.objectRef("IRoot"), 0, "lastPickedObject"], [[type, type.uint32], 16, "lastPickedArea"], [[carbon, carbon.method, impl, impl.implemented], 18, "UpdateResult"], [[carbon, carbon.method, impl, impl.implemented], 18, "GetObject"], [[carbon, carbon.method, impl, impl.implemented], 18, "GetArea"]], 0, void 0, CjsModel));
21
+ }
22
+ constructor(...args) {
23
+ super(...args);
24
+ _init_extra_lastPickedArea(this);
25
+ }
26
+ readbacks = (_initProto(this), _init_readbacks(this, []));
27
+ lastPickedX = (_init_extra_readbacks(this), _init_lastPickedX(this, 0));
28
+ lastPickedY = (_init_extra_lastPickedX(this), _init_lastPickedY(this, 0));
29
+ lastPickedObject = (_init_extra_lastPickedY(this), _init_lastPickedObject(this, null));
30
+ lastPickedArea = (_init_extra_lastPickedObject(this), _init_lastPickedArea(this, 0));
31
+
32
+ /**
33
+ * Records the outcome of a resolved pick: the sampled screen coordinates, the
34
+ * object hit (null for none) and its area index.
35
+ */
36
+ UpdateResult(x, y, object, area) {
37
+ this.lastPickedX = Number(x) >>> 0;
38
+ this.lastPickedY = Number(y) >>> 0;
39
+ this.lastPickedObject = object ?? null;
40
+ this.lastPickedArea = Number(area) >>> 0;
41
+ }
42
+
43
+ /**
44
+ * Returns the object from the last resolved pick, or null if nothing was hit;
45
+ * the reference is borrowed and replaced by the next pick.
46
+ */
47
+ GetObject() {
48
+ return this.lastPickedObject;
49
+ }
50
+
51
+ /** Returns the area index from the last resolved pick. */
52
+ GetArea() {
53
+ return this.lastPickedArea;
54
+ }
55
+ static {
56
+ _initClass();
57
+ }
58
+ }
59
+
60
+ export { _EvePickingContext as EvePickingContext };
61
+ //# sourceMappingURL=EvePickingContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EvePickingContext.js","sources":["../../../../../src/eve/scene/picking/EvePickingContext.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\EvePicking.h\r\n// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\EvePicking.cpp\r\n// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\EvePicking_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 * Holds the outstanding picking readbacks and the most recent pick result -\r\n * screen coordinates, hit object and hit area - for a scene.\r\n */\r\n@type.define({ className: \"EvePickingContext\", family: \"eve/scene\" })\r\nexport class EvePickingContext extends CjsModel\r\n{\r\n @type.list(\"EvePendingPickingReadback\")\r\n readbacks = [];\r\n\r\n @type.uint32\r\n lastPickedX = 0;\r\n\r\n @type.uint32\r\n lastPickedY = 0;\r\n\r\n @type.objectRef(\"IRoot\")\r\n lastPickedObject = null;\r\n\r\n @type.uint32\r\n lastPickedArea = 0;\r\n\r\n /**\r\n * Records the outcome of a resolved pick: the sampled screen coordinates, the\r\n * object hit (null for none) and its area index.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n UpdateResult(x, y, object, area)\r\n {\r\n this.lastPickedX = Number(x) >>> 0;\r\n this.lastPickedY = Number(y) >>> 0;\r\n this.lastPickedObject = object ?? null;\r\n this.lastPickedArea = Number(area) >>> 0;\r\n }\r\n\r\n /**\r\n * Returns the object from the last resolved pick, or null if nothing was hit;\r\n * the reference is borrowed and replaced by the next pick.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n GetObject()\r\n {\r\n return this.lastPickedObject;\r\n }\r\n\r\n /** Returns the area index from the last resolved pick. */\r\n @carbon.method\r\n @impl.implemented\r\n GetArea()\r\n {\r\n return this.lastPickedArea;\r\n }\r\n}\r\n"],"names":["_EvePickingContext","EvePickingContext","CjsModel","e","_init_readbacks","_init_extra_readbacks","_init_lastPickedX","_init_extra_lastPickedX","_init_lastPickedY","_init_extra_lastPickedY","_init_lastPickedObject","_init_extra_lastPickedObject","_init_lastPickedArea","_init_extra_lastPickedArea","_initProto","c","_initClass","_applyDecs","type","define","className","family","list","uint32","objectRef","carbon","method","impl","implemented","constructor","args","readbacks","lastPickedX","lastPickedY","lastPickedObject","lastPickedArea","UpdateResult","x","y","object","area","Number","GetObject","GetArea"],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ import { vec3 } from '@carbonenginejs/runtime-utils/vec3';
2
+ import { TriFrustumTestResult } from '../../../generated/trinityCore/enums.js';
3
+
4
+ // Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity
5
+ // trinity/trinity/Eve/IEveShadowCaster.h
6
+ // Methods implemented from IEveShadowCaster.h:107-135 (TriShadowFrustum, the
7
+ // perspective IEveShadowFrustum adapter). Transient per-shadow-pass CPU cull
8
+ // adapter - NOT a registry component and never a scene member
9
+ // (ECS-VISIBILITY-SPEC-2026-07-23 "Shadow frustums"). The shadow member is a
10
+ // TriFrustum held by reference (Carbon copies by value into the transient).
11
+
12
+ /** Carbon's native perspective-shadow frustum adapter. */
13
+ class TriShadowFrustum {
14
+ /** m_shadow (TriFrustum) */
15
+ shadow = null;
16
+
17
+ /**
18
+ * Carbon's constructor (h:112-115); optional to keep the shell
19
+ * default-constructible.
20
+ * @param {Object|null} [shadow] - TriFrustum
21
+ */
22
+ constructor(shadow = null) {
23
+ this.shadow = shadow ?? null;
24
+ }
25
+
26
+ /**
27
+ * Carbon TriShadowFrustum::IsVisible (h:116-121) - the shadow frustum's own
28
+ * sphere test; Carbon leaves camera-based culling as a TODO ("do something
29
+ * smart to cull the shadowcasting sphere using the camera frustum").
30
+ * @param {Object} _camera - TriFrustum duck (unused, Carbon parity)
31
+ * @param {Float32Array} boundingSphere - packed (x, y, z, radius)
32
+ * @returns {Boolean}
33
+ */
34
+ IsVisible(_camera, boundingSphere) {
35
+ return !!this.shadow?.IsSphereVisible(boundingSphere);
36
+ }
37
+
38
+ /**
39
+ * Carbon TriShadowFrustum::GetSizeInShadow (h:122-125).
40
+ * @param {Float32Array} boundingSphere - packed (x, y, z, radius)
41
+ * @returns {Number}
42
+ */
43
+ GetSizeInShadow(boundingSphere) {
44
+ return this.shadow ? this.shadow.GetPixelSizeAccross(boundingSphere) : 0;
45
+ }
46
+
47
+ /**
48
+ * Carbon TriShadowFrustum::GetEyePos (h:126-129) - the shadow frustum's
49
+ * m_viewPos.
50
+ * @returns {Float32Array}
51
+ */
52
+ GetEyePos() {
53
+ return this.shadow ? this.shadow.viewPos : TriShadowFrustum.#zeroEyePos;
54
+ }
55
+
56
+ /**
57
+ * Carbon TriShadowFrustum::SphereTest (h:131-134) - delegates to the shadow
58
+ * frustum's six-plane classification (camera unused, Carbon parity).
59
+ * @param {Object} _camera - TriFrustum duck (unused)
60
+ * @param {Object|Float32Array} sphere - { center, radius } or packed vec4
61
+ * @returns {Number} TriFrustumTestResult
62
+ */
63
+ SphereTest(_camera, sphere) {
64
+ return this.shadow ? this.shadow.SphereTest(sphere) : TriFrustumTestResult.Outside;
65
+ }
66
+ static #zeroEyePos = vec3.create();
67
+ }
68
+
69
+ export { TriShadowFrustum };
70
+ //# sourceMappingURL=TriShadowFrustum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TriShadowFrustum.js","sources":["../../../../../src/eve/scene/shadows/TriShadowFrustum.js"],"sourcesContent":["// Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity\r\n// trinity/trinity/Eve/IEveShadowCaster.h\r\n// Methods implemented from IEveShadowCaster.h:107-135 (TriShadowFrustum, the\r\n// perspective IEveShadowFrustum adapter). Transient per-shadow-pass CPU cull\r\n// adapter - NOT a registry component and never a scene member\r\n// (ECS-VISIBILITY-SPEC-2026-07-23 \"Shadow frustums\"). The shadow member is a\r\n// TriFrustum held by reference (Carbon copies by value into the transient).\r\nimport { vec3 } from \"@carbonenginejs/runtime-utils/vec3\";\r\nimport { TriFrustumTestResult } from \"../../../generated/trinityCore/enums.js\";\r\n\r\n/** Carbon's native perspective-shadow frustum adapter. */\r\nexport class TriShadowFrustum\r\n{\r\n\r\n /** m_shadow (TriFrustum) */\r\n shadow = null;\r\n\r\n /**\r\n * Carbon's constructor (h:112-115); optional to keep the shell\r\n * default-constructible.\r\n * @param {Object|null} [shadow] - TriFrustum\r\n */\r\n constructor(shadow = null)\r\n {\r\n this.shadow = shadow ?? null;\r\n }\r\n\r\n /**\r\n * Carbon TriShadowFrustum::IsVisible (h:116-121) - the shadow frustum's own\r\n * sphere test; Carbon leaves camera-based culling as a TODO (\"do something\r\n * smart to cull the shadowcasting sphere using the camera frustum\").\r\n * @param {Object} _camera - TriFrustum duck (unused, Carbon parity)\r\n * @param {Float32Array} boundingSphere - packed (x, y, z, radius)\r\n * @returns {Boolean}\r\n */\r\n IsVisible(_camera, boundingSphere)\r\n {\r\n return !!this.shadow?.IsSphereVisible(boundingSphere);\r\n }\r\n\r\n /**\r\n * Carbon TriShadowFrustum::GetSizeInShadow (h:122-125).\r\n * @param {Float32Array} boundingSphere - packed (x, y, z, radius)\r\n * @returns {Number}\r\n */\r\n GetSizeInShadow(boundingSphere)\r\n {\r\n return this.shadow ? this.shadow.GetPixelSizeAccross(boundingSphere) : 0;\r\n }\r\n\r\n /**\r\n * Carbon TriShadowFrustum::GetEyePos (h:126-129) - the shadow frustum's\r\n * m_viewPos.\r\n * @returns {Float32Array}\r\n */\r\n GetEyePos()\r\n {\r\n return this.shadow ? this.shadow.viewPos : TriShadowFrustum.#zeroEyePos;\r\n }\r\n\r\n /**\r\n * Carbon TriShadowFrustum::SphereTest (h:131-134) - delegates to the shadow\r\n * frustum's six-plane classification (camera unused, Carbon parity).\r\n * @param {Object} _camera - TriFrustum duck (unused)\r\n * @param {Object|Float32Array} sphere - { center, radius } or packed vec4\r\n * @returns {Number} TriFrustumTestResult\r\n */\r\n SphereTest(_camera, sphere)\r\n {\r\n return this.shadow ? this.shadow.SphereTest(sphere) : TriFrustumTestResult.Outside;\r\n }\r\n\r\n static #zeroEyePos = vec3.create();\r\n\r\n}\r\n"],"names":["TriShadowFrustum","shadow","constructor","IsVisible","_camera","boundingSphere","IsSphereVisible","GetSizeInShadow","GetPixelSizeAccross","GetEyePos","viewPos","SphereTest","sphere","TriFrustumTestResult","Outside","vec3","create"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA;AACO,MAAMA,gBAAgB,CAC7B;AAEE;AACAC,EAAAA,MAAM,GAAG,IAAI;;AAEb;AACF;AACA;AACA;AACA;AACEC,EAAAA,WAAWA,CAACD,MAAM,GAAG,IAAI,EACzB;AACE,IAAA,IAAI,CAACA,MAAM,GAAGA,MAAM,IAAI,IAAI;AAC9B,EAAA;;AAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACEE,EAAAA,SAASA,CAACC,OAAO,EAAEC,cAAc,EACjC;IACE,OAAO,CAAC,CAAC,IAAI,CAACJ,MAAM,EAAEK,eAAe,CAACD,cAAc,CAAC;AACvD,EAAA;;AAEA;AACF;AACA;AACA;AACA;EACEE,eAAeA,CAACF,cAAc,EAC9B;AACE,IAAA,OAAO,IAAI,CAACJ,MAAM,GAAG,IAAI,CAACA,MAAM,CAACO,mBAAmB,CAACH,cAAc,CAAC,GAAG,CAAC;AAC1E,EAAA;;AAEA;AACF;AACA;AACA;AACA;AACEI,EAAAA,SAASA,GACT;AACE,IAAA,OAAO,IAAI,CAACR,MAAM,GAAG,IAAI,CAACA,MAAM,CAACS,OAAO,GAAGV,gBAAgB,CAAC,WAAW;AACzE,EAAA;;AAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACEW,EAAAA,UAAUA,CAACP,OAAO,EAAEQ,MAAM,EAC1B;AACE,IAAA,OAAO,IAAI,CAACX,MAAM,GAAG,IAAI,CAACA,MAAM,CAACU,UAAU,CAACC,MAAM,CAAC,GAAGC,oBAAoB,CAACC,OAAO;AACpF,EAAA;AAEA,EAAA,OAAO,WAAW,GAAGC,IAAI,CAACC,MAAM,EAAE;AAEpC;;;;"}
@@ -0,0 +1,129 @@
1
+ import { vec3 } from '@carbonenginejs/runtime-utils/vec3';
2
+ import { PlaneDotNormal, PlaneDotCoord } from '../../../trinityCore/TriFrustum.js';
3
+ import { TriFrustumTestResult } from '../../../generated/trinityCore/enums.js';
4
+
5
+ // Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity
6
+ // trinity/trinity/Eve/IEveShadowCaster.h
7
+ // Methods implemented from IEveShadowCaster.h:28-105 (TriShadowOrthoFrustum,
8
+ // the cascaded-shadow-map IEveShadowFrustum adapter). Transient per-shadow-pass
9
+ // CPU cull adapter - NOT a registry component and never a scene member
10
+ // (ECS-VISIBILITY-SPEC-2026-07-23 "Shadow frustums"). The camera argument is a
11
+ // TriFrustum duck (world-space planes array); the shadow member is a
12
+ // TriFrustumOrtho held by reference (Carbon copies by value into the
13
+ // transient).
14
+
15
+ /** Carbon's native orthographic-shadow frustum adapter. */
16
+ class TriShadowOrthoFrustum {
17
+ /** m_shadow (TriFrustumOrtho) */
18
+ shadow = null;
19
+
20
+ /** m_shadowMapSize (uint32_t) */
21
+ shadowMapSize = 0;
22
+
23
+ /** m_sunDir (Vector3) */
24
+ sunDir = vec3.create();
25
+
26
+ /**
27
+ * Carbon's argument constructor (h:42-47); all arguments optional to keep
28
+ * the default-constructible shell contract (h:35-40).
29
+ * @param {Object|null} [shadow] - TriFrustumOrtho
30
+ * @param {Number} [shadowMapSize]
31
+ * @param {Float32Array|null} [sunDir]
32
+ */
33
+ constructor(shadow = null, shadowMapSize = 0, sunDir = null) {
34
+ this.shadow = shadow ?? null;
35
+ this.shadowMapSize = Number(shadowMapSize) >>> 0;
36
+ if (sunDir) {
37
+ vec3.copy(this.sunDir, sunDir);
38
+ }
39
+ }
40
+
41
+ /**
42
+ * Carbon TriShadowOrthoFrustum::IsVisible (h:48-69): the sphere must be
43
+ * visible in the ortho shadow frustum (far plane ignored), and for every
44
+ * camera plane facing away from the sun (DotNormal(plane, sunDir) < 0) the
45
+ * sphere must not be entirely behind that plane. (Carbon's unused local
46
+ * `val` on the negated center is dead code and is omitted.)
47
+ * @param {Object} camera - TriFrustum duck ({ planes })
48
+ * @param {Float32Array} boundingSphere - packed (x, y, z, radius)
49
+ * @returns {Boolean}
50
+ */
51
+ IsVisible(camera, boundingSphere) {
52
+ if (!this.shadow) {
53
+ return false;
54
+ }
55
+ const sphereIsVisible = this.shadow.IsSphereVisibleIgnoreFarPlane(boundingSphere, boundingSphere[3]);
56
+ if (sphereIsVisible) {
57
+ const planes = camera?.planes ?? [];
58
+ for (let j = 0; j < 6; ++j) {
59
+ // first check if sun direction is perpendicular of the plane
60
+ const d = PlaneDotNormal(planes[j], this.sunDir);
61
+ // if it's not perpendicular then check if the object is "behind" the plane
62
+ if (d < 0) {
63
+ if (PlaneDotCoord(planes[j], boundingSphere) < -boundingSphere[3]) {
64
+ return false;
65
+ }
66
+ }
67
+ }
68
+ }
69
+ return sphereIsVisible;
70
+ }
71
+
72
+ /**
73
+ * Carbon TriShadowOrthoFrustum::GetSizeInShadow (h:70-73) - shadow-map pixel
74
+ * coverage via TriFrustumOrtho.GetPixelSize.
75
+ * @param {Float32Array} boundingSphere - packed (x, y, z, radius)
76
+ * @returns {Number}
77
+ */
78
+ GetSizeInShadow(boundingSphere) {
79
+ return this.shadow ? this.shadow.GetPixelSize(boundingSphere, this.shadowMapSize) : 0;
80
+ }
81
+
82
+ /**
83
+ * Carbon TriShadowOrthoFrustum::GetEyePos (h:74-77).
84
+ * @returns {Float32Array}
85
+ */
86
+ GetEyePos() {
87
+ return this.shadow ? this.shadow.GetEyePos() : TriShadowOrthoFrustum.#zeroEyePos;
88
+ }
89
+
90
+ /**
91
+ * Carbon TriShadowOrthoFrustum::SphereTest (h:79-104): the ortho
92
+ * classification (far plane ignored), demoted per sun-facing camera plane -
93
+ * Outside when fully behind one, Intersect when straddling one.
94
+ * @param {Object} camera - TriFrustum duck ({ planes })
95
+ * @param {Object|Float32Array} sphere - { center, radius } or packed vec4
96
+ * @returns {Number} TriFrustumTestResult
97
+ */
98
+ SphereTest(camera, sphere) {
99
+ if (!this.shadow) {
100
+ return TriFrustumTestResult.Outside;
101
+ }
102
+ let orthoResult = this.shadow.SphereTestIgnoreFarPlane(sphere);
103
+ if (orthoResult !== TriFrustumTestResult.Outside) {
104
+ const packed = typeof sphere?.length === "number" && sphere.length >= 4;
105
+ const center = packed ? sphere : sphere.center;
106
+ const radius = packed ? sphere[3] : sphere.radius;
107
+ const planes = camera?.planes ?? [];
108
+ for (let j = 0; j < 6; ++j) {
109
+ // first check if sun direction is perpendicular of the plane
110
+ const d = PlaneDotNormal(planes[j], this.sunDir);
111
+ // if it's not perpendicular then check if the object is "behind" the plane
112
+ if (d < 0) {
113
+ const val = PlaneDotCoord(planes[j], center);
114
+ if (val < -radius) {
115
+ return TriFrustumTestResult.Outside;
116
+ }
117
+ if (val < radius) {
118
+ orthoResult = TriFrustumTestResult.Intersect;
119
+ }
120
+ }
121
+ }
122
+ }
123
+ return orthoResult;
124
+ }
125
+ static #zeroEyePos = vec3.create();
126
+ }
127
+
128
+ export { TriShadowOrthoFrustum };
129
+ //# sourceMappingURL=TriShadowOrthoFrustum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TriShadowOrthoFrustum.js","sources":["../../../../../src/eve/scene/shadows/TriShadowOrthoFrustum.js"],"sourcesContent":["// Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity\r\n// trinity/trinity/Eve/IEveShadowCaster.h\r\n// Methods implemented from IEveShadowCaster.h:28-105 (TriShadowOrthoFrustum,\r\n// the cascaded-shadow-map IEveShadowFrustum adapter). Transient per-shadow-pass\r\n// CPU cull adapter - NOT a registry component and never a scene member\r\n// (ECS-VISIBILITY-SPEC-2026-07-23 \"Shadow frustums\"). The camera argument is a\r\n// TriFrustum duck (world-space planes array); the shadow member is a\r\n// TriFrustumOrtho held by reference (Carbon copies by value into the\r\n// transient).\r\nimport { vec3 } from \"@carbonenginejs/runtime-utils/vec3\";\r\nimport { PlaneDotCoord, PlaneDotNormal } from \"../../../trinityCore/TriFrustum.js\";\r\nimport { TriFrustumTestResult } from \"../../../generated/trinityCore/enums.js\";\r\n\r\n/** Carbon's native orthographic-shadow frustum adapter. */\r\nexport class TriShadowOrthoFrustum\r\n{\r\n\r\n /** m_shadow (TriFrustumOrtho) */\r\n shadow = null;\r\n\r\n /** m_shadowMapSize (uint32_t) */\r\n shadowMapSize = 0;\r\n\r\n /** m_sunDir (Vector3) */\r\n sunDir = vec3.create();\r\n\r\n /**\r\n * Carbon's argument constructor (h:42-47); all arguments optional to keep\r\n * the default-constructible shell contract (h:35-40).\r\n * @param {Object|null} [shadow] - TriFrustumOrtho\r\n * @param {Number} [shadowMapSize]\r\n * @param {Float32Array|null} [sunDir]\r\n */\r\n constructor(shadow = null, shadowMapSize = 0, sunDir = null)\r\n {\r\n this.shadow = shadow ?? null;\r\n this.shadowMapSize = Number(shadowMapSize) >>> 0;\r\n if (sunDir)\r\n {\r\n vec3.copy(this.sunDir, sunDir);\r\n }\r\n }\r\n\r\n /**\r\n * Carbon TriShadowOrthoFrustum::IsVisible (h:48-69): the sphere must be\r\n * visible in the ortho shadow frustum (far plane ignored), and for every\r\n * camera plane facing away from the sun (DotNormal(plane, sunDir) < 0) the\r\n * sphere must not be entirely behind that plane. (Carbon's unused local\r\n * `val` on the negated center is dead code and is omitted.)\r\n * @param {Object} camera - TriFrustum duck ({ planes })\r\n * @param {Float32Array} boundingSphere - packed (x, y, z, radius)\r\n * @returns {Boolean}\r\n */\r\n IsVisible(camera, boundingSphere)\r\n {\r\n if (!this.shadow)\r\n {\r\n return false;\r\n }\r\n const sphereIsVisible = this.shadow.IsSphereVisibleIgnoreFarPlane(boundingSphere, boundingSphere[3]);\r\n if (sphereIsVisible)\r\n {\r\n const planes = camera?.planes ?? [];\r\n for (let j = 0; j < 6; ++j)\r\n {\r\n // first check if sun direction is perpendicular of the plane\r\n const d = PlaneDotNormal(planes[j], this.sunDir);\r\n // if it's not perpendicular then check if the object is \"behind\" the plane\r\n if (d < 0)\r\n {\r\n if (PlaneDotCoord(planes[j], boundingSphere) < -boundingSphere[3])\r\n {\r\n return false;\r\n }\r\n }\r\n }\r\n }\r\n return sphereIsVisible;\r\n }\r\n\r\n /**\r\n * Carbon TriShadowOrthoFrustum::GetSizeInShadow (h:70-73) - shadow-map pixel\r\n * coverage via TriFrustumOrtho.GetPixelSize.\r\n * @param {Float32Array} boundingSphere - packed (x, y, z, radius)\r\n * @returns {Number}\r\n */\r\n GetSizeInShadow(boundingSphere)\r\n {\r\n return this.shadow ? this.shadow.GetPixelSize(boundingSphere, this.shadowMapSize) : 0;\r\n }\r\n\r\n /**\r\n * Carbon TriShadowOrthoFrustum::GetEyePos (h:74-77).\r\n * @returns {Float32Array}\r\n */\r\n GetEyePos()\r\n {\r\n return this.shadow ? this.shadow.GetEyePos() : TriShadowOrthoFrustum.#zeroEyePos;\r\n }\r\n\r\n /**\r\n * Carbon TriShadowOrthoFrustum::SphereTest (h:79-104): the ortho\r\n * classification (far plane ignored), demoted per sun-facing camera plane -\r\n * Outside when fully behind one, Intersect when straddling one.\r\n * @param {Object} camera - TriFrustum duck ({ planes })\r\n * @param {Object|Float32Array} sphere - { center, radius } or packed vec4\r\n * @returns {Number} TriFrustumTestResult\r\n */\r\n SphereTest(camera, sphere)\r\n {\r\n if (!this.shadow)\r\n {\r\n return TriFrustumTestResult.Outside;\r\n }\r\n let orthoResult = this.shadow.SphereTestIgnoreFarPlane(sphere);\r\n if (orthoResult !== TriFrustumTestResult.Outside)\r\n {\r\n const packed = typeof sphere?.length === \"number\" && sphere.length >= 4;\r\n const center = packed ? sphere : sphere.center;\r\n const radius = packed ? sphere[3] : sphere.radius;\r\n const planes = camera?.planes ?? [];\r\n for (let j = 0; j < 6; ++j)\r\n {\r\n // first check if sun direction is perpendicular of the plane\r\n const d = PlaneDotNormal(planes[j], this.sunDir);\r\n // if it's not perpendicular then check if the object is \"behind\" the plane\r\n if (d < 0)\r\n {\r\n const val = PlaneDotCoord(planes[j], center);\r\n if (val < -radius)\r\n {\r\n return TriFrustumTestResult.Outside;\r\n }\r\n if (val < radius)\r\n {\r\n orthoResult = TriFrustumTestResult.Intersect;\r\n }\r\n }\r\n }\r\n }\r\n return orthoResult;\r\n }\r\n\r\n static #zeroEyePos = vec3.create();\r\n\r\n}\r\n"],"names":["TriShadowOrthoFrustum","shadow","shadowMapSize","sunDir","vec3","create","constructor","Number","copy","IsVisible","camera","boundingSphere","sphereIsVisible","IsSphereVisibleIgnoreFarPlane","planes","j","d","PlaneDotNormal","PlaneDotCoord","GetSizeInShadow","GetPixelSize","GetEyePos","SphereTest","sphere","TriFrustumTestResult","Outside","orthoResult","SphereTestIgnoreFarPlane","packed","length","center","radius","val","Intersect"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { applyDecs2311 as _applyDecs2311 } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
1
+ import { applyDecs2311 as _applyDecs2311 } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
2
  import { io, type, carbon, impl } from '@carbonenginejs/runtime-utils/schema';
3
3
  import { EveSmartLightBaseAttributeModifier as _EveSmartLightBaseAtt } from './EveSmartLightBaseAttributeModifier.js';
4
4
 
@@ -26,9 +26,9 @@ class EveSmartLightAttributeModifierBucket extends _EveSmartLightBaseAtt {
26
26
  /** m_name (std::string) [READWRITE, PERSIST] */
27
27
  name = (_init_extra_attributeModifiers(this), _init_name(this, "bucket"));
28
28
 
29
- /**
30
- * Toggles the bucket, resetting the children only on an actual state change
31
- * (EveSmartLightAttributeModifierBucket.cpp:13-21).
29
+ /**
30
+ * Toggles the bucket, resetting the children only on an actual state change
31
+ * (EveSmartLightAttributeModifierBucket.cpp:13-21).
32
32
  */
33
33
  SetActive(isActive) {
34
34
  this.isChangingActivation = isActive !== this.active;
@@ -39,10 +39,10 @@ class EveSmartLightAttributeModifierBucket extends _EveSmartLightBaseAtt {
39
39
  this.lastAppliedActive = isActive;
40
40
  }
41
41
 
42
- /**
43
- * Bucket override: resetting play time cascades to the children instead of
44
- * touching the bucket's own timers
45
- * (EveSmartLightAttributeModifierBucket.cpp:23-26).
42
+ /**
43
+ * Bucket override: resetting play time cascades to the children instead of
44
+ * touching the bucket's own timers
45
+ * (EveSmartLightAttributeModifierBucket.cpp:23-26).
46
46
  */
47
47
  ResetPlayTime(active) {
48
48
  this.ResetChildren(active);
@@ -55,9 +55,9 @@ class EveSmartLightAttributeModifierBucket extends _EveSmartLightBaseAtt {
55
55
  }
56
56
  }
57
57
 
58
- /**
59
- * Advances the bucket's crossfade, then updates the children with the
60
- * compounded multiplier (EveSmartLightAttributeModifierBucket.cpp:36-45).
58
+ /**
59
+ * Advances the bucket's crossfade, then updates the children with the
60
+ * compounded multiplier (EveSmartLightAttributeModifierBucket.cpp:36-45).
61
61
  */
62
62
  UpdateSyncronous(updateContext, params, activationMultiplier) {
63
63
  this.UpdateActivationStrength(activationMultiplier, updateContext?.GetDeltaT?.() ?? 0);
@@ -67,9 +67,9 @@ class EveSmartLightAttributeModifierBucket extends _EveSmartLightBaseAtt {
67
67
  }
68
68
  }
69
69
 
70
- /**
71
- * Runs the child modifiers with the bucket's per-placement activation
72
- * strength folded in (EveSmartLightAttributeModifierBucket.cpp:47-55).
70
+ /**
71
+ * Runs the child modifiers with the bucket's per-placement activation
72
+ * strength folded in (EveSmartLightAttributeModifierBucket.cpp:47-55).
73
73
  */
74
74
  ProcessAttributeModifier(attribute, placement, entityPosition, entityDirection, modifierStrength) {
75
75
  const activationStrength = this.GetActivationStrength(placement) * modifierStrength;
@@ -78,11 +78,11 @@ class EveSmartLightAttributeModifierBucket extends _EveSmartLightBaseAtt {
78
78
  }
79
79
  }
80
80
 
81
- /**
82
- * Resets every child's play time; a child only becomes active when both the
83
- * parent request and the bucket state agree
84
- * (EveSmartLightAttributeModifierBucket.cpp:57-67). Carbon BlueCasts to
85
- * EveSmartLightBaseAttributeModifier; the JS children are duck-typed.
81
+ /**
82
+ * Resets every child's play time; a child only becomes active when both the
83
+ * parent request and the bucket state agree
84
+ * (EveSmartLightAttributeModifierBucket.cpp:57-67). Carbon BlueCasts to
85
+ * EveSmartLightBaseAttributeModifier; the JS children are duck-typed.
86
86
  */
87
87
  ResetChildren(parentActive = true) {
88
88
  const isActive = parentActive && this.active;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EveSmartLightAttributeModifierBucket.js","sources":["../../../../../src/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js"],"sourcesContent":["// Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity\r\n// trinity/trinity/Eve/SpaceObject/Children/SmartLightSets/attributeModifiers/EveSmartLightAttributeModifierBucket.h\r\n// Generated by format-carbon carbon-class --emit. Verify against eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.json.\r\nimport { carbon, impl, io, type } from \"@carbonenginejs/runtime-utils/schema\";\r\nimport { EveSmartLightBaseAttributeModifier } from \"./EveSmartLightBaseAttributeModifier.js\";\r\n\r\n/** EveSmartLightAttributeModifierBucket (eve/smartLights/attributeModifiers) - generated from schema shapeHash cade668b.... */\r\n@type.define({ className: \"EveSmartLightAttributeModifierBucket\", family: \"eve/smartLights/attributeModifiers\" })\r\nexport class EveSmartLightAttributeModifierBucket extends EveSmartLightBaseAttributeModifier\r\n{\r\n\r\n /** m_attributeModifiers (PIEveSmartLightGroupAttributeModifierVector) [READ, PERSIST, NOTIFY] */\r\n @io.notify\r\n @io.persist\r\n @type.list(\"IEveSmartLightGroupAttributeModifier\")\r\n attributeModifiers = [];\r\n\r\n /** m_name (std::string) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.string\r\n name = \"bucket\";\r\n\r\n /**\r\n * Toggles the bucket, resetting the children only on an actual state change\r\n * (EveSmartLightAttributeModifierBucket.cpp:13-21).\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n SetActive(isActive)\r\n {\r\n this.isChangingActivation = isActive !== this.active;\r\n if (this.isChangingActivation)\r\n {\r\n this.ResetPlayTime(isActive);\r\n }\r\n this.active = isActive;\r\n this.lastAppliedActive = isActive;\r\n }\r\n\r\n /**\r\n * Bucket override: resetting play time cascades to the children instead of\r\n * touching the bucket's own timers\r\n * (EveSmartLightAttributeModifierBucket.cpp:23-26).\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n ResetPlayTime(active)\r\n {\r\n this.ResetChildren(active);\r\n }\r\n\r\n /** Fans the inherited color set out to the child modifiers (EveSmartLightAttributeModifierBucket.cpp:28-34). */\r\n @carbon.method\r\n @impl.implemented\r\n SetInheritProperties(colorSet)\r\n {\r\n for (const attributeModifier of this.attributeModifiers)\r\n {\r\n attributeModifier?.SetInheritProperties?.(colorSet);\r\n }\r\n }\r\n\r\n /**\r\n * Advances the bucket's crossfade, then updates the children with the\r\n * compounded multiplier (EveSmartLightAttributeModifierBucket.cpp:36-45).\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n UpdateSyncronous(updateContext, params, activationMultiplier)\r\n {\r\n this.UpdateActivationStrength(activationMultiplier, updateContext?.GetDeltaT?.() ?? 0);\r\n const childMultiplier = activationMultiplier * this.finalAttributeMultiplier;\r\n\r\n for (const attributeModifier of this.attributeModifiers)\r\n {\r\n attributeModifier?.UpdateSyncronous?.(updateContext, params, childMultiplier);\r\n }\r\n }\r\n\r\n /**\r\n * Runs the child modifiers with the bucket's per-placement activation\r\n * strength folded in (EveSmartLightAttributeModifierBucket.cpp:47-55).\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n ProcessAttributeModifier(attribute, placement, entityPosition, entityDirection, modifierStrength)\r\n {\r\n const activationStrength = this.GetActivationStrength(placement) * modifierStrength;\r\n\r\n for (const attributeModifier of this.attributeModifiers)\r\n {\r\n attributeModifier?.ProcessAttributeModifier?.(attribute, placement, entityPosition, entityDirection, activationStrength);\r\n }\r\n }\r\n\r\n /**\r\n * Resets every child's play time; a child only becomes active when both the\r\n * parent request and the bucket state agree\r\n * (EveSmartLightAttributeModifierBucket.cpp:57-67). Carbon BlueCasts to\r\n * EveSmartLightBaseAttributeModifier; the JS children are duck-typed.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n ResetChildren(parentActive = true)\r\n {\r\n const isActive = parentActive && this.active;\r\n for (const attributeModifier of this.attributeModifiers)\r\n {\r\n attributeModifier?.ResetPlayTime?.(isActive);\r\n }\r\n }\r\n\r\n}\r\n"],"names":["_EveSmartLightAttribu","EveSmartLightAttributeModifierBucket","EveSmartLightBaseAttributeModifier","e","_init_attributeModifiers","_init_extra_attributeModifiers","_init_name","_init_extra_name","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","notify","persist","list","string","carbon","method","impl","implemented","constructor","args","attributeModifiers","name","SetActive","isActive","isChangingActivation","active","ResetPlayTime","lastAppliedActive","ResetChildren","SetInheritProperties","colorSet","attributeModifier","UpdateSyncronous","updateContext","params","activationMultiplier","UpdateActivationStrength","GetDeltaT","childMultiplier","finalAttributeMultiplier","ProcessAttributeModifier","attribute","placement","entityPosition","entityDirection","modifierStrength","activationStrength","GetActivationStrength","parentActive"],"mappings":"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"}