x_ite 8.4.3 → 8.5.3
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/.vscode/settings.json +5 -1
- package/Makefile +0 -3
- package/build/bin/components.js +173 -0
- package/build/bin/tags.pl +28 -0
- package/build/bin/tests.pl +80 -2
- package/build/bin/version.pl +12 -7
- package/dist/assets/components/Annotation.js +13 -13
- package/dist/assets/components/Annotation.min.js +1 -1
- package/dist/assets/components/CADGeometry.js +13 -13
- package/dist/assets/components/CADGeometry.min.js +1 -1
- package/dist/assets/components/CubeMapTexturing.js +28 -29
- package/dist/assets/components/CubeMapTexturing.min.js +1 -1
- package/dist/assets/components/DIS.js +13 -13
- package/dist/assets/components/DIS.min.js +1 -1
- package/dist/assets/components/EventUtilities.js +9 -9
- package/dist/assets/components/EventUtilities.min.js +1 -1
- package/dist/assets/components/Geometry2D.js +19 -19
- package/dist/assets/components/Geometry2D.min.js +1 -1
- package/dist/assets/components/Geospatial.js +33 -33
- package/dist/assets/components/Geospatial.min.js +1 -1
- package/dist/assets/components/HAnim.js +63 -42
- package/dist/assets/components/HAnim.min.js +1 -1
- package/dist/assets/components/KeyDeviceSensor.js +8 -8
- package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
- package/dist/assets/components/Layout.js +37 -29
- package/dist/assets/components/Layout.min.js +1 -1
- package/dist/assets/components/NURBS.js +29 -31
- package/dist/assets/components/NURBS.min.js +1 -1
- package/dist/assets/components/ParticleSystems.js +23 -23
- package/dist/assets/components/ParticleSystems.min.js +1 -1
- package/dist/assets/components/Picking.js +19 -19
- package/dist/assets/components/Picking.min.js +1 -1
- package/dist/assets/components/RigidBodyPhysics.js +24 -19
- package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
- package/dist/assets/components/Scripting.js +30 -30
- package/dist/assets/components/Scripting.min.js +1 -1
- package/dist/assets/components/Text.js +172 -594
- package/dist/assets/components/Text.min.js +1 -1
- package/dist/assets/components/TextureProjector.js +31 -47
- package/dist/assets/components/TextureProjector.min.js +1 -1
- package/dist/assets/components/Texturing3D.js +367 -346
- package/dist/assets/components/Texturing3D.min.js +1 -1
- package/dist/assets/components/VolumeRendering.js +19 -19
- package/dist/assets/components/VolumeRendering.min.js +1 -1
- package/dist/assets/components/X_ITE.js +9 -9
- package/dist/assets/components/X_ITE.min.js +1 -1
- package/dist/x_ite.css +1 -1
- package/dist/x_ite.js +12174 -3553
- package/dist/x_ite.min.js +1 -1
- package/dist/x_ite.zip +0 -0
- package/docs/_config.yml +5 -136
- package/docs/_data/nav/components-CADGeometry.yml +14 -0
- package/docs/_data/nav/components-Core.yml +16 -0
- package/docs/_data/nav/components-CubeMapTexturing.yml +8 -0
- package/docs/_data/nav/components-DIS.yml +14 -0
- package/docs/_data/nav/components-EnvironmentalEffects.yml +12 -0
- package/docs/_data/nav/components-EnvironmentalSensor.yml +8 -0
- package/docs/_data/nav/components-EventUtilities.yml +16 -0
- package/docs/_data/nav/components-Followers.yml +30 -0
- package/docs/_data/nav/components-Geometry2D.yml +18 -0
- package/docs/_data/nav/components-Geometry3D.yml +16 -0
- package/docs/_data/nav/components-Geospatial.yml +24 -0
- package/docs/_data/nav/components-Grouping.yml +10 -0
- package/docs/_data/nav/components-HAnim.yml +14 -0
- package/docs/_data/nav/components-Interpolation.yml +28 -0
- package/docs/_data/nav/components-KeyDeviceSensor.yml +6 -0
- package/docs/_data/nav/components-Layering.yml +8 -0
- package/docs/_data/nav/components-Layout.yml +12 -0
- package/docs/_data/nav/components-Lighting.yml +10 -0
- package/docs/_data/nav/components-NURBS.yml +30 -0
- package/docs/_data/nav/components-Navigation.yml +16 -0
- package/docs/_data/nav/components-Networking.yml +8 -0
- package/docs/_data/nav/components-ParticleSystems.yml +22 -0
- package/docs/_data/nav/components-Picking.yml +12 -0
- package/docs/_data/nav/components-PointingDeviceSensor.yml +10 -0
- package/docs/_data/nav/components-Rendering.yml +30 -0
- package/docs/_data/nav/components-RigidBodyPhysics.yml +30 -0
- package/docs/_data/nav/components-Scripting.yml +4 -0
- package/docs/_data/nav/components-Shaders.yml +18 -0
- package/docs/_data/nav/components-Shape.yml +22 -0
- package/docs/_data/nav/components-Sound.yml +44 -0
- package/docs/_data/nav/components-Text.yml +6 -0
- package/docs/_data/nav/components-TextureProjector.yml +6 -0
- package/docs/_data/nav/components-Texturing.yml +22 -0
- package/docs/_data/nav/components-Texturing3D.yml +18 -0
- package/docs/_data/nav/components-Time.yml +4 -0
- package/docs/_data/nav/components-VolumeRendering.yml +28 -0
- package/docs/_data/nav/components-X_ITE.yml +4 -0
- package/docs/_data/nav/main.yml +26 -0
- package/docs/_data/nav/reference.yml +18 -0
- package/docs/_data/nav/tutorials-animation-sensors-and-geometry.yml +18 -0
- package/docs/_data/nav/tutorials-basic.yml +6 -0
- package/docs/_data/nav/tutorials-optimize-your-scene.yml +6 -0
- package/docs/_data/nav/tutorials-scripts-and-prototypes.yml +12 -0
- package/docs/_data/nav/tutorials-shapes-geometry-and-appearance.yml +16 -0
- package/docs/_data/nav/tutorials-textures-lights-and-environment.yml +20 -0
- package/docs/_includes/nav.html +2 -2
- package/docs/_includes/scripts.html +2 -1
- package/docs/_posts/accessing-the-external-browser.md +1 -1
- package/docs/_posts/browser-support.md +1 -1
- package/docs/_posts/components/CADGeometry/CADAssembly.md +83 -0
- package/docs/_posts/components/CADGeometry/CADFace.md +70 -0
- package/docs/_posts/components/CADGeometry/CADLayer.md +84 -0
- package/docs/_posts/components/CADGeometry/CADPart.md +117 -0
- package/docs/_posts/components/CADGeometry/IndexedQuadSet.md +125 -0
- package/docs/_posts/components/CADGeometry/QuadSet.md +113 -0
- package/docs/_posts/components/Core/MetadataBoolean.md +90 -0
- package/docs/_posts/components/Core/MetadataDouble.md +67 -0
- package/docs/_posts/components/Core/MetadataFloat.md +67 -0
- package/docs/_posts/components/Core/MetadataInteger.md +66 -0
- package/docs/_posts/components/Core/MetadataSet.md +63 -0
- package/docs/_posts/components/Core/MetadataString.md +66 -0
- package/docs/_posts/components/Core/WorldInfo.md +54 -0
- package/docs/_posts/components/CubeMapTexturing/ComposedCubeMapTexture.md +76 -0
- package/docs/_posts/components/CubeMapTexturing/GeneratedCubeMapTexture.md +65 -0
- package/docs/_posts/components/CubeMapTexturing/ImageCubeMapTexture.md +66 -0
- package/docs/_posts/components/DIS/DISEntityManager.md +73 -0
- package/docs/_posts/components/DIS/DISEntityTypeMapping.md +88 -0
- package/docs/_posts/components/DIS/EspduTransform.md +416 -0
- package/docs/_posts/components/DIS/ReceiverPdu.md +168 -0
- package/docs/_posts/components/DIS/SignalPdu.md +168 -0
- package/docs/_posts/components/DIS/TransmitterPdu.md +232 -0
- package/docs/_posts/components/EnvironmentalEffects/Background.md +189 -0
- package/docs/_posts/components/EnvironmentalEffects/Fog.md +97 -0
- package/docs/_posts/components/EnvironmentalEffects/FogCoordinate.md +40 -0
- package/docs/_posts/components/EnvironmentalEffects/LocalFog.md +84 -0
- package/docs/_posts/components/EnvironmentalEffects/TextureBackground.md +142 -0
- package/docs/_posts/components/EnvironmentalSensor/ProximitySensor.md +90 -0
- package/docs/_posts/components/EnvironmentalSensor/TransformSensor.md +91 -0
- package/docs/_posts/components/EnvironmentalSensor/VisibilitySensor.md +73 -0
- package/docs/_posts/components/EventUtilities/BooleanFilter.md +62 -0
- package/docs/_posts/components/EventUtilities/BooleanSequencer.md +86 -0
- package/docs/_posts/components/EventUtilities/BooleanToggle.md +46 -0
- package/docs/_posts/components/EventUtilities/BooleanTrigger.md +47 -0
- package/docs/_posts/components/EventUtilities/IntegerSequencer.md +90 -0
- package/docs/_posts/components/EventUtilities/IntegerTrigger.md +51 -0
- package/docs/_posts/components/EventUtilities/TimeTrigger.md +47 -0
- package/docs/_posts/components/Followers/ColorChaser.md +77 -0
- package/docs/_posts/components/Followers/ColorDamper.md +85 -0
- package/docs/_posts/components/Followers/CoordinateChaser.md +76 -0
- package/docs/_posts/components/Followers/CoordinateDamper.md +80 -0
- package/docs/_posts/components/Followers/OrientationChaser.md +72 -0
- package/docs/_posts/components/Followers/OrientationDamper.md +80 -0
- package/docs/_posts/components/Followers/PositionChaser.md +72 -0
- package/docs/_posts/components/Followers/PositionChaser2D.md +72 -0
- package/docs/_posts/components/Followers/PositionDamper.md +80 -0
- package/docs/_posts/components/Followers/PositionDamper2D.md +80 -0
- package/docs/_posts/components/Followers/ScalarChaser.md +76 -0
- package/docs/_posts/components/Followers/ScalarDamper.md +80 -0
- package/docs/_posts/components/Followers/TexCoordChaser2D.md +72 -0
- package/docs/_posts/components/Followers/TexCoordDamper2D.md +80 -0
- package/docs/_posts/components/Geometry2D/Arc2D.md +71 -0
- package/docs/_posts/components/Geometry2D/ArcClose2D.md +91 -0
- package/docs/_posts/components/Geometry2D/Circle2D.md +55 -0
- package/docs/_posts/components/Geometry2D/Disk2D.md +75 -0
- package/docs/_posts/components/Geometry2D/Polyline2D.md +54 -0
- package/docs/_posts/components/Geometry2D/Polypoint2D.md +54 -0
- package/docs/_posts/components/Geometry2D/Rectangle2D.md +66 -0
- package/docs/_posts/components/Geometry2D/TriangleSet2D.md +66 -0
- package/docs/_posts/components/Geometry3D/Box.md +66 -0
- package/docs/_posts/components/Geometry3D/Cone.md +90 -0
- package/docs/_posts/components/Geometry3D/Cylinder.md +98 -0
- package/docs/_posts/components/Geometry3D/ElevationGrid.md +162 -0
- package/docs/_posts/components/Geometry3D/Extrusion.md +170 -0
- package/docs/_posts/components/Geometry3D/IndexedFaceSet.md +208 -0
- package/docs/_posts/components/Geometry3D/Sphere.md +66 -0
- package/docs/_posts/components/Geospatial/GeoCoordinate.md +65 -0
- package/docs/_posts/components/Geospatial/GeoElevationGrid.md +180 -0
- package/docs/_posts/components/Geospatial/GeoLOD.md +128 -0
- package/docs/_posts/components/Geospatial/GeoLocation.md +93 -0
- package/docs/_posts/components/Geospatial/GeoMetadata.md +75 -0
- package/docs/_posts/components/Geospatial/GeoOrigin.md +69 -0
- package/docs/_posts/components/Geospatial/GeoPositionInterpolator.md +95 -0
- package/docs/_posts/components/Geospatial/GeoProximitySensor.md +109 -0
- package/docs/_posts/components/Geospatial/GeoTouchSensor.md +108 -0
- package/docs/_posts/components/Geospatial/GeoTransform.md +121 -0
- package/docs/_posts/components/Geospatial/GeoViewpoint.md +126 -0
- package/docs/_posts/components/Grouping/Group.md +75 -0
- package/docs/_posts/components/Grouping/StaticGroup.md +65 -0
- package/docs/_posts/components/Grouping/Switch.md +89 -0
- package/docs/_posts/components/Grouping/Transform.md +126 -0
- package/docs/_posts/components/HAnim/HAnimDisplacer.md +89 -0
- package/docs/_posts/components/HAnim/HAnimHumanoid.md +136 -0
- package/docs/_posts/components/HAnim/HAnimJoint.md +165 -0
- package/docs/_posts/components/HAnim/HAnimMotion.md +68 -0
- package/docs/_posts/components/HAnim/HAnimSegment.md +107 -0
- package/docs/_posts/components/HAnim/HAnimSite.md +108 -0
- package/docs/_posts/components/Interpolation/ColorInterpolator.md +73 -0
- package/docs/_posts/components/Interpolation/CoordinateInterpolator.md +76 -0
- package/docs/_posts/components/Interpolation/CoordinateInterpolator2D.md +73 -0
- package/docs/_posts/components/Interpolation/EaseInEaseOut.md +67 -0
- package/docs/_posts/components/Interpolation/NormalInterpolator.md +68 -0
- package/docs/_posts/components/Interpolation/OrientationInterpolator.md +72 -0
- package/docs/_posts/components/Interpolation/PositionInterpolator.md +72 -0
- package/docs/_posts/components/Interpolation/PositionInterpolator2D.md +77 -0
- package/docs/_posts/components/Interpolation/ScalarInterpolator.md +76 -0
- package/docs/_posts/components/Interpolation/SplinePositionInterpolator.md +93 -0
- package/docs/_posts/components/Interpolation/SplinePositionInterpolator2D.md +93 -0
- package/docs/_posts/components/Interpolation/SplineScalarInterpolator.md +106 -0
- package/docs/_posts/components/Interpolation/SquadOrientationInterpolator.md +78 -0
- package/docs/_posts/components/KeyDeviceSensor/KeySensor.md +78 -0
- package/docs/_posts/components/KeyDeviceSensor/StringSensor.md +70 -0
- package/docs/_posts/components/Layering/Layer.md +67 -0
- package/docs/_posts/components/Layering/LayerSet.md +78 -0
- package/docs/_posts/components/Layering/Viewport.md +80 -0
- package/docs/_posts/components/Layout/Layout.md +107 -0
- package/docs/_posts/components/Layout/LayoutGroup.md +85 -0
- package/docs/_posts/components/Layout/LayoutLayer.md +74 -0
- package/docs/_posts/components/Layout/ScreenFontStyle.md +137 -0
- package/docs/_posts/components/Layout/ScreenGroup.md +71 -0
- package/docs/_posts/components/Lighting/DirectionalLight.md +100 -0
- package/docs/_posts/components/Lighting/EnvironmentLight.md +91 -0
- package/docs/_posts/components/Lighting/PointLight.md +103 -0
- package/docs/_posts/components/Lighting/SpotLight.md +132 -0
- package/docs/_posts/components/NURBS/Contour2D.md +57 -0
- package/docs/_posts/components/NURBS/ContourPolyline2D.md +46 -0
- package/docs/_posts/components/NURBS/CoordinateDouble.md +47 -0
- package/docs/_posts/components/NURBS/NurbsCurve.md +71 -0
- package/docs/_posts/components/NURBS/NurbsCurve2D.md +66 -0
- package/docs/_posts/components/NURBS/NurbsOrientationInterpolator.md +70 -0
- package/docs/_posts/components/NURBS/NurbsPatchSurface.md +106 -0
- package/docs/_posts/components/NURBS/NurbsPositionInterpolator.md +70 -0
- package/docs/_posts/components/NURBS/NurbsSet.md +66 -0
- package/docs/_posts/components/NURBS/NurbsSurfaceInterpolator.md +90 -0
- package/docs/_posts/components/NURBS/NurbsSweptSurface.md +69 -0
- package/docs/_posts/components/NURBS/NurbsSwungSurface.md +65 -0
- package/docs/_posts/components/NURBS/NurbsTextureCoordinate.md +77 -0
- package/docs/_posts/components/NURBS/NurbsTrimmedSurface.md +114 -0
- package/docs/_posts/components/Navigation/Billboard.md +88 -0
- package/docs/_posts/components/Navigation/Collision.md +102 -0
- package/docs/_posts/components/Navigation/LOD.md +99 -0
- package/docs/_posts/components/Navigation/NavigationInfo.md +122 -0
- package/docs/_posts/components/Navigation/OrthoViewpoint.md +117 -0
- package/docs/_posts/components/Navigation/Viewpoint.md +117 -0
- package/docs/_posts/components/Navigation/ViewpointGroup.md +80 -0
- package/docs/_posts/components/Networking/Anchor.md +111 -0
- package/docs/_posts/components/Networking/Inline.md +115 -0
- package/docs/_posts/components/Networking/LoadSensor.md +91 -0
- package/docs/_posts/components/ParticleSystems/BoundedPhysicsModel.md +54 -0
- package/docs/_posts/components/ParticleSystems/ConeEmitter.md +76 -0
- package/docs/_posts/components/ParticleSystems/ExplosionEmitter.md +72 -0
- package/docs/_posts/components/ParticleSystems/ForcePhysicsModel.md +58 -0
- package/docs/_posts/components/ParticleSystems/ParticleSystem.md +177 -0
- package/docs/_posts/components/ParticleSystems/PointEmitter.md +76 -0
- package/docs/_posts/components/ParticleSystems/PolylineEmitter.md +94 -0
- package/docs/_posts/components/ParticleSystems/SurfaceEmitter.md +90 -0
- package/docs/_posts/components/ParticleSystems/VolumeEmitter.md +90 -0
- package/docs/_posts/components/ParticleSystems/WindPhysicsModel.md +68 -0
- package/docs/_posts/components/Picking/LinePickSensor.md +125 -0
- package/docs/_posts/components/Picking/PickableGroup.md +93 -0
- package/docs/_posts/components/Picking/PointPickSensor.md +112 -0
- package/docs/_posts/components/Picking/PrimitivePickSensor.md +114 -0
- package/docs/_posts/components/Picking/VolumePickSensor.md +107 -0
- package/docs/_posts/components/PointingDeviceSensor/CylinderSensor.md +122 -0
- package/docs/_posts/components/PointingDeviceSensor/PlaneSensor.md +114 -0
- package/docs/_posts/components/PointingDeviceSensor/SphereSensor.md +89 -0
- package/docs/_posts/components/PointingDeviceSensor/TouchSensor.md +87 -0
- package/docs/_posts/components/Rendering/ClipPlane.md +67 -0
- package/docs/_posts/components/Rendering/Color.md +56 -0
- package/docs/_posts/components/Rendering/ColorRGBA.md +61 -0
- package/docs/_posts/components/Rendering/Coordinate.md +45 -0
- package/docs/_posts/components/Rendering/IndexedLineSet.md +128 -0
- package/docs/_posts/components/Rendering/IndexedTriangleFanSet.md +128 -0
- package/docs/_posts/components/Rendering/IndexedTriangleSet.md +128 -0
- package/docs/_posts/components/Rendering/IndexedTriangleStripSet.md +116 -0
- package/docs/_posts/components/Rendering/LineSet.md +85 -0
- package/docs/_posts/components/Rendering/Normal.md +41 -0
- package/docs/_posts/components/Rendering/PointSet.md +76 -0
- package/docs/_posts/components/Rendering/TriangleFanSet.md +112 -0
- package/docs/_posts/components/Rendering/TriangleSet.md +108 -0
- package/docs/_posts/components/Rendering/TriangleStripSet.md +116 -0
- package/docs/_posts/components/RigidBodyPhysics/BallJoint.md +78 -0
- package/docs/_posts/components/RigidBodyPhysics/CollidableOffset.md +75 -0
- package/docs/_posts/components/RigidBodyPhysics/CollidableShape.md +83 -0
- package/docs/_posts/components/RigidBodyPhysics/CollisionCollection.md +90 -0
- package/docs/_posts/components/RigidBodyPhysics/CollisionSensor.md +65 -0
- package/docs/_posts/components/RigidBodyPhysics/CollisionSpace.md +70 -0
- package/docs/_posts/components/RigidBodyPhysics/Contact.md +117 -0
- package/docs/_posts/components/RigidBodyPhysics/DoubleAxisHingeJoint.md +162 -0
- package/docs/_posts/components/RigidBodyPhysics/MotorJoint.md +183 -0
- package/docs/_posts/components/RigidBodyPhysics/RigidBody.md +175 -0
- package/docs/_posts/components/RigidBodyPhysics/RigidBodyCollection.md +120 -0
- package/docs/_posts/components/RigidBodyPhysics/SingleAxisHingeJoint.md +108 -0
- package/docs/_posts/components/RigidBodyPhysics/SliderJoint.md +106 -0
- package/docs/_posts/components/RigidBodyPhysics/UniversalJoint.md +119 -0
- package/docs/_posts/components/Scripting/Script.md +81 -0
- package/docs/_posts/components/Shaders/ComposedShader.md +81 -0
- package/docs/_posts/components/Shaders/FloatVertexAttribute.md +65 -0
- package/docs/_posts/components/Shaders/Matrix3VertexAttribute.md +53 -0
- package/docs/_posts/components/Shaders/Matrix4VertexAttribute.md +53 -0
- package/docs/_posts/components/Shaders/PackagedShader.md +77 -0
- package/docs/_posts/components/Shaders/ProgramShader.md +71 -0
- package/docs/_posts/components/Shaders/ShaderPart.md +76 -0
- package/docs/_posts/components/Shaders/ShaderProgram.md +68 -0
- package/docs/_posts/components/Shape/AcousticProperties.md +52 -0
- package/docs/_posts/components/Shape/Appearance.md +123 -0
- package/docs/_posts/components/Shape/FillProperties.md +67 -0
- package/docs/_posts/components/Shape/LineProperties.md +63 -0
- package/docs/_posts/components/Shape/Material.md +217 -0
- package/docs/_posts/components/Shape/PhysicalMaterial.md +173 -0
- package/docs/_posts/components/Shape/PointProperties.md +84 -0
- package/docs/_posts/components/Shape/Shape.md +63 -0
- package/docs/_posts/components/Shape/TwoSidedMaterial.md +149 -0
- package/docs/_posts/components/Shape/UnlitMaterial.md +115 -0
- package/docs/_posts/components/Sound/Analyser.md +72 -0
- package/docs/_posts/components/Sound/AudioClip.md +139 -0
- package/docs/_posts/components/Sound/AudioDestination.md +52 -0
- package/docs/_posts/components/Sound/BiquadFilter.md +70 -0
- package/docs/_posts/components/Sound/BufferAudioSource.md +86 -0
- package/docs/_posts/components/Sound/ChannelMerger.md +46 -0
- package/docs/_posts/components/Sound/ChannelSelector.md +48 -0
- package/docs/_posts/components/Sound/ChannelSplitter.md +48 -0
- package/docs/_posts/components/Sound/Convolver.md +66 -0
- package/docs/_posts/components/Sound/Delay.md +66 -0
- package/docs/_posts/components/Sound/DynamicsCompressor.md +74 -0
- package/docs/_posts/components/Sound/Gain.md +62 -0
- package/docs/_posts/components/Sound/ListenerPointSource.md +62 -0
- package/docs/_posts/components/Sound/MicrophoneSource.md +54 -0
- package/docs/_posts/components/Sound/OscillatorSource.md +58 -0
- package/docs/_posts/components/Sound/PeriodicWave.md +42 -0
- package/docs/_posts/components/Sound/Sound.md +92 -0
- package/docs/_posts/components/Sound/SpatialSound.md +68 -0
- package/docs/_posts/components/Sound/StreamAudioDestination.md +52 -0
- package/docs/_posts/components/Sound/StreamAudioSource.md +54 -0
- package/docs/_posts/components/Sound/WaveShaper.md +66 -0
- package/docs/_posts/components/Text/FontStyle.md +145 -0
- package/docs/_posts/components/Text/Text.md +102 -0
- package/docs/_posts/components/TextureProjector/TextureProjector.md +52 -0
- package/docs/_posts/components/TextureProjector/TextureProjectorParallel.md +52 -0
- package/docs/_posts/components/Texturing/ImageTexture.md +134 -0
- package/docs/_posts/components/Texturing/MovieTexture.md +221 -0
- package/docs/_posts/components/Texturing/MultiTexture.md +100 -0
- package/docs/_posts/components/Texturing/MultiTextureCoordinate.md +47 -0
- package/docs/_posts/components/Texturing/MultiTextureTransform.md +47 -0
- package/docs/_posts/components/Texturing/PixelTexture.md +80 -0
- package/docs/_posts/components/Texturing/TextureCoordinate.md +52 -0
- package/docs/_posts/components/Texturing/TextureCoordinateGenerator.md +64 -0
- package/docs/_posts/components/Texturing/TextureProperties.md +137 -0
- package/docs/_posts/components/Texturing/TextureTransform.md +73 -0
- package/docs/_posts/components/Texturing3D/ComposedTexture3D.md +76 -0
- package/docs/_posts/components/Texturing3D/ImageTexture3D.md +132 -0
- package/docs/_posts/components/Texturing3D/ImageTextureAtlas.md +131 -0
- package/docs/_posts/components/Texturing3D/PixelTexture3D.md +75 -0
- package/docs/_posts/components/Texturing3D/TextureCoordinate3D.md +53 -0
- package/docs/_posts/components/Texturing3D/TextureCoordinate4D.md +52 -0
- package/docs/_posts/components/Texturing3D/TextureTransform3D.md +69 -0
- package/docs/_posts/components/Texturing3D/TextureTransformMatrix3D.md +57 -0
- package/docs/_posts/components/Time/TimeSensor.md +136 -0
- package/docs/_posts/components/VolumeRendering/BlendedVolumeStyle.md +92 -0
- package/docs/_posts/components/VolumeRendering/BoundaryEnhancementVolumeStyle.md +53 -0
- package/docs/_posts/components/VolumeRendering/CartoonVolumeStyle.md +83 -0
- package/docs/_posts/components/VolumeRendering/ComposedVolumeStyle.md +51 -0
- package/docs/_posts/components/VolumeRendering/EdgeEnhancementVolumeStyle.md +67 -0
- package/docs/_posts/components/VolumeRendering/IsoSurfaceVolumeData.md +99 -0
- package/docs/_posts/components/VolumeRendering/OpacityMapVolumeStyle.md +51 -0
- package/docs/_posts/components/VolumeRendering/ProjectionVolumeStyle.md +48 -0
- package/docs/_posts/components/VolumeRendering/SegmentedVolumeData.md +80 -0
- package/docs/_posts/components/VolumeRendering/ShadedVolumeStyle.md +75 -0
- package/docs/_posts/components/VolumeRendering/SilhouetteEnhancementVolumeStyle.md +63 -0
- package/docs/_posts/components/VolumeRendering/ToneMappedVolumeStyle.md +71 -0
- package/docs/_posts/components/VolumeRendering/VolumeData.md +71 -0
- package/docs/_posts/components/X_ITE/BlendMode.md +94 -0
- package/docs/_posts/custom-shaders.md +9 -4
- package/docs/_posts/dom-integration.md +1 -6
- package/docs/_posts/features.md +2 -2
- package/docs/_posts/getting-started.md +100 -57
- package/docs/_posts/glossary.md +1 -1
- package/docs/_posts/how-to-configure-your-web-server.md +1 -1
- package/docs/_posts/reference/browser-services.md +78 -18
- package/docs/_posts/reference/constants-services.md +1 -1
- package/docs/_posts/reference/ecmascript-object-and-function-definitions.md +1 -1
- package/docs/_posts/reference/field-services-and-objects.md +8 -8
- package/docs/_posts/reference/prototype-services.md +7 -7
- package/docs/_posts/reference/route-services.md +1 -1
- package/docs/_posts/reference/scene-services.md +5 -5
- package/docs/_posts/reference/script-node-authoring-interface.md +1 -1
- package/docs/_posts/report-a-bug.md +1 -1
- package/docs/_posts/setup-a-localhost-server.md +5 -1
- package/docs/_posts/supported-nodes.md +239 -238
- package/docs/_posts/tutorials/adding-backgrounds.md +3 -3
- package/docs/_posts/tutorials/adding-fog.md +2 -2
- package/docs/_posts/tutorials/adding-sound.md +19 -19
- package/docs/_posts/tutorials/animating-transforms.md +17 -17
- package/docs/_posts/tutorials/basic-nodes.md +30 -30
- package/docs/_posts/tutorials/building-a-x3d-world.md +3 -3
- package/docs/_posts/tutorials/building-elevation-grids.md +7 -7
- package/docs/_posts/tutorials/building-extruded-shapes.md +7 -7
- package/docs/_posts/tutorials/building-primitive-shapes.md +13 -13
- package/docs/_posts/tutorials/building-shapes-out-of-points-lines-and-faces.md +21 -21
- package/docs/_posts/tutorials/controlling-appearance-with-materials.md +7 -7
- package/docs/_posts/tutorials/controlling-color-on-coordinate-based-geometry.md +11 -11
- package/docs/_posts/tutorials/controlling-detail.md +4 -4
- package/docs/_posts/tutorials/controlling-how-textures-are-mapped.md +7 -7
- package/docs/_posts/tutorials/controlling-navigation.md +3 -3
- package/docs/_posts/tutorials/controlling-shading-on-coordinate-based-geometry.md +13 -13
- package/docs/_posts/tutorials/controlling-the-viewpoint.md +3 -3
- package/docs/_posts/tutorials/creating-new-node-types.md +4 -4
- package/docs/_posts/tutorials/grouping-nodes.md +13 -13
- package/docs/_posts/tutorials/hello-world.md +1 -1
- package/docs/_posts/tutorials/improving-performance.md +1 -1
- package/docs/_posts/tutorials/increasing-rendering-speed.md +1 -1
- package/docs/_posts/tutorials/introducing-animation.md +10 -10
- package/docs/_posts/tutorials/introducing-script-use.md +3 -3
- package/docs/_posts/tutorials/introducing-x3d.md +1 -1
- package/docs/_posts/tutorials/lighting-your-world.md +4 -4
- package/docs/_posts/tutorials/mapping-textures.md +7 -7
- package/docs/_posts/tutorials/naming-nodes.md +1 -1
- package/docs/_posts/tutorials/overview.md +1 -1
- package/docs/_posts/tutorials/providing-information-about-your-world.md +2 -2
- package/docs/_posts/tutorials/sensing-the-viewer.md +15 -15
- package/docs/_posts/tutorials/sensing-viewer-actions.md +10 -10
- package/docs/_posts/tutorials/transforming-shapes.md +4 -4
- package/docs/_posts/tutorials/writing-program-scripts-with-ecmascript.md +5 -5
- package/docs/_posts/what's-new.md +40 -2
- package/docs/_tabs/components.md +383 -0
- package/docs/_tabs/imprint.md +1 -1
- package/docs/_tabs/laboratory.md +38 -6
- package/docs/_tabs/playground.html +22 -66
- package/docs/_tabs/reference.md +2 -1
- package/docs/_tabs/tags.md +1 -1
- package/docs/_tabs/tutorials.md +1 -1
- package/docs/assets/X3D/Michroma-Regular.ttf +0 -0
- package/docs/assets/X3D/peakpx.jpg +0 -0
- package/docs/assets/X3D/teaser.x3d +55 -0
- package/docs/assets/css/style.scss +120 -11
- package/docs/assets/img/laboratory/blend-mode.png +0 -0
- package/docs/assets/img/laboratory/dicom-nrrd.png +0 -0
- package/docs/assets/img/laboratory/earthquake.png +0 -0
- package/docs/assets/img/laboratory/gltf.png +0 -0
- package/docs/assets/img/laboratory/l-system.png +0 -0
- package/docs/assets/js/autoupdate.js +25 -0
- package/docs/laboratory/gltf-sample-viewer.html +318 -0
- package/docs/laboratory/x3d-visual-blend-mode-editor.html +1 -0
- package/package.json +9 -2
- package/src/assets/components/Texturing3D.js +5 -3
- package/src/assets/shaders/Types.glsl.js +5 -5
- package/src/assets/shaders/webgl1/PBR.fs.js +1 -1
- package/src/assets/shaders/webgl1/include/Colors.glsl.js +5 -7
- package/src/assets/shaders/webgl1/include/Fragment.glsl.js +4 -0
- package/src/assets/shaders/webgl1/include/Hatch.glsl.js +1 -1
- package/src/assets/shaders/webgl1/include/Texture.glsl.js +3 -3
- package/src/assets/shaders/webgl2/include/Colors.glsl.js +5 -7
- package/src/assets/shaders/webgl2/include/Hatch.glsl.js +1 -1
- package/src/assets/shaders/webgl2/include/Particle.glsl.js +2 -2
- package/src/assets/shaders/webgl2/include/Texture.glsl.js +2 -2
- package/src/bookmarks.js +12 -8
- package/src/examples.js +3 -0
- package/src/lib/jquery.js +20 -0
- package/src/lib/libgif/libgif.js +1004 -0
- package/src/lib/libtess.js +1 -0
- package/src/lib/nurbs/extras/sample.js +5 -7
- package/src/standard/Math/Algorithms/Bezier.js +175 -33
- package/src/standard/Math/Geometry/Box2.js +15 -55
- package/src/standard/Math/Geometry/Box3.js +19 -66
- package/src/standard/Math/Geometry/Triangle3.js +14 -79
- package/src/standard/Math/Numbers/Color3.js +4 -0
- package/src/standard/Math/Numbers/Color4.js +4 -0
- package/src/standard/Math/Numbers/Matrix3.js +11 -3
- package/src/standard/Math/Numbers/Matrix4.js +9 -6
- package/src/standard/Math/Numbers/Rotation4.js +72 -65
- package/src/tests.js +3 -0
- package/src/x_ite/Base/X3DArrayField.js +0 -2
- package/src/x_ite/Base/X3DInfoArray.js +2 -2
- package/src/x_ite/Base/X3DObjectArrayField.js +19 -0
- package/src/x_ite/Base/X3DTypedArrayField.js +149 -0
- package/src/x_ite/Browser/Core/BrowserOptions.js +108 -64
- package/src/x_ite/Browser/Core/Context.js +1 -1
- package/src/x_ite/Browser/Core/ContextMenu.js +2 -2
- package/src/x_ite/Browser/Core/Notification.js +1 -1
- package/src/x_ite/Browser/Core/RenderingProperties.js +4 -0
- package/src/x_ite/Browser/Core/X3DCoreContext.js +99 -54
- package/src/x_ite/Browser/Navigation/ExamineViewer.js +4 -14
- package/src/x_ite/Browser/Navigation/LookAtViewer.js +3 -13
- package/src/x_ite/Browser/Navigation/PlaneViewer.js +3 -12
- package/src/x_ite/Browser/Navigation/X3DFlyViewer.js +25 -22
- package/src/x_ite/Browser/Navigation/X3DViewer.js +12 -3
- package/src/x_ite/Browser/Networking/X3DNetworkingContext.js +2 -2
- package/src/x_ite/Browser/PointingDeviceSensor/PointingDevice.js +19 -15
- package/src/x_ite/Browser/Rendering/X3DRenderingContext.js +30 -10
- package/src/x_ite/Browser/Shaders/X3DShadersContext.js +1 -1
- package/src/x_ite/Browser/Shape/X3DShapeContext.js +30 -3
- package/src/x_ite/Browser/Text/PolygonText.js +137 -134
- package/src/x_ite/Browser/Texturing/GifMedia.js +113 -0
- package/src/x_ite/Browser/Texturing3D/DICOMParser.js +1 -6
- package/src/x_ite/Browser/Texturing3D/NRRDParser.js +81 -310
- package/src/x_ite/Browser/VERSION.js +1 -1
- package/src/x_ite/Browser/X3DBrowser.js +162 -122
- package/src/x_ite/Browser/X3DBrowserContext.js +7 -5
- package/src/x_ite/Components/Core/WorldInfo.js +3 -3
- package/src/x_ite/Components/Core/X3DNode.js +7 -7
- package/src/x_ite/Components/Core/X3DPrototypeInstance.js +1 -1
- package/src/x_ite/Components/CubeMapTexturing/ImageCubeMapTexture.js +2 -3
- package/src/x_ite/Components/Geometry3D/Extrusion.js +27 -23
- package/src/x_ite/Components/Geometry3D/IndexedFaceSet.js +10 -19
- package/src/x_ite/Components/Grouping/X3DBoundedObject.js +1 -3
- package/src/x_ite/Components/HAnim/HAnimHumanoid.js +39 -15
- package/src/x_ite/Components/HAnim/HAnimJoint.js +6 -9
- package/src/x_ite/Components/Layering/X3DLayerNode.js +21 -2
- package/src/x_ite/Components/Layout/Layout.js +4 -2
- package/src/x_ite/Components/Layout/ScreenFontStyle.js +6 -0
- package/src/x_ite/Components/Lighting/DirectionalLight.js +4 -11
- package/src/x_ite/Components/Lighting/EnvironmentLight.js +1 -1
- package/src/x_ite/Components/Lighting/PointLight.js +4 -11
- package/src/x_ite/Components/Lighting/SpotLight.js +4 -11
- package/src/x_ite/Components/Lighting/X3DLightNode.js +7 -9
- package/src/x_ite/Components/Navigation/OrthoViewpoint.js +2 -2
- package/src/x_ite/Components/Navigation/X3DViewpointNode.js +14 -6
- package/src/x_ite/Components/Networking/Inline.js +48 -59
- package/src/x_ite/Components/Networking/X3DUrlObject.js +1 -1
- package/src/x_ite/Components/PointingDeviceSensor/CylinderSensor.js +2 -2
- package/src/x_ite/Components/Rendering/X3DLineGeometryNode.js +7 -13
- package/src/x_ite/Components/Rendering/X3DPointGeometryNode.js +4 -2
- package/src/x_ite/Components/RigidBodyPhysics/RigidBody.js +4 -2
- package/src/x_ite/Components/Scripting/Script.js +2 -2
- package/src/x_ite/Components/Shaders/ShaderPart.js +1 -1
- package/src/x_ite/Components/Shaders/X3DProgrammableShaderObject.js +1 -3
- package/src/x_ite/Components/Shape/Appearance.js +27 -1
- package/src/x_ite/Components/Shape/FillProperties.js +1 -0
- package/src/x_ite/Components/Shape/LineProperties.js +15 -9
- package/src/x_ite/Components/Shape/Material.js +33 -22
- package/src/x_ite/Components/Shape/PhysicalMaterial.js +22 -15
- package/src/x_ite/Components/Shape/PointProperties.js +23 -7
- package/src/x_ite/Components/Shape/UnlitMaterial.js +3 -2
- package/src/x_ite/Components/Shape/X3DOneSidedMaterialNode.js +25 -19
- package/src/x_ite/Components/Sound/AudioClip.js +5 -5
- package/src/x_ite/Components/Sound/X3DSoundSourceNode.js +26 -34
- package/src/x_ite/Components/Text/X3DFontStyleNode.js +1 -1
- package/src/x_ite/Components/TextureProjector/TextureProjector.js +4 -12
- package/src/x_ite/Components/TextureProjector/TextureProjectorParallel.js +6 -14
- package/src/x_ite/Components/TextureProjector/X3DTextureProjectorNode.js +7 -7
- package/src/x_ite/Components/Texturing/ImageTexture.js +15 -10
- package/src/x_ite/Components/Texturing/MovieTexture.js +51 -11
- package/src/x_ite/Components/Texturing3D/ImageTexture3D.js +2 -2
- package/src/x_ite/Components/Texturing3D/ImageTextureAtlas.js +230 -0
- package/src/x_ite/Components/Time/X3DTimeDependentNode.js +12 -10
- package/src/x_ite/Execution/BindableList.js +35 -37
- package/src/x_ite/Execution/BindableStack.js +25 -7
- package/src/x_ite/Execution/X3DScene.js +2 -2
- package/src/x_ite/Execution/X3DWorld.js +1 -1
- package/src/x_ite/Fields/SFRotation.js +2 -1
- package/src/x_ite/Fields/SFString.js +1 -1
- package/src/x_ite/InputOutput/FileLoader.js +105 -236
- package/src/x_ite/InputOutput/Generator.js +12 -8
- package/src/x_ite/Parser/Expressions.js +85 -0
- package/src/x_ite/Parser/GLB2Parser.js +147 -0
- package/src/x_ite/Parser/GLTF2Parser.js +2221 -0
- package/src/x_ite/Parser/GoldenGate.js +64 -13
- package/src/x_ite/Parser/JSONParser.js +7 -36
- package/src/x_ite/Parser/OBJParser.js +1076 -0
- package/src/x_ite/Parser/STLAParser.js +376 -0
- package/src/x_ite/Parser/STLBParser.js +156 -0
- package/src/x_ite/Parser/SVGParser.js +2476 -0
- package/src/x_ite/Parser/VRMLParser.js +127 -183
- package/src/x_ite/Parser/X3DOptimizer.js +191 -0
- package/src/x_ite/Parser/X3DParser.js +34 -0
- package/src/x_ite/Parser/XMLParser.js +11 -109
- package/src/x_ite/Prototype/X3DExternProtoDeclaration.js +2 -2
- package/src/x_ite/Prototype/X3DProtoDeclaration.js +3 -3
- package/src/x_ite/Rendering/DependentRenderer.js +1 -1
- package/src/x_ite/Rendering/MultiSampleFrameBuffer.js +150 -0
- package/src/x_ite/Rendering/TextureBuffer.js +3 -5
- package/src/x_ite/Rendering/X3DRenderObject.js +2 -7
- package/src/x_ite/X3D.js +1 -0
- package/src/x_ite/X3DCanvas.js +10 -0
- package/src/x_ite.html +39 -17
- package/webpack.config.js +1 -0
- package/x_ite.min.html +38 -17
- package/src/standard/Networking/BinaryTransport.js +0 -116
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: LoadSensor
|
|
3
|
+
date: 2022-01-07
|
|
4
|
+
nav: components-Networking
|
|
5
|
+
categories: [components, Networking]
|
|
6
|
+
tags: [LoadSensor, Networking]
|
|
7
|
+
---
|
|
8
|
+
<style>
|
|
9
|
+
.post h3 {
|
|
10
|
+
word-spacing: 0.2em;
|
|
11
|
+
}
|
|
12
|
+
</style>
|
|
13
|
+
|
|
14
|
+
## Overview
|
|
15
|
+
|
|
16
|
+
LoadSensor generates events as watchList child nodes are either loaded or fail to load. Changing watchlist child nodes restarts the LoadSensor.
|
|
17
|
+
|
|
18
|
+
The LoadSensor node belongs to the **Networking** component and its default container field is *children.* It is available since X3D version 3.0 or later.
|
|
19
|
+
|
|
20
|
+
## Hierarchy
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
+ X3DNode
|
|
24
|
+
+ X3DChildNode
|
|
25
|
+
+ X3DSensorNode
|
|
26
|
+
+ X3DNetworkSensorNode
|
|
27
|
+
+ LoadSensor
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Fields
|
|
31
|
+
|
|
32
|
+
### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
|
|
33
|
+
|
|
34
|
+
Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
|
|
35
|
+
|
|
36
|
+
### SFBool [in, out] **enabled** TRUE
|
|
37
|
+
|
|
38
|
+
Enables/disables node operation.
|
|
39
|
+
|
|
40
|
+
### SFTime [in, out] **timeOut**
|
|
41
|
+
|
|
42
|
+
Time in seconds of maximum load duration prior to declaring failure. Default value zero means use browser defaults.
|
|
43
|
+
|
|
44
|
+
### SFBool [out] **isActive**
|
|
45
|
+
|
|
46
|
+
*isActive* true/false events are sent when sensing starts/stops.
|
|
47
|
+
|
|
48
|
+
### SFBool [out] **isLoaded**
|
|
49
|
+
|
|
50
|
+
Notify when all watchList child nodes are loaded, or at least one has failed. Sends true on successfully loading all watchList child nodes. Sends false on timeOut of any watchList child nodes, failure of any watchList child nodes to load, or no local copies available and no network present.
|
|
51
|
+
|
|
52
|
+
#### Hint
|
|
53
|
+
|
|
54
|
+
- Use multiple LoadSensor nodes to track multiple loading nodes individually.
|
|
55
|
+
|
|
56
|
+
### SFFloat [out] **progress**
|
|
57
|
+
|
|
58
|
+
Sends 0.0 on start and 1.0 on completion. Intermediate values are browser dependent and always increasing (may indicate fraction of bytes, fraction of expected time or another metric).
|
|
59
|
+
|
|
60
|
+
#### Hint
|
|
61
|
+
|
|
62
|
+
- Only 0 and 1 events are guaranteed.
|
|
63
|
+
|
|
64
|
+
### SFTime [out] **loadTime**
|
|
65
|
+
|
|
66
|
+
Time of successful load complete, not sent on failure.
|
|
67
|
+
|
|
68
|
+
### MFNode [in, out] **watchList** [ ] <small>[X3DUrlObject]</small>
|
|
69
|
+
|
|
70
|
+
Input/Output field watchList.
|
|
71
|
+
|
|
72
|
+
## Description
|
|
73
|
+
|
|
74
|
+
### Hints
|
|
75
|
+
|
|
76
|
+
- Use multiple LoadSensor nodes to track multiple loading nodes individually.
|
|
77
|
+
- Background is not sensed due to multiple-image ambiguity.
|
|
78
|
+
- Use Inline 'load' field to prompt or defer loading.
|
|
79
|
+
|
|
80
|
+
### Warnings
|
|
81
|
+
|
|
82
|
+
- WatchList child nodes are not rendered, so normally USE copies of other nodes to sense load status.
|
|
83
|
+
- New X3D node, not supported in VRML97.
|
|
84
|
+
|
|
85
|
+
## Example
|
|
86
|
+
|
|
87
|
+
<x3d-canvas src="https://create3000.github.io/media/examples/Networking/LoadSensor/LoadSensor.x3d"></x3d-canvas>
|
|
88
|
+
|
|
89
|
+
## External Links
|
|
90
|
+
|
|
91
|
+
- [X3D Specification of LoadSensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/networking.html#LoadSensor){:target="_blank"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: BoundedPhysicsModel
|
|
3
|
+
date: 2022-01-07
|
|
4
|
+
nav: components-ParticleSystems
|
|
5
|
+
categories: [components, ParticleSystems]
|
|
6
|
+
tags: [BoundedPhysicsModel, ParticleSystems]
|
|
7
|
+
---
|
|
8
|
+
<style>
|
|
9
|
+
.post h3 {
|
|
10
|
+
word-spacing: 0.2em;
|
|
11
|
+
}
|
|
12
|
+
</style>
|
|
13
|
+
|
|
14
|
+
## Overview
|
|
15
|
+
|
|
16
|
+
BoundedPhysicsModel provides user-defined geometrical boundaries for particle motion. A child geometry node specifies boundaries that constrain the location of the particles.
|
|
17
|
+
|
|
18
|
+
The BoundedPhysicsModel node belongs to the **ParticleSystems** component and its default container field is *physics.* It is available since X3D version 3.2 or later.
|
|
19
|
+
|
|
20
|
+
## Hierarchy
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
+ X3DNode
|
|
24
|
+
+ X3DParticlePhysicsModelNode
|
|
25
|
+
+ BoundedPhysicsModel
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Fields
|
|
29
|
+
|
|
30
|
+
### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
|
|
31
|
+
|
|
32
|
+
Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
|
|
33
|
+
|
|
34
|
+
### SFBool [in, out] **enabled** TRUE
|
|
35
|
+
|
|
36
|
+
Enables/disables node operation.
|
|
37
|
+
|
|
38
|
+
### SFNode [in, out] **geometry** NULL <small>[X3DGeometryNode]</small>
|
|
39
|
+
|
|
40
|
+
The geometry node provides the geometry used for each particle when the parent ParticleSystem node has geometryType=GEOMETRY.
|
|
41
|
+
|
|
42
|
+
#### Hint
|
|
43
|
+
|
|
44
|
+
- Include `<component name='Geospatial' level='1'/>`
|
|
45
|
+
|
|
46
|
+
## Description
|
|
47
|
+
|
|
48
|
+
### Hint
|
|
49
|
+
|
|
50
|
+
- When a particle touches the boundary surface, it is reflected by the geometry (either inside or outside).
|
|
51
|
+
|
|
52
|
+
## External Links
|
|
53
|
+
|
|
54
|
+
- [X3D Specification of BoundedPhysicsModel](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/particleSystems.html#BoundedPhysicsModel){:target="_blank"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: ConeEmitter
|
|
3
|
+
date: 2022-01-07
|
|
4
|
+
nav: components-ParticleSystems
|
|
5
|
+
categories: [components, ParticleSystems]
|
|
6
|
+
tags: [ConeEmitter, ParticleSystems]
|
|
7
|
+
---
|
|
8
|
+
<style>
|
|
9
|
+
.post h3 {
|
|
10
|
+
word-spacing: 0.2em;
|
|
11
|
+
}
|
|
12
|
+
</style>
|
|
13
|
+
|
|
14
|
+
## Overview
|
|
15
|
+
|
|
16
|
+
ConeEmitter generates all available particles from a specific point in space. Particles are emitted from the single point specified by the position field emanating in a direction randomly distributed within the cone specified by the angle and direction fields.
|
|
17
|
+
|
|
18
|
+
The ConeEmitter node belongs to the **ParticleSystems** component and its default container field is *emitter.* It is available since X3D version 3.2 or later.
|
|
19
|
+
|
|
20
|
+
## Hierarchy
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
+ X3DNode
|
|
24
|
+
+ X3DParticleEmitterNode
|
|
25
|
+
+ ConeEmitter
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Fields
|
|
29
|
+
|
|
30
|
+
### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
|
|
31
|
+
|
|
32
|
+
Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
|
|
33
|
+
|
|
34
|
+
### SFVec3f [in, out] **position** 0 0 0
|
|
35
|
+
|
|
36
|
+
Point from which particles emanate.
|
|
37
|
+
|
|
38
|
+
### SFVec3f [in, out] **direction** 0 1 0
|
|
39
|
+
|
|
40
|
+
Initial direction from which particles emanate.
|
|
41
|
+
|
|
42
|
+
### SFFloat [in, out] **angle** π/4 <small>[0,π]</small>
|
|
43
|
+
|
|
44
|
+
Cone boundary for random distribution of particles about initial direction.
|
|
45
|
+
|
|
46
|
+
### SFFloat [in, out] **speed** 0 <small>[0,∞)</small>
|
|
47
|
+
|
|
48
|
+
Initial linear speed (default is m/s) imparted to all particles along their direction of movement.
|
|
49
|
+
|
|
50
|
+
### SFFloat [in, out] **variation** 0.25 <small>[0,∞)</small>
|
|
51
|
+
|
|
52
|
+
Multiplier for the randomness used to control the range of possible output values. The bigger the value, the more random the output and the bigger the range of possible initial values possible.
|
|
53
|
+
|
|
54
|
+
#### Hint
|
|
55
|
+
|
|
56
|
+
- Variation of zero does not allow any randomness.
|
|
57
|
+
|
|
58
|
+
### SFFloat [ ] **mass** 0 <small>[0,∞)</small>
|
|
59
|
+
|
|
60
|
+
Field mass.
|
|
61
|
+
|
|
62
|
+
### SFFloat [ ] **surfaceArea** 0 <small>[0,∞)</small>
|
|
63
|
+
|
|
64
|
+
Particle surface area in area base units (default is meters squared). Surface area is used for calculations such as wind effects per particle.
|
|
65
|
+
|
|
66
|
+
#### Hints
|
|
67
|
+
|
|
68
|
+
- SurfaceArea value represents average frontal area presented to the wind. Assumes spherical model for each particle (i.e., surface area is the same regardless of direction).
|
|
69
|
+
|
|
70
|
+
## Example
|
|
71
|
+
|
|
72
|
+
<x3d-canvas src="https://create3000.github.io/media/examples/ParticleSystems/ConeEmitter/ConeEmitter.x3d"></x3d-canvas>
|
|
73
|
+
|
|
74
|
+
## External Links
|
|
75
|
+
|
|
76
|
+
- [X3D Specification of ConeEmitter](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/particleSystems.html#ConeEmitter){:target="_blank"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: ExplosionEmitter
|
|
3
|
+
date: 2022-01-07
|
|
4
|
+
nav: components-ParticleSystems
|
|
5
|
+
categories: [components, ParticleSystems]
|
|
6
|
+
tags: [ExplosionEmitter, ParticleSystems]
|
|
7
|
+
---
|
|
8
|
+
<style>
|
|
9
|
+
.post h3 {
|
|
10
|
+
word-spacing: 0.2em;
|
|
11
|
+
}
|
|
12
|
+
</style>
|
|
13
|
+
|
|
14
|
+
## Overview
|
|
15
|
+
|
|
16
|
+
ExplosionEmitter generates all particles from a specific point in space at the initial time enabled.
|
|
17
|
+
|
|
18
|
+
The ExplosionEmitter node belongs to the **ParticleSystems** component and its default container field is *emitter.* It is available since X3D version 3.2 or later.
|
|
19
|
+
|
|
20
|
+
## Hierarchy
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
+ X3DNode
|
|
24
|
+
+ X3DParticleEmitterNode
|
|
25
|
+
+ ExplosionEmitter
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Fields
|
|
29
|
+
|
|
30
|
+
### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
|
|
31
|
+
|
|
32
|
+
Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
|
|
33
|
+
|
|
34
|
+
### SFVec3f [in, out] **position** 0 0 0
|
|
35
|
+
|
|
36
|
+
Point from which particles emanate.
|
|
37
|
+
|
|
38
|
+
### SFFloat [in, out] **speed** 0 <small>[0,∞)</small>
|
|
39
|
+
|
|
40
|
+
Initial linear speed (default is m/s) imparted to all particles along their direction of movement.
|
|
41
|
+
|
|
42
|
+
### SFFloat [in, out] **variation** 0.25 <small>[0,∞)</small>
|
|
43
|
+
|
|
44
|
+
Multiplier for the randomness used to control the range of possible output values. The bigger the value, the more random the output and the bigger the range of initial values possible.
|
|
45
|
+
|
|
46
|
+
#### Hint
|
|
47
|
+
|
|
48
|
+
- Variation of zero does not allow any randomness.
|
|
49
|
+
|
|
50
|
+
### SFFloat [ ] **mass** 0 <small>[0,∞)</small>
|
|
51
|
+
|
|
52
|
+
Basic mass of each particle in mass base units (default is grams).
|
|
53
|
+
|
|
54
|
+
#### Hint
|
|
55
|
+
|
|
56
|
+
- Mass is needed if gravity or other force-related calculations are performed per-particle.
|
|
57
|
+
|
|
58
|
+
### SFFloat [ ] **surfaceArea** 0 <small>[0,∞)</small>
|
|
59
|
+
|
|
60
|
+
Particle surface area in area base units (default is meters squared). Surface area is used for calculations such as wind effects per particle.
|
|
61
|
+
|
|
62
|
+
#### Hints
|
|
63
|
+
|
|
64
|
+
- SurfaceArea value represents average frontal area presented to the wind. Assumes spherical model for each particle (i.e., surface area is the same regardless of direction).
|
|
65
|
+
|
|
66
|
+
## Example
|
|
67
|
+
|
|
68
|
+
<x3d-canvas src="https://create3000.github.io/media/examples/ParticleSystems/ExplosionEmitter/ExplosionEmitter.x3d"></x3d-canvas>
|
|
69
|
+
|
|
70
|
+
## External Links
|
|
71
|
+
|
|
72
|
+
- [X3D Specification of ExplosionEmitter](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/particleSystems.html#ExplosionEmitter){:target="_blank"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: ForcePhysicsModel
|
|
3
|
+
date: 2022-01-07
|
|
4
|
+
nav: components-ParticleSystems
|
|
5
|
+
categories: [components, ParticleSystems]
|
|
6
|
+
tags: [ForcePhysicsModel, ParticleSystems]
|
|
7
|
+
---
|
|
8
|
+
<style>
|
|
9
|
+
.post h3 {
|
|
10
|
+
word-spacing: 0.2em;
|
|
11
|
+
}
|
|
12
|
+
</style>
|
|
13
|
+
|
|
14
|
+
## Overview
|
|
15
|
+
|
|
16
|
+
ForcePhysicsModel applies a constant force value to the particles.
|
|
17
|
+
|
|
18
|
+
The ForcePhysicsModel node belongs to the **ParticleSystems** component and its default container field is *physics.* It is available since X3D version 3.2 or later.
|
|
19
|
+
|
|
20
|
+
## Hierarchy
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
+ X3DNode
|
|
24
|
+
+ X3DParticlePhysicsModelNode
|
|
25
|
+
+ ForcePhysicsModel
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Fields
|
|
29
|
+
|
|
30
|
+
### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
|
|
31
|
+
|
|
32
|
+
Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
|
|
33
|
+
|
|
34
|
+
### SFBool [in, out] **enabled** TRUE
|
|
35
|
+
|
|
36
|
+
Enables/disables node operation.
|
|
37
|
+
|
|
38
|
+
### SFVec3f [in, out] **force** 0 -9.8 0 <small>(∞,∞)</small>
|
|
39
|
+
|
|
40
|
+
Force field indicates strength and direction of the propelling force on the particles (e.g. default is Earth's gravity).
|
|
41
|
+
|
|
42
|
+
#### Hints
|
|
43
|
+
|
|
44
|
+
- Force is specified in force base units (usually newtons). If particles have zero mass, ForcePhysicsModel node has no effect.
|
|
45
|
+
|
|
46
|
+
## Description
|
|
47
|
+
|
|
48
|
+
### Hint
|
|
49
|
+
|
|
50
|
+
- Force may act in any given direction vector at any strength.
|
|
51
|
+
|
|
52
|
+
## Example
|
|
53
|
+
|
|
54
|
+
<x3d-canvas src="https://create3000.github.io/media/examples/ParticleSystems/ForcePhysicsModel/ForcePhysicsModel.x3d"></x3d-canvas>
|
|
55
|
+
|
|
56
|
+
## External Links
|
|
57
|
+
|
|
58
|
+
- [X3D Specification of ForcePhysicsModel](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/particleSystems.html#ForcePhysicsModel){:target="_blank"}
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: ParticleSystem
|
|
3
|
+
date: 2022-01-07
|
|
4
|
+
nav: components-ParticleSystems
|
|
5
|
+
categories: [components, ParticleSystems]
|
|
6
|
+
tags: [ParticleSystem, ParticleSystems]
|
|
7
|
+
---
|
|
8
|
+
<style>
|
|
9
|
+
.post h3 {
|
|
10
|
+
word-spacing: 0.2em;
|
|
11
|
+
}
|
|
12
|
+
</style>
|
|
13
|
+
|
|
14
|
+
## Overview
|
|
15
|
+
|
|
16
|
+
ParticleSystem specifies a complete particle system. It can contain Appearance for particle appearance, a geometry node if gemoetryType='GEOMETRY', a colorRamp Color/ColorRGBA node for changing base color over each particle's lifetime, a texcoordRamp TextureCoordinate node to control texture coordinates of provided texture(s) in the Appearance node over time, a single emitter X3DParticleEmitterNode, and an array of physics X3DParticlePhysicsModelNode nodes.
|
|
17
|
+
|
|
18
|
+
The ParticleSystem node belongs to the **ParticleSystems** component and its default container field is *children.* It is available since X3D version 3.2 or later.
|
|
19
|
+
|
|
20
|
+
## Hierarchy
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
+ X3DNode
|
|
24
|
+
+ X3DChildNode
|
|
25
|
+
+ X3DShapeNode (X3DBoundedObject)*
|
|
26
|
+
+ ParticleSystem
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
<small>\* Derived from multiple interfaces.</small>
|
|
30
|
+
|
|
31
|
+
## Fields
|
|
32
|
+
|
|
33
|
+
### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
|
|
34
|
+
|
|
35
|
+
Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
|
|
36
|
+
|
|
37
|
+
### SFBool [in, out] **enabled** TRUE
|
|
38
|
+
|
|
39
|
+
Enables/disables node operation.
|
|
40
|
+
|
|
41
|
+
### SFString [ ] **geometryType** "QUAD" <small>["LINE"|"POINT"|"QUAD"|"SPRITE"|"TRIANGLE"|"GEOMETRY"|...]</small>
|
|
42
|
+
|
|
43
|
+
Field geometryType.
|
|
44
|
+
|
|
45
|
+
### SFInt32 [in, out] **maxParticles** 200 <small>[0,∞)</small>
|
|
46
|
+
|
|
47
|
+
Maximum number of particles to be generated at one time (subject to player limitations).
|
|
48
|
+
|
|
49
|
+
### SFBool [in, out] **createParticles** TRUE
|
|
50
|
+
|
|
51
|
+
Enables/disables creation of new particles, while any existing particles remain in existence and continue to animate until the end of their lifetimes.
|
|
52
|
+
|
|
53
|
+
#### Hint
|
|
54
|
+
|
|
55
|
+
- If no particles are left in scene, system is considered both active and enabled.
|
|
56
|
+
|
|
57
|
+
### SFFloat [in, out] **particleLifetime** 5 <small>[0,∞)</small>
|
|
58
|
+
|
|
59
|
+
TODO not properly defined in X3D spedification. Particle animation lifetime in base time units (default is seconds).
|
|
60
|
+
|
|
61
|
+
### SFFloat [in, out] **lifetimeVariation** 0.25 <small>[0,1]</small>
|
|
62
|
+
|
|
63
|
+
TODO not properly defined in X3D spedification. Multiplier for the randomness used to control the range of possible output values. The bigger the value, the more random the output and the bigger the range of initial values possible.
|
|
64
|
+
|
|
65
|
+
#### Hint
|
|
66
|
+
|
|
67
|
+
- Variation of zero does not allow any randomness.
|
|
68
|
+
|
|
69
|
+
### SFVec2f [in, out] **particleSize** 0.02 0.02 <small>[0,∞)</small>
|
|
70
|
+
|
|
71
|
+
*particleSize* describes width and height dimensions for each particle in length base units (default is meters). Changing this value dynamically will only change new particles created after the change.
|
|
72
|
+
|
|
73
|
+
#### Hints
|
|
74
|
+
|
|
75
|
+
- Particles created before this timestamp will remain at the old size. His field only effects particles using LINE, QUAD, SPRITE, and TRIANGLE geometry types.
|
|
76
|
+
|
|
77
|
+
### SFNode [ ] **emitter** NULL <small>[X3DParticleEmitterNode]</small>
|
|
78
|
+
|
|
79
|
+
The emitter field specifies the type of emitter geometry and properties that the particles are given for their initial positions.
|
|
80
|
+
|
|
81
|
+
### MFNode [ ] **physics** [ ] <small>[X3DParticlePhysicsModelNode]</small>
|
|
82
|
+
|
|
83
|
+
After being created, the individual particles are then manipulated according to the physics model(s) specified in the physics field.
|
|
84
|
+
|
|
85
|
+
### MFFloat [ ] **colorKey** [ ] <small>[0,∞)</small>
|
|
86
|
+
|
|
87
|
+
Array of time intervals in seconds, corresponding to particle lifetime, that are used to interpolate colorRamp array values.
|
|
88
|
+
|
|
89
|
+
#### Hints
|
|
90
|
+
|
|
91
|
+
- Color values are interpolated in linear Hue Saturation Value (HSV) space, similar to ColorInterpolator node. Color values are defined as per-vertex colour values. Number of colorKey values must match length of the per-vertex colorRamp arrays!
|
|
92
|
+
|
|
93
|
+
#### Warning
|
|
94
|
+
|
|
95
|
+
- If an Appearance and Material nodes are provided, those material properties override colorRamp interpolation.
|
|
96
|
+
|
|
97
|
+
#### See Also
|
|
98
|
+
|
|
99
|
+
- [X3D Scene Authoring Hints, Color](https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Color){:target="_blank"}
|
|
100
|
+
|
|
101
|
+
### SFNode [ ] **colorRamp** NULL <small>[X3DColorNode]</small>
|
|
102
|
+
|
|
103
|
+
The colorRamp Color/ColorRGBA node holds a series of colour values to be used at the given colorKey points in time.
|
|
104
|
+
|
|
105
|
+
#### Hints
|
|
106
|
+
|
|
107
|
+
- Color values are defined as per-vertex colour values. Number of colorKey values must match length of the per-vertex colorRamp arrays!
|
|
108
|
+
|
|
109
|
+
#### Warning
|
|
110
|
+
|
|
111
|
+
- If an Appearance and Material nodes are provided, those material properties override colorRamp interpolation.
|
|
112
|
+
|
|
113
|
+
#### See Also
|
|
114
|
+
|
|
115
|
+
- [X3D Scene Authoring Hints, Color](https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Color){:target="_blank"}
|
|
116
|
+
|
|
117
|
+
### MFFloat [ ] **texCoordKey** [ ] <small>[0,∞)</small>
|
|
118
|
+
|
|
119
|
+
Array of time intervals in seconds, corresponding to particle lifetime, that are used to sequence texCoordRamp array values.
|
|
120
|
+
|
|
121
|
+
#### Hints
|
|
122
|
+
|
|
123
|
+
- No interpolation is performed, texture coordinates are simply sequenced in order. Texture-coordinate values map textures to vertices in the geometry. Number of texCoordKey values must match length of the per-vertex texCoordRamp arrays!
|
|
124
|
+
|
|
125
|
+
### SFNode [ ] **texCoordRamp** NULL <small>[TextureCoordinate]</small>
|
|
126
|
+
|
|
127
|
+
Texture coordinates of the provided texture(s) in the Appearance node, over time. Particle systems frequently like to change the texture on a particle as it ages, yet there is no good way of accomplishing this through standard interpolators because interpolators have no concept of particle time. This pair of fields hold time-dependent values for the texture coordinates to be applied to the particle. When a particle reaches the next time stamp it moves to the next set of texture coordinates.
|
|
128
|
+
|
|
129
|
+
#### Hints
|
|
130
|
+
|
|
131
|
+
- Texture-coordinate values map textures to vertices in the geometry. Number of texCoordKey values must match length of the per-vertex texCoordRamp arrays!
|
|
132
|
+
|
|
133
|
+
### SFBool [out] **isActive**
|
|
134
|
+
|
|
135
|
+
*isActive* true/false events are sent when playback starts/stops.
|
|
136
|
+
|
|
137
|
+
### SFVec3f [ ] **bboxSize** -1 -1 -1 <small>(0,∞) or -1 -1 -1</small>
|
|
138
|
+
|
|
139
|
+
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
|
|
140
|
+
|
|
141
|
+
#### Hint
|
|
142
|
+
|
|
143
|
+
- Can be useful for collision computations or inverse-kinematics (IK) engines.
|
|
144
|
+
|
|
145
|
+
### SFVec3f [ ] **bboxCenter** 0 0 0
|
|
146
|
+
|
|
147
|
+
Bounding box center: optional hint for position offset from origin of local coordinate system.
|
|
148
|
+
|
|
149
|
+
### SFNode [in, out] **appearance** NULL <small>[X3DAppearanceNode]</small>
|
|
150
|
+
|
|
151
|
+
The appearance field holds an Appearance node that is used for the geometry. All effects, such as material colours and/or multi-textures, are applied to each particle.
|
|
152
|
+
|
|
153
|
+
#### Hints
|
|
154
|
+
|
|
155
|
+
- If a texture coordinate ramp and key is supplied with this geometry, it shall be used in preference to any automatic texture coordinate generation. If automatic texture coordinate generation is used, results shall be based on the entire volume that the particles consume, not locally applied to each particle.
|
|
156
|
+
|
|
157
|
+
### SFNode [in, out] **geometry** NULL <small>[X3DGeometryNode]</small>
|
|
158
|
+
|
|
159
|
+
The geometry node provides geometry used for each particle when geometryType=GEOMETRY.
|
|
160
|
+
|
|
161
|
+
#### Hint
|
|
162
|
+
|
|
163
|
+
- Include `<component name='Geospatial' level='1'/>`
|
|
164
|
+
|
|
165
|
+
## Hints
|
|
166
|
+
|
|
167
|
+
- Always adjust bboxSize and boxCenter properly; bboxSize and bboxCenter cannot be automatically determined so it's up to the author to provide proper values.
|
|
168
|
+
|
|
169
|
+
## Example
|
|
170
|
+
|
|
171
|
+
<x3d-canvas src="https://create3000.github.io/media/examples/ParticleSystems/ParticleSystem/ParticleSystem.x3d"></x3d-canvas>
|
|
172
|
+
|
|
173
|
+
## External Links
|
|
174
|
+
|
|
175
|
+
- [X3D Specification of ParticleSystem](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/particleSystems.html#ParticleSystem){:target="_blank"}
|
|
176
|
+
- [Event timing details are explained in 4.4.8.3 Execution model](https://www.web3d.org/files/specifications/19775-1/V3.3/Part01/concepts.html#ExecutionModel){:target="_blank"}
|
|
177
|
+
- [Wikipedia, particle system](https://en.wikipedia.org/wiki/Particle_system){:target="_blank"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: PointEmitter
|
|
3
|
+
date: 2022-01-07
|
|
4
|
+
nav: components-ParticleSystems
|
|
5
|
+
categories: [components, ParticleSystems]
|
|
6
|
+
tags: [PointEmitter, ParticleSystems]
|
|
7
|
+
---
|
|
8
|
+
<style>
|
|
9
|
+
.post h3 {
|
|
10
|
+
word-spacing: 0.2em;
|
|
11
|
+
}
|
|
12
|
+
</style>
|
|
13
|
+
|
|
14
|
+
## Overview
|
|
15
|
+
|
|
16
|
+
PointEmitter generates particles from a specific point in space using the specified direction and speed.
|
|
17
|
+
|
|
18
|
+
The PointEmitter node belongs to the **ParticleSystems** component and its default container field is *emitter.* It is available since X3D version 3.2 or later.
|
|
19
|
+
|
|
20
|
+
## Hierarchy
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
+ X3DNode
|
|
24
|
+
+ X3DParticleEmitterNode
|
|
25
|
+
+ PointEmitter
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Fields
|
|
29
|
+
|
|
30
|
+
### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
|
|
31
|
+
|
|
32
|
+
Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
|
|
33
|
+
|
|
34
|
+
### SFVec3f [in, out] **position** 0 0 0
|
|
35
|
+
|
|
36
|
+
Point from which particles emanate.
|
|
37
|
+
|
|
38
|
+
### SFVec3f [in, out] **direction** 0 1 0
|
|
39
|
+
|
|
40
|
+
Initial direction from which particles emanate.
|
|
41
|
+
|
|
42
|
+
### SFFloat [in, out] **speed** 0 <small>[0,∞)</small>
|
|
43
|
+
|
|
44
|
+
Initial linear speed (default is m/s) imparted to all particles along their direction of movement.
|
|
45
|
+
|
|
46
|
+
### SFFloat [in, out] **variation** 0.25 <small>[0,∞)</small>
|
|
47
|
+
|
|
48
|
+
Multiplier for the randomness used to control the range of possible output values. The bigger the value, the more random the output and the bigger the range of possible initial values possible.
|
|
49
|
+
|
|
50
|
+
#### Hint
|
|
51
|
+
|
|
52
|
+
- Variation of zero does not allow any randomness.
|
|
53
|
+
|
|
54
|
+
### SFFloat [ ] **mass** 0 <small>[0,∞)</small>
|
|
55
|
+
|
|
56
|
+
Basic mass of each particle in mass base units (default is grams).
|
|
57
|
+
|
|
58
|
+
#### Hint
|
|
59
|
+
|
|
60
|
+
- Mass is needed if gravity or other force-related calculations are performed per-particle.
|
|
61
|
+
|
|
62
|
+
### SFFloat [ ] **surfaceArea** 0 <small>[0,∞)</small>
|
|
63
|
+
|
|
64
|
+
Particle surface area in area base units (default is meters squared). Surface area is used for calculations such as wind effects per particle.
|
|
65
|
+
|
|
66
|
+
#### Hints
|
|
67
|
+
|
|
68
|
+
- SurfaceArea value represents average frontal area presented to the wind. Assumes spherical model for each particle (i.e., surface area is the same regardless of direction).
|
|
69
|
+
|
|
70
|
+
## Example
|
|
71
|
+
|
|
72
|
+
<x3d-canvas src="https://create3000.github.io/media/examples/ParticleSystems/PointEmitter/PointEmitter.x3d"></x3d-canvas>
|
|
73
|
+
|
|
74
|
+
## External Links
|
|
75
|
+
|
|
76
|
+
- [X3D Specification of PointEmitter](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/particleSystems.html#PointEmitter){:target="_blank"}
|