x_ite 8.6.8 → 8.6.9
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/tasks.json +1 -1
- 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 +25 -25
- 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 +18 -18
- 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 +27 -27
- package/dist/assets/components/Layout.min.js +1 -1
- package/dist/assets/components/NURBS.js +24 -24
- package/dist/assets/components/NURBS.min.js +1 -1
- package/dist/assets/components/ParticleSystems.js +25 -27
- 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 +18 -18
- package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
- package/dist/assets/components/Scripting.js +28 -28
- package/dist/assets/components/Scripting.min.js +1 -1
- package/dist/assets/components/Text.js +24 -24
- package/dist/assets/components/Text.min.js +1 -1
- package/dist/assets/components/TextureProjector.js +14 -14
- package/dist/assets/components/TextureProjector.min.js +1 -1
- package/dist/assets/components/Texturing3D.js +30 -30
- 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 +897 -660
- package/dist/x_ite.min.js +1 -1
- package/dist/x_ite.zip +0 -0
- package/docs/_config.yml +2 -2
- package/docs/laboratory/gltf-sample-viewer.html +4 -4
- package/package.json +1 -1
- package/src/assets/shaders/webgl1/Pointing.fs.js +1 -1
- package/src/assets/shaders/webgl1/include/Fragment.glsl.js +17 -1
- package/src/assets/shaders/webgl1/include/Point.glsl.js +10 -2
- package/src/assets/shaders/webgl1/include/Texture.glsl.js +31 -1
- package/src/assets/shaders/webgl1/include/Vertex.glsl.js +24 -0
- package/src/assets/shaders/webgl2/Pointing.fs.js +1 -1
- package/src/assets/shaders/webgl2/include/Fragment.glsl.js +18 -0
- package/src/assets/shaders/webgl2/include/Point.glsl.js +12 -4
- package/src/assets/shaders/webgl2/include/Texture.glsl.js +17 -20
- package/src/assets/shaders/webgl2/include/Vertex.glsl.js +24 -0
- package/src/bookmarks.js +1 -1
- package/src/tests.js +1 -0
- package/src/x_ite/Browser/Core/BrowserOptions.js +3 -0
- package/src/x_ite/Browser/Core/BrowserTimings.js +12 -11
- package/src/x_ite/Browser/Core/Context.js +64 -64
- package/src/x_ite/Browser/Core/ContextMenu.js +0 -9
- package/src/x_ite/Browser/Navigation/ExamineViewer.js +1 -1
- package/src/x_ite/Browser/Texturing/X3DTexturingContext.js +8 -0
- package/src/x_ite/Browser/VERSION.js +1 -1
- package/src/x_ite/Browser/X3DBrowser.js +1 -1
- package/src/x_ite/Components/Core/X3DBindableNode.js +0 -2
- package/src/x_ite/Components/Core/X3DNode.js +3 -8
- package/src/x_ite/Components/Layering/X3DLayerNode.js +6 -2
- package/src/x_ite/Components/Navigation/NavigationInfo.js +1 -0
- package/src/x_ite/Components/Navigation/X3DViewpointNode.js +34 -21
- package/src/x_ite/Components/ParticleSystems/ParticleSystem.js +2 -4
- package/src/x_ite/Components/Rendering/X3DGeometryNode.js +5 -19
- package/src/x_ite/Components/Rendering/X3DLineGeometryNode.js +6 -12
- package/src/x_ite/Components/Rendering/X3DPointGeometryNode.js +4 -8
- package/src/x_ite/Components/Shaders/X3DProgrammableShaderObject.js +28 -27
- package/src/x_ite/Components/Shape/Material.js +4 -0
- package/src/x_ite/Components/Shape/PhysicalMaterial.js +4 -0
- package/src/x_ite/Components/Shape/TwoSidedMaterial.js +1 -0
- package/src/x_ite/Components/Shape/X3DMaterialNode.js +21 -19
- package/src/x_ite/Components/Shape/X3DOneSidedMaterialNode.js +4 -0
- package/src/x_ite/Components/Texturing/ImageTexture.js +77 -48
- package/src/x_ite/Components/Texturing/MultiTexture.js +7 -4
- package/src/x_ite/Components/Texturing/MultiTextureCoordinate.js +19 -16
- package/src/x_ite/Components/Texturing/MultiTextureTransform.js +16 -32
- package/src/x_ite/Components/Texturing/TextureCoordinateGenerator.js +1 -1
- package/src/x_ite/Components/Texturing/X3DSingleTextureCoordinateNode.js +2 -8
- package/src/x_ite/Components/Texturing/X3DSingleTextureTransformNode.js +2 -8
- package/src/x_ite/Execution/NamedNodesHandling.js +84 -0
- package/src/x_ite/Execution/X3DExecutionContext.js +7 -37
- package/src/x_ite/Execution/X3DScene.js +5 -0
- package/src/x_ite/InputOutput/FileLoader.js +1 -1
- package/src/x_ite/InputOutput/Generator.js +32 -81
- package/src/x_ite/Parser/GLTF2Parser.js +109 -43
- package/src/x_ite/Parser/OBJParser.js +42 -30
- package/src/x_ite/Parser/STLAParser.js +3 -0
- package/src/x_ite/Parser/SVGParser.js +4 -0
- package/src/x_ite/Rendering/X3DRenderObject.js +2 -0
- package/src/x_ite.html +52 -46
- package/x_ite.min.html +52 -46
package/dist/x_ite.zip
CHANGED
|
Binary file
|
package/docs/_config.yml
CHANGED
|
@@ -20,8 +20,8 @@ timezone:
|
|
|
20
20
|
# ↓ --------------------------
|
|
21
21
|
|
|
22
22
|
title: X_ITE X3D Browser # the main title
|
|
23
|
-
version: 8.6.
|
|
24
|
-
size:
|
|
23
|
+
version: 8.6.9 # x_ite latest version
|
|
24
|
+
size: 289 # size in kb
|
|
25
25
|
x3d_latest_version: 4.0 # x3d latest version
|
|
26
26
|
|
|
27
27
|
tagline: Step Into The Future # it will display as the sub-title
|
|
@@ -192,7 +192,7 @@ const glTF = [
|
|
|
192
192
|
"WaterBottle/glTF/WaterBottle.gltf",
|
|
193
193
|
];
|
|
194
194
|
|
|
195
|
-
glTF .server = "https://
|
|
195
|
+
glTF .server = "https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Models/master/2.0/";
|
|
196
196
|
|
|
197
197
|
/* find . -type f -name "*.glb" | grep "/glTF-Binary/" | sort */
|
|
198
198
|
const glb = [
|
|
@@ -262,7 +262,7 @@ const glb = [
|
|
|
262
262
|
"WaterBottle/glTF-Binary/WaterBottle.glb",
|
|
263
263
|
];
|
|
264
264
|
|
|
265
|
-
glb .server = "https://
|
|
265
|
+
glb .server = "https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Models/master/2.0/";
|
|
266
266
|
|
|
267
267
|
/* find . -type f -name "*.gltf" | grep "/glTF-Draco/" | sort */
|
|
268
268
|
const draco = [
|
|
@@ -287,7 +287,7 @@ const draco = [
|
|
|
287
287
|
"WaterBottle/glTF-Draco/WaterBottle.gltf",
|
|
288
288
|
];
|
|
289
289
|
|
|
290
|
-
draco .server = "https://
|
|
290
|
+
draco .server = "https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Models/master/2.0/";
|
|
291
291
|
|
|
292
292
|
/* find . -type f -name "*.gltf" | grep "/glTF-Embedded//" | sort */
|
|
293
293
|
const embedded = [
|
|
@@ -329,7 +329,7 @@ const embedded = [
|
|
|
329
329
|
"VertexColorTest/glTF-Embedded/VertexColorTest.gltf",
|
|
330
330
|
];
|
|
331
331
|
|
|
332
|
-
embedded .server = "https://
|
|
332
|
+
embedded .server = "https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Models/master/2.0/";
|
|
333
333
|
|
|
334
334
|
function createList (description, array)
|
|
335
335
|
{
|
package/package.json
CHANGED
|
@@ -26,6 +26,14 @@ uniform float x3d_AlphaCutoff;
|
|
|
26
26
|
#if X3D_NUM_TEXTURE_COORDINATES > 1
|
|
27
27
|
varying vec4 texCoord1;
|
|
28
28
|
#endif
|
|
29
|
+
|
|
30
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 2
|
|
31
|
+
varying vec4 texCoord2;
|
|
32
|
+
#endif
|
|
33
|
+
|
|
34
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 3
|
|
35
|
+
varying vec4 texCoord3;
|
|
36
|
+
#endif
|
|
29
37
|
#endif
|
|
30
38
|
#else
|
|
31
39
|
#if defined (X3D_TEXTURE) || defined (X3D_MATERIAL_TEXTURES)
|
|
@@ -36,6 +44,14 @@ uniform float x3d_AlphaCutoff;
|
|
|
36
44
|
#if X3D_NUM_TEXTURE_COORDINATES > 1
|
|
37
45
|
vec4 texCoord1 = vec4 (0.0, 0.0, 0.0, 1.0);
|
|
38
46
|
#endif
|
|
47
|
+
|
|
48
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 2
|
|
49
|
+
vec4 texCoord2 = vec4 (0.0, 0.0, 0.0, 1.0);
|
|
50
|
+
#endif
|
|
51
|
+
|
|
52
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 3
|
|
53
|
+
vec4 texCoord3 = vec4 (0.0, 0.0, 0.0, 1.0);
|
|
54
|
+
#endif
|
|
39
55
|
#endif
|
|
40
56
|
#endif
|
|
41
57
|
|
|
@@ -81,7 +97,7 @@ fragment_main ()
|
|
|
81
97
|
#endif
|
|
82
98
|
|
|
83
99
|
#if defined (X3D_GEOMETRY_0D) && defined (X3D_STYLE_PROPERTIES)
|
|
84
|
-
|
|
100
|
+
setPointTexCoords ();
|
|
85
101
|
#endif
|
|
86
102
|
|
|
87
103
|
vec4 finalColor = getMaterialColor ();
|
|
@@ -2,7 +2,7 @@ export default /* glsl */ `
|
|
|
2
2
|
#if defined (X3D_GEOMETRY_0D) && defined (X3D_STYLE_PROPERTIES)
|
|
3
3
|
#if defined (X3D_TEXTURE) || defined (X3D_MATERIAL_TEXTURES)
|
|
4
4
|
void
|
|
5
|
-
|
|
5
|
+
setPointTexCoords ()
|
|
6
6
|
{
|
|
7
7
|
vec4 texCoord = vec4 (gl_PointCoord .x, 1.0 - gl_PointCoord .y, 0.0, 1.0);
|
|
8
8
|
|
|
@@ -13,13 +13,21 @@ setTexCoords ()
|
|
|
13
13
|
#if X3D_NUM_TEXTURE_COORDINATES > 1
|
|
14
14
|
texCoord1 = texCoord;
|
|
15
15
|
#endif
|
|
16
|
+
|
|
17
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 2
|
|
18
|
+
texCoord2 = texCoord;
|
|
19
|
+
#endif
|
|
20
|
+
|
|
21
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 3
|
|
22
|
+
texCoord3 = texCoord;
|
|
23
|
+
#endif
|
|
16
24
|
}
|
|
17
25
|
|
|
18
26
|
#define getPointColor(color) (color)
|
|
19
27
|
|
|
20
28
|
#else
|
|
21
29
|
|
|
22
|
-
#define
|
|
30
|
+
#define setPointTexCoords()
|
|
23
31
|
|
|
24
32
|
varying float pointSize;
|
|
25
33
|
|
|
@@ -21,6 +21,16 @@ getTextureMatrix (const in int i)
|
|
|
21
21
|
textureMatrix = x3d_TextureMatrix [1];
|
|
22
22
|
#endif
|
|
23
23
|
|
|
24
|
+
#if X3D_NUM_TEXTURE_TRANSFORMS > 2
|
|
25
|
+
else if (i == 2)
|
|
26
|
+
textureMatrix = x3d_TextureMatrix [2];
|
|
27
|
+
#endif
|
|
28
|
+
|
|
29
|
+
#if X3D_NUM_TEXTURE_TRANSFORMS > 3
|
|
30
|
+
else if (i == 3)
|
|
31
|
+
textureMatrix = x3d_TextureMatrix [3];
|
|
32
|
+
#endif
|
|
33
|
+
|
|
24
34
|
return textureMatrix;
|
|
25
35
|
#else
|
|
26
36
|
return x3d_TextureMatrix [0];
|
|
@@ -43,6 +53,16 @@ getTexCoord (const in int i)
|
|
|
43
53
|
texCoord = texCoord1;
|
|
44
54
|
#endif
|
|
45
55
|
|
|
56
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 2
|
|
57
|
+
else if (i == 2)
|
|
58
|
+
texCoord = texCoord2;
|
|
59
|
+
#endif
|
|
60
|
+
|
|
61
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 3
|
|
62
|
+
else if (i == 3)
|
|
63
|
+
texCoord = texCoord3;
|
|
64
|
+
#endif
|
|
65
|
+
|
|
46
66
|
return texCoord;
|
|
47
67
|
#else
|
|
48
68
|
return texCoord0;
|
|
@@ -144,6 +164,16 @@ getTexCoord (const in int textureTransformMapping, const in int textureCoordinat
|
|
|
144
164
|
texCoord = getTexCoord (x3d_TextureCoordinateGenerator [1], textureTransformMapping, textureCoordinateMapping);
|
|
145
165
|
#endif
|
|
146
166
|
|
|
167
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 2
|
|
168
|
+
else if (textureCoordinateMapping == 2)
|
|
169
|
+
texCoord = getTexCoord (x3d_TextureCoordinateGenerator [2], textureTransformMapping, textureCoordinateMapping);
|
|
170
|
+
#endif
|
|
171
|
+
|
|
172
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 3
|
|
173
|
+
else if (textureCoordinateMapping == 3)
|
|
174
|
+
texCoord = getTexCoord (x3d_TextureCoordinateGenerator [3], textureTransformMapping, textureCoordinateMapping);
|
|
175
|
+
#endif
|
|
176
|
+
|
|
147
177
|
texCoord .stp /= texCoord .q;
|
|
148
178
|
|
|
149
179
|
#if defined (X3D_GEOMETRY_2D)
|
|
@@ -208,7 +238,7 @@ getTextureColor (const in vec4 diffuseColor, const in vec4 specularColor)
|
|
|
208
238
|
{
|
|
209
239
|
// Get texture color.
|
|
210
240
|
|
|
211
|
-
vec3 texCoord = getTexCoord (i, i);
|
|
241
|
+
vec3 texCoord = getTexCoord (min (i, X3D_NUM_TEXTURE_TRANSFORMS - 1), min (i, X3D_NUM_TEXTURE_COORDINATES - 1));
|
|
212
242
|
vec4 textureColor = getTexture (i, texCoord);
|
|
213
243
|
|
|
214
244
|
// Multi texturing
|
|
@@ -23,6 +23,14 @@ uniform mat4 x3d_ModelViewMatrix;
|
|
|
23
23
|
#if X3D_NUM_TEXTURE_COORDINATES > 1
|
|
24
24
|
attribute vec4 x3d_TexCoord1;
|
|
25
25
|
#endif
|
|
26
|
+
|
|
27
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 2
|
|
28
|
+
attribute vec4 x3d_TexCoord2;
|
|
29
|
+
#endif
|
|
30
|
+
|
|
31
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 3
|
|
32
|
+
attribute vec4 x3d_TexCoord3;
|
|
33
|
+
#endif
|
|
26
34
|
#endif
|
|
27
35
|
#endif
|
|
28
36
|
|
|
@@ -47,6 +55,14 @@ attribute vec4 x3d_Vertex;
|
|
|
47
55
|
#if X3D_NUM_TEXTURE_COORDINATES > 1
|
|
48
56
|
varying vec4 texCoord1;
|
|
49
57
|
#endif
|
|
58
|
+
|
|
59
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 2
|
|
60
|
+
varying vec4 texCoord2;
|
|
61
|
+
#endif
|
|
62
|
+
|
|
63
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 3
|
|
64
|
+
varying vec4 texCoord3;
|
|
65
|
+
#endif
|
|
50
66
|
#endif
|
|
51
67
|
#endif
|
|
52
68
|
|
|
@@ -106,6 +122,14 @@ vertex_main ()
|
|
|
106
122
|
#if X3D_NUM_TEXTURE_COORDINATES > 1
|
|
107
123
|
texCoord1 = x3d_TexCoord1;
|
|
108
124
|
#endif
|
|
125
|
+
|
|
126
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 2
|
|
127
|
+
texCoord2 = x3d_TexCoord2;
|
|
128
|
+
#endif
|
|
129
|
+
|
|
130
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 3
|
|
131
|
+
texCoord3 = x3d_TexCoord3;
|
|
132
|
+
#endif
|
|
109
133
|
#endif
|
|
110
134
|
#endif
|
|
111
135
|
|
|
@@ -18,6 +18,14 @@ uniform float x3d_AlphaCutoff;
|
|
|
18
18
|
#if X3D_NUM_TEXTURE_COORDINATES > 1
|
|
19
19
|
in vec4 texCoord1;
|
|
20
20
|
#endif
|
|
21
|
+
|
|
22
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 2
|
|
23
|
+
in vec4 texCoord2;
|
|
24
|
+
#endif
|
|
25
|
+
|
|
26
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 3
|
|
27
|
+
in vec4 texCoord3;
|
|
28
|
+
#endif
|
|
21
29
|
#endif
|
|
22
30
|
#else
|
|
23
31
|
#if defined (X3D_TEXTURE) || defined (X3D_MATERIAL_TEXTURES)
|
|
@@ -28,6 +36,14 @@ uniform float x3d_AlphaCutoff;
|
|
|
28
36
|
#if X3D_NUM_TEXTURE_COORDINATES > 1
|
|
29
37
|
vec4 texCoord1 = vec4 (0.0, 0.0, 0.0, 1.0);
|
|
30
38
|
#endif
|
|
39
|
+
|
|
40
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 2
|
|
41
|
+
vec4 texCoord2 = vec4 (0.0, 0.0, 0.0, 1.0);
|
|
42
|
+
#endif
|
|
43
|
+
|
|
44
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 3
|
|
45
|
+
vec4 texCoord3 = vec4 (0.0, 0.0, 0.0, 1.0);
|
|
46
|
+
#endif
|
|
31
47
|
#endif
|
|
32
48
|
#endif
|
|
33
49
|
|
|
@@ -80,6 +96,8 @@ fragment_main ()
|
|
|
80
96
|
#endif
|
|
81
97
|
|
|
82
98
|
#if defined (X3D_GEOMETRY_0D) && defined (X3D_STYLE_PROPERTIES)
|
|
99
|
+
setPointTexCoords ();
|
|
100
|
+
#elif defined (X3D_TEXTURE) || defined (X3D_MATERIAL_TEXTURES)
|
|
83
101
|
setTexCoords ();
|
|
84
102
|
#endif
|
|
85
103
|
|
|
@@ -2,16 +2,24 @@ export default /* glsl */ `
|
|
|
2
2
|
#if defined (X3D_GEOMETRY_0D) && defined (X3D_STYLE_PROPERTIES)
|
|
3
3
|
#if defined (X3D_TEXTURE) || defined (X3D_MATERIAL_TEXTURES)
|
|
4
4
|
void
|
|
5
|
-
|
|
5
|
+
setPointTexCoords ()
|
|
6
6
|
{
|
|
7
7
|
vec4 texCoord = vec4 (gl_PointCoord .x, 1.0 - gl_PointCoord .y, 0.0, 1.0);
|
|
8
8
|
|
|
9
9
|
#if X3D_NUM_TEXTURE_COORDINATES > 0
|
|
10
|
-
|
|
10
|
+
texCoords [0] = texCoord;
|
|
11
11
|
#endif
|
|
12
12
|
|
|
13
13
|
#if X3D_NUM_TEXTURE_COORDINATES > 1
|
|
14
|
-
|
|
14
|
+
texCoords [1] = texCoord;
|
|
15
|
+
#endif
|
|
16
|
+
|
|
17
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 2
|
|
18
|
+
texCoords [2] = texCoord;
|
|
19
|
+
#endif
|
|
20
|
+
|
|
21
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 3
|
|
22
|
+
texCoords [3] = texCoord;
|
|
15
23
|
#endif
|
|
16
24
|
}
|
|
17
25
|
|
|
@@ -19,7 +27,7 @@ setTexCoords ()
|
|
|
19
27
|
|
|
20
28
|
#else
|
|
21
29
|
|
|
22
|
-
#define
|
|
30
|
+
#define setPointTexCoords()
|
|
23
31
|
|
|
24
32
|
in float pointSize;
|
|
25
33
|
|
|
@@ -3,25 +3,22 @@ export default /* glsl */ `
|
|
|
3
3
|
|
|
4
4
|
#pragma X3D include "Perlin.glsl"
|
|
5
5
|
|
|
6
|
-
vec4
|
|
7
|
-
|
|
6
|
+
vec4 texCoords [X3D_NUM_TEXTURE_COORDINATES];
|
|
7
|
+
|
|
8
|
+
void
|
|
9
|
+
setTexCoords ()
|
|
8
10
|
{
|
|
11
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 0
|
|
12
|
+
texCoords [0] = texCoord0;
|
|
13
|
+
#endif
|
|
9
14
|
#if X3D_NUM_TEXTURE_COORDINATES > 1
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
case 1:
|
|
18
|
-
return texCoord1;
|
|
19
|
-
#endif
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
return vec4 (0.0);
|
|
23
|
-
#else
|
|
24
|
-
return texCoord0;
|
|
15
|
+
texCoords [1] = texCoord1;
|
|
16
|
+
#endif
|
|
17
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 2
|
|
18
|
+
texCoords [2] = texCoord2;
|
|
19
|
+
#endif
|
|
20
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 3
|
|
21
|
+
texCoords [3] = texCoord3;
|
|
25
22
|
#endif
|
|
26
23
|
}
|
|
27
24
|
|
|
@@ -36,7 +33,7 @@ getTexCoord (const in x3d_TextureCoordinateGeneratorParameters textureCoordinate
|
|
|
36
33
|
{
|
|
37
34
|
case x3d_None:
|
|
38
35
|
{
|
|
39
|
-
return x3d_TextureMatrix [textureTransformMapping] *
|
|
36
|
+
return x3d_TextureMatrix [textureTransformMapping] * texCoords [textureCoordinateMapping];
|
|
40
37
|
}
|
|
41
38
|
case x3d_Sphere:
|
|
42
39
|
{
|
|
@@ -105,7 +102,7 @@ getTexCoord (const in x3d_TextureCoordinateGeneratorParameters textureCoordinate
|
|
|
105
102
|
}
|
|
106
103
|
default:
|
|
107
104
|
{
|
|
108
|
-
return x3d_TextureMatrix [textureTransformMapping] *
|
|
105
|
+
return x3d_TextureMatrix [textureTransformMapping] * texCoords [textureCoordinateMapping];
|
|
109
106
|
}
|
|
110
107
|
}
|
|
111
108
|
}
|
|
@@ -183,7 +180,7 @@ getTextureColor (const in vec4 diffuseColor, const in vec4 specularColor)
|
|
|
183
180
|
{
|
|
184
181
|
// Get texture color.
|
|
185
182
|
|
|
186
|
-
vec3 texCoord = getTexCoord (i, i);
|
|
183
|
+
vec3 texCoord = getTexCoord (min (i, X3D_NUM_TEXTURE_TRANSFORMS - 1), min (i, X3D_NUM_TEXTURE_COORDINATES - 1));
|
|
187
184
|
vec4 textureColor = getTexture (i, texCoord);
|
|
188
185
|
|
|
189
186
|
// Multi texturing
|
|
@@ -27,6 +27,14 @@ uniform mat4 x3d_ModelViewMatrix;
|
|
|
27
27
|
#if X3D_NUM_TEXTURE_COORDINATES > 1
|
|
28
28
|
in vec4 x3d_TexCoord1;
|
|
29
29
|
#endif
|
|
30
|
+
|
|
31
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 2
|
|
32
|
+
in vec4 x3d_TexCoord2;
|
|
33
|
+
#endif
|
|
34
|
+
|
|
35
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 3
|
|
36
|
+
in vec4 x3d_TexCoord3;
|
|
37
|
+
#endif
|
|
30
38
|
#endif
|
|
31
39
|
#endif
|
|
32
40
|
|
|
@@ -51,6 +59,14 @@ in vec4 x3d_Vertex;
|
|
|
51
59
|
#if X3D_NUM_TEXTURE_COORDINATES > 1
|
|
52
60
|
out vec4 texCoord1;
|
|
53
61
|
#endif
|
|
62
|
+
|
|
63
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 2
|
|
64
|
+
out vec4 texCoord2;
|
|
65
|
+
#endif
|
|
66
|
+
|
|
67
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 3
|
|
68
|
+
out vec4 texCoord3;
|
|
69
|
+
#endif
|
|
54
70
|
#endif
|
|
55
71
|
#endif
|
|
56
72
|
|
|
@@ -123,6 +139,14 @@ vertex_main ()
|
|
|
123
139
|
#if X3D_NUM_TEXTURE_COORDINATES > 1
|
|
124
140
|
texCoord1 = getTexCoord (x3d_TexCoord1);
|
|
125
141
|
#endif
|
|
142
|
+
|
|
143
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 2
|
|
144
|
+
texCoord2 = getTexCoord (x3d_TexCoord2);
|
|
145
|
+
#endif
|
|
146
|
+
|
|
147
|
+
#if X3D_NUM_TEXTURE_COORDINATES > 3
|
|
148
|
+
texCoord3 = getTexCoord (x3d_TexCoord3);
|
|
149
|
+
#endif
|
|
126
150
|
#endif
|
|
127
151
|
#endif
|
|
128
152
|
|
package/src/bookmarks.js
CHANGED
|
@@ -125,7 +125,7 @@ const Bookmarks = (function ()
|
|
|
125
125
|
base = url .replace (/(?:\.O)?\.[^\.]+$/, ""),
|
|
126
126
|
local = base .replace (/https:\/\/create3000.github.io\/(.*?)\//, "http://192.168.0.18/$1/docs/");
|
|
127
127
|
|
|
128
|
-
$("
|
|
128
|
+
$("#file") .text (url)
|
|
129
129
|
.append ($("<a/>")
|
|
130
130
|
.attr ('href', base + ".x3d")
|
|
131
131
|
.on ("click", () => this .loadURL (base + ".x3d") && false)
|
package/src/tests.js
CHANGED
|
@@ -107,6 +107,7 @@ const X_ITE_TESTS = [
|
|
|
107
107
|
{ path: "Interpolation/Cube.wrl" },
|
|
108
108
|
{ path: "Interpolation/EaseInEaseOut.wrl" },
|
|
109
109
|
{ path: "Interpolation/Interpolators.wrl" },
|
|
110
|
+
{ path: "Interpolation/Jumps.x3dv" },
|
|
110
111
|
{ path: "Interpolation/LineTrail.wrl" },
|
|
111
112
|
{ path: "Interpolation/NormalInterpolator.x3d" },
|
|
112
113
|
{ path: "Interpolation/OrientationInterpolator.x3d" },
|
|
@@ -265,6 +265,9 @@ BrowserOptions .prototype = Object .assign (Object .create (X3DBaseNode .prototy
|
|
|
265
265
|
set_straightenHorizon__: function (straightenHorizon)
|
|
266
266
|
{
|
|
267
267
|
this .localStorage .StraightenHorizon = straightenHorizon .getValue ();
|
|
268
|
+
|
|
269
|
+
if (straightenHorizon .getValue ())
|
|
270
|
+
this .getBrowser () .getActiveLayer ()?.straightenView ();
|
|
268
271
|
},
|
|
269
272
|
updateContentScale: function ()
|
|
270
273
|
{
|
|
@@ -49,8 +49,6 @@ import X3DBaseNode from "../../Base/X3DBaseNode.js";
|
|
|
49
49
|
import StopWatch from "../../../standard/Time/StopWatch.js";
|
|
50
50
|
import _ from "../../../locale/gettext.js";
|
|
51
51
|
|
|
52
|
-
function f2 (n) { return n .toFixed (2); }
|
|
53
|
-
|
|
54
52
|
function BrowserTimings (executionContext)
|
|
55
53
|
{
|
|
56
54
|
X3DBaseNode .call (this, executionContext);
|
|
@@ -111,6 +109,7 @@ BrowserTimings .prototype = Object .assign (Object .create (X3DBaseNode .prototy
|
|
|
111
109
|
this .fps .reset ();
|
|
112
110
|
this .getBrowser () .prepareEvents () .addInterest ("update", this);
|
|
113
111
|
this .update ();
|
|
112
|
+
this .build ();
|
|
114
113
|
}
|
|
115
114
|
else
|
|
116
115
|
{
|
|
@@ -158,7 +157,7 @@ BrowserTimings .prototype = Object .assign (Object .create (X3DBaseNode .prototy
|
|
|
158
157
|
let r = 0;
|
|
159
158
|
|
|
160
159
|
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Frame rate") + ":")) .append ($("<td></td>") .text (f2(1000 / this .fps .averageTime) .toLocaleString (language, fixed) + " " + _("fps")));
|
|
161
|
-
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Speed")
|
|
160
|
+
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Speed") + ":")) .append ($("<td></td>") .text (f2(this .getSpeed (browser .currentSpeed)) .toLocaleString (language, fixed) + " " + this .getSpeedUnit (browser .currentSpeed)));
|
|
162
161
|
|
|
163
162
|
if (this .localStorage .type === "MORE")
|
|
164
163
|
{
|
|
@@ -183,14 +182,14 @@ BrowserTimings .prototype = Object .assign (Object .create (X3DBaseNode .prototy
|
|
|
183
182
|
|
|
184
183
|
rows [1] .addClass ("x_ite-private-more");
|
|
185
184
|
|
|
186
|
-
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Browser")
|
|
187
|
-
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("X3D total")
|
|
188
|
-
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Event Processing")
|
|
189
|
-
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Pointer")
|
|
190
|
-
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Camera")
|
|
191
|
-
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Picking")
|
|
192
|
-
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Collision Detection") + ":")) .append ($("<td></td>") .text (f2(collisionTime)
|
|
193
|
-
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Rendering")
|
|
185
|
+
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Browser") + ":")) .append ($("<td></td>") .text (f2(browser .getSystemTime () .averageTime) .toLocaleString (language, fixed) + " " + _("ms")));
|
|
186
|
+
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("X3D total") + ":")) .append ($("<td></td>") .text (f2(browser .getBrowserTime () .averageTime) .toLocaleString (language, fixed) + " " + _("ms")));
|
|
187
|
+
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Event Processing") + ":")) .append ($("<td></td>") .text (f2(routingTime) .toLocaleString (language, fixed) + " " + _("ms")));
|
|
188
|
+
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Pointer") + ":")) .append ($("<td></td>") .text (f2(browser .getPointingTime () .averageTime) .toLocaleString (language, fixed) + " " + _("ms")));
|
|
189
|
+
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Camera") + ":")) .append ($("<td></td>") .text (f2(browser .getCameraTime () .averageTime) .toLocaleString (language, fixed) + " " + _("ms")));
|
|
190
|
+
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Picking") + ":")) .append ($("<td></td>") .text (f2(browser .getPickingTime () .averageTime) .toLocaleString (language, fixed) + " " + _("ms")));
|
|
191
|
+
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Collision Detection") + ":")) .append ($("<td></td>") .text (f2(collisionTime) .toLocaleString (language, fixed) + " " + _("ms")));
|
|
192
|
+
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Rendering") + ":")) .append ($("<td></td>") .text (f2(browser .getDisplayTime () .averageTime) .toLocaleString (language, fixed) + " " + _("ms")));
|
|
194
193
|
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Number of Shapes") + ":")) .append ($("<td></td>") .text (opaqueShapes + " + " + transparentShapes));
|
|
195
194
|
rows [r++] = $("<tr></tr>") .append ($("<td></td>") .text (_("Number of Sensors") + ":")) .append ($("<td></td>") .text (prepareEvents + sensors));
|
|
196
195
|
|
|
@@ -228,4 +227,6 @@ BrowserTimings .prototype = Object .assign (Object .create (X3DBaseNode .prototy
|
|
|
228
227
|
},
|
|
229
228
|
});
|
|
230
229
|
|
|
230
|
+
function f2 (n) { return isFinite (n) ? n .toFixed (2) : 0 .toFixed (2); }
|
|
231
|
+
|
|
231
232
|
export default BrowserTimings;
|