x_ite 11.5.10 → 11.5.12
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/README.md +4 -4
- package/dist/X3DUOM.xml +2 -0
- package/dist/assets/components/AnnotationComponent.js +2 -378
- package/dist/assets/components/AnnotationComponent.min.js +2 -2
- package/dist/assets/components/CADGeometryComponent.js +2 -378
- package/dist/assets/components/CADGeometryComponent.min.js +2 -2
- package/dist/assets/components/CubeMapTexturingComponent.js +7 -336
- package/dist/assets/components/CubeMapTexturingComponent.min.js +2 -2
- package/dist/assets/components/DISComponent.js +2 -331
- package/dist/assets/components/DISComponent.min.js +2 -2
- package/dist/assets/components/EventUtilitiesComponent.js +2 -472
- package/dist/assets/components/EventUtilitiesComponent.min.js +2 -2
- package/dist/assets/components/Geometry2DComponent.js +2 -707
- package/dist/assets/components/Geometry2DComponent.min.js +2 -2
- package/dist/assets/components/GeospatialComponent.js +4 -897
- package/dist/assets/components/GeospatialComponent.min.js +2 -2
- package/dist/assets/components/HAnimComponent.js +83 -337
- package/dist/assets/components/HAnimComponent.min.js +2 -2
- package/dist/assets/components/KeyDeviceSensorComponent.js +2 -237
- package/dist/assets/components/KeyDeviceSensorComponent.min.js +2 -2
- package/dist/assets/components/LayoutComponent.js +2 -425
- package/dist/assets/components/LayoutComponent.min.js +2 -2
- package/dist/assets/components/NURBSComponent.js +3 -896
- package/dist/assets/components/NURBSComponent.min.js +2 -2
- package/dist/assets/components/ParticleSystemsComponent.js +26 -732
- package/dist/assets/components/ParticleSystemsComponent.min.js +2 -2
- package/dist/assets/components/PickingComponent.js +2 -566
- package/dist/assets/components/PickingComponent.min.js +2 -2
- package/dist/assets/components/RigidBodyPhysicsComponent.js +2 -942
- package/dist/assets/components/RigidBodyPhysicsComponent.min.js +2 -2
- package/dist/assets/components/ScriptingComponent.js +2 -190
- package/dist/assets/components/ScriptingComponent.min.js +2 -2
- package/dist/assets/components/TextComponent.js +2 -379
- package/dist/assets/components/TextComponent.min.js +2 -2
- package/dist/assets/components/TextureProjectionComponent.js +8 -196
- package/dist/assets/components/TextureProjectionComponent.min.js +2 -2
- package/dist/assets/components/Texturing3DComponent.js +3569 -4133
- package/dist/assets/components/Texturing3DComponent.min.js +2 -2
- package/dist/assets/components/VolumeRenderingComponent.js +11 -906
- package/dist/assets/components/VolumeRenderingComponent.min.js +2 -2
- package/dist/assets/components/WebXRComponent.js +5 -145
- package/dist/assets/components/WebXRComponent.min.js +2 -2
- package/dist/assets/components/X_ITEComponent.js +273 -901
- package/dist/assets/components/X_ITEComponent.min.js +2 -2
- package/dist/assets/fonts/PT_Sans/OFL.txt +94 -94
- package/dist/assets/lib/draco_decoder_gltf.js +1 -1
- package/dist/assets/lib/libktx.js +1 -1
- package/dist/assets/lib/libktx.wasm +0 -0
- package/dist/assets/lib/woff2_decoder.js +1 -1
- package/dist/example.html +1 -1
- package/dist/x_ite.css +1 -1
- package/dist/x_ite.js +50500 -70043
- package/dist/x_ite.min.js +2 -2
- package/dist/x_ite.min.mjs +2 -2
- package/dist/x_ite.mjs +50447 -69990
- package/dist/x_ite.zip +0 -0
- package/package.json +2 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/* X_ITE v11.5.
|
|
2
|
-
const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-11.5.
|
|
1
|
+
/* X_ITE v11.5.12 */
|
|
2
|
+
const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-11.5.12")];
|
|
3
3
|
/******/ (() => { // webpackBootstrap
|
|
4
4
|
/******/ "use strict";
|
|
5
5
|
/******/ // The require scope
|
|
@@ -64,53 +64,6 @@ var external_X_ITE_X3D_BitSet_default = /*#__PURE__*/__webpack_require__.n(exter
|
|
|
64
64
|
const external_X_ITE_X3D_Namespace_namespaceObject = __X_ITE_X3D__ .Namespace;
|
|
65
65
|
var external_X_ITE_X3D_Namespace_default = /*#__PURE__*/__webpack_require__.n(external_X_ITE_X3D_Namespace_namespaceObject);
|
|
66
66
|
;// ./src/x_ite/Components/X_ITE/X3DMaterialExtensionNode.js
|
|
67
|
-
/*******************************************************************************
|
|
68
|
-
*
|
|
69
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
70
|
-
*
|
|
71
|
-
* Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
|
|
72
|
-
*
|
|
73
|
-
* All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
|
|
74
|
-
*
|
|
75
|
-
* The copyright notice above does not evidence any actual of intended
|
|
76
|
-
* publication of such source code, and is an unpublished work by create3000.
|
|
77
|
-
* This material contains CONFIDENTIAL INFORMATION that is the property of
|
|
78
|
-
* create3000.
|
|
79
|
-
*
|
|
80
|
-
* No permission is granted to copy, distribute, or create derivative works from
|
|
81
|
-
* the contents of this software, in whole or in part, without the prior written
|
|
82
|
-
* permission of create3000.
|
|
83
|
-
*
|
|
84
|
-
* NON-MILITARY USE ONLY
|
|
85
|
-
*
|
|
86
|
-
* All create3000 software are effectively free software with a non-military use
|
|
87
|
-
* restriction. It is free. Well commented source is provided. You may reuse the
|
|
88
|
-
* source in any way you please with the exception anything that uses it must be
|
|
89
|
-
* marked to indicate is contains 'non-military use only' components.
|
|
90
|
-
*
|
|
91
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
92
|
-
*
|
|
93
|
-
* Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
|
|
94
|
-
*
|
|
95
|
-
* This file is part of the X_ITE Project.
|
|
96
|
-
*
|
|
97
|
-
* X_ITE is free software: you can redistribute it and/or modify it under the
|
|
98
|
-
* terms of the GNU General Public License version 3 only, as published by the
|
|
99
|
-
* Free Software Foundation.
|
|
100
|
-
*
|
|
101
|
-
* X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
102
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
103
|
-
* A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
|
|
104
|
-
* details (a copy is included in the LICENSE file that accompanied this code).
|
|
105
|
-
*
|
|
106
|
-
* You should have received a copy of the GNU General Public License version 3
|
|
107
|
-
* along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
|
|
108
|
-
* copy of the GPLv3 License.
|
|
109
|
-
*
|
|
110
|
-
* For Silvio, Joy and Adi.
|
|
111
|
-
*
|
|
112
|
-
******************************************************************************/
|
|
113
|
-
|
|
114
67
|
|
|
115
68
|
|
|
116
69
|
|
|
@@ -149,122 +102,24 @@ const __default__ = X3DMaterialExtensionNode;
|
|
|
149
102
|
const external_X_ITE_X3D_X3DCast_namespaceObject = __X_ITE_X3D__ .X3DCast;
|
|
150
103
|
var external_X_ITE_X3D_X3DCast_default = /*#__PURE__*/__webpack_require__.n(external_X_ITE_X3D_X3DCast_namespaceObject);
|
|
151
104
|
;// ./src/x_ite/Browser/X_ITE/ExtensionKeys.js
|
|
152
|
-
/*******************************************************************************
|
|
153
|
-
*
|
|
154
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
155
|
-
*
|
|
156
|
-
* Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
|
|
157
|
-
*
|
|
158
|
-
* All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
|
|
159
|
-
*
|
|
160
|
-
* The copyright notice above does not evidence any actual of intended
|
|
161
|
-
* publication of such source code, and is an unpublished work by create3000.
|
|
162
|
-
* This material contains CONFIDENTIAL INFORMATION that is the property of
|
|
163
|
-
* create3000.
|
|
164
|
-
*
|
|
165
|
-
* No permission is granted to copy, distribute, or create derivative works from
|
|
166
|
-
* the contents of this software, in whole or in part, without the prior written
|
|
167
|
-
* permission of create3000.
|
|
168
|
-
*
|
|
169
|
-
* NON-MILITARY USE ONLY
|
|
170
|
-
*
|
|
171
|
-
* All create3000 software are effectively free software with a non-military use
|
|
172
|
-
* restriction. It is free. Well commented source is provided. You may reuse the
|
|
173
|
-
* source in any way you please with the exception anything that uses it must be
|
|
174
|
-
* marked to indicate is contains 'non-military use only' components.
|
|
175
|
-
*
|
|
176
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
177
|
-
*
|
|
178
|
-
* Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
|
|
179
|
-
*
|
|
180
|
-
* This file is part of the X_ITE Project.
|
|
181
|
-
*
|
|
182
|
-
* X_ITE is free software: you can redistribute it and/or modify it under the
|
|
183
|
-
* terms of the GNU General Public License version 3 only, as published by the
|
|
184
|
-
* Free Software Foundation.
|
|
185
|
-
*
|
|
186
|
-
* X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
187
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
188
|
-
* A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
|
|
189
|
-
* details (a copy is included in the LICENSE file that accompanied this code).
|
|
190
|
-
*
|
|
191
|
-
* You should have received a copy of the GNU General Public License version 3
|
|
192
|
-
* along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
|
|
193
|
-
* copy of the GPLv3 License.
|
|
194
|
-
*
|
|
195
|
-
* For Silvio, Joy and Adi.
|
|
196
|
-
*
|
|
197
|
-
******************************************************************************/
|
|
198
|
-
|
|
199
105
|
let i = 0;
|
|
200
106
|
|
|
201
107
|
const ExtensionKeys =
|
|
202
108
|
{
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
EMISSIVE_STRENGTH_MATERIAL_EXTENSION: i ++,
|
|
208
|
-
IOR_MATERIAL_EXTENSION: i ++,
|
|
209
|
-
IRIDESCENCE_MATERIAL_EXTENSION: i ++,
|
|
210
|
-
SHEEN_MATERIAL_EXTENSION: i ++,
|
|
211
|
-
SPECULAR_MATERIAL_EXTENSION: i ++,
|
|
212
|
-
TRANSMISSION_MATERIAL_EXTENSION: i ++,
|
|
213
|
-
UNLIT_MATERIAL_EXTENSION: i ++,
|
|
214
|
-
VOLUME_MATERIAL_EXTENSION: i ++,
|
|
109
|
+
add (name)
|
|
110
|
+
{
|
|
111
|
+
this [name] = i ++;
|
|
112
|
+
},
|
|
215
113
|
};
|
|
216
114
|
|
|
217
115
|
const ExtensionKeys_default_ = ExtensionKeys;
|
|
218
116
|
;
|
|
219
117
|
|
|
220
118
|
/* harmony default export */ const X_ITE_ExtensionKeys = (external_X_ITE_X3D_Namespace_default().add ("ExtensionKeys", ExtensionKeys_default_));
|
|
119
|
+
;// external "__X_ITE_X3D__ .MaterialTextures"
|
|
120
|
+
const external_X_ITE_X3D_MaterialTextures_namespaceObject = __X_ITE_X3D__ .MaterialTextures;
|
|
121
|
+
var external_X_ITE_X3D_MaterialTextures_default = /*#__PURE__*/__webpack_require__.n(external_X_ITE_X3D_MaterialTextures_namespaceObject);
|
|
221
122
|
;// ./src/x_ite/Components/X_ITE/AnisotropyMaterialExtension.js
|
|
222
|
-
/*******************************************************************************
|
|
223
|
-
*
|
|
224
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
225
|
-
*
|
|
226
|
-
* Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
|
|
227
|
-
*
|
|
228
|
-
* All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
|
|
229
|
-
*
|
|
230
|
-
* The copyright notice above does not evidence any actual of intended
|
|
231
|
-
* publication of such source code, and is an unpublished work by create3000.
|
|
232
|
-
* This material contains CONFIDENTIAL INFORMATION that is the property of
|
|
233
|
-
* create3000.
|
|
234
|
-
*
|
|
235
|
-
* No permission is granted to copy, distribute, or create derivative works from
|
|
236
|
-
* the contents of this software, in whole or in part, without the prior written
|
|
237
|
-
* permission of create3000.
|
|
238
|
-
*
|
|
239
|
-
* NON-MILITARY USE ONLY
|
|
240
|
-
*
|
|
241
|
-
* All create3000 software are effectively free software with a non-military use
|
|
242
|
-
* restriction. It is free. Well commented source is provided. You may reuse the
|
|
243
|
-
* source in any way you please with the exception anything that uses it must be
|
|
244
|
-
* marked to indicate is contains 'non-military use only' components.
|
|
245
|
-
*
|
|
246
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
247
|
-
*
|
|
248
|
-
* Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
|
|
249
|
-
*
|
|
250
|
-
* This file is part of the X_ITE Project.
|
|
251
|
-
*
|
|
252
|
-
* X_ITE is free software: you can redistribute it and/or modify it under the
|
|
253
|
-
* terms of the GNU General Public License version 3 only, as published by the
|
|
254
|
-
* Free Software Foundation.
|
|
255
|
-
*
|
|
256
|
-
* X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
257
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
258
|
-
* A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
|
|
259
|
-
* details (a copy is included in the LICENSE file that accompanied this code).
|
|
260
|
-
*
|
|
261
|
-
* You should have received a copy of the GNU General Public License version 3
|
|
262
|
-
* along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
|
|
263
|
-
* copy of the GPLv3 License.
|
|
264
|
-
*
|
|
265
|
-
* For Silvio, Joy and Adi.
|
|
266
|
-
*
|
|
267
|
-
******************************************************************************/
|
|
268
123
|
|
|
269
124
|
|
|
270
125
|
|
|
@@ -274,6 +129,15 @@ const ExtensionKeys_default_ = ExtensionKeys;
|
|
|
274
129
|
|
|
275
130
|
|
|
276
131
|
|
|
132
|
+
// Register key.
|
|
133
|
+
|
|
134
|
+
X_ITE_ExtensionKeys .add ("ANISOTROPY_MATERIAL_EXTENSION");
|
|
135
|
+
|
|
136
|
+
// Register textures.
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
external_X_ITE_X3D_MaterialTextures_default().add ("x3d_AnisotropyTextureEXT");
|
|
277
141
|
|
|
278
142
|
/**
|
|
279
143
|
* THIS NODE IS STILL EXPERIMENTAL.
|
|
@@ -288,7 +152,7 @@ function AnisotropyMaterialExtension (executionContext)
|
|
|
288
152
|
// Units
|
|
289
153
|
|
|
290
154
|
this ._anisotropyRotation .setUnit ("angle");
|
|
291
|
-
|
|
155
|
+
|
|
292
156
|
// Private properties
|
|
293
157
|
|
|
294
158
|
this .anisotropyArray = new Float32Array (3);
|
|
@@ -340,6 +204,10 @@ Object .assign (Object .setPrototypeOf (AnisotropyMaterialExtension .prototype,
|
|
|
340
204
|
|
|
341
205
|
this .anisotropyTextureNode ?.getShaderOptions (options, "ANISOTROPY", true);
|
|
342
206
|
},
|
|
207
|
+
getShaderUniforms (uniforms)
|
|
208
|
+
{
|
|
209
|
+
uniforms .push ("x3d_AnisotropyEXT");
|
|
210
|
+
},
|
|
343
211
|
setShaderUniforms (gl, shaderObject, renderObject, textureTransformMapping, textureCoordinateMapping)
|
|
344
212
|
{
|
|
345
213
|
gl .uniform3fv (shaderObject .x3d_AnisotropyEXT, this .anisotropyArray);
|
|
@@ -378,53 +246,6 @@ const AnisotropyMaterialExtension_default_ = AnisotropyMaterialExtension;
|
|
|
378
246
|
const external_X_ITE_X3D_X3DAppearanceChildNode_namespaceObject = __X_ITE_X3D__ .X3DAppearanceChildNode;
|
|
379
247
|
var external_X_ITE_X3D_X3DAppearanceChildNode_default = /*#__PURE__*/__webpack_require__.n(external_X_ITE_X3D_X3DAppearanceChildNode_namespaceObject);
|
|
380
248
|
;// ./src/x_ite/Components/X_ITE/BlendMode.js
|
|
381
|
-
/*******************************************************************************
|
|
382
|
-
*
|
|
383
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
384
|
-
*
|
|
385
|
-
* Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
|
|
386
|
-
*
|
|
387
|
-
* All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
|
|
388
|
-
*
|
|
389
|
-
* The copyright notice above does not evidence any actual of intended
|
|
390
|
-
* publication of such source code, and is an unpublished work by create3000.
|
|
391
|
-
* This material contains CONFIDENTIAL INFORMATION that is the property of
|
|
392
|
-
* create3000.
|
|
393
|
-
*
|
|
394
|
-
* No permission is granted to copy, distribute, or create derivative works from
|
|
395
|
-
* the contents of this software, in whole or in part, without the prior written
|
|
396
|
-
* permission of create3000.
|
|
397
|
-
*
|
|
398
|
-
* NON-MILITARY USE ONLY
|
|
399
|
-
*
|
|
400
|
-
* All create3000 software are effectively free software with a non-military use
|
|
401
|
-
* restriction. It is free. Well commented source is provided. You may reuse the
|
|
402
|
-
* source in any way you please with the exception anything that uses it must be
|
|
403
|
-
* marked to indicate is contains 'non-military use only' components.
|
|
404
|
-
*
|
|
405
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
406
|
-
*
|
|
407
|
-
* Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
|
|
408
|
-
*
|
|
409
|
-
* This file is part of the X_ITE Project.
|
|
410
|
-
*
|
|
411
|
-
* X_ITE is free software: you can redistribute it and/or modify it under the
|
|
412
|
-
* terms of the GNU General Public License version 3 only, as published by the
|
|
413
|
-
* Free Software Foundation.
|
|
414
|
-
*
|
|
415
|
-
* X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
416
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
417
|
-
* A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
|
|
418
|
-
* details (a copy is included in the LICENSE file that accompanied this code).
|
|
419
|
-
*
|
|
420
|
-
* You should have received a copy of the GNU General Public License version 3
|
|
421
|
-
* along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
|
|
422
|
-
* copy of the GPLv3 License.
|
|
423
|
-
*
|
|
424
|
-
* For Silvio, Joy and Adi.
|
|
425
|
-
*
|
|
426
|
-
******************************************************************************/
|
|
427
|
-
|
|
428
249
|
|
|
429
250
|
|
|
430
251
|
|
|
@@ -564,52 +385,6 @@ const BlendMode_default_ = BlendMode;
|
|
|
564
385
|
const external_X_ITE_X3D_Algorithm_namespaceObject = __X_ITE_X3D__ .Algorithm;
|
|
565
386
|
var external_X_ITE_X3D_Algorithm_default = /*#__PURE__*/__webpack_require__.n(external_X_ITE_X3D_Algorithm_namespaceObject);
|
|
566
387
|
;// ./src/x_ite/Components/X_ITE/ClearcoatMaterialExtension.js
|
|
567
|
-
/*******************************************************************************
|
|
568
|
-
*
|
|
569
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
570
|
-
*
|
|
571
|
-
* Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
|
|
572
|
-
*
|
|
573
|
-
* All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
|
|
574
|
-
*
|
|
575
|
-
* The copyright notice above does not evidence any actual of intended
|
|
576
|
-
* publication of such source code, and is an unpublished work by create3000.
|
|
577
|
-
* This material contains CONFIDENTIAL INFORMATION that is the property of
|
|
578
|
-
* create3000.
|
|
579
|
-
*
|
|
580
|
-
* No permission is granted to copy, distribute, or create derivative works from
|
|
581
|
-
* the contents of this software, in whole or in part, without the prior written
|
|
582
|
-
* permission of create3000.
|
|
583
|
-
*
|
|
584
|
-
* NON-MILITARY USE ONLY
|
|
585
|
-
*
|
|
586
|
-
* All create3000 software are effectively free software with a non-military use
|
|
587
|
-
* restriction. It is free. Well commented source is provided. You may reuse the
|
|
588
|
-
* source in any way you please with the exception anything that uses it must be
|
|
589
|
-
* marked to indicate is contains 'non-military use only' components.
|
|
590
|
-
*
|
|
591
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
592
|
-
*
|
|
593
|
-
* Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
|
|
594
|
-
*
|
|
595
|
-
* This file is part of the X_ITE Project.
|
|
596
|
-
*
|
|
597
|
-
* X_ITE is free software: you can redistribute it and/or modify it under the
|
|
598
|
-
* terms of the GNU General Public License version 3 only, as published by the
|
|
599
|
-
* Free Software Foundation.
|
|
600
|
-
*
|
|
601
|
-
* X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
602
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
603
|
-
* A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
|
|
604
|
-
* details (a copy is included in the LICENSE file that accompanied this code).
|
|
605
|
-
*
|
|
606
|
-
* You should have received a copy of the GNU General Public License version 3
|
|
607
|
-
* along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
|
|
608
|
-
* copy of the GPLv3 License.
|
|
609
|
-
*
|
|
610
|
-
* For Silvio, Joy and Adi.
|
|
611
|
-
*
|
|
612
|
-
******************************************************************************/
|
|
613
388
|
|
|
614
389
|
|
|
615
390
|
|
|
@@ -620,6 +395,17 @@ var external_X_ITE_X3D_Algorithm_default = /*#__PURE__*/__webpack_require__.n(ex
|
|
|
620
395
|
|
|
621
396
|
|
|
622
397
|
|
|
398
|
+
// Register key.
|
|
399
|
+
|
|
400
|
+
X_ITE_ExtensionKeys .add ("CLEARCOAT_MATERIAL_EXTENSION");
|
|
401
|
+
|
|
402
|
+
// Register textures.
|
|
403
|
+
|
|
404
|
+
|
|
405
|
+
|
|
406
|
+
external_X_ITE_X3D_MaterialTextures_default().add ("x3d_ClearcoatTextureEXT");
|
|
407
|
+
external_X_ITE_X3D_MaterialTextures_default().add ("x3d_ClearcoatRoughnessTextureEXT");
|
|
408
|
+
external_X_ITE_X3D_MaterialTextures_default().add ("x3d_ClearcoatNormalTextureEXT");
|
|
623
409
|
|
|
624
410
|
/**
|
|
625
411
|
* THIS NODE IS STILL EXPERIMENTAL.
|
|
@@ -693,6 +479,11 @@ Object .assign (Object .setPrototypeOf (ClearcoatMaterialExtension .prototype, X
|
|
|
693
479
|
this .clearcoatRoughnessTextureNode ?.getShaderOptions (options, "CLEARCOAT_ROUGHNESS", true);
|
|
694
480
|
this .clearcoatNormalTextureNode ?.getShaderOptions (options, "CLEARCOAT_NORMAL", true);
|
|
695
481
|
},
|
|
482
|
+
getShaderUniforms (uniforms)
|
|
483
|
+
{
|
|
484
|
+
uniforms .push ("x3d_ClearcoatEXT");
|
|
485
|
+
uniforms .push ("x3d_ClearcoatRoughnessEXT");
|
|
486
|
+
},
|
|
696
487
|
setShaderUniforms (gl, shaderObject, renderObject, textureTransformMapping, textureCoordinateMapping)
|
|
697
488
|
{
|
|
698
489
|
gl .uniform1f (shaderObject .x3d_ClearcoatEXT, this .clearcoat);
|
|
@@ -752,53 +543,6 @@ const ClearcoatMaterialExtension_default_ = ClearcoatMaterialExtension;
|
|
|
752
543
|
|
|
753
544
|
/* harmony default export */ const X_ITE_ClearcoatMaterialExtension = (external_X_ITE_X3D_Namespace_default().add ("ClearcoatMaterialExtension", ClearcoatMaterialExtension_default_));
|
|
754
545
|
;// ./src/x_ite/Components/X_ITE/DepthMode.js
|
|
755
|
-
/*******************************************************************************
|
|
756
|
-
*
|
|
757
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
758
|
-
*
|
|
759
|
-
* Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
|
|
760
|
-
*
|
|
761
|
-
* All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
|
|
762
|
-
*
|
|
763
|
-
* The copyright notice above does not evidence any actual of intended
|
|
764
|
-
* publication of such source code, and is an unpublished work by create3000.
|
|
765
|
-
* This material contains CONFIDENTIAL INFORMATION that is the property of
|
|
766
|
-
* create3000.
|
|
767
|
-
*
|
|
768
|
-
* No permission is granted to copy, distribute, or create derivative works from
|
|
769
|
-
* the contents of this software, in whole or in part, without the prior written
|
|
770
|
-
* permission of create3000.
|
|
771
|
-
*
|
|
772
|
-
* NON-MILITARY USE ONLY
|
|
773
|
-
*
|
|
774
|
-
* All create3000 software are effectively free software with a non-military use
|
|
775
|
-
* restriction. It is free. Well commented source is provided. You may reuse the
|
|
776
|
-
* source in any way you please with the exception anything that uses it must be
|
|
777
|
-
* marked to indicate is contains 'non-military use only' components.
|
|
778
|
-
*
|
|
779
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
780
|
-
*
|
|
781
|
-
* Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
|
|
782
|
-
*
|
|
783
|
-
* This file is part of the X_ITE Project.
|
|
784
|
-
*
|
|
785
|
-
* X_ITE is free software: you can redistribute it and/or modify it under the
|
|
786
|
-
* terms of the GNU General Public License version 3 only, as published by the
|
|
787
|
-
* Free Software Foundation.
|
|
788
|
-
*
|
|
789
|
-
* X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
790
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
791
|
-
* A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
|
|
792
|
-
* details (a copy is included in the LICENSE file that accompanied this code).
|
|
793
|
-
*
|
|
794
|
-
* You should have received a copy of the GNU General Public License version 3
|
|
795
|
-
* along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
|
|
796
|
-
* copy of the GPLv3 License.
|
|
797
|
-
*
|
|
798
|
-
* For Silvio, Joy and Adi.
|
|
799
|
-
*
|
|
800
|
-
******************************************************************************/
|
|
801
|
-
|
|
802
546
|
|
|
803
547
|
|
|
804
548
|
|
|
@@ -903,52 +647,6 @@ const DepthMode_default_ = DepthMode;
|
|
|
903
647
|
|
|
904
648
|
/* harmony default export */ const X_ITE_DepthMode = (external_X_ITE_X3D_Namespace_default().add ("DepthMode", DepthMode_default_));
|
|
905
649
|
;// ./src/x_ite/Components/X_ITE/DiffuseTransmissionMaterialExtension.js
|
|
906
|
-
/*******************************************************************************
|
|
907
|
-
*
|
|
908
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
909
|
-
*
|
|
910
|
-
* Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
|
|
911
|
-
*
|
|
912
|
-
* All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
|
|
913
|
-
*
|
|
914
|
-
* The copyright notice above does not evidence any actual of intended
|
|
915
|
-
* publication of such source code, and is an unpublished work by create3000.
|
|
916
|
-
* This material contains CONFIDENTIAL INFORMATION that is the property of
|
|
917
|
-
* create3000.
|
|
918
|
-
*
|
|
919
|
-
* No permission is granted to copy, distribute, or create derivative works from
|
|
920
|
-
* the contents of this software, in whole or in part, without the prior written
|
|
921
|
-
* permission of create3000.
|
|
922
|
-
*
|
|
923
|
-
* NON-MILITARY USE ONLY
|
|
924
|
-
*
|
|
925
|
-
* All create3000 software are effectively free software with a non-military use
|
|
926
|
-
* restriction. It is free. Well commented source is provided. You may reuse the
|
|
927
|
-
* source in any way you please with the exception anything that uses it must be
|
|
928
|
-
* marked to indicate is contains 'non-military use only' components.
|
|
929
|
-
*
|
|
930
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
931
|
-
*
|
|
932
|
-
* Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
|
|
933
|
-
*
|
|
934
|
-
* This file is part of the X_ITE Project.
|
|
935
|
-
*
|
|
936
|
-
* X_ITE is free software: you can redistribute it and/or modify it under the
|
|
937
|
-
* terms of the GNU General Public License version 3 only, as published by the
|
|
938
|
-
* Free Software Foundation.
|
|
939
|
-
*
|
|
940
|
-
* X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
941
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
942
|
-
* A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
|
|
943
|
-
* details (a copy is included in the LICENSE file that accompanied this code).
|
|
944
|
-
*
|
|
945
|
-
* You should have received a copy of the GNU General Public License version 3
|
|
946
|
-
* along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
|
|
947
|
-
* copy of the GPLv3 License.
|
|
948
|
-
*
|
|
949
|
-
* For Silvio, Joy and Adi.
|
|
950
|
-
*
|
|
951
|
-
******************************************************************************/
|
|
952
650
|
|
|
953
651
|
|
|
954
652
|
|
|
@@ -959,6 +657,17 @@ const DepthMode_default_ = DepthMode;
|
|
|
959
657
|
|
|
960
658
|
|
|
961
659
|
|
|
660
|
+
// Register key.
|
|
661
|
+
|
|
662
|
+
X_ITE_ExtensionKeys .add ("DIFFUSE_TRANSMISSION_MATERIAL_EXTENSION");
|
|
663
|
+
|
|
664
|
+
// Register textures.
|
|
665
|
+
|
|
666
|
+
|
|
667
|
+
|
|
668
|
+
external_X_ITE_X3D_MaterialTextures_default().add ("x3d_DiffuseTransmissionTextureEXT");
|
|
669
|
+
external_X_ITE_X3D_MaterialTextures_default().add ("x3d_DiffuseTransmissionColorTextureEXT");
|
|
670
|
+
|
|
962
671
|
/**
|
|
963
672
|
* THIS NODE IS STILL EXPERIMENTAL.
|
|
964
673
|
*/
|
|
@@ -990,7 +699,7 @@ Object .assign (Object .setPrototypeOf (DiffuseTransmissionMaterialExtension .pr
|
|
|
990
699
|
},
|
|
991
700
|
set_diffuseTransmission__ ()
|
|
992
701
|
{
|
|
993
|
-
this .diffuseTransmission =
|
|
702
|
+
this .diffuseTransmission = external_X_ITE_X3D_Algorithm_default().clamp (this ._diffuseTransmission .getValue (), 0, 1);
|
|
994
703
|
},
|
|
995
704
|
set_diffuseTransmissionTexture__ ()
|
|
996
705
|
{
|
|
@@ -1010,7 +719,7 @@ Object .assign (Object .setPrototypeOf (DiffuseTransmissionMaterialExtension .pr
|
|
|
1010
719
|
},
|
|
1011
720
|
getExtensionKey ()
|
|
1012
721
|
{
|
|
1013
|
-
return X_ITE_ExtensionKeys .
|
|
722
|
+
return X_ITE_ExtensionKeys .DIFFUSE_TRANSMISSION_MATERIAL_EXTENSION;
|
|
1014
723
|
},
|
|
1015
724
|
getShaderOptions (options)
|
|
1016
725
|
{
|
|
@@ -1024,6 +733,11 @@ Object .assign (Object .setPrototypeOf (DiffuseTransmissionMaterialExtension .pr
|
|
|
1024
733
|
this .diffuseTransmissionTextureNode ?.getShaderOptions (options, "DIFFUSE_TRANSMISSION", true);
|
|
1025
734
|
this .diffuseTransmissionColorTextureNode ?.getShaderOptions (options, "DIFFUSE_TRANSMISSION_COLOR", true);
|
|
1026
735
|
},
|
|
736
|
+
getShaderUniforms (uniforms)
|
|
737
|
+
{
|
|
738
|
+
uniforms .push ("x3d_DiffuseTransmissionEXT");
|
|
739
|
+
uniforms .push ("x3d_DiffuseTransmissionColorEXT");
|
|
740
|
+
},
|
|
1027
741
|
setShaderUniforms (gl, shaderObject, renderObject, textureTransformMapping, textureCoordinateMapping)
|
|
1028
742
|
{
|
|
1029
743
|
gl .uniform1f (shaderObject .x3d_DiffuseTransmissionEXT, this .diffuseTransmission);
|
|
@@ -1073,52 +787,6 @@ const DiffuseTransmissionMaterialExtension_default_ = DiffuseTransmissionMateria
|
|
|
1073
787
|
|
|
1074
788
|
/* harmony default export */ const X_ITE_DiffuseTransmissionMaterialExtension = (external_X_ITE_X3D_Namespace_default().add ("DiffuseTransmissionMaterialExtension", DiffuseTransmissionMaterialExtension_default_));
|
|
1075
789
|
;// ./src/x_ite/Components/X_ITE/DispersionMaterialExtension.js
|
|
1076
|
-
/*******************************************************************************
|
|
1077
|
-
*
|
|
1078
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
1079
|
-
*
|
|
1080
|
-
* Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
|
|
1081
|
-
*
|
|
1082
|
-
* All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
|
|
1083
|
-
*
|
|
1084
|
-
* The copyright notice above does not evidence any actual of intended
|
|
1085
|
-
* publication of such source code, and is an unpublished work by create3000.
|
|
1086
|
-
* This material contains CONFIDENTIAL INFORMATION that is the property of
|
|
1087
|
-
* create3000.
|
|
1088
|
-
*
|
|
1089
|
-
* No permission is granted to copy, distribute, or create derivative works from
|
|
1090
|
-
* the contents of this software, in whole or in part, without the prior written
|
|
1091
|
-
* permission of create3000.
|
|
1092
|
-
*
|
|
1093
|
-
* NON-MILITARY USE ONLY
|
|
1094
|
-
*
|
|
1095
|
-
* All create3000 software are effectively free software with a non-military use
|
|
1096
|
-
* restriction. It is free. Well commented source is provided. You may reuse the
|
|
1097
|
-
* source in any way you please with the exception anything that uses it must be
|
|
1098
|
-
* marked to indicate is contains 'non-military use only' components.
|
|
1099
|
-
*
|
|
1100
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
1101
|
-
*
|
|
1102
|
-
* Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
|
|
1103
|
-
*
|
|
1104
|
-
* This file is part of the X_ITE Project.
|
|
1105
|
-
*
|
|
1106
|
-
* X_ITE is free software: you can redistribute it and/or modify it under the
|
|
1107
|
-
* terms of the GNU General Public License version 3 only, as published by the
|
|
1108
|
-
* Free Software Foundation.
|
|
1109
|
-
*
|
|
1110
|
-
* X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
1111
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
1112
|
-
* A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
|
|
1113
|
-
* details (a copy is included in the LICENSE file that accompanied this code).
|
|
1114
|
-
*
|
|
1115
|
-
* You should have received a copy of the GNU General Public License version 3
|
|
1116
|
-
* along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
|
|
1117
|
-
* copy of the GPLv3 License.
|
|
1118
|
-
*
|
|
1119
|
-
* For Silvio, Joy and Adi.
|
|
1120
|
-
*
|
|
1121
|
-
******************************************************************************/
|
|
1122
790
|
|
|
1123
791
|
|
|
1124
792
|
|
|
@@ -1127,6 +795,9 @@ const DiffuseTransmissionMaterialExtension_default_ = DiffuseTransmissionMateria
|
|
|
1127
795
|
|
|
1128
796
|
|
|
1129
797
|
|
|
798
|
+
// Register key.
|
|
799
|
+
|
|
800
|
+
X_ITE_ExtensionKeys .add ("DISPERSION_MATERIAL_EXTENSION");
|
|
1130
801
|
|
|
1131
802
|
/**
|
|
1132
803
|
* THIS NODE IS STILL EXPERIMENTAL.
|
|
@@ -1161,6 +832,10 @@ Object .assign (Object .setPrototypeOf (DispersionMaterialExtension .prototype,
|
|
|
1161
832
|
{
|
|
1162
833
|
options .push ("X3D_DISPERSION_MATERIAL_EXT");
|
|
1163
834
|
},
|
|
835
|
+
getShaderUniforms (uniforms)
|
|
836
|
+
{
|
|
837
|
+
uniforms .push ("x3d_DispersionEXT");
|
|
838
|
+
},
|
|
1164
839
|
setShaderUniforms (gl, shaderObject, renderObject, textureTransformMapping, textureCoordinateMapping)
|
|
1165
840
|
{
|
|
1166
841
|
gl .uniform1f (shaderObject .x3d_DispersionEXT, this .dispersion);
|
|
@@ -1185,52 +860,6 @@ const DispersionMaterialExtension_default_ = DispersionMaterialExtension;
|
|
|
1185
860
|
|
|
1186
861
|
/* harmony default export */ const X_ITE_DispersionMaterialExtension = (external_X_ITE_X3D_Namespace_default().add ("DispersionMaterialExtension", DispersionMaterialExtension_default_));
|
|
1187
862
|
;// ./src/x_ite/Components/X_ITE/EmissiveStrengthMaterialExtension.js
|
|
1188
|
-
/*******************************************************************************
|
|
1189
|
-
*
|
|
1190
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
1191
|
-
*
|
|
1192
|
-
* Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
|
|
1193
|
-
*
|
|
1194
|
-
* All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
|
|
1195
|
-
*
|
|
1196
|
-
* The copyright notice above does not evidence any actual of intended
|
|
1197
|
-
* publication of such source code, and is an unpublished work by create3000.
|
|
1198
|
-
* This material contains CONFIDENTIAL INFORMATION that is the property of
|
|
1199
|
-
* create3000.
|
|
1200
|
-
*
|
|
1201
|
-
* No permission is granted to copy, distribute, or create derivative works from
|
|
1202
|
-
* the contents of this software, in whole or in part, without the prior written
|
|
1203
|
-
* permission of create3000.
|
|
1204
|
-
*
|
|
1205
|
-
* NON-MILITARY USE ONLY
|
|
1206
|
-
*
|
|
1207
|
-
* All create3000 software are effectively free software with a non-military use
|
|
1208
|
-
* restriction. It is free. Well commented source is provided. You may reuse the
|
|
1209
|
-
* source in any way you please with the exception anything that uses it must be
|
|
1210
|
-
* marked to indicate is contains 'non-military use only' components.
|
|
1211
|
-
*
|
|
1212
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
1213
|
-
*
|
|
1214
|
-
* Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
|
|
1215
|
-
*
|
|
1216
|
-
* This file is part of the X_ITE Project.
|
|
1217
|
-
*
|
|
1218
|
-
* X_ITE is free software: you can redistribute it and/or modify it under the
|
|
1219
|
-
* terms of the GNU General Public License version 3 only, as published by the
|
|
1220
|
-
* Free Software Foundation.
|
|
1221
|
-
*
|
|
1222
|
-
* X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
1223
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
1224
|
-
* A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
|
|
1225
|
-
* details (a copy is included in the LICENSE file that accompanied this code).
|
|
1226
|
-
*
|
|
1227
|
-
* You should have received a copy of the GNU General Public License version 3
|
|
1228
|
-
* along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
|
|
1229
|
-
* copy of the GPLv3 License.
|
|
1230
|
-
*
|
|
1231
|
-
* For Silvio, Joy and Adi.
|
|
1232
|
-
*
|
|
1233
|
-
******************************************************************************/
|
|
1234
863
|
|
|
1235
864
|
|
|
1236
865
|
|
|
@@ -1239,6 +868,9 @@ const DispersionMaterialExtension_default_ = DispersionMaterialExtension;
|
|
|
1239
868
|
|
|
1240
869
|
|
|
1241
870
|
|
|
871
|
+
// Register key.
|
|
872
|
+
|
|
873
|
+
X_ITE_ExtensionKeys .add ("EMISSIVE_STRENGTH_MATERIAL_EXTENSION");
|
|
1242
874
|
|
|
1243
875
|
/**
|
|
1244
876
|
* THIS NODE IS STILL EXPERIMENTAL.
|
|
@@ -1273,6 +905,10 @@ Object .assign (Object .setPrototypeOf (EmissiveStrengthMaterialExtension .proto
|
|
|
1273
905
|
{
|
|
1274
906
|
options .push ("X3D_EMISSIVE_STRENGTH_MATERIAL_EXT");
|
|
1275
907
|
},
|
|
908
|
+
getShaderUniforms (uniforms)
|
|
909
|
+
{
|
|
910
|
+
uniforms .push ("x3d_EmissiveStrengthEXT");
|
|
911
|
+
},
|
|
1276
912
|
setShaderUniforms (gl, shaderObject, renderObject, textureTransformMapping, textureCoordinateMapping)
|
|
1277
913
|
{
|
|
1278
914
|
gl .uniform1f (shaderObject .x3d_EmissiveStrengthEXT, this .emissiveStrength);
|
|
@@ -1309,53 +945,6 @@ var external_X_ITE_X3D_Matrix4_default = /*#__PURE__*/__webpack_require__.n(exte
|
|
|
1309
945
|
const external_X_ITE_X3D_Box3_namespaceObject = __X_ITE_X3D__ .Box3;
|
|
1310
946
|
var external_X_ITE_X3D_Box3_default = /*#__PURE__*/__webpack_require__.n(external_X_ITE_X3D_Box3_namespaceObject);
|
|
1311
947
|
;// ./src/x_ite/Components/X_ITE/InstancedShape.js
|
|
1312
|
-
/*******************************************************************************
|
|
1313
|
-
*
|
|
1314
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
1315
|
-
*
|
|
1316
|
-
* Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
|
|
1317
|
-
*
|
|
1318
|
-
* All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
|
|
1319
|
-
*
|
|
1320
|
-
* The copyright notice above does not evidence any actual of intended
|
|
1321
|
-
* publication of such source code, and is an unpublished work by create3000.
|
|
1322
|
-
* This material contains CONFIDENTIAL INFORMATION that is the property of
|
|
1323
|
-
* create3000.
|
|
1324
|
-
*
|
|
1325
|
-
* No permission is granted to copy, distribute, or create derivative works from
|
|
1326
|
-
* the contents of this software, in whole or in part, without the prior written
|
|
1327
|
-
* permission of create3000.
|
|
1328
|
-
*
|
|
1329
|
-
* NON-MILITARY USE ONLY
|
|
1330
|
-
*
|
|
1331
|
-
* All create3000 software are effectively free software with a non-military use
|
|
1332
|
-
* restriction. It is free. Well commented source is provided. You may reuse the
|
|
1333
|
-
* source in any way you please with the exception anything that uses it must be
|
|
1334
|
-
* marked to indicate is contains 'non-military use only' components.
|
|
1335
|
-
*
|
|
1336
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
1337
|
-
*
|
|
1338
|
-
* Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
|
|
1339
|
-
*
|
|
1340
|
-
* This file is part of the X_ITE Project.
|
|
1341
|
-
*
|
|
1342
|
-
* X_ITE is free software: you can redistribute it and/or modify it under the
|
|
1343
|
-
* terms of the GNU General Public License version 3 only, as published by the
|
|
1344
|
-
* Free Software Foundation.
|
|
1345
|
-
*
|
|
1346
|
-
* X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
1347
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
1348
|
-
* A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
|
|
1349
|
-
* details (a copy is included in the LICENSE file that accompanied this code).
|
|
1350
|
-
*
|
|
1351
|
-
* You should have received a copy of the GNU General Public License version 3
|
|
1352
|
-
* along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
|
|
1353
|
-
* copy of the GPLv3 License.
|
|
1354
|
-
*
|
|
1355
|
-
* For Silvio, Joy and Adi.
|
|
1356
|
-
*
|
|
1357
|
-
******************************************************************************/
|
|
1358
|
-
|
|
1359
948
|
|
|
1360
949
|
|
|
1361
950
|
|
|
@@ -1555,52 +1144,6 @@ const InstancedShape_default_ = InstancedShape;
|
|
|
1555
1144
|
|
|
1556
1145
|
/* harmony default export */ const X_ITE_InstancedShape = (external_X_ITE_X3D_Namespace_default().add ("InstancedShape", InstancedShape_default_));
|
|
1557
1146
|
;// ./src/x_ite/Components/X_ITE/IORMaterialExtension.js
|
|
1558
|
-
/*******************************************************************************
|
|
1559
|
-
*
|
|
1560
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
1561
|
-
*
|
|
1562
|
-
* Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
|
|
1563
|
-
*
|
|
1564
|
-
* All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
|
|
1565
|
-
*
|
|
1566
|
-
* The copyright notice above does not evidence any actual of intended
|
|
1567
|
-
* publication of such source code, and is an unpublished work by create3000.
|
|
1568
|
-
* This material contains CONFIDENTIAL INFORMATION that is the property of
|
|
1569
|
-
* create3000.
|
|
1570
|
-
*
|
|
1571
|
-
* No permission is granted to copy, distribute, or create derivative works from
|
|
1572
|
-
* the contents of this software, in whole or in part, without the prior written
|
|
1573
|
-
* permission of create3000.
|
|
1574
|
-
*
|
|
1575
|
-
* NON-MILITARY USE ONLY
|
|
1576
|
-
*
|
|
1577
|
-
* All create3000 software are effectively free software with a non-military use
|
|
1578
|
-
* restriction. It is free. Well commented source is provided. You may reuse the
|
|
1579
|
-
* source in any way you please with the exception anything that uses it must be
|
|
1580
|
-
* marked to indicate is contains 'non-military use only' components.
|
|
1581
|
-
*
|
|
1582
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
1583
|
-
*
|
|
1584
|
-
* Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
|
|
1585
|
-
*
|
|
1586
|
-
* This file is part of the X_ITE Project.
|
|
1587
|
-
*
|
|
1588
|
-
* X_ITE is free software: you can redistribute it and/or modify it under the
|
|
1589
|
-
* terms of the GNU General Public License version 3 only, as published by the
|
|
1590
|
-
* Free Software Foundation.
|
|
1591
|
-
*
|
|
1592
|
-
* X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
1593
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
1594
|
-
* A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
|
|
1595
|
-
* details (a copy is included in the LICENSE file that accompanied this code).
|
|
1596
|
-
*
|
|
1597
|
-
* You should have received a copy of the GNU General Public License version 3
|
|
1598
|
-
* along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
|
|
1599
|
-
* copy of the GPLv3 License.
|
|
1600
|
-
*
|
|
1601
|
-
* For Silvio, Joy and Adi.
|
|
1602
|
-
*
|
|
1603
|
-
******************************************************************************/
|
|
1604
1147
|
|
|
1605
1148
|
|
|
1606
1149
|
|
|
@@ -1609,6 +1152,9 @@ const InstancedShape_default_ = InstancedShape;
|
|
|
1609
1152
|
|
|
1610
1153
|
|
|
1611
1154
|
|
|
1155
|
+
// Register key.
|
|
1156
|
+
|
|
1157
|
+
X_ITE_ExtensionKeys .add ("IOR_MATERIAL_EXTENSION");
|
|
1612
1158
|
|
|
1613
1159
|
/**
|
|
1614
1160
|
* THIS NODE IS STILL EXPERIMENTAL.
|
|
@@ -1643,6 +1189,10 @@ Object .assign (Object .setPrototypeOf (IORMaterialExtension .prototype, X_ITE_X
|
|
|
1643
1189
|
{
|
|
1644
1190
|
options .push ("X3D_IOR_MATERIAL_EXT");
|
|
1645
1191
|
},
|
|
1192
|
+
getShaderUniforms (uniforms)
|
|
1193
|
+
{
|
|
1194
|
+
uniforms .push ("x3d_IorEXT");
|
|
1195
|
+
},
|
|
1646
1196
|
setShaderUniforms (gl, shaderObject, renderObject, textureTransformMapping, textureCoordinateMapping)
|
|
1647
1197
|
{
|
|
1648
1198
|
gl .uniform1f (shaderObject .x3d_IorEXT, this .indexOfRefraction);
|
|
@@ -1666,53 +1216,19 @@ const IORMaterialExtension_default_ = IORMaterialExtension;
|
|
|
1666
1216
|
;
|
|
1667
1217
|
|
|
1668
1218
|
/* harmony default export */ const X_ITE_IORMaterialExtension = (external_X_ITE_X3D_Namespace_default().add ("IORMaterialExtension", IORMaterialExtension_default_));
|
|
1219
|
+
;// external "__X_ITE_X3D__ .ShaderRegistry"
|
|
1220
|
+
const external_X_ITE_X3D_ShaderRegistry_namespaceObject = __X_ITE_X3D__ .ShaderRegistry;
|
|
1221
|
+
var external_X_ITE_X3D_ShaderRegistry_default = /*#__PURE__*/__webpack_require__.n(external_X_ITE_X3D_ShaderRegistry_namespaceObject);
|
|
1222
|
+
;// ./src/assets/shaders/webgl2/pbr/Iridescence2.glsl.js
|
|
1223
|
+
const Iridescence2_glsl_default_ = () => /* glsl */ `
|
|
1224
|
+
#if defined(X3D_IRIDESCENCE_MATERIAL_EXT)
|
|
1225
|
+
const mat3 XYZ_TO_REC709=mat3(3.2404542,-.9692660,.0556434,-1.5371385,1.8760108,-.2040259,-.4985314,.0415560,1.0572252);float sq(const in float v){return v*v;}vec3 sq(const in vec3 v){return v*v;}vec3 Fresnel0ToIor(const in vec3 fresnel0){vec3 sqrtF0=sqrt(fresnel0);return(vec3(1)+sqrtF0)/(vec3(1)-sqrtF0);}vec3 IorToFresnel0(const in vec3 transmittedIor,const in float incidentIor){return sq((transmittedIor-vec3(incidentIor))/(transmittedIor+vec3(incidentIor)));}float IorToFresnel0(const in float transmittedIor,const in float incidentIor){return sq((transmittedIor-incidentIor)/(transmittedIor+incidentIor));}vec3 evalSensitivity(const in float OPD,const in vec3 shift){float phase=2.*M_PI*OPD*1.0e-9;vec3 val=vec3(5.4856e-13,4.4201e-13,5.2481e-13);vec3 pos=vec3(1.6810e+06,1.7953e+06,2.2084e+06);vec3 var=vec3(4.3278e+09,9.3046e+09,6.6121e+09);vec3 xyz=val*sqrt(2.*M_PI*var)*cos(pos*phase+shift)*exp(-sq(phase)*var);xyz.x+=9.7470e-14*sqrt(2.*M_PI*4.5282e+09)*cos(2.2399e+06*phase+shift[0])*exp(-4.5282e+09*sq(phase));xyz/=1.0685e-7;vec3 srgb=XYZ_TO_REC709*xyz;return srgb;}vec3 evalIridescence(const in float outsideIOR,const in float eta2,const in float cosTheta1,const in float thinFilmThickness,const in vec3 baseF0){vec3 I;float iridescenceIor=mix(outsideIOR,eta2,smoothstep(0.,.03,thinFilmThickness));float sinTheta2Sq=sq(outsideIOR/iridescenceIor)*(1.-sq(cosTheta1));float cosTheta2Sq=1.-sinTheta2Sq;if(cosTheta2Sq<0.)return vec3(1);float cosTheta2=sqrt(cosTheta2Sq);float R0=IorToFresnel0(iridescenceIor,outsideIOR);float R12=F_Schlick(R0,cosTheta1);float R21=R12;float T121=1.-R12;float phi12=0.;if(iridescenceIor<outsideIOR)phi12=M_PI;float phi21=M_PI-phi12;vec3 baseIOR=Fresnel0ToIor(clamp(baseF0,0.,.9999));vec3 R1=IorToFresnel0(baseIOR,iridescenceIor);vec3 R23=F_Schlick(R1,cosTheta2);vec3 phi23=vec3(0);if(baseIOR[0]<iridescenceIor)phi23[0]=M_PI;if(baseIOR[1]<iridescenceIor)phi23[1]=M_PI;if(baseIOR[2]<iridescenceIor)phi23[2]=M_PI;float OPD=2.*iridescenceIor*thinFilmThickness*cosTheta2;vec3 phi=vec3(phi21)+phi23;vec3 R123=clamp(R12*R23,1e-5,.9999);vec3 r123=sqrt(R123);vec3 Rs=sq(T121)*R23/(vec3(1)-R123);vec3 C0=R12+Rs;I=C0;vec3 Cm=Rs-T121;for(int m=1;m<=2;++m){Cm*=r123;vec3 Sm=2.*evalSensitivity(float(m)*OPD,float(m)*phi);I+=Cm*Sm;}return max(I,vec3(0));}
|
|
1226
|
+
#endif
|
|
1227
|
+
`
|
|
1228
|
+
;
|
|
1229
|
+
|
|
1230
|
+
/* harmony default export */ const Iridescence2_glsl = (external_X_ITE_X3D_Namespace_default().add ("Iridescence2.glsl", Iridescence2_glsl_default_));
|
|
1669
1231
|
;// ./src/x_ite/Components/X_ITE/IridescenceMaterialExtension.js
|
|
1670
|
-
/*******************************************************************************
|
|
1671
|
-
*
|
|
1672
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
1673
|
-
*
|
|
1674
|
-
* Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
|
|
1675
|
-
*
|
|
1676
|
-
* All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
|
|
1677
|
-
*
|
|
1678
|
-
* The copyright notice above does not evidence any actual of intended
|
|
1679
|
-
* publication of such source code, and is an unpublished work by create3000.
|
|
1680
|
-
* This material contains CONFIDENTIAL INFORMATION that is the property of
|
|
1681
|
-
* create3000.
|
|
1682
|
-
*
|
|
1683
|
-
* No permission is granted to copy, distribute, or create derivative works from
|
|
1684
|
-
* the contents of this software, in whole or in part, without the prior written
|
|
1685
|
-
* permission of create3000.
|
|
1686
|
-
*
|
|
1687
|
-
* NON-MILITARY USE ONLY
|
|
1688
|
-
*
|
|
1689
|
-
* All create3000 software are effectively free software with a non-military use
|
|
1690
|
-
* restriction. It is free. Well commented source is provided. You may reuse the
|
|
1691
|
-
* source in any way you please with the exception anything that uses it must be
|
|
1692
|
-
* marked to indicate is contains 'non-military use only' components.
|
|
1693
|
-
*
|
|
1694
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
1695
|
-
*
|
|
1696
|
-
* Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
|
|
1697
|
-
*
|
|
1698
|
-
* This file is part of the X_ITE Project.
|
|
1699
|
-
*
|
|
1700
|
-
* X_ITE is free software: you can redistribute it and/or modify it under the
|
|
1701
|
-
* terms of the GNU General Public License version 3 only, as published by the
|
|
1702
|
-
* Free Software Foundation.
|
|
1703
|
-
*
|
|
1704
|
-
* X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
1705
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
1706
|
-
* A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
|
|
1707
|
-
* details (a copy is included in the LICENSE file that accompanied this code).
|
|
1708
|
-
*
|
|
1709
|
-
* You should have received a copy of the GNU General Public License version 3
|
|
1710
|
-
* along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
|
|
1711
|
-
* copy of the GPLv3 License.
|
|
1712
|
-
*
|
|
1713
|
-
* For Silvio, Joy and Adi.
|
|
1714
|
-
*
|
|
1715
|
-
******************************************************************************/
|
|
1716
1232
|
|
|
1717
1233
|
|
|
1718
1234
|
|
|
@@ -1722,6 +1238,23 @@ const IORMaterialExtension_default_ = IORMaterialExtension;
|
|
|
1722
1238
|
|
|
1723
1239
|
|
|
1724
1240
|
|
|
1241
|
+
// Register key.
|
|
1242
|
+
|
|
1243
|
+
X_ITE_ExtensionKeys .add ("IRIDESCENCE_MATERIAL_EXTENSION");
|
|
1244
|
+
|
|
1245
|
+
// Register shaders.
|
|
1246
|
+
|
|
1247
|
+
|
|
1248
|
+
|
|
1249
|
+
|
|
1250
|
+
external_X_ITE_X3D_ShaderRegistry_default().addInclude ("Iridescence", Iridescence2_glsl);
|
|
1251
|
+
|
|
1252
|
+
// Register textures.
|
|
1253
|
+
|
|
1254
|
+
|
|
1255
|
+
|
|
1256
|
+
external_X_ITE_X3D_MaterialTextures_default().add ("x3d_IridescenceTextureEXT");
|
|
1257
|
+
external_X_ITE_X3D_MaterialTextures_default().add ("x3d_IridescenceThicknessTextureEXT");
|
|
1725
1258
|
|
|
1726
1259
|
/**
|
|
1727
1260
|
* THIS NODE IS STILL EXPERIMENTAL.
|
|
@@ -1798,6 +1331,13 @@ Object .assign (Object .setPrototypeOf (IridescenceMaterialExtension .prototype,
|
|
|
1798
1331
|
this .iridescenceTextureNode ?.getShaderOptions (options, "IRIDESCENCE", true);
|
|
1799
1332
|
this .iridescenceThicknessTextureNode ?.getShaderOptions (options, "IRIDESCENCE_THICKNESS", true);
|
|
1800
1333
|
},
|
|
1334
|
+
getShaderUniforms (uniforms)
|
|
1335
|
+
{
|
|
1336
|
+
uniforms .push ("x3d_IridescenceEXT");
|
|
1337
|
+
uniforms .push ("x3d_IridescenceIndexOfRefractionEXT");
|
|
1338
|
+
uniforms .push ("x3d_IridescenceThicknessMinimumEXT");
|
|
1339
|
+
uniforms .push ("x3d_IridescenceThicknessMaximumEXT");
|
|
1340
|
+
},
|
|
1801
1341
|
setShaderUniforms (gl, shaderObject, renderObject, textureTransformMapping, textureCoordinateMapping)
|
|
1802
1342
|
{
|
|
1803
1343
|
gl .uniform1f (shaderObject .x3d_IridescenceEXT, this .iridescence);
|
|
@@ -1851,52 +1391,6 @@ const IridescenceMaterialExtension_default_ = IridescenceMaterialExtension;
|
|
|
1851
1391
|
|
|
1852
1392
|
/* harmony default export */ const X_ITE_IridescenceMaterialExtension = (external_X_ITE_X3D_Namespace_default().add ("IridescenceMaterialExtension", IridescenceMaterialExtension_default_));
|
|
1853
1393
|
;// ./src/x_ite/Components/X_ITE/SheenMaterialExtension.js
|
|
1854
|
-
/*******************************************************************************
|
|
1855
|
-
*
|
|
1856
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
1857
|
-
*
|
|
1858
|
-
* Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
|
|
1859
|
-
*
|
|
1860
|
-
* All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
|
|
1861
|
-
*
|
|
1862
|
-
* The copyright notice above does not evidence any actual of intended
|
|
1863
|
-
* publication of such source code, and is an unpublished work by create3000.
|
|
1864
|
-
* This material contains CONFIDENTIAL INFORMATION that is the property of
|
|
1865
|
-
* create3000.
|
|
1866
|
-
*
|
|
1867
|
-
* No permission is granted to copy, distribute, or create derivative works from
|
|
1868
|
-
* the contents of this software, in whole or in part, without the prior written
|
|
1869
|
-
* permission of create3000.
|
|
1870
|
-
*
|
|
1871
|
-
* NON-MILITARY USE ONLY
|
|
1872
|
-
*
|
|
1873
|
-
* All create3000 software are effectively free software with a non-military use
|
|
1874
|
-
* restriction. It is free. Well commented source is provided. You may reuse the
|
|
1875
|
-
* source in any way you please with the exception anything that uses it must be
|
|
1876
|
-
* marked to indicate is contains 'non-military use only' components.
|
|
1877
|
-
*
|
|
1878
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
1879
|
-
*
|
|
1880
|
-
* Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
|
|
1881
|
-
*
|
|
1882
|
-
* This file is part of the X_ITE Project.
|
|
1883
|
-
*
|
|
1884
|
-
* X_ITE is free software: you can redistribute it and/or modify it under the
|
|
1885
|
-
* terms of the GNU General Public License version 3 only, as published by the
|
|
1886
|
-
* Free Software Foundation.
|
|
1887
|
-
*
|
|
1888
|
-
* X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
1889
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
1890
|
-
* A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
|
|
1891
|
-
* details (a copy is included in the LICENSE file that accompanied this code).
|
|
1892
|
-
*
|
|
1893
|
-
* You should have received a copy of the GNU General Public License version 3
|
|
1894
|
-
* along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
|
|
1895
|
-
* copy of the GPLv3 License.
|
|
1896
|
-
*
|
|
1897
|
-
* For Silvio, Joy and Adi.
|
|
1898
|
-
*
|
|
1899
|
-
******************************************************************************/
|
|
1900
1394
|
|
|
1901
1395
|
|
|
1902
1396
|
|
|
@@ -1907,6 +1401,16 @@ const IridescenceMaterialExtension_default_ = IridescenceMaterialExtension;
|
|
|
1907
1401
|
|
|
1908
1402
|
|
|
1909
1403
|
|
|
1404
|
+
// Register key.
|
|
1405
|
+
|
|
1406
|
+
X_ITE_ExtensionKeys .add ("SHEEN_MATERIAL_EXTENSION");
|
|
1407
|
+
|
|
1408
|
+
// Register textures.
|
|
1409
|
+
|
|
1410
|
+
|
|
1411
|
+
|
|
1412
|
+
external_X_ITE_X3D_MaterialTextures_default().add ("x3d_SheenColorTextureEXT");
|
|
1413
|
+
external_X_ITE_X3D_MaterialTextures_default().add ("x3d_SheenRoughnessTextureEXT");
|
|
1910
1414
|
|
|
1911
1415
|
/**
|
|
1912
1416
|
* THIS NODE IS STILL EXPERIMENTAL.
|
|
@@ -1977,6 +1481,12 @@ Object .assign (Object .setPrototypeOf (SheenMaterialExtension .prototype, X_ITE
|
|
|
1977
1481
|
this .sheenColorTextureNode ?.getShaderOptions (options, "SHEEN_COLOR", true);
|
|
1978
1482
|
this .sheenRoughnessTextureNode ?.getShaderOptions (options, "SHEEN_ROUGHNESS", true);
|
|
1979
1483
|
},
|
|
1484
|
+
getShaderUniforms (uniforms)
|
|
1485
|
+
{
|
|
1486
|
+
uniforms .push ("x3d_SheenColorEXT");
|
|
1487
|
+
uniforms .push ("x3d_SheenRoughnessEXT");
|
|
1488
|
+
uniforms .push ("x3d_SheenELUTTextureEXT");
|
|
1489
|
+
},
|
|
1980
1490
|
setShaderUniforms (gl, shaderObject, renderObject, textureTransformMapping, textureCoordinateMapping)
|
|
1981
1491
|
{
|
|
1982
1492
|
gl .uniform3fv (shaderObject .x3d_SheenColorEXT, this .sheenColorArray);
|
|
@@ -1985,7 +1495,7 @@ Object .assign (Object .setPrototypeOf (SheenMaterialExtension .prototype, X_ITE
|
|
|
1985
1495
|
const
|
|
1986
1496
|
browser = this .getBrowser (),
|
|
1987
1497
|
SheenELUTTexture = browser .getLibraryTexture ("lut_sheen_E.png"),
|
|
1988
|
-
SheenELUTTextureUnit = browser .
|
|
1498
|
+
SheenELUTTextureUnit = browser .getTextureUnit ();
|
|
1989
1499
|
|
|
1990
1500
|
gl .activeTexture (gl .TEXTURE0 + SheenELUTTextureUnit);
|
|
1991
1501
|
gl .bindTexture (gl .TEXTURE_2D, SheenELUTTexture .getTexture ());
|
|
@@ -2037,53 +1547,90 @@ const SheenMaterialExtension_default_ = SheenMaterialExtension;
|
|
|
2037
1547
|
;// external "__X_ITE_X3D__ .X3DOneSidedMaterialNode"
|
|
2038
1548
|
const external_X_ITE_X3D_X3DOneSidedMaterialNode_namespaceObject = __X_ITE_X3D__ .X3DOneSidedMaterialNode;
|
|
2039
1549
|
var external_X_ITE_X3D_X3DOneSidedMaterialNode_default = /*#__PURE__*/__webpack_require__.n(external_X_ITE_X3D_X3DOneSidedMaterialNode_namespaceObject);
|
|
1550
|
+
;// ./src/assets/shaders/webgl2/pbr/SpecularGlossiness2.glsl.js
|
|
1551
|
+
|
|
1552
|
+
|
|
1553
|
+
const SpecularGlossiness2_glsl_default_ = () => /* glsl */ `
|
|
1554
|
+
#pragma X3D include "../common/Fragment.glsl"
|
|
1555
|
+
#pragma X3D include "../common/Shadow.glsl"
|
|
1556
|
+
#if defined(X3D_LIGHTING)
|
|
1557
|
+
uniform x3d_LightSourceParameters x3d_LightSource[X3D_NUM_LIGHTS];
|
|
1558
|
+
#endif
|
|
1559
|
+
uniform x3d_PhysicalMaterialParameters x3d_Material;
|
|
1560
|
+
#pragma X3D include "pbr/BRDF.glsl"
|
|
1561
|
+
#pragma X3D include "pbr/MaterialInfo.glsl"
|
|
1562
|
+
#pragma X3D include "pbr/Punctual.glsl"
|
|
1563
|
+
#pragma X3D include "pbr/IBL.glsl"
|
|
1564
|
+
${external_X_ITE_X3D_MaterialTextures_default().texture ("x3d_DiffuseTexture", "rgba", "linear")}
|
|
1565
|
+
vec4 getBaseColor(){float alpha=1.-x3d_Material.transparency;vec4 baseColor=vec4(x3d_Material.diffuseColor,alpha);
|
|
1566
|
+
#if defined(X3D_COLOR_MATERIAL)
|
|
1567
|
+
baseColor*=color;
|
|
1568
|
+
#endif
|
|
1569
|
+
#if defined(X3D_DIFFUSE_TEXTURE)
|
|
1570
|
+
baseColor*=getDiffuseTexture();
|
|
1571
|
+
#elif defined(X3D_TEXTURE)
|
|
1572
|
+
baseColor=getTextureColor(baseColor,vec4(vec3(1),alpha));
|
|
1573
|
+
#endif
|
|
1574
|
+
return baseColor;}
|
|
1575
|
+
${external_X_ITE_X3D_MaterialTextures_default().texture ("x3d_SpecularGlossinessTexture", "rgba", "linear")}
|
|
1576
|
+
MaterialInfo getSpecularGlossinessInfo(in MaterialInfo info){vec3 specular=x3d_Material.specularColor;float glossiness=x3d_Material.glossiness;
|
|
1577
|
+
#if defined(X3D_SPECULAR_GLOSSINESS_TEXTURE)
|
|
1578
|
+
vec4 sgSample=getSpecularGlossinessTexture();glossiness*=sgSample.a;specular*=sgSample.rgb;
|
|
1579
|
+
#endif
|
|
1580
|
+
info.perceptualRoughness=1.-glossiness;info.f0_dielectric=min(specular,vec3(1));return info;}vec4 getMaterialColor(){vec4 baseColor=getBaseColor();
|
|
1581
|
+
#if defined(X3D_TEXTURE_PROJECTION)
|
|
1582
|
+
baseColor.rgb*=getTextureProjectorColor();
|
|
1583
|
+
#endif
|
|
1584
|
+
vec3 color=vec3(0);vec3 v=normalize(-vertex);
|
|
1585
|
+
#if defined(X3D_USE_IBL)||defined(X3D_LIGHTING)
|
|
1586
|
+
NormalInfo normalInfo=getNormalInfo(x3d_Material.normalScale);vec3 n=normalInfo.n;float NdotV=clamp(dot(n,v),0.,1.);
|
|
1587
|
+
#endif
|
|
1588
|
+
MaterialInfo materialInfo;materialInfo.baseColor=baseColor.rgb;materialInfo.f90_dielectric=vec3(1);materialInfo.metallic=0.;materialInfo=getSpecularGlossinessInfo(materialInfo);materialInfo.perceptualRoughness=clamp(materialInfo.perceptualRoughness,0.,1.);materialInfo.alphaRoughness=materialInfo.perceptualRoughness*materialInfo.perceptualRoughness;vec3 f_emissive=vec3(0);
|
|
1589
|
+
#if defined(X3D_USE_IBL)
|
|
1590
|
+
vec3 f_diffuse=getDiffuseLight(n)*baseColor.rgb;vec3 f_specular_dielectric=getIBLRadianceGGX(n,v,materialInfo.perceptualRoughness);vec3 f_dielectric_fresnel_ibl=getIBLGGXFresnel(n,v,materialInfo.perceptualRoughness,materialInfo.f0_dielectric,1.);vec3 f_dielectric_brdf_ibl=mix(f_diffuse,f_specular_dielectric,f_dielectric_fresnel_ibl);color=f_dielectric_brdf_ibl;
|
|
1591
|
+
#if defined(X3D_OCCLUSION_TEXTURE)
|
|
1592
|
+
float ao=getOcclusionFactor();color*=1.+x3d_Material.occlusionStrength*(ao-1.);
|
|
1593
|
+
#endif
|
|
1594
|
+
#endif
|
|
1595
|
+
#if defined(X3D_LIGHTING)
|
|
1596
|
+
for(int i=0;i<X3D_NUM_LIGHTS;++i){x3d_LightSourceParameters light=x3d_LightSource[i];vec3 pointToLight;float distanceToLight;if(light.type!=x3d_DirectionalLight){pointToLight=light.location-vertex;distanceToLight=length(light.matrix*pointToLight);}else{pointToLight=-light.direction;distanceToLight=-1.;}if(distanceToLight<=light.radius||light.radius<0.){vec3 l=normalize(pointToLight);vec3 h=normalize(l+v);float NdotL=clamp(dot(n,l),0.,1.);float NdotV=clamp(dot(n,v),0.,1.);float NdotH=clamp(dot(n,h),0.,1.);float VdotH=clamp(dot(v,h),0.,1.);vec3 dielectric_fresnel=F_Schlick(materialInfo.f0_dielectric,materialInfo.f90_dielectric,abs(VdotH));vec3 lightIntensity=getLightIntensity(light,l,distanceToLight);vec3 intensity=lightIntensity;
|
|
1597
|
+
#if defined(X3D_SHADOWS)
|
|
1598
|
+
lightIntensity=mix(lightIntensity,light.shadowColor,getShadowIntensity(i,light));
|
|
1599
|
+
#endif
|
|
1600
|
+
vec3 l_diffuse=lightIntensity*NdotL*BRDF_lambertian(baseColor.rgb);vec3 l_specular_dielectric=intensity*NdotL*BRDF_specularGGX(materialInfo.alphaRoughness,NdotL,NdotV,NdotH);vec3 l_dielectric_brdf=mix(l_diffuse,l_specular_dielectric,dielectric_fresnel);color+=l_dielectric_brdf;}}
|
|
1601
|
+
#endif
|
|
1602
|
+
f_emissive=getEmissiveColor();
|
|
1603
|
+
#if defined(X3D_UNLIT_MATERIAL_EXT)
|
|
1604
|
+
color=baseColor.rgb;
|
|
1605
|
+
#elif(defined(X3D_GEOMETRY_0D)||defined(X3D_GEOMETRY_1D))&&!defined(X3D_NORMALS)
|
|
1606
|
+
color=f_emissive+baseColor.rgb;
|
|
1607
|
+
#else
|
|
1608
|
+
color=f_emissive+color;
|
|
1609
|
+
#endif
|
|
1610
|
+
return vec4(color,baseColor.a);}void main(){fragment_main();}`
|
|
1611
|
+
;
|
|
1612
|
+
|
|
1613
|
+
/* harmony default export */ const SpecularGlossiness2_glsl = (external_X_ITE_X3D_Namespace_default().add ("SpecularGlossiness2.glsl", SpecularGlossiness2_glsl_default_));
|
|
1614
|
+
;// ./src/assets/shaders/webgl1/SpecularGlossiness1.fs.js
|
|
1615
|
+
const SpecularGlossiness1_fs_default_ = () => /* glsl */ `
|
|
1616
|
+
#extension GL_OES_standard_derivatives:enable
|
|
1617
|
+
#extension GL_EXT_frag_depth:enable
|
|
1618
|
+
#extension GL_EXT_shader_texture_lod:enable
|
|
1619
|
+
precision highp float;precision highp int;precision highp sampler2D;precision highp samplerCube;
|
|
1620
|
+
#pragma X3D include "pbr/SpecularGlossiness.glsl"
|
|
1621
|
+
`
|
|
1622
|
+
;
|
|
1623
|
+
|
|
1624
|
+
/* harmony default export */ const SpecularGlossiness1_fs = (external_X_ITE_X3D_Namespace_default().add ("SpecularGlossiness1.fs", SpecularGlossiness1_fs_default_));
|
|
1625
|
+
;// ./src/assets/shaders/webgl2/SpecularGlossiness2.fs.js
|
|
1626
|
+
const SpecularGlossiness2_fs_default_ = () => /* glsl */ `#version 300 es
|
|
1627
|
+
precision highp float;precision highp int;precision highp sampler2D;precision highp sampler3D;precision highp samplerCube;
|
|
1628
|
+
#pragma X3D include "pbr/SpecularGlossiness.glsl"
|
|
1629
|
+
`
|
|
1630
|
+
;
|
|
1631
|
+
|
|
1632
|
+
/* harmony default export */ const SpecularGlossiness2_fs = (external_X_ITE_X3D_Namespace_default().add ("SpecularGlossiness2.fs", SpecularGlossiness2_fs_default_));
|
|
2040
1633
|
;// ./src/x_ite/Components/X_ITE/SpecularGlossinessMaterial.js
|
|
2041
|
-
/*******************************************************************************
|
|
2042
|
-
*
|
|
2043
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
2044
|
-
*
|
|
2045
|
-
* Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
|
|
2046
|
-
*
|
|
2047
|
-
* All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
|
|
2048
|
-
*
|
|
2049
|
-
* The copyright notice above does not evidence any actual of intended
|
|
2050
|
-
* publication of such source code, and is an unpublished work by create3000.
|
|
2051
|
-
* This material contains CONFIDENTIAL INFORMATION that is the property of
|
|
2052
|
-
* create3000.
|
|
2053
|
-
*
|
|
2054
|
-
* No permission is granted to copy, distribute, or create derivative works from
|
|
2055
|
-
* the contents of this software, in whole or in part, without the prior written
|
|
2056
|
-
* permission of create3000.
|
|
2057
|
-
*
|
|
2058
|
-
* NON-MILITARY USE ONLY
|
|
2059
|
-
*
|
|
2060
|
-
* All create3000 software are effectively free software with a non-military use
|
|
2061
|
-
* restriction. It is free. Well commented source is provided. You may reuse the
|
|
2062
|
-
* source in any way you please with the exception anything that uses it must be
|
|
2063
|
-
* marked to indicate is contains 'non-military use only' components.
|
|
2064
|
-
*
|
|
2065
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
2066
|
-
*
|
|
2067
|
-
* Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
|
|
2068
|
-
*
|
|
2069
|
-
* This file is part of the X_ITE Project.
|
|
2070
|
-
*
|
|
2071
|
-
* X_ITE is free software: you can redistribute it and/or modify it under the
|
|
2072
|
-
* terms of the GNU General Public License version 3 only, as published by the
|
|
2073
|
-
* Free Software Foundation.
|
|
2074
|
-
*
|
|
2075
|
-
* X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
2076
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
2077
|
-
* A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
|
|
2078
|
-
* details (a copy is included in the LICENSE file that accompanied this code).
|
|
2079
|
-
*
|
|
2080
|
-
* You should have received a copy of the GNU General Public License version 3
|
|
2081
|
-
* along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
|
|
2082
|
-
* copy of the GPLv3 License.
|
|
2083
|
-
*
|
|
2084
|
-
* For Silvio, Joy and Adi.
|
|
2085
|
-
*
|
|
2086
|
-
******************************************************************************/
|
|
2087
1634
|
|
|
2088
1635
|
|
|
2089
1636
|
|
|
@@ -2093,6 +1640,15 @@ var external_X_ITE_X3D_X3DOneSidedMaterialNode_default = /*#__PURE__*/__webpack_
|
|
|
2093
1640
|
|
|
2094
1641
|
|
|
2095
1642
|
|
|
1643
|
+
// Register shaders.
|
|
1644
|
+
|
|
1645
|
+
|
|
1646
|
+
|
|
1647
|
+
|
|
1648
|
+
|
|
1649
|
+
|
|
1650
|
+
external_X_ITE_X3D_ShaderRegistry_default().addInclude ("SpecularGlossiness", SpecularGlossiness2_glsl);
|
|
1651
|
+
external_X_ITE_X3D_ShaderRegistry_default().addFragment ("SpecularGlossiness", SpecularGlossiness1_fs, SpecularGlossiness2_fs);
|
|
2096
1652
|
|
|
2097
1653
|
/**
|
|
2098
1654
|
* THIS NODE IS DEPRECIATED SINCE X3D VERSION 4.0.
|
|
@@ -2108,7 +1664,6 @@ function SpecularGlossinessMaterial (executionContext)
|
|
|
2108
1664
|
|
|
2109
1665
|
this .diffuseColorArray = new Float32Array (3);
|
|
2110
1666
|
this .specularColorArray = new Float32Array (3);
|
|
2111
|
-
this .extensionNodes = [ ];
|
|
2112
1667
|
}
|
|
2113
1668
|
|
|
2114
1669
|
Object .assign (Object .setPrototypeOf (SpecularGlossinessMaterial .prototype, (external_X_ITE_X3D_X3DOneSidedMaterialNode_default()).prototype),
|
|
@@ -2125,7 +1680,6 @@ Object .assign (Object .setPrototypeOf (SpecularGlossinessMaterial .prototype, (
|
|
|
2125
1680
|
this ._specularGlossinessTexture .addInterest ("set_specularGlossinessTexture__", this);
|
|
2126
1681
|
this ._occlusionStrength .addInterest ("set_occlusionStrength__", this);
|
|
2127
1682
|
this ._occlusionTexture .addInterest ("set_occlusionTexture__", this);
|
|
2128
|
-
this ._extensions .addInterest ("set_extensions__", this);
|
|
2129
1683
|
|
|
2130
1684
|
this .set_diffuseColor__ ();
|
|
2131
1685
|
this .set_diffuseTexture__ ();
|
|
@@ -2134,12 +1688,11 @@ Object .assign (Object .setPrototypeOf (SpecularGlossinessMaterial .prototype, (
|
|
|
2134
1688
|
this .set_specularGlossinessTexture__ ();
|
|
2135
1689
|
this .set_occlusionStrength__ ();
|
|
2136
1690
|
this .set_occlusionTexture__ ();
|
|
2137
|
-
this .set_extensions__ ();
|
|
2138
1691
|
this .set_transparent__ ();
|
|
2139
1692
|
},
|
|
2140
1693
|
getMaterialKey ()
|
|
2141
1694
|
{
|
|
2142
|
-
return
|
|
1695
|
+
return 4;
|
|
2143
1696
|
},
|
|
2144
1697
|
getTextureIndices: (() =>
|
|
2145
1698
|
{
|
|
@@ -2210,49 +1763,12 @@ Object .assign (Object .setPrototypeOf (SpecularGlossinessMaterial .prototype, (
|
|
|
2210
1763
|
|
|
2211
1764
|
this .setTexture (this .getTextureIndices () .OCCLUSION_TEXTURE, this .occlusionTextureNode);
|
|
2212
1765
|
},
|
|
2213
|
-
set_extensions__ ()
|
|
2214
|
-
{
|
|
2215
|
-
const extensionNodes = this .extensionNodes;
|
|
2216
|
-
|
|
2217
|
-
for (const extensionNode of extensionNodes)
|
|
2218
|
-
extensionNode .removeInterest ("set_extensionsKey__", this);
|
|
2219
|
-
|
|
2220
|
-
extensionNodes .length = 0;
|
|
2221
|
-
|
|
2222
|
-
for (const node of this ._extensions)
|
|
2223
|
-
{
|
|
2224
|
-
const extensionNode = external_X_ITE_X3D_X3DCast_default() ((external_X_ITE_X3D_X3DConstants_default()).X3DMaterialExtensionNode, node);
|
|
2225
|
-
|
|
2226
|
-
if (extensionNode)
|
|
2227
|
-
extensionNodes .push (extensionNode);
|
|
2228
|
-
}
|
|
2229
|
-
|
|
2230
|
-
extensionNodes .sort ((a, b) => a .getExtensionKey () - b .getExtensionKey ());
|
|
2231
|
-
|
|
2232
|
-
for (const extensionNode of extensionNodes)
|
|
2233
|
-
extensionNode .addInterest ("set_extensionsKey__", this);
|
|
2234
|
-
|
|
2235
|
-
this .setTransmission (extensionNodes .some (extensionNode => extensionNode .getType () .includes ((external_X_ITE_X3D_X3DConstants_default()).TransmissionMaterialExtension)));
|
|
2236
|
-
|
|
2237
|
-
this .set_extensionsKey__ ();
|
|
2238
|
-
},
|
|
2239
|
-
set_extensionsKey__ ()
|
|
2240
|
-
{
|
|
2241
|
-
const extensionsKey = this .extensionNodes
|
|
2242
|
-
.map (extensionNode => `${extensionNode .getExtensionKey () .toString (16)}${extensionNode .getTextureBits () .toString (16)}`)
|
|
2243
|
-
.join ("");
|
|
2244
|
-
|
|
2245
|
-
this .materialKey = `[4.${extensionsKey}]`;
|
|
2246
|
-
},
|
|
2247
1766
|
createShader (key, geometryContext, renderContext)
|
|
2248
1767
|
{
|
|
2249
1768
|
const
|
|
2250
1769
|
browser = this .getBrowser (),
|
|
2251
1770
|
options = this .getShaderOptions (geometryContext, renderContext);
|
|
2252
1771
|
|
|
2253
|
-
for (const extensionNode of this .extensionNodes)
|
|
2254
|
-
extensionNode .getShaderOptions (options);
|
|
2255
|
-
|
|
2256
1772
|
options .push ("X3D_PHYSICAL_MATERIAL", "X3D_MATERIAL_SPECULAR_GLOSSINESS");
|
|
2257
1773
|
|
|
2258
1774
|
if (+this .getTextureBits ())
|
|
@@ -2262,7 +1778,7 @@ Object .assign (Object .setPrototypeOf (SpecularGlossinessMaterial .prototype, (
|
|
|
2262
1778
|
this .occlusionTextureNode ?.getShaderOptions (options, "OCCLUSION");
|
|
2263
1779
|
}
|
|
2264
1780
|
|
|
2265
|
-
const shaderNode = browser .createShader ("SpecularGlossiness", "Default", "
|
|
1781
|
+
const shaderNode = browser .createShader ("SpecularGlossiness", "Default", "SpecularGlossiness", options);
|
|
2266
1782
|
|
|
2267
1783
|
browser .getShaders () .set (key, shaderNode);
|
|
2268
1784
|
|
|
@@ -2272,9 +1788,6 @@ Object .assign (Object .setPrototypeOf (SpecularGlossinessMaterial .prototype, (
|
|
|
2272
1788
|
{
|
|
2273
1789
|
external_X_ITE_X3D_X3DOneSidedMaterialNode_default().prototype .setShaderUniforms .call (this, gl, shaderObject, renderObject, textureTransformMapping, textureCoordinateMapping);
|
|
2274
1790
|
|
|
2275
|
-
for (const extensionNode of this .extensionNodes)
|
|
2276
|
-
extensionNode .setShaderUniforms (gl, shaderObject, renderObject, textureTransformMapping, textureCoordinateMapping);
|
|
2277
|
-
|
|
2278
1791
|
gl .uniform3fv (shaderObject .x3d_DiffuseColor, this .diffuseColorArray);
|
|
2279
1792
|
gl .uniform3fv (shaderObject .x3d_SpecularColor, this .specularColorArray);
|
|
2280
1793
|
gl .uniform1f (shaderObject .x3d_Glossiness, this .glossiness);
|
|
@@ -2337,7 +1850,6 @@ Object .defineProperties (SpecularGlossinessMaterial,
|
|
|
2337
1850
|
new (external_X_ITE_X3D_X3DFieldDefinition_default()) ((external_X_ITE_X3D_X3DConstants_default()).inputOutput, "normalTextureMapping", new (external_X_ITE_X3D_Fields_default()).SFString ()),
|
|
2338
1851
|
new (external_X_ITE_X3D_X3DFieldDefinition_default()) ((external_X_ITE_X3D_X3DConstants_default()).inputOutput, "normalTexture", new (external_X_ITE_X3D_Fields_default()).SFNode ()),
|
|
2339
1852
|
new (external_X_ITE_X3D_X3DFieldDefinition_default()) ((external_X_ITE_X3D_X3DConstants_default()).inputOutput, "transparency", new (external_X_ITE_X3D_Fields_default()).SFFloat ()),
|
|
2340
|
-
new (external_X_ITE_X3D_X3DFieldDefinition_default()) ((external_X_ITE_X3D_X3DConstants_default()).inputOutput, "extensions", new (external_X_ITE_X3D_Fields_default()).MFNode ()), // experimental
|
|
2341
1853
|
]),
|
|
2342
1854
|
enumerable: true,
|
|
2343
1855
|
},
|
|
@@ -2356,52 +1868,6 @@ const SpecularGlossinessMaterial_default_ = SpecularGlossinessMaterial;
|
|
|
2356
1868
|
|
|
2357
1869
|
/* harmony default export */ const X_ITE_SpecularGlossinessMaterial = (external_X_ITE_X3D_Namespace_default().add ("SpecularGlossinessMaterial", SpecularGlossinessMaterial_default_));
|
|
2358
1870
|
;// ./src/x_ite/Components/X_ITE/SpecularMaterialExtension.js
|
|
2359
|
-
/*******************************************************************************
|
|
2360
|
-
*
|
|
2361
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
2362
|
-
*
|
|
2363
|
-
* Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
|
|
2364
|
-
*
|
|
2365
|
-
* All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
|
|
2366
|
-
*
|
|
2367
|
-
* The copyright notice above does not evidence any actual of intended
|
|
2368
|
-
* publication of such source code, and is an unpublished work by create3000.
|
|
2369
|
-
* This material contains CONFIDENTIAL INFORMATION that is the property of
|
|
2370
|
-
* create3000.
|
|
2371
|
-
*
|
|
2372
|
-
* No permission is granted to copy, distribute, or create derivative works from
|
|
2373
|
-
* the contents of this software, in whole or in part, without the prior written
|
|
2374
|
-
* permission of create3000.
|
|
2375
|
-
*
|
|
2376
|
-
* NON-MILITARY USE ONLY
|
|
2377
|
-
*
|
|
2378
|
-
* All create3000 software are effectively free software with a non-military use
|
|
2379
|
-
* restriction. It is free. Well commented source is provided. You may reuse the
|
|
2380
|
-
* source in any way you please with the exception anything that uses it must be
|
|
2381
|
-
* marked to indicate is contains 'non-military use only' components.
|
|
2382
|
-
*
|
|
2383
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
2384
|
-
*
|
|
2385
|
-
* Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
|
|
2386
|
-
*
|
|
2387
|
-
* This file is part of the X_ITE Project.
|
|
2388
|
-
*
|
|
2389
|
-
* X_ITE is free software: you can redistribute it and/or modify it under the
|
|
2390
|
-
* terms of the GNU General Public License version 3 only, as published by the
|
|
2391
|
-
* Free Software Foundation.
|
|
2392
|
-
*
|
|
2393
|
-
* X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
2394
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
2395
|
-
* A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
|
|
2396
|
-
* details (a copy is included in the LICENSE file that accompanied this code).
|
|
2397
|
-
*
|
|
2398
|
-
* You should have received a copy of the GNU General Public License version 3
|
|
2399
|
-
* along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
|
|
2400
|
-
* copy of the GPLv3 License.
|
|
2401
|
-
*
|
|
2402
|
-
* For Silvio, Joy and Adi.
|
|
2403
|
-
*
|
|
2404
|
-
******************************************************************************/
|
|
2405
1871
|
|
|
2406
1872
|
|
|
2407
1873
|
|
|
@@ -2411,6 +1877,16 @@ const SpecularGlossinessMaterial_default_ = SpecularGlossinessMaterial;
|
|
|
2411
1877
|
|
|
2412
1878
|
|
|
2413
1879
|
|
|
1880
|
+
// Register key.
|
|
1881
|
+
|
|
1882
|
+
X_ITE_ExtensionKeys .add ("SPECULAR_MATERIAL_EXTENSION");
|
|
1883
|
+
|
|
1884
|
+
// Register textures.
|
|
1885
|
+
|
|
1886
|
+
|
|
1887
|
+
|
|
1888
|
+
external_X_ITE_X3D_MaterialTextures_default().add ("x3d_SpecularTextureEXT");
|
|
1889
|
+
external_X_ITE_X3D_MaterialTextures_default().add ("x3d_SpecularColorTextureEXT");
|
|
2414
1890
|
|
|
2415
1891
|
/**
|
|
2416
1892
|
* THIS NODE IS STILL EXPERIMENTAL.
|
|
@@ -2477,6 +1953,11 @@ Object .assign (Object .setPrototypeOf (SpecularMaterialExtension .prototype, X_
|
|
|
2477
1953
|
this .specularTextureNode ?.getShaderOptions (options, "SPECULAR", true);
|
|
2478
1954
|
this .specularColorTextureNode ?.getShaderOptions (options, "SPECULAR_COLOR", true);
|
|
2479
1955
|
},
|
|
1956
|
+
getShaderUniforms (uniforms)
|
|
1957
|
+
{
|
|
1958
|
+
uniforms .push ("x3d_SpecularEXT");
|
|
1959
|
+
uniforms .push ("x3d_SpecularColorEXT");
|
|
1960
|
+
},
|
|
2480
1961
|
setShaderUniforms (gl, shaderObject, renderObject, textureTransformMapping, textureCoordinateMapping)
|
|
2481
1962
|
{
|
|
2482
1963
|
gl .uniform1f (shaderObject .x3d_SpecularEXT, this .specular);
|
|
@@ -2526,52 +2007,6 @@ const SpecularMaterialExtension_default_ = SpecularMaterialExtension;
|
|
|
2526
2007
|
|
|
2527
2008
|
/* harmony default export */ const X_ITE_SpecularMaterialExtension = (external_X_ITE_X3D_Namespace_default().add ("SpecularMaterialExtension", SpecularMaterialExtension_default_));
|
|
2528
2009
|
;// ./src/x_ite/Components/X_ITE/TransmissionMaterialExtension.js
|
|
2529
|
-
/*******************************************************************************
|
|
2530
|
-
*
|
|
2531
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
2532
|
-
*
|
|
2533
|
-
* Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
|
|
2534
|
-
*
|
|
2535
|
-
* All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
|
|
2536
|
-
*
|
|
2537
|
-
* The copyright notice above does not evidence any actual of intended
|
|
2538
|
-
* publication of such source code, and is an unpublished work by create3000.
|
|
2539
|
-
* This material contains CONFIDENTIAL INFORMATION that is the property of
|
|
2540
|
-
* create3000.
|
|
2541
|
-
*
|
|
2542
|
-
* No permission is granted to copy, distribute, or create derivative works from
|
|
2543
|
-
* the contents of this software, in whole or in part, without the prior written
|
|
2544
|
-
* permission of create3000.
|
|
2545
|
-
*
|
|
2546
|
-
* NON-MILITARY USE ONLY
|
|
2547
|
-
*
|
|
2548
|
-
* All create3000 software are effectively free software with a non-military use
|
|
2549
|
-
* restriction. It is free. Well commented source is provided. You may reuse the
|
|
2550
|
-
* source in any way you please with the exception anything that uses it must be
|
|
2551
|
-
* marked to indicate is contains 'non-military use only' components.
|
|
2552
|
-
*
|
|
2553
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
2554
|
-
*
|
|
2555
|
-
* Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
|
|
2556
|
-
*
|
|
2557
|
-
* This file is part of the X_ITE Project.
|
|
2558
|
-
*
|
|
2559
|
-
* X_ITE is free software: you can redistribute it and/or modify it under the
|
|
2560
|
-
* terms of the GNU General Public License version 3 only, as published by the
|
|
2561
|
-
* Free Software Foundation.
|
|
2562
|
-
*
|
|
2563
|
-
* X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
2564
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
2565
|
-
* A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
|
|
2566
|
-
* details (a copy is included in the LICENSE file that accompanied this code).
|
|
2567
|
-
*
|
|
2568
|
-
* You should have received a copy of the GNU General Public License version 3
|
|
2569
|
-
* along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
|
|
2570
|
-
* copy of the GPLv3 License.
|
|
2571
|
-
*
|
|
2572
|
-
* For Silvio, Joy and Adi.
|
|
2573
|
-
*
|
|
2574
|
-
******************************************************************************/
|
|
2575
2010
|
|
|
2576
2011
|
|
|
2577
2012
|
|
|
@@ -2582,6 +2017,16 @@ const SpecularMaterialExtension_default_ = SpecularMaterialExtension;
|
|
|
2582
2017
|
|
|
2583
2018
|
|
|
2584
2019
|
|
|
2020
|
+
// Register key.
|
|
2021
|
+
|
|
2022
|
+
X_ITE_ExtensionKeys .add ("TRANSMISSION_MATERIAL_EXTENSION");
|
|
2023
|
+
|
|
2024
|
+
// Register textures.
|
|
2025
|
+
|
|
2026
|
+
|
|
2027
|
+
|
|
2028
|
+
external_X_ITE_X3D_MaterialTextures_default().add ("x3d_TransmissionTextureEXT");
|
|
2029
|
+
|
|
2585
2030
|
/**
|
|
2586
2031
|
* THIS NODE IS STILL EXPERIMENTAL.
|
|
2587
2032
|
*/
|
|
@@ -2607,7 +2052,7 @@ Object .assign (Object .setPrototypeOf (TransmissionMaterialExtension .prototype
|
|
|
2607
2052
|
},
|
|
2608
2053
|
set_transmission__ ()
|
|
2609
2054
|
{
|
|
2610
|
-
this .transmission =
|
|
2055
|
+
this .transmission = external_X_ITE_X3D_Algorithm_default().clamp (this ._transmission .getValue (), 0, 1);
|
|
2611
2056
|
},
|
|
2612
2057
|
set_transmissionTexture__ ()
|
|
2613
2058
|
{
|
|
@@ -2630,6 +2075,11 @@ Object .assign (Object .setPrototypeOf (TransmissionMaterialExtension .prototype
|
|
|
2630
2075
|
|
|
2631
2076
|
this .transmissionTextureNode ?.getShaderOptions (options, "TRANSMISSION", true);
|
|
2632
2077
|
},
|
|
2078
|
+
getShaderUniforms (uniforms)
|
|
2079
|
+
{
|
|
2080
|
+
uniforms .push ("x3d_TransmissionEXT");
|
|
2081
|
+
uniforms .push ("x3d_TransmissionSamplerEXT");
|
|
2082
|
+
},
|
|
2633
2083
|
setShaderUniforms: (() =>
|
|
2634
2084
|
{
|
|
2635
2085
|
const zeros = new Float32Array (16);
|
|
@@ -2645,7 +2095,7 @@ Object .assign (Object .setPrototypeOf (TransmissionMaterialExtension .prototype
|
|
|
2645
2095
|
if (renderObject .isTransmission ())
|
|
2646
2096
|
{
|
|
2647
2097
|
var
|
|
2648
|
-
transmissionUnit = browser .
|
|
2098
|
+
transmissionUnit = browser .getTextureUnit (),
|
|
2649
2099
|
transmissionBufferTexture = browser .getDefaultTexture2D ();
|
|
2650
2100
|
|
|
2651
2101
|
// Hide object by using a model view matrix with zeros.
|
|
@@ -2655,7 +2105,7 @@ Object .assign (Object .setPrototypeOf (TransmissionMaterialExtension .prototype
|
|
|
2655
2105
|
{
|
|
2656
2106
|
var
|
|
2657
2107
|
transmissionBuffer = browser .getTransmissionBuffer (),
|
|
2658
|
-
transmissionUnit = browser .
|
|
2108
|
+
transmissionUnit = browser .getTextureUnit (),
|
|
2659
2109
|
transmissionBufferTexture = transmissionBuffer .getColorTexture ();
|
|
2660
2110
|
}
|
|
2661
2111
|
|
|
@@ -2697,52 +2147,6 @@ const TransmissionMaterialExtension_default_ = TransmissionMaterialExtension;
|
|
|
2697
2147
|
|
|
2698
2148
|
/* harmony default export */ const X_ITE_TransmissionMaterialExtension = (external_X_ITE_X3D_Namespace_default().add ("TransmissionMaterialExtension", TransmissionMaterialExtension_default_));
|
|
2699
2149
|
;// ./src/x_ite/Components/X_ITE/VolumeMaterialExtension.js
|
|
2700
|
-
/*******************************************************************************
|
|
2701
|
-
*
|
|
2702
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
2703
|
-
*
|
|
2704
|
-
* Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
|
|
2705
|
-
*
|
|
2706
|
-
* All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
|
|
2707
|
-
*
|
|
2708
|
-
* The copyright notice above does not evidence any actual of intended
|
|
2709
|
-
* publication of such source code, and is an unpublished work by create3000.
|
|
2710
|
-
* This material contains CONFIDENTIAL INFORMATION that is the property of
|
|
2711
|
-
* create3000.
|
|
2712
|
-
*
|
|
2713
|
-
* No permission is granted to copy, distribute, or create derivative works from
|
|
2714
|
-
* the contents of this software, in whole or in part, without the prior written
|
|
2715
|
-
* permission of create3000.
|
|
2716
|
-
*
|
|
2717
|
-
* NON-MILITARY USE ONLY
|
|
2718
|
-
*
|
|
2719
|
-
* All create3000 software are effectively free software with a non-military use
|
|
2720
|
-
* restriction. It is free. Well commented source is provided. You may reuse the
|
|
2721
|
-
* source in any way you please with the exception anything that uses it must be
|
|
2722
|
-
* marked to indicate is contains 'non-military use only' components.
|
|
2723
|
-
*
|
|
2724
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
2725
|
-
*
|
|
2726
|
-
* Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
|
|
2727
|
-
*
|
|
2728
|
-
* This file is part of the X_ITE Project.
|
|
2729
|
-
*
|
|
2730
|
-
* X_ITE is free software: you can redistribute it and/or modify it under the
|
|
2731
|
-
* terms of the GNU General Public License version 3 only, as published by the
|
|
2732
|
-
* Free Software Foundation.
|
|
2733
|
-
*
|
|
2734
|
-
* X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
2735
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
2736
|
-
* A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
|
|
2737
|
-
* details (a copy is included in the LICENSE file that accompanied this code).
|
|
2738
|
-
*
|
|
2739
|
-
* You should have received a copy of the GNU General Public License version 3
|
|
2740
|
-
* along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
|
|
2741
|
-
* copy of the GPLv3 License.
|
|
2742
|
-
*
|
|
2743
|
-
* For Silvio, Joy and Adi.
|
|
2744
|
-
*
|
|
2745
|
-
******************************************************************************/
|
|
2746
2150
|
|
|
2747
2151
|
|
|
2748
2152
|
|
|
@@ -2752,6 +2156,15 @@ const TransmissionMaterialExtension_default_ = TransmissionMaterialExtension;
|
|
|
2752
2156
|
|
|
2753
2157
|
|
|
2754
2158
|
|
|
2159
|
+
// Register key.
|
|
2160
|
+
|
|
2161
|
+
X_ITE_ExtensionKeys .add ("VOLUME_MATERIAL_EXTENSION");
|
|
2162
|
+
|
|
2163
|
+
// Register textures.
|
|
2164
|
+
|
|
2165
|
+
|
|
2166
|
+
|
|
2167
|
+
external_X_ITE_X3D_MaterialTextures_default().add ("x3d_ThicknessTextureEXT");
|
|
2755
2168
|
|
|
2756
2169
|
/**
|
|
2757
2170
|
* THIS NODE IS STILL EXPERIMENTAL.
|
|
@@ -2822,6 +2235,12 @@ Object .assign (Object .setPrototypeOf (VolumeMaterialExtension .prototype, X_IT
|
|
|
2822
2235
|
|
|
2823
2236
|
this .thicknessTextureNode ?.getShaderOptions (options, "THICKNESS", true);
|
|
2824
2237
|
},
|
|
2238
|
+
getShaderUniforms (uniforms)
|
|
2239
|
+
{
|
|
2240
|
+
uniforms .push ("x3d_ThicknessEXT");
|
|
2241
|
+
uniforms .push ("x3d_AttenuationDistanceEXT");
|
|
2242
|
+
uniforms .push ("x3d_AttenuationColorEXT");
|
|
2243
|
+
},
|
|
2825
2244
|
setShaderUniforms (gl, shaderObject, renderObject, textureTransformMapping, textureCoordinateMapping)
|
|
2826
2245
|
{
|
|
2827
2246
|
gl .uniform1f (shaderObject .x3d_ThicknessEXT, this .thickness);
|
|
@@ -2863,53 +2282,6 @@ const VolumeMaterialExtension_default_ = VolumeMaterialExtension;
|
|
|
2863
2282
|
|
|
2864
2283
|
/* harmony default export */ const X_ITE_VolumeMaterialExtension = (external_X_ITE_X3D_Namespace_default().add ("VolumeMaterialExtension", VolumeMaterialExtension_default_));
|
|
2865
2284
|
;// ./src/assets/components/X_ITEComponent.js
|
|
2866
|
-
/*******************************************************************************
|
|
2867
|
-
*
|
|
2868
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
2869
|
-
*
|
|
2870
|
-
* Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
|
|
2871
|
-
*
|
|
2872
|
-
* All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
|
|
2873
|
-
*
|
|
2874
|
-
* The copyright notice above does not evidence any actual of intended
|
|
2875
|
-
* publication of such source code, and is an unpublished work by create3000.
|
|
2876
|
-
* This material contains CONFIDENTIAL INFORMATION that is the property of
|
|
2877
|
-
* create3000.
|
|
2878
|
-
*
|
|
2879
|
-
* No permission is granted to copy, distribute, or create derivative works from
|
|
2880
|
-
* the contents of this software, in whole or in part, without the prior written
|
|
2881
|
-
* permission of create3000.
|
|
2882
|
-
*
|
|
2883
|
-
* NON-MILITARY USE ONLY
|
|
2884
|
-
*
|
|
2885
|
-
* All create3000 software are effectively free software with a non-military use
|
|
2886
|
-
* restriction. It is free. Well commented source is provided. You may reuse the
|
|
2887
|
-
* source in any way you please with the exception anything that uses it must be
|
|
2888
|
-
* marked to indicate is contains 'non-military use only' components.
|
|
2889
|
-
*
|
|
2890
|
-
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
2891
|
-
*
|
|
2892
|
-
* Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
|
|
2893
|
-
*
|
|
2894
|
-
* This file is part of the X_ITE Project.
|
|
2895
|
-
*
|
|
2896
|
-
* X_ITE is free software: you can redistribute it and/or modify it under the
|
|
2897
|
-
* terms of the GNU General Public License version 3 only, as published by the
|
|
2898
|
-
* Free Software Foundation.
|
|
2899
|
-
*
|
|
2900
|
-
* X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
2901
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
2902
|
-
* A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
|
|
2903
|
-
* details (a copy is included in the LICENSE file that accompanied this code).
|
|
2904
|
-
*
|
|
2905
|
-
* You should have received a copy of the GNU General Public License version 3
|
|
2906
|
-
* along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
|
|
2907
|
-
* copy of the GPLv3 License.
|
|
2908
|
-
*
|
|
2909
|
-
* For Silvio, Joy and Adi.
|
|
2910
|
-
*
|
|
2911
|
-
******************************************************************************/
|
|
2912
|
-
|
|
2913
2285
|
|
|
2914
2286
|
|
|
2915
2287
|
|