@carbonenginejs/runtime 0.1.0-alpha.2 → 0.1.0-alpha.4
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/NOTICE +5 -4
- package/dist/audio/generated/audio/AudEventKey.js +2 -2
- package/dist/audio/generated/audio/AudEventKey.js.map +1 -1
- package/dist/audio/generated/audio/AudSettings.js +2 -2
- package/dist/audio/generated/audio/AudSettings.js.map +1 -1
- package/dist/audio/index.js +1 -1
- package/dist/audio/trinity/audio/AudEmitter.js +4 -5
- package/dist/audio/trinity/audio/AudEmitter.js.map +1 -1
- package/dist/audio/trinity/audio/AudEventCurve.js +14 -14
- package/dist/audio/trinity/audio/AudEventCurve.js.map +1 -1
- package/dist/audio/trinity/audio/AudGameObjResource.js +13 -25
- package/dist/audio/trinity/audio/AudGameObjResource.js.map +1 -1
- package/dist/audio/trinity/audio/AudManager.js +2 -2
- package/dist/audio/trinity/audio/AudManager.js.map +1 -1
- package/dist/audio/trinity/audio/AudParameter.js +7 -11
- package/dist/audio/trinity/audio/AudParameter.js.map +1 -1
- package/dist/audio/trinity/audio/AudUIPlayer.js +2 -2
- package/dist/audio/trinity/audio/AudUIPlayer.js.map +1 -1
- package/dist/audio/trinity/audio/AudioCurveSetDriver.js +2 -2
- package/dist/audio/trinity/audio/AudioCurveSetDriver.js.map +1 -1
- package/dist/audio/trinity/audio/StretchAudio.js +2 -2
- package/dist/audio/trinity/audio/StretchAudio.js.map +1 -1
- package/dist/audio/trinity/index.js +1 -1
- package/dist/audio/trinity/trinityAudio/Tr2AudioStretchAuto.js +2 -2
- package/dist/audio/trinity/trinityAudio/Tr2AudioStretchAuto.js.map +1 -1
- package/dist/audio/trinity/trinityAudio/Tr2AudioStretchBase.js +2 -2
- package/dist/audio/trinity/trinityAudio/Tr2AudioStretchBase.js.map +1 -1
- package/dist/audio/trinity/trinityAudioApi/ITr2AudEmitter.js +1 -37
- package/dist/audio/trinity/trinityAudioApi/ITr2AudEmitter.js.map +1 -1
- package/dist/character/incarna/curves/Tr2ColorCurve.js +2 -2
- package/dist/character/incarna/curves/Tr2ColorCurve.js.map +1 -1
- package/dist/character/incarna/curves/Tr2ColorKey.js +2 -2
- package/dist/character/incarna/curves/Tr2ColorKey.js.map +1 -1
- package/dist/character/incarna/curves/Tr2ScalarCurve.js +2 -2
- package/dist/character/incarna/curves/Tr2ScalarCurve.js.map +1 -1
- package/dist/character/incarna/curves/Tr2ScalarKey.js +2 -2
- package/dist/character/incarna/curves/Tr2ScalarKey.js.map +1 -1
- package/dist/character/incarna/interior/Tr2InteriorCell.js +2 -2
- package/dist/character/incarna/interior/Tr2InteriorCell.js.map +1 -1
- package/dist/character/library/CjsCharacterLibrary.js +9 -16
- package/dist/character/library/CjsCharacterLibrary.js.map +1 -1
- package/dist/character/library/CjsCharacterLibraryDocuments.js +20 -4
- package/dist/character/library/CjsCharacterLibraryDocuments.js.map +1 -1
- package/dist/character/model/CjsCharacterRecord.js +2 -2
- package/dist/character/model/CjsCharacterRecord.js.map +1 -1
- package/dist/character/model/activity/CjsCharacterArchetype.js +2 -2
- package/dist/character/model/activity/CjsCharacterArchetype.js.map +1 -1
- package/dist/character/model/appearance/CjsCharacterColorLocation.js +2 -2
- package/dist/character/model/appearance/CjsCharacterColorLocation.js.map +1 -1
- package/dist/character/model/appearance/CjsCharacterColorName.js +2 -2
- package/dist/character/model/appearance/CjsCharacterColorName.js.map +1 -1
- package/dist/character/model/appearance/CjsCharacterColorSelection.js +2 -2
- package/dist/character/model/appearance/CjsCharacterColorSelection.js.map +1 -1
- package/dist/character/model/appearance/CjsCharacterSculptSelection.js +2 -2
- package/dist/character/model/appearance/CjsCharacterSculptSelection.js.map +1 -1
- package/dist/character/model/appearance/CjsCharacterSculptingLocation.js +2 -2
- package/dist/character/model/appearance/CjsCharacterSculptingLocation.js.map +1 -1
- package/dist/character/model/behavior/CjsCharacterAvatarBehavior.js +2 -2
- package/dist/character/model/behavior/CjsCharacterAvatarBehavior.js.map +1 -1
- package/dist/character/model/catalog/CjsCharacterColorValue.js +2 -2
- package/dist/character/model/catalog/CjsCharacterColorValue.js.map +1 -1
- package/dist/character/model/catalog/CjsCharacterDefinition.js +2 -2
- package/dist/character/model/catalog/CjsCharacterDefinition.js.map +1 -1
- package/dist/character/model/catalog/CjsCharacterMaterialProfile.js +2 -2
- package/dist/character/model/catalog/CjsCharacterMaterialProfile.js.map +1 -1
- package/dist/character/model/catalog/CjsCharacterModifierReference.js +2 -2
- package/dist/character/model/catalog/CjsCharacterModifierReference.js.map +1 -1
- package/dist/character/model/catalog/CjsCharacterPartMetadata.js +2 -2
- package/dist/character/model/catalog/CjsCharacterPartMetadata.js.map +1 -1
- package/dist/character/model/catalog/CjsCharacterPartModelBundle.js +2 -2
- package/dist/character/model/catalog/CjsCharacterPartModelBundle.js.map +1 -1
- package/dist/character/model/catalog/CjsCharacterPartSource.js +2 -2
- package/dist/character/model/catalog/CjsCharacterPartSource.js.map +1 -1
- package/dist/character/model/catalog/CjsCharacterPartSourceVersion.js +2 -2
- package/dist/character/model/catalog/CjsCharacterPartSourceVersion.js.map +1 -1
- package/dist/character/model/catalog/CjsCharacterPartType.js +2 -2
- package/dist/character/model/catalog/CjsCharacterPartType.js.map +1 -1
- package/dist/character/model/catalog/CjsCharacterProjectionProfile.js +2 -2
- package/dist/character/model/catalog/CjsCharacterProjectionProfile.js.map +1 -1
- package/dist/character/model/catalog/CjsCharacterRecipeEntry.js +2 -2
- package/dist/character/model/catalog/CjsCharacterRecipeEntry.js.map +1 -1
- package/dist/character/model/catalog/CjsCharacterRecipeProfile.js +2 -2
- package/dist/character/model/catalog/CjsCharacterRecipeProfile.js.map +1 -1
- package/dist/character/model/catalog/CjsCharacterTextureMetadata.js +2 -2
- package/dist/character/model/catalog/CjsCharacterTextureMetadata.js.map +1 -1
- package/dist/character/model/composition/CjsCharacterModifierLocation.js +2 -2
- package/dist/character/model/composition/CjsCharacterModifierLocation.js.map +1 -1
- package/dist/character/model/composition/CjsCharacterModifierSelection.js +2 -2
- package/dist/character/model/composition/CjsCharacterModifierSelection.js.map +1 -1
- package/dist/character/model/creation/CjsCharacterPaperdoll.js +2 -2
- package/dist/character/model/creation/CjsCharacterPaperdoll.js.map +1 -1
- package/dist/character/model/demographics/CjsCharacterAncestry.js +2 -2
- package/dist/character/model/demographics/CjsCharacterAncestry.js.map +1 -1
- package/dist/character/model/demographics/CjsCharacterBloodline.js +2 -2
- package/dist/character/model/demographics/CjsCharacterBloodline.js.map +1 -1
- package/dist/character/model/demographics/CjsCharacterRace.js +2 -2
- package/dist/character/model/demographics/CjsCharacterRace.js.map +1 -1
- package/dist/character/model/planning/CjsCharacterAppearanceBinding.js +2 -2
- package/dist/character/model/planning/CjsCharacterAppearanceBinding.js.map +1 -1
- package/dist/character/model/planning/CjsCharacterAppearanceColorSelection.js +2 -2
- package/dist/character/model/planning/CjsCharacterAppearanceColorSelection.js.map +1 -1
- package/dist/character/model/planning/CjsCharacterAppearanceDiagnostic.js +2 -2
- package/dist/character/model/planning/CjsCharacterAppearanceDiagnostic.js.map +1 -1
- package/dist/character/model/planning/CjsCharacterAppearanceLayer.js +2 -2
- package/dist/character/model/planning/CjsCharacterAppearanceLayer.js.map +1 -1
- package/dist/character/model/planning/CjsCharacterAppearancePlan.js +2 -2
- package/dist/character/model/planning/CjsCharacterAppearancePlan.js.map +1 -1
- package/dist/character/model/planning/CjsCharacterAppearanceSelection.js +2 -2
- package/dist/character/model/planning/CjsCharacterAppearanceSelection.js.map +1 -1
- package/dist/character/model/planning/CjsCharacterBindingAlpha.js +2 -2
- package/dist/character/model/planning/CjsCharacterBindingAlpha.js.map +1 -1
- package/dist/character/model/planning/CjsCharacterCompositionInput.js +2 -2
- package/dist/character/model/planning/CjsCharacterCompositionInput.js.map +1 -1
- package/dist/character/model/planning/CjsCharacterCompositionPass.js +2 -2
- package/dist/character/model/planning/CjsCharacterCompositionPass.js.map +1 -1
- package/dist/character/model/planning/CjsCharacterCompositionTarget.js +2 -2
- package/dist/character/model/planning/CjsCharacterCompositionTarget.js.map +1 -1
- package/dist/character/model/planning/CjsCharacterCoverage.js +2 -2
- package/dist/character/model/planning/CjsCharacterCoverage.js.map +1 -1
- package/dist/character/model/planning/CjsCharacterMorphTargetWeight.js +2 -2
- package/dist/character/model/planning/CjsCharacterMorphTargetWeight.js.map +1 -1
- package/dist/character/model/planning/CjsCharacterOrigin.js +2 -2
- package/dist/character/model/planning/CjsCharacterOrigin.js.map +1 -1
- package/dist/character/model/planning/CjsCharacterResolvedPart.js +2 -2
- package/dist/character/model/planning/CjsCharacterResolvedPart.js.map +1 -1
- package/dist/character/model/planning/CjsCharacterTextureAsset.js +2 -2
- package/dist/character/model/planning/CjsCharacterTextureAsset.js.map +1 -1
- package/dist/character/model/planning/CjsCharacterTextureChannel.js +2 -2
- package/dist/character/model/planning/CjsCharacterTextureChannel.js.map +1 -1
- package/dist/character/model/resources/CjsCharacterPortraitResource.js +2 -2
- package/dist/character/model/resources/CjsCharacterPortraitResource.js.map +1 -1
- package/dist/character/model/resources/CjsCharacterResource.js +2 -2
- package/dist/character/model/resources/CjsCharacterResource.js.map +1 -1
- package/dist/character/trinity/interior/Tr2IntSkinnedObject.js +6 -5
- package/dist/character/trinity/interior/Tr2IntSkinnedObject.js.map +1 -1
- package/dist/character/trinity/interior/Tr2InteriorLightSource.js +2 -2
- package/dist/character/trinity/interior/Tr2InteriorLightSource.js.map +1 -1
- package/dist/character/trinity/interior/Tr2InteriorPlaceable.js +4 -5
- package/dist/character/trinity/interior/Tr2InteriorPlaceable.js.map +1 -1
- package/dist/character/trinity/interior/Tr2InteriorScene.js +2 -2
- package/dist/character/trinity/interior/Tr2InteriorScene.js.map +1 -1
- package/dist/character/trinity/trinityCore/Tr2GStateAnimation.js +2 -2
- package/dist/character/trinity/trinityCore/Tr2GStateAnimation.js.map +1 -1
- package/dist/character/trinity/trinityCore/Tr2GStateParameter.js +2 -2
- package/dist/character/trinity/trinityCore/Tr2GStateParameter.js.map +1 -1
- package/dist/character/trinity/trinityCore/Tr2Model.js +2 -2
- package/dist/character/trinity/trinityCore/Tr2Model.js.map +1 -1
- package/dist/character/trinity/trinityCore/Tr2SkinnedModel.js +21 -10
- package/dist/character/trinity/trinityCore/Tr2SkinnedModel.js.map +1 -1
- package/dist/character/trinity/trinityCore/Tr2SkinnedObject.js +64 -57
- package/dist/character/trinity/trinityCore/Tr2SkinnedObject.js.map +1 -1
- package/dist/character/trinity/trinityCore/Tr2SkinnedObjectLod.js +1 -1
- package/dist/character/trinity/trinityCore/Tr2SkinnedObjectLod.js.map +1 -1
- package/dist/character/trinity/wod/WodBakingScene.js +2 -2
- package/dist/character/trinity/wod/WodBakingScene.js.map +1 -1
- package/dist/core/CjsLibrary.js +32 -685
- package/dist/core/CjsLibrary.js.map +1 -1
- package/dist/core/index.js +1 -2
- package/dist/core/index.js.map +1 -1
- package/dist/global/blue/BeInfo.js +95 -0
- package/dist/global/blue/BeInfo.js.map +1 -0
- package/dist/global/blue/CcpDateTime.js +53 -0
- package/dist/global/blue/CcpDateTime.js.map +1 -0
- package/dist/global/blue/CcpTime.js +148 -0
- package/dist/global/blue/CcpTime.js.map +1 -0
- package/dist/global/blue/CjsBlueOS.js +301 -0
- package/dist/global/blue/CjsBlueOS.js.map +1 -0
- package/dist/global/blue/CjsBluePaths.js +97 -0
- package/dist/global/blue/CjsBluePaths.js.map +1 -0
- package/dist/global/blue/IBlueDynamicResourceConstructor.js +29 -0
- package/dist/global/blue/IBlueDynamicResourceConstructor.js.map +1 -0
- package/dist/global/blue/IBlueEvents.js +34 -0
- package/dist/global/blue/IBlueEvents.js.map +1 -0
- package/dist/global/blue/IBlueOS.js +132 -0
- package/dist/global/blue/IBlueOS.js.map +1 -0
- package/dist/global/blue/IBluePaths.js +72 -0
- package/dist/global/blue/IBluePaths.js.map +1 -0
- package/dist/global/blue/IBlueResMan.js +93 -0
- package/dist/global/blue/IBlueResMan.js.map +1 -0
- package/dist/global/blue/IBlueResManNotifications.js +51 -0
- package/dist/global/blue/IBlueResManNotifications.js.map +1 -0
- package/dist/global/blue/ICatchupTicks.js +25 -0
- package/dist/global/blue/ICatchupTicks.js.map +1 -0
- package/dist/global/blue/IInitialize.js +47 -0
- package/dist/global/blue/IInitialize.js.map +1 -0
- package/dist/global/blue/IListNotify.js +44 -0
- package/dist/global/blue/IListNotify.js.map +1 -0
- package/dist/global/blue/INotify.js +65 -0
- package/dist/global/blue/INotify.js.map +1 -0
- package/dist/global/blue/ISimTimeRebaseNotify.js +28 -0
- package/dist/global/blue/ISimTimeRebaseNotify.js.map +1 -0
- package/dist/global/blue/IVariableTicker.js +24 -0
- package/dist/global/blue/IVariableTicker.js.map +1 -0
- package/dist/global/blue/blue.js +61 -0
- package/dist/global/blue/blue.js.map +1 -0
- package/dist/global/blue/enums/CjsBlueEnumRegistry.js +173 -0
- package/dist/global/blue/enums/CjsBlueEnumRegistry.js.map +1 -0
- package/dist/global/blue/index.js +19 -0
- package/dist/global/blue/index.js.map +1 -1
- package/dist/global/blue/registerTrinityEnums.js +43 -0
- package/dist/global/blue/registerTrinityEnums.js.map +1 -0
- package/dist/global/compose/abstract.js +81 -0
- package/dist/global/compose/abstract.js.map +1 -0
- package/dist/global/compose/interface.js +131 -26
- package/dist/global/compose/interface.js.map +1 -1
- package/dist/global/compose/notify.js +10 -1
- package/dist/global/compose/notify.js.map +1 -1
- package/dist/global/compose/values.js +116 -53
- package/dist/global/compose/values.js.map +1 -1
- package/dist/global/consts/blue.js +73 -0
- package/dist/global/consts/blue.js.map +1 -0
- package/dist/global/consts/graphics/index.js +1 -1
- package/dist/global/consts/graphics/trinityEnums.js +19 -7
- package/dist/global/consts/graphics/trinityEnums.js.map +1 -1
- package/dist/global/consts/index.js +2 -1
- package/dist/global/consts/index.js.map +1 -1
- package/dist/global/consts/trinity.js.map +1 -1
- package/dist/global/contracts/ITr2BoundingBox.js +1 -34
- package/dist/global/contracts/ITr2BoundingBox.js.map +1 -1
- package/dist/global/contracts/ITr2RenderNode.js +1 -27
- package/dist/global/contracts/ITr2RenderNode.js.map +1 -1
- package/dist/global/contracts/index.js +2 -4
- package/dist/global/contracts/index.js.map +1 -1
- package/dist/global/index.js +23 -5
- package/dist/global/index.js.map +1 -1
- package/dist/global/model/CjsModel.js +82 -99
- package/dist/global/model/CjsModel.js.map +1 -1
- package/dist/global/model/CjsModelState.js +0 -15
- package/dist/global/model/CjsModelState.js.map +1 -1
- package/dist/global/model/document/CjsDocumentHydrator.js +5 -1
- package/dist/global/model/document/CjsDocumentHydrator.js.map +1 -1
- package/dist/global/model/index.js +1 -1
- package/dist/global/schema/CjsSchema.js +275 -69
- package/dist/global/schema/CjsSchema.js.map +1 -1
- package/dist/global/schema/hydration.js +10 -8
- package/dist/global/schema/hydration.js.map +1 -1
- package/dist/global/schema/index.js +4 -3
- package/dist/global/schema/index.js.map +1 -1
- package/dist/global/schema/types/carbonTypes.js +1 -1
- package/dist/global/schema/types/carbonTypes.js.map +1 -1
- package/dist/global/utils/bytes.js +2 -0
- package/dist/global/utils/bytes.js.map +1 -1
- package/dist/global/utils/path.js +30 -1
- package/dist/global/utils/path.js.map +1 -1
- package/dist/index.js +59 -24
- package/dist/index.js.map +1 -1
- package/dist/resource/CjsResMan.js +206 -43
- package/dist/resource/CjsResMan.js.map +1 -1
- package/dist/resource/CjsResource.js +4 -1
- package/dist/resource/CjsResource.js.map +1 -1
- package/dist/resource/format/CjsBlueReader.js +8 -2
- package/dist/resource/format/CjsBlueReader.js.map +1 -1
- package/dist/resource/format/CjsResourceProbe.js +15 -16
- package/dist/resource/format/CjsResourceProbe.js.map +1 -1
- package/dist/resource/format/carbonEffect/carbonEffectResourceTransform.js +132 -75
- package/dist/resource/format/carbonEffect/carbonEffectResourceTransform.js.map +1 -1
- package/dist/resource/formats/black/core/CjsBlackPropertyReaders.js +26 -0
- package/dist/resource/formats/black/core/CjsBlackPropertyReaders.js.map +1 -1
- package/dist/resource/formats/black/core/CjsBlackSchemaRegistry.js +2 -1
- package/dist/resource/formats/black/core/CjsBlackSchemaRegistry.js.map +1 -1
- package/dist/resource/formats/black/core/black-schema-v1-2026-09-19.json.js +4 -0
- package/dist/resource/formats/black/core/black-schema-v1-2026-09-19.json.js.map +1 -0
- package/dist/resource/formats/black/core/blackDefinitions.js +1 -1
- package/dist/resource/formats/black/core/blackDefinitions.js.map +1 -1
- package/dist/resource/formats/black/core/blackSchema.js +1 -1
- package/dist/resource/formats/dds/CjsDdsFormat.js +50 -1
- package/dist/resource/formats/dds/CjsDdsFormat.js.map +1 -1
- package/dist/resource/formats/dds/core/helpers.js +51 -5
- package/dist/resource/formats/dds/core/helpers.js.map +1 -1
- package/dist/resource/formats/fsd/64/readers/CjsFsd64SchemaFrontierGraphicIds.js +94 -0
- package/dist/resource/formats/fsd/64/readers/CjsFsd64SchemaFrontierGraphicIds.js.map +1 -0
- package/dist/resource/formats/fsd/64/readers/CjsFsd64SchemaFrontierTypes.js +189 -0
- package/dist/resource/formats/fsd/64/readers/CjsFsd64SchemaFrontierTypes.js.map +1 -0
- package/dist/resource/formats/fsd/64/readers/index.js +2 -0
- package/dist/resource/formats/fsd/64/readers/index.js.map +1 -1
- package/dist/resource/formats/hlsl/core/detailMapFamily.js +18 -92
- package/dist/resource/formats/hlsl/core/detailMapFamily.js.map +1 -1
- package/dist/resource/formats/hlsl/core/textureArrayFamilies.js +285 -0
- package/dist/resource/formats/hlsl/core/textureArrayFamilies.js.map +1 -0
- package/dist/resource/formats/pickle/CjsPickleFormat.js +34 -14
- package/dist/resource/formats/pickle/CjsPickleFormat.js.map +1 -1
- package/dist/resource/formats/pickle/core/CjsPickleProtocol0Reader.js +60 -451
- package/dist/resource/formats/pickle/core/CjsPickleProtocol0Reader.js.map +1 -1
- package/dist/resource/formats/pickle/core/CjsPickleProtocol4Reader.js +407 -0
- package/dist/resource/formats/pickle/core/CjsPickleProtocol4Reader.js.map +1 -0
- package/dist/resource/formats/pickle/core/pickleCommon.js +671 -0
- package/dist/resource/formats/pickle/core/pickleCommon.js.map +1 -0
- package/dist/resource/formats/red/core/blackDefinitions.js +1 -1
- package/dist/resource/formats/webgl/core/effectPackage.js +85 -7
- package/dist/resource/formats/webgl/core/effectPackage.js.map +1 -1
- package/dist/resource/formats/webgl/core/glsl/DxbcGlslEmitter.js +666 -565
- package/dist/resource/formats/webgl/core/glsl/DxbcGlslEmitter.js.map +1 -1
- package/dist/resource/formats/webgl/core/glslBackendBodySet.js +4 -4
- package/dist/resource/formats/webgl/core/glslBackendBodySet.js.map +1 -1
- package/dist/resource/formats/webgl/core/helpers.js +2 -2
- package/dist/resource/formats/webgl/core/helpers.js.map +1 -1
- package/dist/resource/geometry/TriGeometryRes.js +61 -7
- package/dist/resource/geometry/TriGeometryRes.js.map +1 -1
- package/dist/resource/geometry/granny/Tr2GrannyIntersectionResult.js +11 -11
- package/dist/resource/geometry/granny/Tr2GrannyIntersectionResult.js.map +1 -1
- package/dist/resource/index.js +11 -0
- package/dist/resource/index.js.map +1 -1
- package/dist/resource/shader/Tr2EffectRes.js +2 -3
- package/dist/resource/shader/Tr2EffectRes.js.map +1 -1
- package/dist/resource/shader/Tr2MaterialArea.js +3 -3
- package/dist/resource/shader/Tr2MaterialArea.js.map +1 -1
- package/dist/resource/shader/Tr2MaterialMesh.js +2 -2
- package/dist/resource/shader/Tr2MaterialMesh.js.map +1 -1
- package/dist/resource/shader/Tr2MaterialRes.js +3 -3
- package/dist/resource/shader/Tr2MaterialRes.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2EffectLibrary.js +2 -2
- package/dist/resource/shader/reflection/Tr2EffectLibrary.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2EffectStageInput.js +2 -2
- package/dist/resource/shader/reflection/Tr2EffectStageInput.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2Pass.js +4 -4
- package/dist/resource/shader/reflection/Tr2Pass.js.map +1 -1
- package/dist/resource/texture/CjsTextureArrayRes.js.map +1 -1
- package/dist/resource/texture/SolidColorTextureConstructor.js +46 -0
- package/dist/resource/texture/SolidColorTextureConstructor.js.map +1 -0
- package/dist/resource/texture/Tr2ImageRes.js +3 -4
- package/dist/resource/texture/Tr2ImageRes.js.map +1 -1
- package/dist/resource/texture/Tr2TextureLodManager.js +0 -1
- package/dist/resource/texture/Tr2TextureLodManager.js.map +1 -1
- package/dist/resource/texture/Tr2TexturePackChannel.js +4 -4
- package/dist/resource/texture/Tr2TexturePackChannel.js.map +1 -1
- package/dist/resource/texture/Tr2TexturePipeline.js +3 -4
- package/dist/resource/texture/Tr2TexturePipeline.js.map +1 -1
- package/dist/resource/texture/Tr2TexturePipelineStepCompress.js +5 -5
- package/dist/resource/texture/Tr2TexturePipelineStepCompress.js.map +1 -1
- package/dist/resource/texture/Tr2TexturePipelineStepLimitSize.js +3 -3
- package/dist/resource/texture/Tr2TexturePipelineStepLimitSize.js.map +1 -1
- package/dist/resource/texture/Tr2TexturePipelineStepLoad.js +2 -2
- package/dist/resource/texture/Tr2TexturePipelineStepLoad.js.map +1 -1
- package/dist/resource/texture/Tr2TexturePipelineStepPack.js +6 -6
- package/dist/resource/texture/Tr2TexturePipelineStepPack.js.map +1 -1
- package/dist/resource/texture/TriTextureRes.js +65 -21
- package/dist/resource/texture/TriTextureRes.js.map +1 -1
- package/dist/resource/texture/index.js +2 -0
- package/dist/resource/texture/index.js.map +1 -1
- package/dist/resource/texture/solidColorTexture.js +111 -0
- package/dist/resource/texture/solidColorTexture.js.map +1 -0
- package/dist/resource/video/AudioMetadata.js +41 -0
- package/dist/resource/video/AudioMetadata.js.map +1 -0
- package/dist/resource/video/IAudioSink.js +51 -0
- package/dist/resource/video/IAudioSink.js.map +1 -0
- package/dist/resource/video/IEncodedFrame.js +52 -0
- package/dist/resource/video/IEncodedFrame.js.map +1 -0
- package/dist/resource/video/IVideoContainerParser.js +70 -0
- package/dist/resource/video/IVideoContainerParser.js.map +1 -0
- package/dist/resource/video/IVideoDecoder.js +36 -0
- package/dist/resource/video/IVideoDecoder.js.map +1 -0
- package/dist/resource/video/PcmFrame.js +33 -0
- package/dist/resource/video/PcmFrame.js.map +1 -0
- package/dist/resource/video/VideoFrame.js +45 -0
- package/dist/resource/video/VideoFrame.js.map +1 -0
- package/dist/resource/video/VideoMetadata.js +34 -0
- package/dist/resource/video/VideoMetadata.js.map +1 -0
- package/dist/resource/video/enums.js +30 -0
- package/dist/resource/video/enums.js.map +1 -0
- package/dist/sof/EveSOF.js +176 -176
- package/dist/sof/EveSOF.js.map +1 -1
- package/dist/sof/EveSOFDNA.js +5 -1
- package/dist/sof/EveSOFDNA.js.map +1 -1
- package/dist/sof/EveSOFData.js +2 -2
- package/dist/sof/EveSOFData.js.map +1 -1
- package/dist/sof/faction/EveSOFDataFaction.js +2 -2
- package/dist/sof/faction/EveSOFDataFaction.js.map +1 -1
- package/dist/sof/faction/EveSOFDataFactionChild.js +2 -2
- package/dist/sof/faction/EveSOFDataFactionChild.js.map +1 -1
- package/dist/sof/faction/EveSOFDataFactionColorSet.js +189 -3
- package/dist/sof/faction/EveSOFDataFactionColorSet.js.map +1 -1
- package/dist/sof/faction/EveSOFDataFactionHullArea.js +2 -2
- package/dist/sof/faction/EveSOFDataFactionHullArea.js.map +1 -1
- package/dist/sof/faction/EveSOFDataFactionPlaneSet.js +2 -2
- package/dist/sof/faction/EveSOFDataFactionPlaneSet.js.map +1 -1
- package/dist/sof/faction/EveSOFDataFactionSpotlightSet.js +2 -2
- package/dist/sof/faction/EveSOFDataFactionSpotlightSet.js.map +1 -1
- package/dist/sof/faction/EveSOFDataFactionVisibilityGroupSet.js +2 -2
- package/dist/sof/faction/EveSOFDataFactionVisibilityGroupSet.js.map +1 -1
- package/dist/sof/generic/EveSOFDataGeneric.js +234 -230
- package/dist/sof/generic/EveSOFDataGeneric.js.map +1 -1
- package/dist/sof/generic/EveSOFDataGenericDamage.js +2 -2
- package/dist/sof/generic/EveSOFDataGenericDamage.js.map +1 -1
- package/dist/sof/generic/EveSOFDataGenericDecalShader.js +2 -2
- package/dist/sof/generic/EveSOFDataGenericDecalShader.js.map +1 -1
- package/dist/sof/generic/EveSOFDataGenericHullCategory.js +27 -23
- package/dist/sof/generic/EveSOFDataGenericHullCategory.js.map +1 -1
- package/dist/sof/generic/EveSOFDataGenericHullDamage.js +2 -2
- package/dist/sof/generic/EveSOFDataGenericHullDamage.js.map +1 -1
- package/dist/sof/generic/EveSOFDataGenericShader.js +2 -2
- package/dist/sof/generic/EveSOFDataGenericShader.js.map +1 -1
- package/dist/sof/generic/EveSOFDataGenericString.js +2 -2
- package/dist/sof/generic/EveSOFDataGenericString.js.map +1 -1
- package/dist/sof/generic/EveSOFDataGenericSwarm.js +2 -2
- package/dist/sof/generic/EveSOFDataGenericSwarm.js.map +1 -1
- package/dist/sof/generic/EveSOFDataGenericVariant.js +2 -2
- package/dist/sof/generic/EveSOFDataGenericVariant.js.map +1 -1
- package/dist/sof/generic/EveSOFDataVisibilityGroup.js +2 -2
- package/dist/sof/generic/EveSOFDataVisibilityGroup.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHull.js +56 -3
- package/dist/sof/hull/EveSOFDataHull.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullAnimation.js +2 -2
- package/dist/sof/hull/EveSOFDataHullAnimation.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullArea.js +58 -54
- package/dist/sof/hull/EveSOFDataHullArea.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullBanner.js +109 -3
- package/dist/sof/hull/EveSOFDataHullBanner.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullBannerLight.js +2 -2
- package/dist/sof/hull/EveSOFDataHullBannerLight.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullBannerSet.js +2 -2
- package/dist/sof/hull/EveSOFDataHullBannerSet.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullBannerSetItem.js +109 -3
- package/dist/sof/hull/EveSOFDataHullBannerSetItem.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullBooster.js +2 -2
- package/dist/sof/hull/EveSOFDataHullBooster.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullBoosterItem.js +2 -2
- package/dist/sof/hull/EveSOFDataHullBoosterItem.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullChild.js +55 -50
- package/dist/sof/hull/EveSOFDataHullChild.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullChildSet.js +2 -2
- package/dist/sof/hull/EveSOFDataHullChildSet.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullChildSetItem.js +51 -46
- package/dist/sof/hull/EveSOFDataHullChildSetItem.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullController.js +2 -2
- package/dist/sof/hull/EveSOFDataHullController.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullDecalSet.js +2 -2
- package/dist/sof/hull/EveSOFDataHullDecalSet.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullDecalSetItem.js +45 -3
- package/dist/sof/hull/EveSOFDataHullDecalSetItem.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullHazeSet.js +21 -3
- package/dist/sof/hull/EveSOFDataHullHazeSet.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullHazeSetItem.js +47 -43
- package/dist/sof/hull/EveSOFDataHullHazeSetItem.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullLightSet.js +2 -2
- package/dist/sof/hull/EveSOFDataHullLightSet.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullLightSetItem.js +4 -2
- package/dist/sof/hull/EveSOFDataHullLightSetItem.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullLightSetSpotLight.js +2 -2
- package/dist/sof/hull/EveSOFDataHullLightSetSpotLight.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullLightSetTexturedPointLight.js +2 -2
- package/dist/sof/hull/EveSOFDataHullLightSetTexturedPointLight.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullLocator.js +2 -2
- package/dist/sof/hull/EveSOFDataHullLocator.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullLocatorSet.js +2 -2
- package/dist/sof/hull/EveSOFDataHullLocatorSet.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullLocatorSetGroup.js +2 -2
- package/dist/sof/hull/EveSOFDataHullLocatorSetGroup.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullPlaneSet.js +29 -3
- package/dist/sof/hull/EveSOFDataHullPlaneSet.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullPlaneSetItem.js +81 -75
- package/dist/sof/hull/EveSOFDataHullPlaneSetItem.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullSoundEmitter.js +2 -2
- package/dist/sof/hull/EveSOFDataHullSoundEmitter.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullSpotlightSet.js +2 -2
- package/dist/sof/hull/EveSOFDataHullSpotlightSet.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullSpotlightSetItem.js +45 -41
- package/dist/sof/hull/EveSOFDataHullSpotlightSetItem.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullSpriteLineSet.js +2 -2
- package/dist/sof/hull/EveSOFDataHullSpriteLineSet.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullSpriteLineSetItem.js +70 -66
- package/dist/sof/hull/EveSOFDataHullSpriteLineSetItem.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullSpriteSet.js +2 -2
- package/dist/sof/hull/EveSOFDataHullSpriteSet.js.map +1 -1
- package/dist/sof/hull/EveSOFDataHullSpriteSetItem.js +45 -41
- package/dist/sof/hull/EveSOFDataHullSpriteSetItem.js.map +1 -1
- package/dist/sof/hull/EveSOFDataMultiHullDecalIndexBuffers.js +2 -2
- package/dist/sof/hull/EveSOFDataMultiHullDecalIndexBuffers.js.map +1 -1
- package/dist/sof/layout/EveSOFDataDistributionDepletionCounter.js +2 -2
- package/dist/sof/layout/EveSOFDataDistributionDepletionCounter.js.map +1 -1
- package/dist/sof/layout/EveSOFDataHullExtensionBucket.js +2 -2
- package/dist/sof/layout/EveSOFDataHullExtensionBucket.js.map +1 -1
- package/dist/sof/layout/EveSOFDataHullExtensionPlacement.js +2 -2
- package/dist/sof/layout/EveSOFDataHullExtensionPlacement.js.map +1 -1
- package/dist/sof/layout/EveSOFDataHullExtensionPlacementDistributionDepletionCounter.js +2 -2
- package/dist/sof/layout/EveSOFDataHullExtensionPlacementDistributionDepletionCounter.js.map +1 -1
- package/dist/sof/layout/EveSOFDataHullExtensionPlacementDistributionMapGraphicSettings.js +35 -3
- package/dist/sof/layout/EveSOFDataHullExtensionPlacementDistributionMapGraphicSettings.js.map +1 -1
- package/dist/sof/layout/EveSOFDataHullExtensionPlacementDistributionParentMatch.js +2 -2
- package/dist/sof/layout/EveSOFDataHullExtensionPlacementDistributionParentMatch.js.map +1 -1
- package/dist/sof/layout/EveSOFDataHullExtensionPlacementDistributionPlacement.js +2 -2
- package/dist/sof/layout/EveSOFDataHullExtensionPlacementDistributionPlacement.js.map +1 -1
- package/dist/sof/layout/EveSOFDataHullExtensionPlacementDistributionRandomChance.js +2 -2
- package/dist/sof/layout/EveSOFDataHullExtensionPlacementDistributionRandomChance.js.map +1 -1
- package/dist/sof/layout/EveSOFDataHullExtensionPlacementGroup.js +2 -2
- package/dist/sof/layout/EveSOFDataHullExtensionPlacementGroup.js.map +1 -1
- package/dist/sof/layout/EveSOFDataLayout.js +2 -2
- package/dist/sof/layout/EveSOFDataLayout.js.map +1 -1
- package/dist/sof/pattern/EveSOFDataPattern.js +2 -2
- package/dist/sof/pattern/EveSOFDataPattern.js.map +1 -1
- package/dist/sof/pattern/EveSOFDataPatternApplicationGroup.js +2 -2
- package/dist/sof/pattern/EveSOFDataPatternApplicationGroup.js.map +1 -1
- package/dist/sof/pattern/EveSOFDataPatternLayer.js +60 -3
- package/dist/sof/pattern/EveSOFDataPatternLayer.js.map +1 -1
- package/dist/sof/pattern/EveSOFDataPatternLayerProperties.js +23 -3
- package/dist/sof/pattern/EveSOFDataPatternLayerProperties.js.map +1 -1
- package/dist/sof/pattern/EveSOFDataPatternMaterialOverride.js +2 -2
- package/dist/sof/pattern/EveSOFDataPatternMaterialOverride.js.map +1 -1
- package/dist/sof/pattern/EveSOFDataPatternPerHull.js +2 -2
- package/dist/sof/pattern/EveSOFDataPatternPerHull.js.map +1 -1
- package/dist/sof/pattern/EveSOFDataPatternTransform.js +2 -2
- package/dist/sof/pattern/EveSOFDataPatternTransform.js.map +1 -1
- package/dist/sof/race/EveSOFDataRace.js +46 -42
- package/dist/sof/race/EveSOFDataRace.js.map +1 -1
- package/dist/sof/race/EveSOFDataRaceDamage.js +2 -2
- package/dist/sof/race/EveSOFDataRaceDamage.js.map +1 -1
- package/dist/sof/shared/CjsExternalRef.js +2 -2
- package/dist/sof/shared/CjsExternalRef.js.map +1 -1
- package/dist/sof/shared/EveSOFDNADescriptor.js +2 -2
- package/dist/sof/shared/EveSOFDNADescriptor.js.map +1 -1
- package/dist/sof/shared/EveSOFDataArea.js +61 -3
- package/dist/sof/shared/EveSOFDataArea.js.map +1 -1
- package/dist/sof/shared/EveSOFDataAreaMaterial.js +4 -2
- package/dist/sof/shared/EveSOFDataAreaMaterial.js.map +1 -1
- package/dist/sof/shared/EveSOFDataBlinkType.js +48 -8
- package/dist/sof/shared/EveSOFDataBlinkType.js.map +1 -1
- package/dist/sof/shared/EveSOFDataBooster.js +2 -2
- package/dist/sof/shared/EveSOFDataBooster.js.map +1 -1
- package/dist/sof/shared/EveSOFDataBoosterShape.js +2 -2
- package/dist/sof/shared/EveSOFDataBoosterShape.js.map +1 -1
- package/dist/sof/shared/EveSOFDataDecalIndexBuffer.js +2 -2
- package/dist/sof/shared/EveSOFDataDecalIndexBuffer.js.map +1 -1
- package/dist/sof/shared/EveSOFDataInstancedMesh.js +40 -3
- package/dist/sof/shared/EveSOFDataInstancedMesh.js.map +1 -1
- package/dist/sof/shared/EveSOFDataLogo.js +2 -2
- package/dist/sof/shared/EveSOFDataLogo.js.map +1 -1
- package/dist/sof/shared/EveSOFDataLogoSet.js +33 -3
- package/dist/sof/shared/EveSOFDataLogoSet.js.map +1 -1
- package/dist/sof/shared/EveSOFDataMaterial.js +2 -2
- package/dist/sof/shared/EveSOFDataMaterial.js.map +1 -1
- package/dist/sof/shared/EveSOFDataParameter.js +2 -2
- package/dist/sof/shared/EveSOFDataParameter.js.map +1 -1
- package/dist/sof/shared/EveSOFDataParameterBool.js +2 -2
- package/dist/sof/shared/EveSOFDataParameterBool.js.map +1 -1
- package/dist/sof/shared/EveSOFDataParameterColor.js +2 -2
- package/dist/sof/shared/EveSOFDataParameterColor.js.map +1 -1
- package/dist/sof/shared/EveSOFDataParameterFloat.js +2 -2
- package/dist/sof/shared/EveSOFDataParameterFloat.js.map +1 -1
- package/dist/sof/shared/EveSOFDataParameterInt.js +2 -2
- package/dist/sof/shared/EveSOFDataParameterInt.js.map +1 -1
- package/dist/sof/shared/EveSOFDataParameterVector2.js +2 -2
- package/dist/sof/shared/EveSOFDataParameterVector2.js.map +1 -1
- package/dist/sof/shared/EveSOFDataParameterVector3.js +2 -2
- package/dist/sof/shared/EveSOFDataParameterVector3.js.map +1 -1
- package/dist/sof/shared/EveSOFDataPointLightAttachment.js +2 -2
- package/dist/sof/shared/EveSOFDataPointLightAttachment.js.map +1 -1
- package/dist/sof/shared/EveSOFDataSpotLightAttachment.js +2 -2
- package/dist/sof/shared/EveSOFDataSpotLightAttachment.js.map +1 -1
- package/dist/sof/shared/EveSOFDataTexture.js +2 -2
- package/dist/sof/shared/EveSOFDataTexture.js.map +1 -1
- package/dist/sof/shared/EveSOFDataTransform.js +2 -2
- package/dist/sof/shared/EveSOFDataTransform.js.map +1 -1
- package/dist/sof/shared/EveSofDataMeshInstance.js +2 -2
- package/dist/sof/shared/EveSofDataMeshInstance.js.map +1 -1
- package/dist/sof/sofDocumentValues.js +9 -0
- package/dist/sof/sofDocumentValues.js.map +1 -1
- package/dist/trinity/controllers/ITr2Controller/ITr2ActionController.js +2 -25
- package/dist/trinity/controllers/ITr2Controller/ITr2ActionController.js.map +1 -1
- package/dist/trinity/controllers/ITr2Controller/ITr2Controller.js +2 -72
- package/dist/trinity/controllers/ITr2Controller/ITr2Controller.js.map +1 -1
- package/dist/trinity/controllers/ITr2ControllerOwner.js +1 -36
- package/dist/trinity/controllers/ITr2ControllerOwner.js.map +1 -1
- package/dist/trinity/controllers/Tr2Controller.js +4 -5
- package/dist/trinity/controllers/Tr2Controller.js.map +1 -1
- package/dist/trinity/controllers/Tr2ControllerEventHandler.js +2 -2
- package/dist/trinity/controllers/Tr2ControllerEventHandler.js.map +1 -1
- package/dist/trinity/controllers/Tr2ControllerReference.js +9 -17
- package/dist/trinity/controllers/Tr2ControllerReference.js.map +1 -1
- package/dist/trinity/controllers/Tr2SyncToAnimation.js +4 -5
- package/dist/trinity/controllers/Tr2SyncToAnimation.js.map +1 -1
- package/dist/trinity/controllers/action/ITr2ControllerAction.js +1 -28
- package/dist/trinity/controllers/action/ITr2ControllerAction.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionAnimateCurveSet.js +9 -7
- package/dist/trinity/controllers/action/Tr2ActionAnimateCurveSet.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionAnimateValue.js +11 -9
- package/dist/trinity/controllers/action/Tr2ActionAnimateValue.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionBindRTPC.js +9 -7
- package/dist/trinity/controllers/action/Tr2ActionBindRTPC.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionCallback.js +4 -5
- package/dist/trinity/controllers/action/Tr2ActionCallback.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionChildEffect.js +4 -5
- package/dist/trinity/controllers/action/Tr2ActionChildEffect.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionOverlay.js +4 -5
- package/dist/trinity/controllers/action/Tr2ActionOverlay.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionPlayCurveSet.js +4 -5
- package/dist/trinity/controllers/action/Tr2ActionPlayCurveSet.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionPlayMeshAnimation.js +13 -9
- package/dist/trinity/controllers/action/Tr2ActionPlayMeshAnimation.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionPlaySound.js +4 -5
- package/dist/trinity/controllers/action/Tr2ActionPlaySound.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionPython.js +6 -6
- package/dist/trinity/controllers/action/Tr2ActionPython.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionResetClipSphereCenter.js +4 -5
- package/dist/trinity/controllers/action/Tr2ActionResetClipSphereCenter.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionSetAttenuationScaling.js +4 -5
- package/dist/trinity/controllers/action/Tr2ActionSetAttenuationScaling.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionSetAudioEmitterPrefix.js +4 -5
- package/dist/trinity/controllers/action/Tr2ActionSetAudioEmitterPrefix.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionSetAudioSwitch.js +4 -5
- package/dist/trinity/controllers/action/Tr2ActionSetAudioSwitch.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionSetExternalControllerVariable.js +8 -17
- package/dist/trinity/controllers/action/Tr2ActionSetExternalControllerVariable.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionSetShaderOption.js +4 -5
- package/dist/trinity/controllers/action/Tr2ActionSetShaderOption.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionSetValue.js +11 -9
- package/dist/trinity/controllers/action/Tr2ActionSetValue.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionSpawnParticles.js +4 -5
- package/dist/trinity/controllers/action/Tr2ActionSpawnParticles.js.map +1 -1
- package/dist/trinity/controllers/contracts.js +27 -19
- package/dist/trinity/controllers/contracts.js.map +1 -1
- package/dist/trinity/controllers/expression/Tr2BindingPoint.js +6 -15
- package/dist/trinity/controllers/expression/Tr2BindingPoint.js.map +1 -1
- package/dist/trinity/controllers/expression/Tr2ControllerFloatVariable.js +2 -2
- package/dist/trinity/controllers/expression/Tr2ControllerFloatVariable.js.map +1 -1
- package/dist/trinity/controllers/expression/expressionRuntime.js +136 -0
- package/dist/trinity/controllers/expression/expressionRuntime.js.map +1 -1
- package/dist/trinity/controllers/index.js +6 -6
- package/dist/trinity/controllers/state/ITr2StateMachineStateFinalizer.js +1 -24
- package/dist/trinity/controllers/state/ITr2StateMachineStateFinalizer.js.map +1 -1
- package/dist/trinity/controllers/state/Tr2StateMachine.js +4 -6
- package/dist/trinity/controllers/state/Tr2StateMachine.js.map +1 -1
- package/dist/trinity/controllers/state/Tr2StateMachineState.js +6 -6
- package/dist/trinity/controllers/state/Tr2StateMachineState.js.map +1 -1
- package/dist/trinity/controllers/state/Tr2StateMachineTransition.js +12 -9
- package/dist/trinity/controllers/state/Tr2StateMachineTransition.js.map +1 -1
- package/dist/trinity/controllers/timeline/Tr2TimelineController.js +5 -6
- package/dist/trinity/controllers/timeline/Tr2TimelineController.js.map +1 -1
- package/dist/trinity/core/ITr2Renderable.js +1 -49
- package/dist/trinity/core/ITr2Renderable.js.map +1 -1
- package/dist/trinity/core/ITr2Updateable.js +1 -22
- package/dist/trinity/core/ITr2Updateable.js.map +1 -1
- package/dist/trinity/core/ITriReroutable.js +56 -0
- package/dist/trinity/core/ITriReroutable.js.map +1 -0
- package/dist/trinity/core/Tr2Denoiser.js +2 -2
- package/dist/trinity/core/Tr2Denoiser.js.map +1 -1
- package/dist/trinity/core/Tr2MaterialParameterStore.js +2 -2
- package/dist/trinity/core/Tr2MaterialParameterStore.js.map +1 -1
- package/dist/trinity/core/Tr2QuadRenderer/Tr2QuadRenderer.js +2 -2
- package/dist/trinity/core/Tr2QuadRenderer/Tr2QuadRenderer.js.map +1 -1
- package/dist/trinity/core/Tr2QuadRenderer/Tr2QuadRendererEffectRecord.js +1 -1
- package/dist/trinity/core/Tr2QuadRenderer/Tr2QuadRendererEffectRecord.js.map +1 -1
- package/dist/trinity/core/Tr2Renderer.js +161 -4
- package/dist/trinity/core/Tr2Renderer.js.map +1 -1
- package/dist/trinity/core/Tr2ShadowMap.js +3 -3
- package/dist/trinity/core/Tr2ShadowMap.js.map +1 -1
- package/dist/trinity/core/Tr2StreamingBitmapSaver.js +2 -2
- package/dist/trinity/core/Tr2StreamingBitmapSaver.js.map +1 -1
- package/dist/trinity/core/Tr2Transform.js +4 -5
- package/dist/trinity/core/Tr2Transform.js.map +1 -1
- package/dist/trinity/core/animation/Tr2GrannyAnimation.js +2 -2
- package/dist/trinity/core/animation/Tr2GrannyAnimation.js.map +1 -1
- package/dist/trinity/core/animation/Tr2TextureAnimation.js +2 -2
- package/dist/trinity/core/animation/Tr2TextureAnimation.js.map +1 -1
- package/dist/trinity/core/animation/TriRigidOrientation.js +2 -2
- package/dist/trinity/core/animation/TriRigidOrientation.js.map +1 -1
- package/dist/trinity/core/animation/TriTorque.js +2 -2
- package/dist/trinity/core/animation/TriTorque.js.map +1 -1
- package/dist/trinity/core/batch/CjsBatchManager.js +15 -50
- package/dist/trinity/core/batch/CjsBatchManager.js.map +1 -1
- package/dist/trinity/core/batch/TriRenderBatch/ITriRenderBatchAccumulator.js.map +1 -1
- package/dist/trinity/core/batch/TriRenderBatch/Tr2RenderBatch.js +12 -14
- package/dist/trinity/core/batch/TriRenderBatch/Tr2RenderBatch.js.map +1 -1
- package/dist/trinity/core/binding/Tr2BindingVector3.js +2 -2
- package/dist/trinity/core/binding/Tr2BindingVector3.js.map +1 -1
- package/dist/trinity/core/binding/Tr2DynamicBinding.js +6 -20
- package/dist/trinity/core/binding/Tr2DynamicBinding.js.map +1 -1
- package/dist/trinity/core/binding/Tr2ExternalParameter.js +3 -6
- package/dist/trinity/core/binding/Tr2ExternalParameter.js.map +1 -1
- package/dist/trinity/core/binding/Tr2PyValueBinding.js +2 -2
- package/dist/trinity/core/binding/Tr2PyValueBinding.js.map +1 -1
- package/dist/trinity/core/binding/TriValueBinding.js +50 -24
- package/dist/trinity/core/binding/TriValueBinding.js.map +1 -1
- package/dist/trinity/core/context/CjsDirectTrinityStepExecutor.js +0 -6
- package/dist/trinity/core/context/CjsDirectTrinityStepExecutor.js.map +1 -1
- package/dist/trinity/core/context/CjsTrinityStepExecutor.js +7 -10
- package/dist/trinity/core/context/CjsTrinityStepExecutor.js.map +1 -1
- package/dist/trinity/core/context/Tr2RenderContext.js +74 -116
- package/dist/trinity/core/context/Tr2RenderContext.js.map +1 -1
- package/dist/trinity/core/device/Tr2DepthStencil.js +2 -2
- package/dist/trinity/core/device/Tr2DepthStencil.js.map +1 -1
- package/dist/trinity/core/device/Tr2GpuBuffer.js +2 -2
- package/dist/trinity/core/device/Tr2GpuBuffer.js.map +1 -1
- package/dist/trinity/core/device/Tr2RenderTarget.js +2 -2
- package/dist/trinity/core/device/Tr2RenderTarget.js.map +1 -1
- package/dist/trinity/core/device/Tr2RingBuffer/Tr2RingBuffer.js +2 -2
- package/dist/trinity/core/device/Tr2RingBuffer/Tr2RingBuffer.js.map +1 -1
- package/dist/trinity/core/device/Tr2SwapChain.js +2 -2
- package/dist/trinity/core/device/Tr2SwapChain.js.map +1 -1
- package/dist/trinity/core/device/TriDevice.js +576 -37
- package/dist/trinity/core/device/TriDevice.js.map +1 -1
- package/dist/trinity/core/device/gTriDev.js +49 -0
- package/dist/trinity/core/device/gTriDev.js.map +1 -0
- package/dist/trinity/core/index.js +9 -5
- package/dist/trinity/core/index.js.map +1 -1
- package/dist/trinity/core/lighting/Tr2KelvinColor.js +2 -2
- package/dist/trinity/core/lighting/Tr2KelvinColor.js.map +1 -1
- package/dist/trinity/core/lighting/Tr2LightManager.js +7 -17
- package/dist/trinity/core/lighting/Tr2LightManager.js.map +1 -1
- package/dist/trinity/core/lighting/Tr2ShLightingManager.js +2 -2
- package/dist/trinity/core/lighting/Tr2ShLightingManager.js.map +1 -1
- package/dist/trinity/core/line/Tr2BoundingLineSet.js +2 -2
- package/dist/trinity/core/line/Tr2BoundingLineSet.js.map +1 -1
- package/dist/trinity/core/line/Tr2CurveLineSet.js +10 -7
- package/dist/trinity/core/line/Tr2CurveLineSet.js.map +1 -1
- package/dist/trinity/core/line/Tr2LineGraph.js +2 -2
- package/dist/trinity/core/line/Tr2LineGraph.js.map +1 -1
- package/dist/trinity/core/line/Tr2PrimitiveSet.js +4 -5
- package/dist/trinity/core/line/Tr2PrimitiveSet.js.map +1 -1
- package/dist/trinity/core/line/TriLineSet.js +2 -2
- package/dist/trinity/core/line/TriLineSet.js.map +1 -1
- package/dist/trinity/core/mesh/ITr2ImpostorSource/ITr2ImpostorSource.js +1 -37
- package/dist/trinity/core/mesh/ITr2ImpostorSource/ITr2ImpostorSource.js.map +1 -1
- package/dist/trinity/core/mesh/ITr2InstanceData/ITr2InstanceData.js +1 -34
- package/dist/trinity/core/mesh/ITr2InstanceData/ITr2InstanceData.js.map +1 -1
- package/dist/trinity/core/mesh/Tr2DirectInstanceData.js +5 -6
- package/dist/trinity/core/mesh/Tr2DirectInstanceData.js.map +1 -1
- package/dist/trinity/core/mesh/Tr2InstancedMesh.js +2 -2
- package/dist/trinity/core/mesh/Tr2InstancedMesh.js.map +1 -1
- package/dist/trinity/core/mesh/Tr2Mesh.js +288 -183
- package/dist/trinity/core/mesh/Tr2Mesh.js.map +1 -1
- package/dist/trinity/core/mesh/Tr2MeshArea.js +32 -3
- package/dist/trinity/core/mesh/Tr2MeshArea.js.map +1 -1
- package/dist/trinity/core/mesh/Tr2MeshBase.js +58 -8
- package/dist/trinity/core/mesh/Tr2MeshBase.js.map +1 -1
- package/dist/trinity/core/mesh/Tr2RuntimeInstanceData.js +141 -142
- package/dist/trinity/core/mesh/Tr2RuntimeInstanceData.js.map +1 -1
- package/dist/trinity/core/mesh/Tr2SerializedMorphAnimation.js +2 -2
- package/dist/trinity/core/mesh/Tr2SerializedMorphAnimation.js.map +1 -1
- package/dist/trinity/core/procedural/GradientTextureConstructor.js +62 -0
- package/dist/trinity/core/procedural/GradientTextureConstructor.js.map +1 -0
- package/dist/trinity/core/procedural/gradientTexture.js +196 -0
- package/dist/trinity/core/procedural/gradientTexture.js.map +1 -0
- package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectData.js.map +1 -1
- package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataPSBuffer.js +5 -0
- package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataPSBuffer.js.map +1 -1
- package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataStandard.js +2 -0
- package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataStandard.js.map +1 -1
- package/dist/trinity/core/tool/Tr2ManipulationTool.js +2 -2
- package/dist/trinity/core/tool/Tr2ManipulationTool.js.map +1 -1
- package/dist/trinity/core/tool/Tr2RotationTool.js +2 -2
- package/dist/trinity/core/tool/Tr2RotationTool.js.map +1 -1
- package/dist/trinity/core/tool/Tr2ScalingTool.js +2 -2
- package/dist/trinity/core/tool/Tr2ScalingTool.js.map +1 -1
- package/dist/trinity/core/tool/Tr2TranslationTool.js +2 -2
- package/dist/trinity/core/tool/Tr2TranslationTool.js.map +1 -1
- package/dist/trinity/core/variable/Tr2ExpressionTermInfo.js +2 -2
- package/dist/trinity/core/variable/Tr2ExpressionTermInfo.js.map +1 -1
- package/dist/trinity/core/variable/TriFloat.js +2 -2
- package/dist/trinity/core/variable/TriFloat.js.map +1 -1
- package/dist/trinity/core/variable/TriObserverLocal.js +2 -2
- package/dist/trinity/core/variable/TriObserverLocal.js.map +1 -1
- package/dist/trinity/core/variable/TriVariable.js +2 -2
- package/dist/trinity/core/variable/TriVariable.js.map +1 -1
- package/dist/trinity/core/vertex/Tr2VertexDefinition/Tr2VertexDefinition.js +2 -0
- package/dist/trinity/core/vertex/Tr2VertexDefinition/Tr2VertexDefinition.js.map +1 -1
- package/dist/trinity/core/view/TriProjection.js +2 -2
- package/dist/trinity/core/view/TriProjection.js.map +1 -1
- package/dist/trinity/core/view/TriRect.js +2 -2
- package/dist/trinity/core/view/TriRect.js.map +1 -1
- package/dist/trinity/core/view/TriView.js +2 -2
- package/dist/trinity/core/view/TriView.js.map +1 -1
- package/dist/trinity/core/view/TriViewport.js +2 -2
- package/dist/trinity/core/view/TriViewport.js.map +1 -1
- package/dist/trinity/core/volumetrics/Tr2VolumetricsRenderer.js +3 -3
- package/dist/trinity/core/volumetrics/Tr2VolumetricsRenderer.js.map +1 -1
- package/dist/trinity/curves/Tr2CurveSetRange.js +2 -2
- package/dist/trinity/curves/Tr2CurveSetRange.js.map +1 -1
- package/dist/trinity/curves/TriCurveSet.js +2 -2
- package/dist/trinity/curves/TriCurveSet.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2BoneMatrixCurve.js +2 -2
- package/dist/trinity/curves/curve/Tr2BoneMatrixCurve.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2CurveColor.js +2 -2
- package/dist/trinity/curves/curve/Tr2CurveColor.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2CurveColorMixer.js +2 -2
- package/dist/trinity/curves/curve/Tr2CurveColorMixer.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2CurveCombiner.js +3 -3
- package/dist/trinity/curves/curve/Tr2CurveCombiner.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2CurveConstant.js +2 -2
- package/dist/trinity/curves/curve/Tr2CurveConstant.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2CurveEulerRotation.js +2 -2
- package/dist/trinity/curves/curve/Tr2CurveEulerRotation.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2CurveEulerRotationExpression.js +2 -2
- package/dist/trinity/curves/curve/Tr2CurveEulerRotationExpression.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2CurveQuaternion.js +3 -3
- package/dist/trinity/curves/curve/Tr2CurveQuaternion.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2CurveRandomAxisRotation.js +2 -2
- package/dist/trinity/curves/curve/Tr2CurveRandomAxisRotation.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2CurveScalar.js +3 -3
- package/dist/trinity/curves/curve/Tr2CurveScalar.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2CurveScalarExpression.js +2 -2
- package/dist/trinity/curves/curve/Tr2CurveScalarExpression.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2CurveVector2.js +2 -2
- package/dist/trinity/curves/curve/Tr2CurveVector2.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2CurveVector3.js +2 -2
- package/dist/trinity/curves/curve/Tr2CurveVector3.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2CurveVector3Expression.js +2 -2
- package/dist/trinity/curves/curve/Tr2CurveVector3Expression.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2CurveVector3Lerp.js +2 -2
- package/dist/trinity/curves/curve/Tr2CurveVector3Lerp.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2DistanceTracker.js +5 -5
- package/dist/trinity/curves/curve/Tr2DistanceTracker.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2FollowCurve.js +2 -2
- package/dist/trinity/curves/curve/Tr2FollowCurve.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2QuaternionLerpCurve.js +2 -2
- package/dist/trinity/curves/curve/Tr2QuaternionLerpCurve.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2RotationAdapter.js +2 -2
- package/dist/trinity/curves/curve/Tr2RotationAdapter.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2ScalarExprKeyCurve.js +2 -2
- package/dist/trinity/curves/curve/Tr2ScalarExprKeyCurve.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2ScalarFader.js +2 -2
- package/dist/trinity/curves/curve/Tr2ScalarFader.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2TranslationAdapter.js +2 -2
- package/dist/trinity/curves/curve/Tr2TranslationAdapter.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2VectorFunctionModifier.js +2 -2
- package/dist/trinity/curves/curve/Tr2VectorFunctionModifier.js.map +1 -1
- package/dist/trinity/curves/curve/TriColorSequencer.js +18 -18
- package/dist/trinity/curves/curve/TriColorSequencer.js.map +1 -1
- package/dist/trinity/curves/curve/TriEventCurve.js +51 -51
- package/dist/trinity/curves/curve/TriEventCurve.js.map +1 -1
- package/dist/trinity/curves/curve/TriPerlinCurve.js +2 -2
- package/dist/trinity/curves/curve/TriPerlinCurve.js.map +1 -1
- package/dist/trinity/curves/curve/TriVectorSequencer.js +36 -36
- package/dist/trinity/curves/curve/TriVectorSequencer.js.map +1 -1
- package/dist/trinity/curves/key/Tr2CameraFollowCurveKey.js +2 -2
- package/dist/trinity/curves/key/Tr2CameraFollowCurveKey.js.map +1 -1
- package/dist/trinity/curves/key/Tr2MatrixKey.js +2 -2
- package/dist/trinity/curves/key/Tr2MatrixKey.js.map +1 -1
- package/dist/trinity/curves/key/Tr2ObjectFollowCurveKey.js +2 -2
- package/dist/trinity/curves/key/Tr2ObjectFollowCurveKey.js.map +1 -1
- package/dist/trinity/curves/key/Tr2ScalarExprKey.js +28 -24
- package/dist/trinity/curves/key/Tr2ScalarExprKey.js.map +1 -1
- package/dist/trinity/curves/key/TriEventKey.js +2 -2
- package/dist/trinity/curves/key/TriEventKey.js.map +1 -1
- package/dist/trinity/curves/track/Tr2GrannyEventTrack.js +2 -2
- package/dist/trinity/curves/track/Tr2GrannyEventTrack.js.map +1 -1
- package/dist/trinity/curves/track/Tr2GrannyTrack.js +9 -4
- package/dist/trinity/curves/track/Tr2GrannyTrack.js.map +1 -1
- package/dist/trinity/curves/track/Tr2GrannyTransformTrack.js +2 -2
- package/dist/trinity/curves/track/Tr2GrannyTransformTrack.js.map +1 -1
- package/dist/trinity/curves/track/Tr2GrannyVectorTrack.js +2 -2
- package/dist/trinity/curves/track/Tr2GrannyVectorTrack.js.map +1 -1
- package/dist/trinity/eve/AudioGameObject.js +6 -8
- package/dist/trinity/eve/AudioGameObject.js.map +1 -1
- package/dist/trinity/eve/EveCustomMask.js +2 -2
- package/dist/trinity/eve/EveCustomMask.js.map +1 -1
- package/dist/trinity/eve/EveDistanceField.js +6 -4
- package/dist/trinity/eve/EveDistanceField.js.map +1 -1
- package/dist/trinity/eve/EveImpactOverlay.js +2 -2
- package/dist/trinity/eve/EveImpactOverlay.js.map +1 -1
- package/dist/trinity/eve/EveThrottleable.js +2 -2
- package/dist/trinity/eve/EveThrottleable.js.map +1 -1
- package/dist/trinity/eve/EveTriggerVolume.js +4 -5
- package/dist/trinity/eve/EveTriggerVolume.js.map +1 -1
- package/dist/trinity/eve/IEveInheritPropertiesOwner.js +1 -23
- package/dist/trinity/eve/IEveInheritPropertiesOwner.js.map +1 -1
- package/dist/trinity/eve/IEveSpaceObject2.js +1 -24
- package/dist/trinity/eve/IEveSpaceObject2.js.map +1 -1
- package/dist/trinity/eve/IEveTransform.js +1 -22
- package/dist/trinity/eve/IEveTransform.js.map +1 -1
- package/dist/trinity/eve/attachment/banner/EveBannerItem.js +2 -2
- package/dist/trinity/eve/attachment/banner/EveBannerItem.js.map +1 -1
- package/dist/trinity/eve/attachment/banner/EveBannerLight.js +2 -2
- package/dist/trinity/eve/attachment/banner/EveBannerLight.js.map +1 -1
- package/dist/trinity/eve/attachment/banner/EveBannerSet.js +20 -3
- package/dist/trinity/eve/attachment/banner/EveBannerSet.js.map +1 -1
- package/dist/trinity/eve/attachment/booster/EveBoosterSet2.js +127 -122
- package/dist/trinity/eve/attachment/booster/EveBoosterSet2.js.map +1 -1
- package/dist/trinity/eve/attachment/booster/EveBoosterSet2Item.js +5 -5
- package/dist/trinity/eve/attachment/booster/EveBoosterSet2Item.js.map +1 -1
- package/dist/trinity/eve/attachment/booster/EveBoosterSet2Renderable.js +4 -5
- package/dist/trinity/eve/attachment/booster/EveBoosterSet2Renderable.js.map +1 -1
- package/dist/trinity/eve/attachment/booster/EveTrailsSet.js +4 -2
- package/dist/trinity/eve/attachment/booster/EveTrailsSet.js.map +1 -1
- package/dist/trinity/eve/attachment/decal/EveSpaceObjectDecal.js +169 -155
- package/dist/trinity/eve/attachment/decal/EveSpaceObjectDecal.js.map +1 -1
- package/dist/trinity/eve/attachment/haze/EveHazeSet.js +3 -3
- package/dist/trinity/eve/attachment/haze/EveHazeSet.js.map +1 -1
- package/dist/trinity/eve/attachment/haze/EveHazeSetItem.js +2 -2
- package/dist/trinity/eve/attachment/haze/EveHazeSetItem.js.map +1 -1
- package/dist/trinity/eve/attachment/haze/EveHazeSetLight.js +2 -2
- package/dist/trinity/eve/attachment/haze/EveHazeSetLight.js.map +1 -1
- package/dist/trinity/eve/attachment/plane/EvePlaneLight.js +2 -2
- package/dist/trinity/eve/attachment/plane/EvePlaneLight.js.map +1 -1
- package/dist/trinity/eve/attachment/plane/EvePlaneSet.js +10 -4
- package/dist/trinity/eve/attachment/plane/EvePlaneSet.js.map +1 -1
- package/dist/trinity/eve/attachment/plane/EvePlaneSetItem.js +3 -2
- package/dist/trinity/eve/attachment/plane/EvePlaneSetItem.js.map +1 -1
- package/dist/trinity/eve/attachment/spotlight/EveSpotlightLight.js +2 -2
- package/dist/trinity/eve/attachment/spotlight/EveSpotlightLight.js.map +1 -1
- package/dist/trinity/eve/attachment/spotlight/EveSpotlightSet.js +3 -3
- package/dist/trinity/eve/attachment/spotlight/EveSpotlightSet.js.map +1 -1
- package/dist/trinity/eve/attachment/spotlight/EveSpotlightSetItem.js +2 -2
- package/dist/trinity/eve/attachment/spotlight/EveSpotlightSetItem.js.map +1 -1
- package/dist/trinity/eve/attachment/sprite/EveSpriteLight.js +2 -2
- package/dist/trinity/eve/attachment/sprite/EveSpriteLight.js.map +1 -1
- package/dist/trinity/eve/attachment/sprite/EveSpriteLineSet.js +4 -4
- package/dist/trinity/eve/attachment/sprite/EveSpriteLineSet.js.map +1 -1
- package/dist/trinity/eve/attachment/sprite/EveSpriteLineSetItem.js +2 -2
- package/dist/trinity/eve/attachment/sprite/EveSpriteLineSetItem.js.map +1 -1
- package/dist/trinity/eve/attachment/sprite/EveSpriteSet.js +5 -5
- package/dist/trinity/eve/attachment/sprite/EveSpriteSet.js.map +1 -1
- package/dist/trinity/eve/attachment/sprite/EveSpriteSetItem.js +2 -2
- package/dist/trinity/eve/attachment/sprite/EveSpriteSetItem.js.map +1 -1
- package/dist/trinity/eve/attachment/turrets/EveTurretFiringFX.js +7 -4
- package/dist/trinity/eve/attachment/turrets/EveTurretFiringFX.js.map +1 -1
- package/dist/trinity/eve/attachment/turrets/EveTurretSet.js +177 -144
- package/dist/trinity/eve/attachment/turrets/EveTurretSet.js.map +1 -1
- package/dist/trinity/eve/attachment/turrets/EveTurretTarget.js +2 -2
- package/dist/trinity/eve/attachment/turrets/EveTurretTarget.js.map +1 -1
- package/dist/trinity/eve/camera/EveCamera.js +5 -11
- package/dist/trinity/eve/camera/EveCamera.js.map +1 -1
- package/dist/trinity/eve/child/EveChildAudio.js +4 -5
- package/dist/trinity/eve/child/EveChildAudio.js.map +1 -1
- package/dist/trinity/eve/child/EveChildBehaviorSystem.js +5 -6
- package/dist/trinity/eve/child/EveChildBehaviorSystem.js.map +1 -1
- package/dist/trinity/eve/child/EveChildBoosterSet.js +6 -6
- package/dist/trinity/eve/child/EveChildBoosterSet.js.map +1 -1
- package/dist/trinity/eve/child/EveChildBulletStorm.js +4 -5
- package/dist/trinity/eve/child/EveChildBulletStorm.js.map +1 -1
- package/dist/trinity/eve/child/EveChildCloud.js +5 -6
- package/dist/trinity/eve/child/EveChildCloud.js.map +1 -1
- package/dist/trinity/eve/child/EveChildCloud2.js +166 -166
- package/dist/trinity/eve/child/EveChildCloud2.js.map +1 -1
- package/dist/trinity/eve/child/EveChildContainer.js +235 -169
- package/dist/trinity/eve/child/EveChildContainer.js.map +1 -1
- package/dist/trinity/eve/child/EveChildEffectPropagator.js +9 -9
- package/dist/trinity/eve/child/EveChildEffectPropagator.js.map +1 -1
- package/dist/trinity/eve/child/EveChildExplosion.js +11 -7
- package/dist/trinity/eve/child/EveChildExplosion.js.map +1 -1
- package/dist/trinity/eve/child/EveChildFogVolume.js +2 -2
- package/dist/trinity/eve/child/EveChildFogVolume.js.map +1 -1
- package/dist/trinity/eve/child/EveChildInheritProperties.js +2 -2
- package/dist/trinity/eve/child/EveChildInheritProperties.js.map +1 -1
- package/dist/trinity/eve/child/EveChildInstanceContainer.js +2 -2
- package/dist/trinity/eve/child/EveChildInstanceContainer.js.map +1 -1
- package/dist/trinity/eve/child/EveChildInstanceMeshRenderer.js +11 -7
- package/dist/trinity/eve/child/EveChildInstanceMeshRenderer.js.map +1 -1
- package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMesh.js +2 -2
- package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMesh.js.map +1 -1
- package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshArea.js +2 -2
- package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshArea.js.map +1 -1
- package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshInstance.js +2 -2
- package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshInstance.js.map +1 -1
- package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshes.js +4 -5
- package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshes.js.map +1 -1
- package/dist/trinity/eve/child/EveChildLightingOverride.js +4 -5
- package/dist/trinity/eve/child/EveChildLightingOverride.js.map +1 -1
- package/dist/trinity/eve/child/EveChildLineSet.js +4 -5
- package/dist/trinity/eve/child/EveChildLineSet.js.map +1 -1
- package/dist/trinity/eve/child/EveChildLink.js +2 -2
- package/dist/trinity/eve/child/EveChildLink.js.map +1 -1
- package/dist/trinity/eve/child/EveChildMesh.js +315 -229
- package/dist/trinity/eve/child/EveChildMesh.js.map +1 -1
- package/dist/trinity/eve/child/EveChildPartData/EveChildPartData.js +2 -2
- package/dist/trinity/eve/child/EveChildPartData/EveChildPartData.js.map +1 -1
- package/dist/trinity/eve/child/EveChildPartData/EveChildPartDataPartData.js +2 -2
- package/dist/trinity/eve/child/EveChildPartData/EveChildPartDataPartData.js.map +1 -1
- package/dist/trinity/eve/child/EveChildParticleSphere.js +4 -5
- package/dist/trinity/eve/child/EveChildParticleSphere.js.map +1 -1
- package/dist/trinity/eve/child/EveChildParticleSystem.js +36 -36
- package/dist/trinity/eve/child/EveChildParticleSystem.js.map +1 -1
- package/dist/trinity/eve/child/EveChildPlug.js +60 -14
- package/dist/trinity/eve/child/EveChildPlug.js.map +1 -1
- package/dist/trinity/eve/child/EveChildPostProcessVolume.js +2 -2
- package/dist/trinity/eve/child/EveChildPostProcessVolume.js.map +1 -1
- package/dist/trinity/eve/child/EveChildQuad.js +4 -5
- package/dist/trinity/eve/child/EveChildQuad.js.map +1 -1
- package/dist/trinity/eve/child/EveChildRef.js +2 -2
- package/dist/trinity/eve/child/EveChildRef.js.map +1 -1
- package/dist/trinity/eve/child/EveChildSocket.js +2 -2
- package/dist/trinity/eve/child/EveChildSocket.js.map +1 -1
- package/dist/trinity/eve/child/EveChildSpherePin.js +4 -4
- package/dist/trinity/eve/child/EveChildSpherePin.js.map +1 -1
- package/dist/trinity/eve/child/EveChildTurret.js +4 -4
- package/dist/trinity/eve/child/EveChildTurret.js.map +1 -1
- package/dist/trinity/eve/child/EveCloudVolumeBall.js +2 -2
- package/dist/trinity/eve/child/EveCloudVolumeBall.js.map +1 -1
- package/dist/trinity/eve/child/EveCloudVolumeTextureParameter.js +6 -6
- package/dist/trinity/eve/child/EveCloudVolumeTextureParameter.js.map +1 -1
- package/dist/trinity/eve/child/EveSpaceObjectChild.js +2 -2
- package/dist/trinity/eve/child/EveSpaceObjectChild.js.map +1 -1
- package/dist/trinity/eve/child/IEveLightingOverride.js +1 -23
- package/dist/trinity/eve/child/IEveLightingOverride.js.map +1 -1
- package/dist/trinity/eve/child/behaviors/Allign.js +2 -2
- package/dist/trinity/eve/child/behaviors/Allign.js.map +1 -1
- package/dist/trinity/eve/child/behaviors/ApproachGroup.js +2 -2
- package/dist/trinity/eve/child/behaviors/ApproachGroup.js.map +1 -1
- package/dist/trinity/eve/child/behaviors/BackAndForth.js +2 -2
- package/dist/trinity/eve/child/behaviors/BackAndForth.js.map +1 -1
- package/dist/trinity/eve/child/behaviors/BehaviorGroup.js +4 -4
- package/dist/trinity/eve/child/behaviors/BehaviorGroup.js.map +1 -1
- package/dist/trinity/eve/child/behaviors/BehaviorGroupBooster.js +2 -2
- package/dist/trinity/eve/child/behaviors/BehaviorGroupBooster.js.map +1 -1
- package/dist/trinity/eve/child/behaviors/CollisionAvoidance.js +2 -2
- package/dist/trinity/eve/child/behaviors/CollisionAvoidance.js.map +1 -1
- package/dist/trinity/eve/child/behaviors/DroneAvoidance.js +2 -2
- package/dist/trinity/eve/child/behaviors/DroneAvoidance.js.map +1 -1
- package/dist/trinity/eve/child/behaviors/FollowASpline.js +2 -2
- package/dist/trinity/eve/child/behaviors/FollowASpline.js.map +1 -1
- package/dist/trinity/eve/child/behaviors/Formation.js +2 -2
- package/dist/trinity/eve/child/behaviors/Formation.js.map +1 -1
- package/dist/trinity/eve/child/behaviors/InclusionVolume.js +2 -2
- package/dist/trinity/eve/child/behaviors/InclusionVolume.js.map +1 -1
- package/dist/trinity/eve/child/behaviors/Inertia.js +2 -2
- package/dist/trinity/eve/child/behaviors/Inertia.js.map +1 -1
- package/dist/trinity/eve/child/behaviors/PlayFX.js +2 -2
- package/dist/trinity/eve/child/behaviors/PlayFX.js.map +1 -1
- package/dist/trinity/eve/child/behaviors/SeekTarget.js +2 -2
- package/dist/trinity/eve/child/behaviors/SeekTarget.js.map +1 -1
- package/dist/trinity/eve/child/behaviors/SpawnDrones.js +2 -2
- package/dist/trinity/eve/child/behaviors/SpawnDrones.js.map +1 -1
- package/dist/trinity/eve/child/behaviors/Wander.js +2 -2
- package/dist/trinity/eve/child/behaviors/Wander.js.map +1 -1
- package/dist/trinity/eve/child/behaviors/lifecycle/ProcessLifetime.js +2 -2
- package/dist/trinity/eve/child/behaviors/lifecycle/ProcessLifetime.js.map +1 -1
- package/dist/trinity/eve/child/behaviors/tunnels/SplineTunnelGroup.js +2 -2
- package/dist/trinity/eve/child/behaviors/tunnels/SplineTunnelGroup.js.map +1 -1
- package/dist/trinity/eve/child/lineSetPaths/EveBezierCurve.js +8 -8
- package/dist/trinity/eve/child/lineSetPaths/EveBezierCurve.js.map +1 -1
- package/dist/trinity/eve/child/lineSetPaths/EveCircle.js +8 -8
- package/dist/trinity/eve/child/lineSetPaths/EveCircle.js.map +1 -1
- package/dist/trinity/eve/child/lineSetPaths/EveLineChildContainer.js +2 -2
- package/dist/trinity/eve/child/lineSetPaths/EveLineChildContainer.js.map +1 -1
- package/dist/trinity/eve/child/modifiers/EveChildModifierAttachToBone.js +2 -2
- package/dist/trinity/eve/child/modifiers/EveChildModifierAttachToBone.js.map +1 -1
- package/dist/trinity/eve/child/modifiers/EveChildModifierBillboard3D.js +2 -2
- package/dist/trinity/eve/child/modifiers/EveChildModifierBillboard3D.js.map +1 -1
- package/dist/trinity/eve/child/modifiers/EveChildModifierSRT.js +2 -2
- package/dist/trinity/eve/child/modifiers/EveChildModifierSRT.js.map +1 -1
- package/dist/trinity/eve/child/modifiers/EveChildModifierStretch.js +2 -2
- package/dist/trinity/eve/child/modifiers/EveChildModifierStretch.js.map +1 -1
- package/dist/trinity/eve/child/modifiers/EveChildModifierTranslateWithCamera.js +2 -2
- package/dist/trinity/eve/child/modifiers/EveChildModifierTranslateWithCamera.js.map +1 -1
- package/dist/trinity/eve/child/procedural/EveChildProceduralContainer.js +5 -6
- package/dist/trinity/eve/child/procedural/EveChildProceduralContainer.js.map +1 -1
- package/dist/trinity/eve/child/procedural/selection/EveProceduralMethodAttributeMap.js +3 -3
- package/dist/trinity/eve/child/procedural/selection/EveProceduralMethodAttributeMap.js.map +1 -1
- package/dist/trinity/eve/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js +3 -3
- package/dist/trinity/eve/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js.map +1 -1
- package/dist/trinity/eve/child/procedural/selection/EveProceduralMethodCycling.js +2 -2
- package/dist/trinity/eve/child/procedural/selection/EveProceduralMethodCycling.js.map +1 -1
- package/dist/trinity/eve/child/procedural/selection/EveProceduralMethodCyclingParameter.js +3 -3
- package/dist/trinity/eve/child/procedural/selection/EveProceduralMethodCyclingParameter.js.map +1 -1
- package/dist/trinity/eve/child/procedural/selection/EveProceduralMethodRandom.js +4 -4
- package/dist/trinity/eve/child/procedural/selection/EveProceduralMethodRandom.js.map +1 -1
- package/dist/trinity/eve/child/procedural/selection/EveProceduralMethodRandomParameter.js +4 -4
- package/dist/trinity/eve/child/procedural/selection/EveProceduralMethodRandomParameter.js.map +1 -1
- package/dist/trinity/eve/child/procedural/selection/EveProceduralMethodThresholdParameter.js +4 -4
- package/dist/trinity/eve/child/procedural/selection/EveProceduralMethodThresholdParameter.js.map +1 -1
- package/dist/trinity/eve/child/procedural/selection/EveProceduralMethodThresholds.js +4 -4
- package/dist/trinity/eve/child/procedural/selection/EveProceduralMethodThresholds.js.map +1 -1
- package/dist/trinity/eve/distribution/EveBaseDistributionMethod.js +2 -2
- package/dist/trinity/eve/distribution/EveBaseDistributionMethod.js.map +1 -1
- package/dist/trinity/eve/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js +2 -2
- package/dist/trinity/eve/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js.map +1 -1
- package/dist/trinity/eve/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js +2 -2
- package/dist/trinity/eve/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js.map +1 -1
- package/dist/trinity/eve/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js +2 -2
- package/dist/trinity/eve/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js.map +1 -1
- package/dist/trinity/eve/distribution/placement/EveDistributionPlacementGeneratorLocators.js +2 -2
- package/dist/trinity/eve/distribution/placement/EveDistributionPlacementGeneratorLocators.js.map +1 -1
- package/dist/trinity/eve/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js +4 -4
- package/dist/trinity/eve/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js.map +1 -1
- package/dist/trinity/eve/distribution/placement/EveDistributionPlacementGeneratorVolume.js +2 -2
- package/dist/trinity/eve/distribution/placement/EveDistributionPlacementGeneratorVolume.js.map +1 -1
- package/dist/trinity/eve/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js +2 -2
- package/dist/trinity/eve/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js.map +1 -1
- package/dist/trinity/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js +2 -2
- package/dist/trinity/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js.map +1 -1
- package/dist/trinity/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js +2 -2
- package/dist/trinity/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js.map +1 -1
- package/dist/trinity/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js +2 -2
- package/dist/trinity/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js.map +1 -1
- package/dist/trinity/eve/distribution/spawners/EveDistributionSpawnerBurst.js +2 -2
- package/dist/trinity/eve/distribution/spawners/EveDistributionSpawnerBurst.js.map +1 -1
- package/dist/trinity/eve/distribution/spawners/EveDistributionSpawnerControllerTrigger.js +2 -2
- package/dist/trinity/eve/distribution/spawners/EveDistributionSpawnerControllerTrigger.js.map +1 -1
- package/dist/trinity/eve/distribution/spawners/EveDistributionSpawnerInterval.js +2 -2
- package/dist/trinity/eve/distribution/spawners/EveDistributionSpawnerInterval.js.map +1 -1
- package/dist/trinity/eve/distribution/spawners/EveDistributionSpawnerTriggerPlane.js +2 -2
- package/dist/trinity/eve/distribution/spawners/EveDistributionSpawnerTriggerPlane.js.map +1 -1
- package/dist/trinity/eve/distribution/spawners/EveDistributionSpawnerTriggerSnake.js +2 -2
- package/dist/trinity/eve/distribution/spawners/EveDistributionSpawnerTriggerSnake.js.map +1 -1
- package/dist/trinity/eve/distribution/spawners/EveDistributionSpawnerTriggerSphere.js +2 -2
- package/dist/trinity/eve/distribution/spawners/EveDistributionSpawnerTriggerSphere.js.map +1 -1
- package/dist/trinity/eve/effect/lensflare/EveLensflare.js +4 -5
- package/dist/trinity/eve/effect/lensflare/EveLensflare.js.map +1 -1
- package/dist/trinity/eve/effect/multiEffect/EveMultiEffect.js +4 -5
- package/dist/trinity/eve/effect/multiEffect/EveMultiEffect.js.map +1 -1
- package/dist/trinity/eve/effect/multiEffect/EveMultiEffectParameter.js +4 -4
- package/dist/trinity/eve/effect/multiEffect/EveMultiEffectParameter.js.map +1 -1
- package/dist/trinity/eve/index.js +4 -4
- package/dist/trinity/eve/lights/Tr2FactionLight.js +5 -6
- package/dist/trinity/eve/lights/Tr2FactionLight.js.map +1 -1
- package/dist/trinity/eve/lights/Tr2Light.js +37 -9
- package/dist/trinity/eve/lights/Tr2Light.js.map +1 -1
- package/dist/trinity/eve/lights/Tr2PointLight.js +2 -2
- package/dist/trinity/eve/lights/Tr2PointLight.js.map +1 -1
- package/dist/trinity/eve/lights/Tr2SpotLight.js +2 -2
- package/dist/trinity/eve/lights/Tr2SpotLight.js.map +1 -1
- package/dist/trinity/eve/lights/Tr2TexturedPointLight.js +29 -31
- package/dist/trinity/eve/lights/Tr2TexturedPointLight.js.map +1 -1
- package/dist/trinity/eve/locator/EveLocator2.js +2 -2
- package/dist/trinity/eve/locator/EveLocator2.js.map +1 -1
- package/dist/trinity/eve/locator/EveLocatorSets.js +13 -4
- package/dist/trinity/eve/locator/EveLocatorSets.js.map +1 -1
- package/dist/trinity/eve/locator/Locator.js +2 -2
- package/dist/trinity/eve/locator/Locator.js.map +1 -1
- package/dist/trinity/eve/overlays/EveDamageOverlay.js +2 -2
- package/dist/trinity/eve/overlays/EveDamageOverlay.js.map +1 -1
- package/dist/trinity/eve/overlays/EveMeshOverlayEffect.js +2 -2
- package/dist/trinity/eve/overlays/EveMeshOverlayEffect.js.map +1 -1
- package/dist/trinity/eve/particles/static/EveSceneStaticParticles.js +5 -6
- package/dist/trinity/eve/particles/static/EveSceneStaticParticles.js.map +1 -1
- package/dist/trinity/eve/renderable/stretch/EveFiringEffectElementContainer.js +4 -5
- package/dist/trinity/eve/renderable/stretch/EveFiringEffectElementContainer.js.map +1 -1
- package/dist/trinity/eve/renderable/stretch/EveLocalPositionCurve.js +2 -2
- package/dist/trinity/eve/renderable/stretch/EveLocalPositionCurve.js.map +1 -1
- package/dist/trinity/eve/renderable/stretch/EveRemotePositionCurve.js +2 -2
- package/dist/trinity/eve/renderable/stretch/EveRemotePositionCurve.js.map +1 -1
- package/dist/trinity/eve/renderable/stretch/EveStretch.js +6 -6
- package/dist/trinity/eve/renderable/stretch/EveStretch.js.map +1 -1
- package/dist/trinity/eve/renderable/stretch/EveStretch2.js +10 -8
- package/dist/trinity/eve/renderable/stretch/EveStretch2.js.map +1 -1
- package/dist/trinity/eve/renderable/stretch/EveStretch3.js +4 -5
- package/dist/trinity/eve/renderable/stretch/EveStretch3.js.map +1 -1
- package/dist/trinity/eve/scene/EveSpaceScene.js +2 -2
- package/dist/trinity/eve/scene/EveSpaceScene.js.map +1 -1
- package/dist/trinity/eve/scene/EveSpaceSceneRenderDriver.js +2 -2
- package/dist/trinity/eve/scene/EveSpaceSceneRenderDriver.js.map +1 -1
- package/dist/trinity/eve/scene/components/EveComponentRegistry.js +3 -3
- package/dist/trinity/eve/scene/components/EveComponentRegistry.js.map +1 -1
- package/dist/trinity/eve/smartLights/EveChildSmartLightSet.js +6 -7
- package/dist/trinity/eve/smartLights/EveChildSmartLightSet.js.map +1 -1
- package/dist/trinity/eve/smartLights/EveSmartLightBaseGroup.js +2 -2
- package/dist/trinity/eve/smartLights/EveSmartLightBaseGroup.js.map +1 -1
- package/dist/trinity/eve/smartLights/EveSmartLightColorShareGroup.js +4 -8
- package/dist/trinity/eve/smartLights/EveSmartLightColorShareGroup.js.map +1 -1
- package/dist/trinity/eve/smartLights/EveSmartLightMesh.js +7 -4
- package/dist/trinity/eve/smartLights/EveSmartLightMesh.js.map +1 -1
- package/dist/trinity/eve/smartLights/EveSmartLightPointLight.js +25 -15
- package/dist/trinity/eve/smartLights/EveSmartLightPointLight.js.map +1 -1
- package/dist/trinity/eve/smartLights/EveSmartLightQuad.js +4 -9
- package/dist/trinity/eve/smartLights/EveSmartLightQuad.js.map +1 -1
- package/dist/trinity/eve/smartLights/EveSmartLightSpotLight.js +2 -2
- package/dist/trinity/eve/smartLights/EveSmartLightSpotLight.js.map +1 -1
- package/dist/trinity/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js +2 -3
- package/dist/trinity/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js.map +1 -1
- package/dist/trinity/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js +2 -2
- package/dist/trinity/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js.map +1 -1
- package/dist/trinity/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js +2 -2
- package/dist/trinity/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js.map +1 -1
- package/dist/trinity/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js +10 -18
- package/dist/trinity/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js.map +1 -1
- package/dist/trinity/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js +2 -2
- package/dist/trinity/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js.map +1 -1
- package/dist/trinity/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js +2 -2
- package/dist/trinity/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js.map +1 -1
- package/dist/trinity/eve/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js +4 -9
- package/dist/trinity/eve/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js.map +1 -1
- package/dist/trinity/eve/socket/EveSocketParameterBool.js +2 -2
- package/dist/trinity/eve/socket/EveSocketParameterBool.js.map +1 -1
- package/dist/trinity/eve/socket/EveSocketParameterColor.js +2 -2
- package/dist/trinity/eve/socket/EveSocketParameterColor.js.map +1 -1
- package/dist/trinity/eve/socket/EveSocketParameterFloat.js +2 -2
- package/dist/trinity/eve/socket/EveSocketParameterFloat.js.map +1 -1
- package/dist/trinity/eve/socket/EveSocketParameterInt.js +2 -2
- package/dist/trinity/eve/socket/EveSocketParameterInt.js.map +1 -1
- package/dist/trinity/eve/socket/EveSocketParameterString.js +2 -2
- package/dist/trinity/eve/socket/EveSocketParameterString.js.map +1 -1
- package/dist/trinity/eve/socket/EveSocketParameterVector2.js +2 -2
- package/dist/trinity/eve/socket/EveSocketParameterVector2.js.map +1 -1
- package/dist/trinity/eve/socket/EveSocketParameterVector3.js +2 -2
- package/dist/trinity/eve/socket/EveSocketParameterVector3.js.map +1 -1
- package/dist/trinity/eve/socket/EveSocketParameterVector4.js +2 -2
- package/dist/trinity/eve/socket/EveSocketParameterVector4.js.map +1 -1
- package/dist/trinity/eve/spaceObject/EveEffectRoot2.js +20 -17
- package/dist/trinity/eve/spaceObject/EveEffectRoot2.js.map +1 -1
- package/dist/trinity/eve/spaceObject/EveMissile.js +2 -2
- package/dist/trinity/eve/spaceObject/EveMissile.js.map +1 -1
- package/dist/trinity/eve/spaceObject/EveMissileWarhead.js +2 -2
- package/dist/trinity/eve/spaceObject/EveMissileWarhead.js.map +1 -1
- package/dist/trinity/eve/spaceObject/EveMobile.js +2 -2
- package/dist/trinity/eve/spaceObject/EveMobile.js.map +1 -1
- package/dist/trinity/eve/spaceObject/EveRootTransform.js +2 -2
- package/dist/trinity/eve/spaceObject/EveRootTransform.js.map +1 -1
- package/dist/trinity/eve/spaceObject/EveShip2.js +2 -2
- package/dist/trinity/eve/spaceObject/EveShip2.js.map +1 -1
- package/dist/trinity/eve/spaceObject/EveSpaceObject2.js +539 -432
- package/dist/trinity/eve/spaceObject/EveSpaceObject2.js.map +1 -1
- package/dist/trinity/eve/spaceObject/EveTransform.js +7 -7
- package/dist/trinity/eve/spaceObject/EveTransform.js.map +1 -1
- package/dist/trinity/eve/spaceObject/IEveSpaceObject2ParentData.js +44 -52
- package/dist/trinity/eve/spaceObject/IEveSpaceObject2ParentData.js.map +1 -1
- package/dist/trinity/eve/spaceObject/fxAttributes/EveCameraFxAttributes.js +2 -2
- package/dist/trinity/eve/spaceObject/fxAttributes/EveCameraFxAttributes.js.map +1 -1
- package/dist/trinity/eve/spaceObject/fxAttributes/EveSpaceObjectFxAttributes.js +2 -2
- package/dist/trinity/eve/spaceObject/fxAttributes/EveSpaceObjectFxAttributes.js.map +1 -1
- package/dist/trinity/eve/spaceObject/planet/EvePlanet.js +2 -2
- package/dist/trinity/eve/spaceObject/planet/EvePlanet.js.map +1 -1
- package/dist/trinity/eve/spaceObject/swarm/EveSwarm.js +2 -2
- package/dist/trinity/eve/spaceObject/swarm/EveSwarm.js.map +1 -1
- package/dist/trinity/eve/spaceObject/swarm/EveSwarmRenderable.js +7 -8
- package/dist/trinity/eve/spaceObject/swarm/EveSwarmRenderable.js.map +1 -1
- package/dist/trinity/eve/ui/EveConnector.js +2 -2
- package/dist/trinity/eve/ui/EveConnector.js.map +1 -1
- package/dist/trinity/eve/ui/EveEllipseDefinition.js +2 -2
- package/dist/trinity/eve/ui/EveEllipseDefinition.js.map +1 -1
- package/dist/trinity/eve/ui/EveEllipseSet.js +36 -6
- package/dist/trinity/eve/ui/EveEllipseSet.js.map +1 -1
- package/dist/trinity/eve/ui/EveLineContainer.js +4 -5
- package/dist/trinity/eve/ui/EveLineContainer.js.map +1 -1
- package/dist/trinity/eve/ui/EveProjectBracket.js +11 -3
- package/dist/trinity/eve/ui/EveProjectBracket.js.map +1 -1
- package/dist/trinity/eve/ui/EveSpherePin.js +6 -7
- package/dist/trinity/eve/ui/EveSpherePin.js.map +1 -1
- package/dist/trinity/eve/ui/EveSprite2dBracket.js +2 -2
- package/dist/trinity/eve/ui/EveSprite2dBracket.js.map +1 -1
- package/dist/trinity/eve/ui/EveSprite2dBracketRenderer.js +2 -2
- package/dist/trinity/eve/ui/EveSprite2dBracketRenderer.js.map +1 -1
- package/dist/trinity/eve/ui/EveTacticalOverlay.js +6 -24
- package/dist/trinity/eve/ui/EveTacticalOverlay.js.map +1 -1
- package/dist/trinity/eve/ui/EveUiObject.js +2 -2
- package/dist/trinity/eve/ui/EveUiObject.js.map +1 -1
- package/dist/trinity/eve/ui/lines/EveCurveLineSet.js +4 -5
- package/dist/trinity/eve/ui/lines/EveCurveLineSet.js.map +1 -1
- package/dist/trinity/eve/ui/lines/EveLineSet.js +6 -7
- package/dist/trinity/eve/ui/lines/EveLineSet.js.map +1 -1
- package/dist/trinity/eve/ui/tacticalOverlay/EveTacticalOverlayTrackObject.js +2 -2
- package/dist/trinity/eve/ui/tacticalOverlay/EveTacticalOverlayTrackObject.js.map +1 -1
- package/dist/trinity/eve/ui/tacticalOverlay/EveTacticalTrails.js +8 -9
- package/dist/trinity/eve/ui/tacticalOverlay/EveTacticalTrails.js.map +1 -1
- package/dist/trinity/eve/virtualCamera/EveVirtualCamera.js +2 -2
- package/dist/trinity/eve/virtualCamera/EveVirtualCamera.js.map +1 -1
- package/dist/trinity/eve/virtualCamera/EveVirtualCameraSystem.js +2 -2
- package/dist/trinity/eve/virtualCamera/EveVirtualCameraSystem.js.map +1 -1
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatAdd.js +2 -2
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatAdd.js.map +1 -1
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatBase.js +4 -4
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatBase.js.map +1 -1
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatDamping.js +2 -2
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatDamping.js.map +1 -1
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatNoise.js +2 -2
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatNoise.js.map +1 -1
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatSet.js +2 -2
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatSet.js.map +1 -1
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Base.js +4 -4
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Base.js.map +1 -1
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Damping.js +2 -2
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Damping.js.map +1 -1
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Inertia.js +2 -2
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Inertia.js.map +1 -1
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveBetween.js +2 -2
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveBetween.js.map +1 -1
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveForward.js +2 -2
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveForward.js.map +1 -1
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Offset.js +2 -2
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Offset.js.map +1 -1
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Orbit.js +2 -2
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Orbit.js.map +1 -1
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Shake.js +2 -2
- package/dist/trinity/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Shake.js.map +1 -1
- package/dist/trinity/eve/virtualCamera/transition/EveVirtualCameraTransitionLerp.js +2 -2
- package/dist/trinity/eve/virtualCamera/transition/EveVirtualCameraTransitionLerp.js.map +1 -1
- package/dist/trinity/eve/volume/EveBoxVolume.js +44 -44
- package/dist/trinity/eve/volume/EveBoxVolume.js.map +1 -1
- package/dist/trinity/eve/volume/EveEllipsoidVolume.js +2 -2
- package/dist/trinity/eve/volume/EveEllipsoidVolume.js.map +1 -1
- package/dist/trinity/eve/volume/EveSphereVolume.js +5 -6
- package/dist/trinity/eve/volume/EveSphereVolume.js.map +1 -1
- package/dist/trinity/generated/eve/child/EveCloudEditableVolume.js +2 -2
- package/dist/trinity/generated/eve/child/EveCloudEditableVolume.js.map +1 -1
- package/dist/trinity/generated/eve/effect/EveOccluder.js +2 -2
- package/dist/trinity/generated/eve/effect/EveOccluder.js.map +1 -1
- package/dist/trinity/generated/eve/effect/EveStarfield.js +2 -2
- package/dist/trinity/generated/eve/effect/EveStarfield.js.map +1 -1
- package/dist/trinity/generated/font/Tr2FontManager.js +2 -2
- package/dist/trinity/generated/font/Tr2FontManager.js.map +1 -1
- package/dist/trinity/generated/font/Tr2FontMeasurer.js +2 -2
- package/dist/trinity/generated/font/Tr2FontMeasurer.js.map +1 -1
- package/dist/trinity/generated/font/Tr2SBitWrapper.js +2 -2
- package/dist/trinity/generated/font/Tr2SBitWrapper.js.map +1 -1
- package/dist/trinity/generated/particle/Tr2GpuParticleSystem.js +2 -2
- package/dist/trinity/generated/particle/Tr2GpuParticleSystem.js.map +1 -1
- package/dist/trinity/generated/raytracing/Tr2RaytracingManager.js +2 -2
- package/dist/trinity/generated/raytracing/Tr2RaytracingManager.js.map +1 -1
- package/dist/trinity/generated/sprite2d/Tr2Sprite2d.js +2 -2
- package/dist/trinity/generated/sprite2d/Tr2Sprite2d.js.map +1 -1
- package/dist/trinity/generated/sprite2d/Tr2Sprite2dArc.js +2 -2
- package/dist/trinity/generated/sprite2d/Tr2Sprite2dArc.js.map +1 -1
- package/dist/trinity/generated/sprite2d/Tr2Sprite2dContainer.js +2 -2
- package/dist/trinity/generated/sprite2d/Tr2Sprite2dContainer.js.map +1 -1
- package/dist/trinity/generated/sprite2d/Tr2Sprite2dFrame.js +2 -2
- package/dist/trinity/generated/sprite2d/Tr2Sprite2dFrame.js.map +1 -1
- package/dist/trinity/generated/sprite2d/Tr2Sprite2dLayer.js +2 -2
- package/dist/trinity/generated/sprite2d/Tr2Sprite2dLayer.js.map +1 -1
- package/dist/trinity/generated/sprite2d/Tr2Sprite2dLine.js +2 -2
- package/dist/trinity/generated/sprite2d/Tr2Sprite2dLine.js.map +1 -1
- package/dist/trinity/generated/sprite2d/Tr2Sprite2dStretch.js +2 -2
- package/dist/trinity/generated/sprite2d/Tr2Sprite2dStretch.js.map +1 -1
- package/dist/trinity/generated/sprite2d/Tr2Sprite2dStretchVertical.js +2 -2
- package/dist/trinity/generated/sprite2d/Tr2Sprite2dStretchVertical.js.map +1 -1
- package/dist/trinity/generated/sprite2d/Tr2Sprite2dTextObject.js +2 -2
- package/dist/trinity/generated/sprite2d/Tr2Sprite2dTextObject.js.map +1 -1
- package/dist/trinity/generated/sprite2d/Tr2Sprite2dTexture.js +2 -2
- package/dist/trinity/generated/sprite2d/Tr2Sprite2dTexture.js.map +1 -1
- package/dist/trinity/generated/sprite2d/Tr2SpriteObject.js +2 -2
- package/dist/trinity/generated/sprite2d/Tr2SpriteObject.js.map +1 -1
- package/dist/trinity/generated/trinityCore/Tr2AtlasTexture.js +2 -2
- package/dist/trinity/generated/trinityCore/Tr2AtlasTexture.js.map +1 -1
- package/dist/trinity/generated/trinityCore/Tr2GpuStructuredBuffer.js +2 -2
- package/dist/trinity/generated/trinityCore/Tr2GpuStructuredBuffer.js.map +1 -1
- package/dist/trinity/generated/trinityCore/Tr2GrannyPrimitiveSet.js +2 -2
- package/dist/trinity/generated/trinityCore/Tr2GrannyPrimitiveSet.js.map +1 -1
- package/dist/trinity/generated/trinityCore/Tr2HostBitmap.js +2 -2
- package/dist/trinity/generated/trinityCore/Tr2HostBitmap.js.map +1 -1
- package/dist/trinity/generated/trinityCore/Tr2ImpostorManager.js +2 -2
- package/dist/trinity/generated/trinityCore/Tr2ImpostorManager.js.map +1 -1
- package/dist/trinity/generated/trinityCore/Tr2PrimitiveScene.js +2 -2
- package/dist/trinity/generated/trinityCore/Tr2PrimitiveScene.js.map +1 -1
- package/dist/trinity/generated/trinityCore/Tr2PrimitiveText.js +2 -2
- package/dist/trinity/generated/trinityCore/Tr2PrimitiveText.js.map +1 -1
- package/dist/trinity/generated/trinityCore/Tr2ReflectionProbe.js +2 -2
- package/dist/trinity/generated/trinityCore/Tr2ReflectionProbe.js.map +1 -1
- package/dist/trinity/generated/trinityCore/Tr2SSSSS.js +2 -2
- package/dist/trinity/generated/trinityCore/Tr2SSSSS.js.map +1 -1
- package/dist/trinity/generated/trinityCore/Tr2TextureAtlas.js +2 -2
- package/dist/trinity/generated/trinityCore/Tr2TextureAtlas.js.map +1 -1
- package/dist/trinity/generated/trinityCore/Tr2TextureAtlasMan.js +2 -2
- package/dist/trinity/generated/trinityCore/Tr2TextureAtlasMan.js.map +1 -1
- package/dist/trinity/index.js +23 -16
- package/dist/trinity/index.js.map +1 -1
- package/dist/trinity/particle/ITr2GenericEmitter/ITr2GenericEmitter.js +1 -31
- package/dist/trinity/particle/ITr2GenericEmitter/ITr2GenericEmitter.js.map +1 -1
- package/dist/trinity/particle/Tr2ParticleSystem.js +51 -52
- package/dist/trinity/particle/Tr2ParticleSystem.js.map +1 -1
- package/dist/trinity/particle/attribute/Tr2CapsuleShapeAttributeGenerator.js +2 -2
- package/dist/trinity/particle/attribute/Tr2CapsuleShapeAttributeGenerator.js.map +1 -1
- package/dist/trinity/particle/attribute/Tr2ConsecutiveIntegerAttributeGenerator.js +2 -2
- package/dist/trinity/particle/attribute/Tr2ConsecutiveIntegerAttributeGenerator.js.map +1 -1
- package/dist/trinity/particle/attribute/Tr2RandomDirectionAttributeGenerator.js +2 -2
- package/dist/trinity/particle/attribute/Tr2RandomDirectionAttributeGenerator.js.map +1 -1
- package/dist/trinity/particle/attribute/Tr2RandomIntegerAttributeGenerator.js +2 -2
- package/dist/trinity/particle/attribute/Tr2RandomIntegerAttributeGenerator.js.map +1 -1
- package/dist/trinity/particle/attribute/Tr2RandomUniformAttributeGenerator.js +2 -2
- package/dist/trinity/particle/attribute/Tr2RandomUniformAttributeGenerator.js.map +1 -1
- package/dist/trinity/particle/attribute/Tr2SphereShapeAttributeGenerator.js +2 -2
- package/dist/trinity/particle/attribute/Tr2SphereShapeAttributeGenerator.js.map +1 -1
- package/dist/trinity/particle/constraint/Tr2ElementBlendConstraint.js +2 -2
- package/dist/trinity/particle/constraint/Tr2ElementBlendConstraint.js.map +1 -1
- package/dist/trinity/particle/constraint/Tr2PlaneConstraint.js +13 -3
- package/dist/trinity/particle/constraint/Tr2PlaneConstraint.js.map +1 -1
- package/dist/trinity/particle/constraint/Tr2SphereConstraint.js +2 -2
- package/dist/trinity/particle/constraint/Tr2SphereConstraint.js.map +1 -1
- package/dist/trinity/particle/element/Tr2ParticleElementData.js +22 -8
- package/dist/trinity/particle/element/Tr2ParticleElementData.js.map +1 -1
- package/dist/trinity/particle/element/Tr2ParticleElementDeclaration.js +13 -25
- package/dist/trinity/particle/element/Tr2ParticleElementDeclaration.js.map +1 -1
- package/dist/trinity/particle/element/Tr2ParticleElementDeclarationName.js +38 -3
- package/dist/trinity/particle/element/Tr2ParticleElementDeclarationName.js.map +1 -1
- package/dist/trinity/particle/emitter/Tr2DynamicEmitter.js +26 -27
- package/dist/trinity/particle/emitter/Tr2DynamicEmitter.js.map +1 -1
- package/dist/trinity/particle/emitter/Tr2GpuSharedEmitter.js +4 -5
- package/dist/trinity/particle/emitter/Tr2GpuSharedEmitter.js.map +1 -1
- package/dist/trinity/particle/emitter/Tr2GpuUniqueEmitter.js +2 -2
- package/dist/trinity/particle/emitter/Tr2GpuUniqueEmitter.js.map +1 -1
- package/dist/trinity/particle/emitter/Tr2StaticEmitter.js +17 -18
- package/dist/trinity/particle/emitter/Tr2StaticEmitter.js.map +1 -1
- package/dist/trinity/particle/force/Tr2ForceSphereVolume.js +2 -2
- package/dist/trinity/particle/force/Tr2ForceSphereVolume.js.map +1 -1
- package/dist/trinity/particle/force/Tr2ParticleAttractorForce.js +2 -2
- package/dist/trinity/particle/force/Tr2ParticleAttractorForce.js.map +1 -1
- package/dist/trinity/particle/force/Tr2ParticleDirectForce.js +2 -2
- package/dist/trinity/particle/force/Tr2ParticleDirectForce.js.map +1 -1
- package/dist/trinity/particle/force/Tr2ParticleDragForce.js +2 -2
- package/dist/trinity/particle/force/Tr2ParticleDragForce.js.map +1 -1
- package/dist/trinity/particle/force/Tr2ParticleFluidDragForce.js +2 -2
- package/dist/trinity/particle/force/Tr2ParticleFluidDragForce.js.map +1 -1
- package/dist/trinity/particle/force/Tr2ParticleSpring.js +2 -2
- package/dist/trinity/particle/force/Tr2ParticleSpring.js.map +1 -1
- package/dist/trinity/particle/force/Tr2ParticleTurbulenceForce.js +2 -2
- package/dist/trinity/particle/force/Tr2ParticleTurbulenceForce.js.map +1 -1
- package/dist/trinity/particle/force/Tr2ParticleVortexForce.js +2 -2
- package/dist/trinity/particle/force/Tr2ParticleVortexForce.js.map +1 -1
- package/dist/trinity/particle/index.js +1 -1
- package/dist/trinity/postProcess/Tr2PostProcess.js +2 -2
- package/dist/trinity/postProcess/Tr2PostProcess.js.map +1 -1
- package/dist/trinity/postProcess/Tr2PostProcess2.js +2 -2
- package/dist/trinity/postProcess/Tr2PostProcess2.js.map +1 -1
- package/dist/trinity/postProcess/Tr2PostProcessAttributes.js +2 -2
- package/dist/trinity/postProcess/Tr2PostProcessAttributes.js.map +1 -1
- package/dist/trinity/postProcess/Tr2PostProcessRenderer.js +4 -4
- package/dist/trinity/postProcess/Tr2PostProcessRenderer.js.map +1 -1
- package/dist/trinity/postProcess/Tr2SSAO.js +4 -4
- package/dist/trinity/postProcess/Tr2SSAO.js.map +1 -1
- package/dist/trinity/postProcess/effect/Tr2PPBloomEffect.js +2 -2
- package/dist/trinity/postProcess/effect/Tr2PPBloomEffect.js.map +1 -1
- package/dist/trinity/postProcess/effect/Tr2PPColorCorrectionEffect.js +2 -2
- package/dist/trinity/postProcess/effect/Tr2PPColorCorrectionEffect.js.map +1 -1
- package/dist/trinity/postProcess/effect/Tr2PPDepthOfFieldEffect.js +2 -2
- package/dist/trinity/postProcess/effect/Tr2PPDepthOfFieldEffect.js.map +1 -1
- package/dist/trinity/postProcess/effect/Tr2PPDesaturateEffect.js +2 -2
- package/dist/trinity/postProcess/effect/Tr2PPDesaturateEffect.js.map +1 -1
- package/dist/trinity/postProcess/effect/Tr2PPDynamicExposureEffect.js +2 -2
- package/dist/trinity/postProcess/effect/Tr2PPDynamicExposureEffect.js.map +1 -1
- package/dist/trinity/postProcess/effect/Tr2PPEffect.js +2 -2
- package/dist/trinity/postProcess/effect/Tr2PPEffect.js.map +1 -1
- package/dist/trinity/postProcess/effect/Tr2PPFadeEffect.js +2 -2
- package/dist/trinity/postProcess/effect/Tr2PPFadeEffect.js.map +1 -1
- package/dist/trinity/postProcess/effect/Tr2PPFilmGrainEffect.js +2 -2
- package/dist/trinity/postProcess/effect/Tr2PPFilmGrainEffect.js.map +1 -1
- package/dist/trinity/postProcess/effect/Tr2PPFogEffect.js +2 -2
- package/dist/trinity/postProcess/effect/Tr2PPFogEffect.js.map +1 -1
- package/dist/trinity/postProcess/effect/Tr2PPGenericEffect.js +2 -2
- package/dist/trinity/postProcess/effect/Tr2PPGenericEffect.js.map +1 -1
- package/dist/trinity/postProcess/effect/Tr2PPGodRaysEffect.js +2 -2
- package/dist/trinity/postProcess/effect/Tr2PPGodRaysEffect.js.map +1 -1
- package/dist/trinity/postProcess/effect/Tr2PPLutEffect.js +2 -2
- package/dist/trinity/postProcess/effect/Tr2PPLutEffect.js.map +1 -1
- package/dist/trinity/postProcess/effect/Tr2PPSignalLossEffect.js +2 -2
- package/dist/trinity/postProcess/effect/Tr2PPSignalLossEffect.js.map +1 -1
- package/dist/trinity/postProcess/effect/Tr2PPTaaEffect.js +2 -2
- package/dist/trinity/postProcess/effect/Tr2PPTaaEffect.js.map +1 -1
- package/dist/trinity/postProcess/effect/Tr2PPTonemappingEffect.js +2 -2
- package/dist/trinity/postProcess/effect/Tr2PPTonemappingEffect.js.map +1 -1
- package/dist/trinity/postProcess/effect/Tr2PPVignetteEffect.js +2 -2
- package/dist/trinity/postProcess/effect/Tr2PPVignetteEffect.js.map +1 -1
- package/dist/trinity/renderJob/Tr2RenderJobs.js +5 -5
- package/dist/trinity/renderJob/Tr2RenderJobs.js.map +1 -1
- package/dist/trinity/renderJob/TriRenderJob.js +4 -4
- package/dist/trinity/renderJob/TriRenderJob.js.map +1 -1
- package/dist/trinity/renderJob/node/Tr2RenderNodeEffect.js +4 -5
- package/dist/trinity/renderJob/node/Tr2RenderNodeEffect.js.map +1 -1
- package/dist/trinity/renderJob/node/Tr2RenderNodeSprite2dScene.js +4 -5
- package/dist/trinity/renderJob/node/Tr2RenderNodeSprite2dScene.js.map +1 -1
- package/dist/trinity/renderJob/step/Tr2StepExecuteRenderNode.js +2 -2
- package/dist/trinity/renderJob/step/Tr2StepExecuteRenderNode.js.map +1 -1
- package/dist/trinity/renderJob/step/TriRenderStep.js +2 -2
- package/dist/trinity/renderJob/step/TriRenderStep.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepClear.js +2 -2
- package/dist/trinity/renderJob/step/TriStepClear.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepClearUav.js +2 -2
- package/dist/trinity/renderJob/step/TriStepClearUav.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepCopyRenderTarget.js +2 -2
- package/dist/trinity/renderJob/step/TriStepCopyRenderTarget.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepEnableWireframeMode.js +2 -2
- package/dist/trinity/renderJob/step/TriStepEnableWireframeMode.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepFilterVisibilityResults.js +2 -2
- package/dist/trinity/renderJob/step/TriStepFilterVisibilityResults.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepGenerateMipMaps.js +2 -2
- package/dist/trinity/renderJob/step/TriStepGenerateMipMaps.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepPopRenderTarget.js +2 -2
- package/dist/trinity/renderJob/step/TriStepPopRenderTarget.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepPresentSwapChain.js +2 -2
- package/dist/trinity/renderJob/step/TriStepPresentSwapChain.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepPushDepthStencil.js +2 -2
- package/dist/trinity/renderJob/step/TriStepPushDepthStencil.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepPushRenderTarget.js +2 -2
- package/dist/trinity/renderJob/step/TriStepPushRenderTarget.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepRenderAtlas.js +2 -2
- package/dist/trinity/renderJob/step/TriStepRenderAtlas.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepRenderDebug.js +2 -2
- package/dist/trinity/renderJob/step/TriStepRenderDebug.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepRenderEffect.js +2 -2
- package/dist/trinity/renderJob/step/TriStepRenderEffect.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepRenderFps.js +2 -2
- package/dist/trinity/renderJob/step/TriStepRenderFps.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepRenderLineGraph.js +2 -2
- package/dist/trinity/renderJob/step/TriStepRenderLineGraph.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepRenderObject.js +2 -2
- package/dist/trinity/renderJob/step/TriStepRenderObject.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepRenderPass.js +2 -2
- package/dist/trinity/renderJob/step/TriStepRenderPass.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepRenderScene.js +2 -2
- package/dist/trinity/renderJob/step/TriStepRenderScene.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepRenderSceneDebug.js +2 -2
- package/dist/trinity/renderJob/step/TriStepRenderSceneDebug.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepRenderTexture.js +2 -2
- package/dist/trinity/renderJob/step/TriStepRenderTexture.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepResolve.js +2 -2
- package/dist/trinity/renderJob/step/TriStepResolve.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepRunComputeShader.js +2 -2
- package/dist/trinity/renderJob/step/TriStepRunComputeShader.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepRunJob.js +2 -2
- package/dist/trinity/renderJob/step/TriStepRunJob.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepSetDebugRenderer.js +2 -2
- package/dist/trinity/renderJob/step/TriStepSetDebugRenderer.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepSetDepthStencil.js +2 -2
- package/dist/trinity/renderJob/step/TriStepSetDepthStencil.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepSetProjection.js +2 -2
- package/dist/trinity/renderJob/step/TriStepSetProjection.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepSetRenderState.js +2 -2
- package/dist/trinity/renderJob/step/TriStepSetRenderState.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepSetRenderTarget.js +2 -2
- package/dist/trinity/renderJob/step/TriStepSetRenderTarget.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepSetStdRndStates.js +2 -2
- package/dist/trinity/renderJob/step/TriStepSetStdRndStates.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepSetUpscalingContextID.js +2 -2
- package/dist/trinity/renderJob/step/TriStepSetUpscalingContextID.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepSetVariableStore.js +2 -2
- package/dist/trinity/renderJob/step/TriStepSetVariableStore.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepSetView.js +2 -2
- package/dist/trinity/renderJob/step/TriStepSetView.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepSetViewport.js +2 -2
- package/dist/trinity/renderJob/step/TriStepSetViewport.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepSetVisualizationMode.js +2 -2
- package/dist/trinity/renderJob/step/TriStepSetVisualizationMode.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepTestBlocking.js +2 -2
- package/dist/trinity/renderJob/step/TriStepTestBlocking.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepToggleCubemap.js +2 -2
- package/dist/trinity/renderJob/step/TriStepToggleCubemap.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepUpdate.js +2 -2
- package/dist/trinity/renderJob/step/TriStepUpdate.js.map +1 -1
- package/dist/trinity/shader/Tr2DataTextureManager.js +9 -9
- package/dist/trinity/shader/Tr2DataTextureManager.js.map +1 -1
- package/dist/trinity/shader/Tr2Effect.js +370 -347
- package/dist/trinity/shader/Tr2Effect.js.map +1 -1
- package/dist/trinity/shader/Tr2Material.js +5 -5
- package/dist/trinity/shader/Tr2Material.js.map +1 -1
- package/dist/trinity/shader/Tr2ShaderBuffer.js +3 -4
- package/dist/trinity/shader/Tr2ShaderBuffer.js.map +1 -1
- package/dist/trinity/shader/index.js +3 -0
- package/dist/trinity/shader/index.js.map +1 -1
- package/dist/trinity/shader/parameter/CjsParameter.js +202 -185
- package/dist/trinity/shader/parameter/CjsParameter.js.map +1 -1
- package/dist/trinity/shader/parameter/CjsVectorParameter.js +2 -2
- package/dist/trinity/shader/parameter/CjsVectorParameter.js.map +1 -1
- package/dist/trinity/shader/parameter/ITriEffectParameter.js +56 -0
- package/dist/trinity/shader/parameter/ITriEffectParameter.js.map +1 -0
- package/dist/trinity/shader/parameter/ITriEffectResourceParameter.js +31 -0
- package/dist/trinity/shader/parameter/ITriEffectResourceParameter.js.map +1 -0
- package/dist/trinity/shader/parameter/ITriEffectTextureParameter.js +43 -0
- package/dist/trinity/shader/parameter/ITriEffectTextureParameter.js.map +1 -0
- package/dist/trinity/shader/parameter/Tr2ConstantEffectParameter.js +17 -5
- package/dist/trinity/shader/parameter/Tr2ConstantEffectParameter.js.map +1 -1
- package/dist/trinity/shader/parameter/Tr2FloatParameter.js +46 -45
- package/dist/trinity/shader/parameter/Tr2FloatParameter.js.map +1 -1
- package/dist/trinity/shader/parameter/Tr2GeometryBufferParameter.js +14 -12
- package/dist/trinity/shader/parameter/Tr2GeometryBufferParameter.js.map +1 -1
- package/dist/trinity/shader/parameter/Tr2Matrix4Parameter.js +33 -32
- package/dist/trinity/shader/parameter/Tr2Matrix4Parameter.js.map +1 -1
- package/dist/trinity/shader/parameter/Tr2RuntimeTextureParameter.js +11 -10
- package/dist/trinity/shader/parameter/Tr2RuntimeTextureParameter.js.map +1 -1
- package/dist/trinity/shader/parameter/Tr2TextureAnimationParameter.js +55 -53
- package/dist/trinity/shader/parameter/Tr2TextureAnimationParameter.js.map +1 -1
- package/dist/trinity/shader/parameter/Tr2Vector2Parameter.js +49 -48
- package/dist/trinity/shader/parameter/Tr2Vector2Parameter.js.map +1 -1
- package/dist/trinity/shader/parameter/Tr2Vector3Parameter.js +52 -51
- package/dist/trinity/shader/parameter/Tr2Vector3Parameter.js.map +1 -1
- package/dist/trinity/shader/parameter/Tr2Vector4Parameter.js +56 -55
- package/dist/trinity/shader/parameter/Tr2Vector4Parameter.js.map +1 -1
- package/dist/trinity/shader/parameter/TriFloatArrayParameter.js +8 -8
- package/dist/trinity/shader/parameter/TriFloatArrayParameter.js.map +1 -1
- package/dist/trinity/shader/parameter/TriTextureParameter.js +27 -22
- package/dist/trinity/shader/parameter/TriTextureParameter.js.map +1 -1
- package/dist/trinity/shader/parameter/TriTransformParameter.js +27 -27
- package/dist/trinity/shader/parameter/TriTransformParameter.js.map +1 -1
- package/dist/trinity/shader/parameter/TriVariableParameter.js +53 -54
- package/dist/trinity/shader/parameter/TriVariableParameter.js.map +1 -1
- package/dist/trinity/shader/parameter/TriVector4.js +2 -2
- package/dist/trinity/shader/parameter/TriVector4.js.map +1 -1
- package/dist/trinity/shader/reflection/Tr2ShaderOption.js +4 -2
- package/dist/trinity/shader/reflection/Tr2ShaderOption.js.map +1 -1
- package/dist/trinity/shader/sampler/Tr2SamplerOverride.js +11 -2
- package/dist/trinity/shader/sampler/Tr2SamplerOverride.js.map +1 -1
- package/dist/trinity/sprite2d/Tr2Sprite2dContainerBase.js +2 -2
- package/dist/trinity/sprite2d/Tr2Sprite2dContainerBase.js.map +1 -1
- package/dist/trinity/sprite2d/Tr2Sprite2dLineTrace.js +2 -2
- package/dist/trinity/sprite2d/Tr2Sprite2dLineTrace.js.map +1 -1
- package/dist/trinity/sprite2d/Tr2Sprite2dLineTraceVertex.js +2 -2
- package/dist/trinity/sprite2d/Tr2Sprite2dLineTraceVertex.js.map +1 -1
- package/dist/trinity/sprite2d/Tr2Sprite2dPickingMask.js +8 -9
- package/dist/trinity/sprite2d/Tr2Sprite2dPickingMask.js.map +1 -1
- package/dist/trinity/sprite2d/Tr2Sprite2dPolygon.js +2 -2
- package/dist/trinity/sprite2d/Tr2Sprite2dPolygon.js.map +1 -1
- package/dist/trinity/sprite2d/Tr2Sprite2dRenderJob.js +2 -2
- package/dist/trinity/sprite2d/Tr2Sprite2dRenderJob.js.map +1 -1
- package/dist/trinity/sprite2d/Tr2Sprite2dScene.js +4 -4
- package/dist/trinity/sprite2d/Tr2Sprite2dScene.js.map +1 -1
- package/dist/trinity/sprite2d/Tr2Sprite2dTransform.js +2 -2
- package/dist/trinity/sprite2d/Tr2Sprite2dTransform.js.map +1 -1
- package/dist/trinity/sprite2d/Tr2Sprite2dTriangle.js +2 -2
- package/dist/trinity/sprite2d/Tr2Sprite2dTriangle.js.map +1 -1
- package/dist/trinity/sprite2d/Tr2SpriteObjectBase.js +2 -2
- package/dist/trinity/sprite2d/Tr2SpriteObjectBase.js.map +1 -1
- package/dist/trinity/ui/Tr2PresentParameters.js +2 -2
- package/dist/trinity/ui/Tr2PresentParameters.js.map +1 -1
- package/dist/trinity/ui/Tr2ProjectBoundingBoxBracket.js +3 -3
- package/dist/trinity/ui/Tr2ProjectBoundingBoxBracket.js.map +1 -1
- package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetALStub.js.map +1 -1
- package/dist/trinityal/stub/Tr2RenderContextALStub/Tr2RenderContextALStub.js.map +1 -1
- package/dist/trinityal/webgpu/CjsWebgpuRenderContextAL.js.map +1 -1
- package/dist/trinityal/webgpu/CjsWebgpuResourceSetAL.js.map +1 -1
- package/docs/core/README.md +38 -38
- package/docs/core/architecture.md +6 -5
- package/docs/core/reference/api.md +0 -10
- package/docs/core/reference/classes/README.md +57 -67
- package/docs/global/architecture.md +1 -3
- package/docs/global/blue-enums.md +115 -0
- package/docs/global/concepts/model-lifecycle.md +177 -182
- package/docs/global/core-types/README.md +394 -317
- package/docs/global/reference/api.md +2 -2
- package/docs/global/reference/classes/README.md +355 -205
- package/docs/global/reference/classes/dropped.md +40 -0
- package/docs/resource/architecture.md +152 -112
- package/docs/resource/concepts/resource-lifecycle.md +21 -15
- package/docs/resource/formats/geometry-interchange.md +50 -0
- package/docs/resource/formats/pickle.md +126 -100
- package/docs/resource/formats/provenance.md +15 -9
- package/docs/resource/formats/webgl/carbon-constant-layouts.md +98 -232
- package/docs/resource/formats/webgl/decl-io.md +241 -397
- package/docs/resource/formats/webgl/memory-structured.md +91 -128
- package/docs/resource/formats/webgl/texture-sample.md +306 -469
- package/docs/resource/formats/webgpu/reference/wgsl-compatibility.md +278 -530
- package/docs/resource/reference/classes/README.md +3 -1
- package/docs/resource/reference/classes/dropped.md +21 -1
- package/docs/resource/reference/classes/formats.md +33 -0
- package/docs/resource/reference/classes/texture.md +11 -1
- package/docs/resource/reference/classes/video.md +92 -0
- package/docs/resource/reference/events.md +10 -9
- package/docs/resource/reference/motherlode-cache.md +24 -11
- package/docs/resource/reference/queues.md +30 -1
- package/docs/trinity/README.md +5 -5
- package/docs/trinity/architecture.md +355 -344
- package/docs/trinity/concepts/eve-runtime-behavior.md +1 -1
- package/docs/trinity/reference/api.md +19 -7
- package/docs/trinity/reference/classes/dropped.md +2 -11
- package/docs/trinity/reference/classes/eve-runtime.md +1 -1
- package/docs/trinity/reference/classes/trinity-core.md +1672 -1622
- package/docs/trinity/reference/implementation-status.md +92 -92
- package/package.json +2 -1
- package/dist/core/CjsFrameDriver.js +0 -109
- package/dist/core/CjsFrameDriver.js.map +0 -1
- package/dist/global/contracts/CjsFrameLifecycle.js +0 -49
- package/dist/global/contracts/CjsFrameLifecycle.js.map +0 -1
- package/dist/global/contracts/CjsInstancedMeshManager.js +0 -58
- package/dist/global/contracts/CjsInstancedMeshManager.js.map +0 -1
- package/dist/resource/formats/black/core/black-schema-v1-2026-07-23.json.js +0 -4
- package/dist/resource/formats/black/core/black-schema-v1-2026-07-23.json.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EveChildContainer.js","sources":["../../../../../src/trinity/eve/child/EveChildContainer.js"],"sourcesContent":["// Source: trinity/trinity/Eve/SpaceObject/Children/EveChildContainer.h\n// Source: trinity/trinity/Eve/SpaceObject/Children/EveChildContainer.cpp\n// Source: trinity/trinity/Eve/SpaceObject/Children/EveChildContainer_Blue.cpp\nimport { mat4 } from \"#math/mat4\";\nimport { IEveInheritPropertiesOwner, withIEveInheritPropertiesOwner } from \"../IEveInheritPropertiesOwner.js\";\nimport { quat } from \"#math/quat\";\nimport { sph3 } from \"#math/sph3\";\nimport { vec3 } from \"#math/vec3\";\nimport { getBoneList } from \"../../core/animation/Tr2GrannyAnimation.js\";\nimport { vec4 } from \"#math/vec4\";\nimport { carbon, impl, io, type } from \"#schema\";\nimport { EveChildTransform, applyTransformModifiers } from \"./EveChildTransform.js\";\nimport { EveChildInheritProperties } from \"./EveChildInheritProperties.js\";\nimport { EveChildUpdateParams } from \"../EveChildUpdateParams.js\";\nimport { EveComponentType } from \"../EveComponentTypes.js\";\nimport { Origin } from \"../../generated/eve/child/enums.js\";\nimport { Tr2RenderReason, TR2SHADERMODEL } from \"../../generated/trinityCore/enums.js\";\nimport { Tr2Lod } from \"../EveLODHelper.js\";\nimport { Tr2PerObjectData } from \"../../core/rawData/perObjectData/Tr2PerObjectData.js\";\nimport {\n createChildPerObjectRecords,\n inheritParentPerObjectData,\n stampChildTransforms\n} from \"../perObjectData/childPerObjectRecords.js\";\nimport { withITr2Renderable } from \"../../core/ITr2Renderable.js\";\n\n// Module scratch (read-only zero vector; container recursion forbids mutable\n// module scratch here - see GetBoundingSphere).\nconst ZERO_VEC3 = vec3.create();\n\n\n/**\n * Space-object child that groups other children under one transform, owning\n * their curve sets, controllers, observers, lights, attachments and transform\n * modifiers, and gating them on a display-quality filter.\n */\n@type.define({ className: \"EveChildContainer\", family: \"eve/child\" })\nexport class EveChildContainer extends withIEveInheritPropertiesOwner(withITr2Renderable(EveChildTransform))\n{\n @io.notify\n @io.persist\n @type.int32\n @type.enum(\"DisplayQualityModifier\")\n displayFilter = 5;\n\n @io.persist\n @type.list(\"IEveSpaceObjectChild\")\n objects = [];\n\n @io.persist\n @type.list(\"IEveChildTransformModifier\")\n transformModifiers = [];\n\n @io.persist\n @type.list(\"TriCurveSet\")\n curveSets = [];\n\n @io.read\n @type.mat4\n worldTransform = mat4.create();\n\n @io.notify\n @io.readwrite\n @type.boolean\n mute = false;\n\n @io.notify\n @io.persist\n @type.boolean\n display = true;\n\n @io.persist\n @type.string\n name = \"\";\n\n @io.persist\n @type.vec3\n translation = vec3.create();\n\n @io.persist\n @type.quat\n rotation = quat.create();\n\n @io.persist\n @type.vec3\n scaling = vec3.fromValues(1, 1, 1);\n\n @io.persist\n @type.mat4\n localTransform = mat4.create();\n\n @io.persist\n @type.boolean\n staticTransform = false;\n\n @io.persist\n @type.boolean\n alwaysOn = false;\n\n @io.persist\n @type.boolean\n updateOnDisplay = true;\n\n @io.persist\n @type.list(\"IEveSpaceObjectAttachment\")\n attachments = [];\n\n @io.persist\n @type.list(\"TriObserverLocal\")\n observers = [];\n\n @io.persist\n @type.list(\"IEveFxAttribute\")\n fxAttributes = [];\n\n @io.persist\n @type.list(\"Tr2Light\")\n lights = [];\n\n @io.persist\n @type.list(\"ITr2Controller\")\n controllers = [];\n\n @io.persist\n @type.objectRef(\"EveChildInheritProperties\")\n inheritProperties = null;\n\n @io.persist\n @type.boolean\n useSRT = true;\n\n @io.persist\n @type.boolean\n useStaticRotation = false;\n\n @io.persist\n @type.boolean\n useStaticScale = false;\n\n // SOF-authored placement values; persisted so the values interchange\n // reproduces Carbon's hidden container placement state.\n @io.persist\n @type.objectRef(\"ITr2GrannyAnimationOwner\")\n animationOwner = null;\n\n @io.persist\n @type.int32\n @type.enum(\"Origin\")\n origin = 0;\n\n @io.persist\n @type.boolean\n isPlacementRoot = false;\n\n #controllerVariables = new Map();\n\n // Carbon m_worldVelocity/m_ownerMaxSpeed/m_activationStrength/m_hasUpdated:\n // runtime-only frame state (never persisted; Carbon keeps them out of the\n // Blue surface too).\n #worldVelocity = vec3.create();\n\n #ownerMaxSpeed = 0;\n\n #activationStrength = 1;\n\n /** m_vsData / m_psData - this container's PERSISTENT per-object pair. */\n #perObjectData = createChildPerObjectRecords();\n\n /** Carbon's local `lastWorldTransform`, kept across frames here. */\n #lastWorldTransform = mat4.create();\n\n #hasUpdated = false;\n\n /** Blue read-only property alias for IsRendering. */\n get isRendering()\n {\n return this.IsRendering();\n }\n\n /** Blue read-only property alias for IsUpdating. */\n get isUpdating()\n {\n return this.IsUpdating();\n }\n\n /**\n * Links every authored controller that is not already linked to this\n * container, so controller variables and events reach them.\n */\n @carbon.method\n @impl.adapted\n Initialize()\n {\n this.RegisterChildren(this.objects);\n for (const controller of this.controllers)\n {\n if (!controller?.IsLinked())\n {\n controller?.Link(this);\n }\n }\n return true;\n }\n\n /** Carbon EveChildContainer::OnModified (cpp:76-88): display/displayFilter\n * changes re-register with the scene component registry (engine-owned,\n * omitted); a mute change fans out to children and observers. The value\n * argument follows the repo's OnModified duck (field name or field value). */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Registry re-registration on display/displayFilter changes is engine-owned; the mute fan-out side effect is ported.\")\n OnModified(value = null)\n {\n if (value === \"mute\" || value === this.mute)\n {\n this.MuteChildren();\n }\n return true;\n }\n\n /**\n * Applies the authored scale/rotation/translation through the shared child\n * transform setup and returns the rebuilt local transform; lowestLodVisible is\n * accepted for signature parity only.\n */\n @carbon.method\n @impl.implemented\n Setup(scale = null, rotation = null, translation = null, lowestLodVisible = null)\n {\n return super.Setup(scale, rotation, translation, lowestLodVisible);\n }\n\n /**\n * Returns the authored container name, which GetEffectChildByName matches\n * against on the parent side.\n */\n @carbon.method\n @impl.implemented\n GetName()\n {\n return this.name;\n }\n\n /** Sets the authored container name, coercing nullish to the empty string. */\n @carbon.method\n @impl.implemented\n SetName(name)\n {\n this.name = String(name ?? \"\");\n }\n\n /**\n * Records whether this container's placement was authored in space or by SOF\n * (the Origin enum).\n */\n @carbon.method\n @impl.implemented\n SetOrigin(origin)\n {\n this.origin = Number(origin) | 0;\n }\n\n /** Stores the always-on flag that IsAlwaysOn reports to the owner. */\n @carbon.method\n @impl.implemented\n SetAlwaysOn(alwaysOn)\n {\n this.alwaysOn = !!alwaysOn;\n }\n\n /** Reports the authored always-on flag. */\n @carbon.method\n @impl.implemented\n IsAlwaysOn()\n {\n return this.alwaysOn;\n }\n\n /**\n * Sets the display-quality filter that IsRendering tests the current shader\n * model against, which in turn gates every update and render path on this\n * container.\n */\n @carbon.method\n @impl.implemented\n SetDisplayQualityModifier(filter)\n {\n this.displayFilter = Number(filter) | 0;\n }\n\n /**\n * Sets the mute flag and, only when it changes, pushes it down to the\n * contained children and local observers.\n */\n @carbon.method\n @impl.implemented\n SetMute(mute)\n {\n const next = !!mute;\n if (next !== this.mute)\n {\n this.mute = next;\n this.MuteChildren();\n }\n }\n\n /**\n * Pushes this container's current mute flag onto every contained child and\n * local observer - it mutates their state, not the container's.\n */\n @carbon.method\n @impl.implemented\n MuteChildren()\n {\n for (const child of this.objects)\n {\n child?.SetMute?.(this.mute);\n }\n for (const observer of this.observers)\n {\n observer?.SetMute(this.mute);\n }\n }\n\n /**\n * Appends a transform modifier; modifiers fold over the container's world\n * transform in insertion order on each async update.\n */\n @carbon.method\n @impl.implemented\n AddTransformModifier(modifier)\n {\n this.transformModifiers.push(modifier);\n }\n\n /**\n * Appends a local audio observer, which is re-placed from the container's\n * world transform on every sync update.\n */\n @carbon.method\n @impl.implemented\n AddObserver(observer)\n {\n this.observers.push(observer);\n }\n\n /**\n * Appends a controller, links it to this container, and replays every\n * controller variable set so far onto it so it starts in sync.\n */\n @carbon.method\n @impl.adapted\n AddController(controller)\n {\n this.controllers.push(controller);\n controller?.Link(this);\n for (const [name, value] of this.#controllerVariables)\n {\n controller?.SetVariable(name, value);\n }\n }\n\n /**\n * Records a named float variable, pushes it to every controller on this\n * container, and recurses into the contained children; the recorded value is\n * also replayed onto controllers and children added later.\n */\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)\n {\n controller?.SetVariable(key, next);\n }\n for (const child of this.objects)\n {\n child?.SetControllerVariable(key, next);\n }\n }\n\n /**\n * Fires a named controller event on every controller here and recurses into\n * the contained children.\n */\n @carbon.method\n @impl.implemented\n HandleControllerEvent(name)\n {\n const eventName = String(name ?? \"\");\n for (const controller of this.controllers)\n {\n controller?.HandleEvent(eventName);\n }\n for (const child of this.objects)\n {\n child?.HandleControllerEvent(eventName);\n }\n }\n\n /** Starts every controller here and recurses into the contained children. */\n @carbon.method\n @impl.implemented\n StartControllers()\n {\n for (const controller of this.controllers)\n {\n controller?.Start();\n }\n for (const child of this.objects)\n {\n child?.StartControllers();\n }\n }\n\n /**\n * Forwards a procedural container variable to the contained children; a plain\n * container holds none of its own.\n */\n @carbon.method\n @impl.implemented\n SetProceduralContainerVariable(name, value)\n {\n for (const child of this.objects)\n {\n child?.SetProceduralContainerVariable?.(name, value);\n }\n }\n\n /**\n * Returns the first direct child whose GetName()/name matches, or null; the\n * search does not recurse into nested containers.\n */\n @carbon.method\n @impl.implemented\n GetEffectChildByName(name)\n {\n const target = String(name ?? \"\");\n for (const child of this.objects)\n {\n if ((child?.GetName?.() ?? child?.name ?? \"\") === target)\n {\n return child;\n }\n }\n return null;\n }\n\n /**\n * Appends a child and replays every controller variable set so far onto it,\n * then returns that same child.\n */\n @carbon.method\n @impl.adapted\n AddToEffectChildrenList(child)\n {\n this.objects.push(child);\n this.RegisterChild(child);\n for (const [name, value] of this.#controllerVariables)\n {\n child?.SetControllerVariable(name, value);\n }\n return child;\n }\n\n /** Removes a child by identity and reports whether it was present. */\n @carbon.method\n @impl.implemented\n RemoveFromEffectChildrenList(child)\n {\n const index = this.objects.indexOf(child);\n if (index !== -1)\n {\n this.UnregisterChild(child);\n this.objects.splice(index, 1);\n return true;\n }\n return false;\n }\n\n /**\n * Forwards a shader option to every contained child and attachment; the\n * container compiles nothing itself.\n */\n @carbon.method\n @impl.implemented\n SetShaderOption(name, value)\n {\n for (const child of this.objects)\n {\n child?.SetShaderOption?.(name, value);\n }\n for (const attachment of this.attachments)\n {\n if (!attachment) continue;\n attachment.SetShaderOption(name, value);\n }\n }\n\n /**\n * Stores the Granny animation owner supplied by SOF placement; the bone-list\n * override that would consume it awaits the JS animation seam.\n */\n @carbon.method\n @impl.implemented\n SetAnimationOwner(animationOwner)\n {\n this.animationOwner = animationOwner ?? null;\n }\n\n /**\n * Flags this container as a SOF placement root - authored placement state,\n * persisted for interchange parity, with no consumer inside the container\n * itself.\n */\n @carbon.method\n @impl.implemented\n SetIsPlacementRoot(isPlacementRoot)\n {\n this.isPlacementRoot = !!isPlacementRoot;\n }\n\n /**\n * Appends an attachment; attachments are the only thing a container renders\n * itself (HasRenderables) and the only thing GetBatches submits.\n */\n @carbon.method\n @impl.implemented\n AddAttachment(attachment)\n {\n this.attachments.push(attachment);\n }\n\n /**\n * Drops every attachment, which also stops the container from contributing any\n * renderable of its own.\n */\n @carbon.method\n @impl.implemented\n ClearAttachments()\n {\n this.attachments.length = 0;\n }\n\n /**\n * Reports whether the container owns nothing at all - no children, lights,\n * attachments, controllers, curve sets, transform modifiers or observers.\n */\n @carbon.method\n @impl.implemented\n Empty()\n {\n return this.objects.length === 0 &&\n this.lights.length === 0 &&\n this.attachments.length === 0 &&\n this.controllers.length === 0 &&\n this.curveSets.length === 0 &&\n this.transformModifiers.length === 0 &&\n this.observers.length === 0;\n }\n\n /**\n * Sync-side frame update (Carbon EveChildContainer::UpdateSyncronous,\n * cpp:496-518): gate on IsUpdating, remember the owner max speed, then\n * recurse into the children with childParent params rebased onto this\n * container's world transform, and refresh the local observers.\n * @param {Object} updateContext - frame context (EveUpdateContext)\n * @param {EveChildUpdateParams} params\n */\n @carbon.method\n @impl.implemented\n UpdateSyncronous(updateContext, params)\n {\n if (!this.IsUpdating())\n {\n return;\n }\n\n this.#ownerMaxSpeed = Number(params?.ownerMaxSpeed) || 0;\n\n const newParams = EveChildContainer.#DeriveChildParams(params);\n newParams.isVisible = (params?.isVisible !== false) && this.display;\n newParams.childParent = this;\n mat4.copy(newParams.localToWorldTransform, this.worldTransform);\n\n for (const child of this.objects)\n {\n child?.UpdateSyncronous(updateContext, newParams);\n }\n for (const observer of this.observers)\n {\n observer?.Update(this.worldTransform);\n }\n }\n\n /**\n * Per-frame async update (Carbon EveChildContainer::UpdateAsyncronous +\n * DoUpdateAsyncronous, cpp:520-641): rebuild the world transform from the\n * parent, tick the controllers, fold the transform modifiers, then recurse\n * into the children with childParent params, update the curve sets and fx\n * attributes, and refresh light/attachment bone state. Carbon's wrapper\n * advances the GPU bone ring buffer and may dispatch the body onto the\n * placement task group (cpp:522-538) - both engine-owned, so the JS port\n * runs the DoUpdateAsyncronous body inline behind the same IsUpdating gate.\n * @param {Object} updateContext - frame context (EveUpdateContext), threaded to modifiers\n * @param {EveChildUpdateParams} params - localToWorldTransform + boneCount/bones\n * @returns {Float32Array} worldTransform\n */\n @carbon.method\n @carbon.contextual([\"camera\"])\n @impl.adapted\n @impl.reason(\"The GPU bone ring buffer, task-group dispatch, per-object VS/PS struct refresh, and the Granny bone-list override are engine/animation seams; the CPU update fan-out is ported.\")\n UpdateAsyncronous(updateContext, params)\n {\n if (!this.IsUpdating())\n {\n return this.worldTransform;\n }\n\n const parentTransform = params?.localToWorldTransform;\n\n // Carbon captures the OUTGOING transform before rebuilding.\n mat4.copy(this.#lastWorldTransform, this.worldTransform);\n\n if (parentTransform && parentTransform.length === 16)\n {\n this.UpdateTransform(parentTransform);\n }\n\n // Carbon cpp:576-589: inherit the hull's per-object values, rebase the clip\n // data by this child's translation, then stamp our own transforms.\n inheritParentPerObjectData(this.#perObjectData, params?.spaceObjectParent, this.translation);\n stampChildTransforms(this.#perObjectData, this.worldTransform, this.#lastWorldTransform);\n\n const frequency = params?.controllerUpdateFrequency ?? 0.5;\n for (const controller of this.controllers)\n {\n controller?.Update(frequency);\n }\n\n // Carbon's DoUpdateAsyncronous overrides boneCount/bones from this\n // container's own animation controller here (Tr2GrannyAnimationUtils::\n // GetBoneList, cpp:556-559) before folding modifiers. AttachToBone already\n // consumes an explicitly threaded params palette; overriding that palette\n // from the animation controller remains deferred until the Granny\n // bone-list API is ported.\n const boneCount = params?.boneCount ?? 0;\n const bones = params?.bones ?? null;\n\n applyTransformModifiers(this, updateContext, boneCount, bones);\n\n this.#activationStrength = Number(params?.activationStrength ?? 1);\n\n // Carbon (cpp:568-590): when attachments exist the per-object VS/PS\n // structs are refreshed from the parent. This port retains persistent\n // RawData and returns it from GetPerObjectData; no live-object serializer\n // indirection is involved.\n\n const newParams = EveChildContainer.#DeriveChildParams(params);\n newParams.isVisible = (params?.isVisible !== false) && this.display;\n newParams.childParent = this;\n newParams.boneCount = boneCount;\n newParams.bones = bones;\n mat4.copy(newParams.localToWorldTransform, this.worldTransform);\n\n // Carbon (cpp:599-610): a space-object-rooted container samples the\n // owner's world velocity; nested containers inherit it via params.\n if (params?.spaceObjectParent)\n {\n if (!params.childParent)\n {\n const velocity = params.spaceObjectParent.GetWorldVelocity?.(this.#worldVelocity) ??\n params.spaceObjectParent.worldVelocity;\n if (velocity && velocity !== this.#worldVelocity)\n {\n vec3.copy(this.#worldVelocity, velocity);\n }\n vec3.copy(newParams.worldVelocity, this.#worldVelocity);\n }\n else\n {\n vec3.copy(this.#worldVelocity, params.worldVelocity ?? ZERO_VEC3);\n }\n }\n\n for (const child of this.objects)\n {\n child?.UpdateAsyncronous(updateContext, newParams);\n }\n\n // Carbon (cpp:617-624): container-owned curve sets tick with the frame\n // time as BOTH realTime and simTime.\n if (this.curveSets.length)\n {\n const time = Number(updateContext?.GetTime?.() ?? updateContext?.currentTime ?? updateContext?.time ?? 0);\n for (const curveSet of this.curveSets)\n {\n curveSet.Update(time, time, updateContext.renderContext);\n }\n }\n\n for (const fxAttribute of this.fxAttributes)\n {\n fxAttribute.UpdateAsyncronous(updateContext, newParams);\n }\n\n for (const light of this.lights)\n {\n light?.SetBoneMatrix?.(bones, boneCount);\n }\n\n for (const attachment of this.attachments)\n {\n if (!attachment) continue;\n attachment.UpdateLights(this.worldTransform, bones, boneCount, this.#activationStrength, 0);\n }\n\n this.#hasUpdated = true;\n return this.worldTransform;\n }\n\n /**\n * Frame visibility fan-out (Carbon EveChildContainer::UpdateVisibility,\n * cpp:379-410): gate on display/IsUpdating, recurse into the children with\n * the unchanged parent transform/LOD, then refresh attachment visibility\n * against this container's world transform.\n * @param {Object} updateContext - frame context (frustum ducks)\n * @param {Float32Array} parentTransform\n * @param {Number} parentLod - parent Tr2Lod level\n * @returns {Boolean} whether the fan-out ran\n */\n @carbon.method\n @impl.implemented\n UpdateVisibility(updateContext, parentTransform = null, parentLod = Tr2Lod.TR2_LOD_HIGH)\n {\n if (!this.display)\n {\n return false;\n }\n if (!this.IsUpdating())\n {\n return false;\n }\n\n for (const child of this.objects)\n {\n child?.UpdateVisibility(updateContext, parentTransform, parentLod);\n }\n\n if (this.HasRenderables())\n {\n // cpp:398-409 - the container has no updater of its own; the palette\n // comes from whichever object owns the animation.\n const { bones, boneCount } = getBoneList(this.animationOwner?.GetAnimationController?.());\n\n for (const attachment of this.attachments)\n {\n if (!attachment) continue;\n attachment.UpdateVisibility(updateContext, this.worldTransform, bones, boneCount);\n }\n }\n return true;\n }\n\n /** Carbon EveChildContainer::GetRenderables (cpp:412-432): the container\n * itself renders only when it owns attachments; children always recurse. */\n @carbon.method\n @impl.implemented\n GetRenderables(out = [])\n {\n if (!this.display || !this.#hasUpdated)\n {\n return out;\n }\n if (!this.IsRendering())\n {\n return out;\n }\n\n if (this.HasRenderables())\n {\n out.push(this);\n }\n\n for (const child of this.objects)\n {\n child?.GetRenderables(out);\n }\n return out;\n }\n\n /** Carbon EveChildContainer::GetBoundingSphere (cpp:434-452): the union of\n * the children's spheres (BoundingSphereSetOrUpdate -> sph3.union). The\n * child sphere is a per-call local rather than module scratch because\n * containers nest - a shared scratch would be clobbered between recursion\n * levels; this is a bounds query, not the per-frame update hot path. */\n @carbon.method\n @impl.implemented\n GetBoundingSphere(out = vec4.create(), _query = 0)\n {\n if (!this.IsUpdating())\n {\n return false;\n }\n\n const childSphere = vec4.create();\n let success = false;\n for (const child of this.objects)\n {\n if (child?.GetBoundingSphere?.(childSphere))\n {\n if (success)\n {\n sph3.union(out, out, childSphere);\n }\n else\n {\n vec4.copy(out, childSphere);\n }\n success = true;\n }\n }\n return success;\n }\n\n /** Carbon EveChildContainer::GetLocalToWorldTransform (cpp:644-647); the\n * optional out follows the EveChildInstancedMeshes copy-out shape. */\n @carbon.method\n @impl.implemented\n GetLocalToWorldTransform(out = null)\n {\n if (out)\n {\n return mat4.copy(out, this.worldTransform);\n }\n return this.worldTransform;\n }\n\n /** Carbon EveChildContainer::ChangeLOD (cpp:649-655): fan-out only. */\n @carbon.method\n @impl.implemented\n ChangeLOD(lod)\n {\n for (const child of this.objects)\n {\n child?.ChangeLOD?.(lod);\n }\n }\n\n /** Carbon EveChildContainer::GetLights (cpp:657-675): each light is added\n * with the container world transform and the average basis-length scaling\n * ((|X| + |Y| + |Z|) / 3 of the world basis rows - single-matrix reads, no\n * composition). The light manager is duck-typed. */\n @carbon.method\n @impl.implemented\n GetLights(lightManager)\n {\n if (!this.display || !this.#hasUpdated)\n {\n return;\n }\n if (!this.IsRendering())\n {\n return;\n }\n\n const m = this.worldTransform;\n const scaling = (\n Math.hypot(m[0], m[1], m[2]) +\n Math.hypot(m[4], m[5], m[6]) +\n Math.hypot(m[8], m[9], m[10])\n ) / 3;\n\n for (const light of this.lights)\n {\n light?.AddLight(lightManager, m, scaling);\n }\n }\n\n /** Carbon EveChildContainer::GetBatches (cpp:1134-1143): attachments only,\n * gated on display, the NORMAL render reason, and a non-zero activation\n * strength. Returns whether any batch was committed (JS addition; Carbon\n * returns void). */\n @carbon.method\n @impl.implemented\n GetBatches(batches, batchType, perObjectData, reason = Tr2RenderReason.TR2RENDERREASON_NORMAL)\n {\n if (!this.display || reason !== Tr2RenderReason.TR2RENDERREASON_NORMAL || this.#activationStrength === 0)\n {\n return false;\n }\n\n let committed = false;\n for (const attachment of this.attachments)\n {\n if (!attachment) continue;\n committed = attachment.GetBatches(batches, batchType, perObjectData, reason) === true || committed;\n }\n return committed;\n }\n\n /** Carbon EveChildContainer::HasTransparentBatches (cpp:1145-1148). */\n @carbon.method\n @impl.implemented\n HasTransparentBatches()\n {\n return false;\n }\n\n /** Carbon EveChildContainer::GetSortValue (cpp:1150-1153). */\n @carbon.method\n @impl.implemented\n GetSortValue()\n {\n return 0;\n }\n\n /**\n * Carbon EveChildContainer::GetPerObjectData (cpp:1180-1203): uploads the\n * animation owner's bone palette, then hands back a handle over this\n * container's two PERSISTENT buffers. The ring offsets are GPU addresses with\n * no CPU derivation and keep their defaults; the bone COUNT is CPU-known.\n */\n @carbon.method\n @impl.adapted\n @impl.reason(\"GPU ring-buffer offsets have no CPU derivation and keep their defaults; every CPU-known field is filled.\")\n GetPerObjectData(_accumulator = null)\n {\n const updater = this.animationOwner?.animationUpdater ?? this.animationUpdater;\n\n if (updater?.IsInitialized?.())\n {\n this.#perObjectData.vs.SetIndex(\"boneOffsets\", 2, [ updater.GetMeshBoneCount?.() ?? 0 ]);\n }\n\n return { vs: this.#perObjectData.vs, ps: this.#perObjectData.ps };\n }\n\n /** Carbon EveChildContainer::HasRenderables (cpp:1129-1132): the container\n * renders only for its attachments. */\n @carbon.method\n @impl.implemented\n HasRenderables()\n {\n return this.attachments.length > 0;\n }\n\n /** Carbon EveChildContainer::IsRendering (cpp:334-362): whether the current\n * shader model passes this container's display filter. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Carbon reads the Tr2Renderer shader-model global; the browser runtime stamps EveChildContainer.shaderModel (default TR2SM_3_0_DEPTH, the DX11 depth path EVE ships).\")\n IsRendering()\n {\n const settings = EveChildContainer.shaderModel;\n const filter = EveChildContainer.DisplayQualityModifier;\n\n if (settings === TR2SHADERMODEL.TR2SM_AUTHORING && this.displayFilter !== filter.ONLY_REFLECTIONS)\n {\n return true;\n }\n\n switch (this.displayFilter)\n {\n case filter.SHADER_LOW:\n return settings === TR2SHADERMODEL.TR2SM_3_0_LO;\n case filter.SHADER_LOWMID:\n return settings <= TR2SHADERMODEL.TR2SM_3_0_HI;\n case filter.SHADER_MED:\n return settings === TR2SHADERMODEL.TR2SM_3_0_HI;\n case filter.SHADER_HIGHMID:\n return settings >= TR2SHADERMODEL.TR2SM_3_0_HI;\n case filter.SHADER_HIGH:\n return settings === TR2SHADERMODEL.TR2SM_3_0_DEPTH;\n case filter.SHADER_ALL:\n return true;\n case filter.ONLY_REFLECTIONS:\n return false;\n }\n return false;\n }\n\n /** Carbon EveChildContainer::IsUpdating (cpp:364-367). */\n @carbon.method\n @impl.implemented\n IsUpdating()\n {\n return (this.display || !this.updateOnDisplay) &&\n (this.IsRendering() || this.displayFilter === EveChildContainer.DisplayQualityModifier.ONLY_REFLECTIONS);\n }\n\n /** Carbon EveChildContainer::RegisterComponents (cpp:258-284): LightOwner\n * when lights are authored, then forwards the contained objects and the\n * attachments. Gate m_display && IsUpdating(). */\n @carbon.method\n @impl.implemented\n RegisterComponents()\n {\n const registry = this.GetComponentRegistry();\n if (registry && this.display && this.IsUpdating())\n {\n if (this.lights.length)\n {\n registry.RegisterComponent(EveComponentType.LightOwner, this);\n }\n\n for (const object of this.objects)\n {\n object?.Register(registry);\n }\n\n for (const attachment of this.attachments)\n {\n attachment?.Register(registry);\n }\n }\n }\n\n /** Carbon EveChildContainer::UnRegisterComponents (cpp:290-311): forwards\n * the contained objects and attachments only (own components were already\n * removed by EveEntity::UnRegister, EveEntity.cpp:90); no display/IsUpdating\n * re-check. */\n @carbon.method\n @impl.implemented\n UnRegisterComponents()\n {\n const registry = this.GetComponentRegistry();\n if (registry)\n {\n for (const object of this.objects)\n {\n object?.UnRegister(registry);\n }\n\n for (const attachment of this.attachments)\n {\n attachment?.UnRegister(registry);\n }\n }\n }\n\n /** Carbon EveChildContainer::PlayCurveSet (cpp:682-712): named own sets play\n * (or play a named range); children recurse via the curve-set-owner duck. */\n @carbon.method\n @impl.implemented\n PlayCurveSet(name, rangeName = \"\")\n {\n if (!this.IsUpdating())\n {\n return;\n }\n\n const target = String(name ?? \"\");\n for (const curveSet of this.curveSets)\n {\n if ((curveSet?.GetName() ?? curveSet?.name) !== target)\n {\n continue;\n }\n if (rangeName)\n {\n curveSet.PlayTimeRange?.(rangeName);\n }\n else\n {\n curveSet.ResetTimeRange();\n curveSet.Play();\n }\n }\n\n for (const child of this.objects)\n {\n child?.PlayCurveSet?.(target, rangeName);\n }\n }\n\n /** Carbon EveChildContainer::StopCurveSet (cpp:746-768). */\n @carbon.method\n @impl.implemented\n StopCurveSet(name)\n {\n if (!this.IsUpdating())\n {\n return;\n }\n\n const target = String(name ?? \"\");\n for (const curveSet of this.curveSets)\n {\n if ((curveSet?.GetName() ?? curveSet?.name) === target)\n {\n curveSet.Stop();\n }\n }\n\n for (const child of this.objects)\n {\n child?.StopCurveSet?.(target);\n }\n }\n\n /** Carbon EveChildContainer::UpdateCurveSet (cpp:770-786): samples matching\n * own and child sets at an explicit time (both clocks, as Carbon does). */\n @carbon.method\n @impl.implemented\n UpdateCurveSet(name, time, renderContext = null)\n {\n const target = String(name ?? \"\");\n for (const curveSet of this.curveSets)\n {\n if (curveSet.GetName() === target)\n {\n curveSet.Update(time, time, renderContext);\n }\n }\n\n for (const child of this.objects)\n {\n child?.UpdateCurveSet?.(target, time, renderContext);\n }\n }\n\n /** Carbon EveChildContainer::PlayAllCurveSets (cpp:714-728): children\n * first, then every own set. */\n @carbon.method\n @impl.implemented\n PlayAllCurveSets()\n {\n for (const child of this.objects)\n {\n child?.PlayAllCurveSets?.();\n }\n for (const curveSet of this.curveSets)\n {\n curveSet?.Play();\n }\n }\n\n /** Carbon EveChildContainer::StopAllCurveSets (cpp:730-744). */\n @carbon.method\n @impl.implemented\n StopAllCurveSets()\n {\n for (const child of this.objects)\n {\n child?.StopAllCurveSets?.();\n }\n for (const curveSet of this.curveSets)\n {\n curveSet?.Stop();\n }\n }\n\n /** Carbon EveChildContainer::GetCurveSetDuration (cpp:788-813): maximum\n * GetMaxCurveDuration over matching own and child sets. */\n @carbon.method\n @impl.implemented\n GetCurveSetDuration(name)\n {\n if (!this.IsUpdating())\n {\n return 0;\n }\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\n for (const child of this.objects)\n {\n duration = Math.max(duration, Number(child?.GetCurveSetDuration?.(target) ?? 0));\n }\n return duration;\n }\n\n /** Carbon EveChildContainer::GetRangeDuration (cpp:815-840): maximum named\n * range duration over matching own and child sets. */\n @carbon.method\n @impl.implemented\n GetRangeDuration(name, rangeName)\n {\n if (!this.IsUpdating())\n {\n return 0;\n }\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\n for (const child of this.objects)\n {\n duration = Math.max(duration, Number(child?.GetRangeDuration?.(target, rangeName) ?? 0));\n }\n return duration;\n }\n\n /** Carbon EveChildContainer::GetControllerValueByName (cpp:1083-1098):\n * Carbon returns bool with a float& out; the JS port returns the value or\n * null when no controller exposes the named float variable. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"The bool + float& out-param pair collapses to value-or-null in JS.\")\n GetControllerValueByName(name)\n {\n const key = String(name ?? \"\");\n for (const controller of this.controllers)\n {\n const value = controller?.GetFloatVariableByName?.(key);\n if (value !== undefined && value !== null)\n {\n return Number(value);\n }\n }\n return null;\n }\n\n /** Carbon EveChildContainer::GetWorldVelocity (cpp:1012-1015). */\n @carbon.method\n @impl.implemented\n GetWorldVelocity(out = vec3.create())\n {\n return vec3.copy(out, this.#worldVelocity);\n }\n\n /** Carbon EveChildContainer::GetOwnerMaxSpeed (cpp:1073-1076). */\n @carbon.method\n @impl.implemented\n GetOwnerMaxSpeed()\n {\n return this.#ownerMaxSpeed;\n }\n\n /** Propagates the owning space object through the complete child subtree. */\n @carbon.method\n @impl.implemented\n SetOwner(owner)\n {\n if (this.GetOwner() === owner) return;\n super.SetOwner(owner);\n for (const child of this.objects) child.SetOwner(owner);\n }\n\n /** Propagates a modular part tag through the complete child subtree. */\n @carbon.method\n @impl.implemented\n SetPartTag(tag)\n {\n const next = Number(tag) >>> 0;\n if (this.GetPartTag() === next) return;\n super.SetPartTag(next);\n for (const child of this.objects) child.SetPartTag(next);\n }\n\n /** Collects locator sets owned by nested children in object-local space. */\n @carbon.method\n @impl.implemented\n CollectOwnedLocatorSets(parentTransform, out)\n {\n const childToObject = mat4.create();\n mat4.multiply(childToObject, parentTransform, this.RebuildLocalTransform());\n for (const child of this.objects) child.CollectOwnedLocatorSets(childToObject, out);\n }\n\n /** Collects geometry owned by nested children in object-local space. */\n @carbon.method\n @impl.implemented\n CollectOwnedGeometry(type, parentTransform, out, areaPool)\n {\n const childToObject = mat4.create();\n mat4.multiply(childToObject, parentTransform, this.RebuildLocalTransform());\n for (const child of this.objects) child.CollectOwnedGeometry(type, childToObject, out, areaPool);\n }\n\n /** Carbon EveChildContainer::SetInheritProperties (cpp:1017-1040): lazily\n * creates the property holder, then fans the color set out to children and\n * lights. */\n @carbon.method\n @impl.implemented\n SetInheritProperties(colorSet)\n {\n if (!this.inheritProperties)\n {\n this.inheritProperties = new EveChildInheritProperties();\n }\n this.inheritProperties.SetProperties(colorSet);\n\n for (const child of this.objects)\n {\n if (child instanceof IEveInheritPropertiesOwner) child.SetInheritProperties(colorSet);\n }\n for (const light of this.lights)\n {\n if (light instanceof IEveInheritPropertiesOwner) light.SetInheritProperties(colorSet);\n }\n }\n\n /** Carbon EveChildContainer::FindSoundEmitter (cpp:1042-1066): named local\n * observers first, then duck-typed recursion into the children. */\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\"\n ? observer.GetObserver()\n : observer.observer ?? null;\n }\n }\n\n for (const child of this.objects)\n {\n const emitter = child?.FindSoundEmitter?.(target);\n if (emitter)\n {\n return emitter;\n }\n }\n return null;\n }\n\n // Copies the caller's params into a fresh child-facing record (Carbon copies\n // EveChildUpdateParams by value, cpp:505/592). Allocated per call like\n // EveSpaceObject2's child fan-out - container recursion makes a module\n // scratch record unsafe.\n\n /**\n * Copies the caller's update params into a fresh child-facing record (Carbon\n * passes EveChildUpdateParams by value, cpp:505/592); allocated per call\n * because container recursion makes a shared module scratch record unsafe.\n */\n static #DeriveChildParams(params)\n {\n const next = new EveChildUpdateParams();\n if (params)\n {\n next.spaceObjectParent = params.spaceObjectParent ?? null;\n next.childParent = params.childParent ?? null;\n next.boneCount = params.boneCount ?? 0;\n next.bones = params.bones ?? null;\n next.ownerMaxSpeed = Number(params.ownerMaxSpeed) || 0;\n next.activationStrength = Number(params.activationStrength ?? 1);\n next.controllerUpdateFrequency = Number(params.controllerUpdateFrequency ?? 0.5);\n next.isVisible = params.isVisible !== false;\n if (params.localToWorldTransform?.length === 16)\n {\n mat4.copy(next.localToWorldTransform, params.localToWorldTransform);\n }\n if (params.worldVelocity)\n {\n vec3.copy(next.worldVelocity, params.worldVelocity);\n }\n }\n return next;\n }\n\n // Carbon reads Tr2Renderer::GetShaderModel() (a renderer global); the\n // browser runtime stamps it here. TR2SM_3_0_DEPTH is the DX11 depth path\n // EVE ships, so every quality-gated container renders by default.\n static shaderModel = TR2SHADERMODEL.TR2SM_3_0_DEPTH;\n\n static DisplayQualityModifier = Object.freeze({\n ONLY_REFLECTIONS: 6,\n SHADER_ALL: 5,\n SHADER_HIGHMID: 3,\n SHADER_LOWMID: 1,\n SHADER_HIGH: 4,\n SHADER_MED: 2,\n SHADER_LOW: 0\n });\n\n static Origin = Origin;\n\n}\n"],"names":["ZERO_VEC3","vec3","create","_EveChildContainer","_identity","EveChildContainer","_withIEveInheritPrope","withIEveInheritPropertiesOwner","withITr2Renderable","EveChildTransform","e","_init_displayFilter","_init_extra_displayFilter","_init_objects","_init_extra_objects","_init_transformModifiers","_init_extra_transformModifiers","_init_curveSets","_init_extra_curveSets","_init_worldTransform","_init_extra_worldTransform","_init_mute","_init_extra_mute","_init_display","_init_extra_display","_init_name","_init_extra_name","_init_translation","_init_extra_translation","_init_rotation","_init_extra_rotation","_init_scaling","_init_extra_scaling","_init_localTransform","_init_extra_localTransform","_init_staticTransform","_init_extra_staticTransform","_init_alwaysOn","_init_extra_alwaysOn","_init_updateOnDisplay","_init_extra_updateOnDisplay","_init_attachments","_init_extra_attachments","_init_observers","_init_extra_observers","_init_fxAttributes","_init_extra_fxAttributes","_init_lights","_init_extra_lights","_init_controllers","_init_extra_controllers","_init_inheritProperties","_init_extra_inheritProperties","_init_useSRT","_init_extra_useSRT","_init_useStaticRotation","_init_extra_useStaticRotation","_init_useStaticScale","_init_extra_useStaticScale","_init_animationOwner","_init_extra_animationOwner","_init_origin","_init_extra_origin","_init_isPlacementRoot","_init_extra_isPlacementRoot","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","notify","persist","int32","enum","list","read","mat4","readwrite","boolean","string","quat","objectRef","carbon","method","impl","adapted","reason","implemented","contextual","displayFilter","objects","transformModifiers","curveSets","worldTransform","mute","display","name","translation","rotation","scaling","fromValues","localTransform","staticTransform","alwaysOn","updateOnDisplay","attachments","observers","fxAttributes","lights","controllers","inheritProperties","useSRT","useStaticRotation","useStaticScale","animationOwner","origin","isPlacementRoot","Map","createChildPerObjectRecords","isRendering","IsRendering","isUpdating","IsUpdating","Initialize","RegisterChildren","controller","IsLinked","Link","OnModified","value","MuteChildren","Setup","scale","lowestLodVisible","GetName","SetName","String","SetOrigin","Number","SetAlwaysOn","IsAlwaysOn","SetDisplayQualityModifier","filter","SetMute","next","child","observer","AddTransformModifier","modifier","push","AddObserver","AddController","SetVariable","SetControllerVariable","key","set","HandleControllerEvent","eventName","HandleEvent","StartControllers","Start","SetProceduralContainerVariable","GetEffectChildByName","target","AddToEffectChildrenList","RegisterChild","RemoveFromEffectChildrenList","index","indexOf","UnregisterChild","splice","SetShaderOption","attachment","SetAnimationOwner","SetIsPlacementRoot","AddAttachment","ClearAttachments","length","Empty","UpdateSyncronous","updateContext","params","ownerMaxSpeed","newParams","isVisible","childParent","copy","localToWorldTransform","Update","UpdateAsyncronous","parentTransform","UpdateTransform","inheritParentPerObjectData","spaceObjectParent","stampChildTransforms","frequency","controllerUpdateFrequency","boneCount","bones","applyTransformModifiers","activationStrength","velocity","GetWorldVelocity","worldVelocity","time","GetTime","currentTime","curveSet","renderContext","fxAttribute","light","SetBoneMatrix","UpdateLights","UpdateVisibility","parentLod","Tr2Lod","TR2_LOD_HIGH","HasRenderables","getBoneList","GetAnimationController","GetRenderables","out","GetBoundingSphere","vec4","_query","childSphere","success","sph3","union","GetLocalToWorldTransform","ChangeLOD","lod","GetLights","lightManager","m","Math","hypot","AddLight","GetBatches","batches","batchType","perObjectData","Tr2RenderReason","TR2RENDERREASON_NORMAL","committed","HasTransparentBatches","GetSortValue","GetPerObjectData","_accumulator","updater","animationUpdater","IsInitialized","vs","SetIndex","GetMeshBoneCount","ps","settings","shaderModel","DisplayQualityModifier","TR2SHADERMODEL","TR2SM_AUTHORING","ONLY_REFLECTIONS","SHADER_LOW","TR2SM_3_0_LO","SHADER_LOWMID","TR2SM_3_0_HI","SHADER_MED","SHADER_HIGHMID","SHADER_HIGH","TR2SM_3_0_DEPTH","SHADER_ALL","RegisterComponents","registry","GetComponentRegistry","RegisterComponent","EveComponentType","LightOwner","object","Register","UnRegisterComponents","UnRegister","PlayCurveSet","rangeName","PlayTimeRange","ResetTimeRange","Play","StopCurveSet","Stop","UpdateCurveSet","PlayAllCurveSets","StopAllCurveSets","GetCurveSetDuration","duration","max","GetMaxCurveDuration","GetRangeDuration","GetControllerValueByName","GetFloatVariableByName","undefined","GetOwnerMaxSpeed","SetOwner","owner","GetOwner","SetPartTag","tag","GetPartTag","CollectOwnedLocatorSets","childToObject","multiply","RebuildLocalTransform","CollectOwnedGeometry","areaPool","SetInheritProperties","colorSet","EveChildInheritProperties","SetProperties","IEveInheritPropertiesOwner","FindSoundEmitter","GetObserver","emitter","#DeriveChildParams","EveChildUpdateParams","Object","freeze","Origin","constructor"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EveChildContainer.js","sources":["../../../../../src/trinity/eve/child/EveChildContainer.js"],"sourcesContent":["// Source: trinity/trinity/Eve/SpaceObject/Children/EveChildContainer.h\r\n// Source: trinity/trinity/Eve/SpaceObject/Children/EveChildContainer.cpp\r\n// Source: trinity/trinity/Eve/SpaceObject/Children/EveChildContainer_Blue.cpp\r\nimport { EveEntity } from \"../EveEntity.js\";\r\nimport { BLUELISTEVENT } from \"#consts/blue\";\r\nimport { CjsModel } from \"#model\";\r\nimport { mat4 } from \"#math/mat4\";\r\nimport { IEveInheritPropertiesOwner } from \"../IEveInheritPropertiesOwner.js\";\r\nimport { quat } from \"#math/quat\";\r\nimport { sph3 } from \"#math/sph3\";\r\nimport { vec3 } from \"#math/vec3\";\r\nimport { getBoneList } from \"../../core/animation/Tr2GrannyAnimation.js\";\r\nimport { vec4 } from \"#math/vec4\";\r\nimport { carbon, impl, edit, type, CjsSchema } from \"#schema\";\r\nimport { EveChildTransform, applyTransformModifiers } from \"./EveChildTransform.js\";\r\nimport { EveChildInheritProperties } from \"./EveChildInheritProperties.js\";\r\nimport { EveChildUpdateParams } from \"../EveChildUpdateParams.js\";\r\nimport { EveComponentType } from \"../EveComponentTypes.js\";\r\nimport { Origin } from \"../../generated/eve/child/enums.js\";\r\nimport { Tr2RenderReason, TR2SHADERMODEL } from \"../../generated/trinityCore/enums.js\";\r\nimport { Tr2Lod } from \"../EveLODHelper.js\";\r\nimport { Tr2PerObjectData } from \"../../core/rawData/perObjectData/Tr2PerObjectData.js\";\r\nimport {\r\n createChildPerObjectRecords,\r\n inheritParentPerObjectData,\r\n stampChildTransforms\r\n} from \"../perObjectData/childPerObjectRecords.js\";\r\nimport { ITr2Renderable } from \"../../core/ITr2Renderable.js\";\r\n\r\n// Module scratch (read-only zero vector; container recursion forbids mutable\r\n// module scratch here - see GetBoundingSphere).\r\nconst ZERO_VEC3 = vec3.create();\r\n\r\n\r\n/**\r\n * Space-object child that groups other children under one transform, owning\r\n * their curve sets, controllers, observers, lights, attachments and transform\r\n * modifiers, and gating them on a display-quality filter.\r\n */\r\n@type.define({ className: \"EveChildContainer\", family: \"eve/child\" })\r\n@carbon.inherit(ITr2Renderable, IEveInheritPropertiesOwner)\r\nexport class EveChildContainer extends EveChildTransform\r\n{\r\n @edit.notify\r\n @edit.persist\r\n @type.int32\r\n @type.enum(\"DisplayQualityModifier\")\r\n displayFilter = 5;\r\n\r\n @edit.persist\r\n @type.list(\"IEveSpaceObjectChild\")\r\n objects = [];\r\n\r\n @edit.persist\r\n @type.list(\"IEveChildTransformModifier\")\r\n transformModifiers = [];\r\n\r\n @edit.persist\r\n @type.list(\"TriCurveSet\")\r\n curveSets = [];\r\n\r\n @edit.read\r\n @type.mat4\r\n worldTransform = mat4.create();\r\n\r\n @edit.notify\r\n @edit.readwrite\r\n @type.boolean\r\n mute = false;\r\n\r\n @edit.notify\r\n @edit.persist\r\n @type.boolean\r\n display = true;\r\n\r\n @edit.persist\r\n @type.string\r\n name = \"\";\r\n\r\n @edit.persist\r\n @type.vec3\r\n translation = vec3.create();\r\n\r\n @edit.persist\r\n @type.quat\r\n rotation = quat.create();\r\n\r\n @edit.persist\r\n @type.vec3\r\n scaling = vec3.fromValues(1, 1, 1);\r\n\r\n @edit.persist\r\n @type.mat4\r\n localTransform = mat4.create();\r\n\r\n @edit.persist\r\n @type.boolean\r\n staticTransform = false;\r\n\r\n @edit.persist\r\n @type.boolean\r\n alwaysOn = false;\r\n\r\n @edit.persist\r\n @type.boolean\r\n updateOnDisplay = true;\r\n\r\n @edit.persist\r\n @type.list(\"IEveSpaceObjectAttachment\")\r\n attachments = [];\r\n\r\n @edit.persist\r\n @type.list(\"TriObserverLocal\")\r\n observers = [];\r\n\r\n @edit.persist\r\n @type.list(\"IEveFxAttribute\")\r\n fxAttributes = [];\r\n\r\n @edit.persist\r\n @type.list(\"Tr2Light\")\r\n lights = [];\r\n\r\n @edit.persist\r\n @type.list(\"ITr2Controller\")\r\n controllers = [];\r\n\r\n @edit.persist\r\n @type.objectRef(\"EveChildInheritProperties\")\r\n inheritProperties = null;\r\n\r\n @edit.persist\r\n @type.boolean\r\n useSRT = true;\r\n\r\n @edit.persist\r\n @type.boolean\r\n useStaticRotation = false;\r\n\r\n @edit.persist\r\n @type.boolean\r\n useStaticScale = false;\r\n\r\n // SOF-authored placement values; persisted so the values interchange\r\n // reproduces Carbon's hidden container placement state.\r\n @edit.persist\r\n @type.objectRef(\"ITr2GrannyAnimationOwner\")\r\n animationOwner = null;\r\n\r\n @edit.persist\r\n @type.int32\r\n @type.enum(\"Origin\")\r\n origin = 0;\r\n\r\n @edit.persist\r\n @type.boolean\r\n isPlacementRoot = false;\r\n\r\n #controllerVariables = new Map();\r\n\r\n // Carbon m_worldVelocity/m_ownerMaxSpeed/m_activationStrength/m_hasUpdated:\r\n // runtime-only frame state (never persisted; Carbon keeps them out of the\r\n // Blue surface too).\r\n #worldVelocity = vec3.create();\r\n\r\n #ownerMaxSpeed = 0;\r\n\r\n #activationStrength = 1;\r\n\r\n /** m_vsData / m_psData - this container's PERSISTENT per-object pair. */\r\n #perObjectData = createChildPerObjectRecords();\r\n\r\n /** Carbon's local `lastWorldTransform`, kept across frames here. */\r\n #lastWorldTransform = mat4.create();\r\n\r\n #hasUpdated = false;\r\n\r\n /** Blue read-only property alias for IsRendering. */\r\n get isRendering()\r\n {\r\n return this.IsRendering();\r\n }\r\n\r\n /** Blue read-only property alias for IsUpdating. */\r\n get isUpdating()\r\n {\r\n return this.IsUpdating();\r\n }\r\n\r\n /**\r\n * Links every authored controller that is not already linked to this\r\n * container, so controller variables and events reach them.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n Initialize()\r\n {\r\n this.RegisterChildren(this.objects);\r\n for (const controller of this.controllers)\r\n {\r\n if (!controller?.IsLinked())\r\n {\r\n controller?.Link(this);\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n /** Carbon EveChildContainer::OnModified (cpp:76-88): display/displayFilter\r\n * changes re-register with the scene component registry; a mute notification\r\n * fans out to children and observers. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"Uses the exposed property name for native address comparisons and the runtime scene registry adapter.\")\r\n OnModified(value = null)\r\n {\r\n if (value === \"display\" || value === \"displayFilter\")\r\n {\r\n this.ReRegister();\r\n }\r\n else if (value === \"mute\")\r\n {\r\n this.MuteChildren();\r\n }\r\n return true;\r\n }\r\n\r\n /**\r\n * Applies the authored scale/rotation/translation through the shared child\r\n * transform setup and returns the rebuilt local transform; lowestLodVisible is\r\n * accepted for signature parity only.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n Setup(scale = null, rotation = null, translation = null, lowestLodVisible = null)\r\n {\r\n return super.Setup(scale, rotation, translation, lowestLodVisible);\r\n }\r\n\r\n /**\r\n * Returns the authored container name, which GetEffectChildByName matches\r\n * against on the parent side.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n GetName()\r\n {\r\n return this.name;\r\n }\r\n\r\n /** Sets the authored container name, coercing nullish to the empty string. */\r\n @carbon.method\r\n @impl.implemented\r\n SetName(name)\r\n {\r\n this.name = String(name ?? \"\");\r\n }\r\n\r\n /**\r\n * Records whether this container's placement was authored in space or by SOF\r\n * (the Origin enum).\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n SetOrigin(origin)\r\n {\r\n this.origin = Number(origin) | 0;\r\n }\r\n\r\n /** Stores the always-on flag that IsAlwaysOn reports to the owner. */\r\n @carbon.method\r\n @impl.implemented\r\n SetAlwaysOn(alwaysOn)\r\n {\r\n this.alwaysOn = !!alwaysOn;\r\n }\r\n\r\n /** Reports the authored always-on flag. */\r\n @carbon.method\r\n @impl.implemented\r\n IsAlwaysOn()\r\n {\r\n return this.alwaysOn;\r\n }\r\n\r\n /**\r\n * Sets the display-quality filter that IsRendering tests the current shader\r\n * model against, which in turn gates every update and render path on this\r\n * container.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n SetDisplayQualityModifier(filter)\r\n {\r\n this.displayFilter = Number(filter) | 0;\r\n }\r\n\r\n /**\r\n * Sets the mute flag and, only when it changes, pushes it down to the\r\n * contained children and local observers.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n SetMute(mute)\r\n {\r\n const next = !!mute;\r\n if (next !== this.mute)\r\n {\r\n this.mute = next;\r\n this.MuteChildren();\r\n }\r\n }\r\n\r\n /**\r\n * Pushes this container's current mute flag onto every contained child and\r\n * local observer - it mutates their state, not the container's.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n MuteChildren()\r\n {\r\n for (const child of this.objects)\r\n {\r\n child?.SetMute?.(this.mute);\r\n }\r\n for (const observer of this.observers)\r\n {\r\n observer?.SetMute(this.mute);\r\n }\r\n }\r\n\r\n /**\r\n * Appends a transform modifier; modifiers fold over the container's world\r\n * transform in insertion order on each async update.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n AddTransformModifier(modifier)\r\n {\r\n this.transformModifiers.push(modifier);\r\n }\r\n\r\n /**\r\n * Appends a local audio observer, which is re-placed from the container's\r\n * world transform on every sync update.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n AddObserver(observer)\r\n {\r\n this.observers.push(observer);\r\n }\r\n\r\n /**\r\n * Appends a controller, links it to this container, and replays every\r\n * controller variable set so far onto it so it starts in sync.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n AddController(controller)\r\n {\r\n // The link and the variable replay are the INSERTED arm (cpp:119-128).\r\n CjsModel.addChild(this, \"controllers\", controller);\r\n }\r\n\r\n /**\r\n * Records a named float variable, pushes it to every controller on this\r\n * container, and recurses into the contained children; the recorded value is\r\n * also replayed onto controllers and children added later.\r\n */\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)\r\n {\r\n controller?.SetVariable(key, next);\r\n }\r\n for (const child of this.objects)\r\n {\r\n child?.SetControllerVariable(key, next);\r\n }\r\n }\r\n\r\n /**\r\n * Fires a named controller event on every controller here and recurses into\r\n * the contained children.\r\n */\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)\r\n {\r\n controller?.HandleEvent(eventName);\r\n }\r\n for (const child of this.objects)\r\n {\r\n child?.HandleControllerEvent(eventName);\r\n }\r\n }\r\n\r\n /** Starts every controller here and recurses into the contained children. */\r\n @carbon.method\r\n @impl.implemented\r\n StartControllers()\r\n {\r\n for (const controller of this.controllers)\r\n {\r\n controller?.Start();\r\n }\r\n for (const child of this.objects)\r\n {\r\n child?.StartControllers();\r\n }\r\n }\r\n\r\n /**\r\n * Forwards a procedural container variable to the contained children; a plain\r\n * container holds none of its own.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n SetProceduralContainerVariable(name, value)\r\n {\r\n for (const child of this.objects)\r\n {\r\n child?.SetProceduralContainerVariable?.(name, value);\r\n }\r\n }\r\n\r\n /**\r\n * Returns the first direct child whose GetName()/name matches, or null; the\r\n * search does not recurse into nested containers.\r\n */\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.objects)\r\n {\r\n if ((child?.GetName?.() ?? child?.name ?? \"\") === target)\r\n {\r\n return child;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n /**\r\n * Carbon OnListModified (EveChildContainer.cpp:113-215), the owner reacting\r\n * to its own lists. Carbon installs itself on four of them at cpp:42-45.\r\n *\r\n * Controllers link and replay the recorded variables on insert, unlink on\r\n * remove, unlink every one on unload. Objects go through the shared\r\n * child-registration helper AND, when this container is in a registry,\r\n * register or unregister as entities; attachments do the entity half only.\r\n * A newly inserted object also receives the inherited properties.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n OnListModified(event, _key = 0, _key2 = 0, value = null, list = null)\r\n {\r\n const masked = event & BLUELISTEVENT.BELIST_EVENTMASK;\r\n const loading = (event & BLUELISTEVENT.BELIST_LOADING) !== 0;\r\n\r\n if (list === this.controllers && !loading)\r\n {\r\n if (masked === BLUELISTEVENT.BELIST_INSERTED && value)\r\n {\r\n value.Link(this);\r\n for (const [ name, variable ] of this.#controllerVariables) value.SetVariable(name, variable);\r\n }\r\n else if (masked === BLUELISTEVENT.BELIST_REMOVED && value) value.Unlink();\r\n else if (masked === BLUELISTEVENT.BELIST_UNLOADSTART)\r\n {\r\n for (const controller of this.controllers) controller.Unlink();\r\n }\r\n }\r\n else if (list === this.objects && !loading)\r\n {\r\n // Carbon's shared HandleChildrenListModified (EveSpaceObjectChild.h:340-367).\r\n if (masked === BLUELISTEVENT.BELIST_INSERTED && value) this.RegisterChild(value);\r\n else if (masked === BLUELISTEVENT.BELIST_REMOVED && value) this.UnregisterChild(value);\r\n else if (masked === BLUELISTEVENT.BELIST_UNLOADSTART)\r\n {\r\n for (const child of this.objects) this.UnregisterChild(child);\r\n }\r\n\r\n if (masked === BLUELISTEVENT.BELIST_INSERTED && value)\r\n {\r\n for (const [ name, variable ] of this.#controllerVariables) value.SetControllerVariable(name, variable);\r\n }\r\n\r\n this.#NotifyEntityRegistration(masked, value, this.objects);\r\n }\r\n\r\n if (list === this.attachments && !loading)\r\n {\r\n this.#NotifyEntityRegistration(masked, value, this.attachments);\r\n }\r\n\r\n if (list === this.objects && masked === BLUELISTEVENT.BELIST_INSERTED && this.inheritProperties\r\n && CjsSchema.cast(value, IEveInheritPropertiesOwner))\r\n {\r\n value.SetInheritProperties(this.inheritProperties.GetProperties());\r\n }\r\n if (list === this.lights && masked === BLUELISTEVENT.BELIST_INSERTED && this.inheritProperties\r\n && CjsSchema.cast(value, IEveInheritPropertiesOwner))\r\n {\r\n value.SetInheritProperties(this.inheritProperties.GetProperties());\r\n }\r\n if (list === this.lights)\r\n {\r\n const registry = this.GetComponentRegistry();\r\n if (registry)\r\n {\r\n if (masked === BLUELISTEVENT.BELIST_UNLOADSTART || (masked === BLUELISTEVENT.BELIST_REMOVED && !this.lights.length))\r\n {\r\n registry.UnRegisterComponent(EveComponentType.LightOwner, this);\r\n }\r\n else if (masked === BLUELISTEVENT.BELIST_INSERTED && this.lights.length === 1)\r\n {\r\n registry.RegisterComponent(EveComponentType.LightOwner, this);\r\n }\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Carbon cpp:148-177 and cpp:180-210, identical for objects and attachments:\r\n * entity registration only matters while this container is itself registered.\r\n */\r\n #NotifyEntityRegistration(masked, value, members)\r\n {\r\n if (!this.IsInRegistry()) return;\r\n const registry = this.GetComponentRegistry();\r\n if (!registry) return;\r\n\r\n // Carbon casts to EveEntityPtr before registering (cpp:152-176).\r\n if (masked === BLUELISTEVENT.BELIST_INSERTED)\r\n {\r\n const entity = CjsSchema.cast(value, EveEntity);\r\n if (entity) entity.Register(registry);\r\n }\r\n else if (masked === BLUELISTEVENT.BELIST_REMOVED)\r\n {\r\n const entity = CjsSchema.cast(value, EveEntity);\r\n if (entity) entity.UnRegister(registry);\r\n }\r\n else if (masked === BLUELISTEVENT.BELIST_UNLOADSTART)\r\n {\r\n for (const member of members)\r\n {\r\n const entity = CjsSchema.cast(member, EveEntity);\r\n if (entity) entity.UnRegister(registry);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Appends a child. The registration, the variable replay and the inherited\r\n * properties are the INSERTED arm's, reached through the managed mutation.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"A JavaScript array has no notify slot, so the owner drives the notification through CjsModel.addChild rather than the list driving it.\")\r\n AddToEffectChildrenList(child)\r\n {\r\n CjsModel.addChild(this, \"objects\", child);\r\n return child;\r\n }\r\n\r\n /** Removes a child by identity; the unregistration is the REMOVED arm's. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"A JavaScript array has no notify slot, so the owner drives the notification through CjsModel.removeChild rather than the list driving it.\")\r\n RemoveFromEffectChildrenList(child)\r\n {\r\n return CjsModel.removeChild(this, \"objects\", child);\r\n }\r\n\r\n /**\r\n * Forwards a shader option to every contained child and attachment; the\r\n * container compiles nothing itself.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n SetShaderOption(name, value)\r\n {\r\n for (const child of this.objects)\r\n {\r\n child?.SetShaderOption?.(name, value);\r\n }\r\n for (const attachment of this.attachments)\r\n {\r\n if (!attachment) continue;\r\n attachment.SetShaderOption(name, value);\r\n }\r\n }\r\n\r\n /**\r\n * Stores the Granny animation owner supplied by SOF placement; the bone-list\r\n * override that would consume it awaits the JS animation seam.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n SetAnimationOwner(animationOwner)\r\n {\r\n this.animationOwner = animationOwner ?? null;\r\n }\r\n\r\n /**\r\n * Flags this container as a SOF placement root - authored placement state,\r\n * persisted for interchange parity, with no consumer inside the container\r\n * itself.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n SetIsPlacementRoot(isPlacementRoot)\r\n {\r\n this.isPlacementRoot = !!isPlacementRoot;\r\n }\r\n\r\n /**\r\n * Appends an attachment; attachments are the only thing a container renders\r\n * itself (HasRenderables) and the only thing GetBatches submits.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n AddAttachment(attachment)\r\n {\r\n // Registering the attachment as an entity is the hook (cpp:180-210).\r\n CjsModel.addChild(this, \"attachments\", attachment);\r\n }\r\n\r\n /**\r\n * Drops every attachment, which also stops the container from contributing any\r\n * renderable of its own.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n ClearAttachments()\r\n {\r\n this.attachments.length = 0;\r\n }\r\n\r\n /**\r\n * Reports whether the container owns nothing at all - no children, lights,\r\n * attachments, controllers, curve sets, transform modifiers or observers.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n Empty()\r\n {\r\n return this.objects.length === 0 &&\r\n this.lights.length === 0 &&\r\n this.attachments.length === 0 &&\r\n this.controllers.length === 0 &&\r\n this.curveSets.length === 0 &&\r\n this.transformModifiers.length === 0 &&\r\n this.observers.length === 0;\r\n }\r\n\r\n /**\r\n * Sync-side frame update (Carbon EveChildContainer::UpdateSyncronous,\r\n * cpp:496-518): gate on IsUpdating, remember the owner max speed, then\r\n * recurse into the children with childParent params rebased onto this\r\n * container's world transform, and refresh the local observers.\r\n * @param {Object} updateContext - frame context (EveUpdateContext)\r\n * @param {EveChildUpdateParams} params\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n UpdateSyncronous(updateContext, params)\r\n {\r\n if (!this.IsUpdating())\r\n {\r\n return;\r\n }\r\n\r\n this.#ownerMaxSpeed = Number(params?.ownerMaxSpeed) || 0;\r\n\r\n const newParams = EveChildContainer.#DeriveChildParams(params);\r\n newParams.isVisible = (params?.isVisible !== false) && this.display;\r\n newParams.childParent = this;\r\n mat4.copy(newParams.localToWorldTransform, this.worldTransform);\r\n\r\n for (const child of this.objects)\r\n {\r\n child?.UpdateSyncronous(updateContext, newParams);\r\n }\r\n for (const observer of this.observers)\r\n {\r\n observer?.Update(this.worldTransform);\r\n }\r\n }\r\n\r\n /**\r\n * Per-frame async update (Carbon EveChildContainer::UpdateAsyncronous +\r\n * DoUpdateAsyncronous, cpp:520-641): rebuild the world transform from the\r\n * parent, tick the controllers, fold the transform modifiers, then recurse\r\n * into the children with childParent params, update the curve sets and fx\r\n * attributes, and refresh light/attachment bone state. Carbon's wrapper\r\n * advances the GPU bone ring buffer and may dispatch the body onto the\r\n * placement task group (cpp:522-538) - both engine-owned, so the JS port\r\n * runs the DoUpdateAsyncronous body inline behind the same IsUpdating gate.\r\n * @param {Object} updateContext - frame context (EveUpdateContext), threaded to modifiers\r\n * @param {EveChildUpdateParams} params - localToWorldTransform + boneCount/bones\r\n * @returns {Float32Array} worldTransform\r\n */\r\n @carbon.method\r\n @carbon.contextual([\"camera\"])\r\n @impl.adapted\r\n @impl.reason(\"The GPU bone ring buffer, task-group dispatch, per-object VS/PS struct refresh, and the Granny bone-list override are engine/animation seams; the CPU update fan-out is ported.\")\r\n UpdateAsyncronous(updateContext, params)\r\n {\r\n if (!this.IsUpdating())\r\n {\r\n return this.worldTransform;\r\n }\r\n\r\n const parentTransform = params?.localToWorldTransform;\r\n\r\n // Carbon captures the OUTGOING transform before rebuilding.\r\n mat4.copy(this.#lastWorldTransform, this.worldTransform);\r\n\r\n if (parentTransform && parentTransform.length === 16)\r\n {\r\n this.UpdateTransform(parentTransform);\r\n }\r\n\r\n // Carbon cpp:576-589: inherit the hull's per-object values, rebase the clip\r\n // data by this child's translation, then stamp our own transforms.\r\n inheritParentPerObjectData(this.#perObjectData, params?.spaceObjectParent, this.translation);\r\n stampChildTransforms(this.#perObjectData, this.worldTransform, this.#lastWorldTransform);\r\n\r\n const frequency = params?.controllerUpdateFrequency ?? 0.5;\r\n for (const controller of this.controllers)\r\n {\r\n controller?.Update(frequency);\r\n }\r\n\r\n // Carbon's DoUpdateAsyncronous overrides boneCount/bones from this\r\n // container's own animation controller here (Tr2GrannyAnimationUtils::\r\n // GetBoneList, cpp:556-559) before folding modifiers. AttachToBone already\r\n // consumes an explicitly threaded params palette; overriding that palette\r\n // from the animation controller remains deferred until the Granny\r\n // bone-list API is ported.\r\n const boneCount = params?.boneCount ?? 0;\r\n const bones = params?.bones ?? null;\r\n\r\n applyTransformModifiers(this, updateContext, boneCount, bones);\r\n\r\n this.#activationStrength = Number(params?.activationStrength ?? 1);\r\n\r\n // Carbon (cpp:568-590): when attachments exist the per-object VS/PS\r\n // structs are refreshed from the parent. This port retains persistent\r\n // RawData and returns it from GetPerObjectData; no live-object serializer\r\n // indirection is involved.\r\n\r\n const newParams = EveChildContainer.#DeriveChildParams(params);\r\n newParams.isVisible = (params?.isVisible !== false) && this.display;\r\n newParams.childParent = this;\r\n newParams.boneCount = boneCount;\r\n newParams.bones = bones;\r\n mat4.copy(newParams.localToWorldTransform, this.worldTransform);\r\n\r\n // Carbon (cpp:599-610): a space-object-rooted container samples the\r\n // owner's world velocity; nested containers inherit it via params.\r\n if (params?.spaceObjectParent)\r\n {\r\n if (!params.childParent)\r\n {\r\n const velocity = params.spaceObjectParent.GetWorldVelocity?.(this.#worldVelocity) ??\r\n params.spaceObjectParent.worldVelocity;\r\n if (velocity && velocity !== this.#worldVelocity)\r\n {\r\n vec3.copy(this.#worldVelocity, velocity);\r\n }\r\n vec3.copy(newParams.worldVelocity, this.#worldVelocity);\r\n }\r\n else\r\n {\r\n vec3.copy(this.#worldVelocity, params.worldVelocity ?? ZERO_VEC3);\r\n }\r\n }\r\n\r\n for (const child of this.objects)\r\n {\r\n child?.UpdateAsyncronous(updateContext, newParams);\r\n }\r\n\r\n // Carbon (cpp:617-624): container-owned curve sets tick with the frame\r\n // time as BOTH realTime and simTime.\r\n if (this.curveSets.length)\r\n {\r\n const time = Number(updateContext?.GetTime?.() ?? updateContext?.currentTime ?? updateContext?.time ?? 0);\r\n for (const curveSet of this.curveSets)\r\n {\r\n curveSet.Update(time, time, updateContext.renderContext);\r\n }\r\n }\r\n\r\n for (const fxAttribute of this.fxAttributes)\r\n {\r\n fxAttribute.UpdateAsyncronous(updateContext, newParams);\r\n }\r\n\r\n for (const light of this.lights)\r\n {\r\n light?.SetBoneMatrix?.(bones, boneCount);\r\n }\r\n\r\n for (const attachment of this.attachments)\r\n {\r\n if (!attachment) continue;\r\n attachment.UpdateLights(this.worldTransform, bones, boneCount, this.#activationStrength, 0);\r\n }\r\n\r\n this.#hasUpdated = true;\r\n return this.worldTransform;\r\n }\r\n\r\n /**\r\n * Frame visibility fan-out (Carbon EveChildContainer::UpdateVisibility,\r\n * cpp:379-410): gate on display/IsUpdating, recurse into the children with\r\n * the unchanged parent transform/LOD, then refresh attachment visibility\r\n * against this container's world transform.\r\n * @param {Object} updateContext - frame context (frustum ducks)\r\n * @param {Float32Array} parentTransform\r\n * @param {Number} parentLod - parent Tr2Lod level\r\n * @returns {Boolean} whether the fan-out ran\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n UpdateVisibility(updateContext, parentTransform = null, parentLod = Tr2Lod.TR2_LOD_HIGH)\r\n {\r\n if (!this.display)\r\n {\r\n return false;\r\n }\r\n if (!this.IsUpdating())\r\n {\r\n return false;\r\n }\r\n\r\n for (const child of this.objects)\r\n {\r\n child?.UpdateVisibility(updateContext, parentTransform, parentLod);\r\n }\r\n\r\n if (this.HasRenderables())\r\n {\r\n // cpp:398-409 - the container has no updater of its own; the palette\r\n // comes from whichever object owns the animation.\r\n const { bones, boneCount } = getBoneList(this.animationOwner?.GetAnimationController?.());\r\n\r\n for (const attachment of this.attachments)\r\n {\r\n if (!attachment) continue;\r\n attachment.UpdateVisibility(updateContext, this.worldTransform, bones, boneCount);\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n /** Carbon EveChildContainer::GetRenderables (cpp:412-432): the container\r\n * itself renders only when it owns attachments; children always recurse. */\r\n @carbon.method\r\n @impl.implemented\r\n GetRenderables(out = [])\r\n {\r\n if (!this.display || !this.#hasUpdated)\r\n {\r\n return out;\r\n }\r\n if (!this.IsRendering())\r\n {\r\n return out;\r\n }\r\n\r\n if (this.HasRenderables())\r\n {\r\n out.push(this);\r\n }\r\n\r\n for (const child of this.objects)\r\n {\r\n child?.GetRenderables(out);\r\n }\r\n return out;\r\n }\r\n\r\n /** Carbon EveChildContainer::GetBoundingSphere (cpp:434-452): the union of\r\n * the children's spheres (BoundingSphereSetOrUpdate -> sph3.union). The\r\n * child sphere is a per-call local rather than module scratch because\r\n * containers nest - a shared scratch would be clobbered between recursion\r\n * levels; this is a bounds query, not the per-frame update hot path. */\r\n @carbon.method\r\n @impl.implemented\r\n GetBoundingSphere(out = vec4.create(), _query = 0)\r\n {\r\n if (!this.IsUpdating())\r\n {\r\n return false;\r\n }\r\n\r\n const childSphere = vec4.create();\r\n let success = false;\r\n for (const child of this.objects)\r\n {\r\n if (child?.GetBoundingSphere?.(childSphere))\r\n {\r\n if (success)\r\n {\r\n sph3.union(out, out, childSphere);\r\n }\r\n else\r\n {\r\n vec4.copy(out, childSphere);\r\n }\r\n success = true;\r\n }\r\n }\r\n return success;\r\n }\r\n\r\n /** Carbon EveChildContainer::GetLocalToWorldTransform (cpp:644-647); the\r\n * optional out follows the EveChildInstancedMeshes copy-out shape. */\r\n @carbon.method\r\n @impl.implemented\r\n GetLocalToWorldTransform(out = null)\r\n {\r\n if (out)\r\n {\r\n return mat4.copy(out, this.worldTransform);\r\n }\r\n return this.worldTransform;\r\n }\r\n\r\n /** Carbon EveChildContainer::ChangeLOD (cpp:649-655): fan-out only. */\r\n @carbon.method\r\n @impl.implemented\r\n ChangeLOD(lod)\r\n {\r\n for (const child of this.objects)\r\n {\r\n child?.ChangeLOD?.(lod);\r\n }\r\n }\r\n\r\n /** Carbon EveChildContainer::GetLights (cpp:657-675): each light is added\r\n * with the container world transform and the average basis-length scaling\r\n * ((|X| + |Y| + |Z|) / 3 of the world basis rows - single-matrix reads, no\r\n * composition). The light manager is duck-typed. */\r\n @carbon.method\r\n @impl.implemented\r\n GetLights(lightManager)\r\n {\r\n if (!this.display || !this.#hasUpdated)\r\n {\r\n return;\r\n }\r\n if (!this.IsRendering())\r\n {\r\n return;\r\n }\r\n\r\n const m = this.worldTransform;\r\n const scaling = (\r\n Math.hypot(m[0], m[1], m[2]) +\r\n Math.hypot(m[4], m[5], m[6]) +\r\n Math.hypot(m[8], m[9], m[10])\r\n ) / 3;\r\n\r\n for (const light of this.lights)\r\n {\r\n light?.AddLight(lightManager, m, scaling);\r\n }\r\n }\r\n\r\n /** Carbon EveChildContainer::GetBatches (cpp:1134-1143): attachments only,\r\n * gated on display, the NORMAL render reason, and a non-zero activation\r\n * strength. Returns whether any batch was committed (JS addition; Carbon\r\n * returns void). */\r\n @carbon.method\r\n @impl.implemented\r\n GetBatches(batches, batchType, perObjectData, reason = Tr2RenderReason.TR2RENDERREASON_NORMAL)\r\n {\r\n if (!this.display || reason !== Tr2RenderReason.TR2RENDERREASON_NORMAL || this.#activationStrength === 0)\r\n {\r\n return false;\r\n }\r\n\r\n let committed = false;\r\n for (const attachment of this.attachments)\r\n {\r\n if (!attachment) continue;\r\n committed = attachment.GetBatches(batches, batchType, perObjectData, reason) === true || committed;\r\n }\r\n return committed;\r\n }\r\n\r\n /** Carbon EveChildContainer::HasTransparentBatches (cpp:1145-1148). */\r\n @carbon.method\r\n @impl.implemented\r\n HasTransparentBatches()\r\n {\r\n return false;\r\n }\r\n\r\n /** Carbon EveChildContainer::GetSortValue (cpp:1150-1153). */\r\n @carbon.method\r\n @impl.implemented\r\n GetSortValue()\r\n {\r\n return 0;\r\n }\r\n\r\n /**\r\n * Carbon EveChildContainer::GetPerObjectData (cpp:1180-1203): uploads the\r\n * animation owner's bone palette, then hands back a handle over this\r\n * container's two PERSISTENT buffers. The ring offsets are GPU addresses with\r\n * no CPU derivation and keep their defaults; the bone COUNT is CPU-known.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"GPU ring-buffer offsets have no CPU derivation and keep their defaults; every CPU-known field is filled.\")\r\n GetPerObjectData(_accumulator = null)\r\n {\r\n const updater = this.animationOwner?.animationUpdater ?? this.animationUpdater;\r\n\r\n if (updater?.IsInitialized?.())\r\n {\r\n this.#perObjectData.vs.SetIndex(\"boneOffsets\", 2, [ updater.GetMeshBoneCount?.() ?? 0 ]);\r\n }\r\n\r\n return { vs: this.#perObjectData.vs, ps: this.#perObjectData.ps };\r\n }\r\n\r\n /** Carbon EveChildContainer::HasRenderables (cpp:1129-1132): the container\r\n * renders only for its attachments. */\r\n @carbon.method\r\n @impl.implemented\r\n HasRenderables()\r\n {\r\n return this.attachments.length > 0;\r\n }\r\n\r\n /** Carbon EveChildContainer::IsRendering (cpp:334-362): whether the current\r\n * shader model passes this container's display filter. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"Carbon reads the Tr2Renderer shader-model global; the browser runtime stamps EveChildContainer.shaderModel (default TR2SM_3_0_DEPTH, the DX11 depth path EVE ships).\")\r\n IsRendering()\r\n {\r\n const settings = EveChildContainer.shaderModel;\r\n const filter = EveChildContainer.DisplayQualityModifier;\r\n\r\n if (settings === TR2SHADERMODEL.TR2SM_AUTHORING && this.displayFilter !== filter.ONLY_REFLECTIONS)\r\n {\r\n return true;\r\n }\r\n\r\n switch (this.displayFilter)\r\n {\r\n case filter.SHADER_LOW:\r\n return settings === TR2SHADERMODEL.TR2SM_3_0_LO;\r\n case filter.SHADER_LOWMID:\r\n return settings <= TR2SHADERMODEL.TR2SM_3_0_HI;\r\n case filter.SHADER_MED:\r\n return settings === TR2SHADERMODEL.TR2SM_3_0_HI;\r\n case filter.SHADER_HIGHMID:\r\n return settings >= TR2SHADERMODEL.TR2SM_3_0_HI;\r\n case filter.SHADER_HIGH:\r\n return settings === TR2SHADERMODEL.TR2SM_3_0_DEPTH;\r\n case filter.SHADER_ALL:\r\n return true;\r\n case filter.ONLY_REFLECTIONS:\r\n return false;\r\n }\r\n return false;\r\n }\r\n\r\n /** Carbon EveChildContainer::IsUpdating (cpp:364-367). */\r\n @carbon.method\r\n @impl.implemented\r\n IsUpdating()\r\n {\r\n return (this.display || !this.updateOnDisplay) &&\r\n (this.IsRendering() || this.displayFilter === EveChildContainer.DisplayQualityModifier.ONLY_REFLECTIONS);\r\n }\r\n\r\n /** Carbon EveChildContainer::RegisterComponents (cpp:258-284): LightOwner\r\n * when lights are authored, then forwards the contained objects and the\r\n * attachments. Gate m_display && IsUpdating(). */\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 && this.IsUpdating())\r\n {\r\n if (this.lights.length)\r\n {\r\n registry.RegisterComponent(EveComponentType.LightOwner, this);\r\n }\r\n\r\n for (const object of this.objects)\r\n {\r\n object?.Register(registry);\r\n }\r\n\r\n for (const attachment of this.attachments)\r\n {\r\n attachment?.Register(registry);\r\n }\r\n }\r\n }\r\n\r\n /** Carbon EveChildContainer::UnRegisterComponents (cpp:290-311): forwards\r\n * the contained objects and attachments only (own components were already\r\n * removed by EveEntity::UnRegister, EveEntity.cpp:90); no display/IsUpdating\r\n * 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 object of this.objects)\r\n {\r\n object?.UnRegister(registry);\r\n }\r\n\r\n for (const attachment of this.attachments)\r\n {\r\n attachment?.UnRegister(registry);\r\n }\r\n }\r\n }\r\n\r\n /** Carbon EveChildContainer::PlayCurveSet (cpp:682-712): named own sets play\r\n * (or play a named range); children recurse via the curve-set-owner duck. */\r\n @carbon.method\r\n @impl.implemented\r\n PlayCurveSet(name, rangeName = \"\")\r\n {\r\n if (!this.IsUpdating())\r\n {\r\n return;\r\n }\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)\r\n {\r\n continue;\r\n }\r\n if (rangeName)\r\n {\r\n curveSet.PlayTimeRange?.(rangeName);\r\n }\r\n else\r\n {\r\n curveSet.ResetTimeRange();\r\n curveSet.Play();\r\n }\r\n }\r\n\r\n for (const child of this.objects)\r\n {\r\n child?.PlayCurveSet?.(target, rangeName);\r\n }\r\n }\r\n\r\n /** Carbon EveChildContainer::StopCurveSet (cpp:746-768). */\r\n @carbon.method\r\n @impl.implemented\r\n StopCurveSet(name)\r\n {\r\n if (!this.IsUpdating())\r\n {\r\n return;\r\n }\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)\r\n {\r\n curveSet.Stop();\r\n }\r\n }\r\n\r\n for (const child of this.objects)\r\n {\r\n child?.StopCurveSet?.(target);\r\n }\r\n }\r\n\r\n /** Carbon EveChildContainer::UpdateCurveSet (cpp:770-786): samples matching\r\n * own and child sets at an explicit time (both clocks, as Carbon does). */\r\n @carbon.method\r\n @impl.implemented\r\n UpdateCurveSet(name, time, renderContext = null)\r\n {\r\n const target = String(name ?? \"\");\r\n for (const curveSet of this.curveSets)\r\n {\r\n if (curveSet.GetName() === target)\r\n {\r\n curveSet.Update(time, time, renderContext);\r\n }\r\n }\r\n\r\n for (const child of this.objects)\r\n {\r\n child?.UpdateCurveSet?.(target, time, renderContext);\r\n }\r\n }\r\n\r\n /** Carbon EveChildContainer::PlayAllCurveSets (cpp:714-728): children\r\n * first, then every own set. */\r\n @carbon.method\r\n @impl.implemented\r\n PlayAllCurveSets()\r\n {\r\n for (const child of this.objects)\r\n {\r\n child?.PlayAllCurveSets?.();\r\n }\r\n for (const curveSet of this.curveSets)\r\n {\r\n curveSet?.Play();\r\n }\r\n }\r\n\r\n /** Carbon EveChildContainer::StopAllCurveSets (cpp:730-744). */\r\n @carbon.method\r\n @impl.implemented\r\n StopAllCurveSets()\r\n {\r\n for (const child of this.objects)\r\n {\r\n child?.StopAllCurveSets?.();\r\n }\r\n for (const curveSet of this.curveSets)\r\n {\r\n curveSet?.Stop();\r\n }\r\n }\r\n\r\n /** Carbon EveChildContainer::GetCurveSetDuration (cpp:788-813): maximum\r\n * GetMaxCurveDuration over matching own and child sets. */\r\n @carbon.method\r\n @impl.implemented\r\n GetCurveSetDuration(name)\r\n {\r\n if (!this.IsUpdating())\r\n {\r\n return 0;\r\n }\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\r\n for (const child of this.objects)\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 /** Carbon EveChildContainer::GetRangeDuration (cpp:815-840): maximum named\r\n * range duration over matching own and child sets. */\r\n @carbon.method\r\n @impl.implemented\r\n GetRangeDuration(name, rangeName)\r\n {\r\n if (!this.IsUpdating())\r\n {\r\n return 0;\r\n }\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\r\n for (const child of this.objects)\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 /** Carbon EveChildContainer::GetControllerValueByName (cpp:1083-1098):\r\n * Carbon returns bool with a float& out; the JS port returns the value or\r\n * null when no controller exposes the named float variable. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"The bool + float& out-param pair collapses to value-or-null in JS.\")\r\n GetControllerValueByName(name)\r\n {\r\n const key = String(name ?? \"\");\r\n for (const controller of this.controllers)\r\n {\r\n const value = controller?.GetFloatVariableByName?.(key);\r\n if (value !== undefined && value !== null)\r\n {\r\n return Number(value);\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n /** Carbon EveChildContainer::GetWorldVelocity (cpp:1012-1015). */\r\n @carbon.method\r\n @impl.implemented\r\n GetWorldVelocity(out = vec3.create())\r\n {\r\n return vec3.copy(out, this.#worldVelocity);\r\n }\r\n\r\n /** Carbon EveChildContainer::GetOwnerMaxSpeed (cpp:1073-1076). */\r\n @carbon.method\r\n @impl.implemented\r\n GetOwnerMaxSpeed()\r\n {\r\n return this.#ownerMaxSpeed;\r\n }\r\n\r\n /** Propagates the owning space object through the complete child subtree. */\r\n @carbon.method\r\n @impl.implemented\r\n SetOwner(owner)\r\n {\r\n if (this.GetOwner() === owner) return;\r\n super.SetOwner(owner);\r\n for (const child of this.objects) child.SetOwner(owner);\r\n }\r\n\r\n /** Propagates a modular part tag through the complete child subtree. */\r\n @carbon.method\r\n @impl.implemented\r\n SetPartTag(tag)\r\n {\r\n const next = Number(tag) >>> 0;\r\n if (this.GetPartTag() === next) return;\r\n super.SetPartTag(next);\r\n for (const child of this.objects) child.SetPartTag(next);\r\n }\r\n\r\n /** Collects locator sets owned by nested children in object-local space. */\r\n @carbon.method\r\n @impl.implemented\r\n CollectOwnedLocatorSets(parentTransform, out)\r\n {\r\n const childToObject = mat4.create();\r\n mat4.multiply(childToObject, parentTransform, this.RebuildLocalTransform());\r\n for (const child of this.objects) child.CollectOwnedLocatorSets(childToObject, out);\r\n }\r\n\r\n /** Collects geometry owned by nested children in object-local space. */\r\n @carbon.method\r\n @impl.implemented\r\n CollectOwnedGeometry(type, parentTransform, out, areaPool)\r\n {\r\n const childToObject = mat4.create();\r\n mat4.multiply(childToObject, parentTransform, this.RebuildLocalTransform());\r\n for (const child of this.objects) child.CollectOwnedGeometry(type, childToObject, out, areaPool);\r\n }\r\n\r\n /** Carbon EveChildContainer::SetInheritProperties (cpp:1017-1040): lazily\r\n * creates the property holder, then fans the color set out to children and\r\n * lights. */\r\n @carbon.method\r\n @impl.implemented\r\n SetInheritProperties(colorSet)\r\n {\r\n if (!this.inheritProperties)\r\n {\r\n this.inheritProperties = new EveChildInheritProperties();\r\n }\r\n this.inheritProperties.SetProperties(colorSet);\r\n\r\n for (const child of this.objects)\r\n {\r\n if (CjsSchema.cast(child, IEveInheritPropertiesOwner)) child.SetInheritProperties(colorSet);\r\n }\r\n for (const light of this.lights)\r\n {\r\n if (CjsSchema.cast(light, IEveInheritPropertiesOwner)) light.SetInheritProperties(colorSet);\r\n }\r\n }\r\n\r\n /** Carbon EveChildContainer::FindSoundEmitter (cpp:1042-1066): named local\r\n * observers first, then duck-typed recursion into the children. */\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\"\r\n ? observer.GetObserver()\r\n : observer.observer ?? null;\r\n }\r\n }\r\n\r\n for (const child of this.objects)\r\n {\r\n const emitter = child?.FindSoundEmitter?.(target);\r\n if (emitter)\r\n {\r\n return emitter;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n // Copies the caller's params into a fresh child-facing record (Carbon copies\r\n // EveChildUpdateParams by value, cpp:505/592). Allocated per call like\r\n // EveSpaceObject2's child fan-out - container recursion makes a module\r\n // scratch record unsafe.\r\n\r\n /**\r\n * Copies the caller's update params into a fresh child-facing record (Carbon\r\n * passes EveChildUpdateParams by value, cpp:505/592); allocated per call\r\n * because container recursion makes a shared module scratch record unsafe.\r\n */\r\n static #DeriveChildParams(params)\r\n {\r\n const next = new EveChildUpdateParams();\r\n if (params)\r\n {\r\n next.spaceObjectParent = params.spaceObjectParent ?? null;\r\n next.childParent = params.childParent ?? null;\r\n next.boneCount = params.boneCount ?? 0;\r\n next.bones = params.bones ?? null;\r\n next.ownerMaxSpeed = Number(params.ownerMaxSpeed) || 0;\r\n next.activationStrength = Number(params.activationStrength ?? 1);\r\n next.controllerUpdateFrequency = Number(params.controllerUpdateFrequency ?? 0.5);\r\n next.isVisible = params.isVisible !== false;\r\n if (params.localToWorldTransform?.length === 16)\r\n {\r\n mat4.copy(next.localToWorldTransform, params.localToWorldTransform);\r\n }\r\n if (params.worldVelocity)\r\n {\r\n vec3.copy(next.worldVelocity, params.worldVelocity);\r\n }\r\n }\r\n return next;\r\n }\r\n\r\n // Carbon reads Tr2Renderer::GetShaderModel() (a renderer global); the\r\n // browser runtime stamps it here. TR2SM_3_0_DEPTH is the DX11 depth path\r\n // EVE ships, so every quality-gated container renders by default.\r\n static shaderModel = TR2SHADERMODEL.TR2SM_3_0_DEPTH;\r\n\r\n static DisplayQualityModifier = Object.freeze({\r\n ONLY_REFLECTIONS: 6,\r\n SHADER_ALL: 5,\r\n SHADER_HIGHMID: 3,\r\n SHADER_LOWMID: 1,\r\n SHADER_HIGH: 4,\r\n SHADER_MED: 2,\r\n SHADER_LOW: 0\r\n });\r\n\r\n static Origin = Origin;\r\n\r\n}\r\n"],"names":["ZERO_VEC3","vec3","create","_EveChildContainer","_identity","EveChildContainer","EveChildTransform","e","_init_displayFilter","_init_extra_displayFilter","_init_objects","_init_extra_objects","_init_transformModifiers","_init_extra_transformModifiers","_init_curveSets","_init_extra_curveSets","_init_worldTransform","_init_extra_worldTransform","_init_mute","_init_extra_mute","_init_display","_init_extra_display","_init_name","_init_extra_name","_init_translation","_init_extra_translation","_init_rotation","_init_extra_rotation","_init_scaling","_init_extra_scaling","_init_localTransform","_init_extra_localTransform","_init_staticTransform","_init_extra_staticTransform","_init_alwaysOn","_init_extra_alwaysOn","_init_updateOnDisplay","_init_extra_updateOnDisplay","_init_attachments","_init_extra_attachments","_init_observers","_init_extra_observers","_init_fxAttributes","_init_extra_fxAttributes","_init_lights","_init_extra_lights","_init_controllers","_init_extra_controllers","_init_inheritProperties","_init_extra_inheritProperties","_init_useSRT","_init_extra_useSRT","_init_useStaticRotation","_init_extra_useStaticRotation","_init_useStaticScale","_init_extra_useStaticScale","_init_animationOwner","_init_extra_animationOwner","_init_origin","_init_extra_origin","_init_isPlacementRoot","_init_extra_isPlacementRoot","_initProto","c","_initClass","_applyDecs","type","define","className","family","carbon","inherit","ITr2Renderable","IEveInheritPropertiesOwner","edit","notify","persist","int32","enum","list","read","mat4","readwrite","boolean","string","quat","objectRef","method","impl","adapted","reason","implemented","contextual","displayFilter","objects","transformModifiers","curveSets","worldTransform","mute","display","name","translation","rotation","scaling","fromValues","localTransform","staticTransform","alwaysOn","updateOnDisplay","attachments","observers","fxAttributes","lights","controllers","inheritProperties","useSRT","useStaticRotation","useStaticScale","animationOwner","origin","isPlacementRoot","Map","createChildPerObjectRecords","isRendering","IsRendering","isUpdating","IsUpdating","Initialize","RegisterChildren","controller","IsLinked","Link","OnModified","value","ReRegister","MuteChildren","Setup","scale","lowestLodVisible","GetName","SetName","String","SetOrigin","Number","SetAlwaysOn","IsAlwaysOn","SetDisplayQualityModifier","filter","SetMute","next","child","observer","AddTransformModifier","modifier","push","AddObserver","AddController","CjsModel","addChild","SetControllerVariable","key","set","SetVariable","HandleControllerEvent","eventName","HandleEvent","StartControllers","Start","SetProceduralContainerVariable","GetEffectChildByName","target","OnListModified","event","_key","_key2","masked","BLUELISTEVENT","BELIST_EVENTMASK","loading","BELIST_LOADING","BELIST_INSERTED","variable","BELIST_REMOVED","Unlink","BELIST_UNLOADSTART","RegisterChild","UnregisterChild","CjsSchema","cast","SetInheritProperties","GetProperties","registry","GetComponentRegistry","length","UnRegisterComponent","EveComponentType","LightOwner","RegisterComponent","#NotifyEntityRegistration","members","IsInRegistry","entity","EveEntity","Register","UnRegister","member","AddToEffectChildrenList","RemoveFromEffectChildrenList","removeChild","SetShaderOption","attachment","SetAnimationOwner","SetIsPlacementRoot","AddAttachment","ClearAttachments","Empty","UpdateSyncronous","updateContext","params","ownerMaxSpeed","newParams","isVisible","childParent","copy","localToWorldTransform","Update","UpdateAsyncronous","parentTransform","UpdateTransform","inheritParentPerObjectData","spaceObjectParent","stampChildTransforms","frequency","controllerUpdateFrequency","boneCount","bones","applyTransformModifiers","activationStrength","velocity","GetWorldVelocity","worldVelocity","time","GetTime","currentTime","curveSet","renderContext","fxAttribute","light","SetBoneMatrix","UpdateLights","UpdateVisibility","parentLod","Tr2Lod","TR2_LOD_HIGH","HasRenderables","getBoneList","GetAnimationController","GetRenderables","out","GetBoundingSphere","vec4","_query","childSphere","success","sph3","union","GetLocalToWorldTransform","ChangeLOD","lod","GetLights","lightManager","m","Math","hypot","AddLight","GetBatches","batches","batchType","perObjectData","Tr2RenderReason","TR2RENDERREASON_NORMAL","committed","HasTransparentBatches","GetSortValue","GetPerObjectData","_accumulator","updater","animationUpdater","IsInitialized","vs","SetIndex","GetMeshBoneCount","ps","settings","shaderModel","DisplayQualityModifier","TR2SHADERMODEL","TR2SM_AUTHORING","ONLY_REFLECTIONS","SHADER_LOW","TR2SM_3_0_LO","SHADER_LOWMID","TR2SM_3_0_HI","SHADER_MED","SHADER_HIGHMID","SHADER_HIGH","TR2SM_3_0_DEPTH","SHADER_ALL","RegisterComponents","object","UnRegisterComponents","PlayCurveSet","rangeName","PlayTimeRange","ResetTimeRange","Play","StopCurveSet","Stop","UpdateCurveSet","PlayAllCurveSets","StopAllCurveSets","GetCurveSetDuration","duration","max","GetMaxCurveDuration","GetRangeDuration","GetControllerValueByName","GetFloatVariableByName","undefined","GetOwnerMaxSpeed","SetOwner","owner","GetOwner","SetPartTag","tag","GetPartTag","CollectOwnedLocatorSets","childToObject","multiply","RebuildLocalTransform","CollectOwnedGeometry","areaPool","colorSet","EveChildInheritProperties","SetProperties","FindSoundEmitter","GetObserver","emitter","#DeriveChildParams","EveChildUpdateParams","Object","freeze","Origin","constructor"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { identity as _identity, applyDecs2311 as _applyDecs2311 } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
-
import {
|
|
2
|
+
import { edit, type, carbon, impl } from '#schema';
|
|
3
3
|
import { EveChildContainer as _EveChildContainer } from './EveChildContainer.js';
|
|
4
4
|
import { quat } from '#math/quat';
|
|
5
5
|
import { vec3 } from '#math/vec3';
|
|
@@ -57,7 +57,7 @@ new class extends _identity {
|
|
|
57
57
|
} = _applyDecs2311(this, [type.define({
|
|
58
58
|
className: "EveChildEffectPropagator",
|
|
59
59
|
family: "eve/child"
|
|
60
|
-
})], [[[
|
|
60
|
+
})], [[[edit, edit.notify, edit, edit.persist, type, type.int32, void 0, type.enum("PropagationType")], 16, "propagationType"], [[edit, edit.notify, edit, edit.persist, type, type.int32, void 0, type.enum("TriggerType")], 16, "triggerMethood"], [[edit, edit.notify, edit, edit.persist, type, type.float32], 16, "stopAfterNumTriggers"], [[edit, edit.notify, edit, edit.persist, type, type.float32], 16, "randScaleMin"], [[edit, edit.notify, edit, edit.persist, type, type.float32], 16, "randScaleMax"], [[edit, edit.persist, type, type.vec3], 16, "triggerSphereOffset"], [[edit, edit.notify, edit, edit.persistOnly, void 0, type.model("EveChildInstanceContainer")], 16, "effect"], [[edit, edit.persist, type, type.float32], 16, "stopToClearDelay"], [[edit, edit.notify, edit, edit.persist, type, type.float32], 16, "ClosenessPreference"], [[edit, edit.notify, edit, edit.persist, type, type.vec3], 16, "effectScaling"], [[edit, edit.notify, edit, edit.persist, type, type.float32], 16, "durationPerEffect"], [[edit, edit.read, type, type.boolean], 16, "isPlaying"], [[edit, edit.persist, void 0, type.model("EveLocatorSets")], 16, "localLocators"], [[edit, edit.persist, void 0, type.model("Tr2CurveScalar")], 16, "triggerSphereRadiusCurve"], [[edit, edit.read, type, type.float32], 16, "triggerSphereScalarMulti"], [[edit, edit.notify, edit, edit.persist, type, type.string], 16, "locatorSetName"], [[edit, edit.notify, edit, edit.persist, type, type.float32], 16, "completeness"], [[edit, edit.persist, type, type.boolean], 16, "replayAfterDelay"], [[edit, edit.readwrite, type, type.boolean], 16, "trigger"], [[edit, edit.notify, edit, edit.persist, type, type.float32], 16, "minRangeThreshold"], [[edit, edit.read, type, type.float32], 16, "playTime"], [[edit, edit.notify, edit, edit.persist, type, type.float32], 16, "range"], [[edit, edit.notify, edit, edit.persist, type, type.int64], 16, "numTriggers"], [[edit, edit.notify, edit, edit.persist, type, type.float32], 16, "frequency"], [[edit, edit.persist, type, type.boolean], 16, "skipCleanup"], [[carbon, carbon.method, impl, impl.implemented], 18, "Play"], [[carbon, carbon.method, impl, impl.adapted, void 0, impl.reason("The staged instance container does not yet expose Carbon's native ClearInstanceList helper, so plain hydrated instance lists are cleared directly as a fallback.")], 18, "Stop"], [[carbon, carbon.method, impl, impl.adapted, void 0, impl.reason("DisableEditMode is duck-typed - the staged instance container has not ported its edit-mode surface yet.")], 18, "Initialize"], [[carbon, carbon.method, impl, impl.adapted, void 0, impl.reason("Field matching follows the repo OnModified duck and DisableEditMode is duck-typed on the staged instance container.")], 18, "OnModified"], [[carbon, carbon.method, impl, impl.adapted, void 0, impl.reason("CreateInstance is duck-typed - the staged instance container has not ported its instance-spawning surface yet.")], 18, "ManageTriggers"], [[carbon, carbon.method, impl, impl.adapted, void 0, impl.reason("CreateInstance on the staged instance container is duck-typed; the trigger bookkeeping is ported.")], 18, "UpdateSyncronous"], [[carbon, carbon.method, impl, impl.implemented], 18, "UpdateTriggerCurve"], [[carbon, carbon.method, impl, impl.adapted, void 0, impl.reason("CreateInstance/PopFront on the staged instance container are duck-typed; the interval bookkeeping is ported.")], 18, "UpdateTriggerInterval"], [[carbon, carbon.method, impl, impl.adapted, void 0, impl.reason("Math.random replaces Carbon's unseeded TriRandInt, matching the BehaviorGroup/EveSpaceObject2 precedent.")], 18, "GetSmartRandomLocatorIndex"], [[carbon, carbon.method, void 0, carbon.contextual(["camera"]), impl, impl.implemented], 18, "UpdateAsyncronous"], [[carbon, carbon.method, impl, impl.implemented], 18, "UpdateVisibility"], [[carbon, carbon.method, impl, impl.implemented], 18, "GetRenderables"], [[carbon, carbon.method, impl, impl.adapted, void 0, impl.reason("Math.random replaces Carbon's unseeded TriRand, matching the EveSpaceObject2 precedent.")], 18, "ProcessLocalLocators"], [[carbon, carbon.method, impl, impl.adapted, void 0, impl.reason("Math.random replaces Carbon's unseeded TriRand and the EveSpaceObject2 BlueCast becomes a duck check on the locator/bounds surface.")], 18, "ProcessRefLocators"], [[carbon, carbon.method, impl, impl.adapted, void 0, impl.reason("Math.random replaces Carbon's unseeded TriRand, matching the EveSpaceObject2 precedent.")], 18, "ProcessRandomSpreadLocators"], [[carbon, carbon.method, impl, impl.implemented], 18, "ProcessLocators"], [[carbon, carbon.method, impl, impl.adapted, void 0, impl.reason("Math.random replaces Carbon's unseeded TriRand, matching the EveSpaceObject2 precedent.")], 18, "RecalculateLocatorSizes"], [[carbon, carbon.method, impl, impl.implemented], 18, "DistanceSortLocators"], [[carbon, carbon.method, impl, impl.implemented], 18, "GetEffect"], [[carbon, carbon.method, impl, impl.implemented], 18, "SetEffect"], [[carbon, carbon.method, impl, impl.implemented], 18, "SetControllerVariable"], [[carbon, carbon.method, impl, impl.implemented], 18, "RegisterComponents"], [[carbon, carbon.method, impl, impl.implemented], 18, "UnRegisterComponents"]], 0, void 0, _EveChildContainer));
|
|
61
61
|
}
|
|
62
62
|
/** m_type (PropagationType - enum PropagationType) [READWRITE, PERSIST, ENUM, NOTIFY] */
|
|
63
63
|
propagationType = (_initProto(this), _init_propagationType(this, 0));
|
|
@@ -180,19 +180,19 @@ new class extends _identity {
|
|
|
180
180
|
* the playTime re-anchor on frequency changes. The value argument follows
|
|
181
181
|
* the repo's OnModified duck (field name or field value). */
|
|
182
182
|
OnModified(value = null) {
|
|
183
|
-
if (value === "effect"
|
|
183
|
+
if (value === "effect") {
|
|
184
184
|
this.effect?.DisableEditMode?.(true);
|
|
185
185
|
}
|
|
186
|
-
if (value === "completeness"
|
|
186
|
+
if (value === "completeness") {
|
|
187
187
|
this.completeness = Math.min(1, Math.max(0, this.completeness));
|
|
188
188
|
}
|
|
189
|
-
if (value === "randScaleMin"
|
|
189
|
+
if (value === "randScaleMin") {
|
|
190
190
|
this.randScaleMin = Math.min(this.randScaleMax, Math.max(0, this.randScaleMin));
|
|
191
191
|
}
|
|
192
|
-
if (value === "randScaleMax"
|
|
192
|
+
if (value === "randScaleMax") {
|
|
193
193
|
this.randScaleMax = Math.max(this.randScaleMax, this.randScaleMin);
|
|
194
194
|
}
|
|
195
|
-
if (value === "frequency"
|
|
195
|
+
if (value === "frequency") {
|
|
196
196
|
if (this.frequency !== 0) {
|
|
197
197
|
this.playTime = this.#currentTriggerIndex / this.frequency;
|
|
198
198
|
}
|
|
@@ -556,8 +556,8 @@ new class extends _identity {
|
|
|
556
556
|
return this.effect;
|
|
557
557
|
}
|
|
558
558
|
|
|
559
|
-
/** Carbon EveChildEffectPropagator::SetEffect (cpp:645-654): unregisters
|
|
560
|
-
* the current effect from both the component registry and child hierarchy,
|
|
559
|
+
/** Carbon EveChildEffectPropagator::SetEffect (cpp:645-654): unregisters
|
|
560
|
+
* the current effect from both the component registry and child hierarchy,
|
|
561
561
|
* installs the replacement, then registers it with both owners. */
|
|
562
562
|
SetEffect(effect) {
|
|
563
563
|
this.UnRegisterComponents();
|