x_ite 5.0.3 → 6.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.vscode/settings.json +12 -5
- package/.vscode/tasks.json +25 -1
- package/Makefile +36 -28
- package/README.md +6 -11
- package/build/bin/dist.pl +0 -6
- package/build/bin/examples-and-tests.pl +75 -0
- package/build/bin/tests-menu.pl +57 -0
- package/build/bin/version.pl +7 -4
- package/build/parts/default.start.frag.js +3 -2
- package/dist/assets/components/annotation.js +3 -2
- package/dist/assets/components/annotation.min.js +1 -1
- package/dist/assets/components/cad-geometry.js +3 -2
- package/dist/assets/components/cad-geometry.min.js +1 -1
- package/dist/assets/components/cube-map-texturing.js +8 -20
- package/dist/assets/components/cube-map-texturing.min.js +1 -1
- package/dist/assets/components/dis.js +3 -2
- package/dist/assets/components/dis.min.js +1 -1
- package/dist/assets/components/event-utilities.js +4 -3
- package/dist/assets/components/event-utilities.min.js +1 -1
- package/dist/assets/components/geometry2d.js +38 -52
- package/dist/assets/components/geometry2d.min.js +1 -1
- package/dist/assets/components/geospatial.js +34 -1686
- package/dist/assets/components/geospatial.min.js +1 -1
- package/dist/assets/components/h-anim.js +71 -77
- package/dist/assets/components/h-anim.min.js +1 -1
- package/dist/assets/components/key-device-sensor.js +4 -3
- package/dist/assets/components/key-device-sensor.min.js +1 -1
- package/dist/assets/components/layout.js +101 -173
- package/dist/assets/components/layout.min.js +1 -1
- package/dist/assets/components/nurbs.js +3 -2
- package/dist/assets/components/nurbs.min.js +1 -1
- package/dist/assets/components/particle-systems.js +1926 -1669
- package/dist/assets/components/particle-systems.min.js +1 -1
- package/dist/assets/components/picking.js +34 -41
- package/dist/assets/components/picking.min.js +1 -1
- package/dist/assets/components/projective-texture-mapping.js +73 -86
- package/dist/assets/components/projective-texture-mapping.min.js +1 -1
- package/dist/assets/components/rigid-body-physics.js +37 -57
- package/dist/assets/components/rigid-body-physics.min.js +1 -1
- package/dist/assets/components/scripting.js +3 -2
- package/dist/assets/components/scripting.min.js +1 -1
- package/dist/assets/components/texturing-3d.js +27 -33
- package/dist/assets/components/texturing-3d.min.js +3 -3
- package/dist/assets/components/volume-rendering.js +12 -11
- package/dist/assets/components/volume-rendering.min.js +1 -1
- package/dist/assets/components/x_ite.js +3 -2
- package/dist/assets/components/x_ite.min.js +1 -1
- package/dist/assets/images/Shading.png +0 -0
- package/dist/assets/linetype/1.png +0 -0
- package/dist/assets/linetype/10.png +0 -0
- package/dist/assets/linetype/11.png +0 -0
- package/dist/assets/linetype/12.png +0 -0
- package/dist/assets/linetype/13.png +0 -0
- package/dist/assets/linetype/14.png +0 -0
- package/dist/assets/linetype/15.png +0 -0
- package/dist/assets/linetype/16.png +0 -0
- package/dist/assets/linetype/2.png +0 -0
- package/dist/assets/linetype/3.png +0 -0
- package/dist/assets/linetype/4.png +0 -0
- package/dist/assets/linetype/5.png +0 -0
- package/dist/assets/linetype/6.png +0 -0
- package/dist/assets/linetype/7.png +0 -0
- package/dist/assets/linetype/8.png +0 -0
- package/dist/assets/linetype/9.png +0 -0
- package/dist/assets/shaders/webgl1/Gouraud.vs +1 -1
- package/dist/assets/shaders/webgl1/Line.fs +0 -21
- package/dist/assets/shaders/webgl1/Line.vs +0 -10
- package/dist/assets/shaders/webgl1/PBR.fs +1 -1
- package/dist/assets/shaders/webgl1/PBR.vs +1 -1
- package/dist/assets/shaders/webgl1/Phong.fs +1 -1
- package/dist/assets/shaders/webgl1/Point.vs +1 -1
- package/dist/assets/shaders/webgl2/Depth.vs +29 -1
- package/dist/assets/shaders/webgl2/Gouraud.vs +32 -4
- package/dist/assets/shaders/webgl2/Line.fs +24 -12
- package/dist/assets/shaders/webgl2/Line.vs +36 -11
- package/dist/assets/shaders/webgl2/LineTransform.fs +4 -0
- package/dist/assets/shaders/webgl2/LineTransform.vs +57 -0
- package/dist/assets/shaders/webgl2/PBR.fs +1 -1
- package/dist/assets/shaders/webgl2/PBR.vs +35 -7
- package/dist/assets/shaders/webgl2/Phong.fs +1 -1
- package/dist/assets/shaders/webgl2/Phong.vs +31 -3
- package/dist/assets/shaders/webgl2/Point.vs +30 -2
- package/dist/assets/shaders/webgl2/Unlit.vs +31 -3
- package/dist/example.html +6 -6
- package/dist/x_ite.css +199 -224
- package/dist/x_ite.js +16335 -15917
- package/dist/x_ite.min.js +17 -17
- package/dist/x_ite.zip +0 -0
- package/docs/404.md +6 -0
- package/docs/Accessing-the-External-Browser.md +21 -15
- package/docs/Browser-Support.md +6 -0
- package/docs/Custom-Shaders.md +18 -25
- package/docs/Features.md +11 -5
- package/docs/Gemfile +44 -0
- package/docs/Gemfile.lock +122 -0
- package/docs/Glossary.md +6 -0
- package/docs/How-To-Configure-Your-Web-Server.md +6 -0
- package/docs/Supported-Nodes.md +9 -1
- package/docs/What's-New.md +93 -39
- package/docs/XHTML-DOM-Integration.md +6 -0
- package/docs/_config.yml +2 -2
- package/docs/assets/css/main.scss +26 -0
- package/docs/index.md +42 -50
- package/docs/reference/Browser-Services.md +9 -3
- package/docs/reference/Constants-Services.md +6 -0
- package/docs/reference/ECMAScript-Object-and-Function-Definitions.md +12 -6
- package/docs/reference/Field-Services-and-Objects.md +105 -1
- package/docs/reference/Prototype-Services.md +11 -0
- package/docs/reference/Route-Services.md +9 -0
- package/docs/reference/Scene-Services.md +17 -2
- package/docs/reference/Script-Node-Authoring-Interface.md +7 -1
- package/docs/tutorials/Adding-backgrounds.md +6 -0
- package/docs/tutorials/Adding-fog.md +6 -0
- package/docs/tutorials/Adding-sound.md +6 -0
- package/docs/tutorials/Animating-transforms.md +6 -0
- package/docs/tutorials/Basic-Nodes.md +6 -0
- package/docs/tutorials/Building-a-X3D-world.md +6 -0
- package/docs/tutorials/Building-elevation-grids.md +6 -0
- package/docs/tutorials/Building-extruded-shapes.md +6 -0
- package/docs/tutorials/Building-primitive-shapes.md +6 -0
- package/docs/tutorials/Building-shapes-out-of-points,-lines,-and-faces.md +6 -0
- package/docs/tutorials/Controlling-appearance-with-materials.md +6 -0
- package/docs/tutorials/Controlling-color-on-coordinate-based-geometry.md +6 -0
- package/docs/tutorials/Controlling-detail.md +6 -0
- package/docs/tutorials/Controlling-how-textures-are-mapped.md +6 -0
- package/docs/tutorials/Controlling-navigation.md +6 -0
- package/docs/tutorials/Controlling-shading-on-coordinate-based-geometry.md +6 -0
- package/docs/tutorials/Controlling-the-viewpoint.md +6 -0
- package/docs/tutorials/Creating-new-node-types.md +6 -0
- package/docs/tutorials/Grouping-nodes.md +6 -0
- package/docs/tutorials/Hello,-World!.md +6 -0
- package/docs/tutorials/Improving-Performance.md +6 -0
- package/docs/tutorials/Increasing-Rendering-Speed.md +6 -0
- package/docs/tutorials/Introducing-X3D.md +6 -0
- package/docs/tutorials/Introducing-animation.md +6 -0
- package/docs/tutorials/Introducing-script-use.md +6 -0
- package/docs/tutorials/Lighting-your-world.md +6 -0
- package/docs/tutorials/Mapping-textures.md +6 -0
- package/docs/tutorials/Naming-nodes.md +6 -0
- package/docs/tutorials/Providing-information-about-your-world.md +6 -0
- package/docs/tutorials/Sensing-the-viewer.md +6 -0
- package/docs/tutorials/Sensing-viewer-actions.md +6 -0
- package/docs/tutorials/Transforming-Shapes.md +6 -0
- package/docs/tutorials/Writing-program-scripts-with-ECMAScript.md +6 -0
- package/docs/tutorials/index.md +42 -36
- package/package.json +6 -7
- package/src/assets/components/geometry2d.js +1 -1
- package/src/assets/components/key-device-sensor.js +1 -1
- package/src/assets/components/layout.js +1 -1
- package/src/assets/components/particle-systems.js +1 -1
- package/src/assets/components/volume-rendering.js +1 -1
- package/src/assets/images/Shading.png +0 -0
- package/src/assets/linetype/1.png +0 -0
- package/src/assets/linetype/10.png +0 -0
- package/src/assets/linetype/11.png +0 -0
- package/src/assets/linetype/12.png +0 -0
- package/src/assets/linetype/13.png +0 -0
- package/src/assets/linetype/14.png +0 -0
- package/src/assets/linetype/15.png +0 -0
- package/src/assets/linetype/16.png +0 -0
- package/src/assets/linetype/2.png +0 -0
- package/src/assets/linetype/3.png +0 -0
- package/src/assets/linetype/4.png +0 -0
- package/src/assets/linetype/5.png +0 -0
- package/src/assets/linetype/6.png +0 -0
- package/src/assets/linetype/7.png +0 -0
- package/src/assets/linetype/8.png +0 -0
- package/src/assets/linetype/9.png +0 -0
- package/src/assets/shaders/Types.glsl +1 -9
- package/src/assets/shaders/webgl1/Gouraud.fs +1 -1
- package/src/assets/shaders/webgl1/Gouraud.vs +2 -3
- package/src/assets/shaders/webgl1/Line.fs +3 -28
- package/src/assets/shaders/webgl1/Line.vs +6 -20
- package/src/assets/shaders/webgl1/PBR.fs +6 -6
- package/src/assets/shaders/webgl1/PBR.vs +1 -1
- package/src/assets/shaders/webgl1/Phong.fs +10 -10
- package/src/assets/shaders/webgl1/Point.vs +2 -2
- package/src/assets/shaders/webgl1/Unlit.fs +4 -4
- package/src/assets/shaders/webgl1/include/Normal.glsl +1 -1
- package/src/assets/shaders/webgl1/include/Texture.glsl +3 -8
- package/src/assets/shaders/webgl2/Depth.vs +4 -1
- package/src/assets/shaders/webgl2/Gouraud.fs +1 -1
- package/src/assets/shaders/webgl2/Gouraud.vs +8 -6
- package/src/assets/shaders/webgl2/Line.fs +11 -17
- package/src/assets/shaders/webgl2/Line.vs +17 -21
- package/src/assets/shaders/webgl2/LineTransform.fs +6 -0
- package/src/assets/shaders/webgl2/LineTransform.vs +77 -0
- package/src/assets/shaders/webgl2/PBR.fs +6 -6
- package/src/assets/shaders/webgl2/PBR.vs +10 -7
- package/src/assets/shaders/webgl2/Phong.fs +11 -11
- package/src/assets/shaders/webgl2/Phong.vs +6 -3
- package/src/assets/shaders/webgl2/Point.vs +5 -4
- package/src/assets/shaders/webgl2/Unlit.fs +5 -5
- package/src/assets/shaders/webgl2/Unlit.vs +6 -3
- package/src/assets/shaders/webgl2/include/Line2.glsl +20 -0
- package/src/assets/shaders/webgl2/include/Normal.glsl +1 -1
- package/src/assets/shaders/webgl2/include/Particle.glsl +36 -0
- package/src/assets/shaders/webgl2/include/Texture.glsl +3 -3
- package/src/example.html +6 -6
- package/src/examples.js +5 -4
- package/src/standard/Math/Algorithm.js +12 -28
- package/src/standard/Math/Geometry/Line2.js +163 -0
- package/src/standard/Math/Geometry/Line3.js +3 -5
- package/src/standard/Math/Geometry/Plane3.js +0 -2
- package/src/standard/Math/Geometry/Triangle3.js +1 -1
- package/src/standard/Math/Geometry/ViewVolume.js +121 -103
- package/src/standard/Math/Numbers/Color3.js +6 -0
- package/src/standard/Math/Numbers/Color4.js +7 -0
- package/src/standard/Math/Numbers/Complex.js +48 -34
- package/src/standard/Math/Numbers/Matrix2.js +62 -2
- package/src/standard/Math/Numbers/Matrix3.js +129 -110
- package/src/standard/Math/Numbers/Matrix4.js +138 -119
- package/src/standard/Math/Numbers/Quaternion.js +12 -5
- package/src/standard/Math/Numbers/Rotation4.js +8 -1
- package/src/standard/Math/Numbers/Vector2.js +42 -9
- package/src/standard/Math/Numbers/Vector3.js +50 -14
- package/src/standard/Math/Numbers/Vector4.js +48 -11
- package/src/standard/Math/Utility/BVH.js +45 -17
- package/src/tests.js +68 -66
- package/src/x_ite/Base/X3DBaseNode.js +22 -11
- package/src/x_ite/Base/X3DField.js +1 -1
- package/src/x_ite/Browser/Core/BrowserOptions.js +24 -143
- package/src/x_ite/Browser/Core/BrowserTimings.js +6 -4
- package/src/x_ite/Browser/Core/Context.js +185 -0
- package/src/x_ite/Browser/Core/ContextMenu.js +398 -211
- package/src/x_ite/Browser/Core/Notification.js +1 -0
- package/src/x_ite/Browser/Core/X3DCoreContext.js +35 -146
- package/src/x_ite/Browser/Followers/X3DArrayFollowerTemplate.js +1 -1
- package/src/x_ite/Browser/Geometry2D/Disk2DOptions.js +1 -0
- package/src/x_ite/Browser/Geometry2D/X3DGeometry2DContext.js +2 -2
- package/src/x_ite/Browser/Geometry3D/X3DGeometry3DContext.js +41 -2
- package/src/x_ite/Browser/Geospatial/Geocentric.js +2 -2
- package/src/x_ite/Browser/Interpolation/CatmullRomSplineInterpolatorTemplate.js +1 -1
- package/src/x_ite/Browser/Layout/ScreenText.js +18 -65
- package/src/x_ite/Browser/Layout/X3DLayoutContext.js +59 -16
- package/src/x_ite/Browser/Navigation/ExamineViewer.js +13 -20
- package/src/x_ite/Browser/Navigation/LookAtViewer.js +1 -4
- package/src/x_ite/Browser/Navigation/PlaneViewer.js +0 -3
- package/src/x_ite/Browser/Navigation/X3DFlyViewer.js +15 -8
- package/src/x_ite/Browser/Navigation/X3DViewer.js +12 -20
- package/src/x_ite/Browser/Networking/X3DNetworkingContext.js +11 -7
- package/src/x_ite/Browser/ParticleSystems/BVH.glsl +183 -0
- package/src/x_ite/Browser/ParticleSystems/Box3.glsl +47 -0
- package/src/x_ite/Browser/ParticleSystems/GeometryTypes.js +66 -0
- package/src/x_ite/Browser/ParticleSystems/Line3.glsl +55 -0
- package/src/x_ite/Browser/ParticleSystems/Plane3.glsl +160 -0
- package/src/x_ite/Browser/PointingDeviceSensor/PointingDevice.js +27 -3
- package/src/x_ite/Browser/PointingDeviceSensor/X3DPointingDeviceSensorContext.js +41 -37
- package/src/x_ite/Browser/Rendering/X3DRenderingContext.js +21 -13
- package/src/x_ite/Browser/Shaders/Shader.js +33 -12
- package/src/x_ite/Browser/Shaders/ShaderSource.js +6 -0
- package/src/x_ite/Browser/Shaders/ShaderTest.js +16 -10
- package/src/x_ite/Browser/Shape/X3DShapeContext.js +50 -9
- package/src/x_ite/Browser/Text/X3DTextContext.js +4 -13
- package/src/x_ite/Browser/Text/X3DTextGeometry.js +2 -1
- package/src/x_ite/Browser/Texturing/X3DTexturingContext.js +71 -34
- package/src/x_ite/Browser/Texturing3D/DICOMParser.js +2 -2
- package/src/x_ite/Browser/Time/X3DTimeContext.js +4 -2
- package/src/x_ite/Browser/VERSION.js +1 -1
- package/src/x_ite/Browser/X3DBrowser.js +7 -6
- package/src/x_ite/Browser/X3DBrowserContext.js +43 -10
- package/src/x_ite/Components/Core/X3DNode.js +4 -0
- package/src/x_ite/Components/Core/X3DPrototypeInstance.js +0 -2
- package/src/x_ite/Components/CubeMapTexturing/ComposedCubeMapTexture.js +3 -4
- package/src/x_ite/Components/CubeMapTexturing/GeneratedCubeMapTexture.js +1 -12
- package/src/x_ite/Components/CubeMapTexturing/ImageCubeMapTexture.js +1 -2
- package/src/x_ite/Components/EnvironmentalEffects/TextureBackground.js +1 -1
- package/src/x_ite/Components/EnvironmentalEffects/X3DBackgroundNode.js +76 -77
- package/src/x_ite/Components/EnvironmentalEffects/X3DFogObject.js +2 -9
- package/src/x_ite/Components/EnvironmentalSensor/ProximitySensor.js +51 -65
- package/src/x_ite/Components/EventUtilities/X3DSequencerNode.js +1 -1
- package/src/x_ite/Components/Followers/ColorDamper.js +1 -1
- package/src/x_ite/Components/Followers/X3DChaserNode.js +18 -32
- package/src/x_ite/Components/Followers/X3DDamperNode.js +1 -6
- package/src/x_ite/Components/Followers/X3DFollowerNode.js +1 -1
- package/src/x_ite/Components/Geometry2D/Disk2D.js +30 -46
- package/src/x_ite/Components/Geometry2D/TriangleSet2D.js +1 -1
- package/src/x_ite/Components/Geometry3D/ElevationGrid.js +12 -4
- package/src/x_ite/Components/Geometry3D/IndexedFaceSet.js +4 -4
- package/src/x_ite/Components/Geospatial/GeoCoordinate.js +10 -27
- package/src/x_ite/Components/Geospatial/GeoLOD.js +1 -1
- package/src/x_ite/Components/Geospatial/GeoPositionInterpolator.js +5 -10
- package/src/x_ite/Components/Geospatial/GeoTouchSensor.js +9 -16
- package/src/x_ite/Components/Geospatial/GeoTransform.js +6 -18
- package/src/x_ite/Components/Geospatial/GeoViewpoint.js +26 -30
- package/src/x_ite/Components/Geospatial/X3DGeospatialObject.js +20 -27
- package/src/x_ite/Components/Grouping/X3DGroupingNode.js +8 -8
- package/src/x_ite/Components/Grouping/X3DTransformNode.js +0 -4
- package/src/x_ite/Components/HAnim/HAnimHumanoid.js +68 -75
- package/src/x_ite/Components/Interpolation/OrientationInterpolator.js +4 -11
- package/src/x_ite/Components/Interpolation/X3DInterpolatorNode.js +1 -1
- package/src/x_ite/Components/Layout/LayoutGroup.js +4 -9
- package/src/x_ite/Components/Layout/ScreenFontStyle.js +1 -1
- package/src/x_ite/Components/Layout/ScreenGroup.js +16 -80
- package/src/x_ite/Components/Lighting/DirectionalLight.js +28 -36
- package/src/x_ite/Components/Lighting/PointLight.js +32 -47
- package/src/x_ite/Components/Lighting/SpotLight.js +33 -48
- package/src/x_ite/Components/Navigation/Billboard.js +49 -56
- package/src/x_ite/Components/Navigation/LOD.js +2 -2
- package/src/x_ite/Components/Navigation/OrthoViewpoint.js +29 -30
- package/src/x_ite/Components/Navigation/Viewpoint.js +16 -20
- package/src/x_ite/Components/Navigation/X3DViewpointNode.js +82 -111
- package/src/x_ite/Components/Networking/Anchor.js +18 -7
- package/src/x_ite/Components/ParticleSystems/BoundedPhysicsModel.js +6 -6
- package/src/x_ite/Components/ParticleSystems/ConeEmitter.js +44 -36
- package/src/x_ite/Components/ParticleSystems/ExplosionEmitter.js +26 -17
- package/src/x_ite/Components/ParticleSystems/ForcePhysicsModel.js +20 -7
- package/src/x_ite/Components/ParticleSystems/ParticleSystem.js +463 -882
- package/src/x_ite/Components/ParticleSystems/PointEmitter.js +39 -35
- package/src/x_ite/Components/ParticleSystems/PolylineEmitter.js +112 -128
- package/src/x_ite/Components/ParticleSystems/SurfaceEmitter.js +105 -112
- package/src/x_ite/Components/ParticleSystems/VolumeEmitter.js +138 -176
- package/src/x_ite/Components/ParticleSystems/WindPhysicsModel.js +16 -11
- package/src/x_ite/Components/ParticleSystems/X3DParticleEmitterNode.js +807 -217
- package/src/x_ite/Components/Picking/LinePickSensor.js +31 -39
- package/src/x_ite/Components/PointingDeviceSensor/CylinderSensor.js +91 -108
- package/src/x_ite/Components/PointingDeviceSensor/PlaneSensor.js +56 -59
- package/src/x_ite/Components/PointingDeviceSensor/SphereSensor.js +54 -71
- package/src/x_ite/Components/PointingDeviceSensor/TouchSensor.js +8 -15
- package/src/x_ite/Components/ProjectiveTextureMapping/TextureProjectorParallel.js +43 -50
- package/src/x_ite/Components/ProjectiveTextureMapping/TextureProjectorPerspective.js +32 -39
- package/src/x_ite/Components/Rendering/ClipPlane.js +3 -11
- package/src/x_ite/Components/Rendering/Color.js +12 -24
- package/src/x_ite/Components/Rendering/ColorRGBA.js +13 -25
- package/src/x_ite/Components/Rendering/IndexedLineSet.js +26 -4
- package/src/x_ite/Components/Rendering/LineSet.js +35 -13
- package/src/x_ite/Components/Rendering/PointSet.js +35 -13
- package/src/x_ite/Components/Rendering/X3DComposedGeometryNode.js +13 -5
- package/src/x_ite/Components/Rendering/X3DGeometryNode.js +331 -387
- package/src/x_ite/Components/Rendering/X3DLineGeometryNode.js +350 -140
- package/src/x_ite/Components/Rendering/X3DPointGeometryNode.js +116 -126
- package/src/x_ite/Components/RigidBodyPhysics/DoubleAxisHingeJoint.js +24 -38
- package/src/x_ite/Components/RigidBodyPhysics/SingleAxisHingeJoint.js +10 -17
- package/src/x_ite/Components/Shaders/ComposedShader.js +35 -75
- package/src/x_ite/Components/Shaders/FloatVertexAttribute.js +8 -11
- package/src/x_ite/Components/Shaders/Matrix3VertexAttribute.js +10 -14
- package/src/x_ite/Components/Shaders/Matrix4VertexAttribute.js +10 -14
- package/src/x_ite/Components/Shaders/ShaderPart.js +1 -10
- package/src/x_ite/Components/Shaders/X3DProgrammableShaderObject.js +220 -210
- package/src/x_ite/Components/Shaders/X3DShaderNode.js +28 -10
- package/src/x_ite/Components/Shaders/X3DVertexAttributeNode.js +15 -1
- package/src/x_ite/Components/Shape/Appearance.js +37 -4
- package/src/x_ite/Components/Shape/FillProperties.js +12 -1
- package/src/x_ite/Components/Shape/LineProperties.js +33 -1
- package/src/x_ite/Components/Shape/PointProperties.js +24 -3
- package/src/x_ite/Components/Shape/Shape.js +30 -39
- package/src/x_ite/Components/Shape/TwoSidedMaterial.js +3 -1
- package/src/x_ite/Components/Sound/Sound.js +31 -41
- package/src/x_ite/Components/Text/Text.js +6 -20
- package/src/x_ite/Components/Texturing/ImageTexture.js +1 -1
- package/src/x_ite/Components/Texturing/MovieTexture.js +1 -1
- package/src/x_ite/Components/Texturing/PixelTexture.js +2 -2
- package/src/x_ite/Components/Texturing/TextureCoordinate.js +5 -5
- package/src/x_ite/Components/Texturing/TextureProperties.js +4 -4
- package/src/x_ite/Components/Texturing/X3DSingleTextureNode.js +5 -4
- package/src/x_ite/Components/Texturing/X3DTexture2DNode.js +24 -33
- package/src/x_ite/Components/Texturing3D/TextureCoordinate3D.js +5 -5
- package/src/x_ite/Components/Texturing3D/TextureCoordinate4D.js +5 -5
- package/src/x_ite/Components/Texturing3D/X3DTexture3DNode.js +12 -19
- package/src/x_ite/Components/VolumeRendering/X3DVolumeDataNode.js +8 -8
- package/src/x_ite/Components.js +2 -2
- package/src/x_ite/Fallback.js +9 -3
- package/src/x_ite/Fields/SFColor.js +4 -0
- package/src/x_ite/Fields/SFColorRGBA.js +4 -0
- package/src/x_ite/Fields/SFImage.js +2 -11
- package/src/x_ite/Fields/SFMatrixPrototypeTemplate.js +4 -0
- package/src/x_ite/Fields/SFRotation.js +4 -0
- package/src/x_ite/Fields/SFString.js +4 -0
- package/src/x_ite/Fields/SFVecPrototypeTemplate.js +22 -2
- package/src/x_ite/Parser/XMLParser.js +1 -1
- package/src/x_ite/Rendering/TextureBuffer.js +43 -36
- package/src/x_ite/Rendering/VertexArray.js +103 -0
- package/src/x_ite/Rendering/X3DRenderObject.js +127 -148
- package/src/x_ite/X3D.js +32 -26
- package/src/x_ite.config.js +0 -5
- package/src/x_ite.css +216 -175
- package/src/x_ite.html +15 -10
- package/src/x_ite.js +49 -1
- package/x_ite.min.html +15 -10
- package/dist/assets/hatching/0.png +0 -0
- package/dist/assets/linetype/0.png +0 -0
- package/src/assets/hatching/0.png +0 -0
- package/src/assets/linetype/0.png +0 -0
- package/src/spinner.css +0 -67
- package/src/x_ite/Browser/Shape/LineStipples.xcf +0 -0
package/docs/tutorials/index.md
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
# Feel free to add content and custom Front Matter to this file.
|
|
3
|
+
# To modify the layout, see https://jekyllrb.com/docs/themes/#overriding-theme-defaults
|
|
4
|
+
|
|
5
|
+
layout: single
|
|
6
|
+
---
|
|
1
7
|
# Tutorials
|
|
2
8
|
|
|
3
9
|
## Overview
|
|
@@ -10,64 +16,64 @@ The only hardware and software requirement for most of the tutorials is a comput
|
|
|
10
16
|
|
|
11
17
|
Simple, fast and efficient, our X3D tutorials give you all the tips and tricks to advance in the construction of your project.
|
|
12
18
|
|
|
13
|
-
- [Hello, World](
|
|
19
|
+
- [Hello, World](Hello,-World!.html)
|
|
14
20
|
- First let's go over to the »Hello World« tutorial, which displays a simple earth and the text »Hello World!«.
|
|
15
|
-
- [A Quick Overview: Basic Nodes](
|
|
21
|
+
- [A Quick Overview: Basic Nodes](Basic-Nodes.html)
|
|
16
22
|
- Here are the basic nodes described, which are often used in an X3D world.
|
|
17
23
|
|
|
18
24
|
Shapes, Geometry, and Appearance
|
|
19
25
|
|
|
20
|
-
- [Introducing X3D](
|
|
21
|
-
- [Building a X3D World](
|
|
22
|
-
- [Building Primitive Shapes ](
|
|
23
|
-
- [Transforming Shapes](
|
|
24
|
-
- [Controlling Appearance with Materials ](
|
|
25
|
-
- [Grouping Nodes ](
|
|
26
|
-
- [Naming Nodes](
|
|
26
|
+
- [Introducing X3D](Introducing-X3D.html)
|
|
27
|
+
- [Building a X3D World](Building-a-X3D-world.html)
|
|
28
|
+
- [Building Primitive Shapes ](Building-primitive-shapes.html)
|
|
29
|
+
- [Transforming Shapes](Transforming-Shapes.html)
|
|
30
|
+
- [Controlling Appearance with Materials ](Controlling-appearance-with-materials.html)
|
|
31
|
+
- [Grouping Nodes ](Grouping-nodes.html)
|
|
32
|
+
- [Naming Nodes](Naming-nodes.html)
|
|
27
33
|
|
|
28
34
|
Animation, Sensors, and Geometry
|
|
29
35
|
|
|
30
|
-
- [Introducing Animation](
|
|
31
|
-
- [Animating Transforms](
|
|
32
|
-
- [Sensing Viewer Actions](
|
|
33
|
-
- [Building Ahapes out of Points, Lines, and Faces](
|
|
34
|
-
- [Building Elevation Grids](
|
|
35
|
-
- [Building Extruded Shapes](
|
|
36
|
-
- [Controlling Color on Coordinate-Based Geometry](
|
|
37
|
-
- [Controlling Shading on Coordinate-Based Geometry](
|
|
36
|
+
- [Introducing Animation](Introducing-animation.html)
|
|
37
|
+
- [Animating Transforms](Animating-transforms.html)
|
|
38
|
+
- [Sensing Viewer Actions](Sensing-viewer-actions.html)
|
|
39
|
+
- [Building Ahapes out of Points, Lines, and Faces](Building-shapes-out-of-points,-lines,-and-faces.html)
|
|
40
|
+
- [Building Elevation Grids](Building-elevation-grids.html)
|
|
41
|
+
- [Building Extruded Shapes](Building-extruded-shapes.html)
|
|
42
|
+
- [Controlling Color on Coordinate-Based Geometry](Controlling-color-on-coordinate-based-geometry.html)
|
|
43
|
+
- [Controlling Shading on Coordinate-Based Geometry](Controlling-shading-on-coordinate-based-geometry.html)
|
|
38
44
|
|
|
39
45
|
Textures, Lights, and Environment
|
|
40
46
|
|
|
41
|
-
- [Mapping Textures](
|
|
42
|
-
- [Controlling How Textures are Mapped](
|
|
43
|
-
- [Lighting Your World](
|
|
44
|
-
- [Adding Backgrounds](
|
|
45
|
-
- [Adding Fog](
|
|
46
|
-
- [Adding Sound](
|
|
47
|
-
- [Controlling the Viewpoint](
|
|
48
|
-
- [Controlling Navigation](
|
|
49
|
-
- [Sensing the Viewer](
|
|
47
|
+
- [Mapping Textures](Mapping-textures.html)
|
|
48
|
+
- [Controlling How Textures are Mapped](Controlling-how-textures-are-mapped.html)
|
|
49
|
+
- [Lighting Your World](Lighting-your-world.html)
|
|
50
|
+
- [Adding Backgrounds](Adding-backgrounds.html)
|
|
51
|
+
- [Adding Fog](Adding-fog.html)
|
|
52
|
+
- [Adding Sound](Adding-sound.html)
|
|
53
|
+
- [Controlling the Viewpoint](Controlling-the-viewpoint.html)
|
|
54
|
+
- [Controlling Navigation](Controlling-navigation.html)
|
|
55
|
+
- [Sensing the Viewer](Sensing-the-viewer.html)
|
|
50
56
|
|
|
51
57
|
Scripts and Prototypes
|
|
52
58
|
|
|
53
|
-
- [Controlling Detail](
|
|
54
|
-
- [Introducing Script Use](
|
|
55
|
-
- [Writing Program Scripts with ECMAScript](
|
|
56
|
-
- [Creating New Node Types](
|
|
57
|
-
- [Providing Tnformation About Your wWorld](
|
|
59
|
+
- [Controlling Detail](Controlling-detail.html)
|
|
60
|
+
- [Introducing Script Use](Introducing-script-use.html)
|
|
61
|
+
- [Writing Program Scripts with ECMAScript](Writing-program-scripts-with-ECMAScript.html)
|
|
62
|
+
- [Creating New Node Types](Creating-new-node-types.html)
|
|
63
|
+
- [Providing Tnformation About Your wWorld](Providing-information-about-your-world.html)
|
|
58
64
|
|
|
59
65
|
Some words about optimizing a scene
|
|
60
66
|
|
|
61
|
-
- [Improve Performance](
|
|
67
|
+
- [Improve Performance](Improving-Performance.html)
|
|
62
68
|
- To optimize a scene is an important task when creating an X3D scene. There are several ways to improve performance.
|
|
63
|
-
- [Increasing Rendering Speed](
|
|
69
|
+
- [Increasing Rendering Speed](Increasing-Rendering-Speed.html)
|
|
64
70
|
- Using WebGL and JavaScript needs to look at speed all the time. Learn ways to increase rendering speed.
|
|
65
71
|
|
|
66
72
|
### See Also
|
|
67
73
|
|
|
68
|
-
- [Script Node Authoring Interface](
|
|
69
|
-
- [ECMAScript Object and Function Definitions](
|
|
70
|
-
- [Custom Shaders](
|
|
74
|
+
- [Script Node Authoring Interface](../reference/Script-Node-Authoring-Interface.html)
|
|
75
|
+
- [ECMAScript Object and Function Definitions](../reference/ECMAScript-Object-and-Function-Definitions.html)
|
|
76
|
+
- [Custom Shaders](../Custom-Shaders.html)
|
|
71
77
|
|
|
72
78
|
## There are also Books for Further Reading
|
|
73
79
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "x_ite",
|
|
3
|
-
"version": "
|
|
4
|
-
"revision": "
|
|
3
|
+
"version": "6.1.0",
|
|
4
|
+
"revision": "1157",
|
|
5
5
|
"description": "X_ITE X3D Browser, a framework for integrating and manipulating X3D and VRML scenes in HTML.",
|
|
6
6
|
"main": "dist/x_ite.js",
|
|
7
7
|
"repository": {
|
|
@@ -52,11 +52,10 @@
|
|
|
52
52
|
"ammojs": "^0.0.2",
|
|
53
53
|
"CharLS.js": "^2.0.1",
|
|
54
54
|
"css-element-queries": "^1.2.3",
|
|
55
|
-
"dicom-parser": "^1.8.
|
|
56
|
-
"jpeg-js": "^0.4.
|
|
55
|
+
"dicom-parser": "^1.8.19",
|
|
56
|
+
"jpeg-js": "^0.4.4",
|
|
57
57
|
"jpeg-lossless-decoder-js": "^2.0.4",
|
|
58
|
-
"jquery": "^3.6.
|
|
59
|
-
"jquery-contextmenu": "^2.9.2",
|
|
58
|
+
"jquery": "^3.6.1",
|
|
60
59
|
"jquery-mousewheel": "^3.1.13",
|
|
61
60
|
"jquery.fullscreen": "^0.6.0",
|
|
62
61
|
"libtess": "^1.2.2",
|
|
@@ -66,7 +65,7 @@
|
|
|
66
65
|
"require": "^2.4.20",
|
|
67
66
|
"requirejs": "^2.3.6",
|
|
68
67
|
"requirejs-text": "^2.0.16",
|
|
69
|
-
"terser": "^5.
|
|
68
|
+
"terser": "^5.15.1"
|
|
70
69
|
},
|
|
71
70
|
"scripts": {
|
|
72
71
|
"lint": "jshint **",
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -45,6 +45,7 @@ struct x3d_LinePropertiesParameters
|
|
|
45
45
|
{
|
|
46
46
|
bool applied;
|
|
47
47
|
mediump float linewidthScaleFactor;
|
|
48
|
+
mediump float lineStippleScale;
|
|
48
49
|
sampler2D linetype;
|
|
49
50
|
};
|
|
50
51
|
|
|
@@ -270,12 +271,3 @@ struct x3d_TextureCoordinateGeneratorParameters
|
|
|
270
271
|
};
|
|
271
272
|
|
|
272
273
|
//uniform x3d_TextureCoordinateGeneratorParameters x3d_TextureCoordinateGenerator [x3d_MaxTextures];
|
|
273
|
-
|
|
274
|
-
struct x3d_ParticleParameters
|
|
275
|
-
{
|
|
276
|
-
mediump int id;
|
|
277
|
-
mediump int life;
|
|
278
|
-
mediump float elapsedTime;
|
|
279
|
-
};
|
|
280
|
-
|
|
281
|
-
//uniform x3d_ParticleParameters x3d_Particle;
|
|
@@ -8,8 +8,8 @@ precision highp int;
|
|
|
8
8
|
|
|
9
9
|
uniform int x3d_GeometryType;
|
|
10
10
|
|
|
11
|
-
uniform bool x3d_ColorMaterial; // true if a X3DColorNode is attached, otherwise false
|
|
12
11
|
uniform float x3d_AlphaCutoff;
|
|
12
|
+
uniform bool x3d_ColorMaterial; // true if a X3DColorNode is attached, otherwise false
|
|
13
13
|
|
|
14
14
|
varying float fogDepth; // fog depth
|
|
15
15
|
varying vec4 frontColor; // color
|
|
@@ -6,11 +6,10 @@ uniform mat3 x3d_NormalMatrix;
|
|
|
6
6
|
uniform mat4 x3d_ProjectionMatrix;
|
|
7
7
|
uniform mat4 x3d_ModelViewMatrix;
|
|
8
8
|
|
|
9
|
-
uniform bool x3d_ColorMaterial; // true if a X3DColorNode is attached, otherwise false
|
|
10
|
-
|
|
11
9
|
uniform int x3d_NumLights;
|
|
12
10
|
uniform x3d_LightSourceParameters x3d_LightSource [x3d_MaxLights];
|
|
13
11
|
uniform x3d_MaterialParameters x3d_Material;
|
|
12
|
+
uniform bool x3d_ColorMaterial; // true if a X3DColorNode is attached, otherwise false
|
|
14
13
|
|
|
15
14
|
attribute float x3d_FogDepth;
|
|
16
15
|
attribute vec4 x3d_Color;
|
|
@@ -87,7 +86,7 @@ getMaterialColor (const in vec3 N,
|
|
|
87
86
|
float specularFactor = material .shininess > 0.0 ? pow (max (dot (N, H), 0.0), material .shininess * 128.0) : 1.0;
|
|
88
87
|
vec3 specularTerm = material .specularColor * specularFactor;
|
|
89
88
|
|
|
90
|
-
float attenuationFactor = di ? 1.0 : 1.0 / max (c
|
|
89
|
+
float attenuationFactor = di ? 1.0 : 1.0 / max (dot (c, vec3 (1.0, dL, dL * dL)), 1.0);
|
|
91
90
|
float spotFactor = light .type == x3d_SpotLight ? getSpotFactor (light .cutOffAngle, light .beamWidth, L, d) : 1.0;
|
|
92
91
|
float attenuationSpotFactor = attenuationFactor * spotFactor;
|
|
93
92
|
vec3 ambientTerm = light .ambientIntensity * ambientColor;
|
|
@@ -10,14 +10,9 @@ uniform float x3d_AlphaCutoff;
|
|
|
10
10
|
uniform x3d_LinePropertiesParameters x3d_LineProperties;
|
|
11
11
|
uniform ivec4 x3d_Viewport;
|
|
12
12
|
|
|
13
|
-
varying float fogDepth;
|
|
14
|
-
varying vec4 color;
|
|
15
|
-
varying vec3 vertex;
|
|
16
|
-
|
|
17
|
-
#ifdef X_ITE
|
|
18
|
-
varying vec3 startPosition; // line stipple start
|
|
19
|
-
varying vec3 vertexPosition; // current line stipple position
|
|
20
|
-
#endif
|
|
13
|
+
varying float fogDepth; // fog depth
|
|
14
|
+
varying vec4 color; // color
|
|
15
|
+
varying vec3 vertex; // point on geometry
|
|
21
16
|
|
|
22
17
|
#ifdef X3D_LOGARITHMIC_DEPTH_BUFFER
|
|
23
18
|
uniform float x3d_LogarithmicFarFactor1_2;
|
|
@@ -27,31 +22,11 @@ varying float depth;
|
|
|
27
22
|
#pragma X3D include "include/Fog.glsl"
|
|
28
23
|
#pragma X3D include "include/ClipPlanes.glsl"
|
|
29
24
|
|
|
30
|
-
#ifdef X_ITE
|
|
31
|
-
void
|
|
32
|
-
stipple ()
|
|
33
|
-
{
|
|
34
|
-
if (x3d_LineProperties .applied)
|
|
35
|
-
{
|
|
36
|
-
vec2 direction = (vertexPosition .xy - startPosition .xy) * vec2 (x3d_Viewport .zw) * 0.5;
|
|
37
|
-
float distance = length (direction) / 16.0;
|
|
38
|
-
float color = texture2D (x3d_LineProperties .linetype, vec2 (distance, distance)) .a;
|
|
39
|
-
|
|
40
|
-
if (color == 0.0)
|
|
41
|
-
discard;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
#endif
|
|
45
|
-
|
|
46
25
|
void
|
|
47
26
|
main ()
|
|
48
27
|
{
|
|
49
28
|
clip ();
|
|
50
29
|
|
|
51
|
-
#ifdef X_ITE
|
|
52
|
-
stipple ();
|
|
53
|
-
#endif
|
|
54
|
-
|
|
55
30
|
vec4 finalColor = vec4 (0.0);
|
|
56
31
|
|
|
57
32
|
finalColor .rgb = getFogColor (color .rgb);
|