@carbonenginejs/runtime 0.1.0-alpha.3 → 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 +79 -98
- 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/index.js +1 -1
- package/dist/global/schema/CjsSchema.js +177 -51
- package/dist/global/schema/CjsSchema.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 +57 -24
- package/dist/index.js.map +1 -1
- package/dist/resource/CjsResMan.js +33 -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 +0 -1
- 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 +659 -564
- 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 +9 -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/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 +23 -22
- package/dist/resource/texture/TriTextureRes.js.map +1 -1
- 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 +151 -148
- 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 +299 -227
- 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 +2 -2
- 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 +525 -431
- 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/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 +14 -10
- 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/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/video.md +92 -0
- package/docs/resource/reference/events.md +10 -9
- package/docs/resource/reference/queues.md +8 -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":"Tr2ShadowMap.js","sources":["../../../../src/trinity/core/Tr2ShadowMap.js"],"sourcesContent":["// Source: trinity/trinity/Tr2ShadowMap.h\n// trinity/trinity/Tr2ShadowMap.cpp\r\nimport { carbon, impl, io, type } from \"#schema\";\r\nimport { CjsModel } from \"#model\";\r\nimport { mat4 } from \"#math/mat4\";\r\nimport { vec3 } from \"#math/vec3\";\r\nimport { vec4 } from \"#math/vec4\";\r\nimport { PixelFormat, TextureType } from \"#consts/render-context\";\r\nimport { Tr2GpuUsage } from \"#consts/render-context\";\r\nimport { Tr2Effect } from \"../shader/Tr2Effect.js\";\r\nimport { Tr2Denoiser } from \"./Tr2Denoiser.js\";\r\nimport { Tr2VariableStore } from \"./variable/Tr2VariableStore.js\";\r\nimport { TriFrustumOrtho } from \"./view/TriFrustumOrtho.js\";\r\n\r\nconst SHADOW_FRUSTUM_COUNT = 16;\r\nconst SHADOW_MAP_WIDTH = 8;\r\nconst SHADOW_MAP_HEIGHT = 2;\r\n\r\nconst STATIC_SPLITS = Object.freeze([\r\n 25, 75, 150, 300,\r\n 600, 1200, 2400, 4800,\r\n 9600, 19200, 38400, 76800,\r\n 153600, 307200, 614400, 1228800\r\n]);\r\n\r\nconst DX_UNIT_CUBE = Object.freeze([\r\n Object.freeze([ -1, -1, 0 ]), Object.freeze([ -1, 1, 0 ]),\r\n Object.freeze([ 1, 1, 0 ]), Object.freeze([ 1, -1, 0 ]),\r\n Object.freeze([ -1, -1, 1 ]), Object.freeze([ -1, 1, 1 ]),\r\n Object.freeze([ 1, 1, 1 ]), Object.freeze([ 1, -1, 1 ])\r\n]);\r\n\r\nconst PROJECTION_SCRATCH = mat4.create();\r\nconst INVERSE_PROJECTION_SCRATCH = mat4.create();\r\nconst BASIS_SCRATCH = mat4.create();\r\nconst LIGHT_VIEW_SCRATCH = mat4.create();\r\nconst ORTHO_SCRATCH = mat4.create();\r\nconst TRANSFORMED_SCRATCH = vec4.create();\r\nconst WORLD_SCRATCH = vec3.create();\r\nconst LIGHT_DIRECTION_SCRATCH = vec3.create();\r\n\r\nfunction createPerSplitData()\r\n{\r\n return {\r\n ShadowMapValues: Array.from({ length: 4 }, () => vec4.create()),\r\n ShadowMatrixVal: Array.from({ length: SHADOW_FRUSTUM_COUNT }, () => mat4.create()),\r\n CascadeRanges: Array.from({ length: SHADOW_FRUSTUM_COUNT }, () => vec4.create()),\r\n SplitInfo: vec4.create()\r\n };\r\n}\r\n\r\nfunction createSplitSetup()\r\n{\r\n return {\r\n shadowFrustum: new TriFrustumOrtho(),\r\n lightViewProjection: mat4.create(),\r\n invViewProj: mat4.create(),\r\n aabb: { min: vec3.create(), max: vec3.create() },\r\n corners: Array.from({ length: 8 }, () => vec3.create())\r\n };\r\n}\r\n\r\nfunction createShadowEffect()\r\n{\r\n const effect = new Tr2Effect();\r\n\r\n effect.SetEffectPathName(\"res:/graphics/effect/managed/space/system/ShadowDepth.fx\");\r\n\r\n // DECLARED BY CLEARING, which is Carbon (`cpp:41-42`), not by\r\n // AddResourceTexture2D. The difference is not cosmetic: a res-path slot and a\r\n // runtime slot are different classes, so declaring the res-path kind here left\r\n // SetParameter unable to find a runtime slot to update - it added a new one on\r\n // every call, and a per-frame resolve grew the resource list without bound.\r\n effect.SetParameter(\"EveSpaceSceneCascadedShadowMap\", null);\r\n effect.SetParameter(\"DepthMap\", null);\r\n return effect;\r\n}\r\n\r\n/** Carbon PerspectiveOffCenterMatrix: D3D zero-to-one depth. */\r\nfunction writePerspectiveOffCenter(out, left, right, bottom, top, near, far)\r\n{\r\n out.fill(0);\r\n out[0] = 2 * near / (right - left);\r\n out[5] = -2 * near / (bottom - top);\r\n out[8] = 1 + 2 * left / (right - left);\r\n out[9] = -1 - 2 * top / (bottom - top);\r\n out[10] = far / (near - far);\r\n out[11] = -1;\r\n out[14] = near * far / (near - far);\r\n return out;\r\n}\r\n\r\n/** Carbon OrthoNormalBasisZ. Flat matrix bytes match gl-matrix storage. */\r\nfunction writeOrthoNormalBasisZ(out, z)\r\n{\r\n mat4.identity(out);\r\n const length = Math.hypot(z[0], z[1], z[2]);\r\n const zx = z[0] / length;\r\n const zy = z[1] / length;\r\n const zz = z[2] / length;\r\n out[8] = zx;\r\n out[9] = zy;\r\n out[10] = zz;\r\n\r\n const xx = Math.abs(zx) > 0.99 ? 0 : 1;\r\n const xy = Math.abs(zx) > 0.99 ? 1 : 0;\r\n let yx = xy * zz;\r\n let yy = -xx * zz;\r\n let yz = xx * zy - xy * zx;\r\n const yLength = Math.hypot(yx, yy, yz);\r\n yx /= yLength;\r\n yy /= yLength;\r\n yz /= yLength;\r\n\r\n out[4] = yx;\r\n out[5] = yy;\r\n out[6] = yz;\r\n out[0] = yy * zz - yz * zy;\r\n out[1] = yz * zx - yx * zz;\r\n out[2] = yx * zy - yy * zx;\r\n return out;\r\n}\r\n\r\n/** Carbon OrthoOffCenterMatrix: D3D zero-to-one depth. */\r\nfunction writeOrthoOffCenter(out, left, right, bottom, top, near, far)\r\n{\r\n mat4.identity(out);\r\n out[0] = 2 / (right - left);\r\n out[5] = 2 / (top - bottom);\r\n out[10] = 1 / (near - far);\r\n out[12] = -1 - 2 * left / (right - left);\r\n out[13] = 1 + 2 * top / (bottom - top);\r\n out[14] = near / (near - far);\r\n return out;\r\n}\r\n\r\n/** Cascaded-shadow split producer; engines realize only its GPU operations. */\r\n@type.define({ className: \"Tr2ShadowMap\", family: \"trinityCore\" })\r\nexport class Tr2ShadowMap extends CjsModel\r\n{\r\n @io.notify\r\n @io.persist\r\n @type.int32\r\n @type.enum(\"ShadowSplitMode\")\r\n shadowSplitMode = 0;\r\n\r\n @io.readwrite\r\n @type.objectRef(\"Tr2Denoiser\")\r\n denoiser = new Tr2Denoiser();\r\n\r\n @io.readwrite\r\n @type.objectRef(\"Tr2Effect\")\r\n cascadeEffect = createShadowEffect();\r\n\r\n @io.notify\r\n @io.read\r\n @type.uint32\r\n splitCount = SHADOW_FRUSTUM_COUNT;\r\n\r\n @io.notify\r\n @io.readwrite\r\n @type.boolean\r\n debugColorSplit = false;\r\n\r\n @io.readwrite\r\n @type.float32\r\n SplitNr15 = STATIC_SPLITS[15];\r\n\r\n @io.readwrite\r\n @type.float32\r\n SplitNr8 = STATIC_SPLITS[8];\r\n\r\n @io.readwrite\r\n @type.float32\r\n SplitNr6 = STATIC_SPLITS[6];\r\n\r\n @io.readwrite\r\n @type.float32\r\n SplitNr5 = STATIC_SPLITS[5];\r\n\r\n @io.readwrite\r\n @type.float32\r\n SplitNr14 = STATIC_SPLITS[14];\r\n\r\n @io.readwrite\r\n @type.float32\r\n SplitNr10 = STATIC_SPLITS[10];\r\n\r\n @io.readwrite\r\n @type.float32\r\n SplitNr13 = STATIC_SPLITS[13];\r\n\r\n @io.readwrite\r\n @type.float32\r\n SplitNr4 = STATIC_SPLITS[4];\r\n\r\n @io.readwrite\r\n @type.float32\r\n SplitNr3 = STATIC_SPLITS[3];\r\n\r\n @io.readwrite\r\n @type.float32\r\n SplitNr7 = STATIC_SPLITS[7];\r\n\r\n @io.readwrite\r\n @type.float32\r\n SplitNr1 = STATIC_SPLITS[1];\r\n\r\n @io.readwrite\r\n @type.float32\r\n SplitNr9 = STATIC_SPLITS[9];\r\n\r\n @io.readwrite\r\n @type.float32\r\n SplitNr0 = STATIC_SPLITS[0];\r\n\r\n @io.readwrite\r\n @type.float32\r\n SplitNr11 = STATIC_SPLITS[11];\r\n\r\n @io.readwrite\r\n @type.float32\r\n SplitNr12 = STATIC_SPLITS[12];\r\n\r\n @io.readwrite\r\n @type.float32\r\n SplitNr2 = STATIC_SPLITS[2];\r\n\r\n @io.notify\r\n @io.readwrite\r\n @type.boolean\r\n disableShimmer = true;\r\n\r\n @io.readwrite\r\n @type.uint32\r\n size = 2048;\r\n\r\n perSplitData = createPerSplitData();\r\n\r\n #width = SHADOW_MAP_WIDTH;\r\n\r\n #height = SHADOW_MAP_HEIGHT;\r\n\r\n #oldZFar = 0;\r\n\r\n #useDenoiser = true;\r\n\r\n #lastNearClip = 0;\r\n\r\n #lastFarClip = 0;\r\n\r\n #lastShadowSplitMode = Tr2ShadowMap.ShadowSplitMode.STATIC;\r\n\r\n #lastDebugColorSplit = false;\r\n\r\n #splitSetups = Array.from({ length: SHADOW_FRUSTUM_COUNT }, () => createSplitSetup());\r\n\r\n /** Creates the logical effect/denoiser state and reserves Carbon's globals. */\r\n constructor()\r\n {\r\n super();\r\n const store = Tr2VariableStore.GlobalStore();\r\n store.RegisterVariable(\"EveSpaceSceneShadowMap\");\r\n store.RegisterVariable(\"EveSpaceSceneCascadedShadowMap\");\r\n }\r\n\r\n /** Applies the atlas element size/count and the one-way denoiser disable. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"The fixed PerSplitData arrays make split counts above Carbon's 16-slot capacity fail immediately instead of corrupting adjacent native memory.\")\r\n Setup(elementSize, elementCount, useDenoiser)\r\n {\r\n const nextSize = elementSize >>> 0;\r\n const nextCount = elementCount >>> 0;\r\n if (nextCount > SHADOW_FRUSTUM_COUNT)\r\n {\r\n throw new RangeError(`Tr2ShadowMap supports at most ${SHADOW_FRUSTUM_COUNT} splits.`);\r\n }\r\n if (this.size !== nextSize || this.splitCount !== nextCount)\r\n {\r\n this.size = nextSize;\r\n this.splitCount = nextCount;\r\n this.perSplitData.SplitInfo[0] = nextCount;\r\n }\r\n this.#useDenoiser = Boolean(useDenoiser);\r\n if (!this.#useDenoiser)\r\n {\r\n this.denoiser = null;\r\n }\r\n }\r\n\r\n /** Applies Carbon's notification consequences from the current owned state. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"CjsModel notifications expose settled state rather than Be::Var identity, so this compares the two notify-backed values against their cached state.\")\r\n OnModified()\r\n {\r\n if (this.debugColorSplit !== this.#lastDebugColorSplit)\r\n {\r\n this.cascadeEffect.SetOption(\"SHADOW_DEBUG_MODE\", this.debugColorSplit ? \"SDM_COLOR\" : \"SDM_NONE\");\r\n this.#lastDebugColorSplit = this.debugColorSplit;\r\n }\r\n\r\n if (this.shadowSplitMode !== this.#lastShadowSplitMode)\r\n {\r\n if (this.shadowSplitMode === Tr2ShadowMap.ShadowSplitMode.STATIC)\r\n {\r\n this.#SetStaticShadowSplits();\r\n }\r\n else if (this.shadowSplitMode === Tr2ShadowMap.ShadowSplitMode.DYNAMIC)\r\n {\r\n this.#lastNearClip = 0;\r\n this.#lastFarClip = 0;\r\n }\r\n this.#lastShadowSplitMode = this.shadowSplitMode;\r\n }\r\n\r\n this.perSplitData.SplitInfo[0] = this.splitCount;\r\n return true;\r\n }\r\n\r\n @carbon.method\r\n @impl.implemented\r\n /** Changes whether an existing denoiser should be used for future results. */\r\n ShouldUseDenoiser(value)\r\n {\r\n this.#useDenoiser = Boolean(value);\r\n }\r\n\r\n /** Engine-facing read of Carbon's private denoiser-use switch. */\r\n @impl.custom\r\n @impl.reason(\"The nominal engine executor needs Carbon's private denoiser-use decision without reading implementation fields.\")\r\n GetUseDenoiser()\r\n {\r\n return this.#useDenoiser;\r\n }\r\n\r\n /** Recomputes geometric dynamic split endpoints when the clip range changes. */\r\n @carbon.method\r\n @impl.implemented\r\n UpdateSplitValues(nearClip, farClip)\r\n {\r\n if (this.shadowSplitMode !== Tr2ShadowMap.ShadowSplitMode.DYNAMIC) return;\r\n if (this.#lastNearClip === nearClip && this.#lastFarClip === farClip) return;\r\n\r\n this.#lastNearClip = nearClip;\r\n this.#lastFarClip = farClip;\r\n const logNear = Math.log2(nearClip);\r\n const logFar = Math.log2(farClip);\r\n for (let index = 0; index < this.splitCount; index++)\r\n {\r\n this.#SetSplitValue(index, Math.pow(2, logNear + (logFar - logNear) * ((index + 1) / this.splitCount)));\r\n }\r\n }\r\n\r\n /**\r\n * Transforms the D3D clip cube through projection inverse, inverse view and\r\n * light view, returning its light-space bounds and writing all eight corners.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"The caller supplies owned JS output containers; matrix bytes stay in logical gl-matrix form and are never pre-transposed.\")\r\n static CalculateAABB(\r\n projection,\r\n invViewTransform,\r\n lightView,\r\n corners,\r\n out = { min: vec3.create(), max: vec3.create() }\r\n )\r\n {\r\n mat4.invert(INVERSE_PROJECTION_SCRATCH, projection);\r\n const min = out.min;\r\n const max = out.max;\r\n min[0] = min[1] = min[2] = Infinity;\r\n max[0] = max[1] = max[2] = -Infinity;\r\n\r\n for (let index = 0; index < DX_UNIT_CUBE.length; index++)\r\n {\r\n const source = DX_UNIT_CUBE[index];\r\n TRANSFORMED_SCRATCH[0] = source[0];\r\n TRANSFORMED_SCRATCH[1] = source[1];\r\n TRANSFORMED_SCRATCH[2] = source[2];\r\n TRANSFORMED_SCRATCH[3] = 1;\r\n vec4.transformMat4(TRANSFORMED_SCRATCH, TRANSFORMED_SCRATCH, INVERSE_PROJECTION_SCRATCH);\r\n const inverseW = 1 / TRANSFORMED_SCRATCH[3];\r\n WORLD_SCRATCH[0] = TRANSFORMED_SCRATCH[0] * inverseW;\r\n WORLD_SCRATCH[1] = TRANSFORMED_SCRATCH[1] * inverseW;\r\n WORLD_SCRATCH[2] = TRANSFORMED_SCRATCH[2] * inverseW;\r\n vec3.transformMat4(WORLD_SCRATCH, WORLD_SCRATCH, invViewTransform);\r\n vec3.transformMat4(corners[index], WORLD_SCRATCH, lightView);\r\n\r\n const corner = corners[index];\r\n min[0] = Math.min(min[0], corner[0]);\r\n min[1] = Math.min(min[1], corner[1]);\r\n min[2] = Math.min(min[2], corner[2]);\r\n max[0] = Math.max(max[0], corner[0]);\r\n max[1] = Math.max(max[1], corner[1]);\r\n max[2] = Math.max(max[2], corner[2]);\r\n }\r\n return out;\r\n }\r\n\r\n /**\r\n * Builds one logical light-view-projection split and its shader data.\r\n *\r\n * The returned object is an allocation-free borrowed view for this split and\r\n * is overwritten the next time the same split index is prepared.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"Carbon stores Transpose(lightViewProjection) and returns SplitSetup by value; Trinity stores the logical matrix for RawData's terminal transpose and reuses one allocation-free result per split.\")\r\n SetupShadowSplit(splitIndex, invViewTransform, lightDirection, zNear, leftDivNear, rightDivNear, topDivNear, bottomDivNear)\r\n {\r\n if (!Number.isInteger(splitIndex) || splitIndex < 0 || splitIndex >= this.splitCount)\r\n {\r\n throw new RangeError(\"Tr2ShadowMap.SetupShadowSplit received an invalid split index.\");\r\n }\r\n\r\n const setup = this.#splitSetups[splitIndex];\r\n if (splitIndex === 0) this.#oldZFar = zNear;\r\n const zFar = this.#GetSplitValue(splitIndex);\r\n this.perSplitData.ShadowMapValues[splitIndex >> 2][splitIndex & 3] = zFar;\r\n\r\n const left = leftDivNear * this.#oldZFar;\r\n const right = rightDivNear * this.#oldZFar;\r\n const top = topDivNear * this.#oldZFar;\r\n const bottom = bottomDivNear * this.#oldZFar;\r\n writePerspectiveOffCenter(PROJECTION_SCRATCH, left, right, bottom, top, this.#oldZFar, zFar);\r\n this.#oldZFar = zFar;\r\n\r\n mat4.invert(INVERSE_PROJECTION_SCRATCH, PROJECTION_SCRATCH);\r\n // Carbon inverseProjection * inverseView; gl-matrix reverses the operands.\r\n mat4.multiply(setup.invViewProj, invViewTransform, INVERSE_PROJECTION_SCRATCH);\r\n\r\n LIGHT_DIRECTION_SCRATCH[0] = -lightDirection[0];\r\n LIGHT_DIRECTION_SCRATCH[1] = -lightDirection[1];\r\n LIGHT_DIRECTION_SCRATCH[2] = -lightDirection[2];\r\n writeOrthoNormalBasisZ(BASIS_SCRATCH, LIGHT_DIRECTION_SCRATCH);\r\n mat4.invert(LIGHT_VIEW_SCRATCH, BASIS_SCRATCH);\r\n\r\n Tr2ShadowMap.CalculateAABB(\r\n PROJECTION_SCRATCH,\r\n invViewTransform,\r\n LIGHT_VIEW_SCRATCH,\r\n setup.corners,\r\n setup.aabb\r\n );\r\n\r\n const min = setup.aabb.min;\r\n const max = setup.aabb.max;\r\n if (this.disableShimmer)\r\n {\r\n let maxDistance = 0;\r\n for (let first = 0; first < setup.corners.length; first++)\r\n {\r\n for (let second = first + 1; second < setup.corners.length; second++)\r\n {\r\n const a = setup.corners[first];\r\n const b = setup.corners[second];\r\n maxDistance = Math.max(maxDistance, Math.hypot(a[0] - b[0], a[1] - b[1], a[2] - b[2]));\r\n }\r\n }\r\n\r\n const radius = Math.ceil(maxDistance / 2);\r\n const texelSize = radius * 2 / this.size;\r\n const centerX = Math.floor(((min[0] + max[0]) * 0.5) / texelSize + 0.5) * texelSize;\r\n const centerY = Math.floor(((min[1] + max[1]) * 0.5) / texelSize + 0.5) * texelSize;\r\n const centerZ = (min[2] + max[2]) * 0.5;\r\n min[0] = centerX - radius;\r\n min[1] = centerY - radius;\r\n min[2] = centerZ - radius;\r\n max[0] = centerX + radius;\r\n max[1] = centerY + radius;\r\n max[2] = centerZ + radius;\r\n }\r\n\r\n writeOrthoOffCenter(ORTHO_SCRATCH, max[0], min[0], max[1], min[1], -max[2], -min[2]);\r\n // Carbon lightView * ortho; gl-matrix reverses the operands.\r\n mat4.multiply(setup.lightViewProjection, ORTHO_SCRATCH, LIGHT_VIEW_SCRATCH);\r\n\r\n const range = this.perSplitData.CascadeRanges[splitIndex];\r\n range[0] = max[0] - min[0];\r\n range[1] = max[1] - min[1];\r\n range[2] = max[2] - min[2];\r\n range[3] = 0;\r\n mat4.copy(this.perSplitData.ShadowMatrixVal[splitIndex], setup.lightViewProjection);\r\n setup.shadowFrustum.DeriveFrustum(LIGHT_VIEW_SCRATCH, min, max);\r\n return setup;\r\n }\r\n\r\n /**\r\n * Allocates the cascaded depth surface and makes it the render target.\r\n *\r\n * @param {object} gpuResourcePool The pool to borrow the surface from.\r\n * @param {object} renderContext The context to set state on.\r\n * @returns {object|null} The borrowed depth texture, or null when the pool\r\n * could not supply one - which Carbon notes happens on a lost device.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n PrepareShadowRendering(gpuResourcePool, renderContext)\r\n {\r\n const cascadedShadowDepth = gpuResourcePool.GetTempTexture(\"cascadedShadowDepth\", {\r\n width: this.size * this.#width,\r\n height: this.size * this.#height,\r\n format: PixelFormat.PIXEL_FORMAT_D32_FLOAT,\r\n gpuUsage: Tr2GpuUsage.DEPTH_STENCIL | Tr2GpuUsage.SHADER_RESOURCE\r\n });\r\n\r\n if (!cascadedShadowDepth || !cascadedShadowDepth.IsValid()) return null;\r\n\r\n const esm = renderContext.GetEffectStateManager();\r\n\r\n // The depth stencil IS the shadow map, so the colour target is pushed EMPTY -\r\n // Carbon passes a default-constructed Tr2TextureAL and comments it \"empty\r\n // texture\" (`cpp:238`). Null is that argument here. Omitting it would only\r\n // save the slot and leave the scene's colour target bound underneath the\r\n // whole shadow pass, which is what this line used to do.\r\n esm.PushViewport();\r\n esm.PushRenderTarget(null);\r\n esm.PushDepthStencilBuffer(cascadedShadowDepth);\r\n esm.UpdateRenderTargetViewport(cascadedShadowDepth.Get().GetWidth(), cascadedShadowDepth.Get().GetHeight());\r\n\r\n // Carbon wants a clean depth buffer for this pass and says so.\r\n renderContext.Clear({ depth: true, clearDepth: 1, clearStencil: 0 });\r\n renderContext.SetReadOnlyDepth(false);\r\n\r\n return cascadedShadowDepth;\r\n }\r\n\r\n /**\r\n * Points the viewport at one split's cell in the atlas.\r\n *\r\n * Eight cells per row: splits 0-7 fill the top row and 8 onward wrap to a\r\n * second, which is why the row index is `splitIndex % 8` and the y offset is\r\n * either zero or one cell down.\r\n *\r\n * @param {object} renderContext The context to set the viewport on.\r\n * @param {number} splitIndex Which cascade split.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n BeginShadowRendering(renderContext, splitIndex)\r\n {\r\n const esm = renderContext.GetEffectStateManager();\r\n const topRow = splitIndex < 8;\r\n\r\n esm.SetViewport({\r\n width: this.size,\r\n height: this.size,\r\n x: (topRow ? splitIndex : splitIndex % 8) * this.size,\r\n y: topRow ? 0 : this.size,\r\n minZ: 0,\r\n maxZ: 1\r\n });\r\n }\r\n\r\n /**\r\n * Unwinds everything `PrepareShadowRendering` pushed, in reverse.\r\n *\r\n * @param {object} renderContext The context to restore.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n EndShadowRendering(renderContext)\r\n {\r\n renderContext.SetReadOnlyDepth(false);\r\n\r\n const esm = renderContext.GetEffectStateManager();\r\n\r\n esm.PopRenderTarget();\r\n esm.PopDepthStencilBuffer();\r\n esm.PopViewport();\r\n }\r\n\r\n /**\r\n * Resolves the cascaded depth into a screen-space shadow factor.\r\n *\r\n * Carbon `DrawToShadowMapResult` (`cpp:278-305`). Borrow an R8 target the\r\n * size of the scene depth, bind it, run the shadow effect over a fullscreen\r\n * quad with the atlas and the depth map bound, then optionally denoise.\r\n *\r\n * THE DEPTH BUFFER IS PUSHED EMPTY, not merely saved. Carbon passes a\r\n * default-constructed Tr2TextureAL (`cpp:285`), which unbinds it - this pass\r\n * writes a full-screen factor and must not be depth-tested against the very\r\n * buffer it is reading.\r\n *\r\n * THE EFFECT'S TEXTURES ARE CLEARED IMMEDIATELY AFTER THE DRAW, as Carbon\r\n * does (`cpp:290-291`), so a later pass cannot inherit the atlas or the\r\n * scene depth from this one.\r\n *\r\n * `cascadeEffect` is Carbon's `m_shadowEffect` under our name - same\r\n * ShadowDepth.fx path, same two parameters (`cpp:39-42`).\r\n *\r\n * @param {object} renderContext The context to draw against.\r\n * @param {object} gpuResourcePool The pool to borrow the result target from.\r\n * @param {object} depthMap The scene depth.\r\n * @param {object} cascadedShadowDepth The atlas produced by this pass.\r\n * @param {number} upscaling The denoiser's upscaling factor.\r\n * @param {object} renderer The renderer owning the blitter.\r\n * @returns {object|null} The shadow-factor target, or null without a pool.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"Carbon reaches the blitter and the reversed-depth projection through static Tr2Renderer; ours are an instance and the render context, so the renderer is passed in.\")\r\n DrawToShadowMapResult(renderContext, gpuResourcePool, depthMap, cascadedShadowDepth, upscaling, renderer)\r\n {\r\n let shadowMapResult = gpuResourcePool.GetTempTexture(\"shadowMapResult\", {\r\n type: TextureType.TEX_TYPE_2D,\r\n width: depthMap.GetWidth(),\r\n height: depthMap.GetHeight(),\r\n depth: 1,\r\n mipCount: 1,\r\n format: PixelFormat.PIXEL_FORMAT_R8_UNORM,\r\n gpuUsage: Tr2GpuUsage.RENDER_TARGET | Tr2GpuUsage.SHADER_RESOURCE\r\n });\r\n\r\n const esm = renderContext.GetEffectStateManager();\r\n\r\n esm.PushRenderTarget(shadowMapResult.Get());\r\n esm.PushDepthStencilBuffer(null);\r\n\r\n try\r\n {\r\n this.cascadeEffect.SetParameter(\"EveSpaceSceneCascadedShadowMap\", cascadedShadowDepth);\r\n this.cascadeEffect.SetParameter(\"DepthMap\", depthMap);\r\n renderer.DrawScreenQuad(renderContext, this.cascadeEffect);\r\n this.cascadeEffect.SetParameter(\"EveSpaceSceneCascadedShadowMap\", null);\r\n this.cascadeEffect.SetParameter(\"DepthMap\", null);\r\n\r\n // Carbon gates on all three (`cpp:296`). Setup() nulls the denoiser when\r\n // it is disabled, so the useDenoiser flag and a present denoiser are not\r\n // the same question.\r\n if (this.denoiser && this.#useDenoiser && depthMap.IsValid())\r\n {\r\n shadowMapResult = this.denoiser.Apply(\r\n shadowMapResult,\r\n depthMap,\r\n null,\r\n renderContext.GetReversedDepthProjectionTransform(),\r\n upscaling,\r\n gpuResourcePool,\r\n renderContext,\r\n renderer\r\n );\r\n }\r\n\r\n return shadowMapResult;\r\n }\r\n finally\r\n {\r\n esm.PopRenderTarget();\r\n esm.PopDepthStencilBuffer();\r\n }\r\n }\r\n\r\n @carbon.method\r\n @impl.implemented\r\n /** Returns the number of active cascade splits. */\r\n GetShadowSplitCount()\r\n {\r\n return this.splitCount;\r\n }\r\n\r\n @carbon.method\r\n @impl.implemented\r\n /** Returns the square pixel size of one atlas cell. */\r\n GetShadowMapSize()\r\n {\r\n return this.size;\r\n }\r\n\r\n /** Returns the fixed number of atlas columns. */\r\n @impl.custom\r\n @impl.reason(\"The nominal engine executor needs Carbon's private fixed atlas width without reading implementation fields.\")\r\n GetShadowMapWidth()\r\n {\r\n return this.#width;\r\n }\r\n\r\n /** Returns the fixed number of atlas rows. */\r\n @impl.custom\r\n @impl.reason(\"The nominal engine executor needs Carbon's private fixed atlas height without reading implementation fields.\")\r\n GetShadowMapHeight()\r\n {\r\n return this.#height;\r\n }\r\n\r\n /** Returns the stable owned record consumed by scene per-frame packing. */\r\n @impl.custom\r\n @impl.reason(\"The scene needs a nominal direct accessor to Carbon's public PerSplitData without structural probing.\")\r\n GetPerSplitData()\r\n {\r\n return this.perSplitData;\r\n }\r\n\r\n @carbon.method\r\n @impl.implemented\r\n /** Returns the logical effect used to resolve the screen-space shadow mask. */\r\n GetShadowEffect()\r\n {\r\n return this.cascadeEffect;\r\n }\r\n\r\n @carbon.method\r\n @impl.implemented\r\n /** Reports whether cascade-debug colouring is enabled. */\r\n GetDebugSplitValue()\r\n {\r\n return this.debugColorSplit;\r\n }\r\n\r\n @carbon.method\r\n @impl.implemented\r\n /** Returns Carbon's packed debug colour for a cascade colour index. */\r\n GetDebugColors(switchCase)\r\n {\r\n switch (switchCase)\r\n {\r\n case 0: return 0xffffffff;\r\n case 1: return 0xffff0000;\r\n case 2: return 0xff00ff00;\r\n case 3: return 0xff0000ff;\r\n case 4: return 0xffffff00;\r\n case 5: return 0xff00ffff;\r\n case 6: return 0x2200ffff;\r\n case 7: return 0xff555555;\r\n case 8: return 0xff888888;\r\n default: return undefined;\r\n }\r\n }\r\n\r\n /** Restores the sixteen fixed Carbon cascade endpoints. */\r\n #SetStaticShadowSplits()\r\n {\r\n for (let index = 0; index < STATIC_SPLITS.length; index++)\r\n {\r\n this.#SetSplitValue(index, STATIC_SPLITS[index]);\r\n }\r\n }\r\n\r\n /** Writes one authored/dynamic split endpoint to its public field. */\r\n #SetSplitValue(index, value)\r\n {\r\n this[`SplitNr${index}`] = value;\r\n }\r\n\r\n /** Reads one split endpoint from its public field. */\r\n #GetSplitValue(index)\r\n {\r\n return this[`SplitNr${index}`];\r\n }\r\n\r\n static ShadowSplitMode = Object.freeze({\r\n STATIC: 0,\r\n DYNAMIC: 1,\r\n MANUAL: 2\r\n });\r\n}\r\n"],"names":["SHADOW_FRUSTUM_COUNT","SHADOW_MAP_WIDTH","SHADOW_MAP_HEIGHT","STATIC_SPLITS","Object","freeze","DX_UNIT_CUBE","PROJECTION_SCRATCH","mat4","create","INVERSE_PROJECTION_SCRATCH","BASIS_SCRATCH","LIGHT_VIEW_SCRATCH","ORTHO_SCRATCH","TRANSFORMED_SCRATCH","vec4","WORLD_SCRATCH","vec3","LIGHT_DIRECTION_SCRATCH","createPerSplitData","ShadowMapValues","Array","from","length","ShadowMatrixVal","CascadeRanges","SplitInfo","createSplitSetup","shadowFrustum","TriFrustumOrtho","lightViewProjection","invViewProj","aabb","min","max","corners","createShadowEffect","effect","Tr2Effect","SetEffectPathName","SetParameter","writePerspectiveOffCenter","out","left","right","bottom","top","near","far","fill","writeOrthoNormalBasisZ","z","identity","Math","hypot","zx","zy","zz","xx","abs","xy","yx","yy","yz","yLength","writeOrthoOffCenter","_Tr2ShadowMap","_identity","Tr2ShadowMap","CjsModel","e","_init_shadowSplitMode","_init_extra_shadowSplitMode","_init_denoiser","_init_extra_denoiser","_init_cascadeEffect","_init_extra_cascadeEffect","_init_splitCount","_init_extra_splitCount","_init_debugColorSplit","_init_extra_debugColorSplit","_init_SplitNr","_init_extra_SplitNr","_init_SplitNr2","_init_extra_SplitNr2","_init_SplitNr3","_init_extra_SplitNr3","_init_SplitNr4","_init_extra_SplitNr4","_init_SplitNr5","_init_extra_SplitNr5","_init_SplitNr6","_init_extra_SplitNr6","_init_SplitNr7","_init_extra_SplitNr7","_init_SplitNr8","_init_extra_SplitNr8","_init_SplitNr9","_init_extra_SplitNr9","_init_SplitNr0","_init_extra_SplitNr0","_init_SplitNr1","_init_extra_SplitNr1","_init_SplitNr10","_init_extra_SplitNr10","_init_SplitNr11","_init_extra_SplitNr11","_init_SplitNr12","_init_extra_SplitNr12","_init_SplitNr13","_init_extra_SplitNr13","_init_SplitNr14","_init_extra_SplitNr14","_init_disableShimmer","_init_extra_disableShimmer","_init_size","_init_extra_size","_initProto","_initStatic","c","_initClass","_applyDecs","type","define","className","family","io","notify","persist","int32","enum","readwrite","objectRef","read","uint32","boolean","float32","carbon","method","impl","adapted","reason","implemented","custom","shadowSplitMode","denoiser","Tr2Denoiser","cascadeEffect","splitCount","debugColorSplit","SplitNr15","SplitNr8","SplitNr6","SplitNr5","SplitNr14","SplitNr10","SplitNr13","SplitNr4","SplitNr3","SplitNr7","SplitNr1","SplitNr9","SplitNr0","SplitNr11","SplitNr12","SplitNr2","disableShimmer","size","perSplitData","ShadowSplitMode","STATIC","constructor","store","Tr2VariableStore","GlobalStore","RegisterVariable","Setup","elementSize","elementCount","useDenoiser","nextSize","nextCount","RangeError","Boolean","OnModified","SetOption","DYNAMIC","ShouldUseDenoiser","value","GetUseDenoiser","UpdateSplitValues","nearClip","farClip","logNear","log2","logFar","index","pow","CalculateAABB","projection","invViewTransform","lightView","invert","Infinity","source","transformMat4","inverseW","corner","SetupShadowSplit","splitIndex","lightDirection","zNear","leftDivNear","rightDivNear","topDivNear","bottomDivNear","Number","isInteger","setup","zFar","multiply","maxDistance","first","second","a","b","radius","ceil","texelSize","centerX","floor","centerY","centerZ","range","copy","DeriveFrustum","PrepareShadowRendering","gpuResourcePool","renderContext","cascadedShadowDepth","GetTempTexture","width","height","format","PixelFormat","PIXEL_FORMAT_D32_FLOAT","gpuUsage","Tr2GpuUsage","DEPTH_STENCIL","SHADER_RESOURCE","IsValid","esm","GetEffectStateManager","PushViewport","PushRenderTarget","PushDepthStencilBuffer","UpdateRenderTargetViewport","Get","GetWidth","GetHeight","Clear","depth","clearDepth","clearStencil","SetReadOnlyDepth","BeginShadowRendering","topRow","SetViewport","x","y","minZ","maxZ","EndShadowRendering","PopRenderTarget","PopDepthStencilBuffer","PopViewport","DrawToShadowMapResult","depthMap","upscaling","renderer","shadowMapResult","TextureType","TEX_TYPE_2D","mipCount","PIXEL_FORMAT_R8_UNORM","RENDER_TARGET","DrawScreenQuad","Apply","GetReversedDepthProjectionTransform","GetShadowSplitCount","GetShadowMapSize","GetShadowMapWidth","GetShadowMapHeight","GetPerSplitData","GetShadowEffect","GetDebugSplitValue","GetDebugColors","switchCase","undefined","#SetStaticShadowSplits","#SetSplitValue","#GetSplitValue","MANUAL"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Tr2ShadowMap.js","sources":["../../../../src/trinity/core/Tr2ShadowMap.js"],"sourcesContent":["// Source: trinity/trinity/Tr2ShadowMap.h\r\n// trinity/trinity/Tr2ShadowMap.cpp\r\nimport { carbon, impl, edit, type } from \"#schema\";\r\nimport { CjsModel } from \"#model\";\r\nimport { mat4 } from \"#math/mat4\";\r\nimport { vec3 } from \"#math/vec3\";\r\nimport { vec4 } from \"#math/vec4\";\r\nimport { PixelFormat, TextureType, Tr2GpuUsage } from \"#consts/render-context\";\r\nimport { Tr2Effect } from \"../shader/Tr2Effect.js\";\r\nimport { Tr2Denoiser } from \"./Tr2Denoiser.js\";\r\nimport { Tr2VariableStore } from \"./variable/Tr2VariableStore.js\";\r\nimport { TriFrustumOrtho } from \"./view/TriFrustumOrtho.js\";\r\n\r\nconst SHADOW_FRUSTUM_COUNT = 16;\r\nconst SHADOW_MAP_WIDTH = 8;\r\nconst SHADOW_MAP_HEIGHT = 2;\r\n\r\nconst STATIC_SPLITS = Object.freeze([\r\n 25, 75, 150, 300,\r\n 600, 1200, 2400, 4800,\r\n 9600, 19200, 38400, 76800,\r\n 153600, 307200, 614400, 1228800\r\n]);\r\n\r\nconst DX_UNIT_CUBE = Object.freeze([\r\n Object.freeze([ -1, -1, 0 ]), Object.freeze([ -1, 1, 0 ]),\r\n Object.freeze([ 1, 1, 0 ]), Object.freeze([ 1, -1, 0 ]),\r\n Object.freeze([ -1, -1, 1 ]), Object.freeze([ -1, 1, 1 ]),\r\n Object.freeze([ 1, 1, 1 ]), Object.freeze([ 1, -1, 1 ])\r\n]);\r\n\r\nconst PROJECTION_SCRATCH = mat4.create();\r\nconst INVERSE_PROJECTION_SCRATCH = mat4.create();\r\nconst BASIS_SCRATCH = mat4.create();\r\nconst LIGHT_VIEW_SCRATCH = mat4.create();\r\nconst ORTHO_SCRATCH = mat4.create();\r\nconst TRANSFORMED_SCRATCH = vec4.create();\r\nconst WORLD_SCRATCH = vec3.create();\r\nconst LIGHT_DIRECTION_SCRATCH = vec3.create();\r\n\r\nfunction createPerSplitData()\r\n{\r\n return {\r\n ShadowMapValues: Array.from({ length: 4 }, () => vec4.create()),\r\n ShadowMatrixVal: Array.from({ length: SHADOW_FRUSTUM_COUNT }, () => mat4.create()),\r\n CascadeRanges: Array.from({ length: SHADOW_FRUSTUM_COUNT }, () => vec4.create()),\r\n SplitInfo: vec4.create()\r\n };\r\n}\r\n\r\nfunction createSplitSetup()\r\n{\r\n return {\r\n shadowFrustum: new TriFrustumOrtho(),\r\n lightViewProjection: mat4.create(),\r\n invViewProj: mat4.create(),\r\n aabb: { min: vec3.create(), max: vec3.create() },\r\n corners: Array.from({ length: 8 }, () => vec3.create())\r\n };\r\n}\r\n\r\nfunction createShadowEffect()\r\n{\r\n const effect = new Tr2Effect();\r\n\r\n effect.SetEffectPathName(\"res:/graphics/effect/managed/space/system/ShadowDepth.fx\");\r\n\r\n // DECLARED BY CLEARING, which is Carbon (`cpp:41-42`), not by\r\n // AddResourceTexture2D. The difference is not cosmetic: a res-path slot and a\r\n // runtime slot are different classes, so declaring the res-path kind here left\r\n // SetParameter unable to find a runtime slot to update - it added a new one on\r\n // every call, and a per-frame resolve grew the resource list without bound.\r\n effect.SetParameter(\"EveSpaceSceneCascadedShadowMap\", null);\r\n effect.SetParameter(\"DepthMap\", null);\r\n return effect;\r\n}\r\n\r\n/** Carbon PerspectiveOffCenterMatrix: D3D zero-to-one depth. */\r\nfunction writePerspectiveOffCenter(out, left, right, bottom, top, near, far)\r\n{\r\n out.fill(0);\r\n out[0] = 2 * near / (right - left);\r\n out[5] = -2 * near / (bottom - top);\r\n out[8] = 1 + 2 * left / (right - left);\r\n out[9] = -1 - 2 * top / (bottom - top);\r\n out[10] = far / (near - far);\r\n out[11] = -1;\r\n out[14] = near * far / (near - far);\r\n return out;\r\n}\r\n\r\n/** Carbon OrthoNormalBasisZ. Flat matrix bytes match gl-matrix storage. */\r\nfunction writeOrthoNormalBasisZ(out, z)\r\n{\r\n mat4.identity(out);\r\n const length = Math.hypot(z[0], z[1], z[2]);\r\n const zx = z[0] / length;\r\n const zy = z[1] / length;\r\n const zz = z[2] / length;\r\n out[8] = zx;\r\n out[9] = zy;\r\n out[10] = zz;\r\n\r\n const xx = Math.abs(zx) > 0.99 ? 0 : 1;\r\n const xy = Math.abs(zx) > 0.99 ? 1 : 0;\r\n let yx = xy * zz;\r\n let yy = -xx * zz;\r\n let yz = xx * zy - xy * zx;\r\n const yLength = Math.hypot(yx, yy, yz);\r\n yx /= yLength;\r\n yy /= yLength;\r\n yz /= yLength;\r\n\r\n out[4] = yx;\r\n out[5] = yy;\r\n out[6] = yz;\r\n out[0] = yy * zz - yz * zy;\r\n out[1] = yz * zx - yx * zz;\r\n out[2] = yx * zy - yy * zx;\r\n return out;\r\n}\r\n\r\n/** Carbon OrthoOffCenterMatrix: D3D zero-to-one depth. */\r\nfunction writeOrthoOffCenter(out, left, right, bottom, top, near, far)\r\n{\r\n mat4.identity(out);\r\n out[0] = 2 / (right - left);\r\n out[5] = 2 / (top - bottom);\r\n out[10] = 1 / (near - far);\r\n out[12] = -1 - 2 * left / (right - left);\r\n out[13] = 1 + 2 * top / (bottom - top);\r\n out[14] = near / (near - far);\r\n return out;\r\n}\r\n\r\n/** Cascaded-shadow split producer. Its GPU operations are not ported yet. */\r\n@type.define({ className: \"Tr2ShadowMap\", family: \"trinityCore\" })\r\nexport class Tr2ShadowMap extends CjsModel\r\n{\r\n @edit.notify\r\n @edit.persist\r\n @type.int32\r\n @type.enum(\"ShadowSplitMode\")\r\n shadowSplitMode = 0;\r\n\r\n @edit.readwrite\r\n @type.objectRef(\"Tr2Denoiser\")\r\n denoiser = new Tr2Denoiser();\r\n\r\n @edit.readwrite\r\n @type.objectRef(\"Tr2Effect\")\r\n cascadeEffect = createShadowEffect();\r\n\r\n @edit.notify\r\n @edit.read\r\n @type.uint32\r\n splitCount = SHADOW_FRUSTUM_COUNT;\r\n\r\n @edit.notify\r\n @edit.readwrite\r\n @type.boolean\r\n debugColorSplit = false;\r\n\r\n @edit.readwrite\r\n @type.float32\r\n SplitNr15 = STATIC_SPLITS[15];\r\n\r\n @edit.readwrite\r\n @type.float32\r\n SplitNr8 = STATIC_SPLITS[8];\r\n\r\n @edit.readwrite\r\n @type.float32\r\n SplitNr6 = STATIC_SPLITS[6];\r\n\r\n @edit.readwrite\r\n @type.float32\r\n SplitNr5 = STATIC_SPLITS[5];\r\n\r\n @edit.readwrite\r\n @type.float32\r\n SplitNr14 = STATIC_SPLITS[14];\r\n\r\n @edit.readwrite\r\n @type.float32\r\n SplitNr10 = STATIC_SPLITS[10];\r\n\r\n @edit.readwrite\r\n @type.float32\r\n SplitNr13 = STATIC_SPLITS[13];\r\n\r\n @edit.readwrite\r\n @type.float32\r\n SplitNr4 = STATIC_SPLITS[4];\r\n\r\n @edit.readwrite\r\n @type.float32\r\n SplitNr3 = STATIC_SPLITS[3];\r\n\r\n @edit.readwrite\r\n @type.float32\r\n SplitNr7 = STATIC_SPLITS[7];\r\n\r\n @edit.readwrite\r\n @type.float32\r\n SplitNr1 = STATIC_SPLITS[1];\r\n\r\n @edit.readwrite\r\n @type.float32\r\n SplitNr9 = STATIC_SPLITS[9];\r\n\r\n @edit.readwrite\r\n @type.float32\r\n SplitNr0 = STATIC_SPLITS[0];\r\n\r\n @edit.readwrite\r\n @type.float32\r\n SplitNr11 = STATIC_SPLITS[11];\r\n\r\n @edit.readwrite\r\n @type.float32\r\n SplitNr12 = STATIC_SPLITS[12];\r\n\r\n @edit.readwrite\r\n @type.float32\r\n SplitNr2 = STATIC_SPLITS[2];\r\n\r\n @edit.notify\r\n @edit.readwrite\r\n @type.boolean\r\n disableShimmer = true;\r\n\r\n @edit.readwrite\r\n @type.uint32\r\n size = 2048;\r\n\r\n perSplitData = createPerSplitData();\r\n\r\n #width = SHADOW_MAP_WIDTH;\r\n\r\n #height = SHADOW_MAP_HEIGHT;\r\n\r\n #oldZFar = 0;\r\n\r\n #useDenoiser = true;\r\n\r\n #lastNearClip = 0;\r\n\r\n #lastFarClip = 0;\r\n\r\n #lastShadowSplitMode = Tr2ShadowMap.ShadowSplitMode.STATIC;\r\n\r\n #lastDebugColorSplit = false;\r\n\r\n #splitSetups = Array.from({ length: SHADOW_FRUSTUM_COUNT }, () => createSplitSetup());\r\n\r\n /** Creates the logical effect/denoiser state and reserves Carbon's globals. */\r\n constructor()\r\n {\r\n super();\r\n const store = Tr2VariableStore.GlobalStore();\r\n store.RegisterVariable(\"EveSpaceSceneShadowMap\");\r\n store.RegisterVariable(\"EveSpaceSceneCascadedShadowMap\");\r\n }\r\n\r\n /** Applies the atlas element size/count and the one-way denoiser disable. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"The fixed PerSplitData arrays make split counts above Carbon's 16-slot capacity fail immediately instead of corrupting adjacent native memory.\")\r\n Setup(elementSize, elementCount, useDenoiser)\r\n {\r\n const nextSize = elementSize >>> 0;\r\n const nextCount = elementCount >>> 0;\r\n if (nextCount > SHADOW_FRUSTUM_COUNT)\r\n {\r\n throw new RangeError(`Tr2ShadowMap supports at most ${SHADOW_FRUSTUM_COUNT} splits.`);\r\n }\r\n if (this.size !== nextSize || this.splitCount !== nextCount)\r\n {\r\n this.size = nextSize;\r\n this.splitCount = nextCount;\r\n this.perSplitData.SplitInfo[0] = nextCount;\r\n }\r\n this.#useDenoiser = Boolean(useDenoiser);\r\n if (!this.#useDenoiser)\r\n {\r\n this.denoiser = null;\r\n }\r\n }\r\n\r\n /** Applies Carbon's notification consequences from the current owned state. */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"CjsModel notifications expose settled state rather than Be::Var identity, so this compares the two notify-backed values against their cached state.\")\r\n OnModified()\r\n {\r\n if (this.debugColorSplit !== this.#lastDebugColorSplit)\r\n {\r\n this.cascadeEffect.SetOption(\"SHADOW_DEBUG_MODE\", this.debugColorSplit ? \"SDM_COLOR\" : \"SDM_NONE\");\r\n this.#lastDebugColorSplit = this.debugColorSplit;\r\n }\r\n\r\n if (this.shadowSplitMode !== this.#lastShadowSplitMode)\r\n {\r\n if (this.shadowSplitMode === Tr2ShadowMap.ShadowSplitMode.STATIC)\r\n {\r\n this.#SetStaticShadowSplits();\r\n }\r\n else if (this.shadowSplitMode === Tr2ShadowMap.ShadowSplitMode.DYNAMIC)\r\n {\r\n this.#lastNearClip = 0;\r\n this.#lastFarClip = 0;\r\n }\r\n this.#lastShadowSplitMode = this.shadowSplitMode;\r\n }\r\n\r\n this.perSplitData.SplitInfo[0] = this.splitCount;\r\n return true;\r\n }\r\n\r\n @carbon.method\r\n @impl.implemented\r\n /** Changes whether an existing denoiser should be used for future results. */\r\n ShouldUseDenoiser(value)\r\n {\r\n this.#useDenoiser = Boolean(value);\r\n }\r\n\r\n /** Engine-facing read of Carbon's private denoiser-use switch. */\r\n @impl.custom\r\n @impl.reason(\"The nominal engine executor needs Carbon's private denoiser-use decision without reading implementation fields.\")\r\n GetUseDenoiser()\r\n {\r\n return this.#useDenoiser;\r\n }\r\n\r\n /** Recomputes geometric dynamic split endpoints when the clip range changes. */\r\n @carbon.method\r\n @impl.implemented\r\n UpdateSplitValues(nearClip, farClip)\r\n {\r\n if (this.shadowSplitMode !== Tr2ShadowMap.ShadowSplitMode.DYNAMIC) return;\r\n if (this.#lastNearClip === nearClip && this.#lastFarClip === farClip) return;\r\n\r\n this.#lastNearClip = nearClip;\r\n this.#lastFarClip = farClip;\r\n const logNear = Math.log2(nearClip);\r\n const logFar = Math.log2(farClip);\r\n for (let index = 0; index < this.splitCount; index++)\r\n {\r\n this.#SetSplitValue(index, Math.pow(2, logNear + (logFar - logNear) * ((index + 1) / this.splitCount)));\r\n }\r\n }\r\n\r\n /**\r\n * Transforms the D3D clip cube through projection inverse, inverse view and\r\n * light view, returning its light-space bounds and writing all eight corners.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"The caller supplies owned JS output containers; matrix bytes stay in logical gl-matrix form and are never pre-transposed.\")\r\n static CalculateAABB(\r\n projection,\r\n invViewTransform,\r\n lightView,\r\n corners,\r\n out = { min: vec3.create(), max: vec3.create() }\r\n )\r\n {\r\n mat4.invert(INVERSE_PROJECTION_SCRATCH, projection);\r\n const min = out.min;\r\n const max = out.max;\r\n min[0] = min[1] = min[2] = Infinity;\r\n max[0] = max[1] = max[2] = -Infinity;\r\n\r\n for (let index = 0; index < DX_UNIT_CUBE.length; index++)\r\n {\r\n const source = DX_UNIT_CUBE[index];\r\n TRANSFORMED_SCRATCH[0] = source[0];\r\n TRANSFORMED_SCRATCH[1] = source[1];\r\n TRANSFORMED_SCRATCH[2] = source[2];\r\n TRANSFORMED_SCRATCH[3] = 1;\r\n vec4.transformMat4(TRANSFORMED_SCRATCH, TRANSFORMED_SCRATCH, INVERSE_PROJECTION_SCRATCH);\r\n const inverseW = 1 / TRANSFORMED_SCRATCH[3];\r\n WORLD_SCRATCH[0] = TRANSFORMED_SCRATCH[0] * inverseW;\r\n WORLD_SCRATCH[1] = TRANSFORMED_SCRATCH[1] * inverseW;\r\n WORLD_SCRATCH[2] = TRANSFORMED_SCRATCH[2] * inverseW;\r\n vec3.transformMat4(WORLD_SCRATCH, WORLD_SCRATCH, invViewTransform);\r\n vec3.transformMat4(corners[index], WORLD_SCRATCH, lightView);\r\n\r\n const corner = corners[index];\r\n min[0] = Math.min(min[0], corner[0]);\r\n min[1] = Math.min(min[1], corner[1]);\r\n min[2] = Math.min(min[2], corner[2]);\r\n max[0] = Math.max(max[0], corner[0]);\r\n max[1] = Math.max(max[1], corner[1]);\r\n max[2] = Math.max(max[2], corner[2]);\r\n }\r\n return out;\r\n }\r\n\r\n /**\r\n * Builds one logical light-view-projection split and its shader data.\r\n *\r\n * The returned object is an allocation-free borrowed view for this split and\r\n * is overwritten the next time the same split index is prepared.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"Carbon stores Transpose(lightViewProjection) and returns SplitSetup by value; Trinity stores the logical matrix for RawData's terminal transpose and reuses one allocation-free result per split.\")\r\n SetupShadowSplit(splitIndex, invViewTransform, lightDirection, zNear, leftDivNear, rightDivNear, topDivNear, bottomDivNear)\r\n {\r\n if (!Number.isInteger(splitIndex) || splitIndex < 0 || splitIndex >= this.splitCount)\r\n {\r\n throw new RangeError(\"Tr2ShadowMap.SetupShadowSplit received an invalid split index.\");\r\n }\r\n\r\n const setup = this.#splitSetups[splitIndex];\r\n if (splitIndex === 0) this.#oldZFar = zNear;\r\n const zFar = this.#GetSplitValue(splitIndex);\r\n this.perSplitData.ShadowMapValues[splitIndex >> 2][splitIndex & 3] = zFar;\r\n\r\n const left = leftDivNear * this.#oldZFar;\r\n const right = rightDivNear * this.#oldZFar;\r\n const top = topDivNear * this.#oldZFar;\r\n const bottom = bottomDivNear * this.#oldZFar;\r\n writePerspectiveOffCenter(PROJECTION_SCRATCH, left, right, bottom, top, this.#oldZFar, zFar);\r\n this.#oldZFar = zFar;\r\n\r\n mat4.invert(INVERSE_PROJECTION_SCRATCH, PROJECTION_SCRATCH);\r\n // Carbon inverseProjection * inverseView; gl-matrix reverses the operands.\r\n mat4.multiply(setup.invViewProj, invViewTransform, INVERSE_PROJECTION_SCRATCH);\r\n\r\n LIGHT_DIRECTION_SCRATCH[0] = -lightDirection[0];\r\n LIGHT_DIRECTION_SCRATCH[1] = -lightDirection[1];\r\n LIGHT_DIRECTION_SCRATCH[2] = -lightDirection[2];\r\n writeOrthoNormalBasisZ(BASIS_SCRATCH, LIGHT_DIRECTION_SCRATCH);\r\n mat4.invert(LIGHT_VIEW_SCRATCH, BASIS_SCRATCH);\r\n\r\n Tr2ShadowMap.CalculateAABB(\r\n PROJECTION_SCRATCH,\r\n invViewTransform,\r\n LIGHT_VIEW_SCRATCH,\r\n setup.corners,\r\n setup.aabb\r\n );\r\n\r\n const min = setup.aabb.min;\r\n const max = setup.aabb.max;\r\n if (this.disableShimmer)\r\n {\r\n let maxDistance = 0;\r\n for (let first = 0; first < setup.corners.length; first++)\r\n {\r\n for (let second = first + 1; second < setup.corners.length; second++)\r\n {\r\n const a = setup.corners[first];\r\n const b = setup.corners[second];\r\n maxDistance = Math.max(maxDistance, Math.hypot(a[0] - b[0], a[1] - b[1], a[2] - b[2]));\r\n }\r\n }\r\n\r\n const radius = Math.ceil(maxDistance / 2);\r\n const texelSize = radius * 2 / this.size;\r\n const centerX = Math.floor(((min[0] + max[0]) * 0.5) / texelSize + 0.5) * texelSize;\r\n const centerY = Math.floor(((min[1] + max[1]) * 0.5) / texelSize + 0.5) * texelSize;\r\n const centerZ = (min[2] + max[2]) * 0.5;\r\n min[0] = centerX - radius;\r\n min[1] = centerY - radius;\r\n min[2] = centerZ - radius;\r\n max[0] = centerX + radius;\r\n max[1] = centerY + radius;\r\n max[2] = centerZ + radius;\r\n }\r\n\r\n writeOrthoOffCenter(ORTHO_SCRATCH, max[0], min[0], max[1], min[1], -max[2], -min[2]);\r\n // Carbon lightView * ortho; gl-matrix reverses the operands.\r\n mat4.multiply(setup.lightViewProjection, ORTHO_SCRATCH, LIGHT_VIEW_SCRATCH);\r\n\r\n const range = this.perSplitData.CascadeRanges[splitIndex];\r\n range[0] = max[0] - min[0];\r\n range[1] = max[1] - min[1];\r\n range[2] = max[2] - min[2];\r\n range[3] = 0;\r\n mat4.copy(this.perSplitData.ShadowMatrixVal[splitIndex], setup.lightViewProjection);\r\n setup.shadowFrustum.DeriveFrustum(LIGHT_VIEW_SCRATCH, min, max);\r\n return setup;\r\n }\r\n\r\n /**\r\n * Allocates the cascaded depth surface and makes it the render target.\r\n *\r\n * @param {object} gpuResourcePool The pool to borrow the surface from.\r\n * @param {object} renderContext The context to set state on.\r\n * @returns {object|null} The borrowed depth texture, or null when the pool\r\n * could not supply one - which Carbon notes happens on a lost device.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n PrepareShadowRendering(gpuResourcePool, renderContext)\r\n {\r\n const cascadedShadowDepth = gpuResourcePool.GetTempTexture(\"cascadedShadowDepth\", {\r\n width: this.size * this.#width,\r\n height: this.size * this.#height,\r\n format: PixelFormat.PIXEL_FORMAT_D32_FLOAT,\r\n gpuUsage: Tr2GpuUsage.DEPTH_STENCIL | Tr2GpuUsage.SHADER_RESOURCE\r\n });\r\n\r\n if (!cascadedShadowDepth || !cascadedShadowDepth.IsValid()) return null;\r\n\r\n const esm = renderContext.GetEffectStateManager();\r\n\r\n // The depth stencil IS the shadow map, so the colour target is pushed EMPTY -\r\n // Carbon passes a default-constructed Tr2TextureAL and comments it \"empty\r\n // texture\" (`cpp:238`). Null is that argument here. Omitting it would only\r\n // save the slot and leave the scene's colour target bound underneath the\r\n // whole shadow pass, which is what this line used to do.\r\n esm.PushViewport();\r\n esm.PushRenderTarget(null);\r\n esm.PushDepthStencilBuffer(cascadedShadowDepth);\r\n esm.UpdateRenderTargetViewport(cascadedShadowDepth.Get().GetWidth(), cascadedShadowDepth.Get().GetHeight());\r\n\r\n // Carbon wants a clean depth buffer for this pass and says so.\r\n renderContext.Clear({ depth: true, clearDepth: 1, clearStencil: 0 });\r\n renderContext.SetReadOnlyDepth(false);\r\n\r\n return cascadedShadowDepth;\r\n }\r\n\r\n /**\r\n * Points the viewport at one split's cell in the atlas.\r\n *\r\n * Eight cells per row: splits 0-7 fill the top row and 8 onward wrap to a\r\n * second, which is why the row index is `splitIndex % 8` and the y offset is\r\n * either zero or one cell down.\r\n *\r\n * @param {object} renderContext The context to set the viewport on.\r\n * @param {number} splitIndex Which cascade split.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n BeginShadowRendering(renderContext, splitIndex)\r\n {\r\n const esm = renderContext.GetEffectStateManager();\r\n const topRow = splitIndex < 8;\r\n\r\n esm.SetViewport({\r\n width: this.size,\r\n height: this.size,\r\n x: (topRow ? splitIndex : splitIndex % 8) * this.size,\r\n y: topRow ? 0 : this.size,\r\n minZ: 0,\r\n maxZ: 1\r\n });\r\n }\r\n\r\n /**\r\n * Unwinds everything `PrepareShadowRendering` pushed, in reverse.\r\n *\r\n * @param {object} renderContext The context to restore.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n EndShadowRendering(renderContext)\r\n {\r\n renderContext.SetReadOnlyDepth(false);\r\n\r\n const esm = renderContext.GetEffectStateManager();\r\n\r\n esm.PopRenderTarget();\r\n esm.PopDepthStencilBuffer();\r\n esm.PopViewport();\r\n }\r\n\r\n /**\r\n * Resolves the cascaded depth into a screen-space shadow factor.\r\n *\r\n * Carbon `DrawToShadowMapResult` (`cpp:278-305`). Borrow an R8 target the\r\n * size of the scene depth, bind it, run the shadow effect over a fullscreen\r\n * quad with the atlas and the depth map bound, then optionally denoise.\r\n *\r\n * THE DEPTH BUFFER IS PUSHED EMPTY, not merely saved. Carbon passes a\r\n * default-constructed Tr2TextureAL (`cpp:285`), which unbinds it - this pass\r\n * writes a full-screen factor and must not be depth-tested against the very\r\n * buffer it is reading.\r\n *\r\n * THE EFFECT'S TEXTURES ARE CLEARED IMMEDIATELY AFTER THE DRAW, as Carbon\r\n * does (`cpp:290-291`), so a later pass cannot inherit the atlas or the\r\n * scene depth from this one.\r\n *\r\n * `cascadeEffect` is Carbon's `m_shadowEffect` under our name - same\r\n * ShadowDepth.fx path, same two parameters (`cpp:39-42`).\r\n *\r\n * @param {object} renderContext The context to draw against.\r\n * @param {object} gpuResourcePool The pool to borrow the result target from.\r\n * @param {object} depthMap The scene depth.\r\n * @param {object} cascadedShadowDepth The atlas produced by this pass.\r\n * @param {number} upscaling The denoiser's upscaling factor.\r\n * @param {object} renderer The renderer owning the blitter.\r\n * @returns {object|null} The shadow-factor target, or null without a pool.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n @impl.reason(\"Carbon reaches the blitter and the reversed-depth projection through static Tr2Renderer; ours are an instance and the render context, so the renderer is passed in.\")\r\n DrawToShadowMapResult(renderContext, gpuResourcePool, depthMap, cascadedShadowDepth, upscaling, renderer)\r\n {\r\n let shadowMapResult = gpuResourcePool.GetTempTexture(\"shadowMapResult\", {\r\n type: TextureType.TEX_TYPE_2D,\r\n width: depthMap.GetWidth(),\r\n height: depthMap.GetHeight(),\r\n depth: 1,\r\n mipCount: 1,\r\n format: PixelFormat.PIXEL_FORMAT_R8_UNORM,\r\n gpuUsage: Tr2GpuUsage.RENDER_TARGET | Tr2GpuUsage.SHADER_RESOURCE\r\n });\r\n\r\n const esm = renderContext.GetEffectStateManager();\r\n\r\n esm.PushRenderTarget(shadowMapResult.Get());\r\n esm.PushDepthStencilBuffer(null);\r\n\r\n try\r\n {\r\n this.cascadeEffect.SetParameter(\"EveSpaceSceneCascadedShadowMap\", cascadedShadowDepth);\r\n this.cascadeEffect.SetParameter(\"DepthMap\", depthMap);\r\n renderer.DrawScreenQuad(renderContext, this.cascadeEffect);\r\n this.cascadeEffect.SetParameter(\"EveSpaceSceneCascadedShadowMap\", null);\r\n this.cascadeEffect.SetParameter(\"DepthMap\", null);\r\n\r\n // Carbon gates on all three (`cpp:296`). Setup() nulls the denoiser when\r\n // it is disabled, so the useDenoiser flag and a present denoiser are not\r\n // the same question.\r\n if (this.denoiser && this.#useDenoiser && depthMap.IsValid())\r\n {\r\n shadowMapResult = this.denoiser.Apply(\r\n shadowMapResult,\r\n depthMap,\r\n null,\r\n renderContext.GetReversedDepthProjectionTransform(),\r\n upscaling,\r\n gpuResourcePool,\r\n renderContext,\r\n renderer\r\n );\r\n }\r\n\r\n return shadowMapResult;\r\n }\r\n finally\r\n {\r\n esm.PopRenderTarget();\r\n esm.PopDepthStencilBuffer();\r\n }\r\n }\r\n\r\n @carbon.method\r\n @impl.implemented\r\n /** Returns the number of active cascade splits. */\r\n GetShadowSplitCount()\r\n {\r\n return this.splitCount;\r\n }\r\n\r\n @carbon.method\r\n @impl.implemented\r\n /** Returns the square pixel size of one atlas cell. */\r\n GetShadowMapSize()\r\n {\r\n return this.size;\r\n }\r\n\r\n /** Returns the fixed number of atlas columns. */\r\n @impl.custom\r\n @impl.reason(\"The nominal engine executor needs Carbon's private fixed atlas width without reading implementation fields.\")\r\n GetShadowMapWidth()\r\n {\r\n return this.#width;\r\n }\r\n\r\n /** Returns the fixed number of atlas rows. */\r\n @impl.custom\r\n @impl.reason(\"The nominal engine executor needs Carbon's private fixed atlas height without reading implementation fields.\")\r\n GetShadowMapHeight()\r\n {\r\n return this.#height;\r\n }\r\n\r\n /** Returns the stable owned record consumed by scene per-frame packing. */\r\n @impl.custom\r\n @impl.reason(\"The scene needs a nominal direct accessor to Carbon's public PerSplitData without structural probing.\")\r\n GetPerSplitData()\r\n {\r\n return this.perSplitData;\r\n }\r\n\r\n @carbon.method\r\n @impl.implemented\r\n /** Returns the logical effect used to resolve the screen-space shadow mask. */\r\n GetShadowEffect()\r\n {\r\n return this.cascadeEffect;\r\n }\r\n\r\n @carbon.method\r\n @impl.implemented\r\n /** Reports whether cascade-debug colouring is enabled. */\r\n GetDebugSplitValue()\r\n {\r\n return this.debugColorSplit;\r\n }\r\n\r\n @carbon.method\r\n @impl.implemented\r\n /** Returns Carbon's packed debug colour for a cascade colour index. */\r\n GetDebugColors(switchCase)\r\n {\r\n switch (switchCase)\r\n {\r\n case 0: return 0xffffffff;\r\n case 1: return 0xffff0000;\r\n case 2: return 0xff00ff00;\r\n case 3: return 0xff0000ff;\r\n case 4: return 0xffffff00;\r\n case 5: return 0xff00ffff;\r\n case 6: return 0x2200ffff;\r\n case 7: return 0xff555555;\r\n case 8: return 0xff888888;\r\n default: return undefined;\r\n }\r\n }\r\n\r\n /** Restores the sixteen fixed Carbon cascade endpoints. */\r\n #SetStaticShadowSplits()\r\n {\r\n for (let index = 0; index < STATIC_SPLITS.length; index++)\r\n {\r\n this.#SetSplitValue(index, STATIC_SPLITS[index]);\r\n }\r\n }\r\n\r\n /** Writes one authored/dynamic split endpoint to its public field. */\r\n #SetSplitValue(index, value)\r\n {\r\n this[`SplitNr${index}`] = value;\r\n }\r\n\r\n /** Reads one split endpoint from its public field. */\r\n #GetSplitValue(index)\r\n {\r\n return this[`SplitNr${index}`];\r\n }\r\n\r\n static ShadowSplitMode = Object.freeze({\r\n STATIC: 0,\r\n DYNAMIC: 1,\r\n MANUAL: 2\r\n });\r\n}\r\n"],"names":["SHADOW_FRUSTUM_COUNT","SHADOW_MAP_WIDTH","SHADOW_MAP_HEIGHT","STATIC_SPLITS","Object","freeze","DX_UNIT_CUBE","PROJECTION_SCRATCH","mat4","create","INVERSE_PROJECTION_SCRATCH","BASIS_SCRATCH","LIGHT_VIEW_SCRATCH","ORTHO_SCRATCH","TRANSFORMED_SCRATCH","vec4","WORLD_SCRATCH","vec3","LIGHT_DIRECTION_SCRATCH","createPerSplitData","ShadowMapValues","Array","from","length","ShadowMatrixVal","CascadeRanges","SplitInfo","createSplitSetup","shadowFrustum","TriFrustumOrtho","lightViewProjection","invViewProj","aabb","min","max","corners","createShadowEffect","effect","Tr2Effect","SetEffectPathName","SetParameter","writePerspectiveOffCenter","out","left","right","bottom","top","near","far","fill","writeOrthoNormalBasisZ","z","identity","Math","hypot","zx","zy","zz","xx","abs","xy","yx","yy","yz","yLength","writeOrthoOffCenter","_Tr2ShadowMap","_identity","Tr2ShadowMap","CjsModel","e","_init_shadowSplitMode","_init_extra_shadowSplitMode","_init_denoiser","_init_extra_denoiser","_init_cascadeEffect","_init_extra_cascadeEffect","_init_splitCount","_init_extra_splitCount","_init_debugColorSplit","_init_extra_debugColorSplit","_init_SplitNr","_init_extra_SplitNr","_init_SplitNr2","_init_extra_SplitNr2","_init_SplitNr3","_init_extra_SplitNr3","_init_SplitNr4","_init_extra_SplitNr4","_init_SplitNr5","_init_extra_SplitNr5","_init_SplitNr6","_init_extra_SplitNr6","_init_SplitNr7","_init_extra_SplitNr7","_init_SplitNr8","_init_extra_SplitNr8","_init_SplitNr9","_init_extra_SplitNr9","_init_SplitNr0","_init_extra_SplitNr0","_init_SplitNr1","_init_extra_SplitNr1","_init_SplitNr10","_init_extra_SplitNr10","_init_SplitNr11","_init_extra_SplitNr11","_init_SplitNr12","_init_extra_SplitNr12","_init_SplitNr13","_init_extra_SplitNr13","_init_SplitNr14","_init_extra_SplitNr14","_init_disableShimmer","_init_extra_disableShimmer","_init_size","_init_extra_size","_initProto","_initStatic","c","_initClass","_applyDecs","type","define","className","family","edit","notify","persist","int32","enum","readwrite","objectRef","read","uint32","boolean","float32","carbon","method","impl","adapted","reason","implemented","custom","shadowSplitMode","denoiser","Tr2Denoiser","cascadeEffect","splitCount","debugColorSplit","SplitNr15","SplitNr8","SplitNr6","SplitNr5","SplitNr14","SplitNr10","SplitNr13","SplitNr4","SplitNr3","SplitNr7","SplitNr1","SplitNr9","SplitNr0","SplitNr11","SplitNr12","SplitNr2","disableShimmer","size","perSplitData","ShadowSplitMode","STATIC","constructor","store","Tr2VariableStore","GlobalStore","RegisterVariable","Setup","elementSize","elementCount","useDenoiser","nextSize","nextCount","RangeError","Boolean","OnModified","SetOption","DYNAMIC","ShouldUseDenoiser","value","GetUseDenoiser","UpdateSplitValues","nearClip","farClip","logNear","log2","logFar","index","pow","CalculateAABB","projection","invViewTransform","lightView","invert","Infinity","source","transformMat4","inverseW","corner","SetupShadowSplit","splitIndex","lightDirection","zNear","leftDivNear","rightDivNear","topDivNear","bottomDivNear","Number","isInteger","setup","zFar","multiply","maxDistance","first","second","a","b","radius","ceil","texelSize","centerX","floor","centerY","centerZ","range","copy","DeriveFrustum","PrepareShadowRendering","gpuResourcePool","renderContext","cascadedShadowDepth","GetTempTexture","width","height","format","PixelFormat","PIXEL_FORMAT_D32_FLOAT","gpuUsage","Tr2GpuUsage","DEPTH_STENCIL","SHADER_RESOURCE","IsValid","esm","GetEffectStateManager","PushViewport","PushRenderTarget","PushDepthStencilBuffer","UpdateRenderTargetViewport","Get","GetWidth","GetHeight","Clear","depth","clearDepth","clearStencil","SetReadOnlyDepth","BeginShadowRendering","topRow","SetViewport","x","y","minZ","maxZ","EndShadowRendering","PopRenderTarget","PopDepthStencilBuffer","PopViewport","DrawToShadowMapResult","depthMap","upscaling","renderer","shadowMapResult","TextureType","TEX_TYPE_2D","mipCount","PIXEL_FORMAT_R8_UNORM","RENDER_TARGET","DrawScreenQuad","Apply","GetReversedDepthProjectionTransform","GetShadowSplitCount","GetShadowMapSize","GetShadowMapWidth","GetShadowMapHeight","GetPerSplitData","GetShadowEffect","GetDebugSplitValue","GetDebugColors","switchCase","undefined","#SetStaticShadowSplits","#SetSplitValue","#GetSplitValue","MANUAL"],"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 { CjsModel } from '#model';
|
|
4
4
|
import { PixelFormat, GetBytesPerPixel } from '#consts/render-context';
|
|
5
5
|
import { ALResult } from '../../trinityal/ALResult.js';
|
|
@@ -22,7 +22,7 @@ new class extends _identity {
|
|
|
22
22
|
className: "Tr2StreamingBitmapSaver",
|
|
23
23
|
family: "trinityCore",
|
|
24
24
|
purpose: "Models Carbon's incremental bitmap saver through its dimensions, pixel format, current offset, and batch-copy entry points."
|
|
25
|
-
})], [[[
|
|
25
|
+
})], [[[edit, edit.read, type, type.uint32], 16, "currentOffset"], [[edit, edit.read, type, type.uint32], 16, "height"], [[edit, edit.read, type, type.int32, void 0, type.enum("PixelFormat")], 16, "format"], [[edit, edit.read, type, type.uint32], 16, "width"], [[carbon, carbon.method, impl, impl.adapted, void 0, impl.reason("Carbon opens a Blue ResFile stream from a path; the runtime has no file layer, so the caller supplies the write sink.")], 18, "StartSaving"], [[carbon, carbon.method, impl, impl.implemented], 18, "IsSaving"], [[carbon, carbon.method, impl, impl.implemented], 18, "HasStartedBatch"], [[carbon, carbon.method, impl, impl.notImplemented], 18, "CopyFromRenderTargetRegion"], [[carbon, carbon.method, impl, impl.notImplemented], 18, "EndSaving"], [[carbon, carbon.method, impl, impl.notImplemented], 18, "FlushBatch"], [[carbon, carbon.method, impl, impl.notImplemented], 18, "StartBatch"]], 0, void 0, CjsModel));
|
|
26
26
|
}
|
|
27
27
|
/** m_currentOffset (uint32_t) [READ] - rows are written bottom-up, so it
|
|
28
28
|
* starts at the height. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tr2StreamingBitmapSaver.js","sources":["../../../../src/trinity/core/Tr2StreamingBitmapSaver.js"],"sourcesContent":["// Source: trinity/trinity/Tr2StreamingBitmapSaver.h\n// trinity/trinity/Tr2StreamingBitmapSaver.cpp\n// imageio/Tr2TgaHandler.cpp (SaveHeader, the 18-byte TGA header)\n// Hand-maintained from Carbon source, promoted out of generated intake\n// 2026-09-06 (docs/research/ratchet-three-method-tier-2026-09-06.md).\n//\n// TWO DONOR DEFECTS AT StartSaving, recorded rather than silently corrected:\n// the format pre-check reads the STALE member (`IsSaveSupported( m_format )`\n// at cpp:56 while `m_format = pixelFormat` only lands at cpp:94), and\n// IsSaveSupported itself is a tautology (`format == X8 || format != A8 ||\n// format != R8`, Tr2TgaHandler.cpp) that can never reject. Net Carbon\n// behaviour: the pre-check never fails and the REAL format gate is\n// SaveHeader's switch, whose default returns SAVE_NOT_SUPPORTED. This port\n// keeps that net behaviour: no pre-check, the header switch rejects.\nimport { carbon, impl, io, type } from \"#schema\";\nimport { CjsModel } from \"#model\";\nimport { GetBytesPerPixel, PixelFormat } from \"#consts/render-context\";\nimport { ALResult } from \"../../trinityal/ALResult.js\";\n\n/** TGA image types (Tr2TgaHandler.cpp): raw RGB and raw greyscale. */\nconst IMAGE_TYPE_RAW_RGB = 2;\nconst IMAGE_TYPE_RAW_GREYSCALE = 3;\n\n/** Models Carbon's incremental bitmap saver through its dimensions, pixel format, current offset, and batch-copy entry points. */\n@type.define({ className: \"Tr2StreamingBitmapSaver\", family: \"trinityCore\", purpose: \"Models Carbon's incremental bitmap saver through its dimensions, pixel format, current offset, and batch-copy entry points.\" })\nexport class Tr2StreamingBitmapSaver extends CjsModel\n{\n\n /** m_currentOffset (uint32_t) [READ] - rows are written bottom-up, so it\n * starts at the height. */\n @io.read\n @type.uint32\n currentOffset = 0;\n\n /** m_height (uint32_t) [READ] */\n @io.read\n @type.uint32\n height = 0;\n\n /** m_format (Tr2RenderContextEnum::PixelFormat - enum PixelFormat) [READ] */\n @io.read\n @type.int32\n @type.enum(\"PixelFormat\")\n format = 0;\n\n /** m_width (uint32_t) [READ] */\n @io.read\n @type.uint32\n width = 0;\n\n /** m_output - Carbon's Blue IResFile stream; here any { Write(Uint8Array) } sink. */\n #output = null;\n\n /** m_bytesPerPixel, derived from the format at StartSaving. */\n #bytesPerPixel = 0;\n\n /** m_rowsPerBatch - non-zero only between StartBatch and FlushBatch. */\n #rowsPerBatch = 0;\n\n /**\n * Carbon StartSaving (Tr2StreamingBitmapSaver.cpp:45-100): end any\n * in-flight save, validate the dimensions, open the output and write the\n * 18-byte TGA header (Tr2TgaHandler.cpp SaveHeader - the header's switch\n * is the real format gate: B8G8R8X8 24bpp RGB, B8G8R8A8 32bpp RGB,\n * R8 8bpp greyscale, anything else refused), then latch the image state\n * with the row cursor at the bottom.\n *\n * Carbon opens a Blue ResFile from a path; this runtime has no file\n * layer, so the output is a caller-supplied sink whose Write(bytes)\n * returns the count written - a string path with no sink behind it fails\n * exactly as Carbon's failed stream open does.\n *\n * @param {{Write(bytes: Uint8Array): number}} output The write sink.\n * @param {number} width\n * @param {number} height\n * @param {number} pixelFormat A PixelFormat value.\n * @returns {number} An ALResult value.\n */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Carbon opens a Blue ResFile stream from a path; the runtime has no file layer, so the caller supplies the write sink.\")\n StartSaving(output, width, height, pixelFormat)\n {\n if (this.IsSaving())\n {\n const ended = this.EndSaving();\n if (ended !== ALResult.S_OK) return ended;\n }\n\n if (!width || !height) return ALResult.E_INVALIDARG;\n if (typeof output?.Write !== \"function\") return ALResult.E_FAIL;\n\n // The TGA header (Tr2TgaHandler.cpp SaveHeader): idLength, colorMapType,\n // imageType, colorMap start/length/bpp, origin, size, bpp, descriptor.\n let imageType;\n let bpp;\n switch (pixelFormat)\n {\n case PixelFormat.PIXEL_FORMAT_B8G8R8X8_UNORM: imageType = IMAGE_TYPE_RAW_RGB; bpp = 24; break;\n case PixelFormat.PIXEL_FORMAT_B8G8R8A8_UNORM: imageType = IMAGE_TYPE_RAW_RGB; bpp = 32; break;\n case PixelFormat.PIXEL_FORMAT_R8_UNORM: imageType = IMAGE_TYPE_RAW_GREYSCALE; bpp = 8; break;\n default: return ALResult.E_FAIL;\n }\n\n const header = new Uint8Array(18);\n const view = new DataView(header.buffer);\n view.setUint8(2, imageType);\n view.setUint16(12, width & 0xFFFF, true);\n view.setUint16(14, height & 0xFFFF, true);\n view.setUint8(16, bpp);\n\n if (output.Write(header) !== header.length) return ALResult.E_FAIL;\n\n this.#output = output;\n this.width = width;\n this.height = height;\n this.format = pixelFormat;\n this.#bytesPerPixel = GetBytesPerPixel(pixelFormat);\n this.currentOffset = this.height;\n\n return ALResult.S_OK;\n }\n\n /** Carbon IsSaving (cpp:282-284): whether an output stream is open. */\n @carbon.method\n @impl.implemented\n IsSaving()\n {\n return this.#output !== null;\n }\n\n /** Carbon HasStartedBatch (cpp:294-296): whether a batch is in flight. */\n @carbon.method\n @impl.implemented\n HasStartedBatch()\n {\n return this.#rowsPerBatch !== 0;\n }\n\n /** Carbon method CopyFromRenderTargetRegion (MAP_METHOD_AND_WRAP). */\n @carbon.method\n @impl.notImplemented\n CopyFromRenderTargetRegion(...args)\n {\n throw new Error(\"Tr2StreamingBitmapSaver.CopyFromRenderTargetRegion is not implemented in CarbonEngineJS.\");\n }\n\n /** Carbon EndSaving closes and pads the stream; unported with the batch pair. */\n @carbon.method\n @impl.notImplemented\n EndSaving(...args)\n {\n throw new Error(\"Tr2StreamingBitmapSaver.EndSaving is not implemented in CarbonEngineJS.\");\n }\n\n /** Carbon method FlushBatch (MAP_METHOD_AND_WRAP). */\n @carbon.method\n @impl.notImplemented\n FlushBatch(...args)\n {\n throw new Error(\"Tr2StreamingBitmapSaver.FlushBatch is not implemented in CarbonEngineJS.\");\n }\n\n /** Carbon method StartBatch (MAP_METHOD_AND_WRAP). */\n @carbon.method\n @impl.notImplemented\n StartBatch(...args)\n {\n throw new Error(\"Tr2StreamingBitmapSaver.StartBatch is not implemented in CarbonEngineJS.\");\n }\n\n static PixelFormat = PixelFormat;\n\n}\n"],"names":["IMAGE_TYPE_RAW_RGB","IMAGE_TYPE_RAW_GREYSCALE","_Tr2StreamingBitmapSa","_identity","Tr2StreamingBitmapSaver","CjsModel","e","_init_currentOffset","_init_extra_currentOffset","_init_height","_init_extra_height","_init_format","_init_extra_format","_init_width","_init_extra_width","_initProto","c","_initClass","_applyDecs","type","define","className","family","purpose","io","read","uint32","int32","enum","carbon","method","impl","adapted","reason","implemented","notImplemented","currentOffset","height","format","width","StartSaving","output","pixelFormat","IsSaving","ended","EndSaving","ALResult","S_OK","E_INVALIDARG","Write","E_FAIL","imageType","bpp","PixelFormat","PIXEL_FORMAT_B8G8R8X8_UNORM","PIXEL_FORMAT_B8G8R8A8_UNORM","PIXEL_FORMAT_R8_UNORM","header","Uint8Array","view","DataView","buffer","setUint8","setUint16","length","GetBytesPerPixel","HasStartedBatch","CopyFromRenderTargetRegion","args","Error","FlushBatch","StartBatch","constructor"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Tr2StreamingBitmapSaver.js","sources":["../../../../src/trinity/core/Tr2StreamingBitmapSaver.js"],"sourcesContent":["// Source: trinity/trinity/Tr2StreamingBitmapSaver.h\n// trinity/trinity/Tr2StreamingBitmapSaver.cpp\n// imageio/Tr2TgaHandler.cpp (SaveHeader, the 18-byte TGA header)\n// Hand-maintained from Carbon source, promoted out of generated intake\n// 2026-09-06 (docs/research/ratchet-three-method-tier-2026-09-06.md).\n//\n// TWO DONOR DEFECTS AT StartSaving, recorded rather than silently corrected:\n// the format pre-check reads the STALE member (`IsSaveSupported( m_format )`\n// at cpp:56 while `m_format = pixelFormat` only lands at cpp:94), and\n// IsSaveSupported itself is a tautology (`format == X8 || format != A8 ||\n// format != R8`, Tr2TgaHandler.cpp) that can never reject. Net Carbon\n// behaviour: the pre-check never fails and the REAL format gate is\n// SaveHeader's switch, whose default returns SAVE_NOT_SUPPORTED. This port\n// keeps that net behaviour: no pre-check, the header switch rejects.\nimport { carbon, impl, edit, type } from \"#schema\";\nimport { CjsModel } from \"#model\";\nimport { GetBytesPerPixel, PixelFormat } from \"#consts/render-context\";\nimport { ALResult } from \"../../trinityal/ALResult.js\";\n\n/** TGA image types (Tr2TgaHandler.cpp): raw RGB and raw greyscale. */\nconst IMAGE_TYPE_RAW_RGB = 2;\nconst IMAGE_TYPE_RAW_GREYSCALE = 3;\n\n/** Models Carbon's incremental bitmap saver through its dimensions, pixel format, current offset, and batch-copy entry points. */\n@type.define({ className: \"Tr2StreamingBitmapSaver\", family: \"trinityCore\", purpose: \"Models Carbon's incremental bitmap saver through its dimensions, pixel format, current offset, and batch-copy entry points.\" })\nexport class Tr2StreamingBitmapSaver extends CjsModel\n{\n\n /** m_currentOffset (uint32_t) [READ] - rows are written bottom-up, so it\n * starts at the height. */\n @edit.read\n @type.uint32\n currentOffset = 0;\n\n /** m_height (uint32_t) [READ] */\n @edit.read\n @type.uint32\n height = 0;\n\n /** m_format (Tr2RenderContextEnum::PixelFormat - enum PixelFormat) [READ] */\n @edit.read\n @type.int32\n @type.enum(\"PixelFormat\")\n format = 0;\n\n /** m_width (uint32_t) [READ] */\n @edit.read\n @type.uint32\n width = 0;\n\n /** m_output - Carbon's Blue IResFile stream; here any { Write(Uint8Array) } sink. */\n #output = null;\n\n /** m_bytesPerPixel, derived from the format at StartSaving. */\n #bytesPerPixel = 0;\n\n /** m_rowsPerBatch - non-zero only between StartBatch and FlushBatch. */\n #rowsPerBatch = 0;\n\n /**\n * Carbon StartSaving (Tr2StreamingBitmapSaver.cpp:45-100): end any\n * in-flight save, validate the dimensions, open the output and write the\n * 18-byte TGA header (Tr2TgaHandler.cpp SaveHeader - the header's switch\n * is the real format gate: B8G8R8X8 24bpp RGB, B8G8R8A8 32bpp RGB,\n * R8 8bpp greyscale, anything else refused), then latch the image state\n * with the row cursor at the bottom.\n *\n * Carbon opens a Blue ResFile from a path; this runtime has no file\n * layer, so the output is a caller-supplied sink whose Write(bytes)\n * returns the count written - a string path with no sink behind it fails\n * exactly as Carbon's failed stream open does.\n *\n * @param {{Write(bytes: Uint8Array): number}} output The write sink.\n * @param {number} width\n * @param {number} height\n * @param {number} pixelFormat A PixelFormat value.\n * @returns {number} An ALResult value.\n */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Carbon opens a Blue ResFile stream from a path; the runtime has no file layer, so the caller supplies the write sink.\")\n StartSaving(output, width, height, pixelFormat)\n {\n if (this.IsSaving())\n {\n const ended = this.EndSaving();\n if (ended !== ALResult.S_OK) return ended;\n }\n\n if (!width || !height) return ALResult.E_INVALIDARG;\n if (typeof output?.Write !== \"function\") return ALResult.E_FAIL;\n\n // The TGA header (Tr2TgaHandler.cpp SaveHeader): idLength, colorMapType,\n // imageType, colorMap start/length/bpp, origin, size, bpp, descriptor.\n let imageType;\n let bpp;\n switch (pixelFormat)\n {\n case PixelFormat.PIXEL_FORMAT_B8G8R8X8_UNORM: imageType = IMAGE_TYPE_RAW_RGB; bpp = 24; break;\n case PixelFormat.PIXEL_FORMAT_B8G8R8A8_UNORM: imageType = IMAGE_TYPE_RAW_RGB; bpp = 32; break;\n case PixelFormat.PIXEL_FORMAT_R8_UNORM: imageType = IMAGE_TYPE_RAW_GREYSCALE; bpp = 8; break;\n default: return ALResult.E_FAIL;\n }\n\n const header = new Uint8Array(18);\n const view = new DataView(header.buffer);\n view.setUint8(2, imageType);\n view.setUint16(12, width & 0xFFFF, true);\n view.setUint16(14, height & 0xFFFF, true);\n view.setUint8(16, bpp);\n\n if (output.Write(header) !== header.length) return ALResult.E_FAIL;\n\n this.#output = output;\n this.width = width;\n this.height = height;\n this.format = pixelFormat;\n this.#bytesPerPixel = GetBytesPerPixel(pixelFormat);\n this.currentOffset = this.height;\n\n return ALResult.S_OK;\n }\n\n /** Carbon IsSaving (cpp:282-284): whether an output stream is open. */\n @carbon.method\n @impl.implemented\n IsSaving()\n {\n return this.#output !== null;\n }\n\n /** Carbon HasStartedBatch (cpp:294-296): whether a batch is in flight. */\n @carbon.method\n @impl.implemented\n HasStartedBatch()\n {\n return this.#rowsPerBatch !== 0;\n }\n\n /** Carbon method CopyFromRenderTargetRegion (MAP_METHOD_AND_WRAP). */\n @carbon.method\n @impl.notImplemented\n CopyFromRenderTargetRegion(...args)\n {\n throw new Error(\"Tr2StreamingBitmapSaver.CopyFromRenderTargetRegion is not implemented in CarbonEngineJS.\");\n }\n\n /** Carbon EndSaving closes and pads the stream; unported with the batch pair. */\n @carbon.method\n @impl.notImplemented\n EndSaving(...args)\n {\n throw new Error(\"Tr2StreamingBitmapSaver.EndSaving is not implemented in CarbonEngineJS.\");\n }\n\n /** Carbon method FlushBatch (MAP_METHOD_AND_WRAP). */\n @carbon.method\n @impl.notImplemented\n FlushBatch(...args)\n {\n throw new Error(\"Tr2StreamingBitmapSaver.FlushBatch is not implemented in CarbonEngineJS.\");\n }\n\n /** Carbon method StartBatch (MAP_METHOD_AND_WRAP). */\n @carbon.method\n @impl.notImplemented\n StartBatch(...args)\n {\n throw new Error(\"Tr2StreamingBitmapSaver.StartBatch is not implemented in CarbonEngineJS.\");\n }\n\n static PixelFormat = PixelFormat;\n\n}\n"],"names":["IMAGE_TYPE_RAW_RGB","IMAGE_TYPE_RAW_GREYSCALE","_Tr2StreamingBitmapSa","_identity","Tr2StreamingBitmapSaver","CjsModel","e","_init_currentOffset","_init_extra_currentOffset","_init_height","_init_extra_height","_init_format","_init_extra_format","_init_width","_init_extra_width","_initProto","c","_initClass","_applyDecs","type","define","className","family","purpose","edit","read","uint32","int32","enum","carbon","method","impl","adapted","reason","implemented","notImplemented","currentOffset","height","format","width","StartSaving","output","pixelFormat","IsSaving","ended","EndSaving","ALResult","S_OK","E_INVALIDARG","Write","E_FAIL","imageType","bpp","PixelFormat","PIXEL_FORMAT_B8G8R8X8_UNORM","PIXEL_FORMAT_B8G8R8A8_UNORM","PIXEL_FORMAT_R8_UNORM","header","Uint8Array","view","DataView","buffer","setUint8","setUint16","length","GetBytesPerPixel","HasStartedBatch","CopyFromRenderTargetRegion","args","Error","FlushBatch","StartBatch","constructor"],"mappings":"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"}
|
|
@@ -3,12 +3,11 @@ import { TriBatchType } from '#consts/graphics';
|
|
|
3
3
|
import { CjsModel } from '#model';
|
|
4
4
|
import { mat4 } from '#math/mat4';
|
|
5
5
|
import { quat } from '#math/quat';
|
|
6
|
-
import { carbon, impl,
|
|
6
|
+
import { carbon, impl, edit, type } from '#schema';
|
|
7
7
|
import { vec3 } from '#math/vec3';
|
|
8
8
|
import { Tr2TransformModifier } from '../generated/trinityCore/enums.js';
|
|
9
|
-
import {
|
|
9
|
+
import { ITr2Renderable } from './ITr2Renderable.js';
|
|
10
10
|
|
|
11
|
-
var _withITr2Renderable;
|
|
12
11
|
let _initProto, _initClass, _init_modifier, _init_extra_modifier, _init_localTransform, _init_extra_localTransform, _init_worldTransform, _init_extra_worldTransform, _init_name, _init_extra_name, _init_scaling, _init_extra_scaling, _init_rotation, _init_extra_rotation, _init_translation, _init_extra_translation, _init_distanceBasedScaleArg, _init_extra_distanceBasedScaleArg, _init_distanceBasedScaleArg2, _init_extra_distanceBasedScaleArg2, _init_mesh, _init_extra_mesh, _init_curveSets, _init_extra_curveSets, _init_useDistanceBasedScale, _init_extra_useDistanceBasedScale, _init_display, _init_extra_display, _init_update, _init_extra_update, _init_sortValueMultiplier, _init_extra_sortValueMultiplier;
|
|
13
12
|
|
|
14
13
|
// Carbon uses row vectors. A single matrix has the same flat bytes as our
|
|
@@ -103,7 +102,7 @@ function carbonLookAt(out, eye, target, up, forward, right, realUp) {
|
|
|
103
102
|
/** Common transform, curve, mesh, sorting, and camera-modifier behavior. */
|
|
104
103
|
let _Tr2Transform;
|
|
105
104
|
new class extends _identity {
|
|
106
|
-
static [class Tr2Transform extends
|
|
105
|
+
static [class Tr2Transform extends CjsModel {
|
|
107
106
|
static {
|
|
108
107
|
({
|
|
109
108
|
e: [_init_modifier, _init_extra_modifier, _init_localTransform, _init_extra_localTransform, _init_worldTransform, _init_extra_worldTransform, _init_name, _init_extra_name, _init_scaling, _init_extra_scaling, _init_rotation, _init_extra_rotation, _init_translation, _init_extra_translation, _init_distanceBasedScaleArg, _init_extra_distanceBasedScaleArg, _init_distanceBasedScaleArg2, _init_extra_distanceBasedScaleArg2, _init_mesh, _init_extra_mesh, _init_curveSets, _init_extra_curveSets, _init_useDistanceBasedScale, _init_extra_useDistanceBasedScale, _init_display, _init_extra_display, _init_update, _init_extra_update, _init_sortValueMultiplier, _init_extra_sortValueMultiplier, _initProto],
|
|
@@ -111,7 +110,7 @@ new class extends _identity {
|
|
|
111
110
|
} = _applyDecs2311(this, [type.define({
|
|
112
111
|
className: "Tr2Transform",
|
|
113
112
|
family: "trinityCore"
|
|
114
|
-
})], [[[carbon, carbon.method, impl, impl.adapted, void 0, impl.reason("The active render context is threaded to context-dependent curve functions instead of read from a process-global renderer.")], 18, "Update"], [[carbon, carbon.method, void 0, carbon.contextual(["camera"]), impl, impl.adapted, void 0, impl.reason("Carbon renderer globals are supplied explicitly as the active render context; matrix products reverse for gl-matrix semantics.")], 18, "UpdateViewDependentData"], [[carbon, carbon.method, impl, impl.implemented], 18, "SetScaling"], [[carbon, carbon.method, impl, impl.implemented], 18, "SetRotation"], [[carbon, carbon.method, impl, impl.implemented], 18, "SetTranslation"], [[carbon, carbon.method, impl, impl.implemented], 18, "IsVisible"], [[carbon, carbon.method, impl, impl.abstract], 18, "GetPerObjectData"], [[carbon, carbon.method, impl, impl.implemented], 18, "HasTransparentBatches"], [[carbon, carbon.method, impl, impl.adapted, void 0, impl.reason("Returns whether JavaScript mesh delegation committed a batch; Carbon's void method exposes no result.")], 18, "GetBatches"], [[carbon, carbon.method, void 0, carbon.contextual(["camera"]), impl, impl.adapted, void 0, impl.reason("The active render context replaces Carbon's Tr2Renderer view-position global.")], 18, "GetSortValue"], [[carbon, carbon.method, impl, impl.implemented], 18, "GetMesh"], [[
|
|
113
|
+
}), carbon.inherit(ITr2Renderable)], [[[carbon, carbon.method, impl, impl.adapted, void 0, impl.reason("The active render context is threaded to context-dependent curve functions instead of read from a process-global renderer.")], 18, "Update"], [[carbon, carbon.method, void 0, carbon.contextual(["camera"]), impl, impl.adapted, void 0, impl.reason("Carbon renderer globals are supplied explicitly as the active render context; matrix products reverse for gl-matrix semantics.")], 18, "UpdateViewDependentData"], [[carbon, carbon.method, impl, impl.implemented], 18, "SetScaling"], [[carbon, carbon.method, impl, impl.implemented], 18, "SetRotation"], [[carbon, carbon.method, impl, impl.implemented], 18, "SetTranslation"], [[carbon, carbon.method, impl, impl.implemented], 18, "IsVisible"], [[carbon, carbon.method, impl, impl.abstract], 18, "GetPerObjectData"], [[carbon, carbon.method, impl, impl.implemented], 18, "HasTransparentBatches"], [[carbon, carbon.method, impl, impl.adapted, void 0, impl.reason("Returns whether JavaScript mesh delegation committed a batch; Carbon's void method exposes no result.")], 18, "GetBatches"], [[carbon, carbon.method, void 0, carbon.contextual(["camera"]), impl, impl.adapted, void 0, impl.reason("The active render context replaces Carbon's Tr2Renderer view-position global.")], 18, "GetSortValue"], [[carbon, carbon.method, impl, impl.implemented], 18, "GetMesh"], [[edit, edit.persist, type, type.int32, void 0, type.enum("Tr2TransformModifier")], 16, "modifier"], [[edit, edit.read, type, type.mat4], 16, "localTransform"], [[edit, edit.read, type, type.mat4], 16, "worldTransform"], [[edit, edit.persist, type, type.string], 16, "name"], [[edit, edit.persist, type, type.vec3], 16, "scaling"], [[edit, edit.persist, type, type.quat], 16, "rotation"], [[edit, edit.persist, type, type.vec3], 16, "translation"], [[edit, edit.persist, type, type.float32], 16, "distanceBasedScaleArg1"], [[edit, edit.persist, type, type.float32], 16, "distanceBasedScaleArg2"], [[edit, edit.persist, void 0, type.model("Tr2MeshBase")], 16, "mesh"], [[edit, edit.persist, void 0, type.list("TriCurveSet")], 16, "curveSets"], [[edit, edit.persist, type, type.boolean], 16, "useDistanceBasedScale"], [[edit, edit.persist, type, type.boolean], 16, "display"], [[edit, edit.persist, type, type.boolean], 16, "update"], [[edit, edit.persist, type, type.float32], 16, "sortValueMultiplier"]], 0, void 0, CjsModel));
|
|
115
114
|
}
|
|
116
115
|
constructor(...args) {
|
|
117
116
|
super(...args);
|