@carbonenginejs/runtime-trinity 0.5.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +35 -243
- package/dist/controllers/CjsControllerExpressionProgram.js +157 -0
- package/dist/controllers/CjsControllerExpressionProgram.js.map +1 -1
- package/dist/controllers/ITr2ControllerAction.js +57 -0
- package/dist/controllers/ITr2ControllerAction.js.map +1 -1
- package/dist/controllers/Tr2ActionAnimateCurveSet.js +12 -2
- package/dist/controllers/Tr2ActionAnimateCurveSet.js.map +1 -1
- package/dist/controllers/Tr2ActionAnimateValue.js +28 -2
- package/dist/controllers/Tr2ActionAnimateValue.js.map +1 -1
- package/dist/controllers/Tr2ActionBindRTPC.js +13 -2
- package/dist/controllers/Tr2ActionBindRTPC.js.map +1 -1
- package/dist/controllers/Tr2ActionCallback.js +7 -2
- package/dist/controllers/Tr2ActionCallback.js.map +1 -1
- package/dist/controllers/Tr2ActionChildEffect.js +65 -2
- package/dist/controllers/Tr2ActionChildEffect.js.map +1 -1
- package/dist/controllers/Tr2ActionOverlay.js +70 -2
- package/dist/controllers/Tr2ActionOverlay.js.map +1 -1
- package/dist/controllers/Tr2ActionPlayCurveSet.js +18 -2
- package/dist/controllers/Tr2ActionPlayCurveSet.js.map +1 -1
- package/dist/controllers/Tr2ActionPlayMeshAnimation.js +31 -2
- package/dist/controllers/Tr2ActionPlayMeshAnimation.js.map +1 -1
- package/dist/controllers/Tr2ActionPlaySound.js +13 -2
- package/dist/controllers/Tr2ActionPlaySound.js.map +1 -1
- package/dist/controllers/Tr2ActionPython.js +13 -2
- package/dist/controllers/Tr2ActionPython.js.map +1 -1
- package/dist/controllers/Tr2ActionResetClipSphereCenter.js +21 -4
- package/dist/controllers/Tr2ActionResetClipSphereCenter.js.map +1 -1
- package/dist/controllers/Tr2ActionSetAttenuationScaling.js +7 -2
- package/dist/controllers/Tr2ActionSetAttenuationScaling.js.map +1 -1
- package/dist/controllers/Tr2ActionSetAudioEmitterPrefix.js +7 -2
- package/dist/controllers/Tr2ActionSetAudioEmitterPrefix.js.map +1 -1
- package/dist/controllers/Tr2ActionSetAudioSwitch.js +7 -2
- package/dist/controllers/Tr2ActionSetAudioSwitch.js.map +1 -1
- package/dist/controllers/Tr2ActionSetExternalControllerVariable.js +25 -2
- package/dist/controllers/Tr2ActionSetExternalControllerVariable.js.map +1 -1
- package/dist/controllers/Tr2ActionSetShaderOption.js +7 -2
- package/dist/controllers/Tr2ActionSetShaderOption.js.map +1 -1
- package/dist/controllers/Tr2ActionSetValue.js +37 -2
- package/dist/controllers/Tr2ActionSetValue.js.map +1 -1
- package/dist/controllers/Tr2ActionSpawnParticles.js +12 -2
- package/dist/controllers/Tr2ActionSpawnParticles.js.map +1 -1
- package/dist/controllers/Tr2BindingPoint.js +71 -4
- package/dist/controllers/Tr2BindingPoint.js.map +1 -1
- package/dist/controllers/Tr2Controller.js +39 -2
- package/dist/controllers/Tr2Controller.js.map +1 -1
- package/dist/controllers/Tr2ControllerEventHandler.js +12 -2
- package/dist/controllers/Tr2ControllerEventHandler.js.map +1 -1
- package/dist/controllers/Tr2ControllerExpression.js +19 -2
- package/dist/controllers/Tr2ControllerExpression.js.map +1 -1
- package/dist/controllers/Tr2ControllerFloatVariable.js +8 -2
- package/dist/controllers/Tr2ControllerFloatVariable.js.map +1 -1
- package/dist/controllers/Tr2ControllerReference.js +13 -2
- package/dist/controllers/Tr2ControllerReference.js.map +1 -1
- package/dist/controllers/Tr2StateMachine.js +19 -2
- package/dist/controllers/Tr2StateMachine.js.map +1 -1
- package/dist/controllers/Tr2StateMachineState.js +49 -2
- package/dist/controllers/Tr2StateMachineState.js.map +1 -1
- package/dist/controllers/Tr2StateMachineTransition.js +31 -2
- package/dist/controllers/Tr2StateMachineTransition.js.map +1 -1
- package/dist/controllers/Tr2SyncToAnimation.js +7 -2
- package/dist/controllers/Tr2SyncToAnimation.js.map +1 -1
- package/dist/controllers/Tr2TimelineController.js +63 -2
- package/dist/controllers/Tr2TimelineController.js.map +1 -1
- package/dist/controllers/Tr2TimelineEntry.js +2 -2
- package/dist/controllers/Tr2TimelineEntry.js.map +1 -1
- package/dist/controllers/contracts.js +24 -1
- package/dist/controllers/contracts.js.map +1 -1
- package/dist/controllers/index.js +1 -1
- package/dist/curves/CjsGrannyCurves.js +151 -1
- package/dist/curves/CjsGrannyCurves.js.map +1 -1
- package/dist/curves/Tr2BoneMatrixCurve.js +27 -4
- package/dist/curves/Tr2BoneMatrixCurve.js.map +1 -1
- package/dist/curves/Tr2CameraFollowCurveKey.js +9 -3
- package/dist/curves/Tr2CameraFollowCurveKey.js.map +1 -1
- package/dist/curves/Tr2CurveColor.js +10 -4
- package/dist/curves/Tr2CurveColor.js.map +1 -1
- package/dist/curves/Tr2CurveColorMixer.js +10 -4
- package/dist/curves/Tr2CurveColorMixer.js.map +1 -1
- package/dist/curves/Tr2CurveCombiner.js +8 -3
- package/dist/curves/Tr2CurveCombiner.js.map +1 -1
- package/dist/curves/Tr2CurveConstant.js +22 -6
- package/dist/curves/Tr2CurveConstant.js.map +1 -1
- package/dist/curves/Tr2CurveEulerRotation.js +8 -3
- package/dist/curves/Tr2CurveEulerRotation.js.map +1 -1
- package/dist/curves/Tr2CurveEulerRotationExpression.js +69 -3
- package/dist/curves/Tr2CurveEulerRotationExpression.js.map +1 -1
- package/dist/curves/Tr2CurveQuaternion.js +8 -3
- package/dist/curves/Tr2CurveQuaternion.js.map +1 -1
- package/dist/curves/Tr2CurveQuaternionKey.js +8 -3
- package/dist/curves/Tr2CurveQuaternionKey.js.map +1 -1
- package/dist/curves/Tr2CurveRandomAxisRotation.js +31 -3
- package/dist/curves/Tr2CurveRandomAxisRotation.js.map +1 -1
- package/dist/curves/Tr2CurveScalar.js +40 -5
- package/dist/curves/Tr2CurveScalar.js.map +1 -1
- package/dist/curves/Tr2CurveScalarExpression.js +13 -2
- package/dist/curves/Tr2CurveScalarExpression.js.map +1 -1
- package/dist/curves/Tr2CurveScalarKey.js +8 -2
- package/dist/curves/Tr2CurveScalarKey.js.map +1 -1
- package/dist/curves/Tr2CurveSetRange.js +7 -2
- package/dist/curves/Tr2CurveSetRange.js.map +1 -1
- package/dist/curves/Tr2CurveVector2.js +8 -3
- package/dist/curves/Tr2CurveVector2.js.map +1 -1
- package/dist/curves/Tr2CurveVector3.js +8 -3
- package/dist/curves/Tr2CurveVector3.js.map +1 -1
- package/dist/curves/Tr2CurveVector3Expression.js +74 -3
- package/dist/curves/Tr2CurveVector3Expression.js.map +1 -1
- package/dist/curves/Tr2CurveVector3Lerp.js +9 -3
- package/dist/curves/Tr2CurveVector3Lerp.js.map +1 -1
- package/dist/curves/Tr2DistanceTracker.js +9 -3
- package/dist/curves/Tr2DistanceTracker.js.map +1 -1
- package/dist/curves/Tr2FollowCurve.js +9 -3
- package/dist/curves/Tr2FollowCurve.js.map +1 -1
- package/dist/curves/Tr2GrannyEventTrack.js +6 -1
- package/dist/curves/Tr2GrannyEventTrack.js.map +1 -1
- package/dist/curves/Tr2GrannyTrack.js +8 -2
- package/dist/curves/Tr2GrannyTrack.js.map +1 -1
- package/dist/curves/Tr2GrannyTransformTrack.js +9 -3
- package/dist/curves/Tr2GrannyTransformTrack.js.map +1 -1
- package/dist/curves/Tr2GrannyVectorTrack.js +6 -1
- package/dist/curves/Tr2GrannyVectorTrack.js.map +1 -1
- package/dist/curves/Tr2MatrixKey.js +8 -3
- package/dist/curves/Tr2MatrixKey.js.map +1 -1
- package/dist/curves/Tr2ObjectFollowCurveKey.js +10 -4
- package/dist/curves/Tr2ObjectFollowCurveKey.js.map +1 -1
- package/dist/curves/Tr2QuaternionLerpCurve.js +10 -4
- package/dist/curves/Tr2QuaternionLerpCurve.js.map +1 -1
- package/dist/curves/Tr2RotationAdapter.js +9 -3
- package/dist/curves/Tr2RotationAdapter.js.map +1 -1
- package/dist/curves/Tr2ScalarExprKey.js +21 -3
- package/dist/curves/Tr2ScalarExprKey.js.map +1 -1
- package/dist/curves/Tr2ScalarExprKeyCurve.js +27 -4
- package/dist/curves/Tr2ScalarExprKeyCurve.js.map +1 -1
- package/dist/curves/Tr2ScalarFader.js +14 -3
- package/dist/curves/Tr2ScalarFader.js.map +1 -1
- package/dist/curves/Tr2TranslationAdapter.js +10 -4
- package/dist/curves/Tr2TranslationAdapter.js.map +1 -1
- package/dist/curves/TriColorSequencer.js +10 -4
- package/dist/curves/TriColorSequencer.js.map +1 -1
- package/dist/curves/TriCurveSet.js +25 -2
- package/dist/curves/TriCurveSet.js.map +1 -1
- package/dist/curves/TriEventCurve.js +25 -2
- package/dist/curves/TriEventCurve.js.map +1 -1
- package/dist/curves/TriEventKey.js +7 -2
- package/dist/curves/TriEventKey.js.map +1 -1
- package/dist/curves/TriPerlinCurve.js +33 -3
- package/dist/curves/TriPerlinCurve.js.map +1 -1
- package/dist/curves/TriVectorSequencer.js +10 -4
- package/dist/curves/TriVectorSequencer.js.map +1 -1
- package/dist/eve/AudioGameObject.js +95 -7
- package/dist/eve/AudioGameObject.js.map +1 -1
- package/dist/eve/BackAndForthData.js +10 -3
- package/dist/eve/BackAndForthData.js.map +1 -1
- package/dist/eve/CjsDistributionRandom.js +6 -0
- package/dist/eve/CjsDistributionRandom.js.map +1 -1
- package/dist/eve/CjsEveThrottleableState.js +11 -0
- package/dist/eve/CjsEveThrottleableState.js.map +1 -1
- package/dist/eve/EveChildUpdateParams.js +11 -4
- package/dist/eve/EveChildUpdateParams.js.map +1 -1
- package/dist/eve/EveComponentTypes.js.map +1 -1
- package/dist/eve/EveCustomMask.js +64 -33
- package/dist/eve/EveCustomMask.js.map +1 -1
- package/dist/eve/EveDistanceField.js +87 -3
- package/dist/eve/EveDistanceField.js.map +1 -1
- package/dist/eve/EveEntity.js +138 -0
- package/dist/eve/EveEntity.js.map +1 -0
- package/dist/eve/EveImpactOverlay.js +64 -3
- package/dist/eve/EveImpactOverlay.js.map +1 -1
- package/dist/eve/EveLODHelper.js +17 -13
- package/dist/eve/EveLODHelper.js.map +1 -1
- package/dist/eve/EveLineData.js +6 -4
- package/dist/eve/EveLineData.js.map +1 -1
- package/dist/eve/EveThrottleable.js +13 -2
- package/dist/eve/EveThrottleable.js.map +1 -1
- package/dist/eve/EveUpdateContext.js +3 -3
- package/dist/eve/EveUpdateContext.js.map +1 -1
- package/dist/eve/FollowASplineData.js +9 -2
- package/dist/eve/FollowASplineData.js.map +1 -1
- package/dist/eve/FormationData.js +8 -2
- package/dist/eve/FormationData.js.map +1 -1
- package/dist/eve/InertiaData.js +10 -3
- package/dist/eve/InertiaData.js.map +1 -1
- package/dist/eve/PlacementDataWithIdentifier.js +11 -4
- package/dist/eve/PlacementDataWithIdentifier.js.map +1 -1
- package/dist/eve/PlayFXData.js +10 -3
- package/dist/eve/PlayFXData.js.map +1 -1
- package/dist/eve/SeekTargetData.js +10 -3
- package/dist/eve/SeekTargetData.js.map +1 -1
- package/dist/eve/attachment/EveSpaceObjectAttachmentUtils.js +105 -0
- package/dist/eve/attachment/EveSpaceObjectAttachmentUtils.js.map +1 -0
- package/dist/eve/attachment/banner/EveBannerItem.js +70 -0
- package/dist/eve/attachment/banner/EveBannerItem.js.map +1 -0
- package/dist/eve/{EveBannerLight.js → attachment/banner/EveBannerLight.js} +16 -5
- package/dist/eve/attachment/banner/EveBannerLight.js.map +1 -0
- package/dist/eve/attachment/banner/EveBannerSet.js +537 -0
- package/dist/eve/attachment/banner/EveBannerSet.js.map +1 -0
- package/dist/eve/{EveBoosterSet2.js → attachment/booster/EveBoosterSet2.js} +267 -46
- package/dist/eve/attachment/booster/EveBoosterSet2.js.map +1 -0
- package/dist/eve/{EveBoosterSet2Renderable.js → attachment/booster/EveBoosterSet2Renderable.js} +216 -15
- package/dist/eve/attachment/booster/EveBoosterSet2Renderable.js.map +1 -0
- package/dist/eve/{EveTrailsSet.js → attachment/booster/EveTrailsSet.js} +52 -4
- package/dist/eve/attachment/booster/EveTrailsSet.js.map +1 -0
- package/dist/eve/attachment/decal/DecalMeshCache.js +2 -2
- package/dist/eve/attachment/decal/DecalMeshCache.js.map +1 -1
- package/dist/eve/attachment/decal/EveSpaceObjectDecal.js +512 -0
- package/dist/eve/attachment/decal/EveSpaceObjectDecal.js.map +1 -0
- package/dist/eve/attachment/haze/EveHazeSet.js +187 -0
- package/dist/eve/attachment/haze/EveHazeSet.js.map +1 -0
- package/dist/eve/attachment/haze/EveHazeSetItem.js +64 -0
- package/dist/eve/attachment/haze/EveHazeSetItem.js.map +1 -0
- package/dist/eve/{EveHazeSetLight.js → attachment/haze/EveHazeSetLight.js} +16 -5
- package/dist/eve/attachment/haze/EveHazeSetLight.js.map +1 -0
- package/dist/eve/attachment/itemSetBounds.js +131 -0
- package/dist/eve/attachment/itemSetBounds.js.map +1 -0
- package/dist/eve/{EvePlaneLight.js → attachment/plane/EvePlaneLight.js} +17 -5
- package/dist/eve/attachment/plane/EvePlaneLight.js.map +1 -0
- package/dist/eve/attachment/plane/EvePlaneSet.js +303 -0
- package/dist/eve/attachment/plane/EvePlaneSet.js.map +1 -0
- package/dist/eve/attachment/plane/EvePlaneSetItem.js +72 -0
- package/dist/eve/attachment/plane/EvePlaneSetItem.js.map +1 -0
- package/dist/eve/{EveSpotlightLight.js → attachment/spotlight/EveSpotlightLight.js} +16 -5
- package/dist/eve/attachment/spotlight/EveSpotlightLight.js.map +1 -0
- package/dist/eve/attachment/spotlight/EveSpotlightSet.js +235 -0
- package/dist/eve/attachment/spotlight/EveSpotlightSet.js.map +1 -0
- package/dist/eve/attachment/spotlight/EveSpotlightSetItem.js +61 -0
- package/dist/eve/attachment/spotlight/EveSpotlightSetItem.js.map +1 -0
- package/dist/eve/{EveSpriteLight.js → attachment/sprite/EveSpriteLight.js} +17 -5
- package/dist/eve/attachment/sprite/EveSpriteLight.js.map +1 -0
- package/dist/eve/attachment/sprite/EveSpriteLineSet.js +192 -0
- package/dist/eve/attachment/sprite/EveSpriteLineSet.js.map +1 -0
- package/dist/eve/{EveSpriteLineSetItem.js → attachment/sprite/EveSpriteLineSetItem.js} +34 -9
- package/dist/eve/attachment/sprite/EveSpriteLineSetItem.js.map +1 -0
- package/dist/eve/attachment/sprite/EveSpriteSet.js +255 -0
- package/dist/eve/attachment/sprite/EveSpriteSet.js.map +1 -0
- package/dist/{generated/eve/attachment/sprites → eve/attachment/sprite}/EveSpriteSetItem.js +28 -31
- package/dist/eve/attachment/sprite/EveSpriteSetItem.js.map +1 -0
- package/dist/eve/attachment/turrets/EveTurretFiringFX.js +187 -5
- package/dist/eve/attachment/turrets/EveTurretFiringFX.js.map +1 -1
- package/dist/eve/attachment/turrets/EveTurretSet.js +333 -19
- package/dist/eve/attachment/turrets/EveTurretSet.js.map +1 -1
- package/dist/eve/attachment/turrets/EveTurretTarget.js +115 -3
- package/dist/eve/attachment/turrets/EveTurretTarget.js.map +1 -1
- package/dist/eve/camera/EveCamera.js +644 -0
- package/dist/eve/camera/EveCamera.js.map +1 -0
- package/dist/eve/child/EveChildAudio.js +67 -4
- package/dist/eve/child/EveChildAudio.js.map +1 -1
- package/dist/eve/child/EveChildBehaviorSystem.js +412 -0
- package/dist/eve/child/EveChildBehaviorSystem.js.map +1 -0
- package/dist/{generated/eve → eve}/child/EveChildBulletStorm.js +46 -8
- package/dist/eve/child/EveChildBulletStorm.js.map +1 -0
- package/dist/eve/child/EveChildContainer.js +181 -22
- package/dist/eve/child/EveChildContainer.js.map +1 -1
- package/dist/eve/child/EveChildEffectPropagator.js +5 -5
- package/dist/eve/child/EveChildEffectPropagator.js.map +1 -1
- package/dist/eve/child/EveChildFogVolume.js +76 -4
- package/dist/eve/child/EveChildFogVolume.js.map +1 -1
- package/dist/eve/child/EveChildInheritProperties.js +20 -3
- package/dist/eve/child/EveChildInheritProperties.js.map +1 -1
- package/dist/eve/child/EveChildInstanceTransform.js +4 -4
- package/dist/eve/child/EveChildInstanceTransform.js.map +1 -1
- package/dist/eve/child/EveChildInstancedMeshes.js +485 -23
- package/dist/eve/child/EveChildInstancedMeshes.js.map +1 -1
- package/dist/eve/child/EveChildLightingOverride.js +78 -4
- package/dist/eve/child/EveChildLightingOverride.js.map +1 -1
- package/dist/{generated/eve → eve}/child/EveChildLink.js +23 -22
- package/dist/eve/child/EveChildLink.js.map +1 -0
- package/dist/eve/child/EveChildMesh.js +366 -111
- package/dist/eve/child/EveChildMesh.js.map +1 -1
- package/dist/eve/child/EveChildSpherePin.js +108 -0
- package/dist/eve/child/EveChildSpherePin.js.map +1 -0
- package/dist/eve/child/EveChildTransform.js +48 -5
- package/dist/eve/child/EveChildTransform.js.map +1 -1
- package/dist/eve/child/EveCloudVolumeBall.js +4 -4
- package/dist/eve/child/EveCloudVolumeBall.js.map +1 -1
- package/dist/eve/child/IEveSpaceObjectChild.js +7 -2
- package/dist/eve/child/IEveSpaceObjectChild.js.map +1 -1
- package/dist/eve/child/behaviors/CollisionAvoidance.js +112 -0
- package/dist/eve/child/behaviors/CollisionAvoidance.js.map +1 -0
- package/dist/eve/child/behaviors/DroneAgent.js +5 -5
- package/dist/eve/child/behaviors/DroneAgent.js.map +1 -1
- package/dist/eve/child/behaviors/InclusionVolume.js +131 -0
- package/dist/eve/child/behaviors/InclusionVolume.js.map +1 -0
- package/dist/eve/child/behaviors/Wander.js +99 -0
- package/dist/eve/child/behaviors/Wander.js.map +1 -0
- package/dist/{generated/eve → eve}/child/behaviors/enums.js +1 -1
- package/dist/eve/child/behaviors/enums.js.map +1 -0
- package/dist/eve/child/behaviors/lifecycle/ProcessLifetime.js +540 -0
- package/dist/eve/child/behaviors/lifecycle/ProcessLifetime.js.map +1 -0
- package/dist/eve/{ProcessLifetimeData.js → child/behaviors/lifecycle/ProcessLifetimeData.js} +10 -4
- package/dist/eve/child/behaviors/lifecycle/ProcessLifetimeData.js.map +1 -0
- package/dist/eve/child/behaviors/{SplineTunnel.js → tunnels/SplineTunnel.js} +11 -9
- package/dist/eve/child/behaviors/tunnels/SplineTunnel.js.map +1 -0
- package/dist/eve/child/behaviors/tunnels/SplineTunnelGroup.js +211 -0
- package/dist/eve/child/behaviors/tunnels/SplineTunnelGroup.js.map +1 -0
- package/dist/eve/child/behaviors/{SplineTunnelPoint.js → tunnels/SplineTunnelPoint.js} +6 -6
- package/dist/eve/child/behaviors/tunnels/SplineTunnelPoint.js.map +1 -0
- package/dist/eve/child/lineSetPaths/EveBezierCurve.js +82 -8
- package/dist/eve/child/lineSetPaths/EveBezierCurve.js.map +1 -1
- package/dist/eve/child/lineSetPaths/EveCircle.js +82 -8
- package/dist/eve/child/lineSetPaths/EveCircle.js.map +1 -1
- package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierAttachToBone.js +27 -19
- package/dist/eve/child/modifiers/EveChildModifierAttachToBone.js.map +1 -0
- package/dist/eve/child/modifiers/EveChildModifierBillboard2D.js +8 -3
- package/dist/eve/child/modifiers/EveChildModifierBillboard2D.js.map +1 -1
- package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierBillboard3D.js +26 -23
- package/dist/eve/child/modifiers/EveChildModifierBillboard3D.js.map +1 -0
- package/dist/eve/child/modifiers/EveChildModifierBooster.js +10 -4
- package/dist/eve/child/modifiers/EveChildModifierBooster.js.map +1 -1
- package/dist/eve/child/modifiers/EveChildModifierCameraOrientedRotationConstrained.js +12 -6
- package/dist/eve/child/modifiers/EveChildModifierCameraOrientedRotationConstrained.js.map +1 -1
- package/dist/eve/child/modifiers/EveChildModifierHalo.js +9 -4
- package/dist/eve/child/modifiers/EveChildModifierHalo.js.map +1 -1
- package/dist/eve/child/modifiers/EveChildModifierHaloInverted.js +10 -4
- package/dist/eve/child/modifiers/EveChildModifierHaloInverted.js.map +1 -1
- package/dist/eve/child/modifiers/EveChildModifierSRT.js +10 -5
- package/dist/eve/child/modifiers/EveChildModifierSRT.js.map +1 -1
- package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierStretch.js +36 -22
- package/dist/eve/child/modifiers/EveChildModifierStretch.js.map +1 -0
- package/dist/eve/child/modifiers/EveChildModifierTransformCommon.js +2 -2
- package/dist/eve/child/modifiers/EveChildModifierTransformCommon.js.map +1 -1
- package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierTranslateWithCamera.js +19 -17
- package/dist/eve/child/modifiers/EveChildModifierTranslateWithCamera.js.map +1 -0
- package/dist/{generated/eve → eve}/child/procedural/EveChildProceduralContainer.js +15 -8
- package/dist/eve/child/procedural/EveChildProceduralContainer.js.map +1 -0
- package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodAttributeMap.js +14 -14
- package/dist/eve/child/procedural/selection/EveProceduralMethodAttributeMap.js.map +1 -0
- package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js +8 -8
- package/dist/eve/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js.map +1 -0
- package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodCycling.js +14 -14
- package/dist/eve/child/procedural/selection/EveProceduralMethodCycling.js.map +1 -0
- package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodCyclingParameter.js +10 -10
- package/dist/eve/child/procedural/selection/EveProceduralMethodCyclingParameter.js.map +1 -0
- package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodRandom.js +19 -19
- package/dist/eve/child/procedural/selection/EveProceduralMethodRandom.js.map +1 -0
- package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodRandomParameter.js +9 -9
- package/dist/eve/child/procedural/selection/EveProceduralMethodRandomParameter.js.map +1 -0
- package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodThresholdParameter.js +9 -9
- package/dist/eve/child/procedural/selection/EveProceduralMethodThresholdParameter.js.map +1 -0
- package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodThresholds.js +19 -19
- package/dist/eve/child/procedural/selection/EveProceduralMethodThresholds.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/EveBaseDistributionMethod.js +136 -7
- package/dist/eve/distribution/EveBaseDistributionMethod.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js +14 -3
- package/dist/eve/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js +13 -5
- package/dist/eve/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js +16 -5
- package/dist/eve/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js.map +1 -0
- package/dist/eve/distribution/attributeModifiers/InitialPlacement.js +2 -2
- package/dist/eve/distribution/attributeModifiers/InitialPlacement.js.map +1 -1
- package/dist/eve/distribution/attributeModifiers/enums.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/placement/EveDistributionPlacementGeneratorLocators.js +18 -5
- package/dist/eve/distribution/placement/EveDistributionPlacementGeneratorLocators.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js +33 -5
- package/dist/eve/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/placement/EveDistributionPlacementGeneratorVolume.js +38 -7
- package/dist/eve/distribution/placement/EveDistributionPlacementGeneratorVolume.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js +16 -4
- package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js +16 -5
- package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js +17 -6
- package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js +16 -5
- package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerBurst.js +21 -3
- package/dist/eve/distribution/spawners/EveDistributionSpawnerBurst.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerControllerTrigger.js +27 -3
- package/dist/eve/distribution/spawners/EveDistributionSpawnerControllerTrigger.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerInterval.js +19 -3
- package/dist/eve/distribution/spawners/EveDistributionSpawnerInterval.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerTriggerPlane.js +24 -5
- package/dist/eve/distribution/spawners/EveDistributionSpawnerTriggerPlane.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerTriggerSnake.js +23 -4
- package/dist/eve/distribution/spawners/EveDistributionSpawnerTriggerSnake.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerTriggerSphere.js +23 -4
- package/dist/eve/distribution/spawners/EveDistributionSpawnerTriggerSphere.js.map +1 -0
- package/dist/{generated/eve/effect → eve/effect/lensflare}/EveLensflare.js +81 -9
- package/dist/eve/effect/lensflare/EveLensflare.js.map +1 -0
- package/dist/eve/effect/multiEffect/EveMultiEffect.js +302 -0
- package/dist/eve/effect/multiEffect/EveMultiEffect.js.map +1 -0
- package/dist/eve/effect/multiEffect/EveMultiEffectParameter.js +92 -0
- package/dist/eve/effect/multiEffect/EveMultiEffectParameter.js.map +1 -0
- package/dist/eve/index.js +118 -46
- package/dist/eve/index.js.map +1 -1
- package/dist/eve/lights/CjsLightData.js +12 -5
- package/dist/eve/lights/CjsLightData.js.map +1 -1
- package/dist/eve/lights/LightFeatures.js +2 -2
- package/dist/eve/lights/LightFeatures.js.map +1 -1
- package/dist/eve/lights/Tr2Light.js +130 -4
- package/dist/eve/lights/Tr2Light.js.map +1 -1
- package/dist/eve/lights/Tr2PointLight.js +9 -4
- package/dist/eve/lights/Tr2PointLight.js.map +1 -1
- package/dist/eve/lights/Tr2SpotLight.js +9 -4
- package/dist/eve/lights/Tr2SpotLight.js.map +1 -1
- package/dist/eve/lights/Tr2TexturedPointLight.js +11 -1
- package/dist/eve/lights/Tr2TexturedPointLight.js.map +1 -1
- package/dist/eve/lights/lightConversion.js +196 -0
- package/dist/eve/lights/lightConversion.js.map +1 -0
- package/dist/eve/{EveLocator2.js → locator/EveLocator2.js} +23 -4
- package/dist/eve/locator/EveLocator2.js.map +1 -0
- package/dist/eve/{EveLocatorSets.js → locator/EveLocatorSets.js} +46 -4
- package/dist/eve/locator/EveLocatorSets.js.map +1 -0
- package/dist/eve/{Locator.js → locator/Locator.js} +10 -5
- package/dist/eve/locator/Locator.js.map +1 -0
- package/dist/eve/{LocatorData.js → locator/LocatorData.js} +7 -5
- package/dist/eve/locator/LocatorData.js.map +1 -0
- package/dist/eve/overlays/EveMeshOverlayEffect.js +208 -0
- package/dist/eve/overlays/EveMeshOverlayEffect.js.map +1 -0
- package/dist/eve/{EveParticleDirectForce.js → particles/force/EveParticleDirectForce.js} +6 -6
- package/dist/eve/particles/force/EveParticleDirectForce.js.map +1 -0
- package/dist/eve/{EveParticleDragForce.js → particles/force/EveParticleDragForce.js} +6 -6
- package/dist/eve/particles/force/EveParticleDragForce.js.map +1 -0
- package/dist/eve/{EveParticleSpring.js → particles/force/EveParticleSpring.js} +7 -7
- package/dist/eve/particles/force/EveParticleSpring.js.map +1 -0
- package/dist/eve/particles/static/EveSceneStaticParticles.js +326 -0
- package/dist/eve/particles/static/EveSceneStaticParticles.js.map +1 -0
- package/dist/eve/perObjectData/childPerObjectRecords.js +90 -0
- package/dist/eve/perObjectData/childPerObjectRecords.js.map +1 -0
- package/dist/eve/renderable/stretch/CjsStretchRuntime.js +78 -2
- package/dist/eve/renderable/stretch/CjsStretchRuntime.js.map +1 -1
- package/dist/eve/renderable/stretch/EveFiringEffectElementContainer.js +88 -4
- package/dist/eve/renderable/stretch/EveFiringEffectElementContainer.js.map +1 -1
- package/dist/eve/renderable/stretch/EveLocalPositionCurve.js +95 -4
- package/dist/eve/renderable/stretch/EveLocalPositionCurve.js.map +1 -1
- package/dist/eve/renderable/stretch/EveRemotePositionCurve.js +40 -4
- package/dist/eve/renderable/stretch/EveRemotePositionCurve.js.map +1 -1
- package/dist/eve/renderable/stretch/EveStretch.js +162 -13
- package/dist/eve/renderable/stretch/EveStretch.js.map +1 -1
- package/dist/eve/renderable/stretch/EveStretch2.js +125 -16
- package/dist/eve/renderable/stretch/EveStretch2.js.map +1 -1
- package/dist/eve/renderable/stretch/EveStretch3.js +265 -12
- package/dist/eve/renderable/stretch/EveStretch3.js.map +1 -1
- package/dist/eve/scene/EveSpaceScene.js +62 -12
- package/dist/eve/scene/EveSpaceScene.js.map +1 -1
- package/dist/{generated/eve/scene → eve/scene/components}/EveComponentCollection.js +26 -3
- package/dist/eve/scene/components/EveComponentCollection.js.map +1 -0
- package/dist/{generated/eve/scene → eve/scene/components}/EveComponentRegistry.js +76 -4
- package/dist/eve/scene/components/EveComponentRegistry.js.map +1 -0
- package/dist/eve/scene/picking/EvePickingContext.js +61 -0
- package/dist/eve/scene/picking/EvePickingContext.js.map +1 -0
- package/dist/eve/scene/shadows/TriShadowFrustum.js +70 -0
- package/dist/eve/scene/shadows/TriShadowFrustum.js.map +1 -0
- package/dist/eve/scene/shadows/TriShadowOrthoFrustum.js +129 -0
- package/dist/eve/scene/shadows/TriShadowOrthoFrustum.js.map +1 -0
- package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js +20 -20
- package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js.map +1 -0
- package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js +21 -21
- package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js.map +1 -0
- package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js +14 -14
- package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js.map +1 -0
- package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js +13 -13
- package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js.map +1 -0
- package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js +32 -32
- package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js.map +1 -0
- package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js +11 -11
- package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js.map +1 -0
- package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js +25 -25
- package/dist/eve/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js.map +1 -0
- package/dist/eve/smartLights/attributeModifiers/enums.js.map +1 -0
- package/dist/{generated/eve → eve}/socket/EveSocketParameterBindingBase.js +28 -3
- package/dist/eve/socket/EveSocketParameterBindingBase.js.map +1 -0
- package/dist/{generated/eve → eve}/socket/EveSocketParameterBool.js +18 -2
- package/dist/eve/socket/EveSocketParameterBool.js.map +1 -0
- package/dist/{generated/eve → eve}/socket/EveSocketParameterColor.js +23 -7
- package/dist/eve/socket/EveSocketParameterColor.js.map +1 -0
- package/dist/eve/socket/EveSocketParameterFilePath.js +6 -6
- package/dist/eve/socket/EveSocketParameterFilePath.js.map +1 -1
- package/dist/{generated/eve → eve}/socket/EveSocketParameterFloat.js +18 -2
- package/dist/eve/socket/EveSocketParameterFloat.js.map +1 -0
- package/dist/{generated/eve → eve}/socket/EveSocketParameterInt.js +18 -2
- package/dist/eve/socket/EveSocketParameterInt.js.map +1 -0
- package/dist/{generated/eve → eve}/socket/EveSocketParameterString.js +44 -4
- package/dist/eve/socket/EveSocketParameterString.js.map +1 -0
- package/dist/{generated/eve → eve}/socket/EveSocketParameterVector2.js +19 -3
- package/dist/eve/socket/EveSocketParameterVector2.js.map +1 -0
- package/dist/{generated/eve → eve}/socket/EveSocketParameterVector3.js +19 -3
- package/dist/eve/socket/EveSocketParameterVector3.js.map +1 -0
- package/dist/{generated/eve → eve}/socket/EveSocketParameterVector4.js +19 -3
- package/dist/eve/socket/EveSocketParameterVector4.js.map +1 -0
- package/dist/eve/spaceObject/EveEffectRoot2.js +69 -33
- package/dist/eve/spaceObject/EveEffectRoot2.js.map +1 -1
- package/dist/eve/spaceObject/EveMissile.js +55 -7
- package/dist/eve/spaceObject/EveMissile.js.map +1 -1
- package/dist/eve/spaceObject/EveMissileWarhead.js +112 -16
- package/dist/eve/spaceObject/EveMissileWarhead.js.map +1 -1
- package/dist/eve/spaceObject/EveMobile.js +107 -3
- package/dist/eve/spaceObject/EveMobile.js.map +1 -1
- package/dist/eve/spaceObject/EveRootTransform.js +21 -4
- package/dist/eve/spaceObject/EveRootTransform.js.map +1 -1
- package/dist/{generated/eve → eve}/spaceObject/EveShip2.js +34 -14
- package/dist/eve/spaceObject/EveShip2.js.map +1 -0
- package/dist/eve/spaceObject/EveSpaceObject2.js +747 -205
- package/dist/eve/spaceObject/EveSpaceObject2.js.map +1 -1
- package/dist/eve/spaceObject/EveStation2.js +1 -1
- package/dist/eve/spaceObject/EveStation2.js.map +1 -1
- package/dist/eve/spaceObject/EveTransform.js +124 -24
- package/dist/eve/spaceObject/EveTransform.js.map +1 -1
- package/dist/eve/spaceObject/IEveSpaceObject2ParentData.js +70 -0
- package/dist/eve/spaceObject/IEveSpaceObject2ParentData.js.map +1 -0
- package/dist/eve/spaceObject/createEveSpaceObjectMainPerObjectValues.js +19 -16
- package/dist/eve/spaceObject/createEveSpaceObjectMainPerObjectValues.js.map +1 -1
- package/dist/eve/spaceObject/fxAttributes/EveCameraFxAttributes.js +92 -0
- package/dist/eve/spaceObject/fxAttributes/EveCameraFxAttributes.js.map +1 -0
- package/dist/eve/spaceObject/fxAttributes/EveSpaceObjectFxAttributes.js +158 -0
- package/dist/eve/spaceObject/fxAttributes/EveSpaceObjectFxAttributes.js.map +1 -0
- package/dist/eve/spaceObject/planet/EvePlanet.js +63 -0
- package/dist/eve/spaceObject/planet/EvePlanet.js.map +1 -0
- package/dist/eve/spaceObject/swarm/EveSwarmRenderable.js +225 -0
- package/dist/eve/spaceObject/swarm/EveSwarmRenderable.js.map +1 -0
- package/dist/eve/spaceObject/swarm/SwarmVehicle.js +4 -4
- package/dist/eve/spaceObject/swarm/SwarmVehicle.js.map +1 -1
- package/dist/eve/spaceObject/swarm/SwarmVehicleDebug.js +3 -3
- package/dist/eve/spaceObject/swarm/SwarmVehicleDebug.js.map +1 -1
- package/dist/eve/ui/EveEllipseDefinition.js +18 -3
- package/dist/eve/ui/EveEllipseDefinition.js.map +1 -1
- package/dist/eve/ui/EveEllipseSet.js +44 -2
- package/dist/eve/ui/EveEllipseSet.js.map +1 -1
- package/dist/eve/ui/EveSpherePin.js +159 -0
- package/dist/eve/ui/EveSpherePin.js.map +1 -0
- package/dist/eve/ui/EveSprite2dBracket.js +9 -4
- package/dist/eve/ui/EveSprite2dBracket.js.map +1 -1
- package/dist/eve/ui/EveUiObject.js +12 -1
- package/dist/eve/ui/EveUiObject.js.map +1 -1
- package/dist/{generated/eve/ui → eve/ui/lines}/EveLineSet.js +71 -10
- package/dist/eve/ui/lines/EveLineSet.js.map +1 -0
- package/dist/eve/ui/tacticalOverlay/EveTacticalOverlayTrackObject.js +78 -0
- package/dist/eve/ui/tacticalOverlay/EveTacticalOverlayTrackObject.js.map +1 -0
- package/dist/{generated/eve/ui → eve/ui/tacticalOverlay}/EveTacticalTrails.js +24 -4
- package/dist/eve/ui/tacticalOverlay/EveTacticalTrails.js.map +1 -0
- package/dist/eve/virtualCamera/EveVirtualCamera.js +158 -6
- package/dist/eve/virtualCamera/EveVirtualCamera.js.map +1 -1
- package/dist/eve/virtualCamera/EveVirtualCameraSystem.js +67 -2
- package/dist/eve/virtualCamera/EveVirtualCameraSystem.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatAdd.js +18 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatAdd.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatBase.js +21 -2
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatBase.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatDamping.js +18 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatDamping.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatNoise.js +30 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatNoise.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatSet.js +16 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatSet.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Base.js +42 -4
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Base.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Damping.js +19 -2
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Damping.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Inertia.js +20 -2
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Inertia.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveBetween.js +22 -2
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveBetween.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveForward.js +22 -2
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveForward.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveRight.js +13 -2
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveRight.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveUp.js +16 -2
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveUp.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Offset.js +18 -2
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Offset.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Orbit.js +23 -3
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Orbit.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Shake.js +38 -2
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Shake.js.map +1 -1
- package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionBase.js +38 -2
- package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionBase.js.map +1 -1
- package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionCut.js +12 -1
- package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionCut.js.map +1 -1
- package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionLerp.js +39 -2
- package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionLerp.js.map +1 -1
- package/dist/eve/volume/EveBoxVolume.js +63 -4
- package/dist/eve/volume/EveBoxVolume.js.map +1 -1
- package/dist/eve/volume/EveEllipsoidVolume.js +58 -4
- package/dist/eve/volume/EveEllipsoidVolume.js.map +1 -1
- package/dist/eve/volume/EveSphereVolume.js +37 -3
- package/dist/eve/volume/EveSphereVolume.js.map +1 -1
- package/dist/generated/curves/Tr2VectorFunctionModifier.js +3 -3
- package/dist/generated/curves/Tr2VectorFunctionModifier.js.map +1 -1
- package/dist/generated/eve/child/EveChildCloud.js +5 -5
- package/dist/generated/eve/child/EveChildCloud.js.map +1 -1
- package/dist/generated/eve/child/EveChildCloud2.js +759 -48
- package/dist/generated/eve/child/EveChildCloud2.js.map +1 -1
- package/dist/generated/eve/child/EveChildExplosion.js +4 -4
- package/dist/generated/eve/child/EveChildExplosion.js.map +1 -1
- package/dist/generated/eve/child/EveChildInstanceContainer.js +1 -1
- package/dist/generated/eve/child/EveChildInstanceContainer.js.map +1 -1
- package/dist/generated/eve/child/EveChildInstanceMeshRenderer.js +3 -3
- package/dist/generated/eve/child/EveChildInstanceMeshRenderer.js.map +1 -1
- package/dist/generated/eve/child/EveChildLineSet.js +2 -2
- package/dist/generated/eve/child/EveChildLineSet.js.map +1 -1
- package/dist/generated/eve/child/EveChildParticleSphere.js +3 -3
- package/dist/generated/eve/child/EveChildParticleSphere.js.map +1 -1
- package/dist/generated/eve/child/EveChildParticleSystem.js +16 -10
- package/dist/generated/eve/child/EveChildParticleSystem.js.map +1 -1
- package/dist/generated/eve/child/EveChildPlug.js +1 -1
- package/dist/generated/eve/child/EveChildPlug.js.map +1 -1
- package/dist/generated/eve/child/EveChildPostProcessVolume.js +4 -4
- package/dist/generated/eve/child/EveChildPostProcessVolume.js.map +1 -1
- package/dist/generated/eve/child/EveChildQuad.js +5 -5
- package/dist/generated/eve/child/EveChildQuad.js.map +1 -1
- package/dist/generated/eve/child/EveChildRef.js +1 -1
- package/dist/generated/eve/child/EveChildRef.js.map +1 -1
- package/dist/generated/eve/child/EveChildSocket.js +2 -2
- package/dist/generated/eve/child/EveChildSocket.js.map +1 -1
- package/dist/generated/eve/child/EveCloudEditableVolume.js +2 -2
- package/dist/generated/eve/child/EveCloudEditableVolume.js.map +1 -1
- package/dist/generated/eve/child/EveCloudVolumeTextureParameter.js +2 -2
- package/dist/generated/eve/child/EveCloudVolumeTextureParameter.js.map +1 -1
- package/dist/generated/eve/child/IEveLightingOverride.js +2 -2
- package/dist/generated/eve/child/IEveLightingOverride.js.map +1 -1
- package/dist/generated/eve/child/behaviors/Allign.js +3 -3
- package/dist/generated/eve/child/behaviors/Allign.js.map +1 -1
- package/dist/generated/eve/child/behaviors/ApproachGroup.js +3 -3
- package/dist/generated/eve/child/behaviors/ApproachGroup.js.map +1 -1
- package/dist/generated/eve/child/behaviors/BackAndForth.js +18 -21
- package/dist/generated/eve/child/behaviors/BackAndForth.js.map +1 -1
- package/dist/generated/eve/child/behaviors/BehaviorGroup.js +7 -7
- package/dist/generated/eve/child/behaviors/BehaviorGroup.js.map +1 -1
- package/dist/generated/eve/child/behaviors/BehaviorGroupBooster.js +5 -5
- package/dist/generated/eve/child/behaviors/BehaviorGroupBooster.js.map +1 -1
- package/dist/generated/eve/child/behaviors/DroneAvoidance.js +3 -3
- package/dist/generated/eve/child/behaviors/DroneAvoidance.js.map +1 -1
- package/dist/generated/eve/child/behaviors/EveKDdroneManagementTree.js +29 -32
- package/dist/generated/eve/child/behaviors/EveKDdroneManagementTree.js.map +1 -1
- package/dist/generated/eve/child/behaviors/FollowASpline.js +16 -20
- package/dist/generated/eve/child/behaviors/FollowASpline.js.map +1 -1
- package/dist/generated/eve/child/behaviors/Formation.js +4 -4
- package/dist/generated/eve/child/behaviors/Formation.js.map +1 -1
- package/dist/generated/eve/child/behaviors/Inertia.js +4 -4
- package/dist/generated/eve/child/behaviors/Inertia.js.map +1 -1
- package/dist/generated/eve/child/behaviors/PlayFX.js +16 -16
- package/dist/generated/eve/child/behaviors/PlayFX.js.map +1 -1
- package/dist/generated/eve/child/behaviors/SeekTarget.js +4 -4
- package/dist/generated/eve/child/behaviors/SeekTarget.js.map +1 -1
- package/dist/generated/eve/child/behaviors/SpawnDrones.js +4 -4
- package/dist/generated/eve/child/behaviors/SpawnDrones.js.map +1 -1
- package/dist/generated/eve/child/behaviors/index.js +0 -6
- package/dist/generated/eve/child/behaviors/index.js.map +1 -1
- package/dist/generated/eve/child/index.js +0 -23
- package/dist/generated/eve/child/index.js.map +1 -1
- package/dist/generated/eve/child/lineSetPaths/EveLineChildContainer.js +1 -1
- package/dist/generated/eve/child/lineSetPaths/EveLineChildContainer.js.map +1 -1
- package/dist/generated/eve/effect/EveOccluder.js +2 -2
- package/dist/generated/eve/effect/EveOccluder.js.map +1 -1
- package/dist/generated/eve/effect/EveStarfield.js +2 -2
- package/dist/generated/eve/effect/EveStarfield.js.map +1 -1
- package/dist/generated/eve/effect/index.js +0 -3
- package/dist/generated/eve/effect/index.js.map +1 -1
- package/dist/generated/eve/index.js +0 -88
- package/dist/generated/eve/index.js.map +1 -1
- package/dist/generated/eve/lights/Tr2FactionLight.js +4 -4
- package/dist/generated/eve/lights/Tr2FactionLight.js.map +1 -1
- package/dist/generated/eve/scene/EvePendingPickingReadback.js +2 -2
- package/dist/generated/eve/scene/EvePendingPickingReadback.js.map +1 -1
- package/dist/generated/eve/scene/EveSpaceSceneRenderDriver.js +3 -3
- package/dist/generated/eve/scene/EveSpaceSceneRenderDriver.js.map +1 -1
- package/dist/generated/eve/scene/index.js +0 -6
- package/dist/generated/eve/scene/index.js.map +1 -1
- package/dist/generated/eve/smartLights/EveChildSmartLightSet.js +2 -2
- package/dist/generated/eve/smartLights/EveChildSmartLightSet.js.map +1 -1
- package/dist/generated/eve/smartLights/EveSmartLightBaseGroup.js +3 -3
- package/dist/generated/eve/smartLights/EveSmartLightBaseGroup.js.map +1 -1
- package/dist/generated/eve/smartLights/EveSmartLightColorShareGroup.js +23 -23
- package/dist/generated/eve/smartLights/EveSmartLightColorShareGroup.js.map +1 -1
- package/dist/generated/eve/smartLights/EveSmartLightMesh.js +1 -1
- package/dist/generated/eve/smartLights/EveSmartLightMesh.js.map +1 -1
- package/dist/generated/eve/smartLights/EveSmartLightPointLight.js +6 -6
- package/dist/generated/eve/smartLights/EveSmartLightPointLight.js.map +1 -1
- package/dist/generated/eve/smartLights/EveSmartLightQuad.js +6 -6
- package/dist/generated/eve/smartLights/EveSmartLightQuad.js.map +1 -1
- package/dist/generated/eve/smartLights/EveSmartLightSpotLight.js +1 -1
- package/dist/generated/eve/smartLights/EveSmartLightSpotLight.js.map +1 -1
- package/dist/generated/eve/smartLights/index.js +0 -8
- package/dist/generated/eve/smartLights/index.js.map +1 -1
- package/dist/generated/eve/spaceObject/index.js +0 -4
- package/dist/generated/eve/spaceObject/index.js.map +1 -1
- package/dist/generated/eve/spaceObject/swarm/EveSwarm.js +194 -173
- package/dist/generated/eve/spaceObject/swarm/EveSwarm.js.map +1 -1
- package/dist/generated/eve/spaceObject/swarm/index.js +0 -1
- package/dist/generated/eve/spaceObject/swarm/index.js.map +1 -1
- package/dist/generated/eve/ui/EveConnector.js +4 -4
- package/dist/generated/eve/ui/EveConnector.js.map +1 -1
- package/dist/generated/eve/ui/EveCurveLineSet.js +2 -2
- package/dist/generated/eve/ui/EveCurveLineSet.js.map +1 -1
- package/dist/generated/eve/ui/EveLineContainer.js +2 -2
- package/dist/generated/eve/ui/EveLineContainer.js.map +1 -1
- package/dist/generated/eve/ui/EveProjectBracket.js +4 -4
- package/dist/generated/eve/ui/EveProjectBracket.js.map +1 -1
- package/dist/generated/eve/ui/EveSprite2dBracketRenderer.js +2 -2
- package/dist/generated/eve/ui/EveSprite2dBracketRenderer.js.map +1 -1
- package/dist/generated/eve/ui/EveTacticalOverlay.js +4 -4
- package/dist/generated/eve/ui/EveTacticalOverlay.js.map +1 -1
- package/dist/generated/eve/ui/index.js +0 -4
- package/dist/generated/eve/ui/index.js.map +1 -1
- package/dist/generated/font/Tr2FontManager.js +2 -2
- package/dist/generated/font/Tr2FontManager.js.map +1 -1
- package/dist/generated/font/Tr2FontMeasurer.js +2 -2
- package/dist/generated/font/Tr2FontMeasurer.js.map +1 -1
- package/dist/generated/font/Tr2SBitWrapper.js +2 -2
- package/dist/generated/font/Tr2SBitWrapper.js.map +1 -1
- package/dist/generated/index.js +0 -93
- package/dist/generated/index.js.map +1 -1
- package/dist/generated/particle/ITr2GenericEmitter.js +4 -4
- package/dist/generated/particle/ITr2GenericEmitter.js.map +1 -1
- package/dist/generated/particle/Tr2CapsuleShapeAttributeGenerator.js +4 -4
- package/dist/generated/particle/Tr2CapsuleShapeAttributeGenerator.js.map +1 -1
- package/dist/generated/particle/Tr2ConsecutiveIntegerAttributeGenerator.js +3 -3
- package/dist/generated/particle/Tr2ConsecutiveIntegerAttributeGenerator.js.map +1 -1
- package/dist/generated/particle/Tr2DynamicEmitter.js +2 -2
- package/dist/generated/particle/Tr2DynamicEmitter.js.map +1 -1
- package/dist/generated/particle/Tr2ElementBlendConstraint.js +3 -3
- package/dist/generated/particle/Tr2ElementBlendConstraint.js.map +1 -1
- package/dist/generated/particle/Tr2ForceSphereVolume.js +3 -3
- package/dist/generated/particle/Tr2ForceSphereVolume.js.map +1 -1
- package/dist/generated/particle/Tr2GpuParticleSystem.js +2 -2
- package/dist/generated/particle/Tr2GpuParticleSystem.js.map +1 -1
- package/dist/generated/particle/Tr2ParticleSystem.js +3 -3
- package/dist/generated/particle/Tr2ParticleSystem.js.map +1 -1
- package/dist/generated/particle/Tr2ParticleTurbulenceForce.js +5 -5
- package/dist/generated/particle/Tr2ParticleTurbulenceForce.js.map +1 -1
- package/dist/generated/particle/Tr2PlaneConstraint.js +4 -4
- package/dist/generated/particle/Tr2PlaneConstraint.js.map +1 -1
- package/dist/generated/particle/Tr2RandomDirectionAttributeGenerator.js +2 -2
- package/dist/generated/particle/Tr2RandomDirectionAttributeGenerator.js.map +1 -1
- package/dist/generated/particle/Tr2RandomIntegerAttributeGenerator.js +3 -3
- package/dist/generated/particle/Tr2RandomIntegerAttributeGenerator.js.map +1 -1
- package/dist/generated/particle/Tr2RandomUniformAttributeGenerator.js +3 -3
- package/dist/generated/particle/Tr2RandomUniformAttributeGenerator.js.map +1 -1
- package/dist/generated/particle/Tr2SphereConstraint.js +4 -4
- package/dist/generated/particle/Tr2SphereConstraint.js.map +1 -1
- package/dist/generated/particle/Tr2SphereShapeAttributeGenerator.js +4 -4
- package/dist/generated/particle/Tr2SphereShapeAttributeGenerator.js.map +1 -1
- package/dist/generated/particle/Tr2StaticEmitter.js +2 -2
- package/dist/generated/particle/Tr2StaticEmitter.js.map +1 -1
- package/dist/generated/postProcess/Tr2PostProcessRenderer.js +2 -2
- package/dist/generated/postProcess/Tr2PostProcessRenderer.js.map +1 -1
- package/dist/generated/raytracing/Tr2RaytracingGeometry.js +3 -3
- package/dist/generated/raytracing/Tr2RaytracingGeometry.js.map +1 -1
- package/dist/generated/raytracing/Tr2RaytracingManager.js +2 -2
- package/dist/generated/raytracing/Tr2RaytracingManager.js.map +1 -1
- package/dist/generated/raytracing/Tr2RaytracingMesh.js +2 -2
- package/dist/generated/raytracing/Tr2RaytracingMesh.js.map +1 -1
- package/dist/generated/raytracing/Tr2RaytracingPipelineStateManager.js +2 -2
- package/dist/generated/raytracing/Tr2RaytracingPipelineStateManager.js.map +1 -1
- package/dist/generated/renderJob/Tr2RenderNodeEffect.js +2 -2
- package/dist/generated/renderJob/Tr2RenderNodeEffect.js.map +1 -1
- package/dist/generated/renderJob/Tr2RenderNodeSprite2dScene.js +2 -2
- package/dist/generated/renderJob/Tr2RenderNodeSprite2dScene.js.map +1 -1
- package/dist/generated/renderJob/Tr2StepExecuteRenderNode.js +1 -1
- package/dist/generated/renderJob/Tr2StepExecuteRenderNode.js.map +1 -1
- package/dist/generated/renderJob/TriStepClearUav.js +2 -2
- package/dist/generated/renderJob/TriStepClearUav.js.map +1 -1
- package/dist/generated/renderJob/TriStepFilterVisibilityResults.js +1 -1
- package/dist/generated/renderJob/TriStepFilterVisibilityResults.js.map +1 -1
- package/dist/generated/renderJob/TriStepPythonCB.js +1 -1
- package/dist/generated/renderJob/TriStepPythonCB.js.map +1 -1
- package/dist/generated/renderJob/TriStepRemoteUpdate.js +1 -1
- package/dist/generated/renderJob/TriStepRemoteUpdate.js.map +1 -1
- package/dist/generated/renderJob/TriStepRenderAtlas.js +3 -3
- package/dist/generated/renderJob/TriStepRenderAtlas.js.map +1 -1
- package/dist/generated/renderJob/TriStepRenderDebug.js +2 -2
- package/dist/generated/renderJob/TriStepRenderDebug.js.map +1 -1
- package/dist/generated/renderJob/TriStepRenderEffect.js +2 -2
- package/dist/generated/renderJob/TriStepRenderEffect.js.map +1 -1
- package/dist/generated/renderJob/TriStepRenderFps.js +1 -1
- package/dist/generated/renderJob/TriStepRenderFps.js.map +1 -1
- package/dist/generated/renderJob/TriStepRenderLineGraph.js +1 -1
- package/dist/generated/renderJob/TriStepRenderLineGraph.js.map +1 -1
- package/dist/generated/renderJob/TriStepRenderObject.js +1 -1
- package/dist/generated/renderJob/TriStepRenderObject.js.map +1 -1
- package/dist/generated/renderJob/TriStepRenderPass.js +1 -1
- package/dist/generated/renderJob/TriStepRenderPass.js.map +1 -1
- package/dist/generated/renderJob/TriStepRenderScene.js +1 -1
- package/dist/generated/renderJob/TriStepRenderScene.js.map +1 -1
- package/dist/generated/renderJob/TriStepRenderSceneDebug.js +1 -1
- package/dist/generated/renderJob/TriStepRenderSceneDebug.js.map +1 -1
- package/dist/generated/renderJob/TriStepRenderTexture.js +2 -2
- package/dist/generated/renderJob/TriStepRenderTexture.js.map +1 -1
- package/dist/generated/renderJob/TriStepRunComputeShader.js +1 -1
- package/dist/generated/renderJob/TriStepRunComputeShader.js.map +1 -1
- package/dist/generated/renderJob/TriStepSetDebugRenderer.js +1 -1
- package/dist/generated/renderJob/TriStepSetDebugRenderer.js.map +1 -1
- package/dist/generated/renderJob/TriStepSetUpscalingContextID.js +1 -1
- package/dist/generated/renderJob/TriStepSetUpscalingContextID.js.map +1 -1
- package/dist/generated/renderJob/TriStepSetVariableStore.js +1 -1
- package/dist/generated/renderJob/TriStepSetVariableStore.js.map +1 -1
- package/dist/generated/renderJob/TriStepTestBlocking.js +1 -1
- package/dist/generated/renderJob/TriStepTestBlocking.js.map +1 -1
- package/dist/generated/renderJob/TriStepToggleCubemap.js +1 -1
- package/dist/generated/renderJob/TriStepToggleCubemap.js.map +1 -1
- package/dist/generated/renderJob/TriStepUpdate.js +1 -1
- package/dist/generated/renderJob/TriStepUpdate.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2d.js +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2d.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dArc.js +2 -2
- package/dist/generated/sprite2d/Tr2Sprite2dArc.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dContainer.js +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dContainer.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dContainerBase.js +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dContainerBase.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dDisplayList.js +4 -4
- package/dist/generated/sprite2d/Tr2Sprite2dDisplayList.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dFrame.js +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dFrame.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dLayer.js +2 -2
- package/dist/generated/sprite2d/Tr2Sprite2dLayer.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dLine.js +3 -3
- package/dist/generated/sprite2d/Tr2Sprite2dLine.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dLineTrace.js +3 -3
- package/dist/generated/sprite2d/Tr2Sprite2dLineTrace.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dPickingMask.js +2 -2
- package/dist/generated/sprite2d/Tr2Sprite2dPickingMask.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dPolygon.js +4 -4
- package/dist/generated/sprite2d/Tr2Sprite2dPolygon.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dRenderJob.js +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dRenderJob.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dScene.js +6 -6
- package/dist/generated/sprite2d/Tr2Sprite2dScene.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dStretch.js +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dStretch.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dStretchVertical.js +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dStretchVertical.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dTextObject.js +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dTextObject.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dTexture.js +3 -3
- package/dist/generated/sprite2d/Tr2Sprite2dTexture.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dTransform.js +2 -2
- package/dist/generated/sprite2d/Tr2Sprite2dTransform.js.map +1 -1
- package/dist/generated/sprite2d/Tr2Sprite2dVertex.js +2 -2
- package/dist/generated/sprite2d/Tr2Sprite2dVertex.js.map +1 -1
- package/dist/generated/sprite2d/Tr2SpriteObject.js +3 -3
- package/dist/generated/sprite2d/Tr2SpriteObject.js.map +1 -1
- package/dist/generated/sprite2d/Tr2SpriteObjectBase.js +2 -2
- package/dist/generated/sprite2d/Tr2SpriteObjectBase.js.map +1 -1
- package/dist/generated/sprite2d/Tr2TexturedSpriteObject.js +1 -1
- package/dist/generated/sprite2d/Tr2TexturedSpriteObject.js.map +1 -1
- package/dist/generated/trinityCore/ITr2FroxelFogSettings.js +2 -2
- package/dist/generated/trinityCore/ITr2FroxelFogSettings.js.map +1 -1
- package/dist/generated/trinityCore/ITr2ImpostorSource.js +3 -3
- package/dist/generated/trinityCore/ITr2ImpostorSource.js.map +1 -1
- package/dist/generated/trinityCore/ITr2InstanceData.js +2 -2
- package/dist/generated/trinityCore/ITr2InstanceData.js.map +1 -1
- package/dist/generated/trinityCore/Tr2AtlasTexture.js +2 -2
- package/dist/generated/trinityCore/Tr2AtlasTexture.js.map +1 -1
- package/dist/generated/trinityCore/Tr2BoundingLineSet.js +2 -2
- package/dist/generated/trinityCore/Tr2BoundingLineSet.js.map +1 -1
- package/dist/generated/trinityCore/Tr2CurveLineSet.js +5 -5
- package/dist/generated/trinityCore/Tr2CurveLineSet.js.map +1 -1
- package/dist/generated/trinityCore/Tr2DebugRenderer.js +4 -4
- package/dist/generated/trinityCore/Tr2DebugRenderer.js.map +1 -1
- package/dist/generated/trinityCore/Tr2Denoiser.js +2 -2
- package/dist/generated/trinityCore/Tr2Denoiser.js.map +1 -1
- package/dist/generated/trinityCore/Tr2GpuProfiler.js +2 -2
- package/dist/generated/trinityCore/Tr2GpuProfiler.js.map +1 -1
- package/dist/generated/trinityCore/Tr2GpuStructuredBuffer.js +2 -2
- package/dist/generated/trinityCore/Tr2GpuStructuredBuffer.js.map +1 -1
- package/dist/generated/trinityCore/Tr2GrannyPrimitiveSet.js +1 -1
- package/dist/generated/trinityCore/Tr2GrannyPrimitiveSet.js.map +1 -1
- package/dist/generated/trinityCore/Tr2HostBitmap.js +3 -3
- package/dist/generated/trinityCore/Tr2HostBitmap.js.map +1 -1
- package/dist/generated/trinityCore/Tr2ImpostorManager.js +2 -2
- package/dist/generated/trinityCore/Tr2ImpostorManager.js.map +1 -1
- package/dist/generated/trinityCore/Tr2KelvinColor.js +2 -2
- package/dist/generated/trinityCore/Tr2KelvinColor.js.map +1 -1
- package/dist/generated/trinityCore/Tr2LineGraph.js +3 -3
- package/dist/generated/trinityCore/Tr2LineGraph.js.map +1 -1
- package/dist/generated/trinityCore/Tr2LineSet.js +3 -3
- package/dist/generated/trinityCore/Tr2LineSet.js.map +1 -1
- package/dist/generated/trinityCore/Tr2ManipulationTool.js +5 -5
- package/dist/generated/trinityCore/Tr2ManipulationTool.js.map +1 -1
- package/dist/generated/trinityCore/Tr2PrimitiveScene.js +2 -2
- package/dist/generated/trinityCore/Tr2PrimitiveScene.js.map +1 -1
- package/dist/generated/trinityCore/Tr2PrimitiveSet.js +4 -4
- package/dist/generated/trinityCore/Tr2PrimitiveSet.js.map +1 -1
- package/dist/generated/trinityCore/Tr2PrimitiveText.js +3 -3
- package/dist/generated/trinityCore/Tr2PrimitiveText.js.map +1 -1
- package/dist/generated/trinityCore/Tr2ProjectBoundingBoxBracket.js +2 -2
- package/dist/generated/trinityCore/Tr2ProjectBoundingBoxBracket.js.map +1 -1
- package/dist/generated/trinityCore/Tr2QuadRenderer.js +2 -2
- package/dist/generated/trinityCore/Tr2QuadRenderer.js.map +1 -1
- package/dist/generated/trinityCore/Tr2ReflectionProbe.js +4 -4
- package/dist/generated/trinityCore/Tr2ReflectionProbe.js.map +1 -1
- package/dist/generated/trinityCore/Tr2RingBuffer.js +2 -2
- package/dist/generated/trinityCore/Tr2RingBuffer.js.map +1 -1
- package/dist/generated/trinityCore/Tr2RotationTool.js +2 -2
- package/dist/generated/trinityCore/Tr2RotationTool.js.map +1 -1
- package/dist/generated/trinityCore/Tr2SSAO.js +2 -2
- package/dist/generated/trinityCore/Tr2SSAO.js.map +1 -1
- package/dist/generated/trinityCore/Tr2SSSSS.js +3 -3
- package/dist/generated/trinityCore/Tr2SSSSS.js.map +1 -1
- package/dist/generated/trinityCore/Tr2ScalingTool.js +3 -3
- package/dist/generated/trinityCore/Tr2ScalingTool.js.map +1 -1
- package/dist/generated/trinityCore/Tr2ShadowMap.js +2 -2
- package/dist/generated/trinityCore/Tr2ShadowMap.js.map +1 -1
- package/dist/generated/trinityCore/Tr2SolidSet.js +3 -3
- package/dist/generated/trinityCore/Tr2SolidSet.js.map +1 -1
- package/dist/generated/trinityCore/Tr2StreamingBitmapSaver.js +3 -3
- package/dist/generated/trinityCore/Tr2StreamingBitmapSaver.js.map +1 -1
- package/dist/generated/trinityCore/Tr2TextureAnimation.js +2 -2
- package/dist/generated/trinityCore/Tr2TextureAnimation.js.map +1 -1
- package/dist/generated/trinityCore/Tr2TextureArray.js +3 -3
- package/dist/generated/trinityCore/Tr2TextureArray.js.map +1 -1
- package/dist/generated/trinityCore/Tr2TextureAtlas.js +3 -3
- package/dist/generated/trinityCore/Tr2TextureAtlas.js.map +1 -1
- package/dist/generated/trinityCore/Tr2TextureAtlasMan.js +2 -2
- package/dist/generated/trinityCore/Tr2TextureAtlasMan.js.map +1 -1
- package/dist/generated/trinityCore/Tr2TextureReference.js +2 -2
- package/dist/generated/trinityCore/Tr2TextureReference.js.map +1 -1
- package/dist/generated/trinityCore/Tr2Transform.js +5 -5
- package/dist/generated/trinityCore/Tr2Transform.js.map +1 -1
- package/dist/generated/trinityCore/Tr2TransientTextureReference.js +2 -2
- package/dist/generated/trinityCore/Tr2TransientTextureReference.js.map +1 -1
- package/dist/generated/trinityCore/Tr2TranslationTool.js +2 -2
- package/dist/generated/trinityCore/Tr2TranslationTool.js.map +1 -1
- package/dist/generated/trinityCore/Tr2VolumetricsRenderer.js +2 -2
- package/dist/generated/trinityCore/Tr2VolumetricsRenderer.js.map +1 -1
- package/dist/generated/trinityCore/TriLineSet.js +4 -4
- package/dist/generated/trinityCore/TriLineSet.js.map +1 -1
- package/dist/generated/trinityCore/TriRigidOrientation.js +4 -4
- package/dist/generated/trinityCore/TriRigidOrientation.js.map +1 -1
- package/dist/generated/trinityCore/index.js +0 -5
- package/dist/generated/trinityCore/index.js.map +1 -1
- package/dist/generated/utilities/Float4x3.js +2 -2
- package/dist/generated/utilities/Float4x3.js.map +1 -1
- package/dist/generated/utilities/Obb.js +3 -3
- package/dist/generated/utilities/Obb.js.map +1 -1
- package/dist/generated/utilities/Tr2MaterialBoundsAdjustment.js +2 -2
- package/dist/generated/utilities/Tr2MaterialBoundsAdjustment.js.map +1 -1
- package/dist/index.js +131 -152
- package/dist/index.js.map +1 -1
- package/dist/particle/Tr2GpuSharedEmitter.js +43 -4
- package/dist/particle/Tr2GpuSharedEmitter.js.map +1 -1
- package/dist/particle/Tr2GpuUniqueEmitter.js +7 -2
- package/dist/particle/Tr2GpuUniqueEmitter.js.map +1 -1
- package/dist/particle/Tr2ParticleAttractorForce.js +13 -3
- package/dist/particle/Tr2ParticleAttractorForce.js.map +1 -1
- package/dist/particle/Tr2ParticleDirectForce.js +10 -3
- package/dist/particle/Tr2ParticleDirectForce.js.map +1 -1
- package/dist/particle/Tr2ParticleDragForce.js +10 -3
- package/dist/particle/Tr2ParticleDragForce.js.map +1 -1
- package/dist/particle/Tr2ParticleElementData.js +2 -2
- package/dist/particle/Tr2ParticleElementData.js.map +1 -1
- package/dist/particle/Tr2ParticleElementDeclaration.js +7 -2
- package/dist/particle/Tr2ParticleElementDeclaration.js.map +1 -1
- package/dist/particle/Tr2ParticleElementDeclarationName.js +2 -2
- package/dist/particle/Tr2ParticleElementDeclarationName.js.map +1 -1
- package/dist/particle/Tr2ParticleFluidDragForce.js +13 -3
- package/dist/particle/Tr2ParticleFluidDragForce.js.map +1 -1
- package/dist/particle/Tr2ParticleSpring.js +13 -3
- package/dist/particle/Tr2ParticleSpring.js.map +1 -1
- package/dist/particle/Tr2ParticleVortexForce.js +13 -3
- package/dist/particle/Tr2ParticleVortexForce.js.map +1 -1
- package/dist/particle/particleElementBinding.js +12 -0
- package/dist/particle/particleElementBinding.js.map +1 -1
- package/dist/postProcess/BlurContext.js +2 -2
- package/dist/postProcess/BlurContext.js.map +1 -1
- package/dist/postProcess/GaussianData.js +4 -4
- package/dist/postProcess/GaussianData.js.map +1 -1
- package/dist/postProcess/Tr2PPBloomEffect.js +8 -2
- package/dist/postProcess/Tr2PPBloomEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPColorCorrectionEffect.js +2 -2
- package/dist/postProcess/Tr2PPColorCorrectionEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPDepthOfFieldEffect.js +17 -1
- package/dist/postProcess/Tr2PPDepthOfFieldEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPDesaturateEffect.js +1 -1
- package/dist/postProcess/Tr2PPDesaturateEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPDynamicExposureEffect.js +1 -1
- package/dist/postProcess/Tr2PPDynamicExposureEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPEffect.js +2 -2
- package/dist/postProcess/Tr2PPEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPFadeEffect.js +2 -2
- package/dist/postProcess/Tr2PPFadeEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPFilmGrainEffect.js +1 -1
- package/dist/postProcess/Tr2PPFilmGrainEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPFogEffect.js +4 -4
- package/dist/postProcess/Tr2PPFogEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPGenericEffect.js +8 -1
- package/dist/postProcess/Tr2PPGenericEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPGodRaysEffect.js +2 -2
- package/dist/postProcess/Tr2PPGodRaysEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPLutEffect.js +1 -1
- package/dist/postProcess/Tr2PPLutEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPSignalLossEffect.js +1 -1
- package/dist/postProcess/Tr2PPSignalLossEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPTaaEffect.js +11 -1
- package/dist/postProcess/Tr2PPTaaEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPTonemappingEffect.js +6 -1
- package/dist/postProcess/Tr2PPTonemappingEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPVignetteEffect.js +3 -3
- package/dist/postProcess/Tr2PPVignetteEffect.js.map +1 -1
- package/dist/postProcess/Tr2PostProcess.js +7 -2
- package/dist/postProcess/Tr2PostProcess.js.map +1 -1
- package/dist/postProcess/Tr2PostProcess2.js +149 -2
- package/dist/postProcess/Tr2PostProcess2.js.map +1 -1
- package/dist/postProcess/Tr2PostProcessAttributes.js +94 -5
- package/dist/postProcess/Tr2PostProcessAttributes.js.map +1 -1
- package/dist/renderJob/Tr2RenderJobs.js +36 -2
- package/dist/renderJob/Tr2RenderJobs.js.map +1 -1
- package/dist/renderJob/TriRenderJob.js +61 -2
- package/dist/renderJob/TriRenderJob.js.map +1 -1
- package/dist/renderJob/TriRenderStep.js +22 -2
- package/dist/renderJob/TriRenderStep.js.map +1 -1
- package/dist/renderJob/TriStepClear.js +20 -2
- package/dist/renderJob/TriStepClear.js.map +1 -1
- package/dist/renderJob/TriStepCopyRenderTarget.js +52 -1
- package/dist/renderJob/TriStepCopyRenderTarget.js.map +1 -1
- package/dist/renderJob/TriStepEnableWireframeMode.js +10 -1
- package/dist/renderJob/TriStepEnableWireframeMode.js.map +1 -1
- package/dist/renderJob/TriStepGenerateMipMaps.js +10 -1
- package/dist/renderJob/TriStepGenerateMipMaps.js.map +1 -1
- package/dist/renderJob/TriStepPopDepthStencil.js +7 -1
- package/dist/renderJob/TriStepPopDepthStencil.js.map +1 -1
- package/dist/renderJob/TriStepPopProjection.js +7 -1
- package/dist/renderJob/TriStepPopProjection.js.map +1 -1
- package/dist/renderJob/TriStepPopRenderTarget.js +13 -1
- package/dist/renderJob/TriStepPopRenderTarget.js.map +1 -1
- package/dist/renderJob/TriStepPopViewTransform.js +7 -1
- package/dist/renderJob/TriStepPopViewTransform.js.map +1 -1
- package/dist/renderJob/TriStepPopViewport.js +7 -1
- package/dist/renderJob/TriStepPopViewport.js.map +1 -1
- package/dist/renderJob/TriStepPresentSwapChain.js +13 -1
- package/dist/renderJob/TriStepPresentSwapChain.js.map +1 -1
- package/dist/renderJob/TriStepPushDepthStencil.js +18 -1
- package/dist/renderJob/TriStepPushDepthStencil.js.map +1 -1
- package/dist/renderJob/TriStepPushProjection.js +7 -1
- package/dist/renderJob/TriStepPushProjection.js.map +1 -1
- package/dist/renderJob/TriStepPushRenderTarget.js +10 -1
- package/dist/renderJob/TriStepPushRenderTarget.js.map +1 -1
- package/dist/renderJob/TriStepPushViewTransform.js +7 -1
- package/dist/renderJob/TriStepPushViewTransform.js.map +1 -1
- package/dist/renderJob/TriStepPushViewport.js +7 -1
- package/dist/renderJob/TriStepPushViewport.js.map +1 -1
- package/dist/renderJob/TriStepRemoteSync.js +18 -1
- package/dist/renderJob/TriStepRemoteSync.js.map +1 -1
- package/dist/renderJob/TriStepResolve.js +14 -1
- package/dist/renderJob/TriStepResolve.js.map +1 -1
- package/dist/renderJob/TriStepRunJob.js +13 -1
- package/dist/renderJob/TriStepRunJob.js.map +1 -1
- package/dist/renderJob/TriStepSetDepthStencil.js +13 -1
- package/dist/renderJob/TriStepSetDepthStencil.js.map +1 -1
- package/dist/renderJob/TriStepSetProjection.js +15 -1
- package/dist/renderJob/TriStepSetProjection.js.map +1 -1
- package/dist/renderJob/TriStepSetRenderState.js +22 -2
- package/dist/renderJob/TriStepSetRenderState.js.map +1 -1
- package/dist/renderJob/TriStepSetRenderTarget.js +13 -1
- package/dist/renderJob/TriStepSetRenderTarget.js.map +1 -1
- package/dist/renderJob/TriStepSetStdRndStates.js +19 -1
- package/dist/renderJob/TriStepSetStdRndStates.js.map +1 -1
- package/dist/renderJob/TriStepSetView.js +30 -3
- package/dist/renderJob/TriStepSetView.js.map +1 -1
- package/dist/renderJob/TriStepSetViewport.js +18 -1
- package/dist/renderJob/TriStepSetViewport.js.map +1 -1
- package/dist/renderJob/TriStepSetVisualizationMode.js +20 -1
- package/dist/renderJob/TriStepSetVisualizationMode.js.map +1 -1
- package/dist/shader/Tr2Effect.js +219 -4
- package/dist/shader/Tr2Effect.js.map +1 -1
- package/dist/shader/Tr2Material.js +43 -2
- package/dist/shader/Tr2Material.js.map +1 -1
- package/dist/shader/index.js +1 -11
- package/dist/shader/index.js.map +1 -1
- package/dist/shader/material/Tr2EffectLibraryParameters.js +9 -2
- package/dist/shader/material/Tr2EffectLibraryParameters.js.map +1 -1
- package/dist/shader/material/Tr2EffectParam.js +2 -2
- package/dist/shader/material/Tr2EffectParam.js.map +1 -1
- package/dist/shader/material/Tr2EffectPassParameters.js +25 -2
- package/dist/shader/material/Tr2EffectPassParameters.js.map +1 -1
- package/dist/shader/material/Tr2EffectTechniqueInputs.js +2 -2
- package/dist/shader/material/Tr2EffectTechniqueInputs.js.map +1 -1
- package/dist/shader/material/Tr2MaterialStageInput.js +17 -2
- package/dist/shader/material/Tr2MaterialStageInput.js.map +1 -1
- package/dist/shader/material/Tr2SharedConstantBuffers.js +2 -2
- package/dist/shader/material/Tr2SharedConstantBuffers.js.map +1 -1
- package/dist/shader/parameter/CjsParameter.js +95 -1
- package/dist/shader/parameter/CjsParameter.js.map +1 -1
- package/dist/shader/parameter/CjsVectorParameter.js +20 -0
- package/dist/shader/parameter/CjsVectorParameter.js.map +1 -1
- package/dist/shader/parameter/Tr2ConstantEffectParameter.js +2 -2
- package/dist/shader/parameter/Tr2ConstantEffectParameter.js.map +1 -1
- package/dist/shader/parameter/Tr2FloatParameter.js +54 -1
- package/dist/shader/parameter/Tr2FloatParameter.js.map +1 -1
- package/dist/shader/parameter/Tr2GeometryBufferParameter.js +41 -2
- package/dist/shader/parameter/Tr2GeometryBufferParameter.js.map +1 -1
- package/dist/shader/parameter/Tr2Matrix4Parameter.js +56 -2
- package/dist/shader/parameter/Tr2Matrix4Parameter.js.map +1 -1
- package/dist/shader/parameter/Tr2RuntimeTextureParameter.js +55 -1
- package/dist/shader/parameter/Tr2RuntimeTextureParameter.js.map +1 -1
- package/dist/shader/parameter/Tr2TextureAnimationParameter.js +36 -1
- package/dist/shader/parameter/Tr2TextureAnimationParameter.js.map +1 -1
- package/dist/shader/parameter/Tr2Vector2Parameter.js +89 -3
- package/dist/shader/parameter/Tr2Vector2Parameter.js.map +1 -1
- package/dist/shader/parameter/Tr2Vector3Parameter.js +98 -3
- package/dist/shader/parameter/Tr2Vector3Parameter.js.map +1 -1
- package/dist/shader/parameter/Tr2Vector4Parameter.js +108 -3
- package/dist/shader/parameter/Tr2Vector4Parameter.js.map +1 -1
- package/dist/shader/parameter/TriFloatArrayParameter.js +27 -1
- package/dist/shader/parameter/TriFloatArrayParameter.js.map +1 -1
- package/dist/shader/parameter/TriTextureParameter.js +86 -2
- package/dist/shader/parameter/TriTextureParameter.js.map +1 -1
- package/dist/shader/parameter/TriTransformParameter.js +29 -6
- package/dist/shader/parameter/TriTransformParameter.js.map +1 -1
- package/dist/shader/parameter/TriVariableParameter.js +40 -2
- package/dist/shader/parameter/TriVariableParameter.js.map +1 -1
- package/dist/shader/parameter/TriVector4.js +5 -3
- package/dist/shader/parameter/TriVector4.js.map +1 -1
- package/dist/shader/reflection/Tr2ShaderOption.js +8 -3
- package/dist/shader/reflection/Tr2ShaderOption.js.map +1 -1
- package/dist/shader/sampler/Tr2SamplerOverride.js +2 -2
- package/dist/shader/sampler/Tr2SamplerOverride.js.map +1 -1
- package/dist/shader/sampler/Tr2SamplerOverrideData.js +2 -2
- package/dist/shader/sampler/Tr2SamplerOverrideData.js.map +1 -1
- package/dist/shader/support/CjsVariableStore.js +140 -0
- package/dist/shader/support/CjsVariableStore.js.map +1 -1
- package/dist/shader/support/Tr2DataTextureManager.js +2 -2
- package/dist/shader/support/Tr2DataTextureManager.js.map +1 -1
- package/dist/shader/support/Tr2EffectStateManager.js +2 -2
- package/dist/shader/support/Tr2EffectStateManager.js.map +1 -1
- package/dist/shader/support/Tr2ShaderBuffer.js +17 -2
- package/dist/shader/support/Tr2ShaderBuffer.js.map +1 -1
- package/dist/sprite2d/Tr2Sprite2dClipRect.js +2 -2
- package/dist/sprite2d/Tr2Sprite2dClipRect.js.map +1 -1
- package/dist/sprite2d/Tr2Sprite2dD3DVertex.js +2 -2
- package/dist/sprite2d/Tr2Sprite2dD3DVertex.js.map +1 -1
- package/dist/sprite2d/Tr2Sprite2dLineTraceVertex.js +4 -4
- package/dist/sprite2d/Tr2Sprite2dLineTraceVertex.js.map +1 -1
- package/dist/sprite2d/Tr2Sprite2dTriangle.js +2 -2
- package/dist/sprite2d/Tr2Sprite2dTriangle.js.map +1 -1
- package/dist/sprite2d/Tr2Sprite2dVertexBase.js +5 -5
- package/dist/sprite2d/Tr2Sprite2dVertexBase.js.map +1 -1
- package/dist/trinityCore/CjsBatchManager.js +67 -1
- package/dist/trinityCore/CjsBatchManager.js.map +1 -1
- package/dist/trinityCore/GrannyBoneOffset.js +56 -5
- package/dist/trinityCore/GrannyBoneOffset.js.map +1 -1
- package/dist/trinityCore/ITriRenderBatchAccumulator.js +90 -2
- package/dist/trinityCore/ITriRenderBatchAccumulator.js.map +1 -1
- package/dist/trinityCore/Tr2DepthStencil.js +3 -3
- package/dist/trinityCore/Tr2DepthStencil.js.map +1 -1
- package/dist/trinityCore/Tr2DirectInstanceData.js +22 -3
- package/dist/trinityCore/Tr2DirectInstanceData.js.map +1 -1
- package/dist/trinityCore/Tr2ExpressionTermInfo.js +23 -2
- package/dist/trinityCore/Tr2ExpressionTermInfo.js.map +1 -1
- package/dist/trinityCore/Tr2GpuBuffer.js +8 -3
- package/dist/trinityCore/Tr2GpuBuffer.js.map +1 -1
- package/dist/{generated/trinityCore → trinityCore}/Tr2GrannyAnimation.js +143 -14
- package/dist/trinityCore/Tr2GrannyAnimation.js.map +1 -0
- package/dist/trinityCore/Tr2InstancedMesh.js +54 -2
- package/dist/trinityCore/Tr2InstancedMesh.js.map +1 -1
- package/dist/trinityCore/Tr2MaterialParameterStore.js +7 -2
- package/dist/trinityCore/Tr2MaterialParameterStore.js.map +1 -1
- package/dist/trinityCore/Tr2Mesh.js +38 -1
- package/dist/trinityCore/Tr2Mesh.js.map +1 -1
- package/dist/trinityCore/Tr2MeshArea.js +80 -2
- package/dist/trinityCore/Tr2MeshArea.js.map +1 -1
- package/dist/trinityCore/Tr2MeshBase.js +101 -5
- package/dist/trinityCore/Tr2MeshBase.js.map +1 -1
- package/dist/trinityCore/Tr2PerObjectData.js +10 -0
- package/dist/trinityCore/Tr2PerObjectData.js.map +1 -1
- package/dist/trinityCore/Tr2PickType.js +33 -0
- package/dist/trinityCore/Tr2PickType.js.map +1 -0
- package/dist/trinityCore/Tr2PrimaryRenderContext.js +2 -2
- package/dist/trinityCore/Tr2PrimaryRenderContext.js.map +1 -1
- package/dist/trinityCore/Tr2RenderBatch.js +139 -2
- package/dist/trinityCore/Tr2RenderBatch.js.map +1 -1
- package/dist/trinityCore/Tr2RenderContext.js +275 -4
- package/dist/trinityCore/Tr2RenderContext.js.map +1 -1
- package/dist/trinityCore/Tr2RenderTarget.js +3 -3
- package/dist/trinityCore/Tr2RenderTarget.js.map +1 -1
- package/dist/trinityCore/Tr2RuntimeGpuBuffer.js +2 -2
- package/dist/trinityCore/Tr2RuntimeGpuBuffer.js.map +1 -1
- package/dist/trinityCore/Tr2RuntimeInstanceData.js +182 -3
- package/dist/trinityCore/Tr2RuntimeInstanceData.js.map +1 -1
- package/dist/trinityCore/Tr2SerializedMorphAnimation.js +2 -2
- package/dist/trinityCore/Tr2SerializedMorphAnimation.js.map +1 -1
- package/dist/trinityCore/Tr2ShLightingManager.js +397 -0
- package/dist/trinityCore/Tr2ShLightingManager.js.map +1 -0
- package/dist/trinityCore/Tr2SwapChain.js +2 -2
- package/dist/trinityCore/Tr2SwapChain.js.map +1 -1
- package/dist/trinityCore/Tr2VariableStore.js +28 -2
- package/dist/trinityCore/Tr2VariableStore.js.map +1 -1
- package/dist/trinityCore/Tr2VisibilityResults.js +9 -4
- package/dist/trinityCore/Tr2VisibilityResults.js.map +1 -1
- package/dist/trinityCore/TriDevice.js +8 -3
- package/dist/trinityCore/TriDevice.js.map +1 -1
- package/dist/trinityCore/TriFloat.js +2 -2
- package/dist/trinityCore/TriFloat.js.map +1 -1
- package/dist/trinityCore/TriFrustum.js +24 -17
- package/dist/trinityCore/TriFrustum.js.map +1 -1
- package/dist/trinityCore/TriFrustumOrtho.js +2 -2
- package/dist/trinityCore/TriFrustumOrtho.js.map +1 -1
- package/dist/trinityCore/TriObserverLocal.js +46 -3
- package/dist/trinityCore/TriObserverLocal.js.map +1 -1
- package/dist/trinityCore/TriProjection.js +88 -34
- package/dist/trinityCore/TriProjection.js.map +1 -1
- package/dist/trinityCore/TriRect.js +14 -2
- package/dist/trinityCore/TriRect.js.map +1 -1
- package/dist/trinityCore/TriRenderBatchAccumulator.js +48 -2
- package/dist/trinityCore/TriRenderBatchAccumulator.js.map +1 -1
- package/dist/trinityCore/TriRenderBatchMap.js +47 -1
- package/dist/trinityCore/TriRenderBatchMap.js.map +1 -1
- package/dist/trinityCore/TriSettings.js +40 -2
- package/dist/trinityCore/TriSettings.js.map +1 -1
- package/dist/trinityCore/TriTorque.js +4 -4
- package/dist/trinityCore/TriTorque.js.map +1 -1
- package/dist/trinityCore/TriVariable.js +32 -2
- package/dist/trinityCore/TriVariable.js.map +1 -1
- package/dist/trinityCore/TriView.js +19 -4
- package/dist/trinityCore/TriView.js.map +1 -1
- package/dist/trinityCore/TriViewport.js +14 -2
- package/dist/trinityCore/TriViewport.js.map +1 -1
- package/dist/trinityCore/{Tr2BindingVector3.js → binding/Tr2BindingVector3.js} +4 -4
- package/dist/trinityCore/binding/Tr2BindingVector3.js.map +1 -0
- package/dist/trinityCore/binding/Tr2DynamicBinding.js +266 -0
- package/dist/trinityCore/binding/Tr2DynamicBinding.js.map +1 -0
- package/dist/trinityCore/binding/Tr2ExternalParameter.js +392 -0
- package/dist/trinityCore/binding/Tr2ExternalParameter.js.map +1 -0
- package/dist/trinityCore/{Tr2PyValueBinding.js → binding/Tr2PyValueBinding.js} +31 -7
- package/dist/trinityCore/binding/Tr2PyValueBinding.js.map +1 -0
- package/dist/trinityCore/binding/TriValueBinding.js +648 -0
- package/dist/trinityCore/binding/TriValueBinding.js.map +1 -0
- package/dist/trinityCore/index.js +11 -2
- package/dist/trinityCore/index.js.map +1 -1
- package/dist/trinityCore/pickRay.js +84 -0
- package/dist/trinityCore/pickRay.js.map +1 -0
- package/dist/trinityCore/rawData/CjsPerObjectLayouts.js +931 -0
- package/dist/trinityCore/rawData/CjsPerObjectLayouts.js.map +1 -0
- package/dist/trinityCore/rawData/RawData.js +434 -0
- package/dist/trinityCore/rawData/RawData.js.map +1 -0
- package/dist/trinityCore/rawData/TriPoolAllocator.js +357 -0
- package/dist/trinityCore/rawData/TriPoolAllocator.js.map +1 -0
- package/dist/ui/Tr2PresentParameters.js +2 -2
- package/dist/ui/Tr2PresentParameters.js.map +1 -1
- package/dist/utilities/Range.js +55 -2
- package/dist/utilities/Range.js.map +1 -1
- package/docs/README.md +88 -0
- package/docs/architecture.md +162 -0
- package/docs/concepts/eve-runtime-behavior.md +86 -0
- package/docs/concepts/generated-class-lifecycle.md +116 -0
- package/docs/reference/api.md +76 -0
- package/docs/reference/classes/eve-runtime.md +106 -0
- package/docs/reference/classes/trinity-core.md +26 -0
- package/docs/reference/implementation-status.md +104 -0
- package/docs/reference/main-semantic-extraction.md +104 -0
- package/package.json +33 -26
- package/dist/eve/DecalVSPerObjectData.js +0 -34
- package/dist/eve/DecalVSPerObjectData.js.map +0 -1
- package/dist/eve/EveBannerItem.js +0 -43
- package/dist/eve/EveBannerItem.js.map +0 -1
- package/dist/eve/EveBannerLight.js.map +0 -1
- package/dist/eve/EveBannerSet.js +0 -109
- package/dist/eve/EveBannerSet.js.map +0 -1
- package/dist/eve/EveBasicPerObjectData.js +0 -31
- package/dist/eve/EveBasicPerObjectData.js.map +0 -1
- package/dist/eve/EveBoosterSet2.js.map +0 -1
- package/dist/eve/EveBoosterSet2Renderable.js.map +0 -1
- package/dist/eve/EveChildSpherePinPerObjectData.js +0 -37
- package/dist/eve/EveChildSpherePinPerObjectData.js.map +0 -1
- package/dist/eve/EveHazeSet.js +0 -72
- package/dist/eve/EveHazeSet.js.map +0 -1
- package/dist/eve/EveHazeSetLight.js.map +0 -1
- package/dist/eve/EveLocator2.js.map +0 -1
- package/dist/eve/EveLocatorSets.js.map +0 -1
- package/dist/eve/EveParticleDirectForce.js.map +0 -1
- package/dist/eve/EveParticleDragForce.js.map +0 -1
- package/dist/eve/EveParticleSpring.js.map +0 -1
- package/dist/eve/EvePerObjectPSData.js +0 -29
- package/dist/eve/EvePerObjectPSData.js.map +0 -1
- package/dist/eve/EvePerObjectVSData.js +0 -29
- package/dist/eve/EvePerObjectVSData.js.map +0 -1
- package/dist/eve/EvePlaneLight.js.map +0 -1
- package/dist/eve/EvePlaneSet.js +0 -104
- package/dist/eve/EvePlaneSet.js.map +0 -1
- package/dist/eve/EvePlaneSetItem.js +0 -45
- package/dist/eve/EvePlaneSetItem.js.map +0 -1
- package/dist/eve/EveSpaceObjectDecal.js +0 -150
- package/dist/eve/EveSpaceObjectDecal.js.map +0 -1
- package/dist/eve/EveSpaceObjectPSData.js +0 -73
- package/dist/eve/EveSpaceObjectPSData.js.map +0 -1
- package/dist/eve/EveSpaceObjectVSData.js +0 -79
- package/dist/eve/EveSpaceObjectVSData.js.map +0 -1
- package/dist/eve/EveSpacePerObjectData.js +0 -97
- package/dist/eve/EveSpacePerObjectData.js.map +0 -1
- package/dist/eve/EveSpherePinPerObjectData.js +0 -37
- package/dist/eve/EveSpherePinPerObjectData.js.map +0 -1
- package/dist/eve/EveSpotlightLight.js.map +0 -1
- package/dist/eve/EveSpotlightSet.js +0 -98
- package/dist/eve/EveSpotlightSet.js.map +0 -1
- package/dist/eve/EveSpriteLight.js.map +0 -1
- package/dist/eve/EveSpriteLineSet.js +0 -74
- package/dist/eve/EveSpriteLineSet.js.map +0 -1
- package/dist/eve/EveSpriteLineSetItem.js.map +0 -1
- package/dist/eve/EveSpriteSet.js +0 -115
- package/dist/eve/EveSpriteSet.js.map +0 -1
- package/dist/eve/EveTrailsSet.js.map +0 -1
- package/dist/eve/Locator.js.map +0 -1
- package/dist/eve/LocatorData.js.map +0 -1
- package/dist/eve/ProcessLifetimeData.js.map +0 -1
- package/dist/eve/attachment/turrets/EveTurretSetPSData.js +0 -47
- package/dist/eve/attachment/turrets/EveTurretSetPSData.js.map +0 -1
- package/dist/eve/attachment/turrets/EveTurretSetVSData.js +0 -62
- package/dist/eve/attachment/turrets/EveTurretSetVSData.js.map +0 -1
- package/dist/eve/child/behaviors/SplineTunnel.js.map +0 -1
- package/dist/eve/child/behaviors/SplineTunnelPoint.js.map +0 -1
- package/dist/eve/perObjectData/DecalPSPerObjectData.js +0 -56
- package/dist/eve/perObjectData/DecalPSPerObjectData.js.map +0 -1
- package/dist/eve/perObjectData/EveMissileWarheadPerObjectData.js +0 -31
- package/dist/eve/perObjectData/EveMissileWarheadPerObjectData.js.map +0 -1
- package/dist/eve/perObjectData/EveTurretSetPerObjectData.js +0 -36
- package/dist/eve/perObjectData/EveTurretSetPerObjectData.js.map +0 -1
- package/dist/eve/perObjectData/MergeMorphsConstantBuffer.js +0 -64
- package/dist/eve/perObjectData/MergeMorphsConstantBuffer.js.map +0 -1
- package/dist/generated/eve/EveCamera.js +0 -264
- package/dist/generated/eve/EveCamera.js.map +0 -1
- package/dist/generated/eve/EveEntity.js +0 -81
- package/dist/generated/eve/EveEntity.js.map +0 -1
- package/dist/generated/eve/attachment/decal/index.js +0 -2
- package/dist/generated/eve/attachment/decal/index.js.map +0 -1
- package/dist/generated/eve/attachment/haze/EveHazeSetItem.js +0 -52
- package/dist/generated/eve/attachment/haze/EveHazeSetItem.js.map +0 -1
- package/dist/generated/eve/attachment/haze/index.js +0 -2
- package/dist/generated/eve/attachment/haze/index.js.map +0 -1
- package/dist/generated/eve/attachment/index.js +0 -5
- package/dist/generated/eve/attachment/index.js.map +0 -1
- package/dist/generated/eve/attachment/spotlights/EveSpotlightSetItem.js +0 -55
- package/dist/generated/eve/attachment/spotlights/EveSpotlightSetItem.js.map +0 -1
- package/dist/generated/eve/attachment/spotlights/index.js +0 -2
- package/dist/generated/eve/attachment/spotlights/index.js.map +0 -1
- package/dist/generated/eve/attachment/sprites/EveSpriteSetItem.js.map +0 -1
- package/dist/generated/eve/attachment/sprites/index.js +0 -2
- package/dist/generated/eve/attachment/sprites/index.js.map +0 -1
- package/dist/generated/eve/attachment/turrets/enums.js +0 -32
- package/dist/generated/eve/attachment/turrets/enums.js.map +0 -1
- package/dist/generated/eve/attachment/turrets/index.js +0 -2
- package/dist/generated/eve/attachment/turrets/index.js.map +0 -1
- package/dist/generated/eve/child/EveChildBehaviorSystem.js +0 -357
- package/dist/generated/eve/child/EveChildBehaviorSystem.js.map +0 -1
- package/dist/generated/eve/child/EveChildBulletStorm.js.map +0 -1
- package/dist/generated/eve/child/EveChildLink.js.map +0 -1
- package/dist/generated/eve/child/EveChildSpherePin.js +0 -54
- package/dist/generated/eve/child/EveChildSpherePin.js.map +0 -1
- package/dist/generated/eve/child/behaviors/CollisionAvoidance.js +0 -85
- package/dist/generated/eve/child/behaviors/CollisionAvoidance.js.map +0 -1
- package/dist/generated/eve/child/behaviors/InclusionVolume.js +0 -104
- package/dist/generated/eve/child/behaviors/InclusionVolume.js.map +0 -1
- package/dist/generated/eve/child/behaviors/ProcessLifetime.js +0 -458
- package/dist/generated/eve/child/behaviors/ProcessLifetime.js.map +0 -1
- package/dist/generated/eve/child/behaviors/SplineTunnelGroup.js +0 -161
- package/dist/generated/eve/child/behaviors/SplineTunnelGroup.js.map +0 -1
- package/dist/generated/eve/child/behaviors/Wander.js +0 -92
- package/dist/generated/eve/child/behaviors/Wander.js.map +0 -1
- package/dist/generated/eve/child/behaviors/enums.js.map +0 -1
- package/dist/generated/eve/child/modifiers/EveChildModifierAttachToBone.js.map +0 -1
- package/dist/generated/eve/child/modifiers/EveChildModifierBillboard3D.js.map +0 -1
- package/dist/generated/eve/child/modifiers/EveChildModifierStretch.js.map +0 -1
- package/dist/generated/eve/child/modifiers/EveChildModifierTranslateWithCamera.js.map +0 -1
- package/dist/generated/eve/child/modifiers/index.js +0 -5
- package/dist/generated/eve/child/modifiers/index.js.map +0 -1
- package/dist/generated/eve/child/procedural/EveChildProceduralContainer.js.map +0 -1
- package/dist/generated/eve/child/procedural/index.js +0 -10
- package/dist/generated/eve/child/procedural/index.js.map +0 -1
- package/dist/generated/eve/child/procedural/selection/EveProceduralMethodAttributeMap.js.map +0 -1
- package/dist/generated/eve/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js.map +0 -1
- package/dist/generated/eve/child/procedural/selection/EveProceduralMethodCycling.js.map +0 -1
- package/dist/generated/eve/child/procedural/selection/EveProceduralMethodCyclingParameter.js.map +0 -1
- package/dist/generated/eve/child/procedural/selection/EveProceduralMethodRandom.js.map +0 -1
- package/dist/generated/eve/child/procedural/selection/EveProceduralMethodRandomParameter.js.map +0 -1
- package/dist/generated/eve/child/procedural/selection/EveProceduralMethodThresholdParameter.js.map +0 -1
- package/dist/generated/eve/child/procedural/selection/EveProceduralMethodThresholds.js.map +0 -1
- package/dist/generated/eve/child/procedural/selection/index.js +0 -9
- package/dist/generated/eve/child/procedural/selection/index.js.map +0 -1
- package/dist/generated/eve/distribution/EveBaseDistributionMethod.js.map +0 -1
- package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js.map +0 -1
- package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js.map +0 -1
- package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js.map +0 -1
- package/dist/generated/eve/distribution/attributeModifiers/enums.js.map +0 -1
- package/dist/generated/eve/distribution/attributeModifiers/index.js +0 -5
- package/dist/generated/eve/distribution/attributeModifiers/index.js.map +0 -1
- package/dist/generated/eve/distribution/index.js +0 -19
- package/dist/generated/eve/distribution/index.js.map +0 -1
- package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorLocators.js.map +0 -1
- package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js.map +0 -1
- package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorVolume.js.map +0 -1
- package/dist/generated/eve/distribution/placement/index.js +0 -4
- package/dist/generated/eve/distribution/placement/index.js.map +0 -1
- package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js.map +0 -1
- package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js.map +0 -1
- package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js.map +0 -1
- package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js.map +0 -1
- package/dist/generated/eve/distribution/spawnModifiers/index.js +0 -5
- package/dist/generated/eve/distribution/spawnModifiers/index.js.map +0 -1
- package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerBurst.js.map +0 -1
- package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerControllerTrigger.js.map +0 -1
- package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerInterval.js.map +0 -1
- package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerPlane.js.map +0 -1
- package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerSnake.js.map +0 -1
- package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerSphere.js.map +0 -1
- package/dist/generated/eve/distribution/spawners/index.js +0 -7
- package/dist/generated/eve/distribution/spawners/index.js.map +0 -1
- package/dist/generated/eve/effect/EveLensflare.js.map +0 -1
- package/dist/generated/eve/effect/EveMultiEffect.js +0 -84
- package/dist/generated/eve/effect/EveMultiEffect.js.map +0 -1
- package/dist/generated/eve/effect/EveMultiEffectParameter.js +0 -45
- package/dist/generated/eve/effect/EveMultiEffectParameter.js.map +0 -1
- package/dist/generated/eve/fxAttributes/EveCameraFxAttributes.js +0 -47
- package/dist/generated/eve/fxAttributes/EveCameraFxAttributes.js.map +0 -1
- package/dist/generated/eve/fxAttributes/EveSpaceObjectFxAttributes.js +0 -63
- package/dist/generated/eve/fxAttributes/EveSpaceObjectFxAttributes.js.map +0 -1
- package/dist/generated/eve/fxAttributes/index.js +0 -3
- package/dist/generated/eve/fxAttributes/index.js.map +0 -1
- package/dist/generated/eve/overlays/EveMeshOverlayEffect.js +0 -58
- package/dist/generated/eve/overlays/EveMeshOverlayEffect.js.map +0 -1
- package/dist/generated/eve/overlays/index.js +0 -2
- package/dist/generated/eve/overlays/index.js.map +0 -1
- package/dist/generated/eve/perObjectData/EveBoosterSetPerObjectData.js +0 -66
- package/dist/generated/eve/perObjectData/EveBoosterSetPerObjectData.js.map +0 -1
- package/dist/generated/eve/perObjectData/EveChildBulletStormPerObjectData.js +0 -39
- package/dist/generated/eve/perObjectData/EveChildBulletStormPerObjectData.js.map +0 -1
- package/dist/generated/eve/perObjectData/EveDecalPerObjectData.js +0 -34
- package/dist/generated/eve/perObjectData/EveDecalPerObjectData.js.map +0 -1
- package/dist/generated/eve/perObjectData/EveSceneStaticParticlesPerObjectData.js +0 -32
- package/dist/generated/eve/perObjectData/EveSceneStaticParticlesPerObjectData.js.map +0 -1
- package/dist/generated/eve/perObjectData/index.js +0 -5
- package/dist/generated/eve/perObjectData/index.js.map +0 -1
- package/dist/generated/eve/scene/EveComponentCollection.js.map +0 -1
- package/dist/generated/eve/scene/EveComponentRegistry.js.map +0 -1
- package/dist/generated/eve/scene/EvePickingContext.js +0 -43
- package/dist/generated/eve/scene/EvePickingContext.js.map +0 -1
- package/dist/generated/eve/scene/EveSceneStaticParticles.js +0 -173
- package/dist/generated/eve/scene/EveSceneStaticParticles.js.map +0 -1
- package/dist/generated/eve/scene/TriShadowFrustum.js +0 -83
- package/dist/generated/eve/scene/TriShadowFrustum.js.map +0 -1
- package/dist/generated/eve/scene/TriShadowOrthoFrustum.js +0 -140
- package/dist/generated/eve/scene/TriShadowOrthoFrustum.js.map +0 -1
- package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js.map +0 -1
- package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js.map +0 -1
- package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js.map +0 -1
- package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js.map +0 -1
- package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js.map +0 -1
- package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js.map +0 -1
- package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js.map +0 -1
- package/dist/generated/eve/smartLights/attributeModifiers/enums.js.map +0 -1
- package/dist/generated/eve/smartLights/attributeModifiers/index.js +0 -9
- package/dist/generated/eve/smartLights/attributeModifiers/index.js.map +0 -1
- package/dist/generated/eve/socket/EveSocketParameterBindingBase.js.map +0 -1
- package/dist/generated/eve/socket/EveSocketParameterBool.js.map +0 -1
- package/dist/generated/eve/socket/EveSocketParameterColor.js.map +0 -1
- package/dist/generated/eve/socket/EveSocketParameterFloat.js.map +0 -1
- package/dist/generated/eve/socket/EveSocketParameterInt.js.map +0 -1
- package/dist/generated/eve/socket/EveSocketParameterString.js.map +0 -1
- package/dist/generated/eve/socket/EveSocketParameterVector2.js.map +0 -1
- package/dist/generated/eve/socket/EveSocketParameterVector3.js.map +0 -1
- package/dist/generated/eve/socket/EveSocketParameterVector4.js.map +0 -1
- package/dist/generated/eve/socket/index.js +0 -10
- package/dist/generated/eve/socket/index.js.map +0 -1
- package/dist/generated/eve/spaceObject/EvePlanet.js +0 -47
- package/dist/generated/eve/spaceObject/EvePlanet.js.map +0 -1
- package/dist/generated/eve/spaceObject/EveShip2.js.map +0 -1
- package/dist/generated/eve/spaceObject/IEveSpaceObject2.js +0 -46
- package/dist/generated/eve/spaceObject/IEveSpaceObject2.js.map +0 -1
- package/dist/generated/eve/spaceObject/swarm/EveSwarmRenderable.js +0 -129
- package/dist/generated/eve/spaceObject/swarm/EveSwarmRenderable.js.map +0 -1
- package/dist/generated/eve/ui/EveLineSet.js.map +0 -1
- package/dist/generated/eve/ui/EveSpherePin.js +0 -94
- package/dist/generated/eve/ui/EveSpherePin.js.map +0 -1
- package/dist/generated/eve/ui/EveTacticalOverlayTrackObject.js +0 -44
- package/dist/generated/eve/ui/EveTacticalOverlayTrackObject.js.map +0 -1
- package/dist/generated/eve/ui/EveTacticalTrails.js.map +0 -1
- package/dist/generated/trinityCore/Tr2DynamicBinding.js +0 -58
- package/dist/generated/trinityCore/Tr2DynamicBinding.js.map +0 -1
- package/dist/generated/trinityCore/Tr2ExternalParameter.js +0 -164
- package/dist/generated/trinityCore/Tr2ExternalParameter.js.map +0 -1
- package/dist/generated/trinityCore/Tr2GrannyAnimation.js.map +0 -1
- package/dist/generated/trinityCore/Tr2ShLightingManager.js +0 -48
- package/dist/generated/trinityCore/Tr2ShLightingManager.js.map +0 -1
- package/dist/generated/trinityCore/TriValueBinding.js +0 -249
- package/dist/generated/trinityCore/TriValueBinding.js.map +0 -1
- package/dist/shader/Tr2Shader.js +0 -150
- package/dist/shader/Tr2Shader.js.map +0 -1
- package/dist/shader/reflection/Tr2EffectConstant.js +0 -61
- package/dist/shader/reflection/Tr2EffectConstant.js.map +0 -1
- package/dist/shader/reflection/Tr2EffectDefine.js +0 -34
- package/dist/shader/reflection/Tr2EffectDefine.js.map +0 -1
- package/dist/shader/reflection/Tr2EffectDescription.js +0 -34
- package/dist/shader/reflection/Tr2EffectDescription.js.map +0 -1
- package/dist/shader/reflection/Tr2EffectLibrary.js +0 -61
- package/dist/shader/reflection/Tr2EffectLibrary.js.map +0 -1
- package/dist/shader/reflection/Tr2EffectParameterAnnotation.js +0 -54
- package/dist/shader/reflection/Tr2EffectParameterAnnotation.js.map +0 -1
- package/dist/shader/reflection/Tr2EffectResource.js +0 -63
- package/dist/shader/reflection/Tr2EffectResource.js.map +0 -1
- package/dist/shader/reflection/Tr2EffectStageInput.js +0 -58
- package/dist/shader/reflection/Tr2EffectStageInput.js.map +0 -1
- package/dist/shader/reflection/Tr2EffectTechnique.js +0 -40
- package/dist/shader/reflection/Tr2EffectTechnique.js.map +0 -1
- package/dist/shader/reflection/Tr2Pass.js +0 -46
- package/dist/shader/reflection/Tr2Pass.js.map +0 -1
- package/dist/shader/sampler/Tr2SamplerSetup.js +0 -34
- package/dist/shader/sampler/Tr2SamplerSetup.js.map +0 -1
- package/dist/trinityCore/Tr2BindingVector3.js.map +0 -1
- package/dist/trinityCore/Tr2PyValueBinding.js.map +0 -1
- /package/dist/{generated/eve → eve}/distribution/attributeModifiers/enums.js +0 -0
- /package/dist/{generated/eve → eve}/smartLights/attributeModifiers/enums.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EveEffectRoot2.js","sources":["../../../../src/eve/spaceObject/EveEffectRoot2.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\EveEffectRoot2.h\r\n// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\EveEffectRoot2.cpp\r\n// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\EveEffectRoot2_Blue.cpp\r\nimport { mat4 } from \"@carbonenginejs/core-math/mat4\";\r\nimport { quat } from \"@carbonenginejs/core-math/quat\";\r\nimport { sph3 } from \"@carbonenginejs/core-math/sph3\";\r\nimport { vec3 } from \"@carbonenginejs/core-math/vec3\";\r\nimport { vec4 } from \"@carbonenginejs/core-math/vec4\";\r\nimport { carbon, impl, io, schema, type } from \"@carbonenginejs/core-types/schema\";\r\nimport { EveEntity } from \"../../generated/eve/EveEntity.js\";\r\nimport { EveChildUpdateParams } from \"../EveChildUpdateParams.js\";\r\nimport { EveLODHelper, Tr2Lod } from \"../EveLODHelper.js\";\r\nimport { EveSpaceObjectPSData } from \"../EveSpaceObjectPSData.js\";\r\nimport { EveSpaceObjectVSData } from \"../EveSpaceObjectVSData.js\";\r\nimport { EveComponentType } from \"../EveComponentTypes.js\";\r\n\r\n\r\n@type.define({ className: \"EveEffectRoot2\", family: \"eve/spaceObject\" })\r\nexport class EveEffectRoot2 extends EveEntity\r\n{\r\n\r\n /** m_effectChildren (PIEveSpaceObjectChildVector) [READ, PERSIST] */\r\n @io.persist\r\n @type.list(\"IEveSpaceObjectChild\")\r\n effectChildren = [];\r\n\r\n /** m_estimatedSize (float) [READ] */\r\n @io.read\r\n @type.float32\r\n estimatedSize = 0;\r\n\r\n /** m_lodLevel (Tr2Lod - enum Tr2Lod) [READ] */\r\n @io.read\r\n @type.int32\r\n @schema.enum(\"Tr2Lod\")\r\n lodLevel = Tr2Lod.TR2_LOD_HIGH;\r\n\r\n /** m_mute (bool) [READWRITE, NOTIFY] */\r\n @io.notify\r\n @io.readwrite\r\n @type.boolean\r\n mute = false;\r\n\r\n /** m_display (bool) [READWRITE, PERSIST, NOTIFY] */\r\n @io.notify\r\n @io.persist\r\n @type.boolean\r\n display = true;\r\n\r\n /** m_name (std::string) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.string\r\n name = \"\";\r\n\r\n /** m_dynamicLODSelection (bool) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.boolean\r\n dynamicLOD = false;\r\n\r\n /** m_scaling (Vector3) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.vec3\r\n scaling = vec3.fromValues(1, 1, 1);\r\n\r\n /** m_rotation (Quaternion) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.quat\r\n rotation = quat.create();\r\n\r\n /** m_translation (Vector3) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.vec3\r\n translation = vec3.create();\r\n\r\n /** m_effectDuration (float) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.float32\r\n duration = -1;\r\n\r\n /** m_secondaryLightingEmissiveColor (Color) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.color\r\n secondaryLightingEmissiveColor = vec4.create();\r\n\r\n /** m_curveSets (PTriCurveSetVector) [READ, PERSIST] */\r\n @io.persist\r\n @type.list(\"TriCurveSet\")\r\n curveSets = [];\r\n\r\n /** m_lights (PTr2LightVector) [READ, PERSIST] */\r\n @io.persist\r\n @type.list(\"Tr2Light\")\r\n lights = [];\r\n\r\n /** m_externalParameters (PTr2ExternalParameterVector) [READ, PERSIST] */\r\n @io.persist\r\n @type.list(\"Tr2ExternalParameter\")\r\n externalParameters = [];\r\n\r\n /** m_controllers (PITr2ControllerVector) [READ, PERSIST] */\r\n @io.persist\r\n @type.list(\"ITr2Controller\")\r\n controllers = [];\r\n\r\n /** m_observers (PTriObserverLocalVector) [READ, PERSIST] */\r\n @io.persist\r\n @type.list(\"TriObserverLocal\")\r\n observers = [];\r\n\r\n /** m_ballRotation (ITriQuaternionFunctionPtr) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.model(\"ITriQuaternionFunction\")\r\n rotationCurve = null;\r\n\r\n /** m_secondaryLightingSphereRadiusLocal (float) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.float32\r\n secondaryLightingSphereRadius = 0.5;\r\n\r\n /** m_boundingSphere.xyz, exposed by Carbon's MAPFLOATARRAYSIZE Blue mapping. */\r\n @impl.adapted\r\n @impl.reason(\"The schema scanner omits MAPFLOATARRAYSIZE; Carbon exposes the three persisted center components separately from radius.\")\r\n @io.persist\r\n @type.vec3\r\n boundingSphereCenter = vec3.create();\r\n\r\n /** m_boundingSphere.w (float) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.float32\r\n boundingSphereRadius = 0;\r\n\r\n /** m_modelTranslation (ITriVectorFunctionPtr) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.model(\"ITriVectorFunction\")\r\n modelTranslationCurve = null;\r\n\r\n /** m_modelRotation (ITriQuaternionFunctionPtr) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.model(\"ITriQuaternionFunction\")\r\n modelRotationCurve = null;\r\n\r\n /** m_ballPosition (ITriVectorFunctionPtr) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.model(\"ITriVectorFunction\")\r\n translationCurve = null;\r\n\r\n #changeLOD = true;\r\n #controllerVariables = new Map();\r\n #lastUpdateMatrix = mat4.create();\r\n #localTransform = mat4.create();\r\n #secondaryLightingSphereRadiusWorld = 0.5;\r\n #worldTransform = mat4.create();\r\n\r\n /** Links authored controllers after graph hydration. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"Blue root locking is represented by the hydrated JavaScript object identity.\")\r\n Initialize()\r\n {\r\n for (const controller of this.controllers)\r\n {\r\n if (!controller?.IsLinked?.()) controller?.Link?.(this);\r\n EveEffectRoot2.#ApplyControllerVariables(controller, this.#controllerVariables, \"SetVariable\");\r\n }\r\n return true;\r\n }\r\n\r\n /** Adds and initializes a controller through Carbon's list-notify behavior. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"Plain JavaScript arrays have no Blue IList notifications, so insertion behavior is explicit.\")\r\n AddController(controller)\r\n {\r\n this.controllers.push(controller);\r\n if (!controller?.IsLinked?.()) controller?.Link?.(this);\r\n EveEffectRoot2.#ApplyControllerVariables(controller, this.#controllerVariables, \"SetVariable\");\r\n return controller;\r\n }\r\n\r\n /** Removes and unlinks a controller through Carbon's list-notify behavior. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"Plain JavaScript arrays have no Blue IList notifications, so removal behavior is explicit.\")\r\n RemoveController(controller)\r\n {\r\n const index = this.controllers.indexOf(controller);\r\n if (index === -1) return false;\r\n this.controllers.splice(index, 1);\r\n controller?.Unlink?.();\r\n return true;\r\n }\r\n\r\n /** Evaluates root curves and updates children that require synchronous placement. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"Carbon task and lock ownership is omitted; child update parameters retain the source graph contract.\")\r\n UpdateSyncronous(updateContext = null)\r\n {\r\n const time = EveEffectRoot2.#GetContextValue(updateContext, \"GetTime\", \"currentTime\", \"time\");\r\n this.UpdateWorldTransform(time);\r\n mat4.fromRotationTranslationScale(this.#localTransform, this.rotation, this.translation, this.scaling);\r\n // Carbon (row-vector): m_localTransform * m_worldTransform - local first.\r\n mat4.multiply(this.#lastUpdateMatrix, this.#worldTransform, this.#localTransform);\r\n this.#secondaryLightingSphereRadiusWorld = this.secondaryLightingSphereRadius *\r\n (this.scaling[0] + this.scaling[1] + this.scaling[2]) / 3;\r\n\r\n for (const observer of this.observers) observer?.Update?.(this.#lastUpdateMatrix);\r\n if (this.effectChildren.length)\r\n {\r\n const params = this.#CreateChildUpdateParams();\r\n for (const child of this.effectChildren) child?.UpdateSyncronous?.(updateContext, params);\r\n }\r\n return true;\r\n }\r\n\r\n /** Advances controllers, root curve sets, and effect children. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"Controller and child work is forwarded synchronously through the GPU-free graph instead of Carbon task groups.\")\r\n UpdateAsyncronous(updateContext = null)\r\n {\r\n let frequency = 0;\r\n if (this.display)\r\n {\r\n if (this.dynamicLOD)\r\n {\r\n const threshold = EveEffectRoot2.#GetContextValue(updateContext, \"GetHighDetailThreshold\", \"highDetailThreshold\");\r\n if (threshold > 0) frequency = Math.min(1, this.estimatedSize / threshold);\r\n }\r\n else\r\n {\r\n frequency = 0.5;\r\n }\r\n }\r\n\r\n this.UpdateControllers(frequency);\r\n const time = EveEffectRoot2.#GetContextValue(updateContext, \"GetTime\", \"currentTime\", \"time\");\r\n for (const curveSet of this.curveSets) curveSet?.Update?.(time, time);\r\n if (this.effectChildren.length)\r\n {\r\n const params = this.#CreateChildUpdateParams();\r\n params.controllerUpdateFrequency = frequency;\r\n for (const child of this.effectChildren) child?.UpdateAsyncronous?.(updateContext, params);\r\n }\r\n return frequency;\r\n }\r\n\r\n /** Updates dynamic LOD and forwards visibility to the effect children. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"Frustum and threshold state is supplied by the explicit update context rather than renderer globals.\")\r\n UpdateVisibility(updateContext = null, parentTransform = EveEffectRoot2.#identity)\r\n {\r\n if (!this.display) return false;\r\n if (this.dynamicLOD)\r\n {\r\n this.GetBoundingSphere(EveEffectRoot2.#localSphere);\r\n sph3.transformMat4(EveEffectRoot2.#worldSphere, EveEffectRoot2.#localSphere, this.#worldTransform);\r\n const frustum = updateContext?.GetFrustum?.() ?? updateContext?.frustum;\r\n if (frustum?.IsSphereVisible?.(EveEffectRoot2.#worldSphere) !== false)\r\n {\r\n this.estimatedSize = Number(frustum?.GetPixelSizeAccross?.(EveEffectRoot2.#worldSphere) ?? this.estimatedSize) || 0;\r\n }\r\n\r\n const oldLod = this.lodLevel;\r\n this.lodLevel = Tr2Lod.TR2_LOD_LOW;\r\n const medium = EveEffectRoot2.#GetContextValue(updateContext, \"GetMediumDetailThreshold\", \"mediumDetailThreshold\");\r\n const low = EveEffectRoot2.#GetContextValue(updateContext, \"GetLowDetailThreshold\", \"lowDetailThreshold\");\r\n if (this.estimatedSize >= medium) this.lodLevel = Tr2Lod.TR2_LOD_HIGH;\r\n else if (this.estimatedSize >= low) this.lodLevel = Tr2Lod.TR2_LOD_MEDIUM;\r\n this.#changeLOD ||= oldLod !== this.lodLevel;\r\n }\r\n\r\n for (const child of this.effectChildren)\r\n {\r\n child?.UpdateVisibility?.(updateContext, parentTransform, this.lodLevel);\r\n }\r\n return true;\r\n }\r\n\r\n /** Collects child renderables after applying a pending LOD change. */\r\n @carbon.method\r\n @impl.implemented\r\n GetRenderables(out = [])\r\n {\r\n if (!this.display) return out;\r\n if (this.#changeLOD)\r\n {\r\n this.#changeLOD = false;\r\n for (const child of this.effectChildren) child?.ChangeLOD?.(this.lodLevel);\r\n }\r\n for (const child of this.effectChildren) child?.GetRenderables?.(out);\r\n return out;\r\n }\r\n\r\n /** Advances every controller at the selected detail frequency. */\r\n @carbon.method\r\n @impl.implemented\r\n UpdateControllers(updateFrequency)\r\n {\r\n for (const controller of this.controllers) controller?.Update?.(updateFrequency);\r\n }\r\n\r\n /** Returns the authored local bounding sphere. */\r\n @carbon.method\r\n @impl.implemented\r\n GetBoundingSphere(out = vec4.create())\r\n {\r\n vec4.set(\r\n out,\r\n this.boundingSphereCenter[0],\r\n this.boundingSphereCenter[1],\r\n this.boundingSphereCenter[2],\r\n this.boundingSphereRadius\r\n );\r\n return true;\r\n }\r\n\r\n /** Returns the authored bounding-sphere radius. */\r\n @carbon.method\r\n @impl.implemented\r\n GetBoundingSphereRadius()\r\n {\r\n return this.boundingSphereRadius;\r\n }\r\n\r\n /** Evaluates the ball/model curves into the detached root transform. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"Curve outputs use CarbonEngineJS's time-first, output-second convention.\")\r\n UpdateWorldTransform(time)\r\n {\r\n EveEffectRoot2.#UpdateCurve(this.translationCurve, time, EveEffectRoot2.#translation, EveEffectRoot2.#zero);\r\n EveEffectRoot2.#UpdateCurve(this.rotationCurve, time, EveEffectRoot2.#rotation, EveEffectRoot2.#identityRotation);\r\n if (this.modelRotationCurve)\r\n {\r\n EveEffectRoot2.#UpdateCurve(this.modelRotationCurve, time, EveEffectRoot2.#modelRotation, EveEffectRoot2.#identityRotation);\r\n // Carbon (row-vector): rotation = modelRotation * rotation - model first.\r\n quat.multiply(EveEffectRoot2.#rotation, EveEffectRoot2.#rotation, EveEffectRoot2.#modelRotation);\r\n }\r\n\r\n mat4.fromRotationTranslation(this.#worldTransform, EveEffectRoot2.#rotation, EveEffectRoot2.#translation);\r\n if (this.modelTranslationCurve)\r\n {\r\n EveEffectRoot2.#UpdateCurve(this.modelTranslationCurve, time, EveEffectRoot2.#modelTranslation, EveEffectRoot2.#zero);\r\n vec3.transformMat4(EveEffectRoot2.#modelTranslation, EveEffectRoot2.#modelTranslation, this.#worldTransform);\r\n this.#worldTransform[12] = EveEffectRoot2.#modelTranslation[0];\r\n this.#worldTransform[13] = EveEffectRoot2.#modelTranslation[1];\r\n this.#worldTransform[14] = EveEffectRoot2.#modelTranslation[2];\r\n }\r\n return this.#worldTransform;\r\n }\r\n\r\n /** Updates and returns the model-center world position. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"CarbonEngineJS uses an out-last signature for output parameters.\")\r\n UpdateModelCenterWorldPosition(time, out = vec3.create())\r\n {\r\n this.UpdateWorldTransform(time);\r\n mat4.fromRotationTranslationScale(this.#localTransform, this.rotation, this.translation, this.scaling);\r\n // Carbon (row-vector): currentTransform * m_worldTransform - local first.\r\n mat4.multiply(EveEffectRoot2.#centerTransform, this.#worldTransform, this.#localTransform);\r\n return vec3.transformMat4(out, this.boundingSphereCenter, EveEffectRoot2.#centerTransform);\r\n }\r\n\r\n /** Returns the last model-center world position without advancing curves. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"CarbonEngineJS uses an out-last signature for output parameters.\")\r\n GetModelCenterWorldPosition(out = vec3.create())\r\n {\r\n return vec3.transformMat4(out, this.boundingSphereCenter, this.#lastUpdateMatrix);\r\n }\r\n\r\n /** Effect roots do not expose a local AABB in Carbon. */\r\n @carbon.method\r\n @impl.noop\r\n GetLocalBoundingBox(_min, _max)\r\n {\r\n return false;\r\n }\r\n\r\n /** Returns the last composed local-to-world transform. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"CarbonEngineJS returns the caller-owned output matrix.\")\r\n GetLocalToWorldTransform(out = mat4.create())\r\n {\r\n return mat4.copy(out, this.#lastUpdateMatrix);\r\n }\r\n\r\n /** Registers every child with an injected quad renderer. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"The quad renderer is an injected engine-owned capability.\")\r\n RegisterWithQuadRenderer(quadRenderer)\r\n {\r\n for (const child of this.effectChildren) child?.RegisterWithQuadRenderer?.(quadRenderer);\r\n }\r\n\r\n /** Adds visible child quads to an injected renderer. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"The quad renderer is an injected engine-owned capability.\")\r\n AddQuadsToQuadRenderer(frustum, quadRenderer)\r\n {\r\n if (!this.display) return;\r\n for (const child of this.effectChildren) child?.AddQuadsToQuadRenderer?.(frustum, quadRenderer);\r\n }\r\n\r\n /** Carbon EveEffectRoot2::RegisterComponents (cpp:496-513): LightOwner when\r\n * lights are authored, then forwards the effect children. Gate m_display. */\r\n @carbon.method\r\n @impl.implemented\r\n RegisterComponents()\r\n {\r\n const registry = this.GetComponentRegistry();\r\n if (registry && this.display)\r\n {\r\n if (this.lights.length)\r\n {\r\n registry.RegisterComponent(EveComponentType.LightOwner, this);\r\n }\r\n for (const child of this.effectChildren)\r\n {\r\n child?.Register?.(registry);\r\n }\r\n }\r\n }\r\n\r\n /** Carbon EveEffectRoot2::UnRegisterComponents (cpp:515-528): forwards the\r\n * effect children only (own components were already removed by\r\n * EveEntity::UnRegister, EveEntity.cpp:90); no display re-check. */\r\n @carbon.method\r\n @impl.implemented\r\n UnRegisterComponents()\r\n {\r\n const registry = this.GetComponentRegistry();\r\n if (registry)\r\n {\r\n for (const child of this.effectChildren)\r\n {\r\n child?.UnRegister?.(registry);\r\n }\r\n }\r\n }\r\n\r\n /** Adds authored lights using the effect's composed placement and average scale. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"The light manager is an injected engine-owned capability.\")\r\n GetLights(lightManager)\r\n {\r\n if (!this.display) return;\r\n const transform = this.#lastUpdateMatrix;\r\n const scale = (\r\n Math.hypot(transform[0], transform[1], transform[2]) +\r\n Math.hypot(transform[4], transform[5], transform[6]) +\r\n Math.hypot(transform[8], transform[9], transform[10])\r\n ) / 3;\r\n for (const light of this.lights) light?.AddLight?.(lightManager, transform, scale);\r\n }\r\n\r\n /** Adds an authored light. */\r\n @carbon.method\r\n @impl.implemented\r\n AddLight(light)\r\n {\r\n this.lights.push(light);\r\n return light;\r\n }\r\n\r\n /** Removes all authored lights. */\r\n @carbon.method\r\n @impl.implemented\r\n ClearLights()\r\n {\r\n this.lights.length = 0;\r\n }\r\n\r\n /** Initializes the portable child-facing space-object records. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"Native constant-buffer structs are represented by GPU-free value records.\")\r\n GetPerObjectStructs(vsData = new EveSpaceObjectVSData(), psData = new EveSpaceObjectPSData())\r\n {\r\n EveEffectRoot2.#ZeroNumericRecord(vsData);\r\n EveEffectRoot2.#ZeroNumericRecord(psData);\r\n vsData.shipData[1] = 1;\r\n vsData.shipData[3] = 1;\r\n psData.shipData[1] = 1;\r\n psData.shipData[3] = 1;\r\n return { vsData, psData };\r\n }\r\n\r\n /** Registers this root as a secondary light source with an injected manager. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"The SH lighting manager is injected; Trinity owns only the authored source values.\")\r\n RegisterSecondaryLightSource(manager)\r\n {\r\n return manager?.RegisterSecondaryLightSource?.(\r\n this.#worldTransform.subarray(12, 15),\r\n this.#secondaryLightingSphereRadiusWorld,\r\n EveEffectRoot2.#noAlbedo,\r\n this.secondaryLightingEmissiveColor\r\n );\r\n }\r\n\r\n /** Unregisters this root from an injected secondary-light manager. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"The SH lighting manager is injected; Trinity owns only the authored source values.\")\r\n UnregisterSecondaryLightSource(manager)\r\n {\r\n return manager?.UnregisterSecondaryLightSource?.(this.#worldTransform.subarray(12, 15));\r\n }\r\n\r\n /** Plays root and child-owned curve sets. */\r\n @carbon.method\r\n @impl.implemented\r\n Start()\r\n {\r\n for (const curveSet of this.curveSets) curveSet?.Play?.();\r\n for (const child of this.effectChildren)\r\n {\r\n if (child?.PlayAllCurveSets) child.PlayAllCurveSets();\r\n else child?.PlayCurveSets?.();\r\n }\r\n }\r\n\r\n /** Stops root and child-owned curve sets. */\r\n @carbon.method\r\n @impl.implemented\r\n Stop()\r\n {\r\n for (const curveSet of this.curveSets) curveSet?.Stop?.();\r\n for (const child of this.effectChildren)\r\n {\r\n if (child?.StopAllCurveSets) child.StopAllCurveSets();\r\n else child?.StopCurveSets?.();\r\n }\r\n }\r\n\r\n /** Effect roots have no damage locators. */\r\n @carbon.method\r\n @impl.noop\r\n GetDamageLocatorCount()\r\n {\r\n return 0;\r\n }\r\n\r\n /** Returns the detached root translation as the sole target point. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"CarbonEngineJS uses output parameters last and returns the targetable validity flag.\")\r\n GetDamageLocatorPosition(_index, _inWorldSpace, out = vec3.create())\r\n {\r\n vec3.set(out, this.#worldTransform[12], this.#worldTransform[13], this.#worldTransform[14]);\r\n return true;\r\n }\r\n\r\n /** Returns Carbon's constant +Y target direction. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"CarbonEngineJS uses output parameters last and returns the targetable validity flag.\")\r\n GetDamageLocatorDirection(_index, _inWorldSpace, out = vec3.create())\r\n {\r\n vec3.set(out, 0, 1, 0);\r\n return true;\r\n }\r\n\r\n /** Tests whether a projectile has reached the root target point. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"CarbonEngineJS uses an out-last signature for output parameters.\")\r\n GetImpactPosition(locator, _posPrev, posNow, epsilon, out = vec3.create())\r\n {\r\n this.GetDamageLocatorPosition(locator, true, out);\r\n return vec3.squaredDistance(posNow, out) < Number(epsilon);\r\n }\r\n\r\n /** Effect roots never use shield impact geometry. */\r\n @carbon.method\r\n @impl.noop\r\n HasImpactConfigurationShield()\r\n {\r\n return false;\r\n }\r\n\r\n /** Effect roots use their only target point. */\r\n @carbon.method\r\n @impl.noop\r\n GetClosestDamageLocatorIndex(_position)\r\n {\r\n return 0;\r\n }\r\n\r\n /** Effect roots use their only target point. */\r\n @carbon.method\r\n @impl.noop\r\n GetGoodDamageLocatorIndex(_position)\r\n {\r\n return 0;\r\n }\r\n\r\n /** Returns the authored target radius. */\r\n @carbon.method\r\n @impl.implemented\r\n GetRadius()\r\n {\r\n return this.boundingSphereRadius;\r\n }\r\n\r\n /** Effect roots do not create attached impact overlays. */\r\n @carbon.method\r\n @impl.noop\r\n CreateImpact(_damageLocatorIndex, _direction, _lifeTime, _size)\r\n {\r\n return -1;\r\n }\r\n\r\n /** Effect roots do not update attached impact overlays. */\r\n @carbon.method\r\n @impl.noop\r\n UpdateImpact(_out, _direction, _impactIndex)\r\n {\r\n return false;\r\n }\r\n\r\n /** Returns the detached root world position. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"CarbonEngineJS returns the caller-owned output vector.\")\r\n GetWorldPosition(out = vec3.create())\r\n {\r\n return vec3.set(out, this.#worldTransform[12], this.#worldTransform[13], this.#worldTransform[14]);\r\n }\r\n\r\n /** Returns the authored local rotation composed with the detached root rotation. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"CarbonEngineJS returns the caller-owned output quaternion.\")\r\n GetWorldRotation(out = quat.create())\r\n {\r\n mat4.getRotation(EveEffectRoot2.#worldRotation, this.#worldTransform);\r\n // Carbon (row-vector): m_rotation * RotationQuaternion(world) - local first.\r\n quat.multiply(out, EveEffectRoot2.#worldRotation, this.rotation);\r\n return quat.normalize(out, out);\r\n }\r\n\r\n /** Computes a miss point just outside the root's spherical silhouette. */\r\n @carbon.method\r\n @impl.implemented\r\n GetMissPosition(hit, source, out = vec3.create())\r\n {\r\n this.GetDamageLocatorPosition(-1, true, out);\r\n if (!hit || !source) return out;\r\n vec3.subtract(EveEffectRoot2.#missOffset, hit, out);\r\n vec3.subtract(EveEffectRoot2.#missDirection, hit, source);\r\n const directionLength = vec3.length(EveEffectRoot2.#missDirection);\r\n if (directionLength) vec3.scale(EveEffectRoot2.#missDirection, EveEffectRoot2.#missDirection, 1 / directionLength);\r\n vec3.scaleAndAdd(\r\n EveEffectRoot2.#missOffset,\r\n EveEffectRoot2.#missOffset,\r\n EveEffectRoot2.#missDirection,\r\n -vec3.dot(EveEffectRoot2.#missDirection, EveEffectRoot2.#missOffset)\r\n );\r\n const offsetLength = vec3.length(EveEffectRoot2.#missOffset);\r\n if (offsetLength) vec3.scale(EveEffectRoot2.#missOffset, EveEffectRoot2.#missOffset, 1 / offsetLength);\r\n return vec3.scaleAndAdd(out, out, EveEffectRoot2.#missOffset, this.boundingSphereRadius * 1.125);\r\n }\r\n\r\n /** Returns the owned effect-child list. */\r\n @carbon.method\r\n @impl.implemented\r\n GetChildren()\r\n {\r\n return this.effectChildren;\r\n }\r\n\r\n /** Decomposes a matrix into the authored local SRT fields. */\r\n @carbon.method\r\n @impl.implemented\r\n SetTransform(transform)\r\n {\r\n mat4.getScaling(this.scaling, transform);\r\n mat4.getRotation(this.rotation, transform);\r\n mat4.getTranslation(this.translation, transform);\r\n }\r\n\r\n /** Plays matching root and child curve sets. */\r\n @carbon.method\r\n @impl.implemented\r\n PlayCurveSet(name, rangeName = \"\")\r\n {\r\n const target = String(name ?? \"\");\r\n for (const curveSet of this.curveSets)\r\n {\r\n if ((curveSet?.GetName?.() ?? curveSet?.name) !== target) continue;\r\n if (rangeName) curveSet?.PlayTimeRange?.(rangeName);\r\n else\r\n {\r\n curveSet?.ResetTimeRange?.();\r\n curveSet?.Play?.();\r\n }\r\n }\r\n for (const child of this.effectChildren) child?.PlayCurveSet?.(target, rangeName);\r\n }\r\n\r\n /** Stops matching root and child curve sets. */\r\n @carbon.method\r\n @impl.implemented\r\n StopCurveSet(name)\r\n {\r\n const target = String(name ?? \"\");\r\n for (const curveSet of this.curveSets)\r\n {\r\n if ((curveSet?.GetName?.() ?? curveSet?.name) === target) curveSet?.Stop?.();\r\n }\r\n for (const child of this.effectChildren) child?.StopCurveSet?.(target);\r\n }\r\n\r\n /** Samples matching root and child curve sets at an explicit time. */\r\n @carbon.method\r\n @impl.implemented\r\n UpdateCurveSet(name, time)\r\n {\r\n const target = String(name ?? \"\");\r\n for (const curveSet of this.curveSets)\r\n {\r\n if ((curveSet?.GetName?.() ?? curveSet?.name) === target) curveSet?.Update?.(time, time);\r\n }\r\n for (const child of this.effectChildren) child?.UpdateCurveSet?.(target, time);\r\n }\r\n\r\n /** Returns the maximum duration of matching root and child curve sets. */\r\n @carbon.method\r\n @impl.implemented\r\n GetCurveSetDuration(name)\r\n {\r\n const target = String(name ?? \"\");\r\n let duration = 0;\r\n for (const curveSet of this.curveSets)\r\n {\r\n if ((curveSet?.GetName?.() ?? curveSet?.name) === target)\r\n {\r\n duration = Math.max(duration, Number(curveSet?.GetMaxCurveDuration?.() ?? 0));\r\n }\r\n }\r\n for (const child of this.effectChildren)\r\n {\r\n duration = Math.max(duration, Number(child?.GetCurveSetDuration?.(target) ?? 0));\r\n }\r\n return duration;\r\n }\r\n\r\n /** Returns the maximum named range duration in matching root and child sets. */\r\n @carbon.method\r\n @impl.implemented\r\n GetRangeDuration(name, rangeName)\r\n {\r\n const target = String(name ?? \"\");\r\n let duration = 0;\r\n for (const curveSet of this.curveSets)\r\n {\r\n if ((curveSet?.GetName?.() ?? curveSet?.name) === target)\r\n {\r\n duration = Math.max(duration, Number(curveSet?.GetRangeDuration?.(rangeName) ?? 0));\r\n }\r\n }\r\n for (const child of this.effectChildren)\r\n {\r\n duration = Math.max(duration, Number(child?.GetRangeDuration?.(target, rangeName) ?? 0));\r\n }\r\n return duration;\r\n }\r\n\r\n /** Collects the Carbon debug-option names and child options. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"The debug renderer/options collection is an injected engine-owned capability.\")\r\n GetDebugOptions(options = new Set())\r\n {\r\n options.add?.(\"Bounding Sphere\");\r\n options.add?.(\"Lights\");\r\n for (const observer of this.observers) observer?.GetDebugOptions?.(options);\r\n for (const child of this.effectChildren) child?.GetDebugOptions?.(options);\r\n return options;\r\n }\r\n\r\n /** Forwards root debug geometry to an injected debug renderer. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"The debug renderer is an injected engine-owned capability.\")\r\n RenderDebugInfo(renderer)\r\n {\r\n if (renderer?.HasOption?.(this, \"Bounding Sphere\"))\r\n {\r\n renderer?.DrawSphere?.(this, this.boundingSphereCenter, this.boundingSphereRadius, 8, \"wireframe\", 0xffff00ff);\r\n }\r\n for (const child of this.effectChildren) child?.RenderDebugInfo?.(renderer);\r\n if (renderer?.HasOption?.(this, \"Lights\"))\r\n {\r\n for (const light of this.lights) light?.RenderDebugInfo?.(renderer, this.#worldTransform);\r\n }\r\n for (const observer of this.observers) observer?.RenderDebugInfo?.(renderer);\r\n }\r\n\r\n /** Stores and propagates a controller variable to current and future members. */\r\n @carbon.method\r\n @impl.implemented\r\n SetControllerVariable(name, value)\r\n {\r\n const key = String(name ?? \"\");\r\n const next = Number(value);\r\n this.#controllerVariables.set(key, next);\r\n for (const controller of this.controllers) controller?.SetVariable?.(key, next);\r\n for (const child of this.effectChildren) child?.SetControllerVariable?.(key, next);\r\n }\r\n\r\n /** Propagates an event to controllers and effect children. */\r\n @carbon.method\r\n @impl.implemented\r\n HandleControllerEvent(name)\r\n {\r\n const eventName = String(name ?? \"\");\r\n for (const controller of this.controllers) controller?.HandleEvent?.(eventName);\r\n for (const child of this.effectChildren) child?.HandleControllerEvent?.(eventName);\r\n }\r\n\r\n /** Starts controllers on the root and its effect children. */\r\n @carbon.method\r\n @impl.implemented\r\n StartControllers()\r\n {\r\n for (const controller of this.controllers) controller?.Start?.();\r\n for (const child of this.effectChildren) child?.StartControllers?.();\r\n }\r\n\r\n /** Finds a named direct effect child. */\r\n @carbon.method\r\n @impl.implemented\r\n GetEffectChildByName(name)\r\n {\r\n const target = String(name ?? \"\");\r\n for (const child of this.effectChildren)\r\n {\r\n if ((child?.GetName?.() ?? child?.name ?? \"\") === target) return child;\r\n }\r\n return null;\r\n }\r\n\r\n /** Adds and initializes an effect child through Carbon's list-notify behavior. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"Plain JavaScript arrays have no Blue IList notifications, so insertion behavior is explicit.\")\r\n AddToEffectChildrenList(child)\r\n {\r\n this.effectChildren.push(child);\r\n EveEffectRoot2.#ApplyControllerVariables(child, this.#controllerVariables, \"SetControllerVariable\");\r\n child?.StartControllers?.();\r\n return child;\r\n }\r\n\r\n /** Removes an effect child. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"Plain JavaScript arrays have no Blue IList notifications, so removal behavior is explicit.\")\r\n RemoveFromEffectChildrenList(child)\r\n {\r\n const index = this.effectChildren.indexOf(child);\r\n if (index === -1) return false;\r\n this.effectChildren.splice(index, 1);\r\n return true;\r\n }\r\n\r\n /** Applies a shader option to every effect child. */\r\n @carbon.method\r\n @impl.implemented\r\n SetShaderOption(name, value)\r\n {\r\n for (const child of this.effectChildren) child?.SetShaderOption?.(name, value);\r\n }\r\n\r\n /** Finds a named observer or child-owned sound emitter. */\r\n @carbon.method\r\n @impl.implemented\r\n FindSoundEmitter(name)\r\n {\r\n const target = String(name ?? \"\");\r\n for (const observer of this.observers)\r\n {\r\n if ((observer?.name ?? \"\") === target)\r\n {\r\n return typeof observer.GetObserver === \"function\" ? observer.GetObserver() : observer.observer ?? null;\r\n }\r\n }\r\n for (const child of this.effectChildren)\r\n {\r\n const emitter = child?.FindSoundEmitter?.(target);\r\n if (emitter) return emitter;\r\n }\r\n return null;\r\n }\r\n\r\n /** Adds a placement observer. */\r\n @carbon.method\r\n @impl.implemented\r\n AddObserver(observer)\r\n {\r\n this.observers.push(observer);\r\n return observer;\r\n }\r\n\r\n /** Applies the mute state to effect children and placement observers. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"The explicit setter replaces Carbon's Blue field-notify callback.\")\r\n SetMute(isMute)\r\n {\r\n this.mute = !!isMute;\r\n for (const child of this.effectChildren) child?.SetMute?.(this.mute);\r\n for (const observer of this.observers) observer?.SetMute?.(this.mute);\r\n }\r\n\r\n /** Freezes every child at Carbon's high-detail LOD. */\r\n @carbon.method\r\n @impl.implemented\r\n FreezeHighDetailMesh()\r\n {\r\n this.lodLevel = Tr2Lod.TR2_LOD_HIGH;\r\n this.#changeLOD = false;\r\n for (const child of this.effectChildren) child?.ChangeLOD?.(this.lodLevel);\r\n }\r\n\r\n /** Propagates a procedural-container variable to every effect child. */\r\n @carbon.method\r\n @impl.implemented\r\n SetProceduralContainerVariable(name, value)\r\n {\r\n for (const child of this.effectChildren) child?.SetProceduralContainerVariable?.(name, value);\r\n }\r\n\r\n #CreateChildUpdateParams()\r\n {\r\n const params = new EveChildUpdateParams();\r\n params.spaceObjectParent = this;\r\n params.isVisible = this.display;\r\n mat4.copy(params.localToWorldTransform, this.#lastUpdateMatrix);\r\n return params;\r\n }\r\n\r\n static #ApplyControllerVariables(target, variables, methodName)\r\n {\r\n const setter = target?.[methodName];\r\n if (typeof setter !== \"function\") return;\r\n for (const [name, value] of variables) setter.call(target, name, value);\r\n }\r\n\r\n static #GetContextValue(context, methodName, ...propertyNames)\r\n {\r\n const method = context?.[methodName];\r\n if (typeof method === \"function\") return Number(method.call(context)) || 0;\r\n for (const propertyName of propertyNames)\r\n {\r\n if (context?.[propertyName] !== undefined && context?.[propertyName] !== null)\r\n {\r\n return Number(context[propertyName]) || 0;\r\n }\r\n }\r\n return 0;\r\n }\r\n\r\n static #UpdateCurve(curve, time, out, fallback)\r\n {\r\n if (!curve)\r\n {\r\n for (let index = 0; index < out.length; index++) out[index] = fallback[index];\r\n return out;\r\n }\r\n let result;\r\n if (typeof curve.Update === \"function\") result = curve.Update(time, out);\r\n else if (typeof curve.GetValueAt === \"function\") result = curve.GetValueAt(time, out);\r\n if ((Array.isArray(result) || ArrayBuffer.isView(result)) && result !== out)\r\n {\r\n for (let index = 0; index < out.length; index++) out[index] = result[index];\r\n }\r\n return out;\r\n }\r\n\r\n static #ZeroNumericRecord(record)\r\n {\r\n for (const [name, value] of Object.entries(record))\r\n {\r\n if (typeof value === \"number\") record[name] = 0;\r\n else if (ArrayBuffer.isView(value)) value.fill(0);\r\n else if (Array.isArray(value))\r\n {\r\n for (let index = 0; index < value.length; index++)\r\n {\r\n if (typeof value[index] === \"number\") value[index] = 0;\r\n else if (ArrayBuffer.isView(value[index])) value[index].fill(0);\r\n }\r\n }\r\n }\r\n }\r\n\r\n static #identity = mat4.create();\r\n static #centerTransform = mat4.create();\r\n static #localSphere = vec4.create();\r\n static #worldSphere = vec4.create();\r\n static #zero = vec3.create();\r\n static #translation = vec3.create();\r\n static #modelTranslation = vec3.create();\r\n static #missOffset = vec3.create();\r\n static #missDirection = vec3.create();\r\n static #identityRotation = quat.create();\r\n static #rotation = quat.create();\r\n static #modelRotation = quat.create();\r\n static #worldRotation = quat.create();\r\n static #noAlbedo = vec4.create();\r\n\r\n static Tr2Lod = Tr2Lod;\r\n\r\n}\r\n"],"names":["_EveEffectRoot","_identity","EveEffectRoot2","EveEntity","e","_init_effectChildren","_init_extra_effectChildren","_init_estimatedSize","_init_extra_estimatedSize","_init_lodLevel","_init_extra_lodLevel","_init_mute","_init_extra_mute","_init_display","_init_extra_display","_init_name","_init_extra_name","_init_dynamicLOD","_init_extra_dynamicLOD","_init_scaling","_init_extra_scaling","_init_rotation","_init_extra_rotation","_init_translation","_init_extra_translation","_init_duration","_init_extra_duration","_init_secondaryLightingEmissiveColor","_init_extra_secondaryLightingEmissiveColor","_init_curveSets","_init_extra_curveSets","_init_lights","_init_extra_lights","_init_externalParameters","_init_extra_externalParameters","_init_controllers","_init_extra_controllers","_init_observers","_init_extra_observers","_init_rotationCurve","_init_extra_rotationCurve","_init_secondaryLightingSphereRadius","_init_extra_secondaryLightingSphereRadius","_init_boundingSphereCenter","_init_extra_boundingSphereCenter","_init_boundingSphereRadius","_init_extra_boundingSphereRadius","_init_modelTranslationCurve","_init_extra_modelTranslationCurve","_init_modelRotationCurve","_init_extra_modelRotationCurve","_init_translationCurve","_init_extra_translationCurve","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","persist","list","read","float32","int32","schema","enum","notify","readwrite","boolean","string","vec3","quat","color","model","impl","adapted","reason","carbon","method","implemented","noop","effectChildren","estimatedSize","lodLevel","Tr2Lod","TR2_LOD_HIGH","mute","display","name","dynamicLOD","scaling","fromValues","rotation","create","translation","duration","secondaryLightingEmissiveColor","vec4","curveSets","lights","externalParameters","controllers","observers","rotationCurve","secondaryLightingSphereRadius","boundingSphereCenter","boundingSphereRadius","modelTranslationCurve","modelRotationCurve","translationCurve","Map","mat4","Initialize","controller","IsLinked","Link","AddController","push","RemoveController","index","indexOf","splice","Unlink","UpdateSyncronous","updateContext","time","UpdateWorldTransform","fromRotationTranslationScale","multiply","observer","Update","length","params","child","UpdateAsyncronous","frequency","threshold","Math","min","UpdateControllers","curveSet","controllerUpdateFrequency","UpdateVisibility","parentTransform","GetBoundingSphere","sph3","transformMat4","frustum","GetFrustum","IsSphereVisible","Number","GetPixelSizeAccross","oldLod","TR2_LOD_LOW","medium","low","TR2_LOD_MEDIUM","GetRenderables","out","ChangeLOD","updateFrequency","set","GetBoundingSphereRadius","fromRotationTranslation","UpdateModelCenterWorldPosition","GetModelCenterWorldPosition","GetLocalBoundingBox","_min","_max","GetLocalToWorldTransform","copy","RegisterWithQuadRenderer","quadRenderer","AddQuadsToQuadRenderer","RegisterComponents","registry","GetComponentRegistry","RegisterComponent","EveComponentType","LightOwner","Register","UnRegisterComponents","UnRegister","GetLights","lightManager","transform","scale","hypot","light","AddLight","ClearLights","GetPerObjectStructs","vsData","EveSpaceObjectVSData","psData","EveSpaceObjectPSData","shipData","RegisterSecondaryLightSource","manager","subarray","UnregisterSecondaryLightSource","Start","Play","PlayAllCurveSets","PlayCurveSets","Stop","StopAllCurveSets","StopCurveSets","GetDamageLocatorCount","GetDamageLocatorPosition","_index","_inWorldSpace","GetDamageLocatorDirection","GetImpactPosition","locator","_posPrev","posNow","epsilon","squaredDistance","HasImpactConfigurationShield","GetClosestDamageLocatorIndex","_position","GetGoodDamageLocatorIndex","GetRadius","CreateImpact","_damageLocatorIndex","_direction","_lifeTime","_size","UpdateImpact","_out","_impactIndex","GetWorldPosition","GetWorldRotation","getRotation","normalize","GetMissPosition","hit","source","subtract","directionLength","scaleAndAdd","dot","offsetLength","GetChildren","SetTransform","getScaling","getTranslation","PlayCurveSet","rangeName","target","String","GetName","PlayTimeRange","ResetTimeRange","StopCurveSet","UpdateCurveSet","GetCurveSetDuration","max","GetMaxCurveDuration","GetRangeDuration","GetDebugOptions","options","Set","add","RenderDebugInfo","renderer","HasOption","DrawSphere","SetControllerVariable","value","key","next","SetVariable","HandleControllerEvent","eventName","HandleEvent","StartControllers","GetEffectChildByName","AddToEffectChildrenList","RemoveFromEffectChildrenList","SetShaderOption","FindSoundEmitter","GetObserver","emitter","AddObserver","SetMute","isMute","FreezeHighDetailMesh","SetProceduralContainerVariable","#CreateChildUpdateParams","EveChildUpdateParams","spaceObjectParent","isVisible","localToWorldTransform","#ApplyControllerVariables","variables","methodName","setter","call","#GetContextValue","context","propertyNames","propertyName","undefined","#UpdateCurve","curve","fallback","result","GetValueAt","Array","isArray","ArrayBuffer","isView","#ZeroNumericRecord","record","Object","entries","fill","constructor"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EveEffectRoot2.js","sources":["../../../../src/eve/spaceObject/EveEffectRoot2.js"],"sourcesContent":["// Source: trinity/trinity/Eve/EveEffectRoot2.h\n// Source: trinity/trinity/Eve/EveEffectRoot2.cpp\n// Source: trinity/trinity/Eve/EveEffectRoot2_Blue.cpp\nimport { mat4 } from \"@carbonenginejs/runtime-utils/mat4\";\nimport { quat } from \"@carbonenginejs/runtime-utils/quat\";\nimport { sph3 } from \"@carbonenginejs/runtime-utils/sph3\";\nimport { vec3 } from \"@carbonenginejs/runtime-utils/vec3\";\nimport { vec4 } from \"@carbonenginejs/runtime-utils/vec4\";\nimport { carbon, impl, io, schema, type } from \"@carbonenginejs/runtime-utils/schema\";\nimport { EveEntity } from \"../EveEntity.js\";\nimport { EveChildUpdateParams } from \"../EveChildUpdateParams.js\";\nimport { EveLODHelper, Tr2Lod } from \"../EveLODHelper.js\";\nimport { RawData } from \"../../trinityCore/rawData/RawData.js\";\nimport { EveComponentType } from \"../EveComponentTypes.js\";\n\n\n/**\n * A standalone effect root: curve-driven placement plus the effect children,\n * lights, controllers, curve sets and observers that make up an effect not\n * attached to a hull.\n */\n@type.define({ className: \"EveEffectRoot2\", family: \"eve/spaceObject\" })\nexport class EveEffectRoot2 extends EveEntity\n{\n\n /** m_effectChildren (PIEveSpaceObjectChildVector) [READ, PERSIST] */\n @io.persist\n @type.list(\"IEveSpaceObjectChild\")\n effectChildren = [];\n\n /** m_estimatedSize (float) [READ] */\n @io.read\n @type.float32\n estimatedSize = 0;\n\n /** m_lodLevel (Tr2Lod - enum Tr2Lod) [READ] */\n @io.read\n @type.int32\n @schema.enum(\"Tr2Lod\")\n lodLevel = Tr2Lod.TR2_LOD_HIGH;\n\n /** m_mute (bool) [READWRITE, NOTIFY] */\n @io.notify\n @io.readwrite\n @type.boolean\n mute = false;\n\n /** m_display (bool) [READWRITE, PERSIST, NOTIFY] */\n @io.notify\n @io.persist\n @type.boolean\n display = true;\n\n /** m_name (std::string) [READWRITE, PERSIST] */\n @io.persist\n @type.string\n name = \"\";\n\n /** m_dynamicLODSelection (bool) [READWRITE, PERSIST] */\n @io.persist\n @type.boolean\n dynamicLOD = false;\n\n /** m_scaling (Vector3) [READWRITE, PERSIST] */\n @io.persist\n @type.vec3\n scaling = vec3.fromValues(1, 1, 1);\n\n /** m_rotation (Quaternion) [READWRITE, PERSIST] */\n @io.persist\n @type.quat\n rotation = quat.create();\n\n /** m_translation (Vector3) [READWRITE, PERSIST] */\n @io.persist\n @type.vec3\n translation = vec3.create();\n\n /** m_effectDuration (float) [READWRITE, PERSIST] */\n @io.persist\n @type.float32\n duration = -1;\n\n /** m_secondaryLightingEmissiveColor (Color) [READWRITE, PERSIST] */\n @io.persist\n @type.color\n secondaryLightingEmissiveColor = vec4.create();\n\n /** m_curveSets (PTriCurveSetVector) [READ, PERSIST] */\n @io.persist\n @type.list(\"TriCurveSet\")\n curveSets = [];\n\n /** m_lights (PTr2LightVector) [READ, PERSIST] */\n @io.persist\n @type.list(\"Tr2Light\")\n lights = [];\n\n /** m_externalParameters (PTr2ExternalParameterVector) [READ, PERSIST] */\n @io.persist\n @type.list(\"Tr2ExternalParameter\")\n externalParameters = [];\n\n /** m_controllers (PITr2ControllerVector) [READ, PERSIST] */\n @io.persist\n @type.list(\"ITr2Controller\")\n controllers = [];\n\n /** m_observers (PTriObserverLocalVector) [READ, PERSIST] */\n @io.persist\n @type.list(\"TriObserverLocal\")\n observers = [];\n\n /** m_ballRotation (ITriQuaternionFunctionPtr) [READWRITE, PERSIST] */\n @io.persist\n @type.model(\"ITriQuaternionFunction\")\n rotationCurve = null;\n\n /** m_secondaryLightingSphereRadiusLocal (float) [READWRITE, PERSIST] */\n @io.persist\n @type.float32\n secondaryLightingSphereRadius = 0.5;\n\n /** m_boundingSphere.xyz, exposed by Carbon's MAPFLOATARRAYSIZE Blue mapping. */\n @impl.adapted\n @impl.reason(\"The schema scanner omits MAPFLOATARRAYSIZE; Carbon exposes the three persisted center components separately from radius.\")\n @io.persist\n @type.vec3\n boundingSphereCenter = vec3.create();\n\n /** m_boundingSphere.w (float) [READWRITE, PERSIST] */\n @io.persist\n @type.float32\n boundingSphereRadius = 0;\n\n /** m_modelTranslation (ITriVectorFunctionPtr) [READWRITE, PERSIST] */\n @io.persist\n @type.model(\"ITriVectorFunction\")\n modelTranslationCurve = null;\n\n /** m_modelRotation (ITriQuaternionFunctionPtr) [READWRITE, PERSIST] */\n @io.persist\n @type.model(\"ITriQuaternionFunction\")\n modelRotationCurve = null;\n\n /** m_ballPosition (ITriVectorFunctionPtr) [READWRITE, PERSIST] */\n @io.persist\n @type.model(\"ITriVectorFunction\")\n translationCurve = null;\n\n #changeLOD = true;\n #controllerVariables = new Map();\n #lastUpdateMatrix = mat4.create();\n #localTransform = mat4.create();\n #secondaryLightingSphereRadiusWorld = 0.5;\n #worldTransform = mat4.create();\n\n /** Links authored controllers after graph hydration. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Blue root locking is represented by the hydrated JavaScript object identity.\")\n Initialize()\n {\n for (const controller of this.controllers)\n {\n if (!controller?.IsLinked?.()) controller?.Link?.(this);\n EveEffectRoot2.#ApplyControllerVariables(controller, this.#controllerVariables, \"SetVariable\");\n }\n return true;\n }\n\n /** Adds and initializes a controller through Carbon's list-notify behavior. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Plain JavaScript arrays have no Blue IList notifications, so insertion behavior is explicit.\")\n AddController(controller)\n {\n this.controllers.push(controller);\n if (!controller?.IsLinked?.()) controller?.Link?.(this);\n EveEffectRoot2.#ApplyControllerVariables(controller, this.#controllerVariables, \"SetVariable\");\n return controller;\n }\n\n /** Removes and unlinks a controller through Carbon's list-notify behavior. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Plain JavaScript arrays have no Blue IList notifications, so removal behavior is explicit.\")\n RemoveController(controller)\n {\n const index = this.controllers.indexOf(controller);\n if (index === -1) return false;\n this.controllers.splice(index, 1);\n controller?.Unlink?.();\n return true;\n }\n\n /** Evaluates root curves and updates children that require synchronous placement. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Carbon task and lock ownership is omitted; child update parameters retain the source graph contract.\")\n UpdateSyncronous(updateContext = null)\n {\n const time = EveEffectRoot2.#GetContextValue(updateContext, \"GetTime\", \"currentTime\", \"time\");\n this.UpdateWorldTransform(time);\n mat4.fromRotationTranslationScale(this.#localTransform, this.rotation, this.translation, this.scaling);\n // Carbon (row-vector): m_localTransform * m_worldTransform - local first.\n mat4.multiply(this.#lastUpdateMatrix, this.#worldTransform, this.#localTransform);\n this.#secondaryLightingSphereRadiusWorld = this.secondaryLightingSphereRadius *\n (this.scaling[0] + this.scaling[1] + this.scaling[2]) / 3;\n\n for (const observer of this.observers) observer?.Update?.(this.#lastUpdateMatrix);\n if (this.effectChildren.length)\n {\n const params = this.#CreateChildUpdateParams();\n for (const child of this.effectChildren) child?.UpdateSyncronous?.(updateContext, params);\n }\n return true;\n }\n\n /** Advances controllers, root curve sets, and effect children. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Controller and child work is forwarded synchronously through the GPU-free graph instead of Carbon task groups.\")\n UpdateAsyncronous(updateContext = null)\n {\n let frequency = 0;\n if (this.display)\n {\n if (this.dynamicLOD)\n {\n const threshold = EveEffectRoot2.#GetContextValue(updateContext, \"GetHighDetailThreshold\", \"highDetailThreshold\");\n if (threshold > 0) frequency = Math.min(1, this.estimatedSize / threshold);\n }\n else\n {\n frequency = 0.5;\n }\n }\n\n this.UpdateControllers(frequency);\n const time = EveEffectRoot2.#GetContextValue(updateContext, \"GetTime\", \"currentTime\", \"time\");\n for (const curveSet of this.curveSets) curveSet?.Update?.(time, time);\n if (this.effectChildren.length)\n {\n const params = this.#CreateChildUpdateParams();\n params.controllerUpdateFrequency = frequency;\n for (const child of this.effectChildren) child?.UpdateAsyncronous?.(updateContext, params);\n }\n return frequency;\n }\n\n /** Updates dynamic LOD and forwards visibility to the effect children. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Frustum and threshold state is supplied by the explicit update context rather than renderer globals.\")\n UpdateVisibility(updateContext = null, parentTransform = EveEffectRoot2.#identity)\n {\n if (!this.display) return false;\n if (this.dynamicLOD)\n {\n this.GetBoundingSphere(EveEffectRoot2.#localSphere);\n sph3.transformMat4(EveEffectRoot2.#worldSphere, EveEffectRoot2.#localSphere, this.#worldTransform);\n const frustum = updateContext?.GetFrustum?.() ?? updateContext?.frustum;\n if (frustum?.IsSphereVisible?.(EveEffectRoot2.#worldSphere) !== false)\n {\n this.estimatedSize = Number(frustum?.GetPixelSizeAccross?.(EveEffectRoot2.#worldSphere) ?? this.estimatedSize) || 0;\n }\n\n const oldLod = this.lodLevel;\n this.lodLevel = Tr2Lod.TR2_LOD_LOW;\n const medium = EveEffectRoot2.#GetContextValue(updateContext, \"GetMediumDetailThreshold\", \"mediumDetailThreshold\");\n const low = EveEffectRoot2.#GetContextValue(updateContext, \"GetLowDetailThreshold\", \"lowDetailThreshold\");\n if (this.estimatedSize >= medium) this.lodLevel = Tr2Lod.TR2_LOD_HIGH;\n else if (this.estimatedSize >= low) this.lodLevel = Tr2Lod.TR2_LOD_MEDIUM;\n this.#changeLOD ||= oldLod !== this.lodLevel;\n }\n\n for (const child of this.effectChildren)\n {\n child?.UpdateVisibility?.(updateContext, parentTransform, this.lodLevel);\n }\n return true;\n }\n\n /** Collects child renderables after applying a pending LOD change. */\n @carbon.method\n @impl.implemented\n GetRenderables(out = [])\n {\n if (!this.display) return out;\n if (this.#changeLOD)\n {\n this.#changeLOD = false;\n for (const child of this.effectChildren) child?.ChangeLOD?.(this.lodLevel);\n }\n for (const child of this.effectChildren) child?.GetRenderables?.(out);\n return out;\n }\n\n /** Advances every controller at the selected detail frequency. */\n @carbon.method\n @impl.implemented\n UpdateControllers(updateFrequency)\n {\n for (const controller of this.controllers) controller?.Update?.(updateFrequency);\n }\n\n /** Returns the authored local bounding sphere. */\n @carbon.method\n @impl.implemented\n GetBoundingSphere(out = vec4.create())\n {\n vec4.set(\n out,\n this.boundingSphereCenter[0],\n this.boundingSphereCenter[1],\n this.boundingSphereCenter[2],\n this.boundingSphereRadius\n );\n return true;\n }\n\n /** Returns the authored bounding-sphere radius. */\n @carbon.method\n @impl.implemented\n GetBoundingSphereRadius()\n {\n return this.boundingSphereRadius;\n }\n\n /** Evaluates the ball/model curves into the detached root transform. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Curve outputs use CarbonEngineJS's time-first, output-second convention.\")\n UpdateWorldTransform(time)\n {\n EveEffectRoot2.#UpdateCurve(this.translationCurve, time, EveEffectRoot2.#translation, EveEffectRoot2.#zero);\n EveEffectRoot2.#UpdateCurve(this.rotationCurve, time, EveEffectRoot2.#rotation, EveEffectRoot2.#identityRotation);\n if (this.modelRotationCurve)\n {\n EveEffectRoot2.#UpdateCurve(this.modelRotationCurve, time, EveEffectRoot2.#modelRotation, EveEffectRoot2.#identityRotation);\n // Carbon (row-vector): rotation = modelRotation * rotation - model first.\n quat.multiply(EveEffectRoot2.#rotation, EveEffectRoot2.#rotation, EveEffectRoot2.#modelRotation);\n }\n\n mat4.fromRotationTranslation(this.#worldTransform, EveEffectRoot2.#rotation, EveEffectRoot2.#translation);\n if (this.modelTranslationCurve)\n {\n EveEffectRoot2.#UpdateCurve(this.modelTranslationCurve, time, EveEffectRoot2.#modelTranslation, EveEffectRoot2.#zero);\n vec3.transformMat4(EveEffectRoot2.#modelTranslation, EveEffectRoot2.#modelTranslation, this.#worldTransform);\n this.#worldTransform[12] = EveEffectRoot2.#modelTranslation[0];\n this.#worldTransform[13] = EveEffectRoot2.#modelTranslation[1];\n this.#worldTransform[14] = EveEffectRoot2.#modelTranslation[2];\n }\n return this.#worldTransform;\n }\n\n /** Updates and returns the model-center world position. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"CarbonEngineJS uses an out-last signature for output parameters.\")\n UpdateModelCenterWorldPosition(time, out = vec3.create())\n {\n this.UpdateWorldTransform(time);\n mat4.fromRotationTranslationScale(this.#localTransform, this.rotation, this.translation, this.scaling);\n // Carbon (row-vector): currentTransform * m_worldTransform - local first.\n mat4.multiply(EveEffectRoot2.#centerTransform, this.#worldTransform, this.#localTransform);\n return vec3.transformMat4(out, this.boundingSphereCenter, EveEffectRoot2.#centerTransform);\n }\n\n /** Returns the last model-center world position without advancing curves. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"CarbonEngineJS uses an out-last signature for output parameters.\")\n GetModelCenterWorldPosition(out = vec3.create())\n {\n return vec3.transformMat4(out, this.boundingSphereCenter, this.#lastUpdateMatrix);\n }\n\n /** Effect roots do not expose a local AABB in Carbon. */\n @carbon.method\n @impl.noop\n GetLocalBoundingBox(_min, _max)\n {\n return false;\n }\n\n /** Returns the last composed local-to-world transform. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"CarbonEngineJS returns the caller-owned output matrix.\")\n GetLocalToWorldTransform(out = mat4.create())\n {\n return mat4.copy(out, this.#lastUpdateMatrix);\n }\n\n /** Protected-equivalent read of Carbon's m_worldTransform\n * (EveEffectRoot2.h:219, protected) - the detached root transform\n * UpdateWorldTransform evaluates, WITHOUT the local SRT composition that\n * GetLocalToWorldTransform's #lastUpdateMatrix carries. EvePlanet reads the\n * member directly for the z-only depth-prepass drive (EvePlanet.cpp:137). */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Carbon's protected member access becomes a copying accessor; JS has no protected fields and the live buffer stays private.\")\n GetWorldTransform(out = mat4.create())\n {\n return mat4.copy(out, this.#worldTransform);\n }\n\n /** Registers every child with an injected quad renderer. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"The quad renderer is an injected engine-owned capability.\")\n RegisterWithQuadRenderer(quadRenderer)\n {\n for (const child of this.effectChildren) child?.RegisterWithQuadRenderer?.(quadRenderer);\n }\n\n /** Adds visible child quads to an injected renderer. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"The quad renderer is an injected engine-owned capability.\")\n AddQuadsToQuadRenderer(frustum, quadRenderer)\n {\n if (!this.display) return;\n for (const child of this.effectChildren) child?.AddQuadsToQuadRenderer?.(frustum, quadRenderer);\n }\n\n /** Carbon EveEffectRoot2::RegisterComponents (cpp:496-513): LightOwner when\n * lights are authored, then forwards the effect children. Gate m_display. */\n @carbon.method\n @impl.implemented\n RegisterComponents()\n {\n const registry = this.GetComponentRegistry();\n if (registry && this.display)\n {\n if (this.lights.length)\n {\n registry.RegisterComponent(EveComponentType.LightOwner, this);\n }\n for (const child of this.effectChildren)\n {\n child?.Register?.(registry);\n }\n }\n }\n\n /** Carbon EveEffectRoot2::UnRegisterComponents (cpp:515-528): forwards the\n * effect children only (own components were already removed by\n * EveEntity::UnRegister, EveEntity.cpp:90); no display re-check. */\n @carbon.method\n @impl.implemented\n UnRegisterComponents()\n {\n const registry = this.GetComponentRegistry();\n if (registry)\n {\n for (const child of this.effectChildren)\n {\n child?.UnRegister?.(registry);\n }\n }\n }\n\n /** Adds authored lights using the effect's composed placement and average scale. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"The light manager is an injected engine-owned capability.\")\n GetLights(lightManager)\n {\n if (!this.display) return;\n const transform = this.#lastUpdateMatrix;\n const scale = (\n Math.hypot(transform[0], transform[1], transform[2]) +\n Math.hypot(transform[4], transform[5], transform[6]) +\n Math.hypot(transform[8], transform[9], transform[10])\n ) / 3;\n for (const light of this.lights) light?.AddLight?.(lightManager, transform, scale);\n }\n\n /** Adds an authored light. */\n @carbon.method\n @impl.implemented\n AddLight(light)\n {\n this.lights.push(light);\n return light;\n }\n\n /** Removes all authored lights. */\n @carbon.method\n @impl.implemented\n ClearLights()\n {\n this.lights.length = 0;\n }\n\n /**\n * Carbon EveEffectRoot2::GetPerObjectStructs (cpp:463-478): zeroes both\n * records, then sets activation strength and bounding-sphere radius to 1. An\n * effect root carries no hull values of its own, so a child parented to one\n * inherits neutral data rather than nothing.\n * @returns {{vs: RawData, ps: RawData}}\n */\n @carbon.method\n @impl.implemented\n GetPerObjectStructs(vsData = RawData.create(\"EveSpaceObjectVSData\"), psData = RawData.create(\"EveSpaceObjectPSData\"))\n {\n vsData.Zero();\n psData.Zero();\n vsData.Set(\"shipData\", EveEffectRoot2.#neutralShipData);\n psData.Set(\"shipData\", EveEffectRoot2.#neutralShipData);\n\n return { vs: vsData, ps: psData };\n }\n\n /** Registers this root as a secondary light source with an injected manager. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"The SH lighting manager is injected; Trinity owns only the authored source values.\")\n RegisterSecondaryLightSource(manager)\n {\n return manager?.RegisterSecondaryLightSource?.(\n this.#worldTransform.subarray(12, 15),\n this.#secondaryLightingSphereRadiusWorld,\n EveEffectRoot2.#noAlbedo,\n this.secondaryLightingEmissiveColor\n );\n }\n\n /** Unregisters this root from an injected secondary-light manager. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"The SH lighting manager is injected; Trinity owns only the authored source values.\")\n UnregisterSecondaryLightSource(manager)\n {\n return manager?.UnregisterSecondaryLightSource?.(this.#worldTransform.subarray(12, 15));\n }\n\n /** Plays root and child-owned curve sets. */\n @carbon.method\n @impl.implemented\n Start()\n {\n for (const curveSet of this.curveSets) curveSet?.Play?.();\n for (const child of this.effectChildren)\n {\n if (child?.PlayAllCurveSets) child.PlayAllCurveSets();\n else child?.PlayCurveSets?.();\n }\n }\n\n /** Stops root and child-owned curve sets. */\n @carbon.method\n @impl.implemented\n Stop()\n {\n for (const curveSet of this.curveSets) curveSet?.Stop?.();\n for (const child of this.effectChildren)\n {\n if (child?.StopAllCurveSets) child.StopAllCurveSets();\n else child?.StopCurveSets?.();\n }\n }\n\n /** Effect roots have no damage locators. */\n @carbon.method\n @impl.noop\n GetDamageLocatorCount()\n {\n return 0;\n }\n\n /** Returns the detached root translation as the sole target point. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"CarbonEngineJS uses output parameters last and returns the targetable validity flag.\")\n GetDamageLocatorPosition(_index, _inWorldSpace, out = vec3.create())\n {\n vec3.set(out, this.#worldTransform[12], this.#worldTransform[13], this.#worldTransform[14]);\n return true;\n }\n\n /** Returns Carbon's constant +Y target direction. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"CarbonEngineJS uses output parameters last and returns the targetable validity flag.\")\n GetDamageLocatorDirection(_index, _inWorldSpace, out = vec3.create())\n {\n vec3.set(out, 0, 1, 0);\n return true;\n }\n\n /** Tests whether a projectile has reached the root target point. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"CarbonEngineJS uses an out-last signature for output parameters.\")\n GetImpactPosition(locator, _posPrev, posNow, epsilon, out = vec3.create())\n {\n this.GetDamageLocatorPosition(locator, true, out);\n return vec3.squaredDistance(posNow, out) < Number(epsilon);\n }\n\n /** Effect roots never use shield impact geometry. */\n @carbon.method\n @impl.noop\n HasImpactConfigurationShield()\n {\n return false;\n }\n\n /** Effect roots use their only target point. */\n @carbon.method\n @impl.noop\n GetClosestDamageLocatorIndex(_position)\n {\n return 0;\n }\n\n /** Effect roots use their only target point. */\n @carbon.method\n @impl.noop\n GetGoodDamageLocatorIndex(_position)\n {\n return 0;\n }\n\n /** Returns the authored target radius. */\n @carbon.method\n @impl.implemented\n GetRadius()\n {\n return this.boundingSphereRadius;\n }\n\n /** Effect roots do not create attached impact overlays. */\n @carbon.method\n @impl.noop\n CreateImpact(_damageLocatorIndex, _direction, _lifeTime, _size)\n {\n return -1;\n }\n\n /** Effect roots do not update attached impact overlays. */\n @carbon.method\n @impl.noop\n UpdateImpact(_out, _direction, _impactIndex)\n {\n return false;\n }\n\n /** Returns the detached root world position. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"CarbonEngineJS returns the caller-owned output vector.\")\n GetWorldPosition(out = vec3.create())\n {\n return vec3.set(out, this.#worldTransform[12], this.#worldTransform[13], this.#worldTransform[14]);\n }\n\n /** Returns the authored local rotation composed with the detached root rotation. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"CarbonEngineJS returns the caller-owned output quaternion.\")\n GetWorldRotation(out = quat.create())\n {\n mat4.getRotation(EveEffectRoot2.#worldRotation, this.#worldTransform);\n // Carbon (row-vector): m_rotation * RotationQuaternion(world) - local first.\n quat.multiply(out, EveEffectRoot2.#worldRotation, this.rotation);\n return quat.normalize(out, out);\n }\n\n /** Computes a miss point just outside the root's spherical silhouette. */\n @carbon.method\n @impl.implemented\n GetMissPosition(hit, source, out = vec3.create())\n {\n this.GetDamageLocatorPosition(-1, true, out);\n if (!hit || !source) return out;\n vec3.subtract(EveEffectRoot2.#missOffset, hit, out);\n vec3.subtract(EveEffectRoot2.#missDirection, hit, source);\n const directionLength = vec3.length(EveEffectRoot2.#missDirection);\n if (directionLength) vec3.scale(EveEffectRoot2.#missDirection, EveEffectRoot2.#missDirection, 1 / directionLength);\n vec3.scaleAndAdd(\n EveEffectRoot2.#missOffset,\n EveEffectRoot2.#missOffset,\n EveEffectRoot2.#missDirection,\n -vec3.dot(EveEffectRoot2.#missDirection, EveEffectRoot2.#missOffset)\n );\n const offsetLength = vec3.length(EveEffectRoot2.#missOffset);\n if (offsetLength) vec3.scale(EveEffectRoot2.#missOffset, EveEffectRoot2.#missOffset, 1 / offsetLength);\n return vec3.scaleAndAdd(out, out, EveEffectRoot2.#missOffset, this.boundingSphereRadius * 1.125);\n }\n\n /** Returns the owned effect-child list. */\n @carbon.method\n @impl.implemented\n GetChildren()\n {\n return this.effectChildren;\n }\n\n /** Decomposes a matrix into the authored local SRT fields. */\n @carbon.method\n @impl.implemented\n SetTransform(transform)\n {\n mat4.getScaling(this.scaling, transform);\n mat4.getRotation(this.rotation, transform);\n mat4.getTranslation(this.translation, transform);\n }\n\n /** Plays matching root and child curve sets. */\n @carbon.method\n @impl.implemented\n PlayCurveSet(name, rangeName = \"\")\n {\n const target = String(name ?? \"\");\n for (const curveSet of this.curveSets)\n {\n if ((curveSet?.GetName?.() ?? curveSet?.name) !== target) continue;\n if (rangeName) curveSet?.PlayTimeRange?.(rangeName);\n else\n {\n curveSet?.ResetTimeRange?.();\n curveSet?.Play?.();\n }\n }\n for (const child of this.effectChildren) child?.PlayCurveSet?.(target, rangeName);\n }\n\n /** Stops matching root and child curve sets. */\n @carbon.method\n @impl.implemented\n StopCurveSet(name)\n {\n const target = String(name ?? \"\");\n for (const curveSet of this.curveSets)\n {\n if ((curveSet?.GetName?.() ?? curveSet?.name) === target) curveSet?.Stop?.();\n }\n for (const child of this.effectChildren) child?.StopCurveSet?.(target);\n }\n\n /** Samples matching root and child curve sets at an explicit time. */\n @carbon.method\n @impl.implemented\n UpdateCurveSet(name, time)\n {\n const target = String(name ?? \"\");\n for (const curveSet of this.curveSets)\n {\n if ((curveSet?.GetName?.() ?? curveSet?.name) === target) curveSet?.Update?.(time, time);\n }\n for (const child of this.effectChildren) child?.UpdateCurveSet?.(target, time);\n }\n\n /** Returns the maximum duration of matching root and child curve sets. */\n @carbon.method\n @impl.implemented\n GetCurveSetDuration(name)\n {\n const target = String(name ?? \"\");\n let duration = 0;\n for (const curveSet of this.curveSets)\n {\n if ((curveSet?.GetName?.() ?? curveSet?.name) === target)\n {\n duration = Math.max(duration, Number(curveSet?.GetMaxCurveDuration?.() ?? 0));\n }\n }\n for (const child of this.effectChildren)\n {\n duration = Math.max(duration, Number(child?.GetCurveSetDuration?.(target) ?? 0));\n }\n return duration;\n }\n\n /** Returns the maximum named range duration in matching root and child sets. */\n @carbon.method\n @impl.implemented\n GetRangeDuration(name, rangeName)\n {\n const target = String(name ?? \"\");\n let duration = 0;\n for (const curveSet of this.curveSets)\n {\n if ((curveSet?.GetName?.() ?? curveSet?.name) === target)\n {\n duration = Math.max(duration, Number(curveSet?.GetRangeDuration?.(rangeName) ?? 0));\n }\n }\n for (const child of this.effectChildren)\n {\n duration = Math.max(duration, Number(child?.GetRangeDuration?.(target, rangeName) ?? 0));\n }\n return duration;\n }\n\n /** Collects the Carbon debug-option names and child options. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"The debug renderer/options collection is an injected engine-owned capability.\")\n GetDebugOptions(options = new Set())\n {\n options.add?.(\"Bounding Sphere\");\n options.add?.(\"Lights\");\n for (const observer of this.observers) observer?.GetDebugOptions?.(options);\n for (const child of this.effectChildren) child?.GetDebugOptions?.(options);\n return options;\n }\n\n /** Forwards root debug geometry to an injected debug renderer. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"The debug renderer is an injected engine-owned capability.\")\n RenderDebugInfo(renderer)\n {\n if (renderer?.HasOption?.(this, \"Bounding Sphere\"))\n {\n renderer?.DrawSphere?.(this, this.boundingSphereCenter, this.boundingSphereRadius, 8, \"wireframe\", 0xffff00ff);\n }\n for (const child of this.effectChildren) child?.RenderDebugInfo?.(renderer);\n if (renderer?.HasOption?.(this, \"Lights\"))\n {\n for (const light of this.lights) light?.RenderDebugInfo?.(renderer, this.#worldTransform);\n }\n for (const observer of this.observers) observer?.RenderDebugInfo?.(renderer);\n }\n\n /** Stores and propagates a controller variable to current and future members. */\n @carbon.method\n @impl.implemented\n SetControllerVariable(name, value)\n {\n const key = String(name ?? \"\");\n const next = Number(value);\n this.#controllerVariables.set(key, next);\n for (const controller of this.controllers) controller?.SetVariable?.(key, next);\n for (const child of this.effectChildren) child?.SetControllerVariable?.(key, next);\n }\n\n /** Propagates an event to controllers and effect children. */\n @carbon.method\n @impl.implemented\n HandleControllerEvent(name)\n {\n const eventName = String(name ?? \"\");\n for (const controller of this.controllers) controller?.HandleEvent?.(eventName);\n for (const child of this.effectChildren) child?.HandleControllerEvent?.(eventName);\n }\n\n /** Starts controllers on the root and its effect children. */\n @carbon.method\n @impl.implemented\n StartControllers()\n {\n for (const controller of this.controllers) controller?.Start?.();\n for (const child of this.effectChildren) child?.StartControllers?.();\n }\n\n /** Finds a named direct effect child. */\n @carbon.method\n @impl.implemented\n GetEffectChildByName(name)\n {\n const target = String(name ?? \"\");\n for (const child of this.effectChildren)\n {\n if ((child?.GetName?.() ?? child?.name ?? \"\") === target) return child;\n }\n return null;\n }\n\n /** Adds and initializes an effect child through Carbon's list-notify behavior. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Plain JavaScript arrays have no Blue IList notifications, so insertion behavior is explicit.\")\n AddToEffectChildrenList(child)\n {\n this.effectChildren.push(child);\n EveEffectRoot2.#ApplyControllerVariables(child, this.#controllerVariables, \"SetControllerVariable\");\n child?.StartControllers?.();\n return child;\n }\n\n /** Removes an effect child. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Plain JavaScript arrays have no Blue IList notifications, so removal behavior is explicit.\")\n RemoveFromEffectChildrenList(child)\n {\n const index = this.effectChildren.indexOf(child);\n if (index === -1) return false;\n this.effectChildren.splice(index, 1);\n return true;\n }\n\n /** Applies a shader option to every effect child. */\n @carbon.method\n @impl.implemented\n SetShaderOption(name, value)\n {\n for (const child of this.effectChildren) child?.SetShaderOption?.(name, value);\n }\n\n /** Finds a named observer or child-owned sound emitter. */\n @carbon.method\n @impl.implemented\n FindSoundEmitter(name)\n {\n const target = String(name ?? \"\");\n for (const observer of this.observers)\n {\n if ((observer?.name ?? \"\") === target)\n {\n return typeof observer.GetObserver === \"function\" ? observer.GetObserver() : observer.observer ?? null;\n }\n }\n for (const child of this.effectChildren)\n {\n const emitter = child?.FindSoundEmitter?.(target);\n if (emitter) return emitter;\n }\n return null;\n }\n\n /** Adds a placement observer. */\n @carbon.method\n @impl.implemented\n AddObserver(observer)\n {\n this.observers.push(observer);\n return observer;\n }\n\n /** Applies the mute state to effect children and placement observers. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"The explicit setter replaces Carbon's Blue field-notify callback.\")\n SetMute(isMute)\n {\n this.mute = !!isMute;\n for (const child of this.effectChildren) child?.SetMute?.(this.mute);\n for (const observer of this.observers) observer?.SetMute?.(this.mute);\n }\n\n /** Freezes every child at Carbon's high-detail LOD. */\n @carbon.method\n @impl.implemented\n FreezeHighDetailMesh()\n {\n this.lodLevel = Tr2Lod.TR2_LOD_HIGH;\n this.#changeLOD = false;\n for (const child of this.effectChildren) child?.ChangeLOD?.(this.lodLevel);\n }\n\n /** Propagates a procedural-container variable to every effect child. */\n @carbon.method\n @impl.implemented\n SetProceduralContainerVariable(name, value)\n {\n for (const child of this.effectChildren) child?.SetProceduralContainerVariable?.(name, value);\n }\n\n /**\n * Builds the per-frame child update parameters naming this root as the\n * space-object parent, carrying its display state and a copy of the current\n * root matrix.\n */\n #CreateChildUpdateParams()\n {\n const params = new EveChildUpdateParams();\n params.spaceObjectParent = this;\n params.isVisible = this.display;\n mat4.copy(params.localToWorldTransform, this.#lastUpdateMatrix);\n return params;\n }\n\n /**\n * Replays every stored controller variable onto a newly added controller or\n * effect child through the named setter, so late additions start with the same\n * state.\n */\n static #ApplyControllerVariables(target, variables, methodName)\n {\n const setter = target?.[methodName];\n if (typeof setter !== \"function\") return;\n for (const [name, value] of variables) setter.call(target, name, value);\n }\n\n /**\n * Reads a numeric value from the update context, preferring a getter method\n * and falling back to the named properties, and yields 0 when nothing supplies\n * it.\n */\n static #GetContextValue(context, methodName, ...propertyNames)\n {\n const method = context?.[methodName];\n if (typeof method === \"function\") return Number(method.call(context)) || 0;\n for (const propertyName of propertyNames)\n {\n if (context?.[propertyName] !== undefined && context?.[propertyName] !== null)\n {\n return Number(context[propertyName]) || 0;\n }\n }\n return 0;\n }\n\n /**\n * Samples a curve into out through whichever of Update or GetValueAt it\n * exposes, writing the fallback when there is no curve and copying back curves\n * that return a new array instead of filling out.\n */\n static #UpdateCurve(curve, time, out, fallback)\n {\n if (!curve)\n {\n for (let index = 0; index < out.length; index++) out[index] = fallback[index];\n return out;\n }\n let result;\n if (typeof curve.Update === \"function\") result = curve.Update(time, out);\n else if (typeof curve.GetValueAt === \"function\") result = curve.GetValueAt(time, out);\n if ((Array.isArray(result) || ArrayBuffer.isView(result)) && result !== out)\n {\n for (let index = 0; index < out.length; index++) out[index] = result[index];\n }\n return out;\n }\n\n /** Carbon's neutral hull data: full activation, unit bounding radius. */\n static #neutralShipData = Object.freeze([ 0, 1, 0, 1 ]);\n\n static #identity = mat4.create();\n static #centerTransform = mat4.create();\n static #localSphere = vec4.create();\n static #worldSphere = vec4.create();\n static #zero = vec3.create();\n static #translation = vec3.create();\n static #modelTranslation = vec3.create();\n static #missOffset = vec3.create();\n static #missDirection = vec3.create();\n static #identityRotation = quat.create();\n static #rotation = quat.create();\n static #modelRotation = quat.create();\n static #worldRotation = quat.create();\n static #noAlbedo = vec4.create();\n\n static Tr2Lod = Tr2Lod;\n\n}\n"],"names":["_EveEffectRoot","_identity","EveEffectRoot2","EveEntity","e","_init_effectChildren","_init_extra_effectChildren","_init_estimatedSize","_init_extra_estimatedSize","_init_lodLevel","_init_extra_lodLevel","_init_mute","_init_extra_mute","_init_display","_init_extra_display","_init_name","_init_extra_name","_init_dynamicLOD","_init_extra_dynamicLOD","_init_scaling","_init_extra_scaling","_init_rotation","_init_extra_rotation","_init_translation","_init_extra_translation","_init_duration","_init_extra_duration","_init_secondaryLightingEmissiveColor","_init_extra_secondaryLightingEmissiveColor","_init_curveSets","_init_extra_curveSets","_init_lights","_init_extra_lights","_init_externalParameters","_init_extra_externalParameters","_init_controllers","_init_extra_controllers","_init_observers","_init_extra_observers","_init_rotationCurve","_init_extra_rotationCurve","_init_secondaryLightingSphereRadius","_init_extra_secondaryLightingSphereRadius","_init_boundingSphereCenter","_init_extra_boundingSphereCenter","_init_boundingSphereRadius","_init_extra_boundingSphereRadius","_init_modelTranslationCurve","_init_extra_modelTranslationCurve","_init_modelRotationCurve","_init_extra_modelRotationCurve","_init_translationCurve","_init_extra_translationCurve","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","persist","list","read","float32","int32","schema","enum","notify","readwrite","boolean","string","vec3","quat","color","model","impl","adapted","reason","carbon","method","implemented","noop","effectChildren","estimatedSize","lodLevel","Tr2Lod","TR2_LOD_HIGH","mute","display","name","dynamicLOD","scaling","fromValues","rotation","create","translation","duration","secondaryLightingEmissiveColor","vec4","curveSets","lights","externalParameters","controllers","observers","rotationCurve","secondaryLightingSphereRadius","boundingSphereCenter","boundingSphereRadius","modelTranslationCurve","modelRotationCurve","translationCurve","Map","mat4","Initialize","controller","IsLinked","Link","AddController","push","RemoveController","index","indexOf","splice","Unlink","UpdateSyncronous","updateContext","time","UpdateWorldTransform","fromRotationTranslationScale","multiply","observer","Update","length","params","child","UpdateAsyncronous","frequency","threshold","Math","min","UpdateControllers","curveSet","controllerUpdateFrequency","UpdateVisibility","parentTransform","GetBoundingSphere","sph3","transformMat4","frustum","GetFrustum","IsSphereVisible","Number","GetPixelSizeAccross","oldLod","TR2_LOD_LOW","medium","low","TR2_LOD_MEDIUM","GetRenderables","out","ChangeLOD","updateFrequency","set","GetBoundingSphereRadius","fromRotationTranslation","UpdateModelCenterWorldPosition","GetModelCenterWorldPosition","GetLocalBoundingBox","_min","_max","GetLocalToWorldTransform","copy","GetWorldTransform","RegisterWithQuadRenderer","quadRenderer","AddQuadsToQuadRenderer","RegisterComponents","registry","GetComponentRegistry","RegisterComponent","EveComponentType","LightOwner","Register","UnRegisterComponents","UnRegister","GetLights","lightManager","transform","scale","hypot","light","AddLight","ClearLights","GetPerObjectStructs","vsData","RawData","psData","Zero","Set","vs","ps","RegisterSecondaryLightSource","manager","subarray","UnregisterSecondaryLightSource","Start","Play","PlayAllCurveSets","PlayCurveSets","Stop","StopAllCurveSets","StopCurveSets","GetDamageLocatorCount","GetDamageLocatorPosition","_index","_inWorldSpace","GetDamageLocatorDirection","GetImpactPosition","locator","_posPrev","posNow","epsilon","squaredDistance","HasImpactConfigurationShield","GetClosestDamageLocatorIndex","_position","GetGoodDamageLocatorIndex","GetRadius","CreateImpact","_damageLocatorIndex","_direction","_lifeTime","_size","UpdateImpact","_out","_impactIndex","GetWorldPosition","GetWorldRotation","getRotation","normalize","GetMissPosition","hit","source","subtract","directionLength","scaleAndAdd","dot","offsetLength","GetChildren","SetTransform","getScaling","getTranslation","PlayCurveSet","rangeName","target","String","GetName","PlayTimeRange","ResetTimeRange","StopCurveSet","UpdateCurveSet","GetCurveSetDuration","max","GetMaxCurveDuration","GetRangeDuration","GetDebugOptions","options","add","RenderDebugInfo","renderer","HasOption","DrawSphere","SetControllerVariable","value","key","next","SetVariable","HandleControllerEvent","eventName","HandleEvent","StartControllers","GetEffectChildByName","AddToEffectChildrenList","RemoveFromEffectChildrenList","SetShaderOption","FindSoundEmitter","GetObserver","emitter","AddObserver","SetMute","isMute","FreezeHighDetailMesh","SetProceduralContainerVariable","#CreateChildUpdateParams","EveChildUpdateParams","spaceObjectParent","isVisible","localToWorldTransform","#ApplyControllerVariables","variables","methodName","setter","call","#GetContextValue","context","propertyNames","propertyName","undefined","#UpdateCurve","curve","fallback","result","GetValueAt","Array","isArray","ArrayBuffer","isView","Object","freeze","constructor"],"mappings":"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"}
|
|
@@ -1,15 +1,21 @@
|
|
|
1
1
|
import { identity as _identity, applyDecs2311 as _applyDecs2311 } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
-
import { mat4 } from '@carbonenginejs/
|
|
3
|
-
import { quat } from '@carbonenginejs/
|
|
4
|
-
import { sph3 } from '@carbonenginejs/
|
|
5
|
-
import { vec3 } from '@carbonenginejs/
|
|
6
|
-
import { vec4 } from '@carbonenginejs/
|
|
7
|
-
import { io, type, carbon, impl } from '@carbonenginejs/
|
|
8
|
-
import { EveLODHelper
|
|
2
|
+
import { mat4 } from '@carbonenginejs/runtime-utils/mat4';
|
|
3
|
+
import { quat } from '@carbonenginejs/runtime-utils/quat';
|
|
4
|
+
import { sph3 } from '@carbonenginejs/runtime-utils/sph3';
|
|
5
|
+
import { vec3 } from '@carbonenginejs/runtime-utils/vec3';
|
|
6
|
+
import { vec4 } from '@carbonenginejs/runtime-utils/vec4';
|
|
7
|
+
import { io, type, carbon, impl } from '@carbonenginejs/runtime-utils/schema';
|
|
8
|
+
import { EveLODHelper } from '../EveLODHelper.js';
|
|
9
9
|
import { EveSpaceObject2 as _EveSpaceObject } from './EveSpaceObject2.js';
|
|
10
10
|
import { EveMissileWarhead as _EveMissileWarhead } from './EveMissileWarhead.js';
|
|
11
|
+
import { Tr2Lod } from '@carbonenginejs/runtime-utils/const/trinity';
|
|
11
12
|
|
|
12
13
|
let _initProto, _initClass, _init_warheads, _init_extra_warheads, _init_updateWarheads, _init_extra_updateWarheads, _init_target, _init_extra_target, _init_targetRadius, _init_extra_targetRadius, _init_explosionCallback, _init_extra_explosionCallback;
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* A missile in flight: the curve-driven ball path plus the warheads that ride
|
|
17
|
+
* it, own the targeting state and supply all of its renderables and bounds.
|
|
18
|
+
*/
|
|
13
19
|
let _EveMissile;
|
|
14
20
|
new class extends _identity {
|
|
15
21
|
static [class EveMissile extends _EveSpaceObject {
|
|
@@ -32,11 +38,22 @@ new class extends _identity {
|
|
|
32
38
|
#time = 0;
|
|
33
39
|
#estimatedTotalAliveTime = 1;
|
|
34
40
|
#lastValidSpeed = 0;
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* Runs the base initialization and silences all warhead particle emitting
|
|
44
|
+
* until launch.
|
|
45
|
+
*/
|
|
35
46
|
Initialize() {
|
|
36
47
|
super.Initialize();
|
|
37
48
|
for (const warhead of this.warheads) warhead?.EnableParticleEmitting?.(false);
|
|
38
49
|
return true;
|
|
39
50
|
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Arms the missile for a new flight: latches the launching ship's velocity and
|
|
54
|
+
* the estimated flying time, resets the flight clock, and silences warhead
|
|
55
|
+
* emitting.
|
|
56
|
+
*/
|
|
40
57
|
Start(shipVelocity, estimatedFlyingTime) {
|
|
41
58
|
vec3.copy(this.#inheritedVelocity, shipVelocity ?? _EveMissile.#zero);
|
|
42
59
|
this.#estimatedTotalAliveTime = Number(estimatedFlyingTime) || 0;
|
|
@@ -45,6 +62,14 @@ new class extends _identity {
|
|
|
45
62
|
vec3.copy(this.#inheritedStartVelocity, this.#inheritedVelocity);
|
|
46
63
|
this.#lastValidSpeed = 0;
|
|
47
64
|
}
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* Samples the flight path and its derivative to keep the estimated
|
|
68
|
+
* time-to-target current, then for each live warhead advances the state
|
|
69
|
+
* machine, hands it the target locator offset in missile space, integrates its
|
|
70
|
+
* flight and fires the explosion callback on detonation, and finally rebuilds
|
|
71
|
+
* the missile bounding sphere from the warheads.
|
|
72
|
+
*/
|
|
48
73
|
UpdateSyncronous(context) {
|
|
49
74
|
super.UpdateSyncronous(context);
|
|
50
75
|
const time = Number(context?.GetTime?.() ?? context?.currentTime ?? context?.time ?? 0);
|
|
@@ -95,6 +120,12 @@ new class extends _identity {
|
|
|
95
120
|
this.RebuildMissileBoundingSphere();
|
|
96
121
|
return true;
|
|
97
122
|
}
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* Runs each warhead's visibility pass against the missile world transform
|
|
126
|
+
* composed with that warhead's offset, and merges the warheads' LOD levels
|
|
127
|
+
* into the missile's.
|
|
128
|
+
*/
|
|
98
129
|
UpdateVisibility(context, _parentTransform = _EveMissile.#identity) {
|
|
99
130
|
for (const warhead of this.warheads) {
|
|
100
131
|
if (!warhead) continue;
|
|
@@ -104,15 +135,27 @@ new class extends _identity {
|
|
|
104
135
|
}
|
|
105
136
|
return true;
|
|
106
137
|
}
|
|
138
|
+
|
|
139
|
+
/** Collects only the warheads' renderables - the missile itself owns no mesh. */
|
|
107
140
|
GetRenderables(out = []) {
|
|
108
141
|
for (const warhead of this.warheads) warhead?.GetRenderables?.(out);
|
|
109
142
|
return out;
|
|
110
143
|
}
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* Writes the missile's world-space bounding sphere, built from the
|
|
147
|
+
* warhead-derived local sphere and the missile world transform.
|
|
148
|
+
*/
|
|
111
149
|
GetBoundingSphere(out = vec4.create()) {
|
|
112
150
|
vec4.set(_EveMissile.#localSphere, this.boundingSphereCenter[0], this.boundingSphereCenter[1], this.boundingSphereCenter[2], this.boundingSphereRadius);
|
|
113
151
|
sph3.transformMat4(out, _EveMissile.#localSphere, this.worldTransform);
|
|
114
152
|
return true;
|
|
115
153
|
}
|
|
154
|
+
|
|
155
|
+
/**
|
|
156
|
+
* Recomputes the missile's local bounding sphere as the union of its warheads'
|
|
157
|
+
* local spheres.
|
|
158
|
+
*/
|
|
116
159
|
RebuildMissileBoundingSphere() {
|
|
117
160
|
vec4.set(_EveMissile.#mergedSphere, 0, 0, 0, 0);
|
|
118
161
|
for (const warhead of this.warheads) {
|
|
@@ -123,6 +166,11 @@ new class extends _identity {
|
|
|
123
166
|
this.boundingSphereRadius = _EveMissile.#mergedSphere[3];
|
|
124
167
|
return true;
|
|
125
168
|
}
|
|
169
|
+
|
|
170
|
+
/**
|
|
171
|
+
* Returns null: the missile owns no renderable, so each warhead publishes its
|
|
172
|
+
* own per-object record.
|
|
173
|
+
*/
|
|
126
174
|
GetPerObjectData() {
|
|
127
175
|
return null;
|
|
128
176
|
}
|