x_ite 5.0.2 → 6.0.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 +21 -0
- package/Makefile +10 -15
- package/README.md +6 -11
- package/build/bin/dist.pl +0 -6
- package/build/bin/version.pl +1 -4
- package/dist/assets/components/annotation.js +2 -2
- package/dist/assets/components/annotation.min.js +1 -1
- package/dist/assets/components/cad-geometry.js +2 -2
- package/dist/assets/components/cad-geometry.min.js +1 -1
- package/dist/assets/components/cube-map-texturing.js +6 -19
- package/dist/assets/components/cube-map-texturing.min.js +1 -1
- package/dist/assets/components/dis.js +2 -2
- package/dist/assets/components/dis.min.js +1 -1
- package/dist/assets/components/event-utilities.js +3 -3
- package/dist/assets/components/event-utilities.min.js +1 -1
- package/dist/assets/components/geometry2d.js +4 -4
- package/dist/assets/components/geometry2d.min.js +1 -1
- package/dist/assets/components/geospatial.js +32 -1685
- package/dist/assets/components/geospatial.min.js +1 -1
- package/dist/assets/components/h-anim.js +70 -77
- package/dist/assets/components/h-anim.min.js +1 -1
- package/dist/assets/components/key-device-sensor.js +3 -3
- package/dist/assets/components/key-device-sensor.min.js +1 -1
- package/dist/assets/components/layout.js +38 -52
- package/dist/assets/components/layout.min.js +1 -1
- package/dist/assets/components/nurbs.js +277 -194
- package/dist/assets/components/nurbs.min.js +1 -1
- package/dist/assets/components/particle-systems.js +1918 -1658
- package/dist/assets/components/particle-systems.min.js +1 -1
- package/dist/assets/components/picking.js +33 -41
- package/dist/assets/components/picking.min.js +1 -1
- package/dist/assets/components/projective-texture-mapping.js +72 -86
- package/dist/assets/components/projective-texture-mapping.min.js +1 -1
- package/dist/assets/components/rigid-body-physics.js +36 -57
- package/dist/assets/components/rigid-body-physics.min.js +1 -1
- package/dist/assets/components/scripting.js +2 -2
- package/dist/assets/components/scripting.min.js +1 -1
- package/dist/assets/components/texturing-3d.js +26 -75
- package/dist/assets/components/texturing-3d.min.js +3 -3
- package/dist/assets/components/volume-rendering.js +10 -10
- package/dist/assets/components/volume-rendering.min.js +1 -1
- package/dist/assets/components/x_ite.js +2 -2
- package/dist/assets/components/x_ite.min.js +1 -1
- 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/Line.fs +0 -21
- package/dist/assets/shaders/webgl1/Line.vs +0 -10
- package/dist/assets/shaders/webgl1/PBR.vs +1 -1
- package/dist/assets/shaders/webgl2/Depth.vs +29 -1
- package/dist/assets/shaders/webgl2/Gouraud.vs +31 -3
- 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.vs +35 -7
- package/dist/assets/shaders/webgl2/Phong.vs +31 -3
- package/dist/assets/shaders/webgl2/Point.vs +29 -1
- package/dist/assets/shaders/webgl2/Unlit.vs +31 -3
- package/dist/example.html +6 -6
- package/dist/x_ite.css +180 -208
- package/dist/x_ite.js +16477 -16629
- 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 +20 -14
- package/docs/Browser-Support.md +6 -0
- package/docs/Custom-Shaders.md +17 -24
- package/docs/Features.md +7 -1
- 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 +31 -0
- package/docs/XHTML-DOM-Integration.md +6 -0
- package/docs/_config.yml +1 -1
- package/docs/assets/css/main.scss +26 -0
- package/docs/index.md +38 -46
- 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 +6 -0
- package/docs/reference/Field-Services-and-Objects.md +6 -0
- package/docs/reference/Prototype-Services.md +6 -0
- package/docs/reference/Route-Services.md +6 -0
- package/docs/reference/Scene-Services.md +8 -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 +6 -0
- 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/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/Line.fs +3 -28
- package/src/assets/shaders/webgl1/Line.vs +5 -19
- package/src/assets/shaders/webgl1/PBR.vs +1 -1
- package/src/assets/shaders/webgl1/Point.vs +2 -3
- package/src/assets/shaders/webgl2/Depth.vs +4 -1
- package/src/assets/shaders/webgl2/Gouraud.vs +5 -3
- package/src/assets/shaders/webgl2/Line.fs +11 -17
- package/src/assets/shaders/webgl2/Line.vs +16 -20
- package/src/assets/shaders/webgl2/LineTransform.fs +6 -0
- package/src/assets/shaders/webgl2/LineTransform.vs +77 -0
- package/src/assets/shaders/webgl2/PBR.vs +10 -7
- package/src/assets/shaders/webgl2/Phong.vs +6 -3
- package/src/assets/shaders/webgl2/Point.vs +6 -6
- 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/Particle.glsl +36 -0
- package/src/example.html +6 -6
- package/src/standard/Math/Algorithm.js +12 -28
- package/src/standard/Math/Geometry/Plane3.js +0 -2
- package/src/standard/Math/Geometry/ViewVolume.js +88 -83
- 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 +5 -0
- package/src/standard/Math/Numbers/Matrix2.js +20 -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 +7 -0
- package/src/standard/Math/Numbers/Rotation4.js +7 -0
- package/src/standard/Math/Numbers/Vector2.js +8 -5
- package/src/standard/Math/Numbers/Vector3.js +16 -10
- package/src/standard/Math/Numbers/Vector4.js +12 -7
- package/src/standard/Math/Utility/BVH.js +45 -17
- package/src/tests.js +6 -1
- 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 +2 -2
- package/src/x_ite/Browser/Core/BrowserTimings.js +4 -2
- package/src/x_ite/Browser/Core/Context.js +185 -0
- package/src/x_ite/Browser/Core/ContextMenu.js +299 -193
- 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/Layout/ScreenText.js +11 -4
- package/src/x_ite/Browser/Layout/X3DLayoutContext.js +4 -15
- package/src/x_ite/Browser/Navigation/ExamineViewer.js +12 -19
- package/src/x_ite/Browser/Navigation/LookAtViewer.js +0 -3
- package/src/x_ite/Browser/Navigation/PlaneViewer.js +0 -3
- package/src/x_ite/Browser/Navigation/X3DFlyViewer.js +14 -7
- 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 +37 -37
- package/src/x_ite/Browser/Rendering/X3DRenderingContext.js +19 -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/Texturing/X3DTexturingContext.js +23 -33
- package/src/x_ite/Browser/Texturing3D/DICOMParser.js +2 -2
- package/src/x_ite/Browser/Time/X3DTimeContext.js +3 -1
- 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 +35 -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 +0 -1
- 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/X3DChaserNode.js +18 -32
- package/src/x_ite/Components/Followers/X3DDamperNode.js +1 -6
- 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/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/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 +18 -23
- 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 +1 -1
- package/src/x_ite/Components/Navigation/X3DViewpointNode.js +82 -111
- package/src/x_ite/Components/Networking/Anchor.js +10 -4
- 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 +461 -876
- 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 +90 -107
- package/src/x_ite/Components/PointingDeviceSensor/PlaneSensor.js +48 -55
- package/src/x_ite/Components/PointingDeviceSensor/SphereSensor.js +53 -70
- 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 -37
- package/src/x_ite/Components/Rendering/ColorRGBA.js +13 -38
- package/src/x_ite/Components/Rendering/IndexedLineSet.js +12 -4
- package/src/x_ite/Components/Rendering/LineSet.js +21 -13
- package/src/x_ite/Components/Rendering/PointSet.js +21 -13
- package/src/x_ite/Components/Rendering/X3DColorNode.js +13 -0
- package/src/x_ite/Components/Rendering/X3DComposedGeometryNode.js +13 -5
- package/src/x_ite/Components/Rendering/X3DGeometryNode.js +248 -325
- package/src/x_ite/Components/Rendering/X3DLineGeometryNode.js +305 -134
- package/src/x_ite/Components/Rendering/X3DPointGeometryNode.js +99 -122
- 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 +5 -15
- package/src/x_ite/Components/Shaders/Matrix3VertexAttribute.js +7 -24
- package/src/x_ite/Components/Shaders/Matrix4VertexAttribute.js +7 -24
- package/src/x_ite/Components/Shaders/ShaderPart.js +1 -10
- package/src/x_ite/Components/Shaders/X3DProgrammableShaderObject.js +219 -209
- package/src/x_ite/Components/Shaders/X3DShaderNode.js +1 -1
- package/src/x_ite/Components/Shaders/X3DVertexAttributeNode.js +23 -1
- package/src/x_ite/Components/Shape/Appearance.js +12 -0
- 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 +23 -1
- package/src/x_ite/Components/Shape/Shape.js +27 -34
- package/src/x_ite/Components/Sound/Sound.js +30 -40
- package/src/x_ite/Components/Text/Text.js +6 -20
- package/src/x_ite/Components/Texturing/TextureCoordinate.js +5 -26
- package/src/x_ite/Components/Texturing/TextureProperties.js +4 -4
- package/src/x_ite/Components/Texturing/X3DSingleTextureCoordinateNode.js +21 -0
- 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 -26
- package/src/x_ite/Components/Texturing3D/TextureCoordinate4D.js +5 -26
- package/src/x_ite/Components/Texturing3D/X3DTexture3DNode.js +12 -19
- package/src/x_ite/Components/VolumeRendering/X3DVolumeDataNode.js +7 -7
- 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/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 +4 -0
- 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 +101 -0
- package/src/x_ite/Rendering/X3DRenderObject.js +123 -144
- package/src/x_ite/X3D.js +32 -26
- package/src/x_ite.config.js +0 -5
- package/src/x_ite.css +200 -162
- package/src/x_ite.html +26 -10
- package/src/x_ite.js +42 -0
- package/x_ite.min.html +26 -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
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "x_ite",
|
|
3
|
-
"version": "
|
|
4
|
-
"revision": "
|
|
3
|
+
"version": "6.0.0",
|
|
4
|
+
"revision": "1154",
|
|
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
|
|
@@ -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;
|
|
@@ -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);
|
|
@@ -12,15 +12,9 @@ attribute float x3d_FogDepth;
|
|
|
12
12
|
attribute vec4 x3d_Color;
|
|
13
13
|
attribute vec4 x3d_Vertex;
|
|
14
14
|
|
|
15
|
-
varying float fogDepth;
|
|
16
|
-
varying vec4 color;
|
|
17
|
-
varying vec3 vertex;
|
|
18
|
-
|
|
19
|
-
#ifdef X_ITE
|
|
20
|
-
attribute vec4 x3d_TexCoord0;
|
|
21
|
-
varying vec3 startPosition; // line stipple start
|
|
22
|
-
varying vec3 vertexPosition; // current line stipple position
|
|
23
|
-
#endif
|
|
15
|
+
varying float fogDepth; // fog depth
|
|
16
|
+
varying vec4 color; // color
|
|
17
|
+
varying vec3 vertex; // point on geometry
|
|
24
18
|
|
|
25
19
|
#ifdef X3D_LOGARITHMIC_DEPTH_BUFFER
|
|
26
20
|
varying float depth;
|
|
@@ -31,19 +25,11 @@ main ()
|
|
|
31
25
|
{
|
|
32
26
|
vec4 position = x3d_ModelViewMatrix * x3d_Vertex;
|
|
33
27
|
|
|
34
|
-
fogDepth
|
|
35
|
-
vertex
|
|
28
|
+
fogDepth = x3d_FogDepth;
|
|
29
|
+
vertex = position .xyz;
|
|
36
30
|
|
|
37
31
|
gl_Position = x3d_ProjectionMatrix * position;
|
|
38
32
|
|
|
39
|
-
#ifdef X_ITE
|
|
40
|
-
// Line Stipple
|
|
41
|
-
vec4 start = x3d_ProjectionMatrix * x3d_ModelViewMatrix * x3d_TexCoord0;
|
|
42
|
-
|
|
43
|
-
startPosition = start .xyz / start .w;
|
|
44
|
-
vertexPosition = gl_Position .xyz / gl_Position .w;
|
|
45
|
-
#endif
|
|
46
|
-
|
|
47
33
|
#ifdef X3D_LOGARITHMIC_DEPTH_BUFFER
|
|
48
34
|
depth = 1.0 + gl_Position .w;
|
|
49
35
|
#endif
|
|
@@ -31,7 +31,7 @@ main ()
|
|
|
31
31
|
vec4 position = x3d_ModelViewMatrix * x3d_Vertex;
|
|
32
32
|
|
|
33
33
|
vertex = position .xyz;
|
|
34
|
-
normal =
|
|
34
|
+
normal = x3d_NormalMatrix * x3d_Normal;
|
|
35
35
|
texCoord0 = x3d_TexCoord0;
|
|
36
36
|
texCoord1 = x3d_TexCoord1;
|
|
37
37
|
color = x3d_Color;
|
|
@@ -6,7 +6,6 @@ uniform x3d_PointPropertiesParameters x3d_PointProperties;
|
|
|
6
6
|
|
|
7
7
|
uniform bool x3d_ColorMaterial; // true if a X3DColorNode is attached, otherwise false
|
|
8
8
|
uniform x3d_UnlitMaterialParameters x3d_Material;
|
|
9
|
-
uniform int x3d_NumTextures;
|
|
10
9
|
|
|
11
10
|
uniform mat4 x3d_ProjectionMatrix;
|
|
12
11
|
uniform mat4 x3d_ModelViewMatrix;
|
|
@@ -48,10 +47,10 @@ main ()
|
|
|
48
47
|
float dL = length (vertex);
|
|
49
48
|
|
|
50
49
|
pointSize = x3d_PointProperties .pointSizeScaleFactor;
|
|
51
|
-
pointSize
|
|
50
|
+
pointSize /= pointSizeAttenuation [0] + pointSizeAttenuation [1] * dL + pointSizeAttenuation [2] * (dL * dL);
|
|
52
51
|
pointSize = clamp (pointSize, pointSizeMinValue, pointSizeMaxValue);
|
|
53
52
|
|
|
54
|
-
gl_PointSize = pointSize > 1.0
|
|
53
|
+
gl_PointSize = pointSize > 1.0 ? pointSize + 1.0 : pointSize;
|
|
55
54
|
|
|
56
55
|
// Determine color.
|
|
57
56
|
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
precision highp float;
|
|
4
4
|
precision highp int;
|
|
5
|
+
precision highp sampler2D;
|
|
5
6
|
|
|
6
7
|
uniform mat4 x3d_ProjectionMatrix;
|
|
7
8
|
uniform mat4 x3d_ModelViewMatrix;
|
|
@@ -10,10 +11,12 @@ in vec4 x3d_Vertex;
|
|
|
10
11
|
|
|
11
12
|
out vec3 vertex; // point on geometry
|
|
12
13
|
|
|
14
|
+
#pragma X3D include "include/Particle.glsl"
|
|
15
|
+
|
|
13
16
|
void
|
|
14
17
|
main ()
|
|
15
18
|
{
|
|
16
|
-
vec4 position = x3d_ModelViewMatrix * x3d_Vertex;
|
|
19
|
+
vec4 position = x3d_ModelViewMatrix * getVertex (x3d_Vertex);
|
|
17
20
|
|
|
18
21
|
vertex = position .xyz;
|
|
19
22
|
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
precision highp float;
|
|
4
4
|
precision highp int;
|
|
5
|
+
precision highp sampler2D;
|
|
5
6
|
|
|
6
7
|
uniform mat3 x3d_NormalMatrix;
|
|
7
8
|
uniform mat4 x3d_ProjectionMatrix;
|
|
@@ -46,6 +47,7 @@ out vec4 texCoord1; // texCoord1
|
|
|
46
47
|
out float depth;
|
|
47
48
|
#endif
|
|
48
49
|
|
|
50
|
+
#pragma X3D include "include/Particle.glsl"
|
|
49
51
|
#pragma X3D include "include/SpotFactor.glsl"
|
|
50
52
|
|
|
51
53
|
vec4
|
|
@@ -106,7 +108,7 @@ getMaterialColor (const in vec3 N,
|
|
|
106
108
|
void
|
|
107
109
|
main ()
|
|
108
110
|
{
|
|
109
|
-
vec4 position = x3d_ModelViewMatrix * x3d_Vertex;
|
|
111
|
+
vec4 position = x3d_ModelViewMatrix * getVertex (x3d_Vertex);
|
|
110
112
|
|
|
111
113
|
fogDepth = x3d_FogDepth;
|
|
112
114
|
vertex = position .xyz;
|
|
@@ -115,11 +117,11 @@ main ()
|
|
|
115
117
|
localVertex = x3d_Vertex .xyz;
|
|
116
118
|
|
|
117
119
|
#if x3d_MaxTextures > 0
|
|
118
|
-
texCoord0 = x3d_TexCoord0;
|
|
120
|
+
texCoord0 = getTexCoord (x3d_TexCoord0);
|
|
119
121
|
#endif
|
|
120
122
|
|
|
121
123
|
#if x3d_MaxTextures > 1
|
|
122
|
-
texCoord1 = x3d_TexCoord1;
|
|
124
|
+
texCoord1 = getTexCoord (x3d_TexCoord1);
|
|
123
125
|
#endif
|
|
124
126
|
|
|
125
127
|
gl_Position = x3d_ProjectionMatrix * position;
|
|
@@ -7,14 +7,12 @@ uniform float x3d_AlphaCutoff;
|
|
|
7
7
|
uniform x3d_LinePropertiesParameters x3d_LineProperties;
|
|
8
8
|
uniform ivec4 x3d_Viewport;
|
|
9
9
|
|
|
10
|
-
in float
|
|
11
|
-
in
|
|
12
|
-
in
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
in vec3
|
|
16
|
-
in vec3 vertexPosition; // current line stipple position
|
|
17
|
-
#endif
|
|
10
|
+
flat in float lengthSoFar; // in px, stipple support
|
|
11
|
+
flat in vec2 startPoint; // in px, stipple support
|
|
12
|
+
in vec2 midPoint; // in px, stipple support
|
|
13
|
+
in float fogDepth; // fog depth
|
|
14
|
+
in vec4 color; // color
|
|
15
|
+
in vec3 vertex; // point on geometry
|
|
18
16
|
|
|
19
17
|
#ifdef X3D_LOGARITHMIC_DEPTH_BUFFER
|
|
20
18
|
uniform float x3d_LogarithmicFarFactor1_2;
|
|
@@ -25,31 +23,27 @@ out vec4 x3d_FragColor;
|
|
|
25
23
|
|
|
26
24
|
#pragma X3D include "include/Fog.glsl"
|
|
27
25
|
#pragma X3D include "include/ClipPlanes.glsl"
|
|
26
|
+
#pragma X3D include "include/Line2.glsl"
|
|
28
27
|
|
|
29
|
-
#ifdef X_ITE
|
|
30
28
|
void
|
|
31
29
|
stipple ()
|
|
32
30
|
{
|
|
33
31
|
if (x3d_LineProperties .applied)
|
|
34
32
|
{
|
|
35
|
-
vec2
|
|
36
|
-
float
|
|
37
|
-
float
|
|
33
|
+
vec2 point = closest_point (line2 (startPoint, midPoint), gl_FragCoord .xy);
|
|
34
|
+
float s = (lengthSoFar + length (point - startPoint)) * x3d_LineProperties .lineStippleScale;
|
|
35
|
+
float alpha = texture (x3d_LineProperties .linetype, vec2 (s, 0.5)) .a;
|
|
38
36
|
|
|
39
|
-
if (
|
|
37
|
+
if (alpha != 1.0)
|
|
40
38
|
discard;
|
|
41
39
|
}
|
|
42
40
|
}
|
|
43
|
-
#endif
|
|
44
41
|
|
|
45
42
|
void
|
|
46
43
|
main ()
|
|
47
44
|
{
|
|
48
45
|
clip ();
|
|
49
|
-
|
|
50
|
-
#ifdef X_ITE
|
|
51
46
|
stipple ();
|
|
52
|
-
#endif
|
|
53
47
|
|
|
54
48
|
vec4 finalColor = vec4 (0.0);
|
|
55
49
|
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
precision highp float;
|
|
4
4
|
precision highp int;
|
|
5
|
+
precision highp sampler2D;
|
|
5
6
|
|
|
6
7
|
uniform bool x3d_ColorMaterial; // true if a X3DColorNode is attached, otherwise false
|
|
7
8
|
uniform x3d_UnlitMaterialParameters x3d_Material;
|
|
@@ -10,41 +11,36 @@ uniform mat4 x3d_ProjectionMatrix;
|
|
|
10
11
|
uniform mat4 x3d_ModelViewMatrix;
|
|
11
12
|
|
|
12
13
|
in float x3d_FogDepth;
|
|
14
|
+
in vec4 x3d_TexCoord0;
|
|
13
15
|
in vec4 x3d_Color;
|
|
14
16
|
in vec4 x3d_Vertex;
|
|
15
17
|
|
|
16
|
-
out float
|
|
17
|
-
out
|
|
18
|
-
out
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
out vec3 startPosition; // line stipple start
|
|
23
|
-
out vec3 vertexPosition; // current line stipple position
|
|
24
|
-
#endif
|
|
18
|
+
flat out float lengthSoFar; // in px, stipple support
|
|
19
|
+
flat out vec2 startPoint; // in px, stipple support
|
|
20
|
+
out vec2 midPoint; // in px, stipple support
|
|
21
|
+
out float fogDepth; // fog depth
|
|
22
|
+
out vec4 color; // color
|
|
23
|
+
out vec3 vertex; // point on geometry
|
|
25
24
|
|
|
26
25
|
#ifdef X3D_LOGARITHMIC_DEPTH_BUFFER
|
|
27
26
|
out float depth;
|
|
28
27
|
#endif
|
|
29
28
|
|
|
29
|
+
#pragma X3D include "include/Particle.glsl"
|
|
30
|
+
|
|
30
31
|
void
|
|
31
32
|
main ()
|
|
32
33
|
{
|
|
33
|
-
vec4 position = x3d_ModelViewMatrix * x3d_Vertex;
|
|
34
|
+
vec4 position = x3d_ModelViewMatrix * getVertex (x3d_Vertex);
|
|
34
35
|
|
|
35
|
-
|
|
36
|
-
|
|
36
|
+
lengthSoFar = x3d_TexCoord0 .z;
|
|
37
|
+
startPoint = x3d_TexCoord0 .xy;
|
|
38
|
+
midPoint = x3d_TexCoord0 .xy;
|
|
39
|
+
fogDepth = x3d_FogDepth;
|
|
40
|
+
vertex = position .xyz;
|
|
37
41
|
|
|
38
42
|
gl_Position = x3d_ProjectionMatrix * position;
|
|
39
43
|
|
|
40
|
-
#ifdef X_ITE
|
|
41
|
-
// Line Stipple
|
|
42
|
-
vec4 start = x3d_ProjectionMatrix * x3d_ModelViewMatrix * x3d_TexCoord0;
|
|
43
|
-
|
|
44
|
-
startPosition = start .xyz / start .w;
|
|
45
|
-
vertexPosition = gl_Position .xyz / gl_Position .w;
|
|
46
|
-
#endif
|
|
47
|
-
|
|
48
44
|
#ifdef X3D_LOGARITHMIC_DEPTH_BUFFER
|
|
49
45
|
depth = 1.0 + gl_Position .w;
|
|
50
46
|
#endif
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
#version 300 es
|
|
2
|
+
|
|
3
|
+
precision highp float;
|
|
4
|
+
|
|
5
|
+
uniform vec4 viewport;
|
|
6
|
+
uniform mat4 modelViewProjectionMatrix;
|
|
7
|
+
uniform mat4 invModelViewProjectionMatrix;
|
|
8
|
+
uniform float scale;
|
|
9
|
+
|
|
10
|
+
in float x3d_FogDepth0; in vec4 x3d_Color0; in vec4 x3d_TexCoord0; in vec4 x3d_Vertex0;
|
|
11
|
+
in float x3d_FogDepth1; in vec4 x3d_Color1; in vec4 x3d_TexCoord1; in vec4 x3d_Vertex1;
|
|
12
|
+
|
|
13
|
+
out float fogDepth0; out vec4 color0; out vec4 texCoord0; out vec4 vertex0;
|
|
14
|
+
out float fogDepth1; out vec4 color1; out vec4 texCoord1; out vec4 vertex1;
|
|
15
|
+
out float fogDepth2; out vec4 color2; out vec4 texCoord2; out vec4 vertex2;
|
|
16
|
+
|
|
17
|
+
vec3
|
|
18
|
+
projectPoint (const in vec4 point, const in mat4 modelViewProjectionMatrix, const in vec4 viewport)
|
|
19
|
+
{
|
|
20
|
+
vec4 vin = modelViewProjectionMatrix * point;
|
|
21
|
+
|
|
22
|
+
vin .xyz = vin .xyz / (2.0 * vin .w) + 0.5;
|
|
23
|
+
|
|
24
|
+
return vec3 (vin .xy * viewport .zw + viewport .xy, vin .z);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
vec4
|
|
28
|
+
unProjectPoint (const in vec3 win, const in mat4 invModelViewProjection, const in vec4 viewport)
|
|
29
|
+
{
|
|
30
|
+
vec4 vin = vec4 ((win .xy - viewport .xy) / viewport .zw * 2.0 - 1.0, 2.0 * win .z - 1.0, 1.0);
|
|
31
|
+
|
|
32
|
+
vin = invModelViewProjection * vin;
|
|
33
|
+
|
|
34
|
+
return vec4 (vin .xyz / vin .w, 1.0);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
void
|
|
38
|
+
main ()
|
|
39
|
+
{
|
|
40
|
+
vec3 projected0 = projectPoint (x3d_Vertex0, modelViewProjectionMatrix, viewport);
|
|
41
|
+
vec3 projected1 = projectPoint (x3d_Vertex1, modelViewProjectionMatrix, viewport);
|
|
42
|
+
vec2 normal = normalize (projected1 .xy - projected0 .xy);
|
|
43
|
+
vec2 offset = vec2 (-normal .y, normal .x) * scale;
|
|
44
|
+
|
|
45
|
+
// 0 - 3
|
|
46
|
+
// | \ |
|
|
47
|
+
// 1 - 2
|
|
48
|
+
|
|
49
|
+
if (gl_InstanceID == 0)
|
|
50
|
+
{
|
|
51
|
+
vec2 pq0 = projected0 .xy + offset;
|
|
52
|
+
vec2 pq1 = projected0 .xy - offset;
|
|
53
|
+
vec2 pq2 = projected1 .xy - offset;
|
|
54
|
+
|
|
55
|
+
vec4 p0 = unProjectPoint (vec3 (pq0 .xy, projected0 .z), invModelViewProjectionMatrix, viewport);
|
|
56
|
+
vec4 p1 = unProjectPoint (vec3 (pq1 .xy, projected0 .z), invModelViewProjectionMatrix, viewport);
|
|
57
|
+
vec4 p2 = unProjectPoint (vec3 (pq2 .xy, projected1 .z), invModelViewProjectionMatrix, viewport);
|
|
58
|
+
|
|
59
|
+
fogDepth0 = x3d_FogDepth0; color0 = x3d_Color0; texCoord0 = x3d_TexCoord0; vertex0 = p0;
|
|
60
|
+
fogDepth1 = x3d_FogDepth0; color1 = x3d_Color0; texCoord1 = x3d_TexCoord0; vertex1 = p1;
|
|
61
|
+
fogDepth2 = x3d_FogDepth1; color2 = x3d_Color1; texCoord2 = x3d_TexCoord1; vertex2 = p2;
|
|
62
|
+
}
|
|
63
|
+
else
|
|
64
|
+
{
|
|
65
|
+
vec2 pq0 = projected0 .xy + offset;
|
|
66
|
+
vec2 pq2 = projected1 .xy - offset;
|
|
67
|
+
vec2 pq3 = projected1 .xy + offset;
|
|
68
|
+
|
|
69
|
+
vec4 p0 = unProjectPoint (vec3 (pq0 .xy, projected0 .z), invModelViewProjectionMatrix, viewport);
|
|
70
|
+
vec4 p2 = unProjectPoint (vec3 (pq2 .xy, projected1 .z), invModelViewProjectionMatrix, viewport);
|
|
71
|
+
vec4 p3 = unProjectPoint (vec3 (pq3 .xy, projected1 .z), invModelViewProjectionMatrix, viewport);
|
|
72
|
+
|
|
73
|
+
fogDepth0 = x3d_FogDepth0; color0 = x3d_Color0; texCoord0 = x3d_TexCoord0; vertex0 = p0;
|
|
74
|
+
fogDepth1 = x3d_FogDepth1; color1 = x3d_Color1; texCoord1 = x3d_TexCoord1; vertex1 = p2;
|
|
75
|
+
fogDepth2 = x3d_FogDepth1; color2 = x3d_Color1; texCoord2 = x3d_TexCoord1; vertex2 = p3;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
@@ -4,16 +4,17 @@
|
|
|
4
4
|
|
|
5
5
|
precision highp float;
|
|
6
6
|
precision highp int;
|
|
7
|
+
precision highp sampler2D;
|
|
7
8
|
|
|
8
9
|
uniform mat4 x3d_ProjectionMatrix;
|
|
9
10
|
uniform mat4 x3d_ModelViewMatrix;
|
|
10
11
|
uniform mat3 x3d_NormalMatrix;
|
|
11
12
|
|
|
12
|
-
in vec4
|
|
13
|
-
in vec3 x3d_Normal;
|
|
13
|
+
in vec4 x3d_Color;
|
|
14
14
|
in vec4 x3d_TexCoord0;
|
|
15
15
|
in vec4 x3d_TexCoord1;
|
|
16
|
-
in
|
|
16
|
+
in vec3 x3d_Normal;
|
|
17
|
+
in vec4 x3d_Vertex;
|
|
17
18
|
|
|
18
19
|
out vec3 vertex;
|
|
19
20
|
out vec3 normal;
|
|
@@ -27,15 +28,17 @@ out vec3 localVertex; // point on geometry in local coordinates
|
|
|
27
28
|
out float depth;
|
|
28
29
|
#endif
|
|
29
30
|
|
|
31
|
+
#pragma X3D include "include/Particle.glsl"
|
|
32
|
+
|
|
30
33
|
void
|
|
31
34
|
main ()
|
|
32
35
|
{
|
|
33
|
-
vec4 position = x3d_ModelViewMatrix * x3d_Vertex;
|
|
36
|
+
vec4 position = x3d_ModelViewMatrix * getVertex (x3d_Vertex);
|
|
34
37
|
|
|
35
38
|
vertex = position .xyz;
|
|
36
|
-
normal =
|
|
37
|
-
texCoord0 = x3d_TexCoord0;
|
|
38
|
-
texCoord1 = x3d_TexCoord1;
|
|
39
|
+
normal = x3d_NormalMatrix * x3d_Normal;
|
|
40
|
+
texCoord0 = getTexCoord (x3d_TexCoord0);
|
|
41
|
+
texCoord1 = getTexCoord (x3d_TexCoord1);
|
|
39
42
|
color = x3d_Color;
|
|
40
43
|
localNormal = x3d_Normal;
|
|
41
44
|
localVertex = x3d_Vertex .xyz;
|