UNPKG

@polygonjs/polygonjs

Version:

node-based WebGL 3D engine https://polygonjs.com

716 lines 57.3 kB
"use strict"; import { CATEGORY_JS } from "./Category"; import { AbsJsNode } from "../../../nodes/js/Abs"; import { AcosJsNode } from "../../../nodes/js/Acos"; import { AddJsNode } from "../../../nodes/js/Add"; import { AndJsNode } from "../../../nodes/js/And"; import { AnimationActionJsNode } from "../../../nodes/js/AnimationAction"; import { AnimationActionCrossFadeJsNode } from "../../../nodes/js/AnimationActionCrossFade"; import { AnimationActionFadeOutJsNode } from "../../../nodes/js/AnimationActionFadeOut"; import { AnimationActionFadeInJsNode } from "../../../nodes/js/AnimationActionFadeIn"; import { AnimationActionPlayJsNode } from "../../../nodes/js/AnimationActionPlay"; import { AnimationActionStopJsNode } from "../../../nodes/js/AnimationActionStop"; import { AnimationMixerJsNode } from "../../../nodes/js/AnimationMixer"; import { AnimationMixerUpdateJsNode } from "../../../nodes/js/AnimationMixerUpdate"; import { AnyTriggerJsNode } from "../../../nodes/js/AnyTrigger"; import { ArrayElementJsNode } from "../../../nodes/js/ArrayElement"; import { ArrayLengthJsNode } from "../../../nodes/js/ArrayLength"; import { ArrayPopJsNode } from "../../../nodes/js/ArrayPop"; import { ArrayShiftJsNode } from "../../../nodes/js/ArrayShift"; import { AsinJsNode } from "../../../nodes/js/Asin"; import { AtanJsNode } from "../../../nodes/js/Atan"; import { AttributeJsNode } from "../../../nodes/js/Attribute"; import { BoolToIntJsNode } from "../../../nodes/js/BoolToInt"; import { Box3JsNode } from "../../../nodes/js/Box3"; import { Box3ContainsPointJsNode } from "../../../nodes/js/Box3ContainsPoint"; import { Box3IntersectsBox3JsNode } from "../../../nodes/js/Box3IntersectsBox3"; import { Box3SetFromObjectJsNode } from "../../../nodes/js/Box3SetFromObject"; import { CatmullRomCurve3GetPointJsNode } from "../../../nodes/js/CatmullRomCurve3GetPoint"; import { CeilJsNode } from "../../../nodes/js/Ceil"; import { ClampJsNode } from "../../../nodes/js/Clamp"; import { ClothSolverResetJsNode } from "../../../nodes/js/ClothSolverReset"; import { ClothSolverStepSimulationJsNode } from "../../../nodes/js/ClothSolverStepSimulation"; import { ClothSolverUpdateMaterialJsNode } from "../../../nodes/js/ClothSolverUpdateMaterial"; import { CodeJsNode } from "../../../nodes/js/Code"; import { ColorToVec3JsNode } from "../../../nodes/js/ColorToVec3"; import { CompareJsNode } from "../../../nodes/js/Compare"; import { ComplementJsNode } from "../../../nodes/js/Complement"; import { ComputeVelocityJsNode } from "../../../nodes/js/ComputeVelocity"; import { ConstantJsNode } from "../../../nodes/js/Constant"; import { CookNodeJsNode } from "../../../nodes/js/CookNode"; import { CosJsNode } from "../../../nodes/js/Cos"; import { CreateClothConstraintJsNode } from "../../../nodes/js/CreateClothConstraint"; import { CreateObjectsJsNode } from "../../../nodes/js/CreateObjects"; import { CreatePhysicsRBDKinematicConstraintJsNode } from "../../../nodes/js/CreatePhysicsRBDKinematicConstraint"; import { CreatePhysicsRBDsJsNode } from "../../../nodes/js/CreatePhysicsRBDs"; import { CreateSoftBodyConstraintJsNode } from "../../../nodes/js/CreateSoftBodyConstraint"; import { CrossJsNode } from "../../../nodes/js/Cross"; import { CursorJsNode } from "../../../nodes/js/Cursor"; import { CursorToUvJsNode } from "../../../nodes/js/CursorToUv"; import { DebugJsNode } from "../../../nodes/js/Debug"; import { DeformGeometryCubeLatticeJsNode } from "../../../nodes/js/DeformGeometryCubeLattice"; import { DeleteClothConstraintJsNode } from "../../../nodes/js/DeleteClothConstraint"; import { DeleteObjectJsNode } from "../../../nodes/js/DeleteObject"; import { DeletePhysicsRBDJsNode } from "../../../nodes/js/DeletePhysicsRBD"; import { DeletePhysicsRBDKinematicConstraintJsNode } from "../../../nodes/js/DeletePhysicsRBDKinematicConstraint"; import { DeletePhysicsRBDConstraintsJsNode } from "../../../nodes/js/DeletePhysicsRBDConstraints"; import { DeleteSoftBodyConstraintJsNode } from "../../../nodes/js/DeleteSoftBodyConstraint"; import { DegToRadJsNode } from "../../../nodes/js/DegToRad"; import { DeviceOrientationJsNode } from "../../../nodes/js/DeviceOrientation"; import { DistanceJsNode } from "../../../nodes/js/Distance"; import { DivideJsNode } from "../../../nodes/js/Divide"; import { DotJsNode } from "../../../nodes/js/Dot"; import { EasingJsNode } from "../../../nodes/js/Easing"; import { ElementsToArrayJsNode } from "../../../nodes/js/ElementsToArray"; import { EulerJsNode } from "../../../nodes/js/Euler"; import { EulerFromQuaternionJsNode } from "../../../nodes/js/EulerFromQuaternion"; import { FitJsNode } from "../../../nodes/js/Fit"; import { FloatToColorJsNode } from "../../../nodes/js/FloatToColor"; import { FloatToIntJsNode } from "../../../nodes/js/FloatToInt"; import { FloatToVec2JsNode } from "../../../nodes/js/FloatToVec2"; import { FloatToVec3JsNode } from "../../../nodes/js/FloatToVec3"; import { FloatToVec4JsNode } from "../../../nodes/js/FloatToVec4"; import { FloorJsNode } from "../../../nodes/js/Floor"; import { ForLoopJsNode } from "../../../nodes/js/ForLoop"; import { GeolocationCurrentPositionJsNode } from "../../../nodes/js/GeolocationCurrentPosition"; import { GetBox3PropertyJsNode } from "../../../nodes/js/GetBox3Property"; import { GetChildrenAttributesJsNode } from "../../../nodes/js/GetChildrenAttributes"; import { GetChildrenPhysicsRBDPropertiesJsNode } from "../../../nodes/js/GetChildrenPhysicsRBDProperties"; import { GetChildrenPropertiesJsNode } from "../../../nodes/js/GetChildrenProperties"; import { GetDefaultCameraJsNode } from "../../../nodes/js/GetDefaultCamera"; import { GetGeometryBoundingBoxJsNode } from "../../../nodes/js/GetGeometryBoundingBox"; import { GetGeometryNodeObjectsJsNode } from "../../../nodes/js/GetGeometryNodeObjects"; import { GetGeometryPositionsJsNode } from "../../../nodes/js/GetGeometryPositions"; import { GetInstanceAttributeJsNode } from "../../../nodes/js/GetInstanceAttribute"; import { GetInstancePropertyJsNode } from "../../../nodes/js/GetInstanceProperty"; import { GetIntersectionAttributeJsNode } from "../../../nodes/js/GetIntersectionAttribute"; import { GetIntersectionPropertyJsNode } from "../../../nodes/js/GetIntersectionProperty"; import { GetMaterialJsNode } from "../../../nodes/js/GetMaterial"; import { GetNodeJsNode } from "../../../nodes/js/GetNode"; import { GetObjectJsNode } from "../../../nodes/js/GetObject"; import { GetObjectAttributeJsNode } from "../../../nodes/js/GetObjectAttribute"; import { GetObjectChildJsNode } from "../../../nodes/js/GetObjectChild"; import { GetObjectPropertyJsNode } from "../../../nodes/js/GetObjectProperty"; import { GetObjectUserDataJsNode } from "../../../nodes/js/GetObjectUserData"; import { GetObjectWorldPositionJsNode } from "../../../nodes/js/GetObjectWorldPosition"; import { GetParamJsNode } from "../../../nodes/js/GetParam"; import { GetParentJsNode } from "../../../nodes/js/GetParent"; import { GetPhysicsRBDJsNode } from "../../../nodes/js/GetPhysicsRBD"; import { GetPhysicsRBDConePropertyJsNode } from "../../../nodes/js/GetPhysicsRBDConeProperty"; import { GetPhysicsRBDCapsulePropertyJsNode } from "../../../nodes/js/GetPhysicsRBDCapsuleProperty"; import { GetPhysicsRBDCylinderPropertyJsNode } from "../../../nodes/js/GetPhysicsRBDCylinderProperty"; import { GetPhysicsRBDCuboidPropertyJsNode } from "../../../nodes/js/GetPhysicsRBDCuboidProperty"; import { GetPhysicsRBDSpherePropertyJsNode } from "../../../nodes/js/GetPhysicsRBDSphereProperty"; import { GetPhysicsRBDPropertyJsNode } from "../../../nodes/js/GetPhysicsRBDProperty"; import { GetPlanePropertyJsNode } from "../../../nodes/js/GetPlaneProperty"; import { GetPointAttributeJsNode } from "../../../nodes/js/GetPointAttribute"; import { GetPointPropertyJsNode } from "../../../nodes/js/GetPointProperty"; import { GetPrimitiveAttributeJsNode } from "../../../nodes/js/GetPrimitiveAttribute"; import { GetRayPropertyJsNode } from "../../../nodes/js/GetRayProperty"; import { GetSibblingJsNode } from "../../../nodes/js/GetSibbling"; import { GetSpherePropertyJsNode } from "../../../nodes/js/GetSphereProperty"; import { GetTextureJsNode } from "../../../nodes/js/GetTexture"; import { GetTrackedHandPropertyJsNode } from "../../../nodes/js/GetTrackedHandProperty"; import { GetVideoPropertyJsNode } from "../../../nodes/js/GetVideoProperty"; import { GetWebXRARSessionPropertyJsNode } from "../../../nodes/js/GetWebXRARSessionProperty"; import { GetWebXRControllerPropertyJsNode } from "../../../nodes/js/GetWebXRControllerProperty"; import { GetWebXRTrackedMarkerPropertyJsNode } from "../../../nodes/js/GetWebXRTrackedMarkerProperty"; import { GlobalsJsNode } from "../../../nodes/js/Globals"; import { GlobalsAmbientLightJsNode } from "../../../nodes/js/GlobalsAmbientLight"; import { GlobalsAreaLightJsNode } from "../../../nodes/js/GlobalsAreaLight"; import { GlobalsDirectionalLightJsNode } from "../../../nodes/js/GlobalsDirectionalLight"; import { GlobalsHemisphereLightJsNode } from "../../../nodes/js/GlobalsHemisphereLight"; import { GlobalsPointLightJsNode } from "../../../nodes/js/GlobalsPointLight"; import { GlobalsSpotLightJsNode } from "../../../nodes/js/GlobalsSpotLight"; import { HsvToRgbJsNode } from "../../../nodes/js/HsvToRgb"; import { ImportAttributeJsNode } from "../../../nodes/js/ImportAttribute"; import { IntToBoolJsNode } from "../../../nodes/js/IntToBool"; import { IntToFloatJsNode } from "../../../nodes/js/IntToFloat"; import { IsDefinedJsNode } from "../../../nodes/js/IsDefined"; import { IsTouchDeviceJsNode } from "../../../nodes/js/IsTouchDevice"; import { KeyframesJsNode } from "../../../nodes/js/Keyframes"; import { LengthJsNode } from "../../../nodes/js/Length"; import { LerpJsNode } from "../../../nodes/js/Lerp"; import { ManhattanDistanceJsNode } from "../../../nodes/js/ManhattanDistance"; import { Matrix4LookAtJsNode } from "../../../nodes/js/Matrix4LookAt"; import { Matrix4MakeTranslationJsNode } from "../../../nodes/js/Matrix4MakeTranslation"; import { Matrix4MultiplyJsNode } from "../../../nodes/js/Matrix4Multiply"; import { MaxJsNode } from "../../../nodes/js/Max"; import { MaxLengthJsNode } from "../../../nodes/js/MaxLength"; import { MinJsNode } from "../../../nodes/js/Min"; import { MixJsNode } from "../../../nodes/js/Mix"; import { ModJsNode } from "../../../nodes/js/Mod"; import { MultJsNode } from "../../../nodes/js/Mult"; import { MultAddJsNode } from "../../../nodes/js/MultAdd"; import { MultScalarJsNode } from "../../../nodes/js/MultScalar"; import { NearestPositionJsNode } from "../../../nodes/js/NearestPosition"; import { NegateJsNode } from "../../../nodes/js/Negate"; import { NoiseImprovedJsNode } from "../../../nodes/js/NoiseImproved"; import { NoiseSimplexJsNode } from "../../../nodes/js/NoiseSimplex"; import { NormalizeJsNode } from "../../../nodes/js/Normalize"; import { NullJsNode } from "../../../nodes/js/Null"; import { Object3DLocalToWorldJsNode } from "../../../nodes/js/Object3DLocalToWorld"; import { Object3DWorldToLocalJsNode } from "../../../nodes/js/Object3DWorldToLocal"; import { Object3DUpdateMatrixJsNode } from "../../../nodes/js/Object3DUpdateMatrix"; import { Object3DUpdateWorldMatrixJsNode } from "../../../nodes/js/Object3DUpdateWorldMatrix"; import { ObjectDispatchEventJsNode } from "../../../nodes/js/ObjectDispatchEvent"; import { OnChildAttributeUpdateJsNode } from "../../../nodes/js/OnChildAttributeUpdate"; import { OnKeyJsNode } from "../../../nodes/js/OnKey"; import { OnKeydownJsNode } from "../../../nodes/js/OnKeydown"; import { OnKeypressJsNode } from "../../../nodes/js/OnKeypress"; import { OnKeyupJsNode } from "../../../nodes/js/OnKeyup"; import { OnManualTriggerJsNode } from "../../../nodes/js/OnManualTrigger"; import { OnMapboxCameraMoveJsNode } from "../../../nodes/js/OnMapboxCameraMove"; import { OnMapboxCameraMoveEndJsNode } from "../../../nodes/js/OnMapboxCameraMoveEnd"; import { OnMapboxCameraMoveStartJsNode } from "../../../nodes/js/OnMapboxCameraMoveStart"; import { OnObjectAttributeUpdateJsNode } from "../../../nodes/js/OnObjectAttributeUpdate"; import { OnObjectBeforeDeleteJsNode } from "../../../nodes/js/OnObjectBeforeDelete"; import { OnObjectClickJsNode } from "../../../nodes/js/OnObjectClick"; import { OnObjectClickGPUJsNode } from "../../../nodes/js/OnObjectClickGPU"; import { OnObjectContextMenuJsNode } from "../../../nodes/js/OnObjectContextMenu"; import { OnObjectContextMenuGPUJsNode } from "../../../nodes/js/OnObjectContextMenuGPU"; import { OnObjectDoubleClickJsNode } from "../../../nodes/js/OnObjectDoubleClick"; import { OnObjectDispatchEventJsNode } from "../../../nodes/js/OnObjectDispatchEvent"; import { OnObjectHoverJsNode } from "../../../nodes/js/OnObjectHover"; import { OnObjectHoverGPUJsNode } from "../../../nodes/js/OnObjectHoverGPU"; import { OnObjectLongPressJsNode } from "../../../nodes/js/OnObjectLongPress"; import { OnObjectLongPressGPUJsNode } from "../../../nodes/js/OnObjectLongPressGPU"; import { OnObjectMouseClickJsNode } from "../../../nodes/js/OnObjectMouseClick"; import { OnObjectPointerdownJsNode } from "../../../nodes/js/OnObjectPointerdown"; import { OnObjectPointerdownGPUJsNode } from "../../../nodes/js/OnObjectPointerdownGPU"; import { OnObjectPointerupJsNode } from "../../../nodes/js/OnObjectPointerup"; import { OnObjectPointerupGPUJsNode } from "../../../nodes/js/OnObjectPointerupGPU"; import { OnObjectSwipeJsNode } from "../../../nodes/js/OnObjectSwipe"; import { OnObjectSwipeGPUJsNode } from "../../../nodes/js/OnObjectSwipeGPU"; import { OnPerformanceChangeJsNode } from "../../../nodes/js/OnPerformanceChange"; import { OnPointerdownJsNode } from "../../../nodes/js/OnPointerdown"; import { OnPointerupJsNode } from "../../../nodes/js/OnPointerup"; import { OnScenePauseJsNode } from "../../../nodes/js/OnScenePause"; import { OnScenePlayJsNode } from "../../../nodes/js/OnScenePlay"; import { OnSceneResetJsNode } from "../../../nodes/js/OnSceneReset"; import { OnScrollJsNode } from "../../../nodes/js/OnScroll"; import { OnTickJsNode } from "../../../nodes/js/OnTick"; import { OnVideoEventJsNode } from "../../../nodes/js/OnVideoEvent"; import { OnViewerControlsEventJsNode } from "../../../nodes/js/OnViewerControlsEvent"; import { OnWebXRControllerEventJsNode } from "../../../nodes/js/OnWebXRControllerEvent"; import { OrJsNode } from "../../../nodes/js/Or"; import { OutputJsNode } from "../../../nodes/js/Output"; import { OutputAmbientLightJsNode } from "../../../nodes/js/OutputAmbientLight"; import { OutputAreaLightJsNode } from "../../../nodes/js/OutputAreaLight"; import { OutputDirectionalLightJsNode } from "../../../nodes/js/OutputDirectionalLight"; import { OutputHemisphereLightJsNode } from "../../../nodes/js/OutputHemisphereLight"; import { OutputPointLightJsNode } from "../../../nodes/js/OutputPointLight"; import { OutputSpotLightJsNode } from "../../../nodes/js/OutputSpotLight"; import { ParamJsNode } from "../../../nodes/js/Param"; import { ParticlesSystemResetJsNode } from "../../../nodes/js/ParticlesSystemReset"; import { ParticlesSystemStepSimulationJsNode } from "../../../nodes/js/ParticlesSystemStepSimulation"; import { PauseAudioSourceJsNode } from "../../../nodes/js/PauseAudioSource"; import { PhysicsDebugUpdateJsNode } from "../../../nodes/js/PhysicsDebugUpdate"; import { PhysicsPlayerUpdateJsNode } from "../../../nodes/js/PhysicsPlayerUpdate"; import { PhysicsRBDAddForceJsNode } from "../../../nodes/js/PhysicsRBDAddForce"; import { PhysicsRBDAddForceAtPointJsNode } from "../../../nodes/js/PhysicsRBDAddForceAtPoint"; import { PhysicsRBDAddTorqueJsNode } from "../../../nodes/js/PhysicsRBDAddTorque"; import { PhysicsRBDApplyImpulseJsNode } from "../../../nodes/js/PhysicsRBDApplyImpulse"; import { PhysicsRBDApplyTorqueImpulseJsNode } from "../../../nodes/js/PhysicsRBDApplyTorqueImpulse"; import { PhysicsRBDApplyImpulseAtPointJsNode } from "../../../nodes/js/PhysicsRBDApplyImpulseAtPoint"; import { PhysicsRBDResetAllJsNode } from "../../../nodes/js/PhysicsRBDResetAll"; import { PhysicsRBDResetForcesJsNode } from "../../../nodes/js/PhysicsRBDResetForces"; import { PhysicsRBDResetTorquesJsNode } from "../../../nodes/js/PhysicsRBDResetTorques"; import { PhysicsWorldResetJsNode } from "../../../nodes/js/PhysicsWorldReset"; import { PhysicsWorldStepSimulationJsNode } from "../../../nodes/js/PhysicsWorldStepSimulation"; import { PlaneJsNode } from "../../../nodes/js/Plane"; import { PlayAnimationJsNode } from "../../../nodes/js/PlayAnimation"; import { PlayAudioSourceJsNode } from "../../../nodes/js/PlayAudioSource"; import { PlayerModeJsNode } from "../../../nodes/js/PlayerMode"; import { PlayerUpdateJsNode } from "../../../nodes/js/PlayerUpdate"; import { PlayInstrumentNoteJsNode } from "../../../nodes/js/PlayInstrumentNote"; import { PolarTransformJsNode } from "../../../nodes/js/PolarTransform"; import { PowJsNode } from "../../../nodes/js/Pow"; import { PressButtonParamJsNode } from "../../../nodes/js/PressButtonParam"; import { PreviousValueJsNode } from "../../../nodes/js/PreviousValue"; import { PrimitiveNeighbourIndexJsNode } from "../../../nodes/js/PrimitiveNeighbourIndex"; import { PrimitiveNeighboursCountJsNode } from "../../../nodes/js/PrimitiveNeighboursCount"; import { QuaternionJsNode } from "../../../nodes/js/Quaternion"; import { QuaternionAngleToJsNode } from "../../../nodes/js/QuaternionAngleTo"; import { QuaternionSlerpJsNode } from "../../../nodes/js/QuaternionSlerp"; import { RadToDegJsNode } from "../../../nodes/js/RadToDeg"; import { RandJsNode } from "../../../nodes/js/Rand"; import { RandomJsNode } from "../../../nodes/js/Random"; import { RayJsNode } from "../../../nodes/js/Ray"; import { RayFromCameraJsNode } from "../../../nodes/js/RayFromCamera"; import { RayFromCursorJsNode } from "../../../nodes/js/RayFromCursor"; import { RayIntersectBoxJsNode } from "../../../nodes/js/RayIntersectBox"; import { RayIntersectsBoxJsNode } from "../../../nodes/js/RayIntersectsBox"; import { RayIntersectObjectJsNode } from "../../../nodes/js/RayIntersectObject"; import { RayIntersectsObjectJsNode } from "../../../nodes/js/RayIntersectsObject"; import { RayDistanceToPlaneJsNode } from "../../../nodes/js/RayDistanceToPlane"; import { RayIntersectPlaneJsNode } from "../../../nodes/js/RayIntersectPlane"; import { RayIntersectsPlaneJsNode } from "../../../nodes/js/RayIntersectsPlane"; import { RayIntersectSphereJsNode } from "../../../nodes/js/RayIntersectSphere"; import { RayIntersectsSphereJsNode } from "../../../nodes/js/RayIntersectsSphere"; import { RenderPixelJsNode } from "../../../nodes/js/RenderPixel"; import { RotateJsNode } from "../../../nodes/js/Rotate"; import { RoundJsNode } from "../../../nodes/js/Round"; import { SDF2DBoxJsNode } from "../../../nodes/js/SDF2DBox"; import { SDF2DCircleJsNode } from "../../../nodes/js/SDF2DCircle"; import { SDF2DCrossJsNode } from "../../../nodes/js/SDF2DCross"; import { SDF2DHeartJsNode } from "../../../nodes/js/SDF2DHeart"; import { SDF2DRoundedXJsNode } from "../../../nodes/js/SDF2DRoundedX"; import { SDFBoxJsNode } from "../../../nodes/js/SDFBox"; import { SDFElongateJsNode } from "../../../nodes/js/SDFElongate"; import { SDFIntersectJsNode } from "../../../nodes/js/SDFIntersect"; import { SDFOnionJsNode } from "../../../nodes/js/SDFOnion"; import { SDFPlaneJsNode } from "../../../nodes/js/SDFPlane"; import { SDFRevolutionJsNode } from "../../../nodes/js/SDFRevolution"; import { SDFSphereJsNode } from "../../../nodes/js/SDFSphere"; import { SDFSubtractJsNode } from "../../../nodes/js/SDFSubtract"; import { SDFTorusJsNode } from "../../../nodes/js/SDFTorus"; import { SDFTransformJsNode } from "../../../nodes/js/SDFTransform"; import { SDFTubeJsNode } from "../../../nodes/js/SDFTube"; import { SDFUnionJsNode } from "../../../nodes/js/SDFUnion"; import { SetCameraViewOffsetJsNode } from "../../../nodes/js/SetCameraViewOffset"; import { SetClothConstraintPositionJsNode } from "../../../nodes/js/SetClothConstraintPosition"; import { SetCSSObjectClassJsNode } from "../../../nodes/js/SetCSSObjectClass"; import { SetGeometryInstanceAttributeJsNode } from "../../../nodes/js/SetGeometryInstanceAttribute"; import { SetGeometryInstancePositionsJsNode } from "../../../nodes/js/SetGeometryInstancePositions"; import { SetGeometryInstanceQuaternionsJsNode } from "../../../nodes/js/SetGeometryInstanceQuaternions"; import { SetGeometryInstanceScalesJsNode } from "../../../nodes/js/SetGeometryInstanceScales"; import { SetGeometryInstanceTransformsJsNode } from "../../../nodes/js/SetGeometryInstanceTransforms"; import { SetGeometryPositionsJsNode } from "../../../nodes/js/SetGeometryPositions"; import { SetInstanceAttributeJsNode } from "../../../nodes/js/SetInstanceAttribute"; import { SetInstanceLookAtJsNode } from "../../../nodes/js/SetInstanceLookAt"; import { SetInstancePositionJsNode } from "../../../nodes/js/SetInstancePosition"; import { SetInstanceQuaternionJsNode } from "../../../nodes/js/SetInstanceQuaternion"; import { SetInstanceScaleJsNode } from "../../../nodes/js/SetInstanceScale"; import { SetMaterialAlphaMapJsNode } from "../../../nodes/js/SetMaterialAlphaMap"; import { SetMaterialAOMapJsNode } from "../../../nodes/js/SetMaterialAOMap"; import { SetMaterialColorJsNode } from "../../../nodes/js/SetMaterialColor"; import { SetMaterialDisplacementMapJsNode } from "../../../nodes/js/SetMaterialDisplacementMap"; import { SetMaterialEmissiveColorJsNode } from "../../../nodes/js/SetMaterialEmissiveColor"; import { SetMaterialEnvMapJsNode } from "../../../nodes/js/SetMaterialEnvMap"; import { SetMaterialEmissiveMapJsNode } from "../../../nodes/js/SetMaterialEmissiveMap"; import { SetMaterialMapJsNode } from "../../../nodes/js/SetMaterialMap"; import { SetMaterialMetalnessMapJsNode } from "../../../nodes/js/SetMaterialMetalnessMap"; import { SetMaterialRoughnessMapJsNode } from "../../../nodes/js/SetMaterialRoughnessMap"; import { SetMaterialOpacityJsNode } from "../../../nodes/js/SetMaterialOpacity"; import { SetMaterialUniformJsNode } from "../../../nodes/js/SetMaterialUniform"; import { SetObjectAttributeJsNode } from "../../../nodes/js/SetObjectAttribute"; import { SetObjectCastShadowJsNode } from "../../../nodes/js/SetObjectCastShadow"; import { SetObjectFrustumCulledJsNode } from "../../../nodes/js/SetObjectFrustumCulled"; import { SetObjectLookAtJsNode } from "../../../nodes/js/SetObjectLookAt"; import { SetObjectMaterialJsNode } from "../../../nodes/js/SetObjectMaterial"; import { SetObjectMaterialColorJsNode } from "../../../nodes/js/SetObjectMaterialColor"; import { SetObjectMatrixJsNode } from "../../../nodes/js/SetObjectMatrix"; import { SetObjectMatrixAutoUpdateJsNode } from "../../../nodes/js/SetObjectMatrixAutoUpdate"; import { SetObjectPositionJsNode } from "../../../nodes/js/SetObjectPosition"; import { SetObjectReceiveShadowJsNode } from "../../../nodes/js/SetObjectReceiveShadow"; import { SetObjectRotationJsNode } from "../../../nodes/js/SetObjectRotation"; import { SetObjectQuaternionJsNode } from "../../../nodes/js/SetObjectQuaternion"; import { SetObjectPolarTransformJsNode } from "../../../nodes/js/SetObjectPolarTransform"; import { SetObjectScaleJsNode } from "../../../nodes/js/SetObjectScale"; import { SetObjectVisibleJsNode } from "../../../nodes/js/SetObjectVisible"; import { SetParamJsNode } from "../../../nodes/js/SetParam"; import { SetPerspectiveCameraFovJsNode } from "../../../nodes/js/SetPerspectiveCameraFov"; import { SetPerspectiveCameraNearFarJsNode } from "../../../nodes/js/SetPerspectiveCameraNearFar"; import { SetPhysicsRBDAngularVelocityJsNode } from "../../../nodes/js/SetPhysicsRBDAngularVelocity"; import { SetPhysicsRBDLinearVelocityJsNode } from "../../../nodes/js/SetPhysicsRBDLinearVelocity"; import { SetPhysicsRBDPositionJsNode } from "../../../nodes/js/SetPhysicsRBDPosition"; import { SetPhysicsRBDRotationJsNode } from "../../../nodes/js/SetPhysicsRBDRotation"; import { SetPhysicsRBDCapsulePropertyJsNode } from "../../../nodes/js/SetPhysicsRBDCapsuleProperty"; import { SetPhysicsRBDConePropertyJsNode } from "../../../nodes/js/SetPhysicsRBDConeProperty"; import { SetPhysicsRBDCylinderPropertyJsNode } from "../../../nodes/js/SetPhysicsRBDCylinderProperty"; import { SetPhysicsRBDCuboidPropertyJsNode } from "../../../nodes/js/SetPhysicsRBDCuboidProperty"; import { SetPhysicsRBDSpherePropertyJsNode } from "../../../nodes/js/SetPhysicsRBDSphereProperty"; import { SetPhysicsWorldGravityJsNode } from "../../../nodes/js/SetPhysicsWorldGravity"; import { SetPlayerInputJsNode } from "../../../nodes/js/SetPlayerInput"; import { SetPointAttributeJsNode } from "../../../nodes/js/SetPointAttribute"; import { SetPointPositionJsNode } from "../../../nodes/js/SetPointPosition"; import { SetSoftBodyPositionJsNode } from "../../../nodes/js/SetSoftBodyPosition"; import { SetSoftBodyVelocityJsNode } from "../../../nodes/js/SetSoftBodyVelocity"; import { SetSoftBodyConstraintPositionJsNode } from "../../../nodes/js/SetSoftBodyConstraintPosition"; import { SetSpotLightIntensityJsNode } from "../../../nodes/js/SetSpotLightIntensity"; import { SetViewerJsNode } from "../../../nodes/js/SetViewer"; import { SetViewerControlsJsNode } from "../../../nodes/js/SetViewerControls"; import "../../../nodes/js/SetWFCSoftConstraint"; import { SignJsNode } from "../../../nodes/js/Sign"; import { SinJsNode } from "../../../nodes/js/Sin"; import { SmoothstepJsNode } from "../../../nodes/js/Smoothstep"; import { SmootherstepJsNode } from "../../../nodes/js/Smootherstep"; import { SoftBodySolverStepSimulationJsNode } from "../../../nodes/js/SoftBodySolverStepSimulation"; import { SphereJsNode } from "../../../nodes/js/Sphere"; import { SqrtJsNode } from "../../../nodes/js/Sqrt"; import { SubnetJsNode } from "../../../nodes/js/Subnet"; import { SubnetInputJsNode } from "../../../nodes/js/SubnetInput"; import { SubnetOutputJsNode } from "../../../nodes/js/SubnetOutput"; import { SubtractJsNode } from "../../../nodes/js/Subtract"; import { SwitchJsNode } from "../../../nodes/js/Switch"; import { TanJsNode } from "../../../nodes/js/Tan"; import { TrackFaceJsNode } from "../../../nodes/js/TrackFace"; import { TrackHandJsNode } from "../../../nodes/js/TrackHand"; import { TriggerDelayJsNode } from "../../../nodes/js/TriggerDelay"; import { TriggerFilterJsNode } from "../../../nodes/js/TriggerFilter"; import { TriggerSwitchJsNode } from "../../../nodes/js/TriggerSwitch"; import { TriggerTwoWaySwitchJsNode } from "../../../nodes/js/TriggerTwoWaySwitch"; import { TwoWaySwitchJsNode } from "../../../nodes/js/TwoWaySwitch"; import { Vector3AngleToJsNode } from "../../../nodes/js/Vector3AngleTo"; import { Vector3ProjectJsNode } from "../../../nodes/js/Vector3Project"; import { Vector3ProjectOnPlaneJsNode } from "../../../nodes/js/Vector3ProjectOnPlane"; import { Vector3UnprojectJsNode } from "../../../nodes/js/Vector3Unproject"; import { Vec2ToFloatJsNode } from "../../../nodes/js/Vec2ToFloat"; import { Vec2ToVec3JsNode } from "../../../nodes/js/Vec2ToVec3"; import { Vec3ToFloatJsNode } from "../../../nodes/js/Vec3ToFloat"; import { Vec3ToColorJsNode } from "../../../nodes/js/Vec3ToColor"; import { Vec3ToVec2JsNode } from "../../../nodes/js/Vec3ToVec2"; import { Vec3ToVec4JsNode } from "../../../nodes/js/Vec3ToVec4"; import { Vec4ToFloatJsNode } from "../../../nodes/js/Vec4ToFloat"; import { Vec4ToVec3JsNode } from "../../../nodes/js/Vec4ToVec3"; import { Vector2JsNode } from "../../../nodes/js/Vector2"; import { Vector3JsNode } from "../../../nodes/js/Vector3"; import { Vector3ApplyMatrix4JsNode } from "../../../nodes/js/Vector3ApplyMatrix4"; import { Vector4JsNode } from "../../../nodes/js/Vector4"; import "../../../nodes/js/WFCBuild"; import { SopType } from "./types/Sop"; import { NetworkNodeType, NodeContext } from "../../NodeContext"; import { JsType } from "./types/Js"; const sopType = (type) => `${NodeContext.SOP}/${type}`; const jsType = (type) => `${NodeContext.JS}/${type}`; const JS_SUBNET_TYPE = jsType(NetworkNodeType.SUBNET); const JS_FOR_LOOP_TYPE = jsType(JsType.FOR_LOOP); const JS_SUBNET_TYPES = [JS_SUBNET_TYPE, JS_FOR_LOOP_TYPE]; const SUBNET_CHILD_OPTION = { only: JS_SUBNET_TYPES }; const ONLY_WITH_GLOBALS = { only: [ sopType(SopType.ENTITY_BUILDER), sopType(SopType.INSTANCE_BUILDER), sopType(SopType.OBJECT_BUILDER), sopType(SopType.POINT_BUILDER), sopType(SopType.SDF_BUILDER), sopType(SopType.TET_SOFT_BODY_SOLVER) ] }; const ONLY_OBJECT_BUILDER = { only: [sopType(SopType.OBJECT_BUILDER), ...JS_SUBNET_TYPES] }; const ONLY_ENTITY_BUILDERS = { only: [ sopType(SopType.ENTITY_BUILDER), sopType(SopType.INSTANCE_BUILDER), sopType(SopType.OBJECT_BUILDER), sopType(SopType.POINT_BUILDER), ...JS_SUBNET_TYPES ] }; const ONLY_ENTITY_BUILDER = { only: [sopType(SopType.ENTITY_BUILDER), ...JS_SUBNET_TYPES] }; const ACTOR_OBJECTS = [ sopType(SopType.ACTOR), sopType(SopType.PHYSICS_WORLD), sopType(SopType.PHYSICS_DEBUG), sopType(SopType.PHYSICS_PLAYER), // sopType(SopType.TET_SOFT_BODY_SOLVER), ...[ NodeContext.ANIM, NodeContext.AUDIO, NodeContext.COP, NodeContext.EVENT, NodeContext.MAT, NodeContext.OBJ, NodeContext.POST, NodeContext.ROP, NodeContext.SOP ].map((c) => `${c}/${NetworkNodeType.ACTOR}`) ]; const ACTOR_POINTS = [sopType(SopType.ACTOR_POINT)]; const ACTOR_INSTANCES = [sopType(SopType.ACTOR_INSTANCE)]; const ONLY_ACTOR = { only: ACTOR_OBJECTS }; const ONLY_ACTOR_POINT = { only: ACTOR_POINTS }; const ONLY_ACTOR_INSTANCE = { only: ACTOR_INSTANCES }; const ONLY_ACTOR_AND_POINT = { only: [...ACTOR_OBJECTS, ...ACTOR_POINTS, ...ACTOR_INSTANCES] }; export class JsRegister { static run(poly) { poly.registerNode(AttributeJsNode, CATEGORY_JS.GLOBALS, ONLY_ENTITY_BUILDERS); poly.registerNode(AbsJsNode, CATEGORY_JS.MATH); poly.registerNode(AcosJsNode, CATEGORY_JS.MATH); poly.registerNode(AddJsNode, CATEGORY_JS.MATH); poly.registerNode(AndJsNode, CATEGORY_JS.LOGIC); poly.registerNode(AnimationActionJsNode, CATEGORY_JS.ANIMATION, ONLY_ACTOR); poly.registerNode(AnimationActionCrossFadeJsNode, CATEGORY_JS.ANIMATION, ONLY_ACTOR); poly.registerNode(AnimationActionFadeOutJsNode, CATEGORY_JS.ANIMATION, ONLY_ACTOR); poly.registerNode(AnimationActionFadeInJsNode, CATEGORY_JS.ANIMATION, ONLY_ACTOR); poly.registerNode(AnimationActionPlayJsNode, CATEGORY_JS.ANIMATION, ONLY_ACTOR); poly.registerNode(AnimationActionStopJsNode, CATEGORY_JS.ANIMATION, ONLY_ACTOR); poly.registerNode(AnimationMixerJsNode, CATEGORY_JS.ANIMATION, ONLY_ACTOR); poly.registerNode(AnimationMixerUpdateJsNode, CATEGORY_JS.ANIMATION, ONLY_ACTOR); poly.registerNode(AnyTriggerJsNode, CATEGORY_JS.ANIMATION, ONLY_ACTOR); poly.registerNode(ArrayElementJsNode, CATEGORY_JS.CONVERSION); poly.registerNode(ArrayLengthJsNode, CATEGORY_JS.LOGIC); poly.registerNode(ArrayPopJsNode, CATEGORY_JS.LOGIC); poly.registerNode(ArrayShiftJsNode, CATEGORY_JS.LOGIC); poly.registerNode(AsinJsNode, CATEGORY_JS.MATH); poly.registerNode(AtanJsNode, CATEGORY_JS.MATH); poly.registerNode(BoolToIntJsNode, CATEGORY_JS.CONVERSION); poly.registerNode(Box3JsNode, CATEGORY_JS.MATH); poly.registerNode(Box3ContainsPointJsNode, CATEGORY_JS.MATH); poly.registerNode(Box3IntersectsBox3JsNode, CATEGORY_JS.MATH); poly.registerNode(Box3SetFromObjectJsNode, CATEGORY_JS.MATH); poly.registerNode(CatmullRomCurve3GetPointJsNode, CATEGORY_JS.MATH); poly.registerNode(CeilJsNode, CATEGORY_JS.MATH); poly.registerNode(ClampJsNode, CATEGORY_JS.MATH); poly.registerNode(ClothSolverResetJsNode, CATEGORY_JS.PHYSICS); poly.registerNode(ClothSolverStepSimulationJsNode, CATEGORY_JS.PHYSICS); poly.registerNode(ClothSolverUpdateMaterialJsNode, CATEGORY_JS.PHYSICS); poly.registerNode(CodeJsNode, CATEGORY_JS.ADVANCED, ONLY_ACTOR); poly.registerNode(ColorToVec3JsNode, CATEGORY_JS.CONVERSION); poly.registerNode(CompareJsNode, CATEGORY_JS.LOGIC); poly.registerNode(ComplementJsNode, CATEGORY_JS.MATH); poly.registerNode(ComputeVelocityJsNode, CATEGORY_JS.MATH); poly.registerNode(ConstantJsNode, CATEGORY_JS.GLOBALS); poly.registerNode(CookNodeJsNode, CATEGORY_JS.ACTION, ONLY_ACTOR); poly.registerNode(CosJsNode, CATEGORY_JS.MATH); poly.registerNode(CreateClothConstraintJsNode, CATEGORY_JS.PHYSICS); poly.registerNode(CreateObjectsJsNode, CATEGORY_JS.ACTION); poly.registerNode(CreatePhysicsRBDKinematicConstraintJsNode, CATEGORY_JS.PHYSICS); poly.registerNode(CreatePhysicsRBDsJsNode, CATEGORY_JS.PHYSICS); poly.registerNode(CreateSoftBodyConstraintJsNode, CATEGORY_JS.PHYSICS); poly.registerNode(CrossJsNode, CATEGORY_JS.MATH); poly.registerNode(CursorJsNode, CATEGORY_JS.INPUTS, ONLY_ACTOR); poly.registerNode(CursorToUvJsNode, CATEGORY_JS.INPUTS); poly.registerNode(DebugJsNode, CATEGORY_JS.FLOW, ONLY_ACTOR); poly.registerNode(DeformGeometryCubeLatticeJsNode, CATEGORY_JS.GEOMETRY, ONLY_ACTOR); poly.registerNode(DeleteClothConstraintJsNode, CATEGORY_JS.ACTION, ONLY_ACTOR); poly.registerNode(DeleteObjectJsNode, CATEGORY_JS.ACTION, ONLY_ACTOR); poly.registerNode(DeletePhysicsRBDJsNode, CATEGORY_JS.ACTION, ONLY_ACTOR); poly.registerNode(DeletePhysicsRBDKinematicConstraintJsNode, CATEGORY_JS.ACTION, ONLY_ACTOR); poly.registerNode(DeletePhysicsRBDConstraintsJsNode, CATEGORY_JS.ACTION, ONLY_ACTOR); poly.registerNode(DeleteSoftBodyConstraintJsNode, CATEGORY_JS.ACTION, ONLY_ACTOR); poly.registerNode(DegToRadJsNode, CATEGORY_JS.MATH); poly.registerNode(DeviceOrientationJsNode, CATEGORY_JS.GLOBALS, ONLY_ACTOR); poly.registerNode(DistanceJsNode, CATEGORY_JS.MATH); poly.registerNode(DivideJsNode, CATEGORY_JS.MATH); poly.registerNode(DotJsNode, CATEGORY_JS.MATH); poly.registerNode(EasingJsNode, CATEGORY_JS.MATH); poly.registerNode(ElementsToArrayJsNode, CATEGORY_JS.CONVERSION); poly.registerNode(EulerJsNode, CATEGORY_JS.MATH); poly.registerNode(EulerFromQuaternionJsNode, CATEGORY_JS.MATH); poly.registerNode(FitJsNode, CATEGORY_JS.MATH); poly.registerNode(FloatToColorJsNode, CATEGORY_JS.CONVERSION); poly.registerNode(FloatToIntJsNode, CATEGORY_JS.CONVERSION); poly.registerNode(FloatToVec2JsNode, CATEGORY_JS.CONVERSION); poly.registerNode(FloatToVec3JsNode, CATEGORY_JS.CONVERSION); poly.registerNode(FloatToVec4JsNode, CATEGORY_JS.CONVERSION); poly.registerNode(FloorJsNode, CATEGORY_JS.MATH); poly.registerNode(ForLoopJsNode, CATEGORY_JS.FLOW, ONLY_ENTITY_BUILDER); poly.registerNode(GeolocationCurrentPositionJsNode, CATEGORY_JS.GLOBALS, ONLY_ACTOR); poly.registerNode(GetBox3PropertyJsNode, CATEGORY_JS.MATH); poly.registerNode(GetChildrenAttributesJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(GetChildrenPhysicsRBDPropertiesJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(GetChildrenPropertiesJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(GetDefaultCameraJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(GetGeometryBoundingBoxJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(GetGeometryNodeObjectsJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(GetGeometryPositionsJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(GetIntersectionAttributeJsNode, CATEGORY_JS.GET); poly.registerNode(GetIntersectionPropertyJsNode, CATEGORY_JS.GET); poly.registerNode(GetInstanceAttributeJsNode, CATEGORY_JS.GET, ONLY_ACTOR_INSTANCE); poly.registerNode(GetInstancePropertyJsNode, CATEGORY_JS.GET, ONLY_ACTOR_INSTANCE); poly.registerNode(GetMaterialJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(GetObjectChildJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(GetObjectJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(GetObjectAttributeJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(GetObjectPropertyJsNode, CATEGORY_JS.GET); poly.registerNode(GetObjectUserDataJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(GetObjectWorldPositionJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(GetNodeJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(GetParamJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(GetParentJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(GetPlanePropertyJsNode, CATEGORY_JS.MATH); poly.registerNode(GetPhysicsRBDJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(GetPhysicsRBDCapsulePropertyJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(GetPhysicsRBDConePropertyJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(GetPhysicsRBDCylinderPropertyJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(GetPhysicsRBDCuboidPropertyJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(GetPhysicsRBDSpherePropertyJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(GetPhysicsRBDPropertyJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(GetRayPropertyJsNode, CATEGORY_JS.MATH); poly.registerNode(GetPointAttributeJsNode, CATEGORY_JS.GET, ONLY_ACTOR_POINT); poly.registerNode(GetPointPropertyJsNode, CATEGORY_JS.GET, ONLY_ACTOR_POINT); poly.registerNode(GetPrimitiveAttributeJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(GetSibblingJsNode, CATEGORY_JS.GET); poly.registerNode(GetSpherePropertyJsNode, CATEGORY_JS.MATH); poly.registerNode(GetTextureJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(GetTrackedHandPropertyJsNode, CATEGORY_JS.COMPUTER_VISION, ONLY_ACTOR); poly.registerNode(GetVideoPropertyJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(GetWebXRARSessionPropertyJsNode, CATEGORY_JS.WEBXR, ONLY_ACTOR); poly.registerNode(GetWebXRControllerPropertyJsNode, CATEGORY_JS.WEBXR, ONLY_ACTOR); poly.registerNode(GetWebXRTrackedMarkerPropertyJsNode, CATEGORY_JS.WEBXR, ONLY_ACTOR); poly.registerNode(GlobalsJsNode, CATEGORY_JS.GLOBALS, ONLY_WITH_GLOBALS); poly.registerNode(GlobalsAmbientLightJsNode, CATEGORY_JS.GLOBALS, ONLY_OBJECT_BUILDER); poly.registerNode(GlobalsAreaLightJsNode, CATEGORY_JS.GLOBALS, ONLY_OBJECT_BUILDER); poly.registerNode(GlobalsDirectionalLightJsNode, CATEGORY_JS.GLOBALS, ONLY_OBJECT_BUILDER); poly.registerNode(GlobalsHemisphereLightJsNode, CATEGORY_JS.GLOBALS, ONLY_OBJECT_BUILDER); poly.registerNode(GlobalsPointLightJsNode, CATEGORY_JS.GLOBALS, ONLY_OBJECT_BUILDER); poly.registerNode(GlobalsSpotLightJsNode, CATEGORY_JS.GLOBALS, ONLY_OBJECT_BUILDER); poly.registerNode(HsvToRgbJsNode, CATEGORY_JS.CONVERSION); poly.registerNode(ImportAttributeJsNode, CATEGORY_JS.GLOBALS, ONLY_ENTITY_BUILDER); poly.registerNode(IntToBoolJsNode, CATEGORY_JS.CONVERSION); poly.registerNode(IntToFloatJsNode, CATEGORY_JS.CONVERSION); poly.registerNode(IsDefinedJsNode, CATEGORY_JS.FLOW); poly.registerNode(IsTouchDeviceJsNode, CATEGORY_JS.FLOW); poly.registerNode(KeyframesJsNode, CATEGORY_JS.ANIMATION); poly.registerNode(LengthJsNode, CATEGORY_JS.MATH); poly.registerNode(LerpJsNode, CATEGORY_JS.MATH); poly.registerNode(ManhattanDistanceJsNode, CATEGORY_JS.MATH); poly.registerNode(Matrix4LookAtJsNode, CATEGORY_JS.MATH); poly.registerNode(Matrix4MakeTranslationJsNode, CATEGORY_JS.MATH); poly.registerNode(Matrix4MultiplyJsNode, CATEGORY_JS.MATH); poly.registerNode(MaxJsNode, CATEGORY_JS.MATH); poly.registerNode(MaxLengthJsNode, CATEGORY_JS.MATH); poly.registerNode(MinJsNode, CATEGORY_JS.MATH); poly.registerNode(MixJsNode, CATEGORY_JS.MATH); poly.registerNode(ModJsNode, CATEGORY_JS.MATH); poly.registerNode(MultJsNode, CATEGORY_JS.MATH); poly.registerNode(MultAddJsNode, CATEGORY_JS.MATH); poly.registerNode(MultScalarJsNode, CATEGORY_JS.MATH); poly.registerNode(NearestPositionJsNode, CATEGORY_JS.MATH); poly.registerNode(NegateJsNode, CATEGORY_JS.MATH); poly.registerNode(NoiseImprovedJsNode, CATEGORY_JS.MATH); poly.registerNode(NoiseSimplexJsNode, CATEGORY_JS.MATH); poly.registerNode(NormalizeJsNode, CATEGORY_JS.MATH); poly.registerNode(NullJsNode, CATEGORY_JS.FLOW); poly.registerNode(Object3DLocalToWorldJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(Object3DWorldToLocalJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(Object3DUpdateMatrixJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(Object3DUpdateWorldMatrixJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(ObjectDispatchEventJsNode, CATEGORY_JS.GET, ONLY_ACTOR); poly.registerNode(OnChildAttributeUpdateJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnKeyJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnKeydownJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnKeypressJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnKeyupJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnManualTriggerJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnMapboxCameraMoveJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnMapboxCameraMoveEndJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnMapboxCameraMoveStartJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectAttributeUpdateJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectBeforeDeleteJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectClickJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectClickGPUJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectContextMenuJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectContextMenuGPUJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectDoubleClickJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectDispatchEventJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectHoverJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectHoverGPUJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectLongPressJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectLongPressGPUJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectMouseClickJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectPointerdownJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectPointerdownGPUJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectPointerupJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectPointerupGPUJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectSwipeJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnObjectSwipeGPUJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnPerformanceChangeJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnPointerdownJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnPointerupJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnScenePauseJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnScenePlayJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnSceneResetJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnScrollJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnTickJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR_AND_POINT); poly.registerNode(OnVideoEventJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnViewerControlsEventJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OnWebXRControllerEventJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(OrJsNode, CATEGORY_JS.LOGIC); poly.registerNode(OutputJsNode, CATEGORY_JS.GLOBALS, ONLY_WITH_GLOBALS); poly.registerNode(OutputAmbientLightJsNode, CATEGORY_JS.GLOBALS, ONLY_OBJECT_BUILDER); poly.registerNode(OutputAreaLightJsNode, CATEGORY_JS.GLOBALS, ONLY_OBJECT_BUILDER); poly.registerNode(OutputDirectionalLightJsNode, CATEGORY_JS.GLOBALS, ONLY_OBJECT_BUILDER); poly.registerNode(OutputHemisphereLightJsNode, CATEGORY_JS.GLOBALS, ONLY_OBJECT_BUILDER); poly.registerNode(OutputPointLightJsNode, CATEGORY_JS.GLOBALS, ONLY_OBJECT_BUILDER); poly.registerNode(OutputSpotLightJsNode, CATEGORY_JS.GLOBALS, ONLY_OBJECT_BUILDER); poly.registerNode(ParamJsNode, CATEGORY_JS.GLOBALS); poly.registerNode(ParticlesSystemResetJsNode, CATEGORY_JS.PARTICLES, ONLY_ACTOR); poly.registerNode(ParticlesSystemStepSimulationJsNode, CATEGORY_JS.PARTICLES, ONLY_ACTOR); poly.registerNode(PauseAudioSourceJsNode, CATEGORY_JS.AUDIO, ONLY_ACTOR); poly.registerNode(PhysicsDebugUpdateJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(PhysicsPlayerUpdateJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(PhysicsRBDAddForceJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(PhysicsRBDAddForceAtPointJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(PhysicsRBDAddTorqueJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(PhysicsRBDApplyImpulseJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(PhysicsRBDApplyTorqueImpulseJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(PhysicsRBDApplyImpulseAtPointJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(PhysicsRBDResetAllJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(PhysicsRBDResetForcesJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(PhysicsRBDResetTorquesJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(PhysicsWorldResetJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(PhysicsWorldStepSimulationJsNode, CATEGORY_JS.PHYSICS, ONLY_ACTOR); poly.registerNode(PlaneJsNode, CATEGORY_JS.MATH); poly.registerNode(PlayAnimationJsNode, CATEGORY_JS.ACTION, ONLY_ACTOR); poly.registerNode(PlayAudioSourceJsNode, CATEGORY_JS.AUDIO, ONLY_ACTOR); poly.registerNode(PlayInstrumentNoteJsNode, CATEGORY_JS.AUDIO, ONLY_ACTOR); poly.registerNode(PlayerModeJsNode, CATEGORY_JS.LOGIC); poly.registerNode(PlayerUpdateJsNode, CATEGORY_JS.ACTION, ONLY_ACTOR); poly.registerNode(PolarTransformJsNode, CATEGORY_JS.MATH); poly.registerNode(PowJsNode, CATEGORY_JS.MATH); poly.registerNode(PressButtonParamJsNode, CATEGORY_JS.ACTION, ONLY_ACTOR); poly.registerNode(PreviousValueJsNode, CATEGORY_JS.ADVANCED, ONLY_ACTOR); poly.registerNode(PrimitiveNeighbourIndexJsNode, CATEGORY_JS.ADVANCED, ONLY_ENTITY_BUILDER); poly.registerNode(PrimitiveNeighboursCountJsNode, CATEGORY_JS.ADVANCED, ONLY_ENTITY_BUILDER); poly.registerNode(QuaternionJsNode, CATEGORY_JS.MATH); poly.registerNode(QuaternionAngleToJsNode, CATEGORY_JS.MATH); poly.registerNode(QuaternionSlerpJsNode, CATEGORY_JS.MATH); poly.registerNode(RadToDegJsNode, CATEGORY_JS.MATH); poly.registerNode(RandJsNode, CATEGORY_JS.MATH); poly.registerNode(RandomJsNode, CATEGORY_JS.MATH); poly.registerNode(RayJsNode, CATEGORY_JS.MATH); poly.registerNode(RayFromCameraJsNode, CATEGORY_JS.INPUTS); poly.registerNode(RayFromCursorJsNode, CATEGORY_JS.INPUTS); poly.registerNode(RayIntersectBoxJsNode, CATEGORY_JS.MATH); poly.registerNode(RayIntersectsBoxJsNode, CATEGORY_JS.MATH); poly.registerNode(RayIntersectObjectJsNode, CATEGORY_JS.MATH); poly.registerNode(RayIntersectsObjectJsNode, CATEGORY_JS.MATH); poly.registerNode(RayDistanceToPlaneJsNode, CATEGORY_JS.MATH); poly.registerNode(RayIntersectPlaneJsNode, CATEGORY_JS.MATH); poly.registerNode(RayIntersectsPlaneJsNode, CATEGORY_JS.MATH); poly.registerNode(RayIntersectSphereJsNode, CATEGORY_JS.MATH); poly.registerNode(RayIntersectsSphereJsNode, CATEGORY_JS.MATH); poly.registerNode(RenderPixelJsNode, CATEGORY_JS.ADVANCED, ONLY_ACTOR); poly.registerNode(RotateJsNode, CATEGORY_JS.MATH); poly.registerNode(RoundJsNode, CATEGORY_JS.MATH); poly.registerNode(SDF2DBoxJsNode, CATEGORY_JS.SDF_PRIMITIVES_2D); poly.registerNode(SDF2DCircleJsNode, CATEGORY_JS.SDF_PRIMITIVES_2D); poly.registerNode(SDF2DCrossJsNode, CATEGORY_JS.SDF_PRIMITIVES_2D); poly.registerNode(SDF2DHeartJsNode, CATEGORY_JS.SDF_PRIMITIVES_2D); poly.registerNode(SDF2DRoundedXJsNode, CATEGORY_JS.SDF_PRIMITIVES_2D); poly.registerNode(SDFBoxJsNode, CATEGORY_JS.SDF_PRIMITIVES); poly.registerNode(SDFElongateJsNode, CATEGORY_JS.SDF_MODIFIERS); poly.registerNode(SDFIntersectJsNode, CATEGORY_JS.SDF_MODIFIERS); poly.registerNode(SDFOnionJsNode, CATEGORY_JS.SDF_PRIMITIVES); poly.registerNode(SDFPlaneJsNode, CATEGORY_JS.SDF_PRIMITIVES); poly.registerNode(SDFRevolutionJsNode, CATEGORY_JS.SDF_MODIFIERS); poly.registerNode(SDFSphereJsNode, CATEGORY_JS.SDF_PRIMITIVES); poly.registerNode(SDFSubtractJsNode, CATEGORY_JS.SDF_MODIFIERS); poly.registerNode(SDFTorusJsNode, CATEGORY_JS.SDF_PRIMITIVES); poly.registerNode(SDFTransformJsNode, CATEGORY_JS.SDF_PRIMITIVES); poly.registerNode(SDFTubeJsNode, CATEGORY_JS.SDF_PRIMITIVES); poly.registerNode(SDFUnionJsNode, CATEGORY_JS.SDF_MODIFIERS); poly.registerNode(SetCameraViewOffsetJsNode, CATEGORY_JS.ACTION, ONLY_ACTOR); poly.registerNode(SetClothConstraintPositionJsNode, CATEGORY_JS.EVENTS, ONLY_ACTOR); poly.registerNode(SetCSSObjectClassJsNode, CATEGORY_JS.ACTION, ONLY_ACTOR); poly.registerNode(SetGeometryInstanceAttributeJsNode, CATEGORY_JS.ACTION, ONLY_ACTOR); poly.registerNode(SetGeometryInstancePositionsJsNode, CATEGORY_JS.ACTION, ONLY_ACTOR); poly.registerNode(SetGeometryInstanceQuaternionsJsNode, CATEGORY_JS.ACTION, ONLY_ACTOR); poly.registerNode(SetGeometryInstanceScalesJsNode, CATEGORY_JS.ACTION, ONLY