@nativescript/canvas-three 2.0.0-webgpu.27 → 2.0.0-webgpu.29
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/package.json +1 -1
- package/three/src/Three.Legacy.d.ts +13 -13
- package/three/src/Three.WebGPU.d.ts +172 -187
- package/three/src/Three.d.ts +189 -213
- package/three/src/animation/AnimationAction.d.ts +70 -70
- package/three/src/animation/AnimationClip.d.ts +41 -50
- package/three/src/animation/AnimationMixer.d.ts +26 -30
- package/three/src/animation/AnimationObjectGroup.d.ts +13 -13
- package/three/src/animation/AnimationUtils.d.ts +11 -31
- package/three/src/animation/KeyframeTrack.d.ts +49 -49
- package/three/src/animation/PropertyBinding.d.ts +27 -27
- package/three/src/animation/PropertyMixer.d.ts +13 -13
- package/three/src/animation/tracks/BooleanKeyframeTrack.d.ts +6 -6
- package/three/src/animation/tracks/ColorKeyframeTrack.d.ts +7 -7
- package/three/src/animation/tracks/NumberKeyframeTrack.d.ts +7 -7
- package/three/src/animation/tracks/QuaternionKeyframeTrack.d.ts +7 -7
- package/three/src/animation/tracks/StringKeyframeTrack.d.ts +6 -6
- package/three/src/animation/tracks/VectorKeyframeTrack.d.ts +7 -7
- package/three/src/audio/Audio.d.ts +241 -241
- package/three/src/audio/AudioAnalyser.d.ts +23 -23
- package/three/src/audio/AudioContext.d.ts +9 -9
- package/three/src/audio/AudioListener.d.ts +56 -56
- package/three/src/audio/PositionalAudio.d.ts +58 -58
- package/three/src/cameras/ArrayCamera.d.ts +17 -17
- package/three/src/cameras/Camera.d.ts +55 -55
- package/three/src/cameras/CubeCamera.d.ts +29 -29
- package/three/src/cameras/OrthographicCamera.d.ts +137 -144
- package/three/src/cameras/PerspectiveCamera.d.ts +227 -227
- package/three/src/cameras/StereoCamera.d.ts +31 -31
- package/three/src/constants.d.ts +134 -258
- package/three/src/core/BufferAttribute.d.ts +481 -526
- package/three/src/core/BufferGeometry.d.ts +342 -347
- package/three/src/core/Clock.d.ts +53 -53
- package/three/src/core/EventDispatcher.d.ts +34 -45
- package/three/src/core/GLBufferAttribute.d.ts +94 -94
- package/three/src/core/InstancedBufferAttribute.d.ts +22 -22
- package/three/src/core/InstancedBufferGeometry.d.ts +25 -25
- package/three/src/core/InstancedInterleavedBuffer.d.ts +13 -13
- package/three/src/core/InterleavedBuffer.d.ts +152 -152
- package/three/src/core/InterleavedBufferAttribute.d.ts +194 -194
- package/three/src/core/Layers.d.ts +48 -48
- package/three/src/core/Object3D.d.ts +616 -644
- package/three/src/core/Raycaster.d.ts +136 -144
- package/three/src/core/RenderTarget.d.ts +72 -79
- package/three/src/core/Uniform.d.ts +16 -16
- package/three/src/core/UniformsGroup.d.ts +15 -15
- package/three/src/extras/DataUtils.d.ts +2 -2
- package/three/src/extras/Earcut.d.ts +6 -6
- package/three/src/extras/ImageUtils.d.ts +19 -21
- package/three/src/extras/PMREMGenerator.d.ts +49 -49
- package/three/src/extras/ShapeUtils.d.ts +14 -14
- package/three/src/extras/TextureUtils.d.ts +7 -12
- package/three/src/extras/core/Curve.d.ts +132 -132
- package/three/src/extras/core/CurvePath.d.ts +55 -55
- package/three/src/extras/core/Path.d.ts +108 -126
- package/three/src/extras/core/Shape.d.ts +43 -43
- package/three/src/extras/core/ShapePath.d.ts +79 -79
- package/three/src/extras/curves/ArcCurve.d.ts +24 -31
- package/three/src/extras/curves/CatmullRomCurve3.d.ts +44 -44
- package/three/src/extras/curves/CubicBezierCurve.d.ts +42 -42
- package/three/src/extras/curves/CubicBezierCurve3.d.ts +42 -42
- package/three/src/extras/curves/Curves.d.ts +10 -10
- package/three/src/extras/curves/EllipseCurve.d.ts +71 -80
- package/three/src/extras/curves/LineCurve.d.ts +30 -30
- package/three/src/extras/curves/LineCurve3.d.ts +30 -30
- package/three/src/extras/curves/QuadraticBezierCurve.d.ts +36 -36
- package/three/src/extras/curves/QuadraticBezierCurve3.d.ts +36 -36
- package/three/src/extras/curves/SplineCurve.d.ts +24 -24
- package/three/src/geometries/BoxGeometry.d.ts +31 -38
- package/three/src/geometries/CapsuleGeometry.d.ts +27 -27
- package/three/src/geometries/CircleGeometry.d.ts +27 -27
- package/three/src/geometries/ConeGeometry.d.ts +36 -44
- package/three/src/geometries/CylinderGeometry.d.ts +35 -44
- package/three/src/geometries/DodecahedronGeometry.d.ts +15 -15
- package/three/src/geometries/EdgesGeometry.d.ts +21 -21
- package/three/src/geometries/ExtrudeGeometry.d.ts +97 -110
- package/three/src/geometries/Geometries.d.ts +21 -21
- package/three/src/geometries/IcosahedronGeometry.d.ts +16 -16
- package/three/src/geometries/LatheGeometry.d.ts +29 -29
- package/three/src/geometries/OctahedronGeometry.d.ts +15 -15
- package/three/src/geometries/PlaneGeometry.d.ts +27 -27
- package/three/src/geometries/PolyhedronGeometry.d.ts +27 -27
- package/three/src/geometries/RingGeometry.d.ts +31 -38
- package/three/src/geometries/ShapeGeometry.d.ts +24 -24
- package/three/src/geometries/SphereGeometry.d.ts +39 -47
- package/three/src/geometries/TetrahedronGeometry.d.ts +15 -15
- package/three/src/geometries/TorusGeometry.d.ts +29 -29
- package/three/src/geometries/TorusKnotGeometry.d.ts +31 -38
- package/three/src/geometries/TubeGeometry.d.ts +44 -50
- package/three/src/geometries/WireframeGeometry.d.ts +19 -19
- package/three/src/helpers/ArrowHelper.d.ts +58 -65
- package/three/src/helpers/AxesHelper.d.ts +27 -27
- package/three/src/helpers/Box3Helper.d.ts +26 -26
- package/three/src/helpers/BoxHelper.d.ts +38 -38
- package/three/src/helpers/CameraHelper.d.ts +53 -53
- package/three/src/helpers/DirectionalLightHelper.d.ts +54 -54
- package/three/src/helpers/GridHelper.d.ts +27 -27
- package/three/src/helpers/HemisphereLightHelper.d.ts +50 -50
- package/three/src/helpers/PlaneHelper.d.ts +32 -32
- package/three/src/helpers/PointLightHelper.d.ts +48 -48
- package/three/src/helpers/PolarGridHelper.d.ts +26 -33
- package/three/src/helpers/SkeletonHelper.d.ts +52 -52
- package/three/src/helpers/SpotLightHelper.d.ts +52 -52
- package/three/src/lights/AmbientLight.d.ts +20 -20
- package/three/src/lights/DirectionalLight.d.ts +68 -68
- package/three/src/lights/DirectionalLightShadow.d.ts +22 -22
- package/three/src/lights/HemisphereLight.d.ts +37 -37
- package/three/src/lights/Light.d.ts +61 -61
- package/three/src/lights/LightProbe.d.ts +21 -21
- package/three/src/lights/LightShadow.d.ts +157 -157
- package/three/src/lights/PointLight.d.ts +74 -74
- package/three/src/lights/PointLightShadow.d.ts +14 -14
- package/three/src/lights/RectAreaLight.d.ts +49 -49
- package/three/src/lights/SpotLight.d.ts +120 -127
- package/three/src/lights/SpotLightShadow.d.ts +25 -25
- package/three/src/lights/webgpu/IESSpotLight.d.ts +3 -3
- package/three/src/loaders/AnimationLoader.d.ts +5 -5
- package/three/src/loaders/AudioLoader.d.ts +3 -3
- package/three/src/loaders/BufferGeometryLoader.d.ts +6 -6
- package/three/src/loaders/Cache.d.ts +12 -12
- package/three/src/loaders/CompressedTextureLoader.d.ts +5 -10
- package/three/src/loaders/CubeTextureLoader.d.ts +5 -10
- package/three/src/loaders/DataTextureLoader.d.ts +5 -10
- package/three/src/loaders/FileLoader.d.ts +8 -13
- package/three/src/loaders/ImageBitmapLoader.d.ts +10 -15
- package/three/src/loaders/ImageLoader.d.ts +4 -9
- package/three/src/loaders/Loader.d.ts +39 -44
- package/three/src/loaders/LoaderUtils.d.ts +6 -6
- package/three/src/loaders/LoadingManager.d.ts +48 -52
- package/three/src/loaders/MaterialLoader.d.ts +12 -12
- package/three/src/loaders/ObjectLoader.d.ts +20 -30
- package/three/src/loaders/TextureLoader.d.ts +5 -10
- package/three/src/materials/LineBasicMaterial.d.ts +54 -54
- package/three/src/materials/LineDashedMaterial.d.ts +34 -34
- package/three/src/materials/Material.d.ts +585 -604
- package/three/src/materials/Materials.d.ts +18 -18
- package/three/src/materials/MeshBasicMaterial.d.ts +130 -130
- package/three/src/materials/MeshDepthMaterial.d.ts +59 -59
- package/three/src/materials/MeshDistanceMaterial.d.ts +56 -56
- package/three/src/materials/MeshLambertMaterial.d.ts +198 -198
- package/three/src/materials/MeshMatcapMaterial.d.ts +111 -111
- package/three/src/materials/MeshNormalMaterial.d.ts +87 -87
- package/three/src/materials/MeshPhongMaterial.d.ts +222 -222
- package/three/src/materials/MeshPhysicalMaterial.d.ts +230 -230
- package/three/src/materials/MeshStandardMaterial.d.ts +212 -212
- package/three/src/materials/MeshToonMaterial.d.ts +172 -172
- package/three/src/materials/PointsMaterial.d.ts +55 -55
- package/three/src/materials/RawShaderMaterial.d.ts +9 -9
- package/three/src/materials/ShaderMaterial.d.ts +161 -153
- package/three/src/materials/ShadowMaterial.d.ts +28 -28
- package/three/src/materials/SpriteMaterial.d.ts +51 -51
- package/three/src/math/Box2.d.ts +40 -40
- package/three/src/math/Box3.d.ts +60 -60
- package/three/src/math/Color.d.ts +334 -334
- package/three/src/math/ColorManagement.d.ts +19 -31
- package/three/src/math/Cylindrical.d.ts +19 -19
- package/three/src/math/Euler.d.ts +44 -44
- package/three/src/math/Frustum.d.ts +22 -22
- package/three/src/math/Interpolant.d.ts +6 -6
- package/three/src/math/Line3.d.ts +23 -23
- package/three/src/math/MathUtils.d.ts +27 -33
- package/three/src/math/Matrix2.d.ts +33 -38
- package/three/src/math/Matrix3.d.ts +149 -179
- package/three/src/math/Matrix4.d.ts +196 -263
- package/three/src/math/Plane.d.ts +39 -39
- package/three/src/math/Quaternion.d.ts +156 -171
- package/three/src/math/Ray.d.ts +46 -51
- package/three/src/math/Sphere.d.ts +39 -39
- package/three/src/math/Spherical.d.ts +20 -20
- package/three/src/math/SphericalHarmonics3.d.ts +47 -47
- package/three/src/math/Triangle.d.ts +45 -77
- package/three/src/math/Vector2.d.ts +310 -310
- package/three/src/math/Vector3.d.ts +229 -229
- package/three/src/math/Vector4.d.ts +228 -228
- package/three/src/math/interpolants/CubicInterpolant.d.ts +3 -3
- package/three/src/math/interpolants/DiscreteInterpolant.d.ts +3 -3
- package/three/src/math/interpolants/LinearInterpolant.d.ts +3 -3
- package/three/src/math/interpolants/QuaternionLinearInterpolant.d.ts +3 -3
- package/three/src/nodes/Nodes.d.ts +188 -378
- package/three/src/nodes/accessors/AccessorsUtils.d.ts +2 -2
- package/three/src/nodes/accessors/BatchNode.d.ts +7 -7
- package/three/src/nodes/accessors/BitangentNode.d.ts +2 -2
- package/three/src/nodes/accessors/BufferAttributeNode.d.ts +25 -50
- package/three/src/nodes/accessors/BufferNode.d.ts +7 -11
- package/three/src/nodes/accessors/CameraNode.d.ts +5 -5
- package/three/src/nodes/accessors/ClippingNode.d.ts +6 -6
- package/three/src/nodes/accessors/CubeTextureNode.d.ts +14 -24
- package/three/src/nodes/accessors/InstanceNode.d.ts +7 -7
- package/three/src/nodes/accessors/MaterialNode.d.ts +82 -82
- package/three/src/nodes/accessors/MaterialReferenceNode.d.ts +5 -9
- package/three/src/nodes/accessors/ModelNode.d.ts +5 -5
- package/three/src/nodes/accessors/ModelViewProjectionNode.d.ts +3 -3
- package/three/src/nodes/accessors/NormalNode.d.ts +4 -4
- package/three/src/nodes/accessors/Object3DNode.d.ts +13 -13
- package/three/src/nodes/accessors/PointUVNode.d.ts +4 -4
- package/three/src/nodes/accessors/PositionNode.d.ts +2 -2
- package/three/src/nodes/accessors/ReferenceNode.d.ts +12 -17
- package/three/src/nodes/accessors/ReflectVectorNode.d.ts +3 -3
- package/three/src/nodes/accessors/RendererReferenceNode.d.ts +6 -10
- package/three/src/nodes/accessors/SkinningNode.d.ts +11 -11
- package/three/src/nodes/accessors/StorageBufferNode.d.ts +16 -28
- package/three/src/nodes/accessors/StorageTextureNode.d.ts +17 -29
- package/three/src/nodes/accessors/TangentNode.d.ts +5 -5
- package/three/src/nodes/accessors/Texture3DNode.d.ts +8 -12
- package/three/src/nodes/accessors/TextureBicubicNode.d.ts +10 -10
- package/three/src/nodes/accessors/TextureNode.d.ts +23 -33
- package/three/src/nodes/accessors/UVNode.d.ts +2 -2
- package/three/src/nodes/accessors/UniformsNode.d.ts +11 -11
- package/three/src/nodes/accessors/UserDataNode.d.ts +5 -9
- package/three/src/nodes/accessors/VertexColorNode.d.ts +5 -5
- package/three/src/nodes/code/CodeNode.d.ts +10 -10
- package/three/src/nodes/code/ExpressionNode.d.ts +4 -4
- package/three/src/nodes/code/FunctionCallNode.d.ts +14 -17
- package/three/src/nodes/code/FunctionNode.d.ts +23 -24
- package/three/src/nodes/core/AssignNode.d.ts +10 -10
- package/three/src/nodes/core/AttributeNode.d.ts +8 -12
- package/three/src/nodes/core/BypassNode.d.ts +10 -10
- package/three/src/nodes/core/CacheNode.d.ts +11 -11
- package/three/src/nodes/core/ConstNode.d.ts +5 -5
- package/three/src/nodes/core/ContextNode.d.ts +12 -12
- package/three/src/nodes/core/IndexNode.d.ts +8 -8
- package/three/src/nodes/core/InputNode.d.ts +9 -9
- package/three/src/nodes/core/LightingModel.d.ts +31 -31
- package/three/src/nodes/core/MRTNode.d.ts +8 -8
- package/three/src/nodes/core/Node.d.ts +100 -97
- package/three/src/nodes/core/NodeAttribute.d.ts +6 -6
- package/three/src/nodes/core/NodeBuilder.d.ts +122 -132
- package/three/src/nodes/core/NodeCache.d.ts +40 -43
- package/three/src/nodes/core/NodeCode.d.ts +2 -2
- package/three/src/nodes/core/NodeFrame.d.ts +24 -24
- package/three/src/nodes/core/NodeFunction.d.ts +8 -8
- package/three/src/nodes/core/NodeFunctionInput.d.ts +5 -5
- package/three/src/nodes/core/NodeKeywords.d.ts +14 -14
- package/three/src/nodes/core/NodeParser.d.ts +2 -2
- package/three/src/nodes/core/NodeUniform.d.ts +11 -11
- package/three/src/nodes/core/NodeUtils.d.ts +11 -14
- package/three/src/nodes/core/NodeVar.d.ts +4 -4
- package/three/src/nodes/core/NodeVarying.d.ts +4 -4
- package/three/src/nodes/core/OutputStructNode.d.ts +5 -5
- package/three/src/nodes/core/PropertyNode.d.ts +6 -6
- package/three/src/nodes/core/StackNode.d.ts +9 -9
- package/three/src/nodes/core/StructTypeNode.d.ts +5 -5
- package/three/src/nodes/core/TempNode.d.ts +5 -5
- package/three/src/nodes/core/UniformGroup.d.ts +3 -3
- package/three/src/nodes/core/UniformGroupNode.d.ts +7 -7
- package/three/src/nodes/core/UniformNode.d.ts +17 -20
- package/three/src/nodes/core/VarNode.d.ts +18 -18
- package/three/src/nodes/core/VaryingNode.d.ts +12 -12
- package/three/src/nodes/core/constants.d.ts +17 -17
- package/three/src/nodes/display/AfterImageNode.d.ts +15 -15
- package/three/src/nodes/display/AnamorphicNode.d.ts +17 -22
- package/three/src/nodes/display/BlendModeNode.d.ts +21 -25
- package/three/src/nodes/display/BloomNode.d.ts +19 -24
- package/three/src/nodes/display/ColorAdjustmentNode.d.ts +21 -33
- package/three/src/nodes/display/ColorSpaceNode.d.ts +18 -21
- package/three/src/nodes/display/DenoiseNode.d.ts +22 -28
- package/three/src/nodes/display/DepthOfFieldNode.d.ts +16 -22
- package/three/src/nodes/display/DotScreenNode.d.ts +15 -20
- package/three/src/nodes/display/FXAANode.d.ts +9 -9
- package/three/src/nodes/display/FilmNode.d.ts +12 -16
- package/three/src/nodes/display/FrontFacingNode.d.ts +4 -4
- package/three/src/nodes/display/GTAONode.d.ts +28 -32
- package/three/src/nodes/display/GaussianBlurNode.d.ts +17 -21
- package/three/src/nodes/display/Lut3DNode.d.ts +16 -21
- package/three/src/nodes/display/NormalMapNode.d.ts +12 -12
- package/three/src/nodes/display/PassNode.d.ts +30 -30
- package/three/src/nodes/display/PixelationPassNode.d.ts +25 -51
- package/three/src/nodes/display/PosterizeNode.d.ts +10 -13
- package/three/src/nodes/display/RGBShiftNode.d.ts +14 -14
- package/three/src/nodes/display/RenderOutputNode.d.ts +14 -18
- package/three/src/nodes/display/SobelOperatorNode.d.ts +9 -9
- package/three/src/nodes/display/ToneMappingNode.d.ts +14 -22
- package/three/src/nodes/display/TransitionNode.d.ts +17 -31
- package/three/src/nodes/display/ViewportDepthNode.d.ts +9 -11
- package/three/src/nodes/display/ViewportDepthTextureNode.d.ts +5 -8
- package/three/src/nodes/display/ViewportNode.d.ts +12 -18
- package/three/src/nodes/display/ViewportSharedTextureNode.d.ts +9 -12
- package/three/src/nodes/display/ViewportTextureNode.d.ts +16 -24
- package/three/src/nodes/fog/FogExp2Node.d.ts +10 -10
- package/three/src/nodes/fog/FogNode.d.ts +13 -16
- package/three/src/nodes/fog/FogRangeNode.d.ts +12 -16
- package/three/src/nodes/functions/BSDF/BRDF_GGX.d.ts +4 -12
- package/three/src/nodes/functions/BSDF/BRDF_Lambert.d.ts +3 -3
- package/three/src/nodes/functions/BSDF/BRDF_Sheen.d.ts +3 -3
- package/three/src/nodes/functions/BSDF/DFGApprox.d.ts +3 -3
- package/three/src/nodes/functions/BSDF/D_GGX.d.ts +3 -3
- package/three/src/nodes/functions/BSDF/D_GGX_Anisotropic.d.ts +4 -6
- package/three/src/nodes/functions/BSDF/F_Schlick.d.ts +3 -3
- package/three/src/nodes/functions/BSDF/LTC.d.ts +2 -4
- package/three/src/nodes/functions/BSDF/V_GGX_SmithCorrelated.d.ts +4 -8
- package/three/src/nodes/functions/BSDF/V_GGX_SmithCorrelated_Anisotropic.d.ts +4 -13
- package/three/src/nodes/functions/BasicLightingModel.d.ts +2 -2
- package/three/src/nodes/functions/PhongLightingModel.d.ts +3 -3
- package/three/src/nodes/functions/PhysicalLightingModel.d.ts +17 -24
- package/three/src/nodes/functions/ShadowMaskModel.d.ts +5 -5
- package/three/src/nodes/functions/ToonLightingModel.d.ts +2 -3
- package/three/src/nodes/functions/material/getGeometryRoughness.d.ts +2 -2
- package/three/src/nodes/functions/material/getRoughness.d.ts +3 -3
- package/three/src/nodes/geometry/RangeNode.d.ts +11 -11
- package/three/src/nodes/gpgpu/ComputeNode.d.ts +12 -16
- package/three/src/nodes/lighting/AONode.d.ts +4 -4
- package/three/src/nodes/lighting/AnalyticLightNode.d.ts +4 -4
- package/three/src/nodes/lighting/BasicEnvironmentNode.d.ts +4 -4
- package/three/src/nodes/lighting/BasicLightMapNode.d.ts +3 -3
- package/three/src/nodes/lighting/EnvironmentNode.d.ts +4 -4
- package/three/src/nodes/lighting/HemisphereLightNode.d.ts +8 -8
- package/three/src/nodes/lighting/IrradianceNode.d.ts +4 -4
- package/three/src/nodes/lighting/LightUtils.d.ts +4 -8
- package/three/src/nodes/lighting/LightingContextNode.d.ts +13 -18
- package/three/src/nodes/lighting/LightingNode.d.ts +3 -3
- package/three/src/nodes/lighting/LightsNode.d.ts +10 -13
- package/three/src/nodes/lighting/PointLightNode.d.ts +6 -6
- package/three/src/nodes/lighting/RectAreaLightNode.d.ts +12 -12
- package/three/src/nodes/lighting/SpotLightNode.d.ts +9 -9
- package/three/src/nodes/loaders/NodeLoader.d.ts +9 -9
- package/three/src/nodes/loaders/NodeMaterialLoader.d.ts +4 -4
- package/three/src/nodes/loaders/NodeObjectLoader.d.ts +6 -6
- package/three/src/nodes/materials/Line2NodeMaterial.d.ts +37 -37
- package/three/src/nodes/materials/LineBasicNodeMaterial.d.ts +15 -16
- package/three/src/nodes/materials/Materials.d.ts +15 -15
- package/three/src/nodes/materials/MeshBasicNodeMaterial.d.ts +29 -30
- package/three/src/nodes/materials/MeshMatcapNodeMaterial.d.ts +25 -26
- package/three/src/nodes/materials/MeshNormalNodeMaterial.d.ts +21 -22
- package/three/src/nodes/materials/MeshPhongNodeMaterial.d.ts +48 -49
- package/three/src/nodes/materials/MeshPhysicalNodeMaterial.d.ts +73 -76
- package/three/src/nodes/materials/MeshSSSNodeMaterial.d.ts +11 -11
- package/three/src/nodes/materials/MeshStandardNodeMaterial.d.ts +47 -48
- package/three/src/nodes/materials/MeshToonNodeMaterial.d.ts +35 -36
- package/three/src/nodes/materials/NodeMaterial.d.ts +108 -108
- package/three/src/nodes/materials/PointsNodeMaterial.d.ts +15 -16
- package/three/src/nodes/materials/ShadowNodeMaterial.d.ts +10 -11
- package/three/src/nodes/materials/SpriteNodeMaterial.d.ts +18 -19
- package/three/src/nodes/materials/VolumeNodeMaterial.d.ts +6 -6
- package/three/src/nodes/materialx/MaterialXNodes.d.ts +21 -92
- package/three/src/nodes/materialx/lib/mx_hsv.d.ts +2 -2
- package/three/src/nodes/materialx/lib/mx_noise.d.ts +76 -296
- package/three/src/nodes/materialx/lib/mx_transform_color.d.ts +2 -2
- package/three/src/nodes/math/CondNode.d.ts +11 -15
- package/three/src/nodes/math/HashNode.d.ts +8 -8
- package/three/src/nodes/math/MathNode.d.ts +168 -188
- package/three/src/nodes/math/MathUtils.d.ts +8 -8
- package/three/src/nodes/math/OperatorNode.d.ts +32 -54
- package/three/src/nodes/math/TriNoise3D.d.ts +3 -7
- package/three/src/nodes/pmrem/PMREMNode.d.ts +10 -14
- package/three/src/nodes/procedural/CheckerNode.d.ts +8 -8
- package/three/src/nodes/shadernode/ShaderNode.d.ts +94 -141
- package/three/src/nodes/utils/ArrayElementNode.d.ts +5 -5
- package/three/src/nodes/utils/ConvertNode.d.ts +4 -4
- package/three/src/nodes/utils/DiscardNode.d.ts +8 -8
- package/three/src/nodes/utils/EquirectUVNode.d.ts +3 -3
- package/three/src/nodes/utils/JoinNode.d.ts +4 -4
- package/three/src/nodes/utils/MatcapUVNode.d.ts +3 -3
- package/three/src/nodes/utils/MaxMipLevelNode.d.ts +7 -7
- package/three/src/nodes/utils/OscNode.d.ts +10 -14
- package/three/src/nodes/utils/PackingNode.d.ts +11 -11
- package/three/src/nodes/utils/RTTNode.d.ts +23 -28
- package/three/src/nodes/utils/ReflectorNode.d.ts +19 -19
- package/three/src/nodes/utils/RemapNode.d.ts +16 -28
- package/three/src/nodes/utils/RotateNode.d.ts +11 -14
- package/three/src/nodes/utils/RotateUVNode.d.ts +11 -11
- package/three/src/nodes/utils/SplitNode.d.ts +10 -10
- package/three/src/nodes/utils/SpriteSheetUVNode.d.ts +7 -11
- package/three/src/nodes/utils/StoargeArrayElementNode.d.ts +13 -16
- package/three/src/nodes/utils/TimerNode.d.ts +10 -14
- package/three/src/nodes/utils/TriplanarTexturesNode.d.ts +16 -33
- package/three/src/objects/BatchedMesh.d.ts +151 -155
- package/three/src/objects/Bone.d.ts +16 -16
- package/three/src/objects/Group.d.ts +16 -16
- package/three/src/objects/InstancedMesh.d.ts +151 -155
- package/three/src/objects/LOD.d.ts +66 -66
- package/three/src/objects/Line.d.ts +51 -55
- package/three/src/objects/LineLoop.d.ts +22 -26
- package/three/src/objects/LineSegments.d.ts +24 -28
- package/three/src/objects/Mesh.d.ts +57 -61
- package/three/src/objects/Points.d.ts +53 -57
- package/three/src/objects/Skeleton.d.ts +90 -90
- package/three/src/objects/SkinnedMesh.d.ts +111 -115
- package/three/src/objects/Sprite.d.ts +41 -41
- package/three/src/renderers/WebGL3DRenderTarget.d.ts +20 -20
- package/three/src/renderers/WebGLArrayRenderTarget.d.ts +20 -20
- package/three/src/renderers/WebGLCubeRenderTarget.d.ts +11 -11
- package/three/src/renderers/WebGLRenderTarget.d.ts +4 -4
- package/three/src/renderers/WebGLRenderer.d.ts +497 -543
- package/three/src/renderers/common/Animation.d.ts +10 -10
- package/three/src/renderers/common/Attributes.d.ts +16 -16
- package/three/src/renderers/common/Backend.d.ts +9 -9
- package/three/src/renderers/common/Background.d.ts +17 -17
- package/three/src/renderers/common/BindGroup.d.ts +6 -6
- package/three/src/renderers/common/Binding.d.ts +5 -5
- package/three/src/renderers/common/Bindings.d.ts +29 -36
- package/three/src/renderers/common/Buffer.d.ts +8 -8
- package/three/src/renderers/common/ChainMap.d.ts +5 -5
- package/three/src/renderers/common/ClippingContext.d.ts +20 -20
- package/three/src/renderers/common/Color4.d.ts +7 -7
- package/three/src/renderers/common/ComputePipeline.d.ts +5 -5
- package/three/src/renderers/common/Constants.d.ts +3 -3
- package/three/src/renderers/common/CubeRenderTarget.d.ts +7 -7
- package/three/src/renderers/common/DataMap.d.ts +26 -16
- package/three/src/renderers/common/Geometries.d.ts +25 -25
- package/three/src/renderers/common/Info.d.ts +31 -31
- package/three/src/renderers/common/Pipeline.d.ts +3 -3
- package/three/src/renderers/common/Pipelines.d.ts +45 -60
- package/three/src/renderers/common/PostProcessing.d.ts +10 -10
- package/three/src/renderers/common/ProgrammableStage.d.ts +7 -12
- package/three/src/renderers/common/QuadMesh.d.ts +8 -8
- package/three/src/renderers/common/RenderBundle.d.ts +6 -6
- package/three/src/renderers/common/RenderBundles.d.ts +8 -8
- package/three/src/renderers/common/RenderContext.d.ts +38 -38
- package/three/src/renderers/common/RenderContexts.d.ts +12 -12
- package/three/src/renderers/common/RenderList.d.ts +35 -59
- package/three/src/renderers/common/RenderLists.d.ts +8 -8
- package/three/src/renderers/common/RenderObject.d.ts +59 -74
- package/three/src/renderers/common/RenderObjects.d.ts +28 -59
- package/three/src/renderers/common/RenderPipeline.d.ts +5 -5
- package/three/src/renderers/common/Renderer.d.ts +178 -272
- package/three/src/renderers/common/SampledTexture.d.ts +13 -13
- package/three/src/renderers/common/Sampler.d.ts +6 -6
- package/three/src/renderers/common/StorageBufferAttribute.d.ts +3 -3
- package/three/src/renderers/common/StorageInstancedBufferAttribute.d.ts +4 -4
- package/three/src/renderers/common/StorageTexture.d.ts +2 -2
- package/three/src/renderers/common/Textures.d.ts +53 -53
- package/three/src/renderers/common/Uniform.d.ts +28 -28
- package/three/src/renderers/common/UniformBuffer.d.ts +3 -3
- package/three/src/renderers/common/UniformsGroup.d.ts +20 -29
- package/three/src/renderers/common/extras/PMREMGenerator.d.ts +5 -5
- package/three/src/renderers/common/nodes/NodeBuilderState.d.ts +16 -27
- package/three/src/renderers/common/nodes/NodeSampledTexture.d.ts +12 -17
- package/three/src/renderers/common/nodes/NodeSampler.d.ts +7 -7
- package/three/src/renderers/common/nodes/NodeUniform.d.ts +31 -54
- package/three/src/renderers/common/nodes/NodeUniformsGroup.d.ts +7 -7
- package/three/src/renderers/common/nodes/Nodes.d.ts +86 -96
- package/three/src/renderers/shaders/ShaderChunk.d.ts +139 -139
- package/three/src/renderers/shaders/ShaderLib.d.ts +21 -21
- package/three/src/renderers/shaders/UniformsLib.d.ts +182 -182
- package/three/src/renderers/shaders/UniformsUtils.d.ts +4 -4
- package/three/src/renderers/webgl/WebGLAttributes.d.ts +15 -15
- package/three/src/renderers/webgl/WebGLBindingStates.d.ts +16 -22
- package/three/src/renderers/webgl/WebGLBufferRenderer.d.ts +8 -17
- package/three/src/renderers/webgl/WebGLCapabilities.d.ts +21 -21
- package/three/src/renderers/webgl/WebGLClipping.d.ts +19 -19
- package/three/src/renderers/webgl/WebGLCubeMaps.d.ts +4 -4
- package/three/src/renderers/webgl/WebGLCubeUVMaps.d.ts +5 -5
- package/three/src/renderers/webgl/WebGLExtensions.d.ts +4 -4
- package/three/src/renderers/webgl/WebGLGeometries.d.ts +9 -9
- package/three/src/renderers/webgl/WebGLIndexedBufferRenderer.d.ts +7 -12
- package/three/src/renderers/webgl/WebGLInfo.d.ts +29 -29
- package/three/src/renderers/webgl/WebGLLights.d.ts +41 -41
- package/three/src/renderers/webgl/WebGLObjects.d.ts +3 -3
- package/three/src/renderers/webgl/WebGLProgram.d.ts +24 -24
- package/three/src/renderers/webgl/WebGLPrograms.d.ts +156 -177
- package/three/src/renderers/webgl/WebGLProperties.d.ts +5 -5
- package/three/src/renderers/webgl/WebGLRenderLists.d.ts +42 -56
- package/three/src/renderers/webgl/WebGLShadowMap.d.ts +29 -29
- package/three/src/renderers/webgl/WebGLState.d.ts +54 -99
- package/three/src/renderers/webgl/WebGLTextures.d.ts +18 -26
- package/three/src/renderers/webgl/WebGLUniforms.d.ts +7 -7
- package/three/src/renderers/webgl/WebGLUniformsGroups.d.ts +12 -12
- package/three/src/renderers/webgl/WebGLUtils.d.ts +4 -7
- package/three/src/renderers/webgl-fallback/WebGLBackend.d.ts +6 -6
- package/three/src/renderers/webgpu/WebGPUBackend.d.ts +11 -11
- package/three/src/renderers/webgpu/WebGPURenderer.d.ts +4 -4
- package/three/src/renderers/webgpu/nodes/WGSLNodeBuilder.d.ts +57 -107
- package/three/src/renderers/webgpu/nodes/WGSLNodeFunction.d.ts +3 -3
- package/three/src/renderers/webgpu/nodes/WGSLNodeParser.d.ts +3 -3
- package/three/src/renderers/webgpu/utils/WebGPUConstants.d.ts +257 -257
- package/three/src/renderers/webxr/WebXRController.d.ts +36 -36
- package/three/src/renderers/webxr/WebXRDepthSensing.d.ts +13 -13
- package/three/src/renderers/webxr/WebXRManager.d.ts +50 -50
- package/three/src/scenes/Fog.d.ts +54 -54
- package/three/src/scenes/FogExp2.d.ts +43 -43
- package/three/src/scenes/Scene.d.ts +98 -98
- package/three/src/textures/CanvasTexture.d.ts +21 -38
- package/three/src/textures/CompressedArrayTexture.d.ts +45 -52
- package/three/src/textures/CompressedCubeTexture.d.ts +5 -9
- package/three/src/textures/CompressedTexture.d.ts +56 -77
- package/three/src/textures/CubeTexture.d.ts +55 -63
- package/three/src/textures/Data3DTexture.d.ts +53 -53
- package/three/src/textures/DataArrayTexture.d.ts +76 -76
- package/three/src/textures/DataTexture.d.ts +55 -76
- package/three/src/textures/DepthTexture.d.ts +67 -86
- package/three/src/textures/FramebufferTexture.d.ts +29 -29
- package/three/src/textures/Source.d.ts +55 -55
- package/three/src/textures/Texture.d.ts +407 -439
- package/three/src/textures/VideoTexture.d.ts +45 -62
- package/three/src/textures/types.d.ts +4 -4
- package/three/three.webgpu.d.ts +1 -1
- package/three.webgpu.d.ts +1 -1
|
@@ -1,79 +1,62 @@
|
|
|
1
|
-
import ConstNode from
|
|
2
|
-
import Node from
|
|
3
|
-
import NodeBuilder from
|
|
4
|
-
import StackNode from
|
|
1
|
+
import ConstNode from '../core/ConstNode.js';
|
|
2
|
+
import Node from '../core/Node.js';
|
|
3
|
+
import NodeBuilder from '../core/NodeBuilder.js';
|
|
4
|
+
import StackNode from '../core/StackNode.js';
|
|
5
5
|
|
|
6
6
|
export interface NodeElements {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
7
|
+
toGlobal: (node: Node) => Node;
|
|
8
|
+
|
|
9
|
+
append: typeof append;
|
|
10
|
+
|
|
11
|
+
toColor: typeof color;
|
|
12
|
+
toFloat: typeof float;
|
|
13
|
+
toInt: typeof int;
|
|
14
|
+
toUint: typeof uint;
|
|
15
|
+
toBool: typeof bool;
|
|
16
|
+
toVec2: typeof vec2;
|
|
17
|
+
toIvec2: typeof ivec2;
|
|
18
|
+
toUvec2: typeof uvec2;
|
|
19
|
+
toBvec2: typeof bvec2;
|
|
20
|
+
toVec3: typeof vec3;
|
|
21
|
+
toIvec3: typeof ivec3;
|
|
22
|
+
toUvec3: typeof uvec3;
|
|
23
|
+
toBvec3: typeof bvec3;
|
|
24
|
+
toVec4: typeof vec4;
|
|
25
|
+
toIvec4: typeof ivec4;
|
|
26
|
+
toUvec4: typeof uvec4;
|
|
27
|
+
toBvec4: typeof bvec4;
|
|
28
|
+
toMat2: typeof mat2;
|
|
29
|
+
toImat2: typeof imat2;
|
|
30
|
+
toUmat2: typeof umat2;
|
|
31
|
+
toBmat2: typeof bmat2;
|
|
32
|
+
toMat3: typeof mat3;
|
|
33
|
+
toImat3: typeof imat3;
|
|
34
|
+
toUmat3: typeof umat3;
|
|
35
|
+
toBmat3: typeof bmat3;
|
|
36
|
+
toMat4: typeof mat4;
|
|
37
|
+
toImat4: typeof imat4;
|
|
38
|
+
toUmat4: typeof umat4;
|
|
39
|
+
toBmat4: typeof bmat4;
|
|
40
|
+
|
|
41
|
+
element: typeof element;
|
|
42
|
+
convert: typeof convert;
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
export function addNodeElement(name: string, nodeElement: unknown): void;
|
|
46
46
|
|
|
47
|
-
export type SwizzleCharacter =
|
|
48
|
-
|
|
49
|
-
export type SwizzleOption = Exclude
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
[key in SwizzleOption | number]: ShaderNodeObject<Node>;
|
|
61
|
-
};
|
|
62
|
-
|
|
63
|
-
export type ShaderNodeObject<T extends Node> =
|
|
64
|
-
& T
|
|
65
|
-
& {
|
|
66
|
-
[Key in keyof NodeElements]: T extends { [K in Key]: infer M } ? M
|
|
67
|
-
: NodeElements[Key] extends (node: T, ...args: infer Args) => infer R ? (...args: Args) => R
|
|
68
|
-
: never;
|
|
69
|
-
}
|
|
70
|
-
& {
|
|
71
|
-
[Key in keyof NodeElements as `${Key}Assign`]: T extends { [K in Key]: infer M } ? M
|
|
72
|
-
: NodeElements[Key] extends (node: T, ...args: infer Args) => unknown
|
|
73
|
-
? (...args: Args) => ShaderNodeObject<T>
|
|
74
|
-
: never;
|
|
75
|
-
}
|
|
76
|
-
& Swizzable<T>;
|
|
47
|
+
export type SwizzleCharacter = 'x' | 'y' | 'z' | 'w' | 'r' | 'g' | 'b' | 'a' | 's' | 't' | 'p' | 'q';
|
|
48
|
+
|
|
49
|
+
export type SwizzleOption = Exclude<`${SwizzleCharacter}` | `${SwizzleCharacter}${SwizzleCharacter}` | `${SwizzleCharacter}${SwizzleCharacter}${SwizzleCharacter}` | `${SwizzleCharacter}${SwizzleCharacter}${SwizzleCharacter}${SwizzleCharacter}`, 'abs' | 'sqrt'>;
|
|
50
|
+
|
|
51
|
+
export type Swizzable<T extends Node = Node> = T & {
|
|
52
|
+
[key in SwizzleOption | number]: ShaderNodeObject<Node>;
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
export type ShaderNodeObject<T extends Node> = T & {
|
|
56
|
+
[Key in keyof NodeElements]: T extends { [K in Key]: infer M } ? M : NodeElements[Key] extends (node: T, ...args: infer Args) => infer R ? (...args: Args) => R : never;
|
|
57
|
+
} & {
|
|
58
|
+
[Key in keyof NodeElements as `${Key}Assign`]: T extends { [K in Key]: infer M } ? M : NodeElements[Key] extends (node: T, ...args: infer Args) => unknown ? (...args: Args) => ShaderNodeObject<T> : never;
|
|
59
|
+
} & Swizzable<T>;
|
|
77
60
|
|
|
78
61
|
/** anything that can be passed to {@link nodeObject} and returns a proxy */
|
|
79
62
|
export type NodeRepresentation<T extends Node = Node> = number | boolean | Node | ShaderNodeObject<T>;
|
|
@@ -82,9 +65,7 @@ export type NodeRepresentation<T extends Node = Node> = number | boolean | Node
|
|
|
82
65
|
export type NodeObjectOption = NodeRepresentation | string;
|
|
83
66
|
|
|
84
67
|
// same logic as in ShaderNodeObject: number,boolean,node->ShaderNodeObject, otherwise do nothing
|
|
85
|
-
export type NodeObject<T> = T extends Node ? ShaderNodeObject<T>
|
|
86
|
-
: T extends number | boolean ? ShaderNodeObject<ConstNode<number | boolean>>
|
|
87
|
-
: T;
|
|
68
|
+
export type NodeObject<T> = T extends Node ? ShaderNodeObject<T> : T extends number | boolean ? ShaderNodeObject<ConstNode<number | boolean>> : T;
|
|
88
69
|
|
|
89
70
|
// opposite of NodeObject: node -> node|ShaderNodeObject|boolean|number, otherwise do nothing
|
|
90
71
|
type Proxied<T> = T extends Node ? NodeRepresentation<T> : T;
|
|
@@ -99,16 +80,11 @@ type RemoveHeadAndTail<T extends readonly [...unknown[]]> = T extends [unknown,
|
|
|
99
80
|
*
|
|
100
81
|
* We use an object instead of tuple or union as it makes stuff easier, especially in Typescript 4.0.
|
|
101
82
|
*/
|
|
102
|
-
interface Construtors<
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
> {
|
|
108
|
-
a: A;
|
|
109
|
-
b: B;
|
|
110
|
-
c: C;
|
|
111
|
-
d: D;
|
|
83
|
+
interface Construtors<A extends undefined | [...unknown[]], B extends undefined | [...unknown[]], C extends undefined | [...unknown[]], D extends undefined | [...unknown[]]> {
|
|
84
|
+
a: A;
|
|
85
|
+
b: B;
|
|
86
|
+
c: C;
|
|
87
|
+
d: D;
|
|
112
88
|
}
|
|
113
89
|
|
|
114
90
|
/**
|
|
@@ -118,22 +94,26 @@ interface Construtors<
|
|
|
118
94
|
* <https://stackoverflow.com/a/52761156/1623826>
|
|
119
95
|
*/
|
|
120
96
|
type OverloadedConstructorsOf<T> = T extends {
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
97
|
+
new (...args: infer A1): unknown;
|
|
98
|
+
new (...args: infer A2): unknown;
|
|
99
|
+
new (...args: infer A3): unknown;
|
|
100
|
+
new (...args: infer A4): unknown;
|
|
101
|
+
}
|
|
102
|
+
? Construtors<A1, A2, A3, A4>
|
|
103
|
+
: T extends {
|
|
104
|
+
new (...args: infer A1): unknown;
|
|
105
|
+
new (...args: infer A2): unknown;
|
|
106
|
+
new (...args: infer A3): unknown;
|
|
107
|
+
}
|
|
108
|
+
? Construtors<A1, A2, A3, undefined>
|
|
109
|
+
: T extends {
|
|
110
|
+
new (...args: infer A1): unknown;
|
|
111
|
+
new (...args: infer A2): unknown;
|
|
112
|
+
}
|
|
113
|
+
? Construtors<A1, A2, undefined, undefined>
|
|
114
|
+
: T extends new (...args: infer A) => unknown
|
|
115
|
+
? Construtors<A, undefined, undefined, undefined>
|
|
116
|
+
: Construtors<undefined, undefined, undefined, undefined>;
|
|
137
117
|
|
|
138
118
|
type AnyConstructors = Construtors<any, any, any, any>;
|
|
139
119
|
|
|
@@ -142,29 +122,21 @@ type AnyConstructors = Construtors<any, any, any, any>;
|
|
|
142
122
|
*/
|
|
143
123
|
// eslint-disable-next-line @typescript-eslint/consistent-type-definitions
|
|
144
124
|
type FilterConstructorsByScope<T extends AnyConstructors, S> = {
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
125
|
+
a: S extends T['a'][0] ? T['a'] : undefined;
|
|
126
|
+
b: S extends T['b'][0] ? T['b'] : undefined;
|
|
127
|
+
c: S extends T['c'][0] ? T['c'] : undefined;
|
|
128
|
+
d: S extends T['d'][0] ? T['d'] : undefined;
|
|
149
129
|
};
|
|
150
130
|
/**
|
|
151
131
|
* "flattens" the tuple into an union type
|
|
152
132
|
*/
|
|
153
|
-
type ConstructorUnion<T extends AnyConstructors> =
|
|
154
|
-
| Exclude<T["a"], undefined>
|
|
155
|
-
| Exclude<T["b"], undefined>
|
|
156
|
-
| Exclude<T["c"], undefined>
|
|
157
|
-
| Exclude<T["d"], undefined>;
|
|
133
|
+
type ConstructorUnion<T extends AnyConstructors> = Exclude<T['a'], undefined> | Exclude<T['b'], undefined> | Exclude<T['c'], undefined> | Exclude<T['d'], undefined>;
|
|
158
134
|
|
|
159
135
|
/**
|
|
160
136
|
* Extract list of possible scopes - union of the first paramter
|
|
161
137
|
* of all constructors, should it be string
|
|
162
138
|
*/
|
|
163
|
-
type ExtractScopes<T extends AnyConstructors> =
|
|
164
|
-
| (T["a"][0] extends string ? T["a"][0] : never)
|
|
165
|
-
| (T["b"][0] extends string ? T["b"][0] : never)
|
|
166
|
-
| (T["c"][0] extends string ? T["c"][0] : never)
|
|
167
|
-
| (T["d"][0] extends string ? T["d"][0] : never);
|
|
139
|
+
type ExtractScopes<T extends AnyConstructors> = (T['a'][0] extends string ? T['a'][0] : never) | (T['b'][0] extends string ? T['b'][0] : never) | (T['c'][0] extends string ? T['c'][0] : never) | (T['d'][0] extends string ? T['d'][0] : never);
|
|
168
140
|
|
|
169
141
|
type GetConstructorsByScope<T, S> = ConstructorUnion<FilterConstructorsByScope<OverloadedConstructorsOf<T>, S>>;
|
|
170
142
|
type GetConstructors<T> = ConstructorUnion<OverloadedConstructorsOf<T>>;
|
|
@@ -174,18 +146,15 @@ export type ConvertType = (...params: unknown[]) => ShaderNodeObject<Node>;
|
|
|
174
146
|
|
|
175
147
|
type NodeArray<T extends NodeObjectOption[]> = { [index in keyof T]: NodeObject<T[index]> };
|
|
176
148
|
type NodeObjects<T> = { [key in keyof T]: T[key] extends NodeObjectOption ? NodeObject<T[key]> : T[key] };
|
|
177
|
-
type ConstructedNode<T> = T extends new(...args: any[]) => infer R ? (R extends Node ? R : never) : never;
|
|
149
|
+
type ConstructedNode<T> = T extends new (...args: any[]) => infer R ? (R extends Node ? R : never) : never;
|
|
178
150
|
|
|
179
151
|
export type NodeOrType = Node | string;
|
|
180
152
|
|
|
181
153
|
export const getConstNodeType: (value: NodeOrType) => string | null;
|
|
182
154
|
|
|
183
155
|
export class ShaderNode<T = {}, R extends Node = Node> {
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
inputs: { [key in keyof T]: T[key] extends NodeRepresentation ? ShaderNodeObject<Node> | Node : T[key] },
|
|
187
|
-
builder?: NodeBuilder,
|
|
188
|
-
) => ShaderNodeObject<R>;
|
|
156
|
+
constructor(jsFunc: (inputs: NodeObjects<T>, builder: NodeBuilder) => NodeRepresentation);
|
|
157
|
+
call: (inputs: { [key in keyof T]: T[key] extends NodeRepresentation ? ShaderNodeObject<Node> | Node : T[key] }, builder?: NodeBuilder) => ShaderNodeObject<R>;
|
|
189
158
|
}
|
|
190
159
|
|
|
191
160
|
export function nodeObject<T extends NodeObjectOption>(obj: T): NodeObject<T>;
|
|
@@ -193,33 +162,17 @@ export function nodeObjects<T>(obj: T): NodeObjects<T>;
|
|
|
193
162
|
|
|
194
163
|
export function nodeArray<T extends NodeObjectOption[]>(obj: readonly [...T]): NodeArray<T>;
|
|
195
164
|
|
|
196
|
-
export function nodeProxy<T>(
|
|
197
|
-
nodeClass: T,
|
|
198
|
-
): (...params: ProxiedTuple<GetConstructors<T>>) => ShaderNodeObject<ConstructedNode<T>>;
|
|
165
|
+
export function nodeProxy<T>(nodeClass: T): (...params: ProxiedTuple<GetConstructors<T>>) => ShaderNodeObject<ConstructedNode<T>>;
|
|
199
166
|
|
|
200
|
-
export function nodeProxy<T, S extends GetPossibleScopes<T>>(
|
|
201
|
-
nodeClass: T,
|
|
202
|
-
scope: S,
|
|
203
|
-
): (...params: ProxiedTuple<RemoveTail<GetConstructorsByScope<T, S>>>) => ShaderNodeObject<ConstructedNode<T>>;
|
|
167
|
+
export function nodeProxy<T, S extends GetPossibleScopes<T>>(nodeClass: T, scope: S): (...params: ProxiedTuple<RemoveTail<GetConstructorsByScope<T, S>>>) => ShaderNodeObject<ConstructedNode<T>>;
|
|
204
168
|
|
|
205
|
-
export function nodeProxy<T, S extends GetPossibleScopes<T>>(
|
|
206
|
-
nodeClass: T,
|
|
207
|
-
scope: S,
|
|
208
|
-
factor: NodeObjectOption,
|
|
209
|
-
): (...params: ProxiedTuple<RemoveHeadAndTail<GetConstructorsByScope<T, S>>>) => ShaderNodeObject<ConstructedNode<T>>;
|
|
169
|
+
export function nodeProxy<T, S extends GetPossibleScopes<T>>(nodeClass: T, scope: S, factor: NodeObjectOption): (...params: ProxiedTuple<RemoveHeadAndTail<GetConstructorsByScope<T, S>>>) => ShaderNodeObject<ConstructedNode<T>>;
|
|
210
170
|
|
|
211
|
-
export function nodeImmutable<T>(
|
|
212
|
-
nodeClass: T,
|
|
213
|
-
...params: ProxiedTuple<GetConstructors<T>>
|
|
214
|
-
): ShaderNodeObject<ConstructedNode<T>>;
|
|
171
|
+
export function nodeImmutable<T>(nodeClass: T, ...params: ProxiedTuple<GetConstructors<T>>): ShaderNodeObject<ConstructedNode<T>>;
|
|
215
172
|
|
|
216
173
|
export function tslFn<R extends Node = ShaderNodeObject<Node>>(jsFunc: () => R): () => R;
|
|
217
|
-
export function tslFn<T extends any[], R extends Node = ShaderNodeObject<Node>>(
|
|
218
|
-
|
|
219
|
-
): (...args: ProxiedTuple<T>) => R;
|
|
220
|
-
export function tslFn<T extends { [key: string]: unknown }, R extends Node = ShaderNodeObject<Node>>(
|
|
221
|
-
jsFunc: (args: T) => R,
|
|
222
|
-
): (args: ProxiedObject<T>) => R;
|
|
174
|
+
export function tslFn<T extends any[], R extends Node = ShaderNodeObject<Node>>(jsFunc: (args: T) => R): (...args: ProxiedTuple<T>) => R;
|
|
175
|
+
export function tslFn<T extends { [key: string]: unknown }, R extends Node = ShaderNodeObject<Node>>(jsFunc: (args: T) => R): (args: ProxiedObject<T>) => R;
|
|
223
176
|
|
|
224
177
|
export const setCurrentStack: (stack: StackNode | null) => void;
|
|
225
178
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import Node from
|
|
2
|
-
import { TempNode } from
|
|
1
|
+
import Node from '../core/Node.js';
|
|
2
|
+
import { TempNode } from '../Nodes.js';
|
|
3
3
|
|
|
4
4
|
export default class ArrayElementNode extends TempNode {
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
node: Node;
|
|
6
|
+
indexNode: Node;
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
constructor(node: Node, indexNode: Node);
|
|
9
9
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import Node from
|
|
1
|
+
import Node from '../core/Node.js';
|
|
2
2
|
|
|
3
3
|
export default class ConvertNode extends Node {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
node: Node;
|
|
5
|
+
convertTo: string;
|
|
6
|
+
constructor(node: Node, convertTo: string);
|
|
7
7
|
}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import Node from
|
|
2
|
-
import CondNode from
|
|
3
|
-
import { NodeRepresentation, ShaderNodeObject } from
|
|
1
|
+
import Node from '../core/Node.js';
|
|
2
|
+
import CondNode from '../math/CondNode.js';
|
|
3
|
+
import { NodeRepresentation, ShaderNodeObject } from '../shadernode/ShaderNode.js';
|
|
4
4
|
|
|
5
5
|
export default class DiscardNode extends CondNode {
|
|
6
|
-
|
|
6
|
+
constructor(condNode: Node);
|
|
7
7
|
}
|
|
8
8
|
|
|
9
9
|
export const inlineDiscard: (condNode: NodeRepresentation) => ShaderNodeObject<DiscardNode>;
|
|
10
10
|
export const discard: (condNode: NodeRepresentation) => ShaderNodeObject<Node>;
|
|
11
11
|
export const Return: (condNode: NodeRepresentation) => ShaderNodeObject<Node>;
|
|
12
12
|
|
|
13
|
-
declare module
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
13
|
+
declare module '../shadernode/ShaderNode.js' {
|
|
14
|
+
interface NodeElements {
|
|
15
|
+
discard: typeof discard;
|
|
16
|
+
}
|
|
17
17
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Node, TempNode } from
|
|
2
|
-
import { ShaderNodeObject } from
|
|
1
|
+
import { Node, TempNode } from '../Nodes.js';
|
|
2
|
+
import { ShaderNodeObject } from '../shadernode/ShaderNode.js';
|
|
3
3
|
|
|
4
4
|
export default class EquirectUVNode extends TempNode {
|
|
5
|
-
|
|
5
|
+
constructor(dirNode?: ShaderNodeObject<Node>);
|
|
6
6
|
}
|
|
7
7
|
|
|
8
8
|
export const equirectUV: ShaderNodeObject<EquirectUVNode>;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import Node from
|
|
2
|
-
import { TempNode } from
|
|
1
|
+
import Node from '../core/Node.js';
|
|
2
|
+
import { TempNode } from '../Nodes.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* This node constructs given type from elements, like vec3(a,b,c)
|
|
6
6
|
*/
|
|
7
7
|
export default class JoinNode extends TempNode {
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
nodes: Node[];
|
|
9
|
+
constructor(nodes: Node[]);
|
|
10
10
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import TempNode from
|
|
2
|
-
import { ShaderNodeObject } from
|
|
1
|
+
import TempNode from '../core/TempNode.js';
|
|
2
|
+
import { ShaderNodeObject } from '../shadernode/ShaderNode.js';
|
|
3
3
|
|
|
4
4
|
export default class MatcapUVNode extends TempNode {
|
|
5
|
-
|
|
5
|
+
constructor();
|
|
6
6
|
}
|
|
7
7
|
|
|
8
8
|
export const matcapUV: ShaderNodeObject<MatcapUVNode>;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { Texture } from
|
|
2
|
-
import TextureNode from
|
|
3
|
-
import UniformNode from
|
|
4
|
-
import { ShaderNodeObject } from
|
|
1
|
+
import { Texture } from '../../textures/Texture.js';
|
|
2
|
+
import TextureNode from '../accessors/TextureNode.js';
|
|
3
|
+
import UniformNode from '../core/UniformNode.js';
|
|
4
|
+
import { ShaderNodeObject } from '../shadernode/ShaderNode.js';
|
|
5
5
|
|
|
6
6
|
export default class MaxMipLevelNode extends UniformNode<0> {
|
|
7
|
-
|
|
7
|
+
constructor(textureNode: TextureNode);
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
get textureNode(): TextureNode;
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
get texture(): Texture;
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
export const maxMipLevel: (texture: Texture) => ShaderNodeObject<MaxMipLevelNode>;
|
|
@@ -1,22 +1,18 @@
|
|
|
1
|
-
import Node from
|
|
2
|
-
import { NodeRepresentation, ShaderNodeObject } from
|
|
1
|
+
import Node from '../core/Node.js';
|
|
2
|
+
import { NodeRepresentation, ShaderNodeObject } from '../shadernode/ShaderNode.js';
|
|
3
3
|
|
|
4
|
-
export type OscNodeMethod =
|
|
5
|
-
| typeof OscNode.SINE
|
|
6
|
-
| typeof OscNode.SQUARE
|
|
7
|
-
| typeof OscNode.TRIANGLE
|
|
8
|
-
| typeof OscNode.SAWTOOTH;
|
|
4
|
+
export type OscNodeMethod = typeof OscNode.SINE | typeof OscNode.SQUARE | typeof OscNode.TRIANGLE | typeof OscNode.SAWTOOTH;
|
|
9
5
|
|
|
10
6
|
export default class OscNode extends Node {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
7
|
+
static SINE: 'sine';
|
|
8
|
+
static SQUARE: 'square';
|
|
9
|
+
static TRIANGLE: 'triangle';
|
|
10
|
+
static SAWTOOTH: 'sawtooth';
|
|
15
11
|
|
|
16
|
-
|
|
17
|
-
|
|
12
|
+
method: OscNodeMethod;
|
|
13
|
+
timeNode: Node;
|
|
18
14
|
|
|
19
|
-
|
|
15
|
+
constructor(method: OscNodeMethod, timeNode?: Node);
|
|
20
16
|
}
|
|
21
17
|
|
|
22
18
|
export const oscSine: (timeNode?: NodeRepresentation) => ShaderNodeObject<OscNode>;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import Node from
|
|
2
|
-
import TempNode from
|
|
3
|
-
import { NodeRepresentation, ShaderNodeObject } from
|
|
1
|
+
import Node from '../core/Node.js';
|
|
2
|
+
import TempNode from '../core/TempNode.js';
|
|
3
|
+
import { NodeRepresentation, ShaderNodeObject } from '../shadernode/ShaderNode.js';
|
|
4
4
|
|
|
5
5
|
export type PackingNodeScope = typeof PackingNode.DIRECTION_TO_COLOR | typeof PackingNode.COLOR_TO_DIRECTION;
|
|
6
6
|
|
|
7
7
|
declare class PackingNode extends TempNode {
|
|
8
|
-
|
|
8
|
+
constructor(scope: PackingNodeScope, node: Node);
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
static DIRECTION_TO_COLOR: 'directionToColor';
|
|
11
|
+
static COLOR_TO_DIRECTION: 'colorToDirection';
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
export default PackingNode;
|
|
@@ -16,9 +16,9 @@ export default PackingNode;
|
|
|
16
16
|
export const directionToColor: (node: NodeRepresentation) => ShaderNodeObject<PackingNode>;
|
|
17
17
|
export const colorToDirection: (node: NodeRepresentation) => ShaderNodeObject<PackingNode>;
|
|
18
18
|
|
|
19
|
-
declare module
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
declare module '../shadernode/ShaderNode.js' {
|
|
20
|
+
interface NodeElements {
|
|
21
|
+
directionToColor: typeof directionToColor;
|
|
22
|
+
colorToDirection: typeof colorToDirection;
|
|
23
|
+
}
|
|
24
24
|
}
|
|
@@ -1,45 +1,40 @@
|
|
|
1
|
-
import { TextureDataType } from
|
|
2
|
-
import { RenderTarget } from
|
|
3
|
-
import TextureNode from
|
|
4
|
-
import Node from
|
|
5
|
-
import { NodeRepresentation, ShaderNodeObject } from
|
|
1
|
+
import { TextureDataType } from '../../constants.js';
|
|
2
|
+
import { RenderTarget } from '../../core/RenderTarget.js';
|
|
3
|
+
import TextureNode from '../accessors/TextureNode.js';
|
|
4
|
+
import Node from '../core/Node.js';
|
|
5
|
+
import { NodeRepresentation, ShaderNodeObject } from '../shadernode/ShaderNode.js';
|
|
6
6
|
|
|
7
7
|
export interface RTTNodeOptions {
|
|
8
|
-
|
|
8
|
+
type: TextureDataType;
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
declare class RTTNode extends TextureNode {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
node: Node;
|
|
13
|
+
width: number | null;
|
|
14
|
+
height: number | null;
|
|
15
15
|
|
|
16
|
-
|
|
16
|
+
renderTarget: RenderTarget | null;
|
|
17
17
|
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
textureNeedsUpdate: boolean;
|
|
19
|
+
autoUpdate: boolean;
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
pixelRatio?: number;
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
constructor(node: Node, width?: number | null, height?: number | null, options?: RTTNodeOptions);
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
get autoSize(): boolean;
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
setSize(width: number | null, height: number | null): void;
|
|
28
28
|
|
|
29
|
-
|
|
29
|
+
setPixelRatio(pixelRatio: number): void;
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
export default RTTNode;
|
|
33
33
|
|
|
34
|
-
export const rtt: (
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
declare module "../shadernode/ShaderNode.js" {
|
|
42
|
-
interface NodeElements {
|
|
43
|
-
toTexture: typeof rtt;
|
|
44
|
-
}
|
|
34
|
+
export const rtt: (node: NodeRepresentation, width?: number | null, height?: number | null, options?: RTTNodeOptions) => ShaderNodeObject<RTTNode>;
|
|
35
|
+
|
|
36
|
+
declare module '../shadernode/ShaderNode.js' {
|
|
37
|
+
interface NodeElements {
|
|
38
|
+
toTexture: typeof rtt;
|
|
39
|
+
}
|
|
45
40
|
}
|
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
import { Camera } from
|
|
2
|
-
import { Object3D } from
|
|
3
|
-
import { RenderTarget } from
|
|
4
|
-
import TextureNode from
|
|
5
|
-
import { ShaderNodeObject } from
|
|
1
|
+
import { Camera } from '../../cameras/Camera.js';
|
|
2
|
+
import { Object3D } from '../../core/Object3D.js';
|
|
3
|
+
import { RenderTarget } from '../../core/RenderTarget.js';
|
|
4
|
+
import TextureNode from '../accessors/TextureNode.js';
|
|
5
|
+
import { ShaderNodeObject } from '../shadernode/ShaderNode.js';
|
|
6
6
|
|
|
7
7
|
export interface ReflectorNodeParameters {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
target?: Object3D | undefined;
|
|
9
|
+
resolution?: number | undefined;
|
|
10
|
+
generateMipmaps?: boolean | undefined;
|
|
11
|
+
bounces?: boolean | undefined;
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
export default class ReflectorNode extends TextureNode {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
15
|
+
target: Object3D;
|
|
16
|
+
resolution: number;
|
|
17
|
+
generateMipmaps: boolean;
|
|
18
|
+
bounces: boolean;
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
virtualCameras: WeakMap<Camera, Camera>;
|
|
21
|
+
renderTargets: WeakMap<Camera, RenderTarget>;
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
constructor(parameters?: ReflectorNodeParameters);
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
getTextureNode(): TextureNode;
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
getVirtualCamera(camera: Camera): Camera;
|
|
28
28
|
|
|
29
|
-
|
|
29
|
+
getRenderTarget(camera: Camera): RenderTarget;
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
export const reflector: (parameters?: ReflectorNodeParameters) => ShaderNodeObject<ReflectorNode>;
|