@babylonjs/gui 5.21.0 → 5.23.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/2D/adtInstrumentation.js +70 -90
- package/2D/adtInstrumentation.js.map +1 -1
- package/2D/advancedDynamicTexture.d.ts +12 -0
- package/2D/advancedDynamicTexture.js +569 -622
- package/2D/advancedDynamicTexture.js.map +1 -1
- package/2D/controls/button.js +76 -90
- package/2D/controls/button.js.map +1 -1
- package/2D/controls/checkbox.js +86 -106
- package/2D/controls/checkbox.js.map +1 -1
- package/2D/controls/colorpicker.js +395 -415
- package/2D/controls/colorpicker.js.map +1 -1
- package/2D/controls/container.js +187 -230
- package/2D/controls/container.js.map +1 -1
- package/2D/controls/control.js +1067 -1353
- package/2D/controls/control.js.map +1 -1
- package/2D/controls/displayGrid.js +152 -196
- package/2D/controls/displayGrid.js.map +1 -1
- package/2D/controls/ellipse.js +32 -40
- package/2D/controls/ellipse.js.map +1 -1
- package/2D/controls/focusableButton.js +30 -35
- package/2D/controls/focusableButton.js.map +1 -1
- package/2D/controls/grid.js +172 -212
- package/2D/controls/grid.js.map +1 -1
- package/2D/controls/image.js +489 -592
- package/2D/controls/image.js.map +1 -1
- package/2D/controls/inputPassword.js +9 -16
- package/2D/controls/inputPassword.js.map +1 -1
- package/2D/controls/inputText.js +380 -467
- package/2D/controls/inputText.js.map +1 -1
- package/2D/controls/inputTextArea.js +234 -273
- package/2D/controls/inputTextArea.js.map +1 -1
- package/2D/controls/line.js +147 -198
- package/2D/controls/line.js.map +1 -1
- package/2D/controls/multiLine.js +87 -113
- package/2D/controls/multiLine.js.map +1 -1
- package/2D/controls/radioButton.js +106 -127
- package/2D/controls/radioButton.js.map +1 -1
- package/2D/controls/rectangle.js +60 -72
- package/2D/controls/rectangle.js.map +1 -1
- package/2D/controls/scrollViewers/scrollViewer.js +439 -543
- package/2D/controls/scrollViewers/scrollViewer.js.map +1 -1
- package/2D/controls/scrollViewers/scrollViewerWindow.js +99 -118
- package/2D/controls/scrollViewers/scrollViewerWindow.js.map +1 -1
- package/2D/controls/selector.js +241 -329
- package/2D/controls/selector.js.map +1 -1
- package/2D/controls/sliders/baseSlider.js +182 -230
- package/2D/controls/sliders/baseSlider.js.map +1 -1
- package/2D/controls/sliders/imageBasedSlider.js +86 -109
- package/2D/controls/sliders/imageBasedSlider.js.map +1 -1
- package/2D/controls/sliders/imageScrollBar.js +148 -178
- package/2D/controls/sliders/imageScrollBar.js.map +1 -1
- package/2D/controls/sliders/scrollBar.js +64 -80
- package/2D/controls/sliders/scrollBar.js.map +1 -1
- package/2D/controls/sliders/slider.js +91 -115
- package/2D/controls/sliders/slider.js.map +1 -1
- package/2D/controls/stackPanel.js +114 -135
- package/2D/controls/stackPanel.js.map +1 -1
- package/2D/controls/statics.js +5 -5
- package/2D/controls/statics.js.map +1 -1
- package/2D/controls/textBlock.js +322 -384
- package/2D/controls/textBlock.js.map +1 -1
- package/2D/controls/textWrapper.js +27 -41
- package/2D/controls/textWrapper.js.map +1 -1
- package/2D/controls/toggleButton.js +105 -121
- package/2D/controls/toggleButton.js.map +1 -1
- package/2D/controls/virtualKeyboard.js +101 -123
- package/2D/controls/virtualKeyboard.js.map +1 -1
- package/2D/math2D.js +62 -70
- package/2D/math2D.js.map +1 -1
- package/2D/measure.js +30 -32
- package/2D/measure.js.map +1 -1
- package/2D/multiLinePoint.js +71 -89
- package/2D/multiLinePoint.js.map +1 -1
- package/2D/style.js +55 -73
- package/2D/style.js.map +1 -1
- package/2D/valueAndUnit.js +71 -104
- package/2D/valueAndUnit.js.map +1 -1
- package/2D/xmlLoader.js +70 -84
- package/2D/xmlLoader.js.map +1 -1
- package/3D/behaviors/defaultBehavior.js +40 -59
- package/3D/behaviors/defaultBehavior.js.map +1 -1
- package/3D/controls/abstractButton3D.js +8 -12
- package/3D/controls/abstractButton3D.js.map +1 -1
- package/3D/controls/button3D.js +30 -35
- package/3D/controls/button3D.js.map +1 -1
- package/3D/controls/container3D.js +57 -71
- package/3D/controls/container3D.js.map +1 -1
- package/3D/controls/contentDisplay3D.js +47 -60
- package/3D/controls/contentDisplay3D.js.map +1 -1
- package/3D/controls/control3D.js +123 -158
- package/3D/controls/control3D.js.map +1 -1
- package/3D/controls/cylinderPanel.js +28 -38
- package/3D/controls/cylinderPanel.js.map +1 -1
- package/3D/controls/handMenu.js +20 -29
- package/3D/controls/handMenu.js.map +1 -1
- package/3D/controls/holographicBackplate.js +52 -72
- package/3D/controls/holographicBackplate.js.map +1 -1
- package/3D/controls/holographicButton.js +160 -200
- package/3D/controls/holographicButton.js.map +1 -1
- package/3D/controls/holographicSlate.js +176 -206
- package/3D/controls/holographicSlate.js.map +1 -1
- package/3D/controls/meshButton3D.js +24 -30
- package/3D/controls/meshButton3D.js.map +1 -1
- package/3D/controls/nearMenu.js +57 -71
- package/3D/controls/nearMenu.js.map +1 -1
- package/3D/controls/planePanel.js +6 -13
- package/3D/controls/planePanel.js.map +1 -1
- package/3D/controls/scatterPanel.js +43 -54
- package/3D/controls/scatterPanel.js.map +1 -1
- package/3D/controls/slider3D.js +168 -222
- package/3D/controls/slider3D.js.map +1 -1
- package/3D/controls/spherePanel.js +29 -39
- package/3D/controls/spherePanel.js.map +1 -1
- package/3D/controls/stackPanel3D.js +36 -49
- package/3D/controls/stackPanel3D.js.map +1 -1
- package/3D/controls/touchButton3D.js +126 -154
- package/3D/controls/touchButton3D.js.map +1 -1
- package/3D/controls/touchHolographicButton.js +223 -272
- package/3D/controls/touchHolographicButton.js.map +1 -1
- package/3D/controls/touchHolographicMenu.js +55 -66
- package/3D/controls/touchHolographicMenu.js.map +1 -1
- package/3D/controls/touchMeshButton3D.js +24 -30
- package/3D/controls/touchMeshButton3D.js.map +1 -1
- package/3D/controls/volumeBasedPanel.js +85 -107
- package/3D/controls/volumeBasedPanel.js.map +1 -1
- package/3D/gizmos/gizmoHandle.js +68 -103
- package/3D/gizmos/gizmoHandle.js.map +1 -1
- package/3D/gizmos/slateGizmo.js +165 -182
- package/3D/gizmos/slateGizmo.js.map +1 -1
- package/3D/gui3DManager.js +76 -101
- package/3D/gui3DManager.js.map +1 -1
- package/3D/materials/fluent/fluentMaterial.js +110 -119
- package/3D/materials/fluent/fluentMaterial.js.map +1 -1
- package/3D/materials/fluent/shaders/fluent.fragment.js +20 -3
- package/3D/materials/fluent/shaders/fluent.fragment.js.map +1 -1
- package/3D/materials/fluent/shaders/fluent.vertex.js +11 -3
- package/3D/materials/fluent/shaders/fluent.vertex.js.map +1 -1
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.js +168 -177
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.js.map +1 -1
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment.js +9 -3
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment.js.map +1 -1
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex.js +15 -3
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex.js.map +1 -1
- package/3D/materials/fluentButton/fluentButtonMaterial.js +205 -213
- package/3D/materials/fluentButton/fluentButtonMaterial.js.map +1 -1
- package/3D/materials/fluentButton/shaders/fluentButton.fragment.js +6 -3
- package/3D/materials/fluentButton/shaders/fluentButton.fragment.js.map +1 -1
- package/3D/materials/fluentButton/shaders/fluentButton.vertex.js +6 -3
- package/3D/materials/fluentButton/shaders/fluentButton.vertex.js.map +1 -1
- package/3D/materials/handle/handleMaterial.js +56 -69
- package/3D/materials/handle/handleMaterial.js.map +1 -1
- package/3D/materials/handle/shaders/handle.fragment.js +3 -3
- package/3D/materials/handle/shaders/handle.fragment.js.map +1 -1
- package/3D/materials/handle/shaders/handle.vertex.js +3 -3
- package/3D/materials/handle/shaders/handle.vertex.js.map +1 -1
- package/3D/materials/mrdl/mrdlBackplateMaterial.js +158 -166
- package/3D/materials/mrdl/mrdlBackplateMaterial.js.map +1 -1
- package/3D/materials/mrdl/mrdlSliderBarMaterial.js +322 -330
- package/3D/materials/mrdl/mrdlSliderBarMaterial.js.map +1 -1
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.js +322 -330
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.js.map +1 -1
- package/3D/materials/mrdl/shaders/mrdlBackplate.fragment.js +9 -3
- package/3D/materials/mrdl/shaders/mrdlBackplate.fragment.js.map +1 -1
- package/3D/materials/mrdl/shaders/mrdlBackplate.vertex.js +6 -3
- package/3D/materials/mrdl/shaders/mrdlBackplate.vertex.js.map +1 -1
- package/3D/materials/mrdl/shaders/mrdlSliderBar.fragment.js +24 -3
- package/3D/materials/mrdl/shaders/mrdlSliderBar.fragment.js.map +1 -1
- package/3D/materials/mrdl/shaders/mrdlSliderBar.vertex.js +12 -3
- package/3D/materials/mrdl/shaders/mrdlSliderBar.vertex.js.map +1 -1
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment.js +24 -3
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment.js.map +1 -1
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex.js +12 -3
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex.js.map +1 -1
- package/3D/vector3WithInfo.js +6 -12
- package/3D/vector3WithInfo.js.map +1 -1
- package/legacy/legacy.js +1 -1
- package/legacy/legacy.js.map +1 -1
- package/package.json +3 -6
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __decorate
|
|
1
|
+
import { __decorate } from "@babylonjs/core/tslib.es6.js";
|
|
2
2
|
import { SerializationHelper, serialize, serializeAsVector3 } from "@babylonjs/core/Misc/decorators.js";
|
|
3
3
|
import { Vector3, Vector4 } from "@babylonjs/core/Maths/math.vector.js";
|
|
4
4
|
import { Texture } from "@babylonjs/core/Materials/Textures/texture.js";
|
|
@@ -13,154 +13,149 @@ import { Constants } from "@babylonjs/core/Engines/constants.js";
|
|
|
13
13
|
import "./shaders/fluentBackplate.fragment.js";
|
|
14
14
|
import "./shaders/fluentBackplate.vertex.js";
|
|
15
15
|
/** @hidden */
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
_this.rebuild();
|
|
26
|
-
return _this;
|
|
16
|
+
class FluentBackplateMaterialDefines extends MaterialDefines {
|
|
17
|
+
constructor() {
|
|
18
|
+
super();
|
|
19
|
+
this.BLOB_ENABLE = true;
|
|
20
|
+
this.BLOB_ENABLE_2 = true;
|
|
21
|
+
this.SMOOTH_EDGES = true;
|
|
22
|
+
this.IRIDESCENT_MAP_ENABLE = true;
|
|
23
|
+
this._needNormals = true;
|
|
24
|
+
this.rebuild();
|
|
27
25
|
}
|
|
28
|
-
|
|
29
|
-
}(MaterialDefines));
|
|
26
|
+
}
|
|
30
27
|
/**
|
|
31
28
|
* Class used to render square buttons with fluent design
|
|
32
29
|
*/
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
var _this = _super.call(this, name, scene) || this;
|
|
30
|
+
export class FluentBackplateMaterial extends PushMaterial {
|
|
31
|
+
constructor(name, scene) {
|
|
32
|
+
super(name, scene);
|
|
37
33
|
/**
|
|
38
34
|
* Gets or sets the corner radius on the backplate. Best to keep this value between 0.01 and 0.5. Default is 0.03.
|
|
39
35
|
*/
|
|
40
|
-
|
|
36
|
+
this.radius = 0.03;
|
|
41
37
|
/**
|
|
42
38
|
* Gets or sets the line width of the backplate.
|
|
43
39
|
*/
|
|
44
|
-
|
|
40
|
+
this.lineWidth = 0.01;
|
|
45
41
|
/**
|
|
46
42
|
* Gets or sets whether to use absolute sizes when calculating effects on the backplate.
|
|
47
43
|
* Since desktop and VR/AR have different relative sizes, it's usually best to keep this false.
|
|
48
44
|
*/
|
|
49
|
-
|
|
45
|
+
this.absoluteSizes = false;
|
|
50
46
|
/** @hidden */
|
|
51
|
-
|
|
47
|
+
this._filterWidth = 1;
|
|
52
48
|
/**
|
|
53
49
|
* Gets or sets the base color of the backplate.
|
|
54
50
|
*/
|
|
55
|
-
|
|
51
|
+
this.baseColor = new Color4(0.0392157, 0.0666667, 0.207843, 1);
|
|
56
52
|
/**
|
|
57
53
|
* Gets or sets the line color of the backplate.
|
|
58
54
|
*/
|
|
59
|
-
|
|
55
|
+
this.lineColor = new Color4(0.14902, 0.133333, 0.384314, 1);
|
|
60
56
|
/**
|
|
61
57
|
* Gets or sets the intensity of the fluent hover glow effect.
|
|
62
58
|
*/
|
|
63
|
-
|
|
59
|
+
this.blobIntensity = 0.98;
|
|
64
60
|
/**
|
|
65
61
|
* Gets or sets the far size of the fluent hover glow effect.
|
|
66
62
|
*/
|
|
67
|
-
|
|
63
|
+
this.blobFarSize = 0.04;
|
|
68
64
|
/**
|
|
69
65
|
* Gets or sets the distance considered "near" to the backplate, which controls the size of the fluent hover glow effect (see blobNearSize).
|
|
70
66
|
*/
|
|
71
|
-
|
|
67
|
+
this.blobNearDistance = 0;
|
|
72
68
|
/**
|
|
73
69
|
* Gets or sets the distance considered "far" from the backplate, which controls the size of the fluent hover glow effect (see blobFarSize).
|
|
74
70
|
*/
|
|
75
|
-
|
|
71
|
+
this.blobFarDistance = 0.08;
|
|
76
72
|
/**
|
|
77
73
|
* Gets or sets the length of the fluent hover glow effect fade.
|
|
78
74
|
*/
|
|
79
|
-
|
|
75
|
+
this.blobFadeLength = 0.08;
|
|
80
76
|
/**
|
|
81
77
|
* Gets or sets the size of the fluent hover glow effect when the left pointer is considered "near" to the backplate (see blobNearDistance).
|
|
82
78
|
*/
|
|
83
|
-
|
|
79
|
+
this.blobNearSize = 0.22;
|
|
84
80
|
/**
|
|
85
81
|
* Gets or sets the progress of the fluent hover glow effect selection animation corresponding to the left pointer (0.0 - 1.0).
|
|
86
82
|
*/
|
|
87
|
-
|
|
83
|
+
this.blobPulse = 0;
|
|
88
84
|
/**
|
|
89
85
|
* Gets or sets the opacity of the fluent hover glow effect corresponding to the left pointer (0.0 - 1.0). Default is 0.
|
|
90
86
|
*/
|
|
91
|
-
|
|
87
|
+
this.blobFade = 0;
|
|
92
88
|
/**
|
|
93
89
|
* Gets or sets the size of the fluent hover glow effect when the right pointer is considered "near" to the backplate (see blobNearDistance).
|
|
94
90
|
*/
|
|
95
|
-
|
|
91
|
+
this.blobNearSize2 = 0.22;
|
|
96
92
|
/**
|
|
97
93
|
* Gets or sets the progress of the fluent hover glow effect selection animation corresponding to the right pointer (0.0 - 1.0).
|
|
98
94
|
*/
|
|
99
|
-
|
|
95
|
+
this.blobPulse2 = 0;
|
|
100
96
|
/**
|
|
101
97
|
* Gets or sets the opacity of the fluent hover glow effect corresponding to the right pointer (0.0 - 1.0). Default is 0.
|
|
102
98
|
*/
|
|
103
|
-
|
|
99
|
+
this.blobFade2 = 0;
|
|
104
100
|
/** @hidden */
|
|
105
|
-
|
|
101
|
+
this._rate = 0.135;
|
|
106
102
|
/**
|
|
107
103
|
* Gets or sets the color of the highlights on the backplate line.
|
|
108
104
|
*/
|
|
109
|
-
|
|
105
|
+
this.highlightColor = new Color4(0.98, 0.98, 0.98, 1);
|
|
110
106
|
/**
|
|
111
107
|
* Gets or sets the width of the highlights on the backplate line.
|
|
112
108
|
*/
|
|
113
|
-
|
|
109
|
+
this.highlightWidth = 0.25;
|
|
114
110
|
/** @hidden */
|
|
115
|
-
|
|
111
|
+
this._highlightTransform = new Vector4(1, 1, 0, 0);
|
|
116
112
|
/** @hidden */
|
|
117
|
-
|
|
113
|
+
this._highlight = 1;
|
|
118
114
|
/**
|
|
119
115
|
* Gets or sets the intensity of the iridescence effect.
|
|
120
116
|
*/
|
|
121
|
-
|
|
117
|
+
this.iridescenceIntensity = 0;
|
|
122
118
|
/**
|
|
123
119
|
* Gets or sets the intensity of the iridescence effect on the backplate edges.
|
|
124
120
|
*/
|
|
125
|
-
|
|
121
|
+
this.iridescenceEdgeIntensity = 1;
|
|
126
122
|
/** @hidden */
|
|
127
|
-
|
|
123
|
+
this._angle = -45;
|
|
128
124
|
/**
|
|
129
125
|
* Gets or sets the opacity of the backplate (0.0 - 1.0).
|
|
130
126
|
*/
|
|
131
|
-
|
|
127
|
+
this.fadeOut = 1;
|
|
132
128
|
/** @hidden */
|
|
133
|
-
|
|
129
|
+
this._reflected = true;
|
|
134
130
|
/** @hidden */
|
|
135
|
-
|
|
131
|
+
this._frequency = 1;
|
|
136
132
|
/** @hidden */
|
|
137
|
-
|
|
133
|
+
this._verticalOffset = 0;
|
|
138
134
|
/**
|
|
139
135
|
* Gets or sets the world-space position of the tip of the left index finger.
|
|
140
136
|
*/
|
|
141
|
-
|
|
142
|
-
|
|
137
|
+
this.globalLeftIndexTipPosition = Vector3.Zero();
|
|
138
|
+
this._globalLeftIndexTipPosition4 = Vector4.Zero();
|
|
143
139
|
/**
|
|
144
140
|
* Gets or sets the world-space position of the tip of the right index finger.
|
|
145
141
|
*/
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
return _this;
|
|
142
|
+
this.globalRightIndexTipPosition = Vector3.Zero();
|
|
143
|
+
this._globalRightIndexTipPosition4 = Vector4.Zero();
|
|
144
|
+
this.alphaMode = Constants.ALPHA_DISABLE;
|
|
145
|
+
this.backFaceCulling = false;
|
|
146
|
+
this._blobTexture = new Texture(FluentBackplateMaterial.BLOB_TEXTURE_URL, this.getScene(), true, false, Texture.NEAREST_SAMPLINGMODE);
|
|
147
|
+
this._iridescentMap = new Texture(FluentBackplateMaterial.IM_TEXTURE_URL, this.getScene(), true, false, Texture.NEAREST_SAMPLINGMODE);
|
|
153
148
|
}
|
|
154
|
-
|
|
149
|
+
needAlphaBlending() {
|
|
155
150
|
return false;
|
|
156
|
-
}
|
|
157
|
-
|
|
151
|
+
}
|
|
152
|
+
needAlphaTesting() {
|
|
158
153
|
return false;
|
|
159
|
-
}
|
|
160
|
-
|
|
154
|
+
}
|
|
155
|
+
getAlphaTestTexture() {
|
|
161
156
|
return null;
|
|
162
|
-
}
|
|
163
|
-
|
|
157
|
+
}
|
|
158
|
+
isReadyForSubMesh(mesh, subMesh) {
|
|
164
159
|
if (this.isFrozen) {
|
|
165
160
|
if (subMesh.effect && subMesh.effect._wasPreviouslyReady) {
|
|
166
161
|
return true;
|
|
@@ -169,12 +164,12 @@ var FluentBackplateMaterial = /** @class */ (function (_super) {
|
|
|
169
164
|
if (!subMesh.materialDefines) {
|
|
170
165
|
subMesh.materialDefines = new FluentBackplateMaterialDefines();
|
|
171
166
|
}
|
|
172
|
-
|
|
173
|
-
|
|
167
|
+
const defines = subMesh.materialDefines;
|
|
168
|
+
const scene = this.getScene();
|
|
174
169
|
if (this._isReadyForSubMesh(subMesh)) {
|
|
175
170
|
return true;
|
|
176
171
|
}
|
|
177
|
-
|
|
172
|
+
const engine = scene.getEngine();
|
|
178
173
|
// Attribs
|
|
179
174
|
MaterialHelper.PrepareDefinesForAttributes(mesh, defines, false, false);
|
|
180
175
|
// Get correct effect
|
|
@@ -182,14 +177,14 @@ var FluentBackplateMaterial = /** @class */ (function (_super) {
|
|
|
182
177
|
defines.markAsProcessed();
|
|
183
178
|
scene.resetCachedMaterial();
|
|
184
179
|
// Fallbacks
|
|
185
|
-
|
|
180
|
+
const fallbacks = new EffectFallbacks();
|
|
186
181
|
if (defines.FOG) {
|
|
187
182
|
fallbacks.addFallback(1, "FOG");
|
|
188
183
|
}
|
|
189
184
|
MaterialHelper.HandleFallbacksForShadows(defines, fallbacks);
|
|
190
185
|
defines.IMAGEPROCESSINGPOSTPROCESS = scene.imageProcessingConfiguration.applyByPostProcess;
|
|
191
186
|
//Attributes
|
|
192
|
-
|
|
187
|
+
const attribs = [VertexBuffer.PositionKind];
|
|
193
188
|
if (defines.NORMAL) {
|
|
194
189
|
attribs.push(VertexBuffer.NormalKind);
|
|
195
190
|
}
|
|
@@ -207,9 +202,9 @@ var FluentBackplateMaterial = /** @class */ (function (_super) {
|
|
|
207
202
|
}
|
|
208
203
|
MaterialHelper.PrepareAttributesForInstances(attribs, defines);
|
|
209
204
|
// Legacy browser patch
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
205
|
+
const shaderName = "fluentBackplate";
|
|
206
|
+
const join = defines.toString();
|
|
207
|
+
const uniforms = [
|
|
213
208
|
"world",
|
|
214
209
|
"viewProjection",
|
|
215
210
|
"cameraPosition",
|
|
@@ -255,8 +250,8 @@ var FluentBackplateMaterial = /** @class */ (function (_super) {
|
|
|
255
250
|
"Global_Left_Index_Tip_Position",
|
|
256
251
|
"Global_Right_Index_Tip_Position",
|
|
257
252
|
];
|
|
258
|
-
|
|
259
|
-
|
|
253
|
+
const samplers = ["_Blob_Texture_", "_Iridescent_Map_"];
|
|
254
|
+
const uniformBuffers = new Array();
|
|
260
255
|
MaterialHelper.PrepareUniformsAndSamplersList({
|
|
261
256
|
uniformsNames: uniforms,
|
|
262
257
|
uniformBuffersNames: uniformBuffers,
|
|
@@ -282,14 +277,13 @@ var FluentBackplateMaterial = /** @class */ (function (_super) {
|
|
|
282
277
|
defines._renderId = scene.getRenderId();
|
|
283
278
|
subMesh.effect._wasPreviouslyReady = true;
|
|
284
279
|
return true;
|
|
285
|
-
}
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
var defines = subMesh.materialDefines;
|
|
280
|
+
}
|
|
281
|
+
bindForSubMesh(world, mesh, subMesh) {
|
|
282
|
+
const defines = subMesh.materialDefines;
|
|
289
283
|
if (!defines) {
|
|
290
284
|
return;
|
|
291
285
|
}
|
|
292
|
-
|
|
286
|
+
const effect = subMesh.effect;
|
|
293
287
|
if (!effect) {
|
|
294
288
|
return;
|
|
295
289
|
}
|
|
@@ -297,7 +291,7 @@ var FluentBackplateMaterial = /** @class */ (function (_super) {
|
|
|
297
291
|
// Matrices
|
|
298
292
|
this.bindOnlyWorldMatrix(world);
|
|
299
293
|
this._activeEffect.setMatrix("viewProjection", this.getScene().getTransformMatrix());
|
|
300
|
-
this._activeEffect.setVector3("cameraPosition",
|
|
294
|
+
this._activeEffect.setVector3("cameraPosition", this.getScene().activeCamera?.position ?? Vector3.ZeroReadOnly);
|
|
301
295
|
// "Round Rect"
|
|
302
296
|
this._activeEffect.setFloat("_Radius_", this.radius);
|
|
303
297
|
this._activeEffect.setFloat("_Line_Width_", this.lineWidth);
|
|
@@ -357,114 +351,111 @@ var FluentBackplateMaterial = /** @class */ (function (_super) {
|
|
|
357
351
|
this._globalRightIndexTipPosition4.set(this.globalRightIndexTipPosition.x, this.globalRightIndexTipPosition.y, this.globalRightIndexTipPosition.z, 1.0);
|
|
358
352
|
this._activeEffect.setVector4("Global_Right_Index_Tip_Position", this._globalRightIndexTipPosition4);
|
|
359
353
|
this._afterBind(mesh, this._activeEffect);
|
|
360
|
-
}
|
|
354
|
+
}
|
|
361
355
|
/**
|
|
362
356
|
* Get the list of animatables in the material.
|
|
363
357
|
* @returns the list of animatables object used in the material
|
|
364
358
|
*/
|
|
365
|
-
|
|
359
|
+
getAnimatables() {
|
|
366
360
|
return [];
|
|
367
|
-
}
|
|
368
|
-
|
|
369
|
-
|
|
361
|
+
}
|
|
362
|
+
dispose(forceDisposeEffect) {
|
|
363
|
+
super.dispose(forceDisposeEffect);
|
|
370
364
|
this._blobTexture.dispose();
|
|
371
365
|
this._iridescentMap.dispose();
|
|
372
|
-
}
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
var serializationObject = _super.prototype.serialize.call(this);
|
|
366
|
+
}
|
|
367
|
+
clone(name) {
|
|
368
|
+
return SerializationHelper.Clone(() => new FluentBackplateMaterial(name, this.getScene()), this);
|
|
369
|
+
}
|
|
370
|
+
serialize() {
|
|
371
|
+
const serializationObject = super.serialize();
|
|
379
372
|
serializationObject.customType = "BABYLON.FluentBackplateMaterial";
|
|
380
373
|
return serializationObject;
|
|
381
|
-
}
|
|
382
|
-
|
|
374
|
+
}
|
|
375
|
+
getClassName() {
|
|
383
376
|
return "FluentBackplateMaterial";
|
|
384
|
-
}
|
|
377
|
+
}
|
|
385
378
|
// Statics
|
|
386
|
-
|
|
387
|
-
return SerializationHelper.Parse(
|
|
388
|
-
}
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
}(PushMaterial));
|
|
468
|
-
export { FluentBackplateMaterial };
|
|
379
|
+
static Parse(source, scene, rootUrl) {
|
|
380
|
+
return SerializationHelper.Parse(() => new FluentBackplateMaterial(source.name, scene), source, scene, rootUrl);
|
|
381
|
+
}
|
|
382
|
+
}
|
|
383
|
+
/**
|
|
384
|
+
* URL pointing to the texture used to define the coloring for the fluent blob effect.
|
|
385
|
+
*/
|
|
386
|
+
FluentBackplateMaterial.BLOB_TEXTURE_URL = "https://assets.babylonjs.com/meshes/MRTK/mrtk-fluent-backplate-blob.png";
|
|
387
|
+
/**
|
|
388
|
+
* URL pointing to the texture used to define iridescent map.
|
|
389
|
+
*/
|
|
390
|
+
FluentBackplateMaterial.IM_TEXTURE_URL = "https://assets.babylonjs.com/meshes/MRTK/mrtk-fluent-backplate-iridescence.png";
|
|
391
|
+
__decorate([
|
|
392
|
+
serialize()
|
|
393
|
+
], FluentBackplateMaterial.prototype, "radius", void 0);
|
|
394
|
+
__decorate([
|
|
395
|
+
serialize()
|
|
396
|
+
], FluentBackplateMaterial.prototype, "lineWidth", void 0);
|
|
397
|
+
__decorate([
|
|
398
|
+
serialize()
|
|
399
|
+
], FluentBackplateMaterial.prototype, "absoluteSizes", void 0);
|
|
400
|
+
__decorate([
|
|
401
|
+
serialize()
|
|
402
|
+
], FluentBackplateMaterial.prototype, "baseColor", void 0);
|
|
403
|
+
__decorate([
|
|
404
|
+
serialize()
|
|
405
|
+
], FluentBackplateMaterial.prototype, "lineColor", void 0);
|
|
406
|
+
__decorate([
|
|
407
|
+
serialize()
|
|
408
|
+
], FluentBackplateMaterial.prototype, "blobIntensity", void 0);
|
|
409
|
+
__decorate([
|
|
410
|
+
serialize()
|
|
411
|
+
], FluentBackplateMaterial.prototype, "blobFarSize", void 0);
|
|
412
|
+
__decorate([
|
|
413
|
+
serialize()
|
|
414
|
+
], FluentBackplateMaterial.prototype, "blobNearDistance", void 0);
|
|
415
|
+
__decorate([
|
|
416
|
+
serialize()
|
|
417
|
+
], FluentBackplateMaterial.prototype, "blobFarDistance", void 0);
|
|
418
|
+
__decorate([
|
|
419
|
+
serialize()
|
|
420
|
+
], FluentBackplateMaterial.prototype, "blobFadeLength", void 0);
|
|
421
|
+
__decorate([
|
|
422
|
+
serialize()
|
|
423
|
+
], FluentBackplateMaterial.prototype, "blobNearSize", void 0);
|
|
424
|
+
__decorate([
|
|
425
|
+
serialize()
|
|
426
|
+
], FluentBackplateMaterial.prototype, "blobPulse", void 0);
|
|
427
|
+
__decorate([
|
|
428
|
+
serialize()
|
|
429
|
+
], FluentBackplateMaterial.prototype, "blobFade", void 0);
|
|
430
|
+
__decorate([
|
|
431
|
+
serialize()
|
|
432
|
+
], FluentBackplateMaterial.prototype, "blobNearSize2", void 0);
|
|
433
|
+
__decorate([
|
|
434
|
+
serialize()
|
|
435
|
+
], FluentBackplateMaterial.prototype, "blobPulse2", void 0);
|
|
436
|
+
__decorate([
|
|
437
|
+
serialize()
|
|
438
|
+
], FluentBackplateMaterial.prototype, "blobFade2", void 0);
|
|
439
|
+
__decorate([
|
|
440
|
+
serialize()
|
|
441
|
+
], FluentBackplateMaterial.prototype, "highlightColor", void 0);
|
|
442
|
+
__decorate([
|
|
443
|
+
serialize()
|
|
444
|
+
], FluentBackplateMaterial.prototype, "highlightWidth", void 0);
|
|
445
|
+
__decorate([
|
|
446
|
+
serialize()
|
|
447
|
+
], FluentBackplateMaterial.prototype, "iridescenceIntensity", void 0);
|
|
448
|
+
__decorate([
|
|
449
|
+
serialize()
|
|
450
|
+
], FluentBackplateMaterial.prototype, "iridescenceEdgeIntensity", void 0);
|
|
451
|
+
__decorate([
|
|
452
|
+
serialize()
|
|
453
|
+
], FluentBackplateMaterial.prototype, "fadeOut", void 0);
|
|
454
|
+
__decorate([
|
|
455
|
+
serializeAsVector3()
|
|
456
|
+
], FluentBackplateMaterial.prototype, "globalLeftIndexTipPosition", void 0);
|
|
457
|
+
__decorate([
|
|
458
|
+
serializeAsVector3()
|
|
459
|
+
], FluentBackplateMaterial.prototype, "globalRightIndexTipPosition", void 0);
|
|
469
460
|
RegisterClass("BABYLON.GUI.FluentBackplateMaterial", FluentBackplateMaterial);
|
|
470
461
|
//# sourceMappingURL=fluentBackplateMaterial.js.map
|