@carbonenginejs/runtime-trinity 0.6.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +35 -243
- package/dist/controllers/CjsControllerExpressionProgram.js +157 -0
- package/dist/controllers/CjsControllerExpressionProgram.js.map +1 -1
- package/dist/controllers/ITr2ControllerAction.js +57 -0
- package/dist/controllers/ITr2ControllerAction.js.map +1 -1
- package/dist/controllers/Tr2ActionAnimateCurveSet.js +10 -0
- package/dist/controllers/Tr2ActionAnimateCurveSet.js.map +1 -1
- package/dist/controllers/Tr2ActionAnimateValue.js +26 -0
- package/dist/controllers/Tr2ActionAnimateValue.js.map +1 -1
- package/dist/controllers/Tr2ActionBindRTPC.js +11 -0
- package/dist/controllers/Tr2ActionBindRTPC.js.map +1 -1
- package/dist/controllers/Tr2ActionCallback.js +5 -0
- package/dist/controllers/Tr2ActionCallback.js.map +1 -1
- package/dist/controllers/Tr2ActionChildEffect.js +63 -0
- package/dist/controllers/Tr2ActionChildEffect.js.map +1 -1
- package/dist/controllers/Tr2ActionOverlay.js +68 -0
- package/dist/controllers/Tr2ActionOverlay.js.map +1 -1
- package/dist/controllers/Tr2ActionPlayCurveSet.js +16 -0
- package/dist/controllers/Tr2ActionPlayCurveSet.js.map +1 -1
- package/dist/controllers/Tr2ActionPlayMeshAnimation.js +29 -0
- package/dist/controllers/Tr2ActionPlayMeshAnimation.js.map +1 -1
- package/dist/controllers/Tr2ActionPlaySound.js +11 -0
- package/dist/controllers/Tr2ActionPlaySound.js.map +1 -1
- package/dist/controllers/Tr2ActionPython.js +11 -0
- package/dist/controllers/Tr2ActionPython.js.map +1 -1
- package/dist/controllers/Tr2ActionResetClipSphereCenter.js +17 -0
- package/dist/controllers/Tr2ActionResetClipSphereCenter.js.map +1 -1
- package/dist/controllers/Tr2ActionSetAttenuationScaling.js +5 -0
- package/dist/controllers/Tr2ActionSetAttenuationScaling.js.map +1 -1
- package/dist/controllers/Tr2ActionSetAudioEmitterPrefix.js +5 -0
- package/dist/controllers/Tr2ActionSetAudioEmitterPrefix.js.map +1 -1
- package/dist/controllers/Tr2ActionSetAudioSwitch.js +5 -0
- package/dist/controllers/Tr2ActionSetAudioSwitch.js.map +1 -1
- package/dist/controllers/Tr2ActionSetExternalControllerVariable.js +23 -0
- package/dist/controllers/Tr2ActionSetExternalControllerVariable.js.map +1 -1
- package/dist/controllers/Tr2ActionSetShaderOption.js +5 -0
- package/dist/controllers/Tr2ActionSetShaderOption.js.map +1 -1
- package/dist/controllers/Tr2ActionSetValue.js +35 -0
- package/dist/controllers/Tr2ActionSetValue.js.map +1 -1
- package/dist/controllers/Tr2ActionSpawnParticles.js +10 -0
- package/dist/controllers/Tr2ActionSpawnParticles.js.map +1 -1
- package/dist/controllers/Tr2BindingPoint.js +67 -0
- package/dist/controllers/Tr2BindingPoint.js.map +1 -1
- package/dist/controllers/Tr2Controller.js +37 -0
- package/dist/controllers/Tr2Controller.js.map +1 -1
- package/dist/controllers/Tr2ControllerEventHandler.js +10 -0
- package/dist/controllers/Tr2ControllerEventHandler.js.map +1 -1
- package/dist/controllers/Tr2ControllerExpression.js +17 -0
- package/dist/controllers/Tr2ControllerExpression.js.map +1 -1
- package/dist/controllers/Tr2ControllerFloatVariable.js +6 -0
- package/dist/controllers/Tr2ControllerFloatVariable.js.map +1 -1
- package/dist/controllers/Tr2ControllerReference.js +11 -0
- package/dist/controllers/Tr2ControllerReference.js.map +1 -1
- package/dist/controllers/Tr2StateMachine.js +17 -0
- package/dist/controllers/Tr2StateMachine.js.map +1 -1
- package/dist/controllers/Tr2StateMachineState.js +47 -0
- package/dist/controllers/Tr2StateMachineState.js.map +1 -1
- package/dist/controllers/Tr2StateMachineTransition.js +29 -0
- package/dist/controllers/Tr2StateMachineTransition.js.map +1 -1
- package/dist/controllers/Tr2SyncToAnimation.js +5 -0
- package/dist/controllers/Tr2SyncToAnimation.js.map +1 -1
- package/dist/controllers/Tr2TimelineController.js +61 -0
- package/dist/controllers/Tr2TimelineController.js.map +1 -1
- package/dist/controllers/contracts.js +24 -1
- package/dist/controllers/contracts.js.map +1 -1
- package/dist/controllers/index.js +1 -1
- package/dist/curves/CjsGrannyCurves.js +150 -0
- package/dist/curves/CjsGrannyCurves.js.map +1 -1
- package/dist/curves/Tr2BoneMatrixCurve.js +23 -0
- package/dist/curves/Tr2BoneMatrixCurve.js.map +1 -1
- package/dist/curves/Tr2CameraFollowCurveKey.js +6 -0
- package/dist/curves/Tr2CameraFollowCurveKey.js.map +1 -1
- package/dist/curves/Tr2CurveColor.js +6 -0
- package/dist/curves/Tr2CurveColor.js.map +1 -1
- package/dist/curves/Tr2CurveColorMixer.js +6 -0
- package/dist/curves/Tr2CurveColorMixer.js.map +1 -1
- package/dist/curves/Tr2CurveCombiner.js +5 -0
- package/dist/curves/Tr2CurveCombiner.js.map +1 -1
- package/dist/curves/Tr2CurveConstant.js +16 -0
- package/dist/curves/Tr2CurveConstant.js.map +1 -1
- package/dist/curves/Tr2CurveEulerRotation.js +5 -0
- package/dist/curves/Tr2CurveEulerRotation.js.map +1 -1
- package/dist/curves/Tr2CurveEulerRotationExpression.js +66 -0
- package/dist/curves/Tr2CurveEulerRotationExpression.js.map +1 -1
- package/dist/curves/Tr2CurveQuaternion.js +5 -0
- package/dist/curves/Tr2CurveQuaternion.js.map +1 -1
- package/dist/curves/Tr2CurveQuaternionKey.js +5 -0
- package/dist/curves/Tr2CurveQuaternionKey.js.map +1 -1
- package/dist/curves/Tr2CurveRandomAxisRotation.js +28 -0
- package/dist/curves/Tr2CurveRandomAxisRotation.js.map +1 -1
- package/dist/curves/Tr2CurveScalar.js +35 -0
- package/dist/curves/Tr2CurveScalar.js.map +1 -1
- package/dist/curves/Tr2CurveScalarExpression.js +11 -0
- package/dist/curves/Tr2CurveScalarExpression.js.map +1 -1
- package/dist/curves/Tr2CurveScalarKey.js +6 -0
- package/dist/curves/Tr2CurveScalarKey.js.map +1 -1
- package/dist/curves/Tr2CurveSetRange.js +5 -0
- package/dist/curves/Tr2CurveSetRange.js.map +1 -1
- package/dist/curves/Tr2CurveVector2.js +5 -0
- package/dist/curves/Tr2CurveVector2.js.map +1 -1
- package/dist/curves/Tr2CurveVector3.js +5 -0
- package/dist/curves/Tr2CurveVector3.js.map +1 -1
- package/dist/curves/Tr2CurveVector3Expression.js +71 -0
- package/dist/curves/Tr2CurveVector3Expression.js.map +1 -1
- package/dist/curves/Tr2CurveVector3Lerp.js +6 -0
- package/dist/curves/Tr2CurveVector3Lerp.js.map +1 -1
- package/dist/curves/Tr2DistanceTracker.js +6 -0
- package/dist/curves/Tr2DistanceTracker.js.map +1 -1
- package/dist/curves/Tr2FollowCurve.js +6 -0
- package/dist/curves/Tr2FollowCurve.js.map +1 -1
- package/dist/curves/Tr2GrannyEventTrack.js +5 -0
- package/dist/curves/Tr2GrannyEventTrack.js.map +1 -1
- package/dist/curves/Tr2GrannyTrack.js +6 -0
- package/dist/curves/Tr2GrannyTrack.js.map +1 -1
- package/dist/curves/Tr2GrannyTransformTrack.js +6 -0
- package/dist/curves/Tr2GrannyTransformTrack.js.map +1 -1
- package/dist/curves/Tr2GrannyVectorTrack.js +5 -0
- package/dist/curves/Tr2GrannyVectorTrack.js.map +1 -1
- package/dist/curves/Tr2MatrixKey.js +5 -0
- package/dist/curves/Tr2MatrixKey.js.map +1 -1
- package/dist/curves/Tr2ObjectFollowCurveKey.js +6 -0
- package/dist/curves/Tr2ObjectFollowCurveKey.js.map +1 -1
- package/dist/curves/Tr2QuaternionLerpCurve.js +6 -0
- package/dist/curves/Tr2QuaternionLerpCurve.js.map +1 -1
- package/dist/curves/Tr2RotationAdapter.js +6 -0
- package/dist/curves/Tr2RotationAdapter.js.map +1 -1
- package/dist/curves/Tr2ScalarExprKey.js +18 -0
- package/dist/curves/Tr2ScalarExprKey.js.map +1 -1
- package/dist/curves/Tr2ScalarExprKeyCurve.js +23 -0
- package/dist/curves/Tr2ScalarExprKeyCurve.js.map +1 -1
- package/dist/curves/Tr2ScalarFader.js +11 -0
- package/dist/curves/Tr2ScalarFader.js.map +1 -1
- package/dist/curves/Tr2TranslationAdapter.js +6 -0
- package/dist/curves/Tr2TranslationAdapter.js.map +1 -1
- package/dist/curves/TriColorSequencer.js +6 -0
- package/dist/curves/TriColorSequencer.js.map +1 -1
- package/dist/curves/TriCurveSet.js +23 -0
- package/dist/curves/TriCurveSet.js.map +1 -1
- package/dist/curves/TriEventCurve.js +23 -0
- package/dist/curves/TriEventCurve.js.map +1 -1
- package/dist/curves/TriEventKey.js +5 -0
- package/dist/curves/TriEventKey.js.map +1 -1
- package/dist/curves/TriPerlinCurve.js +30 -0
- package/dist/curves/TriPerlinCurve.js.map +1 -1
- package/dist/curves/TriVectorSequencer.js +6 -0
- package/dist/curves/TriVectorSequencer.js.map +1 -1
- package/dist/eve/AudioGameObject.js +89 -1
- package/dist/eve/AudioGameObject.js.map +1 -1
- package/dist/eve/BackAndForthData.js +7 -0
- package/dist/eve/BackAndForthData.js.map +1 -1
- package/dist/eve/CjsDistributionRandom.js +6 -0
- package/dist/eve/CjsDistributionRandom.js.map +1 -1
- package/dist/eve/CjsEveThrottleableState.js +11 -0
- package/dist/eve/CjsEveThrottleableState.js.map +1 -1
- package/dist/eve/EveChildUpdateParams.js +7 -0
- package/dist/eve/EveChildUpdateParams.js.map +1 -1
- package/dist/eve/EveComponentTypes.js.map +1 -1
- package/dist/eve/EveCustomMask.js +58 -27
- package/dist/eve/EveCustomMask.js.map +1 -1
- package/dist/eve/EveDistanceField.js +84 -0
- package/dist/eve/EveDistanceField.js.map +1 -1
- package/dist/eve/EveEntity.js +138 -0
- package/dist/eve/EveEntity.js.map +1 -0
- package/dist/eve/EveImpactOverlay.js +61 -0
- package/dist/eve/EveImpactOverlay.js.map +1 -1
- package/dist/eve/EveLODHelper.js +17 -13
- package/dist/eve/EveLODHelper.js.map +1 -1
- package/dist/eve/EveLineData.js +2 -0
- package/dist/eve/EveLineData.js.map +1 -1
- package/dist/eve/EveThrottleable.js +11 -0
- package/dist/eve/EveThrottleable.js.map +1 -1
- package/dist/eve/FollowASplineData.js +7 -0
- package/dist/eve/FollowASplineData.js.map +1 -1
- package/dist/eve/FormationData.js +6 -0
- package/dist/eve/FormationData.js.map +1 -1
- package/dist/eve/InertiaData.js +7 -0
- package/dist/eve/InertiaData.js.map +1 -1
- package/dist/eve/PlacementDataWithIdentifier.js +7 -0
- package/dist/eve/PlacementDataWithIdentifier.js.map +1 -1
- package/dist/eve/PlayFXData.js +7 -0
- package/dist/eve/PlayFXData.js.map +1 -1
- package/dist/eve/SeekTargetData.js +7 -0
- package/dist/eve/SeekTargetData.js.map +1 -1
- package/dist/eve/{EveSpaceObjectAttachmentUtils.js → attachment/EveSpaceObjectAttachmentUtils.js} +11 -11
- package/dist/eve/attachment/EveSpaceObjectAttachmentUtils.js.map +1 -0
- package/dist/eve/attachment/banner/EveBannerItem.js +70 -0
- package/dist/eve/attachment/banner/EveBannerItem.js.map +1 -0
- package/dist/eve/{EveBannerLight.js → attachment/banner/EveBannerLight.js} +13 -2
- package/dist/eve/attachment/banner/EveBannerLight.js.map +1 -0
- package/dist/eve/attachment/banner/EveBannerSet.js +537 -0
- package/dist/eve/attachment/banner/EveBannerSet.js.map +1 -0
- package/dist/eve/{EveBoosterSet2.js → attachment/booster/EveBoosterSet2.js} +204 -35
- package/dist/eve/attachment/booster/EveBoosterSet2.js.map +1 -0
- package/dist/eve/{EveBoosterSet2Renderable.js → attachment/booster/EveBoosterSet2Renderable.js} +205 -12
- package/dist/eve/attachment/booster/EveBoosterSet2Renderable.js.map +1 -0
- package/dist/eve/{EveTrailsSet.js → attachment/booster/EveTrailsSet.js} +49 -1
- package/dist/eve/attachment/booster/EveTrailsSet.js.map +1 -0
- package/dist/eve/attachment/decal/EveSpaceObjectDecal.js +512 -0
- package/dist/eve/attachment/decal/EveSpaceObjectDecal.js.map +1 -0
- package/dist/eve/{EveHazeSet.js → attachment/haze/EveHazeSet.js} +65 -6
- package/dist/eve/attachment/haze/EveHazeSet.js.map +1 -0
- package/dist/eve/attachment/haze/EveHazeSetItem.js +64 -0
- package/dist/eve/attachment/haze/EveHazeSetItem.js.map +1 -0
- package/dist/eve/{EveHazeSetLight.js → attachment/haze/EveHazeSetLight.js} +13 -2
- package/dist/eve/attachment/haze/EveHazeSetLight.js.map +1 -0
- package/dist/eve/attachment/itemSetBounds.js +131 -0
- package/dist/eve/attachment/itemSetBounds.js.map +1 -0
- package/dist/eve/{EvePlaneLight.js → attachment/plane/EvePlaneLight.js} +14 -2
- package/dist/eve/attachment/plane/EvePlaneLight.js.map +1 -0
- package/dist/eve/{EvePlaneSet.js → attachment/plane/EvePlaneSet.js} +119 -7
- package/dist/eve/attachment/plane/EvePlaneSet.js.map +1 -0
- package/dist/eve/attachment/plane/EvePlaneSetItem.js +72 -0
- package/dist/eve/attachment/plane/EvePlaneSetItem.js.map +1 -0
- package/dist/eve/{EveSpotlightLight.js → attachment/spotlight/EveSpotlightLight.js} +13 -2
- package/dist/eve/attachment/spotlight/EveSpotlightLight.js.map +1 -0
- package/dist/eve/{EveSpotlightSet.js → attachment/spotlight/EveSpotlightSet.js} +86 -6
- package/dist/eve/attachment/spotlight/EveSpotlightSet.js.map +1 -0
- package/dist/eve/attachment/spotlight/EveSpotlightSetItem.js +61 -0
- package/dist/eve/attachment/spotlight/EveSpotlightSetItem.js.map +1 -0
- package/dist/eve/{EveSpriteLight.js → attachment/sprite/EveSpriteLight.js} +14 -2
- package/dist/eve/attachment/sprite/EveSpriteLight.js.map +1 -0
- package/dist/eve/{EveSpriteLineSet.js → attachment/sprite/EveSpriteLineSet.js} +69 -7
- package/dist/eve/attachment/sprite/EveSpriteLineSet.js.map +1 -0
- package/dist/eve/{EveSpriteLineSetItem.js → attachment/sprite/EveSpriteLineSetItem.js} +29 -4
- package/dist/eve/attachment/sprite/EveSpriteLineSetItem.js.map +1 -0
- package/dist/eve/{EveSpriteSet.js → attachment/sprite/EveSpriteSet.js} +87 -8
- package/dist/eve/attachment/sprite/EveSpriteSet.js.map +1 -0
- package/dist/{generated/eve/attachment/sprites → eve/attachment/sprite}/EveSpriteSetItem.js +23 -26
- package/dist/eve/attachment/sprite/EveSpriteSetItem.js.map +1 -0
- package/dist/eve/attachment/turrets/EveTurretFiringFX.js +184 -2
- package/dist/eve/attachment/turrets/EveTurretFiringFX.js.map +1 -1
- package/dist/eve/attachment/turrets/EveTurretSet.js +236 -7
- package/dist/eve/attachment/turrets/EveTurretSet.js.map +1 -1
- package/dist/eve/attachment/turrets/EveTurretTarget.js +112 -0
- package/dist/eve/attachment/turrets/EveTurretTarget.js.map +1 -1
- package/dist/eve/camera/EveCamera.js +644 -0
- package/dist/eve/camera/EveCamera.js.map +1 -0
- package/dist/eve/child/EveChildAudio.js +63 -0
- package/dist/eve/child/EveChildAudio.js.map +1 -1
- package/dist/eve/child/EveChildBehaviorSystem.js +412 -0
- package/dist/eve/child/EveChildBehaviorSystem.js.map +1 -0
- package/dist/{generated/eve → eve}/child/EveChildBulletStorm.js +41 -3
- package/dist/eve/child/EveChildBulletStorm.js.map +1 -0
- package/dist/eve/child/EveChildContainer.js +175 -16
- package/dist/eve/child/EveChildContainer.js.map +1 -1
- package/dist/eve/child/EveChildEffectPropagator.js +1 -1
- package/dist/eve/child/EveChildEffectPropagator.js.map +1 -1
- package/dist/eve/child/EveChildFogVolume.js +72 -0
- package/dist/eve/child/EveChildFogVolume.js.map +1 -1
- package/dist/eve/child/EveChildInheritProperties.js +17 -0
- package/dist/eve/child/EveChildInheritProperties.js.map +1 -1
- package/dist/eve/child/EveChildInstancedMeshes.js +211 -1
- package/dist/eve/child/EveChildInstancedMeshes.js.map +1 -1
- package/dist/eve/child/EveChildLightingOverride.js +74 -0
- package/dist/eve/child/EveChildLightingOverride.js.map +1 -1
- package/dist/{generated/eve → eve}/child/EveChildLink.js +17 -16
- package/dist/eve/child/EveChildLink.js.map +1 -0
- package/dist/eve/child/EveChildMesh.js +351 -105
- package/dist/eve/child/EveChildMesh.js.map +1 -1
- package/dist/eve/child/EveChildSpherePin.js +108 -0
- package/dist/eve/child/EveChildSpherePin.js.map +1 -0
- package/dist/eve/child/EveChildTransform.js +44 -1
- package/dist/eve/child/EveChildTransform.js.map +1 -1
- package/dist/eve/child/IEveSpaceObjectChild.js +5 -0
- package/dist/eve/child/IEveSpaceObjectChild.js.map +1 -1
- package/dist/eve/child/behaviors/CollisionAvoidance.js +112 -0
- package/dist/eve/child/behaviors/CollisionAvoidance.js.map +1 -0
- package/dist/eve/child/behaviors/InclusionVolume.js +131 -0
- package/dist/eve/child/behaviors/InclusionVolume.js.map +1 -0
- package/dist/eve/child/behaviors/Wander.js +99 -0
- package/dist/eve/child/behaviors/Wander.js.map +1 -0
- package/dist/{generated/eve → eve}/child/behaviors/enums.js +1 -1
- package/dist/eve/child/behaviors/enums.js.map +1 -0
- package/dist/eve/child/behaviors/lifecycle/ProcessLifetime.js +540 -0
- package/dist/eve/child/behaviors/lifecycle/ProcessLifetime.js.map +1 -0
- package/dist/eve/{ProcessLifetimeData.js → child/behaviors/lifecycle/ProcessLifetimeData.js} +8 -2
- package/dist/eve/child/behaviors/lifecycle/ProcessLifetimeData.js.map +1 -0
- package/dist/eve/child/behaviors/{SplineTunnel.js → tunnels/SplineTunnel.js} +9 -7
- package/dist/eve/child/behaviors/tunnels/SplineTunnel.js.map +1 -0
- package/dist/eve/child/behaviors/tunnels/SplineTunnelGroup.js +211 -0
- package/dist/eve/child/behaviors/tunnels/SplineTunnelGroup.js.map +1 -0
- package/dist/eve/child/behaviors/{SplineTunnelPoint.js → tunnels/SplineTunnelPoint.js} +3 -3
- package/dist/eve/child/behaviors/tunnels/SplineTunnelPoint.js.map +1 -0
- package/dist/eve/child/lineSetPaths/EveBezierCurve.js +65 -0
- package/dist/eve/child/lineSetPaths/EveBezierCurve.js.map +1 -1
- package/dist/eve/child/lineSetPaths/EveCircle.js +63 -0
- package/dist/eve/child/lineSetPaths/EveCircle.js.map +1 -1
- package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierAttachToBone.js +24 -16
- package/dist/eve/child/modifiers/EveChildModifierAttachToBone.js.map +1 -0
- package/dist/eve/child/modifiers/EveChildModifierBillboard2D.js +5 -0
- package/dist/eve/child/modifiers/EveChildModifierBillboard2D.js.map +1 -1
- package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierBillboard3D.js +22 -19
- package/dist/eve/child/modifiers/EveChildModifierBillboard3D.js.map +1 -0
- package/dist/eve/child/modifiers/EveChildModifierBooster.js +6 -0
- package/dist/eve/child/modifiers/EveChildModifierBooster.js.map +1 -1
- package/dist/eve/child/modifiers/EveChildModifierCameraOrientedRotationConstrained.js +5 -0
- package/dist/eve/child/modifiers/EveChildModifierCameraOrientedRotationConstrained.js.map +1 -1
- package/dist/eve/child/modifiers/EveChildModifierHalo.js +5 -0
- package/dist/eve/child/modifiers/EveChildModifierHalo.js.map +1 -1
- package/dist/eve/child/modifiers/EveChildModifierHaloInverted.js +6 -0
- package/dist/eve/child/modifiers/EveChildModifierHaloInverted.js.map +1 -1
- package/dist/eve/child/modifiers/EveChildModifierSRT.js +5 -0
- package/dist/eve/child/modifiers/EveChildModifierSRT.js.map +1 -1
- package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierStretch.js +31 -17
- package/dist/eve/child/modifiers/EveChildModifierStretch.js.map +1 -0
- package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierTranslateWithCamera.js +16 -14
- package/dist/eve/child/modifiers/EveChildModifierTranslateWithCamera.js.map +1 -0
- package/dist/{generated/eve → eve}/child/procedural/EveChildProceduralContainer.js +11 -4
- package/dist/eve/child/procedural/EveChildProceduralContainer.js.map +1 -0
- package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodAttributeMap.js +12 -12
- package/dist/eve/child/procedural/selection/EveProceduralMethodAttributeMap.js.map +1 -0
- package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js +6 -6
- package/dist/eve/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js.map +1 -0
- package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodCycling.js +12 -12
- package/dist/eve/child/procedural/selection/EveProceduralMethodCycling.js.map +1 -0
- package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodCyclingParameter.js +8 -8
- package/dist/eve/child/procedural/selection/EveProceduralMethodCyclingParameter.js.map +1 -0
- package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodRandom.js +17 -17
- package/dist/eve/child/procedural/selection/EveProceduralMethodRandom.js.map +1 -0
- package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodRandomParameter.js +7 -7
- package/dist/eve/child/procedural/selection/EveProceduralMethodRandomParameter.js.map +1 -0
- package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodThresholdParameter.js +7 -7
- package/dist/eve/child/procedural/selection/EveProceduralMethodThresholdParameter.js.map +1 -0
- package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodThresholds.js +17 -17
- package/dist/eve/child/procedural/selection/EveProceduralMethodThresholds.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/EveBaseDistributionMethod.js +132 -3
- package/dist/eve/distribution/EveBaseDistributionMethod.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js +12 -1
- package/dist/eve/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js +9 -1
- package/dist/eve/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js +12 -1
- package/dist/eve/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js.map +1 -0
- package/dist/eve/distribution/attributeModifiers/enums.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/placement/EveDistributionPlacementGeneratorLocators.js +16 -3
- package/dist/eve/distribution/placement/EveDistributionPlacementGeneratorLocators.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js +31 -3
- package/dist/eve/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/placement/EveDistributionPlacementGeneratorVolume.js +34 -3
- package/dist/eve/distribution/placement/EveDistributionPlacementGeneratorVolume.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js +14 -2
- package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js +13 -2
- package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js +13 -2
- package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js +13 -2
- package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerBurst.js +19 -1
- package/dist/eve/distribution/spawners/EveDistributionSpawnerBurst.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerControllerTrigger.js +25 -1
- package/dist/eve/distribution/spawners/EveDistributionSpawnerControllerTrigger.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerInterval.js +17 -1
- package/dist/eve/distribution/spawners/EveDistributionSpawnerInterval.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerTriggerPlane.js +20 -1
- package/dist/eve/distribution/spawners/EveDistributionSpawnerTriggerPlane.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerTriggerSnake.js +20 -1
- package/dist/eve/distribution/spawners/EveDistributionSpawnerTriggerSnake.js.map +1 -0
- package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerTriggerSphere.js +20 -1
- package/dist/eve/distribution/spawners/EveDistributionSpawnerTriggerSphere.js.map +1 -0
- package/dist/{generated/eve/effect → eve/effect/lensflare}/EveLensflare.js +44 -2
- package/dist/eve/effect/lensflare/EveLensflare.js.map +1 -0
- package/dist/eve/effect/multiEffect/EveMultiEffect.js +302 -0
- package/dist/eve/effect/multiEffect/EveMultiEffect.js.map +1 -0
- package/dist/eve/effect/multiEffect/EveMultiEffectParameter.js +92 -0
- package/dist/eve/effect/multiEffect/EveMultiEffectParameter.js.map +1 -0
- package/dist/eve/index.js +117 -47
- package/dist/eve/index.js.map +1 -1
- package/dist/eve/lights/CjsLightData.js +7 -0
- package/dist/eve/lights/CjsLightData.js.map +1 -1
- package/dist/eve/lights/Tr2Light.js +41 -0
- package/dist/eve/lights/Tr2Light.js.map +1 -1
- package/dist/eve/lights/Tr2PointLight.js +5 -0
- package/dist/eve/lights/Tr2PointLight.js.map +1 -1
- package/dist/eve/lights/Tr2SpotLight.js +5 -0
- package/dist/eve/lights/Tr2SpotLight.js.map +1 -1
- package/dist/eve/lights/Tr2TexturedPointLight.js +10 -0
- package/dist/eve/lights/Tr2TexturedPointLight.js.map +1 -1
- package/dist/eve/lights/lightConversion.js +29 -27
- package/dist/eve/lights/lightConversion.js.map +1 -1
- package/dist/eve/{EveLocator2.js → locator/EveLocator2.js} +20 -1
- package/dist/eve/locator/EveLocator2.js.map +1 -0
- package/dist/eve/{EveLocatorSets.js → locator/EveLocatorSets.js} +43 -1
- package/dist/eve/locator/EveLocatorSets.js.map +1 -0
- package/dist/eve/{Locator.js → locator/Locator.js} +6 -1
- package/dist/eve/locator/Locator.js.map +1 -0
- package/dist/eve/{LocatorData.js → locator/LocatorData.js} +3 -1
- package/dist/eve/locator/LocatorData.js.map +1 -0
- package/dist/eve/overlays/EveMeshOverlayEffect.js +208 -0
- package/dist/eve/overlays/EveMeshOverlayEffect.js.map +1 -0
- package/dist/eve/{EveParticleDirectForce.js → particles/force/EveParticleDirectForce.js} +5 -5
- package/dist/eve/particles/force/EveParticleDirectForce.js.map +1 -0
- package/dist/eve/{EveParticleDragForce.js → particles/force/EveParticleDragForce.js} +5 -5
- package/dist/eve/particles/force/EveParticleDragForce.js.map +1 -0
- package/dist/eve/{EveParticleSpring.js → particles/force/EveParticleSpring.js} +6 -6
- package/dist/eve/particles/force/EveParticleSpring.js.map +1 -0
- package/dist/{generated/eve/scene → eve/particles/static}/EveSceneStaticParticles.js +70 -36
- package/dist/eve/particles/static/EveSceneStaticParticles.js.map +1 -0
- package/dist/eve/perObjectData/childPerObjectRecords.js +90 -0
- package/dist/eve/perObjectData/childPerObjectRecords.js.map +1 -0
- package/dist/eve/renderable/stretch/CjsStretchRuntime.js +76 -0
- package/dist/eve/renderable/stretch/CjsStretchRuntime.js.map +1 -1
- package/dist/eve/renderable/stretch/EveFiringEffectElementContainer.js +85 -1
- package/dist/eve/renderable/stretch/EveFiringEffectElementContainer.js.map +1 -1
- package/dist/eve/renderable/stretch/EveLocalPositionCurve.js +91 -0
- package/dist/eve/renderable/stretch/EveLocalPositionCurve.js.map +1 -1
- package/dist/eve/renderable/stretch/EveRemotePositionCurve.js +36 -0
- package/dist/eve/renderable/stretch/EveRemotePositionCurve.js.map +1 -1
- package/dist/eve/renderable/stretch/EveStretch.js +158 -9
- package/dist/eve/renderable/stretch/EveStretch.js.map +1 -1
- package/dist/eve/renderable/stretch/EveStretch2.js +121 -12
- package/dist/eve/renderable/stretch/EveStretch2.js.map +1 -1
- package/dist/eve/renderable/stretch/EveStretch3.js +261 -8
- package/dist/eve/renderable/stretch/EveStretch3.js.map +1 -1
- package/dist/eve/scene/EveSpaceScene.js +56 -6
- package/dist/eve/scene/EveSpaceScene.js.map +1 -1
- package/dist/{generated/eve/scene → eve/scene/components}/EveComponentCollection.js +24 -1
- package/dist/eve/scene/components/EveComponentCollection.js.map +1 -0
- package/dist/{generated/eve/scene → eve/scene/components}/EveComponentRegistry.js +74 -2
- package/dist/eve/scene/components/EveComponentRegistry.js.map +1 -0
- package/dist/eve/scene/picking/EvePickingContext.js +61 -0
- package/dist/eve/scene/picking/EvePickingContext.js.map +1 -0
- package/dist/eve/scene/shadows/TriShadowFrustum.js +70 -0
- package/dist/eve/scene/shadows/TriShadowFrustum.js.map +1 -0
- package/dist/eve/scene/shadows/TriShadowOrthoFrustum.js +129 -0
- package/dist/eve/scene/shadows/TriShadowOrthoFrustum.js.map +1 -0
- package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js +19 -19
- package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js.map +1 -0
- package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js +19 -19
- package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js.map +1 -0
- package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js +12 -12
- package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js.map +1 -0
- package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js +12 -12
- package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js.map +1 -0
- package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js +30 -30
- package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js.map +1 -0
- package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js +9 -9
- package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js.map +1 -0
- package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js +23 -23
- package/dist/eve/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js.map +1 -0
- package/dist/eve/smartLights/attributeModifiers/enums.js.map +1 -0
- package/dist/{generated/eve → eve}/socket/EveSocketParameterBindingBase.js +26 -1
- package/dist/eve/socket/EveSocketParameterBindingBase.js.map +1 -0
- package/dist/{generated/eve → eve}/socket/EveSocketParameterBool.js +17 -1
- package/dist/eve/socket/EveSocketParameterBool.js.map +1 -0
- package/dist/{generated/eve → eve}/socket/EveSocketParameterColor.js +21 -5
- package/dist/eve/socket/EveSocketParameterColor.js.map +1 -0
- package/dist/eve/socket/EveSocketParameterFilePath.js +5 -5
- package/dist/eve/socket/EveSocketParameterFilePath.js.map +1 -1
- package/dist/{generated/eve → eve}/socket/EveSocketParameterFloat.js +17 -1
- package/dist/eve/socket/EveSocketParameterFloat.js.map +1 -0
- package/dist/{generated/eve → eve}/socket/EveSocketParameterInt.js +17 -1
- package/dist/eve/socket/EveSocketParameterInt.js.map +1 -0
- package/dist/{generated/eve → eve}/socket/EveSocketParameterString.js +42 -2
- package/dist/eve/socket/EveSocketParameterString.js.map +1 -0
- package/dist/{generated/eve → eve}/socket/EveSocketParameterVector2.js +17 -1
- package/dist/eve/socket/EveSocketParameterVector2.js.map +1 -0
- package/dist/{generated/eve → eve}/socket/EveSocketParameterVector3.js +17 -1
- package/dist/eve/socket/EveSocketParameterVector3.js.map +1 -0
- package/dist/{generated/eve → eve}/socket/EveSocketParameterVector4.js +17 -1
- package/dist/eve/socket/EveSocketParameterVector4.js.map +1 -0
- package/dist/eve/spaceObject/EveEffectRoot2.js +58 -31
- package/dist/eve/spaceObject/EveEffectRoot2.js.map +1 -1
- package/dist/eve/spaceObject/EveMissile.js +49 -1
- package/dist/eve/spaceObject/EveMissile.js.map +1 -1
- package/dist/eve/spaceObject/EveMissileWarhead.js +100 -1
- package/dist/eve/spaceObject/EveMissileWarhead.js.map +1 -1
- package/dist/eve/spaceObject/EveMobile.js +104 -0
- package/dist/eve/spaceObject/EveMobile.js.map +1 -1
- package/dist/eve/spaceObject/EveRootTransform.js +17 -0
- package/dist/eve/spaceObject/EveRootTransform.js.map +1 -1
- package/dist/{generated/eve → eve}/spaceObject/EveShip2.js +32 -12
- package/dist/eve/spaceObject/EveShip2.js.map +1 -0
- package/dist/eve/spaceObject/EveSpaceObject2.js +726 -199
- package/dist/eve/spaceObject/EveSpaceObject2.js.map +1 -1
- package/dist/eve/spaceObject/EveTransform.js +100 -4
- package/dist/eve/spaceObject/EveTransform.js.map +1 -1
- package/dist/eve/spaceObject/IEveSpaceObject2ParentData.js +70 -0
- package/dist/eve/spaceObject/IEveSpaceObject2ParentData.js.map +1 -0
- package/dist/eve/spaceObject/createEveSpaceObjectMainPerObjectValues.js +19 -16
- package/dist/eve/spaceObject/createEveSpaceObjectMainPerObjectValues.js.map +1 -1
- package/dist/eve/spaceObject/fxAttributes/EveCameraFxAttributes.js +92 -0
- package/dist/eve/spaceObject/fxAttributes/EveCameraFxAttributes.js.map +1 -0
- package/dist/eve/spaceObject/fxAttributes/EveSpaceObjectFxAttributes.js +158 -0
- package/dist/eve/spaceObject/fxAttributes/EveSpaceObjectFxAttributes.js.map +1 -0
- package/dist/{generated/eve/spaceObject → eve/spaceObject/planet}/EvePlanet.js +2 -2
- package/dist/eve/spaceObject/planet/EvePlanet.js.map +1 -0
- package/dist/{generated/eve → eve}/spaceObject/swarm/EveSwarmRenderable.js +102 -64
- package/dist/eve/spaceObject/swarm/EveSwarmRenderable.js.map +1 -0
- package/dist/eve/ui/EveEllipseDefinition.js +15 -0
- package/dist/eve/ui/EveEllipseDefinition.js.map +1 -1
- package/dist/eve/ui/EveEllipseSet.js +42 -0
- package/dist/eve/ui/EveEllipseSet.js.map +1 -1
- package/dist/{generated/eve → eve}/ui/EveSpherePin.js +76 -11
- package/dist/eve/ui/EveSpherePin.js.map +1 -0
- package/dist/eve/ui/EveSprite2dBracket.js +5 -0
- package/dist/eve/ui/EveSprite2dBracket.js.map +1 -1
- package/dist/eve/ui/EveUiObject.js +11 -0
- package/dist/eve/ui/EveUiObject.js.map +1 -1
- package/dist/{generated/eve/ui → eve/ui/lines}/EveLineSet.js +67 -6
- package/dist/eve/ui/lines/EveLineSet.js.map +1 -0
- package/dist/eve/ui/tacticalOverlay/EveTacticalOverlayTrackObject.js +78 -0
- package/dist/eve/ui/tacticalOverlay/EveTacticalOverlayTrackObject.js.map +1 -0
- package/dist/{generated/eve/ui → eve/ui/tacticalOverlay}/EveTacticalTrails.js +22 -2
- package/dist/eve/ui/tacticalOverlay/EveTacticalTrails.js.map +1 -0
- package/dist/eve/virtualCamera/EveVirtualCamera.js +152 -0
- package/dist/eve/virtualCamera/EveVirtualCamera.js.map +1 -1
- package/dist/eve/virtualCamera/EveVirtualCameraSystem.js +65 -0
- package/dist/eve/virtualCamera/EveVirtualCameraSystem.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatAdd.js +17 -0
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatAdd.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatBase.js +19 -0
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatBase.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatDamping.js +17 -0
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatDamping.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatNoise.js +29 -0
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatNoise.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatSet.js +15 -0
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatSet.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Base.js +38 -0
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Base.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Damping.js +17 -0
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Damping.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Inertia.js +18 -0
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Inertia.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveBetween.js +20 -0
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveBetween.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveForward.js +20 -0
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveForward.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveRight.js +11 -0
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveRight.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveUp.js +14 -0
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveUp.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Offset.js +16 -0
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Offset.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Orbit.js +20 -0
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Orbit.js.map +1 -1
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Shake.js +36 -0
- package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Shake.js.map +1 -1
- package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionBase.js +36 -0
- package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionBase.js.map +1 -1
- package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionCut.js +11 -0
- package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionCut.js.map +1 -1
- package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionLerp.js +37 -0
- package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionLerp.js.map +1 -1
- package/dist/eve/volume/EveBoxVolume.js +59 -0
- package/dist/eve/volume/EveBoxVolume.js.map +1 -1
- package/dist/eve/volume/EveEllipsoidVolume.js +54 -0
- package/dist/eve/volume/EveEllipsoidVolume.js.map +1 -1
- package/dist/eve/volume/EveSphereVolume.js +34 -0
- package/dist/eve/volume/EveSphereVolume.js.map +1 -1
- package/dist/generated/eve/child/EveChildCloud2.js +138 -138
- package/dist/generated/eve/child/EveChildCloud2.js.map +1 -1
- package/dist/generated/eve/child/EveChildParticleSystem.js +10 -4
- package/dist/generated/eve/child/EveChildParticleSystem.js.map +1 -1
- package/dist/generated/eve/child/EveChildSocket.js +1 -1
- package/dist/generated/eve/child/EveChildSocket.js.map +1 -1
- package/dist/generated/eve/child/behaviors/BackAndForth.js +14 -17
- package/dist/generated/eve/child/behaviors/BackAndForth.js.map +1 -1
- package/dist/generated/eve/child/behaviors/BehaviorGroup.js +2 -2
- package/dist/generated/eve/child/behaviors/BehaviorGroup.js.map +1 -1
- package/dist/generated/eve/child/behaviors/EveKDdroneManagementTree.js +26 -29
- package/dist/generated/eve/child/behaviors/EveKDdroneManagementTree.js.map +1 -1
- package/dist/generated/eve/child/behaviors/FollowASpline.js +13 -17
- package/dist/generated/eve/child/behaviors/FollowASpline.js.map +1 -1
- package/dist/generated/eve/child/behaviors/PlayFX.js +14 -14
- package/dist/generated/eve/child/behaviors/PlayFX.js.map +1 -1
- package/dist/generated/eve/child/behaviors/SeekTarget.js +1 -1
- package/dist/generated/eve/child/behaviors/SeekTarget.js.map +1 -1
- package/dist/generated/eve/child/behaviors/index.js +0 -6
- package/dist/generated/eve/child/behaviors/index.js.map +1 -1
- package/dist/generated/eve/child/index.js +0 -23
- package/dist/generated/eve/child/index.js.map +1 -1
- package/dist/generated/eve/effect/index.js +0 -3
- package/dist/generated/eve/effect/index.js.map +1 -1
- package/dist/generated/eve/index.js +0 -88
- package/dist/generated/eve/index.js.map +1 -1
- package/dist/generated/eve/scene/index.js +0 -6
- package/dist/generated/eve/scene/index.js.map +1 -1
- package/dist/generated/eve/smartLights/EveSmartLightColorShareGroup.js +20 -20
- package/dist/generated/eve/smartLights/EveSmartLightColorShareGroup.js.map +1 -1
- package/dist/generated/eve/smartLights/EveSmartLightPointLight.js +1 -1
- package/dist/generated/eve/smartLights/EveSmartLightPointLight.js.map +1 -1
- package/dist/generated/eve/smartLights/index.js +0 -8
- package/dist/generated/eve/smartLights/index.js.map +1 -1
- package/dist/generated/eve/spaceObject/index.js +0 -4
- package/dist/generated/eve/spaceObject/index.js.map +1 -1
- package/dist/generated/eve/spaceObject/swarm/EveSwarm.js +11 -11
- package/dist/generated/eve/spaceObject/swarm/EveSwarm.js.map +1 -1
- package/dist/generated/eve/spaceObject/swarm/index.js +0 -1
- package/dist/generated/eve/spaceObject/swarm/index.js.map +1 -1
- package/dist/generated/eve/ui/index.js +0 -4
- package/dist/generated/eve/ui/index.js.map +1 -1
- package/dist/generated/index.js +0 -93
- package/dist/generated/index.js.map +1 -1
- package/dist/generated/trinityCore/index.js +0 -5
- package/dist/generated/trinityCore/index.js.map +1 -1
- package/dist/index.js +130 -155
- package/dist/index.js.map +1 -1
- package/dist/particle/Tr2GpuSharedEmitter.js +39 -0
- package/dist/particle/Tr2GpuSharedEmitter.js.map +1 -1
- package/dist/particle/Tr2GpuUniqueEmitter.js +5 -0
- package/dist/particle/Tr2GpuUniqueEmitter.js.map +1 -1
- package/dist/particle/Tr2ParticleAttractorForce.js +10 -0
- package/dist/particle/Tr2ParticleAttractorForce.js.map +1 -1
- package/dist/particle/Tr2ParticleDirectForce.js +7 -0
- package/dist/particle/Tr2ParticleDirectForce.js.map +1 -1
- package/dist/particle/Tr2ParticleDragForce.js +7 -0
- package/dist/particle/Tr2ParticleDragForce.js.map +1 -1
- package/dist/particle/Tr2ParticleElementDeclaration.js +5 -0
- package/dist/particle/Tr2ParticleElementDeclaration.js.map +1 -1
- package/dist/particle/Tr2ParticleFluidDragForce.js +10 -0
- package/dist/particle/Tr2ParticleFluidDragForce.js.map +1 -1
- package/dist/particle/Tr2ParticleSpring.js +10 -0
- package/dist/particle/Tr2ParticleSpring.js.map +1 -1
- package/dist/particle/Tr2ParticleVortexForce.js +10 -0
- package/dist/particle/Tr2ParticleVortexForce.js.map +1 -1
- package/dist/particle/particleElementBinding.js +12 -0
- package/dist/particle/particleElementBinding.js.map +1 -1
- package/dist/postProcess/Tr2PPBloomEffect.js +6 -0
- package/dist/postProcess/Tr2PPBloomEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPDepthOfFieldEffect.js +16 -0
- package/dist/postProcess/Tr2PPDepthOfFieldEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPGenericEffect.js +7 -0
- package/dist/postProcess/Tr2PPGenericEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPTaaEffect.js +10 -0
- package/dist/postProcess/Tr2PPTaaEffect.js.map +1 -1
- package/dist/postProcess/Tr2PPTonemappingEffect.js +5 -0
- package/dist/postProcess/Tr2PPTonemappingEffect.js.map +1 -1
- package/dist/postProcess/Tr2PostProcess.js +5 -0
- package/dist/postProcess/Tr2PostProcess.js.map +1 -1
- package/dist/postProcess/Tr2PostProcess2.js +147 -0
- package/dist/postProcess/Tr2PostProcess2.js.map +1 -1
- package/dist/postProcess/Tr2PostProcessAttributes.js +89 -0
- package/dist/postProcess/Tr2PostProcessAttributes.js.map +1 -1
- package/dist/renderJob/Tr2RenderJobs.js +34 -0
- package/dist/renderJob/Tr2RenderJobs.js.map +1 -1
- package/dist/renderJob/TriRenderJob.js +59 -0
- package/dist/renderJob/TriRenderJob.js.map +1 -1
- package/dist/renderJob/TriRenderStep.js +20 -0
- package/dist/renderJob/TriRenderStep.js.map +1 -1
- package/dist/renderJob/TriStepClear.js +18 -0
- package/dist/renderJob/TriStepClear.js.map +1 -1
- package/dist/renderJob/TriStepCopyRenderTarget.js +51 -0
- package/dist/renderJob/TriStepCopyRenderTarget.js.map +1 -1
- package/dist/renderJob/TriStepEnableWireframeMode.js +9 -0
- package/dist/renderJob/TriStepEnableWireframeMode.js.map +1 -1
- package/dist/renderJob/TriStepGenerateMipMaps.js +9 -0
- package/dist/renderJob/TriStepGenerateMipMaps.js.map +1 -1
- package/dist/renderJob/TriStepPopDepthStencil.js +6 -0
- package/dist/renderJob/TriStepPopDepthStencil.js.map +1 -1
- package/dist/renderJob/TriStepPopProjection.js +6 -0
- package/dist/renderJob/TriStepPopProjection.js.map +1 -1
- package/dist/renderJob/TriStepPopRenderTarget.js +12 -0
- package/dist/renderJob/TriStepPopRenderTarget.js.map +1 -1
- package/dist/renderJob/TriStepPopViewTransform.js +6 -0
- package/dist/renderJob/TriStepPopViewTransform.js.map +1 -1
- package/dist/renderJob/TriStepPopViewport.js +6 -0
- package/dist/renderJob/TriStepPopViewport.js.map +1 -1
- package/dist/renderJob/TriStepPresentSwapChain.js +12 -0
- package/dist/renderJob/TriStepPresentSwapChain.js.map +1 -1
- package/dist/renderJob/TriStepPushDepthStencil.js +17 -0
- package/dist/renderJob/TriStepPushDepthStencil.js.map +1 -1
- package/dist/renderJob/TriStepPushProjection.js +6 -0
- package/dist/renderJob/TriStepPushProjection.js.map +1 -1
- package/dist/renderJob/TriStepPushRenderTarget.js +9 -0
- package/dist/renderJob/TriStepPushRenderTarget.js.map +1 -1
- package/dist/renderJob/TriStepPushViewTransform.js +6 -0
- package/dist/renderJob/TriStepPushViewTransform.js.map +1 -1
- package/dist/renderJob/TriStepPushViewport.js +6 -0
- package/dist/renderJob/TriStepPushViewport.js.map +1 -1
- package/dist/renderJob/TriStepRemoteSync.js +17 -0
- package/dist/renderJob/TriStepRemoteSync.js.map +1 -1
- package/dist/renderJob/TriStepResolve.js +13 -0
- package/dist/renderJob/TriStepResolve.js.map +1 -1
- package/dist/renderJob/TriStepRunJob.js +12 -0
- package/dist/renderJob/TriStepRunJob.js.map +1 -1
- package/dist/renderJob/TriStepSetDepthStencil.js +12 -0
- package/dist/renderJob/TriStepSetDepthStencil.js.map +1 -1
- package/dist/renderJob/TriStepSetProjection.js +14 -0
- package/dist/renderJob/TriStepSetProjection.js.map +1 -1
- package/dist/renderJob/TriStepSetRenderState.js +20 -0
- package/dist/renderJob/TriStepSetRenderState.js.map +1 -1
- package/dist/renderJob/TriStepSetRenderTarget.js +12 -0
- package/dist/renderJob/TriStepSetRenderTarget.js.map +1 -1
- package/dist/renderJob/TriStepSetStdRndStates.js +18 -0
- package/dist/renderJob/TriStepSetStdRndStates.js.map +1 -1
- package/dist/renderJob/TriStepSetView.js +29 -2
- package/dist/renderJob/TriStepSetView.js.map +1 -1
- package/dist/renderJob/TriStepSetViewport.js +17 -0
- package/dist/renderJob/TriStepSetViewport.js.map +1 -1
- package/dist/renderJob/TriStepSetVisualizationMode.js +19 -0
- package/dist/renderJob/TriStepSetVisualizationMode.js.map +1 -1
- package/dist/shader/Tr2Effect.js +217 -2
- package/dist/shader/Tr2Effect.js.map +1 -1
- package/dist/shader/Tr2Material.js +41 -0
- package/dist/shader/Tr2Material.js.map +1 -1
- package/dist/shader/index.js +1 -11
- package/dist/shader/index.js.map +1 -1
- package/dist/shader/material/Tr2EffectLibraryParameters.js +7 -0
- package/dist/shader/material/Tr2EffectLibraryParameters.js.map +1 -1
- package/dist/shader/material/Tr2EffectPassParameters.js +23 -0
- package/dist/shader/material/Tr2EffectPassParameters.js.map +1 -1
- package/dist/shader/material/Tr2MaterialStageInput.js +15 -0
- package/dist/shader/material/Tr2MaterialStageInput.js.map +1 -1
- package/dist/shader/parameter/CjsParameter.js +94 -0
- package/dist/shader/parameter/CjsParameter.js.map +1 -1
- package/dist/shader/parameter/CjsVectorParameter.js +20 -0
- package/dist/shader/parameter/CjsVectorParameter.js.map +1 -1
- package/dist/shader/parameter/Tr2FloatParameter.js +53 -0
- package/dist/shader/parameter/Tr2FloatParameter.js.map +1 -1
- package/dist/shader/parameter/Tr2GeometryBufferParameter.js +39 -0
- package/dist/shader/parameter/Tr2GeometryBufferParameter.js.map +1 -1
- package/dist/shader/parameter/Tr2Matrix4Parameter.js +54 -0
- package/dist/shader/parameter/Tr2Matrix4Parameter.js.map +1 -1
- package/dist/shader/parameter/Tr2RuntimeTextureParameter.js +54 -0
- package/dist/shader/parameter/Tr2RuntimeTextureParameter.js.map +1 -1
- package/dist/shader/parameter/Tr2TextureAnimationParameter.js +35 -0
- package/dist/shader/parameter/Tr2TextureAnimationParameter.js.map +1 -1
- package/dist/shader/parameter/Tr2Vector2Parameter.js +86 -0
- package/dist/shader/parameter/Tr2Vector2Parameter.js.map +1 -1
- package/dist/shader/parameter/Tr2Vector3Parameter.js +95 -0
- package/dist/shader/parameter/Tr2Vector3Parameter.js.map +1 -1
- package/dist/shader/parameter/Tr2Vector4Parameter.js +105 -0
- package/dist/shader/parameter/Tr2Vector4Parameter.js.map +1 -1
- package/dist/shader/parameter/TriFloatArrayParameter.js +26 -0
- package/dist/shader/parameter/TriFloatArrayParameter.js.map +1 -1
- package/dist/shader/parameter/TriTextureParameter.js +84 -0
- package/dist/shader/parameter/TriTextureParameter.js.map +1 -1
- package/dist/shader/parameter/TriTransformParameter.js +2 -0
- package/dist/shader/parameter/TriTransformParameter.js.map +1 -1
- package/dist/shader/parameter/TriVariableParameter.js +38 -0
- package/dist/shader/parameter/TriVariableParameter.js.map +1 -1
- package/dist/shader/parameter/TriVector4.js +2 -0
- package/dist/shader/parameter/TriVector4.js.map +1 -1
- package/dist/shader/reflection/Tr2ShaderOption.js +6 -1
- package/dist/shader/reflection/Tr2ShaderOption.js.map +1 -1
- package/dist/shader/support/CjsVariableStore.js +140 -0
- package/dist/shader/support/CjsVariableStore.js.map +1 -1
- package/dist/shader/support/Tr2ShaderBuffer.js +15 -0
- package/dist/shader/support/Tr2ShaderBuffer.js.map +1 -1
- package/dist/trinityCore/CjsBatchManager.js +62 -2
- package/dist/trinityCore/CjsBatchManager.js.map +1 -1
- package/dist/trinityCore/GrannyBoneOffset.js +51 -0
- package/dist/trinityCore/GrannyBoneOffset.js.map +1 -1
- package/dist/trinityCore/ITriRenderBatchAccumulator.js +65 -3
- package/dist/trinityCore/ITriRenderBatchAccumulator.js.map +1 -1
- package/dist/trinityCore/Tr2DirectInstanceData.js +19 -0
- package/dist/trinityCore/Tr2DirectInstanceData.js.map +1 -1
- package/dist/trinityCore/Tr2ExpressionTermInfo.js +21 -0
- package/dist/trinityCore/Tr2ExpressionTermInfo.js.map +1 -1
- package/dist/trinityCore/Tr2GpuBuffer.js +5 -0
- package/dist/trinityCore/Tr2GpuBuffer.js.map +1 -1
- package/dist/{generated/trinityCore → trinityCore}/Tr2GrannyAnimation.js +137 -8
- package/dist/trinityCore/Tr2GrannyAnimation.js.map +1 -0
- package/dist/trinityCore/Tr2InstancedMesh.js +52 -0
- package/dist/trinityCore/Tr2InstancedMesh.js.map +1 -1
- package/dist/trinityCore/Tr2MaterialParameterStore.js +5 -0
- package/dist/trinityCore/Tr2MaterialParameterStore.js.map +1 -1
- package/dist/trinityCore/Tr2Mesh.js +37 -0
- package/dist/trinityCore/Tr2Mesh.js.map +1 -1
- package/dist/trinityCore/Tr2MeshArea.js +78 -0
- package/dist/trinityCore/Tr2MeshArea.js.map +1 -1
- package/dist/trinityCore/Tr2MeshBase.js +98 -2
- package/dist/trinityCore/Tr2MeshBase.js.map +1 -1
- package/dist/trinityCore/Tr2PerObjectData.js +10 -0
- package/dist/trinityCore/Tr2PerObjectData.js.map +1 -1
- package/dist/trinityCore/Tr2PickType.js +33 -0
- package/dist/trinityCore/Tr2PickType.js.map +1 -0
- package/dist/trinityCore/Tr2RenderBatch.js +137 -0
- package/dist/trinityCore/Tr2RenderBatch.js.map +1 -1
- package/dist/trinityCore/Tr2RenderContext.js +271 -0
- package/dist/trinityCore/Tr2RenderContext.js.map +1 -1
- package/dist/trinityCore/Tr2RuntimeInstanceData.js +179 -0
- package/dist/trinityCore/Tr2RuntimeInstanceData.js.map +1 -1
- package/dist/trinityCore/Tr2ShLightingManager.js +397 -0
- package/dist/trinityCore/Tr2ShLightingManager.js.map +1 -0
- package/dist/trinityCore/Tr2VariableStore.js +26 -0
- package/dist/trinityCore/Tr2VariableStore.js.map +1 -1
- package/dist/trinityCore/Tr2VisibilityResults.js +5 -0
- package/dist/trinityCore/Tr2VisibilityResults.js.map +1 -1
- package/dist/trinityCore/TriDevice.js +5 -0
- package/dist/trinityCore/TriDevice.js.map +1 -1
- package/dist/trinityCore/TriFrustum.js +21 -14
- package/dist/trinityCore/TriFrustum.js.map +1 -1
- package/dist/trinityCore/TriObserverLocal.js +43 -0
- package/dist/trinityCore/TriObserverLocal.js.map +1 -1
- package/dist/trinityCore/TriProjection.js +86 -32
- package/dist/trinityCore/TriProjection.js.map +1 -1
- package/dist/trinityCore/TriRect.js +12 -0
- package/dist/trinityCore/TriRect.js.map +1 -1
- package/dist/trinityCore/TriRenderBatchAccumulator.js +46 -0
- package/dist/trinityCore/TriRenderBatchAccumulator.js.map +1 -1
- package/dist/trinityCore/TriRenderBatchMap.js +39 -2
- package/dist/trinityCore/TriRenderBatchMap.js.map +1 -1
- package/dist/trinityCore/TriSettings.js +38 -0
- package/dist/trinityCore/TriSettings.js.map +1 -1
- package/dist/trinityCore/TriVariable.js +30 -0
- package/dist/trinityCore/TriVariable.js.map +1 -1
- package/dist/trinityCore/TriView.js +16 -1
- package/dist/trinityCore/TriView.js.map +1 -1
- package/dist/trinityCore/TriViewport.js +12 -0
- package/dist/trinityCore/TriViewport.js.map +1 -1
- package/dist/trinityCore/{Tr2BindingVector3.js → binding/Tr2BindingVector3.js} +1 -1
- package/dist/trinityCore/binding/Tr2BindingVector3.js.map +1 -0
- package/dist/trinityCore/binding/Tr2DynamicBinding.js +266 -0
- package/dist/trinityCore/binding/Tr2DynamicBinding.js.map +1 -0
- package/dist/trinityCore/binding/Tr2ExternalParameter.js +392 -0
- package/dist/trinityCore/binding/Tr2ExternalParameter.js.map +1 -0
- package/dist/trinityCore/{Tr2PyValueBinding.js → binding/Tr2PyValueBinding.js} +30 -6
- package/dist/trinityCore/binding/Tr2PyValueBinding.js.map +1 -0
- package/dist/trinityCore/binding/TriValueBinding.js +648 -0
- package/dist/trinityCore/binding/TriValueBinding.js.map +1 -0
- package/dist/trinityCore/index.js +11 -4
- package/dist/trinityCore/index.js.map +1 -1
- package/dist/trinityCore/pickRay.js +84 -0
- package/dist/trinityCore/pickRay.js.map +1 -0
- package/dist/trinityCore/rawData/CjsPerObjectLayouts.js +931 -0
- package/dist/trinityCore/rawData/CjsPerObjectLayouts.js.map +1 -0
- package/dist/trinityCore/rawData/RawData.js +294 -38
- package/dist/trinityCore/rawData/RawData.js.map +1 -1
- package/dist/trinityCore/rawData/TriPoolAllocator.js +357 -0
- package/dist/trinityCore/rawData/TriPoolAllocator.js.map +1 -0
- package/dist/utilities/Range.js +53 -0
- package/dist/utilities/Range.js.map +1 -1
- package/docs/README.md +88 -0
- package/docs/architecture.md +162 -0
- package/docs/concepts/eve-runtime-behavior.md +86 -0
- package/docs/concepts/generated-class-lifecycle.md +116 -0
- package/docs/reference/api.md +76 -0
- package/docs/reference/classes/eve-runtime.md +106 -0
- package/docs/reference/classes/trinity-core.md +26 -0
- package/docs/reference/implementation-status.md +104 -0
- package/docs/reference/main-semantic-extraction.md +104 -0
- package/package.json +33 -24
- package/dist/eve/DecalVSPerObjectData.js +0 -34
- package/dist/eve/DecalVSPerObjectData.js.map +0 -1
- package/dist/eve/EveBannerItem.js +0 -43
- package/dist/eve/EveBannerItem.js.map +0 -1
- package/dist/eve/EveBannerLight.js.map +0 -1
- package/dist/eve/EveBannerSet.js +0 -190
- package/dist/eve/EveBannerSet.js.map +0 -1
- package/dist/eve/EveBasicPerObjectData.js +0 -31
- package/dist/eve/EveBasicPerObjectData.js.map +0 -1
- package/dist/eve/EveBoosterSet2.js.map +0 -1
- package/dist/eve/EveBoosterSet2Renderable.js.map +0 -1
- package/dist/eve/EveChildSpherePinPerObjectData.js +0 -37
- package/dist/eve/EveChildSpherePinPerObjectData.js.map +0 -1
- package/dist/eve/EveHazeSet.js.map +0 -1
- package/dist/eve/EveHazeSetLight.js.map +0 -1
- package/dist/eve/EveLocator2.js.map +0 -1
- package/dist/eve/EveLocatorSets.js.map +0 -1
- package/dist/eve/EveParticleDirectForce.js.map +0 -1
- package/dist/eve/EveParticleDragForce.js.map +0 -1
- package/dist/eve/EveParticleSpring.js.map +0 -1
- package/dist/eve/EvePerObjectPSData.js +0 -29
- package/dist/eve/EvePerObjectPSData.js.map +0 -1
- package/dist/eve/EvePerObjectVSData.js +0 -29
- package/dist/eve/EvePerObjectVSData.js.map +0 -1
- package/dist/eve/EvePlaneLight.js.map +0 -1
- package/dist/eve/EvePlaneSet.js.map +0 -1
- package/dist/eve/EvePlaneSetItem.js +0 -45
- package/dist/eve/EvePlaneSetItem.js.map +0 -1
- package/dist/eve/EveSpaceObjectAttachmentUtils.js.map +0 -1
- package/dist/eve/EveSpaceObjectDecal.js +0 -150
- package/dist/eve/EveSpaceObjectDecal.js.map +0 -1
- package/dist/eve/EveSpaceObjectPSData.js +0 -73
- package/dist/eve/EveSpaceObjectPSData.js.map +0 -1
- package/dist/eve/EveSpaceObjectVSData.js +0 -79
- package/dist/eve/EveSpaceObjectVSData.js.map +0 -1
- package/dist/eve/EveSpacePerObjectData.js +0 -97
- package/dist/eve/EveSpacePerObjectData.js.map +0 -1
- package/dist/eve/EveSpherePinPerObjectData.js +0 -37
- package/dist/eve/EveSpherePinPerObjectData.js.map +0 -1
- package/dist/eve/EveSpotlightLight.js.map +0 -1
- package/dist/eve/EveSpotlightSet.js.map +0 -1
- package/dist/eve/EveSpriteLight.js.map +0 -1
- package/dist/eve/EveSpriteLineSet.js.map +0 -1
- package/dist/eve/EveSpriteLineSetItem.js.map +0 -1
- package/dist/eve/EveSpriteSet.js.map +0 -1
- package/dist/eve/EveTrailsSet.js.map +0 -1
- package/dist/eve/Locator.js.map +0 -1
- package/dist/eve/LocatorData.js.map +0 -1
- package/dist/eve/ProcessLifetimeData.js.map +0 -1
- package/dist/eve/attachment/turrets/EveTurretSetPSData.js +0 -47
- package/dist/eve/attachment/turrets/EveTurretSetPSData.js.map +0 -1
- package/dist/eve/attachment/turrets/EveTurretSetVSData.js +0 -62
- package/dist/eve/attachment/turrets/EveTurretSetVSData.js.map +0 -1
- package/dist/eve/child/behaviors/SplineTunnel.js.map +0 -1
- package/dist/eve/child/behaviors/SplineTunnelPoint.js.map +0 -1
- package/dist/eve/perObjectData/DecalPSPerObjectData.js +0 -56
- package/dist/eve/perObjectData/DecalPSPerObjectData.js.map +0 -1
- package/dist/eve/perObjectData/EveMissileWarheadPerObjectData.js +0 -31
- package/dist/eve/perObjectData/EveMissileWarheadPerObjectData.js.map +0 -1
- package/dist/eve/perObjectData/EveTurretSetPerObjectData.js +0 -36
- package/dist/eve/perObjectData/EveTurretSetPerObjectData.js.map +0 -1
- package/dist/eve/perObjectData/MergeMorphsConstantBuffer.js +0 -64
- package/dist/eve/perObjectData/MergeMorphsConstantBuffer.js.map +0 -1
- package/dist/generated/eve/EveCamera.js +0 -264
- package/dist/generated/eve/EveCamera.js.map +0 -1
- package/dist/generated/eve/EveEntity.js +0 -81
- package/dist/generated/eve/EveEntity.js.map +0 -1
- package/dist/generated/eve/attachment/decal/index.js +0 -2
- package/dist/generated/eve/attachment/decal/index.js.map +0 -1
- package/dist/generated/eve/attachment/haze/EveHazeSetItem.js +0 -52
- package/dist/generated/eve/attachment/haze/EveHazeSetItem.js.map +0 -1
- package/dist/generated/eve/attachment/haze/index.js +0 -2
- package/dist/generated/eve/attachment/haze/index.js.map +0 -1
- package/dist/generated/eve/attachment/index.js +0 -5
- package/dist/generated/eve/attachment/index.js.map +0 -1
- package/dist/generated/eve/attachment/spotlights/EveSpotlightSetItem.js +0 -55
- package/dist/generated/eve/attachment/spotlights/EveSpotlightSetItem.js.map +0 -1
- package/dist/generated/eve/attachment/spotlights/index.js +0 -2
- package/dist/generated/eve/attachment/spotlights/index.js.map +0 -1
- package/dist/generated/eve/attachment/sprites/EveSpriteSetItem.js.map +0 -1
- package/dist/generated/eve/attachment/sprites/index.js +0 -2
- package/dist/generated/eve/attachment/sprites/index.js.map +0 -1
- package/dist/generated/eve/attachment/turrets/enums.js +0 -32
- package/dist/generated/eve/attachment/turrets/enums.js.map +0 -1
- package/dist/generated/eve/attachment/turrets/index.js +0 -2
- package/dist/generated/eve/attachment/turrets/index.js.map +0 -1
- package/dist/generated/eve/child/EveChildBehaviorSystem.js +0 -357
- package/dist/generated/eve/child/EveChildBehaviorSystem.js.map +0 -1
- package/dist/generated/eve/child/EveChildBulletStorm.js.map +0 -1
- package/dist/generated/eve/child/EveChildLink.js.map +0 -1
- package/dist/generated/eve/child/EveChildSpherePin.js +0 -54
- package/dist/generated/eve/child/EveChildSpherePin.js.map +0 -1
- package/dist/generated/eve/child/behaviors/CollisionAvoidance.js +0 -85
- package/dist/generated/eve/child/behaviors/CollisionAvoidance.js.map +0 -1
- package/dist/generated/eve/child/behaviors/InclusionVolume.js +0 -104
- package/dist/generated/eve/child/behaviors/InclusionVolume.js.map +0 -1
- package/dist/generated/eve/child/behaviors/ProcessLifetime.js +0 -458
- package/dist/generated/eve/child/behaviors/ProcessLifetime.js.map +0 -1
- package/dist/generated/eve/child/behaviors/SplineTunnelGroup.js +0 -161
- package/dist/generated/eve/child/behaviors/SplineTunnelGroup.js.map +0 -1
- package/dist/generated/eve/child/behaviors/Wander.js +0 -92
- package/dist/generated/eve/child/behaviors/Wander.js.map +0 -1
- package/dist/generated/eve/child/behaviors/enums.js.map +0 -1
- package/dist/generated/eve/child/modifiers/EveChildModifierAttachToBone.js.map +0 -1
- package/dist/generated/eve/child/modifiers/EveChildModifierBillboard3D.js.map +0 -1
- package/dist/generated/eve/child/modifiers/EveChildModifierStretch.js.map +0 -1
- package/dist/generated/eve/child/modifiers/EveChildModifierTranslateWithCamera.js.map +0 -1
- package/dist/generated/eve/child/modifiers/index.js +0 -5
- package/dist/generated/eve/child/modifiers/index.js.map +0 -1
- package/dist/generated/eve/child/procedural/EveChildProceduralContainer.js.map +0 -1
- package/dist/generated/eve/child/procedural/index.js +0 -10
- package/dist/generated/eve/child/procedural/index.js.map +0 -1
- package/dist/generated/eve/child/procedural/selection/EveProceduralMethodAttributeMap.js.map +0 -1
- package/dist/generated/eve/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js.map +0 -1
- package/dist/generated/eve/child/procedural/selection/EveProceduralMethodCycling.js.map +0 -1
- package/dist/generated/eve/child/procedural/selection/EveProceduralMethodCyclingParameter.js.map +0 -1
- package/dist/generated/eve/child/procedural/selection/EveProceduralMethodRandom.js.map +0 -1
- package/dist/generated/eve/child/procedural/selection/EveProceduralMethodRandomParameter.js.map +0 -1
- package/dist/generated/eve/child/procedural/selection/EveProceduralMethodThresholdParameter.js.map +0 -1
- package/dist/generated/eve/child/procedural/selection/EveProceduralMethodThresholds.js.map +0 -1
- package/dist/generated/eve/child/procedural/selection/index.js +0 -9
- package/dist/generated/eve/child/procedural/selection/index.js.map +0 -1
- package/dist/generated/eve/distribution/EveBaseDistributionMethod.js.map +0 -1
- package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js.map +0 -1
- package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js.map +0 -1
- package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js.map +0 -1
- package/dist/generated/eve/distribution/attributeModifiers/enums.js.map +0 -1
- package/dist/generated/eve/distribution/attributeModifiers/index.js +0 -5
- package/dist/generated/eve/distribution/attributeModifiers/index.js.map +0 -1
- package/dist/generated/eve/distribution/index.js +0 -19
- package/dist/generated/eve/distribution/index.js.map +0 -1
- package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorLocators.js.map +0 -1
- package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js.map +0 -1
- package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorVolume.js.map +0 -1
- package/dist/generated/eve/distribution/placement/index.js +0 -4
- package/dist/generated/eve/distribution/placement/index.js.map +0 -1
- package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js.map +0 -1
- package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js.map +0 -1
- package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js.map +0 -1
- package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js.map +0 -1
- package/dist/generated/eve/distribution/spawnModifiers/index.js +0 -5
- package/dist/generated/eve/distribution/spawnModifiers/index.js.map +0 -1
- package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerBurst.js.map +0 -1
- package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerControllerTrigger.js.map +0 -1
- package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerInterval.js.map +0 -1
- package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerPlane.js.map +0 -1
- package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerSnake.js.map +0 -1
- package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerSphere.js.map +0 -1
- package/dist/generated/eve/distribution/spawners/index.js +0 -7
- package/dist/generated/eve/distribution/spawners/index.js.map +0 -1
- package/dist/generated/eve/effect/EveLensflare.js.map +0 -1
- package/dist/generated/eve/effect/EveMultiEffect.js +0 -84
- package/dist/generated/eve/effect/EveMultiEffect.js.map +0 -1
- package/dist/generated/eve/effect/EveMultiEffectParameter.js +0 -45
- package/dist/generated/eve/effect/EveMultiEffectParameter.js.map +0 -1
- package/dist/generated/eve/fxAttributes/EveCameraFxAttributes.js +0 -47
- package/dist/generated/eve/fxAttributes/EveCameraFxAttributes.js.map +0 -1
- package/dist/generated/eve/fxAttributes/EveSpaceObjectFxAttributes.js +0 -63
- package/dist/generated/eve/fxAttributes/EveSpaceObjectFxAttributes.js.map +0 -1
- package/dist/generated/eve/fxAttributes/index.js +0 -3
- package/dist/generated/eve/fxAttributes/index.js.map +0 -1
- package/dist/generated/eve/overlays/EveMeshOverlayEffect.js +0 -58
- package/dist/generated/eve/overlays/EveMeshOverlayEffect.js.map +0 -1
- package/dist/generated/eve/overlays/index.js +0 -2
- package/dist/generated/eve/overlays/index.js.map +0 -1
- package/dist/generated/eve/perObjectData/EveBoosterSetPerObjectData.js +0 -66
- package/dist/generated/eve/perObjectData/EveBoosterSetPerObjectData.js.map +0 -1
- package/dist/generated/eve/perObjectData/EveChildBulletStormPerObjectData.js +0 -39
- package/dist/generated/eve/perObjectData/EveChildBulletStormPerObjectData.js.map +0 -1
- package/dist/generated/eve/perObjectData/EveDecalPerObjectData.js +0 -34
- package/dist/generated/eve/perObjectData/EveDecalPerObjectData.js.map +0 -1
- package/dist/generated/eve/perObjectData/EveSceneStaticParticlesPerObjectData.js +0 -32
- package/dist/generated/eve/perObjectData/EveSceneStaticParticlesPerObjectData.js.map +0 -1
- package/dist/generated/eve/perObjectData/index.js +0 -5
- package/dist/generated/eve/perObjectData/index.js.map +0 -1
- package/dist/generated/eve/scene/EveComponentCollection.js.map +0 -1
- package/dist/generated/eve/scene/EveComponentRegistry.js.map +0 -1
- package/dist/generated/eve/scene/EvePickingContext.js +0 -43
- package/dist/generated/eve/scene/EvePickingContext.js.map +0 -1
- package/dist/generated/eve/scene/EveSceneStaticParticles.js.map +0 -1
- package/dist/generated/eve/scene/TriShadowFrustum.js +0 -83
- package/dist/generated/eve/scene/TriShadowFrustum.js.map +0 -1
- package/dist/generated/eve/scene/TriShadowOrthoFrustum.js +0 -140
- package/dist/generated/eve/scene/TriShadowOrthoFrustum.js.map +0 -1
- package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js.map +0 -1
- package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js.map +0 -1
- package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js.map +0 -1
- package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js.map +0 -1
- package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js.map +0 -1
- package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js.map +0 -1
- package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js.map +0 -1
- package/dist/generated/eve/smartLights/attributeModifiers/enums.js.map +0 -1
- package/dist/generated/eve/smartLights/attributeModifiers/index.js +0 -9
- package/dist/generated/eve/smartLights/attributeModifiers/index.js.map +0 -1
- package/dist/generated/eve/socket/EveSocketParameterBindingBase.js.map +0 -1
- package/dist/generated/eve/socket/EveSocketParameterBool.js.map +0 -1
- package/dist/generated/eve/socket/EveSocketParameterColor.js.map +0 -1
- package/dist/generated/eve/socket/EveSocketParameterFloat.js.map +0 -1
- package/dist/generated/eve/socket/EveSocketParameterInt.js.map +0 -1
- package/dist/generated/eve/socket/EveSocketParameterString.js.map +0 -1
- package/dist/generated/eve/socket/EveSocketParameterVector2.js.map +0 -1
- package/dist/generated/eve/socket/EveSocketParameterVector3.js.map +0 -1
- package/dist/generated/eve/socket/EveSocketParameterVector4.js.map +0 -1
- package/dist/generated/eve/socket/index.js +0 -10
- package/dist/generated/eve/socket/index.js.map +0 -1
- package/dist/generated/eve/spaceObject/EvePlanet.js.map +0 -1
- package/dist/generated/eve/spaceObject/EveShip2.js.map +0 -1
- package/dist/generated/eve/spaceObject/IEveSpaceObject2.js +0 -46
- package/dist/generated/eve/spaceObject/IEveSpaceObject2.js.map +0 -1
- package/dist/generated/eve/spaceObject/swarm/EveSwarmRenderable.js.map +0 -1
- package/dist/generated/eve/ui/EveLineSet.js.map +0 -1
- package/dist/generated/eve/ui/EveSpherePin.js.map +0 -1
- package/dist/generated/eve/ui/EveTacticalOverlayTrackObject.js +0 -44
- package/dist/generated/eve/ui/EveTacticalOverlayTrackObject.js.map +0 -1
- package/dist/generated/eve/ui/EveTacticalTrails.js.map +0 -1
- package/dist/generated/trinityCore/Tr2DynamicBinding.js +0 -58
- package/dist/generated/trinityCore/Tr2DynamicBinding.js.map +0 -1
- package/dist/generated/trinityCore/Tr2ExternalParameter.js +0 -164
- package/dist/generated/trinityCore/Tr2ExternalParameter.js.map +0 -1
- package/dist/generated/trinityCore/Tr2GrannyAnimation.js.map +0 -1
- package/dist/generated/trinityCore/Tr2ShLightingManager.js +0 -48
- package/dist/generated/trinityCore/Tr2ShLightingManager.js.map +0 -1
- package/dist/generated/trinityCore/TriValueBinding.js +0 -249
- package/dist/generated/trinityCore/TriValueBinding.js.map +0 -1
- package/dist/shader/Tr2Shader.js +0 -150
- package/dist/shader/Tr2Shader.js.map +0 -1
- package/dist/shader/reflection/Tr2EffectConstant.js +0 -61
- package/dist/shader/reflection/Tr2EffectConstant.js.map +0 -1
- package/dist/shader/reflection/Tr2EffectDefine.js +0 -34
- package/dist/shader/reflection/Tr2EffectDefine.js.map +0 -1
- package/dist/shader/reflection/Tr2EffectDescription.js +0 -34
- package/dist/shader/reflection/Tr2EffectDescription.js.map +0 -1
- package/dist/shader/reflection/Tr2EffectLibrary.js +0 -61
- package/dist/shader/reflection/Tr2EffectLibrary.js.map +0 -1
- package/dist/shader/reflection/Tr2EffectParameterAnnotation.js +0 -54
- package/dist/shader/reflection/Tr2EffectParameterAnnotation.js.map +0 -1
- package/dist/shader/reflection/Tr2EffectResource.js +0 -63
- package/dist/shader/reflection/Tr2EffectResource.js.map +0 -1
- package/dist/shader/reflection/Tr2EffectStageInput.js +0 -58
- package/dist/shader/reflection/Tr2EffectStageInput.js.map +0 -1
- package/dist/shader/reflection/Tr2EffectTechnique.js +0 -40
- package/dist/shader/reflection/Tr2EffectTechnique.js.map +0 -1
- package/dist/shader/reflection/Tr2Pass.js +0 -46
- package/dist/shader/reflection/Tr2Pass.js.map +0 -1
- package/dist/shader/sampler/Tr2SamplerSetup.js +0 -34
- package/dist/shader/sampler/Tr2SamplerSetup.js.map +0 -1
- package/dist/trinityCore/Tr2BindingVector3.js.map +0 -1
- package/dist/trinityCore/Tr2PyValueBinding.js.map +0 -1
- package/dist/trinityCore/rawData/RawDataStore.js +0 -232
- package/dist/trinityCore/rawData/RawDataStore.js.map +0 -1
- /package/dist/{generated/eve → eve}/distribution/attributeModifiers/enums.js +0 -0
- /package/dist/{generated/eve → eve}/smartLights/attributeModifiers/enums.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TriTextureParameter.js","sources":["../../../../src/shader/parameter/TriTextureParameter.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\Shader\\Parameter\\TriTextureParameter.h\r\n// Source: E:\\carbonengine\\trinity\\trinity\\Shader\\Parameter\\TriTextureParameter.cpp\r\nimport { carbon, impl, io, type } from \"@carbonenginejs/runtime-utils/schema\";\r\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\r\nimport { CjsParameter } from \"./CjsParameter.js\";\r\n\r\n\r\n@type.define({\r\n className: \"TriTextureParameter\",\r\n family: \"shader\"\r\n})\r\nexport class TriTextureParameter extends CjsParameter\r\n{\r\n @io.flag(\"resource\")\r\n @io.notify\r\n @io.persist\r\n @type.path\r\n resourcePath = \"\";\r\n\r\n @io.persist\r\n @type.uint32\r\n uavMipLevel = 0;\r\n\r\n @io.read\r\n @type.float32\r\n positionScale = 0;\r\n\r\n @io.read\r\n @type.objectRef(\"ITr2TextureProvider\")\r\n resource = null;\r\n\r\n @io.read\r\n @type.boolean\r\n usedByCurrentTechnique = false;\r\n\r\n @io.read\r\n @type.boolean\r\n usedByCurrentEffect = false;\r\n\r\n @io.flag(\"effectHandles\")\r\n @io.notify\r\n @io.persist\r\n @type.string\r\n name = \"\";\r\n\r\n @io.read\r\n @type.float32\r\n uvDensityScale0 = 0;\r\n\r\n @io.read\r\n @type.float32\r\n uvDensityScale1 = 0;\r\n\r\n @io.read\r\n @type.float32\r\n uvDensityScale2 = 0;\r\n\r\n @io.read\r\n @type.float32\r\n uvDensityScale3 = 0;\r\n\r\n #cachedEffect = null;\r\n\r\n #lowResResource = null;\r\n\r\n #materials = [];\r\n\r\n #textureLodEnabled = false;\r\n\r\n @carbon.method\r\n @impl.implemented\r\n GetParameterName()\r\n {\r\n return this.name;\r\n }\r\n\r\n /** Content hash: resource path (when set) then name. */\r\n @carbon.method\r\n @impl.adapted\r\n GetHashValue(startingHash = CjsParameter.FNV1_INITIAL)\r\n {\r\n if (this.resourcePath)\r\n {\r\n startingHash = CjsParameter.hashFnv1String(this.resourcePath, startingHash);\r\n }\r\n return CjsParameter.hashFnv1String(this.name, startingHash);\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n SetParameterName(name)\r\n {\r\n return this.SetValues({ name: String(name) }, { source: this, returnBoolean: true });\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n GetResourcePath()\r\n {\r\n const resource = this.GetResource();\r\n return resource?.GetPath?.() ?? resource?.path ?? resource?.resourcePath ?? this.resourcePath;\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n SetResourcePath(resourcePath)\r\n {\r\n this.SetValues({ resourcePath: String(resourcePath) }, { source: this });\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n SetResource(resource)\r\n {\r\n if (this.resource !== resource)\r\n {\r\n this.resource = resource;\r\n }\r\n this.#lowResResource = null;\r\n this.RebuildEffectHandles(this.#cachedEffect);\r\n this.OnTextureChanged();\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n GetResource()\r\n {\r\n return this.#lowResResource ?? this.resource;\r\n }\r\n @carbon.method\r\n @impl.implemented\r\n SupportsDirtyNotification()\r\n {\r\n return true;\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n EnableTextureLoding(uvDensityScale)\r\n {\r\n this.#textureLodEnabled = true;\r\n this.positionScale = Number(uvDensityScale[0] ?? 0);\r\n this.uvDensityScale0 = Number(uvDensityScale[1] ?? 0);\r\n this.uvDensityScale1 = Number(uvDensityScale[2] ?? 0);\r\n this.uvDensityScale2 = Number(uvDensityScale[3] ?? 0);\r\n this.uvDensityScale3 = Number(uvDensityScale[4] ?? 0);\r\n }\r\n @carbon.method\r\n @impl.implemented\r\n DisableTextureLoding()\r\n {\r\n this.#textureLodEnabled = false;\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n UsedWithScreenSize(screenSize, worldRadius, uvDensities = [])\r\n {\r\n if (!this.#textureLodEnabled)\r\n {\r\n this.#requestResourceResolution(0);\r\n return 0;\r\n }\r\n let resolution = 0;\r\n const positionDensity = worldRadius * Number(this.positionScale ?? 0);\r\n if (positionDensity > 0)\r\n {\r\n resolution = Math.max(resolution, screenSize / positionDensity);\r\n }\r\n const scales = [Number(this.uvDensityScale0 ?? 0), Number(this.uvDensityScale1 ?? 0), Number(this.uvDensityScale2 ?? 0), Number(this.uvDensityScale3 ?? 0)];\r\n for (let i = 0; i < Math.min(uvDensities.length, scales.length); i++)\r\n {\r\n const density = Number(uvDensities[i]) * scales[i];\r\n if (density > 0)\r\n {\r\n resolution = Math.max(resolution, screenSize / density);\r\n }\r\n }\r\n let requestedLod = 0;\r\n const resource = this.GetResource();\r\n const original = resource?.GetOriginalResolutionAsFloat?.() ?? 0;\r\n if (resolution > 0 && original > 0)\r\n {\r\n const requestedResolution = Math.max(1, resolution);\r\n const resolutionChange = Math.floor(original / requestedResolution);\r\n if (resolutionChange > 0)\r\n {\r\n requestedLod = Math.floor(Math.log2(resolutionChange));\r\n }\r\n }\r\n this.#requestResourceResolution(requestedLod);\r\n return requestedLod;\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n OnModified(_options = {})\r\n {\r\n const flags = this.__state.flags;\r\n if (flags.delete(\"resource\"))\r\n {\r\n this.resource = null;\r\n this.#lowResResource = null;\r\n this.Initialize();\r\n }\r\n if (flags.delete(\"effectHandles\"))\r\n {\r\n this.RebuildEffectHandles(this.#cachedEffect);\r\n }\r\n return true;\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n Initialize()\r\n {\r\n return true;\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n RebuildEffectHandles(effectRes)\r\n {\r\n this.#cachedEffect = effectRes;\r\n const used = !!this.name && (CjsParameter.hasEffectResource(effectRes, this.name) || CjsParameter.hasEffectConstant(effectRes, this.name));\r\n this.usedByCurrentEffect = used;\r\n this.usedByCurrentTechnique = used;\r\n }\r\n @carbon.method\r\n @impl.implemented\r\n OnAddedToMaterial(material)\r\n {\r\n if (!this.#materials.includes(material))\r\n {\r\n this.#materials.push(material);\r\n }\r\n }\r\n @carbon.method\r\n @impl.implemented\r\n OnRemovedFromMaterial(material)\r\n {\r\n const index = this.#materials.indexOf(material);\r\n if (index >= 0)\r\n {\r\n this.#materials.splice(index, 1);\r\n }\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n OnTextureChanged()\r\n {\r\n for (const material of this.#materials)\r\n {\r\n const target = material;\r\n target?.ResourceChanged?.();\r\n target?.MarkConstantBuffersDirty?.();\r\n }\r\n }\r\n #requestResourceResolution(lod)\r\n {\r\n const target = this.GetResource();\r\n target?.RequestResolution?.(lod);\r\n }\r\n\r\n /** JS convenience: raw values this parameter class claims for map-form inference. */\r\n static isValue(value)\r\n {\r\n return typeof value === \"string\";\r\n }\r\n\r\n}\r\n"],"names":["_TriTextureParameter","TriTextureParameter","CjsParameter","e","_init_resourcePath","_init_extra_resourcePath","_init_uavMipLevel","_init_extra_uavMipLevel","_init_positionScale","_init_extra_positionScale","_init_resource","_init_extra_resource","_init_usedByCurrentTechnique","_init_extra_usedByCurrentTechnique","_init_usedByCurrentEffect","_init_extra_usedByCurrentEffect","_init_name","_init_extra_name","_init_uvDensityScale","_init_extra_uvDensityScale","_init_uvDensityScale2","_init_extra_uvDensityScale2","_init_uvDensityScale3","_init_extra_uvDensityScale3","_init_uvDensityScale4","_init_extra_uvDensityScale4","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","flag","notify","persist","path","uint32","read","float32","objectRef","boolean","string","carbon","method","impl","implemented","adapted","resourcePath","uavMipLevel","positionScale","resource","usedByCurrentTechnique","usedByCurrentEffect","name","uvDensityScale0","uvDensityScale1","uvDensityScale2","uvDensityScale3","GetParameterName","GetHashValue","startingHash","FNV1_INITIAL","hashFnv1String","SetParameterName","SetValues","String","source","returnBoolean","GetResourcePath","GetResource","GetPath","SetResourcePath","SetResource","RebuildEffectHandles","OnTextureChanged","SupportsDirtyNotification","EnableTextureLoding","uvDensityScale","Number","DisableTextureLoding","UsedWithScreenSize","screenSize","worldRadius","uvDensities","resolution","positionDensity","Math","max","scales","i","min","length","density","requestedLod","original","GetOriginalResolutionAsFloat","requestedResolution","resolutionChange","floor","log2","OnModified","_options","flags","__state","delete","Initialize","effectRes","used","hasEffectResource","hasEffectConstant","OnAddedToMaterial","material","includes","push","OnRemovedFromMaterial","index","indexOf","splice","target","ResourceChanged","MarkConstantBuffersDirty","#requestResourceResolution","lod","RequestResolution","isValue","value"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TriTextureParameter.js","sources":["../../../../src/shader/parameter/TriTextureParameter.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\Shader\\Parameter\\TriTextureParameter.h\r\n// Source: E:\\carbonengine\\trinity\\trinity\\Shader\\Parameter\\TriTextureParameter.cpp\r\nimport { carbon, impl, io, type } from \"@carbonenginejs/runtime-utils/schema\";\r\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\r\nimport { CjsParameter } from \"./CjsParameter.js\";\r\n\r\n\r\n/**\r\n * A named texture slot on an effect, owning the authored res path, the resolved\r\n * texture provider and the UV-density scales that drive mip selection.\r\n */\r\n@type.define({\r\n className: \"TriTextureParameter\",\r\n family: \"shader\"\r\n})\r\nexport class TriTextureParameter extends CjsParameter\r\n{\r\n @io.flag(\"resource\")\r\n @io.notify\r\n @io.persist\r\n @type.path\r\n resourcePath = \"\";\r\n\r\n @io.persist\r\n @type.uint32\r\n uavMipLevel = 0;\r\n\r\n @io.read\r\n @type.float32\r\n positionScale = 0;\r\n\r\n @io.read\r\n @type.objectRef(\"ITr2TextureProvider\")\r\n resource = null;\r\n\r\n @io.read\r\n @type.boolean\r\n usedByCurrentTechnique = false;\r\n\r\n @io.read\r\n @type.boolean\r\n usedByCurrentEffect = false;\r\n\r\n @io.flag(\"effectHandles\")\r\n @io.notify\r\n @io.persist\r\n @type.string\r\n name = \"\";\r\n\r\n @io.read\r\n @type.float32\r\n uvDensityScale0 = 0;\r\n\r\n @io.read\r\n @type.float32\r\n uvDensityScale1 = 0;\r\n\r\n @io.read\r\n @type.float32\r\n uvDensityScale2 = 0;\r\n\r\n @io.read\r\n @type.float32\r\n uvDensityScale3 = 0;\r\n\r\n #cachedEffect = null;\r\n\r\n #lowResResource = null;\r\n\r\n #materials = [];\r\n\r\n #textureLodEnabled = false;\r\n\r\n /** The shader resource name this texture binds to. */\r\n @carbon.method\r\n @impl.implemented\r\n GetParameterName()\r\n {\r\n return this.name;\r\n }\r\n\r\n /** Content hash: resource path (when set) then name. */\r\n @carbon.method\r\n @impl.adapted\r\n GetHashValue(startingHash = CjsParameter.FNV1_INITIAL)\r\n {\r\n if (this.resourcePath)\r\n {\r\n startingHash = CjsParameter.hashFnv1String(this.resourcePath, startingHash);\r\n }\r\n return CjsParameter.hashFnv1String(this.name, startingHash);\r\n }\r\n\r\n /**\r\n * Sets the name through SetValues so the effectHandles rebuild flag fires;\r\n * returns whether it changed.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n SetParameterName(name)\r\n {\r\n return this.SetValues({ name: String(name) }, { source: this, returnBoolean: true });\r\n }\r\n\r\n /**\r\n * The path of the currently attached texture when it exposes one, falling back\r\n * to the authored resourcePath - so after a redirect this can differ from what\r\n * was authored.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n GetResourcePath()\r\n {\r\n const resource = this.GetResource();\r\n return resource?.GetPath?.() ?? resource?.path ?? resource?.resourcePath ?? this.resourcePath;\r\n }\r\n\r\n /**\r\n * Sets the authored path and raises the resource flag, so the next OnModified\r\n * drops the attached texture and asks for it again.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n SetResourcePath(resourcePath)\r\n {\r\n this.SetValues({ resourcePath: String(resourcePath) }, { source: this });\r\n }\r\n\r\n /**\r\n * Attaches a resolved texture provider, discards any low-res stand-in,\r\n * re-resolves effect handles against the cached shader and notifies owning\r\n * materials.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n SetResource(resource)\r\n {\r\n if (this.resource !== resource)\r\n {\r\n this.resource = resource;\r\n }\r\n this.#lowResResource = null;\r\n this.RebuildEffectHandles(this.#cachedEffect);\r\n this.OnTextureChanged();\r\n }\r\n\r\n /**\r\n * The texture actually in use: the low-res stand-in while one is active,\r\n * otherwise the resolved resource.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n GetResource()\r\n {\r\n return this.#lowResResource ?? this.resource;\r\n }\r\n\r\n /** Always true - a texture swap must dirty the owning materials' resource sets. */\r\n @carbon.method\r\n @impl.implemented\r\n SupportsDirtyNotification()\r\n {\r\n return true;\r\n }\r\n\r\n /**\r\n * Turns on screen-size-driven mip selection and stores the density scales; Carbon's spelling of the method name is kept.\r\n * @param uvDensityScale five scales: the world-position scale first, then the four UV-set scales\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n EnableTextureLoding(uvDensityScale)\r\n {\r\n this.#textureLodEnabled = true;\r\n this.positionScale = Number(uvDensityScale[0] ?? 0);\r\n this.uvDensityScale0 = Number(uvDensityScale[1] ?? 0);\r\n this.uvDensityScale1 = Number(uvDensityScale[2] ?? 0);\r\n this.uvDensityScale2 = Number(uvDensityScale[3] ?? 0);\r\n this.uvDensityScale3 = Number(uvDensityScale[4] ?? 0);\r\n }\r\n\r\n /** Turns mip selection off, so UsedWithScreenSize then always requests LOD 0. */\r\n @carbon.method\r\n @impl.implemented\r\n DisableTextureLoding()\r\n {\r\n this.#textureLodEnabled = false;\r\n }\r\n\r\n /**\r\n * Carbon TriTextureParameter::UsedWithScreenSize (cpp:53-97): takes the largest resolution demanded by the world-position and per-UV-set densities, compares it against the texture's native resolution, and asks the resource for the resulting mip level.\r\n * @returns {number} the requested LOD, 0 when LOD is disabled or no density applies\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n UsedWithScreenSize(screenSize, worldRadius, uvDensities = [])\r\n {\r\n if (!this.#textureLodEnabled)\r\n {\r\n this.#requestResourceResolution(0);\r\n return 0;\r\n }\r\n let resolution = 0;\r\n const positionDensity = worldRadius * Number(this.positionScale ?? 0);\r\n if (positionDensity > 0)\r\n {\r\n resolution = Math.max(resolution, screenSize / positionDensity);\r\n }\r\n const scales = [Number(this.uvDensityScale0 ?? 0), Number(this.uvDensityScale1 ?? 0), Number(this.uvDensityScale2 ?? 0), Number(this.uvDensityScale3 ?? 0)];\r\n for (let i = 0; i < Math.min(uvDensities.length, scales.length); i++)\r\n {\r\n const density = Number(uvDensities[i]) * scales[i];\r\n if (density > 0)\r\n {\r\n resolution = Math.max(resolution, screenSize / density);\r\n }\r\n }\r\n let requestedLod = 0;\r\n const resource = this.GetResource();\r\n const original = resource?.GetOriginalResolutionAsFloat?.() ?? 0;\r\n if (resolution > 0 && original > 0)\r\n {\r\n const requestedResolution = Math.max(1, resolution);\r\n const resolutionChange = Math.floor(original / requestedResolution);\r\n if (resolutionChange > 0)\r\n {\r\n requestedLod = Math.floor(Math.log2(resolutionChange));\r\n }\r\n }\r\n this.#requestResourceResolution(requestedLod);\r\n return requestedLod;\r\n }\r\n\r\n /**\r\n * Consumes the two dirty flags: `resource` drops the attached texture and\r\n * re-initializes, `effectHandles` re-resolves against the cached shader.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n OnModified(_options = {})\r\n {\r\n const flags = this.__state.flags;\r\n if (flags.delete(\"resource\"))\r\n {\r\n this.resource = null;\r\n this.#lowResResource = null;\r\n this.Initialize();\r\n }\r\n if (flags.delete(\"effectHandles\"))\r\n {\r\n this.RebuildEffectHandles(this.#cachedEffect);\r\n }\r\n return true;\r\n }\r\n\r\n /**\r\n * Nothing to do in this GPU-free package - res paths are never resolved to\r\n * texture bytes here; returns true so callers can treat initialization as\r\n * successful.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n Initialize()\r\n {\r\n return true;\r\n }\r\n\r\n /**\r\n * Caches the shader and records whether it exposes a resource or constant of\r\n * this name; no GPU binding is created.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n RebuildEffectHandles(effectRes)\r\n {\r\n this.#cachedEffect = effectRes;\r\n const used = !!this.name && (CjsParameter.hasEffectResource(effectRes, this.name) || CjsParameter.hasEffectConstant(effectRes, this.name));\r\n this.usedByCurrentEffect = used;\r\n this.usedByCurrentTechnique = used;\r\n }\r\n\r\n /**\r\n * Registers a material to be notified when the texture changes; duplicates are\r\n * ignored.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n OnAddedToMaterial(material)\r\n {\r\n if (!this.#materials.includes(material))\r\n {\r\n this.#materials.push(material);\r\n }\r\n }\r\n\r\n /**\r\n * Stops notifying a material; the material reference is dropped, not the\r\n * texture.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n OnRemovedFromMaterial(material)\r\n {\r\n const index = this.#materials.indexOf(material);\r\n if (index >= 0)\r\n {\r\n this.#materials.splice(index, 1);\r\n }\r\n }\r\n\r\n /**\r\n * Tells every owning material that its resource sets and constant buffers are\r\n * stale.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n OnTextureChanged()\r\n {\r\n for (const material of this.#materials)\r\n {\r\n const target = material;\r\n target?.ResourceChanged?.();\r\n target?.MarkConstantBuffersDirty?.();\r\n }\r\n }\r\n\r\n /**\r\n * Asks the texture currently in use for a mip level, if it supports resolution\r\n * requests.\r\n */\r\n #requestResourceResolution(lod)\r\n {\r\n const target = this.GetResource();\r\n target?.RequestResolution?.(lod);\r\n }\r\n\r\n /** JS convenience: raw values this parameter class claims for map-form inference. */\r\n static isValue(value)\r\n {\r\n return typeof value === \"string\";\r\n }\r\n\r\n}\r\n"],"names":["_TriTextureParameter","TriTextureParameter","CjsParameter","e","_init_resourcePath","_init_extra_resourcePath","_init_uavMipLevel","_init_extra_uavMipLevel","_init_positionScale","_init_extra_positionScale","_init_resource","_init_extra_resource","_init_usedByCurrentTechnique","_init_extra_usedByCurrentTechnique","_init_usedByCurrentEffect","_init_extra_usedByCurrentEffect","_init_name","_init_extra_name","_init_uvDensityScale","_init_extra_uvDensityScale","_init_uvDensityScale2","_init_extra_uvDensityScale2","_init_uvDensityScale3","_init_extra_uvDensityScale3","_init_uvDensityScale4","_init_extra_uvDensityScale4","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","flag","notify","persist","path","uint32","read","float32","objectRef","boolean","string","carbon","method","impl","implemented","adapted","resourcePath","uavMipLevel","positionScale","resource","usedByCurrentTechnique","usedByCurrentEffect","name","uvDensityScale0","uvDensityScale1","uvDensityScale2","uvDensityScale3","GetParameterName","GetHashValue","startingHash","FNV1_INITIAL","hashFnv1String","SetParameterName","SetValues","String","source","returnBoolean","GetResourcePath","GetResource","GetPath","SetResourcePath","SetResource","RebuildEffectHandles","OnTextureChanged","SupportsDirtyNotification","EnableTextureLoding","uvDensityScale","Number","DisableTextureLoding","UsedWithScreenSize","screenSize","worldRadius","uvDensities","resolution","positionDensity","Math","max","scales","i","min","length","density","requestedLod","original","GetOriginalResolutionAsFloat","requestedResolution","resolutionChange","floor","log2","OnModified","_options","flags","__state","delete","Initialize","effectRes","used","hasEffectResource","hasEffectConstant","OnAddedToMaterial","material","includes","push","OnRemovedFromMaterial","index","indexOf","splice","target","ResourceChanged","MarkConstantBuffersDirty","#requestResourceResolution","lod","RequestResolution","isValue","value"],"mappings":"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"}
|
|
@@ -45,6 +45,8 @@ new class extends _identity {
|
|
|
45
45
|
|
|
46
46
|
/** m_worldTransform (Matrix) [READWRITE, PERSIST] */
|
|
47
47
|
worldTransform = (_init_extra_translation(this), _init_worldTransform(this, mat4.create()));
|
|
48
|
+
|
|
49
|
+
/** The shader constant name the composed transform matrix is uploaded to. */
|
|
48
50
|
GetParameterName() {
|
|
49
51
|
return this.name;
|
|
50
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TriTransformParameter.js","sources":["../../../../src/shader/parameter/TriTransformParameter.js"],"sourcesContent":["// Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity\r\n// trinity/trinity/Shader/Parameter/TriTransformParameter.h\r\n// Generated by format-carbon carbon-class --emit. Verify against shader/TriTransformParameter.json.\r\nimport { carbon, impl, io, schema, type } from \"@carbonenginejs/runtime-utils/schema\";\r\nimport { mat4 } from \"@carbonenginejs/runtime-utils/mat4\";\r\nimport { quat } from \"@carbonenginejs/runtime-utils/quat\";\r\nimport { vec3 } from \"@carbonenginejs/runtime-utils/vec3\";\r\nimport { CjsParameter } from \"./CjsParameter.js\";\r\nimport { TriTransformBase } from \"@carbonenginejs/runtime-utils/graphics\";\r\n\r\n/** TriTransformParameter (shader) - generated from schema shapeHash de073c4a.... */\r\n@type.define({ className: \"TriTransformParameter\", family: \"shader\" })\r\nexport class TriTransformParameter extends CjsParameter\r\n{\r\n\r\n /** m_transformBase (TRITRANSFORMBASE - enum TRITRANSFORMBASE) [READWRITE, PERSIST, ENUM] */\r\n @io.persist\r\n @type.int32\r\n @schema.enum(\"TRITRANSFORMBASE\")\r\n transformBase = 0;\r\n\r\n /** m_rotationCenter (Vector3) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.vec3\r\n rotationCenter = vec3.create();\r\n\r\n /** m_name (BlueSharedString) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.string\r\n name = \"\";\r\n\r\n /** m_rotation (Quaternion) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.quat\r\n rotation = quat.create();\r\n\r\n /** m_scaling (Vector3) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.vec3\r\n scaling = vec3.fromValues(1, 1, 1);\r\n\r\n /** m_translation (Vector3) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.vec3\r\n translation = vec3.create();\r\n\r\n /** m_worldTransform (Matrix) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.mat4\r\n worldTransform = mat4.create();\r\n\r\n @carbon.method\r\n @impl.implemented\r\n GetParameterName()\r\n {\r\n return this.name;\r\n }\r\n\r\n /**\r\n * Content hash: transform base + translation/scaling/rotation bytes, then\r\n * name (Carbon hashes the contiguous transform-state struct region).\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n GetHashValue(startingHash = CjsParameter.FNV1_INITIAL)\r\n {\r\n startingHash = CjsParameter.hashFnv1Floats([this.transformBase], startingHash);\r\n startingHash = CjsParameter.hashFnv1Floats(this.translation, startingHash);\r\n startingHash = CjsParameter.hashFnv1Floats(this.scaling, startingHash);\r\n startingHash = CjsParameter.hashFnv1Floats(this.rotation, startingHash);\r\n return CjsParameter.hashFnv1String(this.name, startingHash);\r\n }\r\n\r\n /** Carbon TriTransformParameter::CopyValueToEffect\r\n * (TriTransformParameter.cpp:30-66) builds the 6-arg TransformationMatrix\r\n * (math Matrix.cpp:66-143, scalingCenter NULL): row-vector\r\n * S * T(-rotationCenter) * R * T(rotationCenter + translation) - the scale\r\n * is about the TRUE ORIGIN while only the rotation pivots on\r\n * m_rotationCenter (translation bytes: t + rc - R*rc, rc UNSCALED). NOT\r\n * gl-matrix's fromRotationTranslationScaleOrigin, which scales about the\r\n * origin point too (t + o - R*(S*o)) - the two differ whenever\r\n * scaling != 1 and rotationCenter != 0. gl column order:\r\n * T(rc + t) * R * T(-rc) * S. NOTE: Carbon's TRITB_OBJECT branch\r\n * (cpp:48-66) additionally multiplies in the object world matrix - an\r\n * unported composition (the JS treats every non-FIXED base as the zeroed\r\n * inverse view only); when ported it must swap per the convention. */\r\n @carbon.method\r\n @impl.adapted\r\n CopyValueToEffect(_inputType, dest, size = 64, context = null)\r\n {\r\n const transform = mat4.create();\r\n const rotationCenter = this.rotationCenter;\r\n // gl column build of T(rc + t) * R * T(-rc) * S, right-to-left:\r\n mat4.fromQuat(transform, this.rotation);\r\n mat4.translate(transform, transform, [-rotationCenter[0], -rotationCenter[1], -rotationCenter[2]]);\r\n mat4.scale(transform, transform, this.scaling);\r\n transform[12] += rotationCenter[0] + this.translation[0];\r\n transform[13] += rotationCenter[1] + this.translation[1];\r\n transform[14] += rotationCenter[2] + this.translation[2];\r\n const base = context?.inverseViewTransform ?? context?.GetInverseViewTransform?.() ?? null;\r\n if (base && this.transformBase !== 0)\r\n {\r\n const baseTransform = mat4.clone(base);\r\n baseTransform[12] = 0;\r\n baseTransform[13] = 0;\r\n baseTransform[14] = 0;\r\n // Carbon (row-vector): texTransform *= original - the base transform\r\n // applies first, the authored SRT last.\r\n mat4.multiply(transform, transform, baseTransform);\r\n }\r\n const out = mat4.create();\r\n mat4.transpose(out, transform);\r\n const count = Math.min(16, Math.floor(Number(size) / 4) || 16, dest?.length ?? 16);\r\n for (let i = 0; i < count; i++)\r\n {\r\n dest[i] = out[i];\r\n }\r\n }\r\n\r\n static TRITRANSFORMBASE = TriTransformBase;\r\n\r\n}\r\n"],"names":["_TriTransformParamete","_identity","TriTransformParameter","CjsParameter","e","_init_transformBase","_init_extra_transformBase","_init_rotationCenter","_init_extra_rotationCenter","_init_name","_init_extra_name","_init_rotation","_init_extra_rotation","_init_scaling","_init_extra_scaling","_init_translation","_init_extra_translation","_init_worldTransform","_init_extra_worldTransform","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","persist","int32","schema","enum","vec3","string","quat","mat4","carbon","method","impl","implemented","adapted","constructor","args","transformBase","rotationCenter","create","name","rotation","scaling","fromValues","translation","worldTransform","GetParameterName","GetHashValue","startingHash","FNV1_INITIAL","hashFnv1Floats","hashFnv1String","CopyValueToEffect","_inputType","dest","size","context","transform","fromQuat","translate","scale","base","inverseViewTransform","GetInverseViewTransform","baseTransform","clone","multiply","out","transpose","count","Math","min","floor","Number","length","i","TRITRANSFORMBASE","TriTransformBase"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TriTransformParameter.js","sources":["../../../../src/shader/parameter/TriTransformParameter.js"],"sourcesContent":["// Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity\r\n// trinity/trinity/Shader/Parameter/TriTransformParameter.h\r\n// Generated by format-carbon carbon-class --emit. Verify against shader/TriTransformParameter.json.\r\nimport { carbon, impl, io, schema, type } from \"@carbonenginejs/runtime-utils/schema\";\r\nimport { mat4 } from \"@carbonenginejs/runtime-utils/mat4\";\r\nimport { quat } from \"@carbonenginejs/runtime-utils/quat\";\r\nimport { vec3 } from \"@carbonenginejs/runtime-utils/vec3\";\r\nimport { CjsParameter } from \"./CjsParameter.js\";\r\nimport { TriTransformBase } from \"@carbonenginejs/runtime-utils/graphics\";\r\n\r\n/** TriTransformParameter (shader) - generated from schema shapeHash de073c4a.... */\r\n@type.define({ className: \"TriTransformParameter\", family: \"shader\" })\r\nexport class TriTransformParameter extends CjsParameter\r\n{\r\n\r\n /** m_transformBase (TRITRANSFORMBASE - enum TRITRANSFORMBASE) [READWRITE, PERSIST, ENUM] */\r\n @io.persist\r\n @type.int32\r\n @schema.enum(\"TRITRANSFORMBASE\")\r\n transformBase = 0;\r\n\r\n /** m_rotationCenter (Vector3) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.vec3\r\n rotationCenter = vec3.create();\r\n\r\n /** m_name (BlueSharedString) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.string\r\n name = \"\";\r\n\r\n /** m_rotation (Quaternion) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.quat\r\n rotation = quat.create();\r\n\r\n /** m_scaling (Vector3) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.vec3\r\n scaling = vec3.fromValues(1, 1, 1);\r\n\r\n /** m_translation (Vector3) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.vec3\r\n translation = vec3.create();\r\n\r\n /** m_worldTransform (Matrix) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.mat4\r\n worldTransform = mat4.create();\r\n\r\n /** The shader constant name the composed transform matrix is uploaded to. */\r\n @carbon.method\r\n @impl.implemented\r\n GetParameterName()\r\n {\r\n return this.name;\r\n }\r\n\r\n /**\r\n * Content hash: transform base + translation/scaling/rotation bytes, then\r\n * name (Carbon hashes the contiguous transform-state struct region).\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n GetHashValue(startingHash = CjsParameter.FNV1_INITIAL)\r\n {\r\n startingHash = CjsParameter.hashFnv1Floats([this.transformBase], startingHash);\r\n startingHash = CjsParameter.hashFnv1Floats(this.translation, startingHash);\r\n startingHash = CjsParameter.hashFnv1Floats(this.scaling, startingHash);\r\n startingHash = CjsParameter.hashFnv1Floats(this.rotation, startingHash);\r\n return CjsParameter.hashFnv1String(this.name, startingHash);\r\n }\r\n\r\n /** Carbon TriTransformParameter::CopyValueToEffect\r\n * (TriTransformParameter.cpp:30-66) builds the 6-arg TransformationMatrix\r\n * (math Matrix.cpp:66-143, scalingCenter NULL): row-vector\r\n * S * T(-rotationCenter) * R * T(rotationCenter + translation) - the scale\r\n * is about the TRUE ORIGIN while only the rotation pivots on\r\n * m_rotationCenter (translation bytes: t + rc - R*rc, rc UNSCALED). NOT\r\n * gl-matrix's fromRotationTranslationScaleOrigin, which scales about the\r\n * origin point too (t + o - R*(S*o)) - the two differ whenever\r\n * scaling != 1 and rotationCenter != 0. gl column order:\r\n * T(rc + t) * R * T(-rc) * S. NOTE: Carbon's TRITB_OBJECT branch\r\n * (cpp:48-66) additionally multiplies in the object world matrix - an\r\n * unported composition (the JS treats every non-FIXED base as the zeroed\r\n * inverse view only); when ported it must swap per the convention. */\r\n @carbon.method\r\n @impl.adapted\r\n CopyValueToEffect(_inputType, dest, size = 64, context = null)\r\n {\r\n const transform = mat4.create();\r\n const rotationCenter = this.rotationCenter;\r\n // gl column build of T(rc + t) * R * T(-rc) * S, right-to-left:\r\n mat4.fromQuat(transform, this.rotation);\r\n mat4.translate(transform, transform, [-rotationCenter[0], -rotationCenter[1], -rotationCenter[2]]);\r\n mat4.scale(transform, transform, this.scaling);\r\n transform[12] += rotationCenter[0] + this.translation[0];\r\n transform[13] += rotationCenter[1] + this.translation[1];\r\n transform[14] += rotationCenter[2] + this.translation[2];\r\n const base = context?.inverseViewTransform ?? context?.GetInverseViewTransform?.() ?? null;\r\n if (base && this.transformBase !== 0)\r\n {\r\n const baseTransform = mat4.clone(base);\r\n baseTransform[12] = 0;\r\n baseTransform[13] = 0;\r\n baseTransform[14] = 0;\r\n // Carbon (row-vector): texTransform *= original - the base transform\r\n // applies first, the authored SRT last.\r\n mat4.multiply(transform, transform, baseTransform);\r\n }\r\n const out = mat4.create();\r\n mat4.transpose(out, transform);\r\n const count = Math.min(16, Math.floor(Number(size) / 4) || 16, dest?.length ?? 16);\r\n for (let i = 0; i < count; i++)\r\n {\r\n dest[i] = out[i];\r\n }\r\n }\r\n\r\n static TRITRANSFORMBASE = TriTransformBase;\r\n\r\n}\r\n"],"names":["_TriTransformParamete","_identity","TriTransformParameter","CjsParameter","e","_init_transformBase","_init_extra_transformBase","_init_rotationCenter","_init_extra_rotationCenter","_init_name","_init_extra_name","_init_rotation","_init_extra_rotation","_init_scaling","_init_extra_scaling","_init_translation","_init_extra_translation","_init_worldTransform","_init_extra_worldTransform","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","persist","int32","schema","enum","vec3","string","quat","mat4","carbon","method","impl","implemented","adapted","constructor","args","transformBase","rotationCenter","create","name","rotation","scaling","fromValues","translation","worldTransform","GetParameterName","GetHashValue","startingHash","FNV1_INITIAL","hashFnv1Floats","hashFnv1String","CopyValueToEffect","_inputType","dest","size","context","transform","fromQuat","translate","scale","base","inverseViewTransform","GetInverseViewTransform","baseTransform","clone","multiply","out","transpose","count","Math","min","floor","Number","length","i","TRITRANSFORMBASE","TriTransformBase"],"mappings":"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"}
|
|
@@ -31,6 +31,11 @@ class TriVariableParameter extends CjsParameter {
|
|
|
31
31
|
variable = (_init_extra_variableName(this), null);
|
|
32
32
|
variableStore = null;
|
|
33
33
|
cachedEffect = null;
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* The shader constant or resource name the variable's value is uploaded to;
|
|
37
|
+
* distinct from variableName, which names the store entry.
|
|
38
|
+
*/
|
|
34
39
|
GetParameterName() {
|
|
35
40
|
return this.name;
|
|
36
41
|
}
|
|
@@ -39,6 +44,11 @@ class TriVariableParameter extends CjsParameter {
|
|
|
39
44
|
GetHashValue(startingHash = CjsParameter.FNV1_INITIAL) {
|
|
40
45
|
return CjsParameter.hashFnv1String(this.name, startingHash);
|
|
41
46
|
}
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Resolves variableName against a store and caches the variable object; an empty variableName clears the binding. Always returns true.
|
|
50
|
+
* @param variableStore store to bind against; null keeps the store supplied by an earlier call
|
|
51
|
+
*/
|
|
42
52
|
Initialize(variableStore = null) {
|
|
43
53
|
this.variableStore = variableStore ?? this.variableStore;
|
|
44
54
|
if (!this.variableName) {
|
|
@@ -48,6 +58,11 @@ class TriVariableParameter extends CjsParameter {
|
|
|
48
58
|
this.variable = this.variableStore?.GetVariable?.(this.variableName) ?? this.variableStore?.getVariable?.(this.variableName) ?? this.variableStore?.[this.variableName] ?? this.variable;
|
|
49
59
|
return true;
|
|
50
60
|
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Consumes the two dirty flags: `variable` re-resolves the store binding,
|
|
64
|
+
* `effectHandles` re-resolves usage against the cached shader.
|
|
65
|
+
*/
|
|
51
66
|
OnModified(_options = {}) {
|
|
52
67
|
const flags = this.__state.flags;
|
|
53
68
|
if (flags.delete("variable")) {
|
|
@@ -58,6 +73,12 @@ class TriVariableParameter extends CjsParameter {
|
|
|
58
73
|
}
|
|
59
74
|
return true;
|
|
60
75
|
}
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Records usage by looking the name up as a shader resource when the bound
|
|
79
|
+
* variable is a texture or buffer type and as a shader constant otherwise; an
|
|
80
|
+
* unbound variable always counts as unused.
|
|
81
|
+
*/
|
|
61
82
|
RebuildEffectHandles(effectRes) {
|
|
62
83
|
this.cachedEffect = effectRes;
|
|
63
84
|
this.usedByCurrentEffect = false;
|
|
@@ -71,15 +92,32 @@ class TriVariableParameter extends CjsParameter {
|
|
|
71
92
|
this.usedByCurrentEffect = used;
|
|
72
93
|
this.usedByCurrentTechnique = used;
|
|
73
94
|
}
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* Delegates the write to the bound variable, so the store owns the value; does
|
|
98
|
+
* nothing when no variable is bound.
|
|
99
|
+
*/
|
|
74
100
|
CopyValueToEffect(inputType, dest, size, renderContext) {
|
|
75
101
|
this.variable?.CopyValueToEffect?.(inputType, dest, size, renderContext);
|
|
76
102
|
}
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* Always false - populating a resource set is device work this package does
|
|
106
|
+
* not do.
|
|
107
|
+
*/
|
|
77
108
|
CopyToResourceSet() {
|
|
78
109
|
return false;
|
|
79
110
|
}
|
|
111
|
+
|
|
112
|
+
/** Always false - UAV binding is left to the engine adapter. */
|
|
80
113
|
ApplyUav() {
|
|
81
114
|
return false;
|
|
82
115
|
}
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* The bound variable's type tag, which decides whether the name binds as a
|
|
119
|
+
* resource or a constant; `invalid` when nothing is bound.
|
|
120
|
+
*/
|
|
83
121
|
GetVariableType() {
|
|
84
122
|
return this.variable?.GetType?.() ?? this.variable?.type ?? "invalid";
|
|
85
123
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TriVariableParameter.js","sources":["../../../../src/shader/parameter/TriVariableParameter.js"],"sourcesContent":["// Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity\r\n// trinity/trinity/Shader/Parameter/TriVariableParameter.h\r\n// Generated by format-carbon carbon-class --emit. Verify against shader/TriVariableParameter.json.\r\nimport { carbon, impl, io, type } from \"@carbonenginejs/runtime-utils/schema\";\r\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\r\nimport { CjsParameter } from \"./CjsParameter.js\";\r\n\r\n/** TriVariableParameter (shader) - generated from schema shapeHash c1071754.... */\r\n@type.define({ className: \"TriVariableParameter\", family: \"shader\" })\r\nexport class TriVariableParameter extends CjsParameter\r\n{\r\n\r\n /** m_name (BlueSharedString) [READWRITE, NOTIFY, PERSIST] */\r\n @io.flag(\"effectHandles\")\r\n @io.notify\r\n @io.persist\r\n @type.string\r\n name = \"\";\r\n\r\n /** m_isUsedByEffect (bool) [READ] */\r\n @io.read\r\n @type.boolean\r\n usedByCurrentTechnique = false;\r\n\r\n /** m_isUsedByEffect (bool) [READ] */\r\n @io.read\r\n @type.boolean\r\n usedByCurrentEffect = false;\r\n\r\n /** m_variableName (BlueSharedString) [READWRITE, NOTIFY, PERSIST] */\r\n @io.flag(\"variable\")\r\n @io.notify\r\n @io.persist\r\n @type.string\r\n variableName = \"\";\r\n\r\n variable = null;\r\n\r\n variableStore = null;\r\n\r\n cachedEffect = null;\r\n\r\n @carbon.method\r\n @impl.implemented\r\n GetParameterName()\r\n {\r\n return this.name;\r\n }\r\n\r\n /** Content hash: name only - the variable's value comes from the store. */\r\n @carbon.method\r\n @impl.adapted\r\n GetHashValue(startingHash = CjsParameter.FNV1_INITIAL)\r\n {\r\n return CjsParameter.hashFnv1String(this.name, startingHash);\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n Initialize(variableStore = null)\r\n {\r\n this.variableStore = variableStore ?? this.variableStore;\r\n if (!this.variableName)\r\n {\r\n this.variable = null;\r\n return true;\r\n }\r\n this.variable = this.variableStore?.GetVariable?.(this.variableName) ?? this.variableStore?.getVariable?.(this.variableName) ?? this.variableStore?.[this.variableName] ?? this.variable;\r\n return true;\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n OnModified(_options = {})\r\n {\r\n const flags = this.__state.flags;\r\n if (flags.delete(\"variable\"))\r\n {\r\n this.Initialize(this.variableStore);\r\n }\r\n if (flags.delete(\"effectHandles\"))\r\n {\r\n this.RebuildEffectHandles(this.cachedEffect);\r\n }\r\n return true;\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n RebuildEffectHandles(effectRes)\r\n {\r\n this.cachedEffect = effectRes;\r\n this.usedByCurrentEffect = false;\r\n this.usedByCurrentTechnique = false;\r\n if (!this.name || !effectRes || !this.variable)\r\n {\r\n return;\r\n }\r\n const type = this.GetVariableType();\r\n const isResource = type === \"texture\" || type === \"textureRes\" || type === \"gpuBuffer\" || type === 4 || type === 5;\r\n const used = isResource ? !!CjsParameter.getEffectResource(effectRes, this.name) : !!CjsParameter.getEffectConstant(effectRes, this.name);\r\n this.usedByCurrentEffect = used;\r\n this.usedByCurrentTechnique = used;\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n CopyValueToEffect(inputType, dest, size, renderContext)\r\n {\r\n this.variable?.CopyValueToEffect?.(inputType, dest, size, renderContext);\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n CopyToResourceSet()\r\n {\r\n return false;\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n ApplyUav()\r\n {\r\n return false;\r\n }\r\n\r\n @carbon.method\r\n @impl.implemented\r\n GetVariableType()\r\n {\r\n return this.variable?.GetType?.() ?? this.variable?.type ?? \"invalid\";\r\n }\r\n\r\n}\r\n"],"names":["_TriVariableParameter","TriVariableParameter","CjsParameter","e","_init_name","_init_extra_name","_init_usedByCurrentTechnique","_init_extra_usedByCurrentTechnique","_init_usedByCurrentEffect","_init_extra_usedByCurrentEffect","_init_variableName","_init_extra_variableName","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","flag","notify","persist","string","read","boolean","carbon","method","impl","implemented","adapted","name","usedByCurrentTechnique","usedByCurrentEffect","variableName","variable","variableStore","cachedEffect","GetParameterName","GetHashValue","startingHash","FNV1_INITIAL","hashFnv1String","Initialize","GetVariable","getVariable","OnModified","_options","flags","__state","delete","RebuildEffectHandles","effectRes","GetVariableType","isResource","used","getEffectResource","getEffectConstant","CopyValueToEffect","inputType","dest","size","renderContext","CopyToResourceSet","ApplyUav","GetType"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TriVariableParameter.js","sources":["../../../../src/shader/parameter/TriVariableParameter.js"],"sourcesContent":["// Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity\r\n// trinity/trinity/Shader/Parameter/TriVariableParameter.h\r\n// Generated by format-carbon carbon-class --emit. Verify against shader/TriVariableParameter.json.\r\nimport { carbon, impl, io, type } from \"@carbonenginejs/runtime-utils/schema\";\r\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\r\nimport { CjsParameter } from \"./CjsParameter.js\";\r\n\r\n/** TriVariableParameter (shader) - generated from schema shapeHash c1071754.... */\r\n@type.define({ className: \"TriVariableParameter\", family: \"shader\" })\r\nexport class TriVariableParameter extends CjsParameter\r\n{\r\n\r\n /** m_name (BlueSharedString) [READWRITE, NOTIFY, PERSIST] */\r\n @io.flag(\"effectHandles\")\r\n @io.notify\r\n @io.persist\r\n @type.string\r\n name = \"\";\r\n\r\n /** m_isUsedByEffect (bool) [READ] */\r\n @io.read\r\n @type.boolean\r\n usedByCurrentTechnique = false;\r\n\r\n /** m_isUsedByEffect (bool) [READ] */\r\n @io.read\r\n @type.boolean\r\n usedByCurrentEffect = false;\r\n\r\n /** m_variableName (BlueSharedString) [READWRITE, NOTIFY, PERSIST] */\r\n @io.flag(\"variable\")\r\n @io.notify\r\n @io.persist\r\n @type.string\r\n variableName = \"\";\r\n\r\n variable = null;\r\n\r\n variableStore = null;\r\n\r\n cachedEffect = null;\r\n\r\n /**\r\n * The shader constant or resource name the variable's value is uploaded to;\r\n * distinct from variableName, which names the store entry.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n GetParameterName()\r\n {\r\n return this.name;\r\n }\r\n\r\n /** Content hash: name only - the variable's value comes from the store. */\r\n @carbon.method\r\n @impl.adapted\r\n GetHashValue(startingHash = CjsParameter.FNV1_INITIAL)\r\n {\r\n return CjsParameter.hashFnv1String(this.name, startingHash);\r\n }\r\n\r\n /**\r\n * Resolves variableName against a store and caches the variable object; an empty variableName clears the binding. Always returns true.\r\n * @param variableStore store to bind against; null keeps the store supplied by an earlier call\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n Initialize(variableStore = null)\r\n {\r\n this.variableStore = variableStore ?? this.variableStore;\r\n if (!this.variableName)\r\n {\r\n this.variable = null;\r\n return true;\r\n }\r\n this.variable = this.variableStore?.GetVariable?.(this.variableName) ?? this.variableStore?.getVariable?.(this.variableName) ?? this.variableStore?.[this.variableName] ?? this.variable;\r\n return true;\r\n }\r\n\r\n /**\r\n * Consumes the two dirty flags: `variable` re-resolves the store binding,\r\n * `effectHandles` re-resolves usage against the cached shader.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n OnModified(_options = {})\r\n {\r\n const flags = this.__state.flags;\r\n if (flags.delete(\"variable\"))\r\n {\r\n this.Initialize(this.variableStore);\r\n }\r\n if (flags.delete(\"effectHandles\"))\r\n {\r\n this.RebuildEffectHandles(this.cachedEffect);\r\n }\r\n return true;\r\n }\r\n\r\n /**\r\n * Records usage by looking the name up as a shader resource when the bound\r\n * variable is a texture or buffer type and as a shader constant otherwise; an\r\n * unbound variable always counts as unused.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n RebuildEffectHandles(effectRes)\r\n {\r\n this.cachedEffect = effectRes;\r\n this.usedByCurrentEffect = false;\r\n this.usedByCurrentTechnique = false;\r\n if (!this.name || !effectRes || !this.variable)\r\n {\r\n return;\r\n }\r\n const type = this.GetVariableType();\r\n const isResource = type === \"texture\" || type === \"textureRes\" || type === \"gpuBuffer\" || type === 4 || type === 5;\r\n const used = isResource ? !!CjsParameter.getEffectResource(effectRes, this.name) : !!CjsParameter.getEffectConstant(effectRes, this.name);\r\n this.usedByCurrentEffect = used;\r\n this.usedByCurrentTechnique = used;\r\n }\r\n\r\n /**\r\n * Delegates the write to the bound variable, so the store owns the value; does\r\n * nothing when no variable is bound.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n CopyValueToEffect(inputType, dest, size, renderContext)\r\n {\r\n this.variable?.CopyValueToEffect?.(inputType, dest, size, renderContext);\r\n }\r\n\r\n /**\r\n * Always false - populating a resource set is device work this package does\r\n * not do.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n CopyToResourceSet()\r\n {\r\n return false;\r\n }\r\n\r\n /** Always false - UAV binding is left to the engine adapter. */\r\n @carbon.method\r\n @impl.adapted\r\n ApplyUav()\r\n {\r\n return false;\r\n }\r\n\r\n /**\r\n * The bound variable's type tag, which decides whether the name binds as a\r\n * resource or a constant; `invalid` when nothing is bound.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n GetVariableType()\r\n {\r\n return this.variable?.GetType?.() ?? this.variable?.type ?? \"invalid\";\r\n }\r\n\r\n}\r\n"],"names":["_TriVariableParameter","TriVariableParameter","CjsParameter","e","_init_name","_init_extra_name","_init_usedByCurrentTechnique","_init_extra_usedByCurrentTechnique","_init_usedByCurrentEffect","_init_extra_usedByCurrentEffect","_init_variableName","_init_extra_variableName","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","flag","notify","persist","string","read","boolean","carbon","method","impl","implemented","adapted","name","usedByCurrentTechnique","usedByCurrentEffect","variableName","variable","variableStore","cachedEffect","GetParameterName","GetHashValue","startingHash","FNV1_INITIAL","hashFnv1String","Initialize","GetVariable","getVariable","OnModified","_options","flags","__state","delete","RebuildEffectHandles","effectRes","GetVariableType","isResource","used","getEffectResource","getEffectConstant","CopyValueToEffect","inputType","dest","size","renderContext","CopyToResourceSet","ApplyUav","GetType"],"mappings":"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"}
|
|
@@ -4,6 +4,8 @@ import { CjsModel } from '@carbonenginejs/runtime-utils/model';
|
|
|
4
4
|
import { io, type } from '@carbonenginejs/runtime-utils/schema';
|
|
5
5
|
|
|
6
6
|
let _initClass, _init_data, _init_extra_data;
|
|
7
|
+
|
|
8
|
+
/** One vec4 row of a TriFloatArrayParameter's value list. */
|
|
7
9
|
let _TriVector;
|
|
8
10
|
class TriVector4 extends CjsModel {
|
|
9
11
|
static {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TriVector4.js","sources":["../../../../src/shader/parameter/TriVector4.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\Shader\\Parameter\\TriFloatArrayParameter.h\n// Source: E:\\carbonengine\\trinity\\trinity\\Shader\\Parameter\\TriFloatArrayParameter.cpp\nimport { vec4 } from \"@carbonenginejs/runtime-utils/vec4\";\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\nimport { io, type } from \"@carbonenginejs/runtime-utils/schema\";\n\n\n@type.define({\n className: \"TriVector4\",\n family: \"shader\"\n})\nexport class TriVector4 extends CjsModel\n{\n @io.persist\n @type.vec4\n data = vec4.create();\n}\n"],"names":["_TriVector","TriVector4","CjsModel","e","_init_data","_init_extra_data","c","_initClass","_applyDecs","type","define","className","family","io","persist","vec4","constructor","args","data","create"],"mappings":"
|
|
1
|
+
{"version":3,"file":"TriVector4.js","sources":["../../../../src/shader/parameter/TriVector4.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\Shader\\Parameter\\TriFloatArrayParameter.h\n// Source: E:\\carbonengine\\trinity\\trinity\\Shader\\Parameter\\TriFloatArrayParameter.cpp\nimport { vec4 } from \"@carbonenginejs/runtime-utils/vec4\";\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\nimport { io, type } from \"@carbonenginejs/runtime-utils/schema\";\n\n\n/** One vec4 row of a TriFloatArrayParameter's value list. */\n@type.define({\n className: \"TriVector4\",\n family: \"shader\"\n})\nexport class TriVector4 extends CjsModel\n{\n @io.persist\n @type.vec4\n data = vec4.create();\n}\n"],"names":["_TriVector","TriVector4","CjsModel","e","_init_data","_init_extra_data","c","_initClass","_applyDecs","type","define","className","family","io","persist","vec4","constructor","args","data","create"],"mappings":";;;;;;;AAOA;AAAA,IAAAA;AACA,MAAAC,UAAA,SAIgCC,QAAQ,CACxC;AAAA,EAAA;AAAA,IAAA,CAAA;MAAAC,CAAA,EAAA,CAAAC,UAAA,EAAAC,gBAAA,CAAA;MAAAC,CAAA,EAAA,CAAAN,UAAA,EAAAO,UAAA;AAAA,KAAA,GAAAC,cAAA,CAAA,IAAA,EAAA,CALCC,IAAI,CAACC,MAAM,CAAC;AACXC,MAAAA,SAAS,EAAE,YAAY;AACvBC,MAAAA,MAAM,EAAE;AACV,KAAC,CAAC,CAAA,EAAA,CAAA,CAAA,CAGCC,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACM,IAAI,4BAHoBb,QAAQ,CAAA;AAAA;AAAAc,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;IAAAZ,gBAAA,CAAA,IAAA,CAAA;AAAA,EAAA;AAItCa,EAAAA,IAAI,GAAAd,UAAA,CAAA,IAAA,EAAGW,IAAI,CAACI,MAAM,EAAE,CAAA;AAAC,EAAA;IAAAZ,UAAA,EAAA;AAAA;AACvB;;;;"}
|
|
@@ -4,7 +4,12 @@ import { CjsModel } from '@carbonenginejs/runtime-utils/model';
|
|
|
4
4
|
|
|
5
5
|
let _initClass, _init_name, _init_extra_name, _init_value, _init_extra_value;
|
|
6
6
|
|
|
7
|
-
/**
|
|
7
|
+
/**
|
|
8
|
+
* Mutable authored option on the Tr2Effect facade.
|
|
9
|
+
*
|
|
10
|
+
* Tr2EffectRes accepts this plain name/value shape but does not own authored
|
|
11
|
+
* option lifetime.
|
|
12
|
+
*/
|
|
8
13
|
let _Tr2ShaderOption;
|
|
9
14
|
class Tr2ShaderOption extends CjsModel {
|
|
10
15
|
static {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tr2ShaderOption.js","sources":["../../../../src/shader/reflection/Tr2ShaderOption.js"],"sourcesContent":["//
|
|
1
|
+
{"version":3,"file":"Tr2ShaderOption.js","sources":["../../../../src/shader/reflection/Tr2ShaderOption.js"],"sourcesContent":["// Source: trinity/trinity/Shader/Tr2EffectDescription.h\nimport { io, type } from \"@carbonenginejs/runtime-utils/schema\";\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\n\n/**\n * Mutable authored option on the Tr2Effect facade.\n *\n * Tr2EffectRes accepts this plain name/value shape but does not own authored\n * option lifetime.\n */\n@type.define({ className: \"Tr2ShaderOption\", family: \"shader\" })\nexport class Tr2ShaderOption extends CjsModel\n{\n\n /** name (BlueSharedString) */\n @io.rebuild(\"pipeline\")\n @io.persist\n @type.string\n name = \"\";\n\n /** value (BlueSharedString) */\n @io.rebuild(\"pipeline\")\n @io.persist\n @type.string\n value = \"\";\n\n}\n"],"names":["_Tr2ShaderOption","Tr2ShaderOption","CjsModel","e","_init_name","_init_extra_name","_init_value","_init_extra_value","c","_initClass","_applyDecs","type","define","className","family","io","rebuild","persist","string","constructor","args","name","value"],"mappings":";;;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AALA,IAAAA;AAMA,MAAAC,eAAA,SACqCC,QAAQ,CAC7C;AAAA,EAAA;AAAA,IAAA,CAAA;AAAAC,MAAAA,CAAA,GAAAC,UAAA,EAAAC,gBAAA,EAAAC,WAAA,EAAAC,iBAAA,CAAA;MAAAC,CAAA,EAAA,CAAAR,gBAAA,EAAAS,UAAA;AAAA,KAAA,GAAAC,cAAA,CAAA,IAAA,EAAA,CAFCC,IAAI,CAACC,MAAM,CAAC;AAAEC,MAAAA,SAAS,EAAE,iBAAiB;AAAEC,MAAAA,MAAM,EAAE;AAAS,KAAC,CAAC,CAAA,EAAA,CAAA,CAAA,CAAA,MAAA,EAK7DC,EAAE,CAACC,OAAO,CAAC,UAAU,CAAC,EACtBD,EAAE,EAAFA,EAAE,CAACE,OAAO,EACVN,IAAI,EAAJA,IAAI,CAACO,MAAM,CAAA,EAAA,EAAA,EAAA,MAAA,CAAA,EAAA,CAAA,CAAA,MAAA,EAIXH,EAAE,CAACC,OAAO,CAAC,UAAU,CAAC,EACtBD,EAAE,EAAFA,EAAE,CAACE,OAAO,EACVN,IAAI,EAAJA,IAAI,CAACO,MAAM,6BAZuBhB,QAAQ,CAAA;AAAA;AAAAiB,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;IAAAb,iBAAA,CAAA,IAAA,CAAA;AAAA,EAAA;AAG3C;EAIAc,IAAI,GAAAjB,UAAA,CAAA,IAAA,EAAG,EAAE,CAAA;;AAET;AAIAkB,EAAAA,KAAK,IAAAjB,gBAAA,CAAA,IAAA,CAAA,EAAAC,WAAA,OAAG,EAAE,CAAA;AAAC,EAAA;IAAAG,UAAA,EAAA;AAAA;AAEb;;;;"}
|
|
@@ -1,20 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A named-variable table that TriVariableParameter values resolve against, plus
|
|
3
|
+
* the lazily created process-wide global instance effects fall back to.
|
|
4
|
+
*/
|
|
1
5
|
class CjsVariableStore {
|
|
2
6
|
static #global = null;
|
|
3
7
|
#variables = new Map();
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Creates an empty store, optionally seeded.
|
|
11
|
+
* @param values optional name-to-value Map or object routed through SetValues
|
|
12
|
+
*/
|
|
4
13
|
constructor(values = null) {
|
|
5
14
|
if (values) {
|
|
6
15
|
this.SetValues(values);
|
|
7
16
|
}
|
|
8
17
|
}
|
|
18
|
+
|
|
19
|
+
/** Short alias for SetVariable. */
|
|
9
20
|
Set(name, value, Type = null) {
|
|
10
21
|
return this.SetVariable(name, value, Type);
|
|
11
22
|
}
|
|
23
|
+
|
|
24
|
+
/** Short alias for GetVariable - returns the variable object, not its value. */
|
|
12
25
|
Get(name) {
|
|
13
26
|
return this.GetVariable(name);
|
|
14
27
|
}
|
|
28
|
+
|
|
29
|
+
/** Short alias for HasVariable. */
|
|
15
30
|
Has(name) {
|
|
16
31
|
return this.HasVariable(name);
|
|
17
32
|
}
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Seeds many variables at once from a Map or plain object; returns this store
|
|
36
|
+
* for chaining.
|
|
37
|
+
*/
|
|
18
38
|
SetValues(values) {
|
|
19
39
|
const entries = values instanceof Map ? values.entries() : Object.entries(values);
|
|
20
40
|
for (const [name, value] of entries) {
|
|
@@ -22,6 +42,12 @@ class CjsVariableStore {
|
|
|
22
42
|
}
|
|
23
43
|
return this;
|
|
24
44
|
}
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Stores a value under a name, wrapping raw values in a CjsStoredVariable and
|
|
48
|
+
* naming an unnamed variable object after its key. Values that already
|
|
49
|
+
* implement the variable protocol are stored by reference, not copied.
|
|
50
|
+
*/
|
|
25
51
|
SetVariable(name, value, Type = null) {
|
|
26
52
|
const key = String(name);
|
|
27
53
|
const variable = CjsVariableStore.isVariable(value) ? value : this.CreateVariable(key, value, Type);
|
|
@@ -31,37 +57,79 @@ class CjsVariableStore {
|
|
|
31
57
|
this.#variables.set(key, variable);
|
|
32
58
|
return variable;
|
|
33
59
|
}
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Constructs the wrapper object for a name/value pair, using the supplied
|
|
63
|
+
* constructor when one is given and CjsStoredVariable otherwise.
|
|
64
|
+
*/
|
|
34
65
|
CreateVariable(name, value = undefined, Type = null) {
|
|
35
66
|
if (typeof Type === "function") {
|
|
36
67
|
return new Type(name, value);
|
|
37
68
|
}
|
|
38
69
|
return new CjsStoredVariable(name, value, Type);
|
|
39
70
|
}
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* The stored variable object, or null; parameters hold on to this reference
|
|
74
|
+
* until they re-Initialize.
|
|
75
|
+
*/
|
|
40
76
|
GetVariable(name) {
|
|
41
77
|
return this.#variables.get(String(name)) ?? null;
|
|
42
78
|
}
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* camelCase alias for GetVariable, accepted because parameters probe both
|
|
82
|
+
* spellings.
|
|
83
|
+
*/
|
|
43
84
|
getVariable(name) {
|
|
44
85
|
return this.GetVariable(name);
|
|
45
86
|
}
|
|
87
|
+
|
|
88
|
+
/** Whether a variable is stored under this name. */
|
|
46
89
|
HasVariable(name) {
|
|
47
90
|
return this.#variables.has(String(name));
|
|
48
91
|
}
|
|
92
|
+
|
|
93
|
+
/** camelCase alias for HasVariable. */
|
|
49
94
|
hasVariable(name) {
|
|
50
95
|
return this.HasVariable(name);
|
|
51
96
|
}
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Removes the named variable; returns whether it was present. Parameters
|
|
100
|
+
* already holding the variable keep working until they re-Initialize.
|
|
101
|
+
*/
|
|
52
102
|
DeleteVariable(name) {
|
|
53
103
|
return this.#variables.delete(String(name));
|
|
54
104
|
}
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* Empties the table; parameters already holding a variable reference keep it
|
|
108
|
+
* until they re-Initialize.
|
|
109
|
+
*/
|
|
55
110
|
Clear() {
|
|
56
111
|
this.#variables.clear();
|
|
57
112
|
}
|
|
113
|
+
|
|
114
|
+
/**
|
|
115
|
+
* The variable's current value, or undefined when the name is unknown.
|
|
116
|
+
* @param out optional array the variable may fill in instead of returning its own storage
|
|
117
|
+
*/
|
|
58
118
|
GetVariableValue(name, out = undefined) {
|
|
59
119
|
const variable = this.GetVariable(name);
|
|
60
120
|
return variable?.GetValue?.(out) ?? variable?.getValue?.(out) ?? variable?.value ?? undefined;
|
|
61
121
|
}
|
|
122
|
+
|
|
123
|
+
/** camelCase alias for GetVariableValue. */
|
|
62
124
|
getVariableValue(name, out = undefined) {
|
|
63
125
|
return this.GetVariableValue(name, out);
|
|
64
126
|
}
|
|
127
|
+
|
|
128
|
+
/**
|
|
129
|
+
* Writes a value through the named variable, creating the variable when absent
|
|
130
|
+
* and assigning `.value` directly for holders with no setter; returns the
|
|
131
|
+
* variable.
|
|
132
|
+
*/
|
|
65
133
|
SetVariableValue(name, value, options = undefined) {
|
|
66
134
|
const variable = this.GetVariable(name) ?? this.SetVariable(name, value);
|
|
67
135
|
variable?.SetValue?.(value, options) ?? variable?.setValue?.(value, options);
|
|
@@ -70,44 +138,99 @@ class CjsVariableStore {
|
|
|
70
138
|
}
|
|
71
139
|
return variable;
|
|
72
140
|
}
|
|
141
|
+
|
|
142
|
+
/** camelCase alias for SetVariableValue. */
|
|
73
143
|
setVariableValue(name, value, options = undefined) {
|
|
74
144
|
return this.SetVariableValue(name, value, options);
|
|
75
145
|
}
|
|
146
|
+
|
|
147
|
+
/**
|
|
148
|
+
* Snapshot array of [name, variable] pairs; mutating the array does not affect
|
|
149
|
+
* the store.
|
|
150
|
+
*/
|
|
76
151
|
Entries() {
|
|
77
152
|
return [...this.#variables.entries()];
|
|
78
153
|
}
|
|
154
|
+
|
|
155
|
+
/**
|
|
156
|
+
* Snapshot array of the stored variable objects; the objects themselves are
|
|
157
|
+
* live references.
|
|
158
|
+
*/
|
|
79
159
|
Values() {
|
|
80
160
|
return [...this.#variables.values()];
|
|
81
161
|
}
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* Whether a value already implements the variable protocol - any of GetValue,
|
|
165
|
+
* SetValue, CopyValueToEffect, CopyToResourceSet or ApplyUav - and so should
|
|
166
|
+
* be stored unwrapped.
|
|
167
|
+
*/
|
|
82
168
|
static isVariable(value) {
|
|
83
169
|
return !!value && typeof value === "object" && (typeof value.GetValue === "function" || typeof value.SetValue === "function" || typeof value.CopyValueToEffect === "function" || typeof value.CopyToResourceSet === "function" || typeof value.ApplyUav === "function");
|
|
84
170
|
}
|
|
171
|
+
|
|
172
|
+
/**
|
|
173
|
+
* The process-wide fallback store, created on first use; effects with no store
|
|
174
|
+
* of their own read through it.
|
|
175
|
+
*/
|
|
85
176
|
static GetGlobalStore() {
|
|
86
177
|
if (!CjsVariableStore.#global) {
|
|
87
178
|
CjsVariableStore.#global = new CjsVariableStore();
|
|
88
179
|
}
|
|
89
180
|
return CjsVariableStore.#global;
|
|
90
181
|
}
|
|
182
|
+
|
|
183
|
+
/**
|
|
184
|
+
* Replaces the global store, installing a fresh empty one when passed null;
|
|
185
|
+
* existing effects see the swap because they resolve the global at call time
|
|
186
|
+
* rather than capturing it.
|
|
187
|
+
*/
|
|
91
188
|
static SetGlobalStore(store) {
|
|
92
189
|
CjsVariableStore.#global = store ?? new CjsVariableStore();
|
|
93
190
|
return CjsVariableStore.#global;
|
|
94
191
|
}
|
|
95
192
|
}
|
|
193
|
+
|
|
194
|
+
/**
|
|
195
|
+
* The default variable wrapper: a name, a value and an inferred type tag, able
|
|
196
|
+
* to copy itself into an effect constant destination.
|
|
197
|
+
*/
|
|
96
198
|
class CjsStoredVariable {
|
|
97
199
|
name = "";
|
|
98
200
|
value = undefined;
|
|
99
201
|
type = "value";
|
|
202
|
+
|
|
203
|
+
/**
|
|
204
|
+
* Creates a variable holding a raw value.
|
|
205
|
+
* @param type overrides the type tag that would otherwise be inferred from the value
|
|
206
|
+
*/
|
|
100
207
|
constructor(name = "", value = undefined, type = null) {
|
|
101
208
|
this.name = String(name);
|
|
102
209
|
this.value = value;
|
|
103
210
|
this.type = type ?? CjsStoredVariable.inferType(value);
|
|
104
211
|
}
|
|
212
|
+
|
|
213
|
+
/**
|
|
214
|
+
* The variable's name, which the store fills in from the key when it was
|
|
215
|
+
* constructed without one.
|
|
216
|
+
*/
|
|
105
217
|
GetName() {
|
|
106
218
|
return this.name;
|
|
107
219
|
}
|
|
220
|
+
|
|
221
|
+
/**
|
|
222
|
+
* The type tag TriVariableParameter uses to decide whether the name binds to a
|
|
223
|
+
* shader constant or a shader resource.
|
|
224
|
+
*/
|
|
108
225
|
GetType() {
|
|
109
226
|
return this.type;
|
|
110
227
|
}
|
|
228
|
+
|
|
229
|
+
/**
|
|
230
|
+
* Reads the value.
|
|
231
|
+
* @param out optional array filled with min(out.length, value.length) components
|
|
232
|
+
* @returns `out` when it was filled, otherwise the variable's own value by reference
|
|
233
|
+
*/
|
|
111
234
|
GetValue(out = undefined) {
|
|
112
235
|
if (out && this.value && typeof this.value.length === "number" && typeof out.length === "number") {
|
|
113
236
|
const count = Math.min(out.length, this.value.length);
|
|
@@ -118,11 +241,22 @@ class CjsStoredVariable {
|
|
|
118
241
|
}
|
|
119
242
|
return this.value;
|
|
120
243
|
}
|
|
244
|
+
|
|
245
|
+
/**
|
|
246
|
+
* Replaces the value by reference and re-infers the type tag; always returns
|
|
247
|
+
* true.
|
|
248
|
+
*/
|
|
121
249
|
SetValue(value) {
|
|
122
250
|
this.value = value;
|
|
123
251
|
this.type = CjsStoredVariable.inferType(value);
|
|
124
252
|
return true;
|
|
125
253
|
}
|
|
254
|
+
|
|
255
|
+
/**
|
|
256
|
+
* Copies the value into an effect constant destination, clamped to the destination length, the source length and `size` bytes at four bytes per float; a scalar value writes one component.
|
|
257
|
+
* @param size byte budget in the destination, not a component count
|
|
258
|
+
* @returns {boolean} whether anything was written
|
|
259
|
+
*/
|
|
126
260
|
CopyValueToEffect(_inputType, destination, size = Number.POSITIVE_INFINITY) {
|
|
127
261
|
if (!destination || typeof destination.length !== "number") {
|
|
128
262
|
return false;
|
|
@@ -142,6 +276,12 @@ class CjsStoredVariable {
|
|
|
142
276
|
}
|
|
143
277
|
return count > 0;
|
|
144
278
|
}
|
|
279
|
+
|
|
280
|
+
/**
|
|
281
|
+
* Derives a type tag from a raw value: numbers are float, strings texture,
|
|
282
|
+
* 16-length array-likes matrix4, other array-likes vectorN, everything else
|
|
283
|
+
* value.
|
|
284
|
+
*/
|
|
145
285
|
static inferType(value) {
|
|
146
286
|
if (typeof value === "number") {
|
|
147
287
|
return "float";
|