@babylonjs/gui 5.0.0-beta.6 → 5.0.0-beta.8-snapshot
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.d.ts +2 -2
- package/2D/adtInstrumentation.js.map +1 -1
- package/2D/advancedDynamicTexture.d.ts +20 -9
- package/2D/advancedDynamicTexture.js +17 -0
- package/2D/advancedDynamicTexture.js.map +1 -1
- package/2D/controls/button.d.ts +6 -6
- package/2D/controls/button.js +4 -4
- package/2D/controls/button.js.map +1 -1
- package/2D/controls/checkbox.d.ts +6 -6
- package/2D/controls/checkbox.js +2 -2
- package/2D/controls/checkbox.js.map +1 -1
- package/2D/controls/colorpicker.d.ts +5 -5
- package/2D/controls/colorpicker.js +93 -85
- package/2D/controls/colorpicker.js.map +1 -1
- package/2D/controls/container.d.ts +7 -7
- package/2D/controls/container.js +7 -7
- package/2D/controls/container.js.map +1 -1
- package/2D/controls/control.d.ts +7 -7
- package/2D/controls/control.js +3 -0
- package/2D/controls/control.js.map +1 -1
- package/2D/controls/displayGrid.d.ts +3 -3
- package/2D/controls/displayGrid.js +2 -2
- package/2D/controls/displayGrid.js.map +1 -1
- package/2D/controls/ellipse.d.ts +1 -1
- package/2D/controls/ellipse.js +2 -2
- package/2D/controls/ellipse.js.map +1 -1
- package/2D/controls/focusableButton.d.ts +5 -5
- package/2D/controls/focusableButton.js +2 -2
- package/2D/controls/focusableButton.js.map +1 -1
- package/2D/controls/focusableControl.d.ts +11 -11
- package/2D/controls/focusableControl.js.map +1 -1
- package/2D/controls/grid.d.ts +2 -2
- package/2D/controls/grid.js +2 -2
- package/2D/controls/grid.js.map +1 -1
- package/2D/controls/image.d.ts +5 -5
- package/2D/controls/image.js +17 -17
- package/2D/controls/image.js.map +1 -1
- package/2D/controls/index.js.map +1 -1
- package/2D/controls/inputPassword.d.ts +1 -1
- package/2D/controls/inputPassword.js +2 -2
- package/2D/controls/inputPassword.js.map +1 -1
- package/2D/controls/inputText.d.ts +8 -8
- package/2D/controls/inputText.js +19 -17
- package/2D/controls/inputText.js.map +1 -1
- package/2D/controls/line.d.ts +3 -3
- package/2D/controls/line.js +4 -4
- package/2D/controls/line.js.map +1 -1
- package/2D/controls/multiLine.d.ts +5 -5
- package/2D/controls/multiLine.js +2 -2
- package/2D/controls/multiLine.js.map +1 -1
- package/2D/controls/radioButton.d.ts +4 -4
- package/2D/controls/radioButton.js +2 -2
- package/2D/controls/radioButton.js.map +1 -1
- package/2D/controls/rectangle.d.ts +1 -1
- package/2D/controls/rectangle.js +2 -2
- package/2D/controls/rectangle.js.map +1 -1
- package/2D/controls/scrollViewers/scrollViewer.d.ts +6 -6
- package/2D/controls/scrollViewers/scrollViewer.js +5 -5
- package/2D/controls/scrollViewers/scrollViewer.js.map +1 -1
- package/2D/controls/scrollViewers/scrollViewerWindow.d.ts +5 -5
- package/2D/controls/scrollViewers/scrollViewerWindow.js +4 -4
- package/2D/controls/scrollViewers/scrollViewerWindow.js.map +1 -1
- package/2D/controls/selector.d.ts +11 -11
- package/2D/controls/selector.js +19 -14
- package/2D/controls/selector.js.map +1 -1
- package/2D/controls/sliders/baseSlider.d.ts +3 -3
- package/2D/controls/sliders/baseSlider.js +5 -5
- package/2D/controls/sliders/baseSlider.js.map +1 -1
- package/2D/controls/sliders/imageBasedSlider.d.ts +5 -5
- package/2D/controls/sliders/imageBasedSlider.js +4 -4
- package/2D/controls/sliders/imageBasedSlider.js.map +1 -1
- package/2D/controls/sliders/imageScrollBar.d.ts +3 -3
- package/2D/controls/sliders/imageScrollBar.js +5 -2
- package/2D/controls/sliders/imageScrollBar.js.map +1 -1
- package/2D/controls/sliders/scrollBar.d.ts +3 -3
- package/2D/controls/sliders/scrollBar.js +5 -2
- package/2D/controls/sliders/scrollBar.js.map +1 -1
- package/2D/controls/sliders/slider.d.ts +3 -3
- package/2D/controls/sliders/slider.js +5 -5
- package/2D/controls/sliders/slider.js.map +1 -1
- package/2D/controls/stackPanel.d.ts +1 -1
- package/2D/controls/stackPanel.js +6 -4
- package/2D/controls/stackPanel.js.map +1 -1
- package/2D/controls/statics.js.map +1 -1
- package/2D/controls/textBlock.d.ts +3 -3
- package/2D/controls/textBlock.js +5 -3
- package/2D/controls/textBlock.js.map +1 -1
- package/2D/controls/textWrapper.js.map +1 -1
- package/2D/controls/toggleButton.d.ts +3 -3
- package/2D/controls/toggleButton.js.map +1 -1
- package/2D/controls/virtualKeyboard.d.ts +2 -2
- package/2D/controls/virtualKeyboard.js +6 -6
- package/2D/controls/virtualKeyboard.js.map +1 -1
- package/2D/index.js.map +1 -1
- package/2D/math2D.d.ts +2 -2
- package/2D/math2D.js +2 -2
- package/2D/math2D.js.map +1 -1
- package/2D/measure.d.ts +4 -4
- package/2D/measure.js +6 -16
- package/2D/measure.js.map +1 -1
- package/2D/multiLinePoint.d.ts +3 -3
- package/2D/multiLinePoint.js +3 -3
- package/2D/multiLinePoint.js.map +1 -1
- package/2D/style.d.ts +2 -2
- package/2D/style.js.map +1 -1
- package/2D/valueAndUnit.d.ts +1 -1
- package/2D/valueAndUnit.js +4 -2
- package/2D/valueAndUnit.js.map +1 -1
- package/2D/xmlLoader.d.ts +10 -10
- package/2D/xmlLoader.js +17 -17
- package/2D/xmlLoader.js.map +1 -1
- package/3D/behaviors/defaultBehavior.d.ts +7 -7
- package/3D/behaviors/defaultBehavior.js.map +1 -1
- package/3D/controls/abstractButton3D.d.ts +2 -2
- package/3D/controls/abstractButton3D.js.map +1 -1
- package/3D/controls/button3D.d.ts +4 -4
- package/3D/controls/button3D.js.map +1 -1
- package/3D/controls/container3D.d.ts +3 -3
- package/3D/controls/container3D.js +1 -2
- package/3D/controls/container3D.js.map +1 -1
- package/3D/controls/contentDisplay3D.js.map +1 -1
- package/3D/controls/control3D.d.ts +7 -7
- package/3D/controls/control3D.js.map +1 -1
- package/3D/controls/cylinderPanel.d.ts +2 -2
- package/3D/controls/cylinderPanel.js +2 -2
- package/3D/controls/cylinderPanel.js.map +1 -1
- package/3D/controls/handMenu.d.ts +5 -5
- package/3D/controls/handMenu.js.map +1 -1
- package/3D/controls/holographicBackplate.d.ts +3 -3
- package/3D/controls/holographicBackplate.js +3 -4
- package/3D/controls/holographicBackplate.js.map +1 -1
- package/3D/controls/holographicButton.d.ts +5 -5
- package/3D/controls/holographicButton.js.map +1 -1
- package/3D/controls/holographicSlate.d.ts +5 -5
- package/3D/controls/holographicSlate.js +4 -0
- package/3D/controls/holographicSlate.js.map +1 -1
- package/3D/controls/index.js.map +1 -1
- package/3D/controls/meshButton3D.d.ts +4 -4
- package/3D/controls/meshButton3D.js +1 -2
- package/3D/controls/meshButton3D.js.map +1 -1
- package/3D/controls/nearMenu.d.ts +3 -3
- package/3D/controls/nearMenu.js +3 -1
- package/3D/controls/nearMenu.js.map +1 -1
- package/3D/controls/planePanel.d.ts +1 -1
- package/3D/controls/planePanel.js.map +1 -1
- package/3D/controls/scatterPanel.d.ts +2 -2
- package/3D/controls/scatterPanel.js +1 -1
- package/3D/controls/scatterPanel.js.map +1 -1
- package/3D/controls/slider3D.d.ts +5 -5
- package/3D/controls/slider3D.js +7 -8
- package/3D/controls/slider3D.js.map +1 -1
- package/3D/controls/spherePanel.d.ts +2 -2
- package/3D/controls/spherePanel.js +2 -2
- package/3D/controls/spherePanel.js.map +1 -1
- package/3D/controls/stackPanel3D.js +3 -3
- package/3D/controls/stackPanel3D.js.map +1 -1
- package/3D/controls/touchButton3D.d.ts +5 -5
- package/3D/controls/touchButton3D.js +4 -3
- package/3D/controls/touchButton3D.js.map +1 -1
- package/3D/controls/touchHolographicButton.d.ts +5 -5
- package/3D/controls/touchHolographicButton.js +6 -7
- package/3D/controls/touchHolographicButton.js.map +1 -1
- package/3D/controls/touchHolographicMenu.d.ts +6 -6
- package/3D/controls/touchHolographicMenu.js.map +1 -1
- package/3D/controls/touchMeshButton3D.d.ts +4 -4
- package/3D/controls/touchMeshButton3D.js +1 -2
- package/3D/controls/touchMeshButton3D.js.map +1 -1
- package/3D/controls/volumeBasedPanel.d.ts +9 -9
- package/3D/controls/volumeBasedPanel.js +12 -13
- package/3D/controls/volumeBasedPanel.js.map +1 -1
- package/3D/gizmos/gizmoHandle.d.ts +4 -4
- package/3D/gizmos/gizmoHandle.js.map +1 -1
- package/3D/gizmos/index.js.map +1 -1
- package/3D/gizmos/slateGizmo.d.ts +4 -4
- package/3D/gizmos/slateGizmo.js.map +1 -1
- package/3D/gui3DManager.d.ts +7 -7
- package/3D/gui3DManager.js.map +1 -1
- package/3D/index.js.map +1 -1
- package/3D/materials/fluent/fluentMaterial.d.ts +10 -10
- package/3D/materials/fluent/fluentMaterial.js +16 -5
- package/3D/materials/fluent/fluentMaterial.js.map +1 -1
- package/3D/materials/fluent/index.js.map +1 -1
- package/3D/materials/fluent/shaders/fluent.fragment.d.ts +1 -1
- package/3D/materials/fluent/shaders/fluent.fragment.js +4 -2
- package/3D/materials/fluent/shaders/fluent.fragment.js.map +1 -1
- package/3D/materials/fluent/shaders/fluent.vertex.d.ts +1 -1
- package/3D/materials/fluent/shaders/fluent.vertex.js +4 -2
- package/3D/materials/fluent/shaders/fluent.vertex.js.map +1 -1
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.d.ts +10 -10
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.js +46 -11
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.js.map +1 -1
- package/3D/materials/fluentBackplate/index.js.map +1 -1
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment.d.ts +1 -1
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment.js +4 -2
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment.js.map +1 -1
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex.d.ts +1 -1
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex.js +4 -2
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex.js.map +1 -1
- package/3D/materials/fluentButton/fluentButtonMaterial.d.ts +10 -10
- package/3D/materials/fluentButton/fluentButtonMaterial.js +6 -4
- package/3D/materials/fluentButton/fluentButtonMaterial.js.map +1 -1
- package/3D/materials/fluentButton/index.js.map +1 -1
- package/3D/materials/fluentButton/shaders/fluentButton.fragment.d.ts +1 -1
- package/3D/materials/fluentButton/shaders/fluentButton.fragment.js +4 -2
- package/3D/materials/fluentButton/shaders/fluentButton.fragment.js.map +1 -1
- package/3D/materials/fluentButton/shaders/fluentButton.vertex.d.ts +1 -1
- package/3D/materials/fluentButton/shaders/fluentButton.vertex.js +4 -2
- package/3D/materials/fluentButton/shaders/fluentButton.vertex.js.map +1 -1
- package/3D/materials/fluentMaterial.d.ts +1 -1
- package/3D/materials/fluentMaterial.js +1 -1
- package/3D/materials/fluentMaterial.js.map +1 -1
- package/3D/materials/handle/handleMaterial.d.ts +4 -4
- package/3D/materials/handle/handleMaterial.js.map +1 -1
- package/3D/materials/handle/index.js.map +1 -1
- package/3D/materials/handle/shaders/handle.fragment.d.ts +1 -1
- package/3D/materials/handle/shaders/handle.fragment.js +3 -1
- package/3D/materials/handle/shaders/handle.fragment.js.map +1 -1
- package/3D/materials/handle/shaders/handle.vertex.d.ts +1 -1
- package/3D/materials/handle/shaders/handle.vertex.js +4 -2
- package/3D/materials/handle/shaders/handle.vertex.js.map +1 -1
- package/3D/materials/index.js.map +1 -1
- package/3D/materials/mrdl/index.js.map +1 -1
- package/3D/materials/mrdl/mrdlBackplateMaterial.d.ts +14 -14
- package/3D/materials/mrdl/mrdlBackplateMaterial.js +41 -14
- package/3D/materials/mrdl/mrdlBackplateMaterial.js.map +1 -1
- package/3D/materials/mrdl/mrdlSliderBarMaterial.d.ts +15 -15
- package/3D/materials/mrdl/mrdlSliderBarMaterial.js +87 -22
- package/3D/materials/mrdl/mrdlSliderBarMaterial.js.map +1 -1
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.d.ts +15 -15
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.js +87 -22
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.js.map +1 -1
- package/3D/materials/mrdl/shaders/mrdlBackplate.fragment.d.ts +1 -1
- package/3D/materials/mrdl/shaders/mrdlBackplate.fragment.js +4 -2
- package/3D/materials/mrdl/shaders/mrdlBackplate.fragment.js.map +1 -1
- package/3D/materials/mrdl/shaders/mrdlBackplate.vertex.d.ts +1 -1
- package/3D/materials/mrdl/shaders/mrdlBackplate.vertex.js +4 -2
- package/3D/materials/mrdl/shaders/mrdlBackplate.vertex.js.map +1 -1
- package/3D/materials/mrdl/shaders/mrdlSliderBar.fragment.d.ts +1 -1
- package/3D/materials/mrdl/shaders/mrdlSliderBar.fragment.js +4 -2
- package/3D/materials/mrdl/shaders/mrdlSliderBar.fragment.js.map +1 -1
- package/3D/materials/mrdl/shaders/mrdlSliderBar.vertex.d.ts +1 -1
- package/3D/materials/mrdl/shaders/mrdlSliderBar.vertex.js +4 -2
- package/3D/materials/mrdl/shaders/mrdlSliderBar.vertex.js.map +1 -1
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment.d.ts +1 -1
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment.js +4 -2
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment.js.map +1 -1
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex.d.ts +1 -1
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex.js +4 -2
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex.js.map +1 -1
- package/3D/vector3WithInfo.d.ts +1 -1
- package/3D/vector3WithInfo.js.map +1 -1
- package/index.js.map +1 -1
- package/legacy/legacy.d.ts +1 -1
- package/legacy/legacy.js +3 -3
- package/legacy/legacy.js.map +1 -1
- package/package.json +21 -329
- package/readme.md +0 -31
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { Nullable } from "@babylonjs/core/types";
|
|
2
|
-
import { Matrix, Vector4 } from "@babylonjs/core/Maths/math.vector";
|
|
3
|
-
import { IAnimatable } from "@babylonjs/core/Animations/animatable.interface";
|
|
4
|
-
import { BaseTexture } from "@babylonjs/core/Materials/Textures/baseTexture";
|
|
5
|
-
import { PushMaterial } from "@babylonjs/core/Materials/pushMaterial";
|
|
6
|
-
import { AbstractMesh } from "@babylonjs/core/Meshes/abstractMesh";
|
|
7
|
-
import { SubMesh } from "@babylonjs/core/Meshes/subMesh";
|
|
8
|
-
import { Mesh } from "@babylonjs/core/Meshes/mesh";
|
|
9
|
-
import { Scene } from "@babylonjs/core/scene";
|
|
10
|
-
import { Color4 } from "@babylonjs/core/Maths/math.color";
|
|
1
|
+
import { Nullable } from "@babylonjs/core/types.js";
|
|
2
|
+
import { Matrix, Vector4 } from "@babylonjs/core/Maths/math.vector.js";
|
|
3
|
+
import { IAnimatable } from "@babylonjs/core/Animations/animatable.interface.js";
|
|
4
|
+
import { BaseTexture } from "@babylonjs/core/Materials/Textures/baseTexture.js";
|
|
5
|
+
import { PushMaterial } from "@babylonjs/core/Materials/pushMaterial.js";
|
|
6
|
+
import { AbstractMesh } from "@babylonjs/core/Meshes/abstractMesh.js";
|
|
7
|
+
import { SubMesh } from "@babylonjs/core/Meshes/subMesh.js";
|
|
8
|
+
import { Mesh } from "@babylonjs/core/Meshes/mesh.js";
|
|
9
|
+
import { Scene } from "@babylonjs/core/scene.js";
|
|
10
|
+
import { Color4 } from "@babylonjs/core/Maths/math.color.js";
|
|
11
11
|
import "./shaders/mrdlBackplate.fragment";
|
|
12
12
|
import "./shaders/mrdlBackplate.vertex";
|
|
13
13
|
/**
|
|
@@ -20,8 +20,8 @@ export declare class MRDLBackplateMaterial extends PushMaterial {
|
|
|
20
20
|
static IRIDESCENT_MAP_TEXTURE_URL: string;
|
|
21
21
|
private _iridescentMapTexture;
|
|
22
22
|
/**
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
* Gets or sets the corner radius on the backplate. If this value is changed, update the lineWidth to match.
|
|
24
|
+
*/
|
|
25
25
|
radius: number;
|
|
26
26
|
/**
|
|
27
27
|
* Gets or sets the line width of the backplate.
|
|
@@ -51,8 +51,8 @@ export declare class MRDLBackplateMaterial extends PushMaterial {
|
|
|
51
51
|
*/
|
|
52
52
|
radiusTopRight: number;
|
|
53
53
|
/**
|
|
54
|
-
|
|
55
|
-
|
|
54
|
+
* Gets or sets the top left Radii Multiplier.
|
|
55
|
+
*/
|
|
56
56
|
radiusBottomLeft: number;
|
|
57
57
|
/**
|
|
58
58
|
* Gets or sets the top left Radii Multiplier.
|
|
@@ -36,8 +36,8 @@ var MRDLBackplateMaterial = /** @class */ (function (_super) {
|
|
|
36
36
|
function MRDLBackplateMaterial(name, scene) {
|
|
37
37
|
var _this = _super.call(this, name, scene) || this;
|
|
38
38
|
/**
|
|
39
|
-
|
|
40
|
-
|
|
39
|
+
* Gets or sets the corner radius on the backplate. If this value is changed, update the lineWidth to match.
|
|
40
|
+
*/
|
|
41
41
|
_this.radius = 0.3;
|
|
42
42
|
/**
|
|
43
43
|
* Gets or sets the line width of the backplate.
|
|
@@ -67,8 +67,8 @@ var MRDLBackplateMaterial = /** @class */ (function (_super) {
|
|
|
67
67
|
*/
|
|
68
68
|
_this.radiusTopRight = 1.0;
|
|
69
69
|
/**
|
|
70
|
-
|
|
71
|
-
|
|
70
|
+
* Gets or sets the top left Radii Multiplier.
|
|
71
|
+
*/
|
|
72
72
|
_this.radiusBottomLeft = 1.0;
|
|
73
73
|
/**
|
|
74
74
|
* Gets or sets the top left Radii Multiplier.
|
|
@@ -209,14 +209,41 @@ var MRDLBackplateMaterial = /** @class */ (function (_super) {
|
|
|
209
209
|
var shaderName = "mrdlBackplate";
|
|
210
210
|
var join = defines.toString();
|
|
211
211
|
var uniforms = [
|
|
212
|
-
"world",
|
|
213
|
-
"
|
|
214
|
-
"
|
|
215
|
-
"
|
|
216
|
-
"
|
|
217
|
-
"
|
|
218
|
-
"
|
|
219
|
-
"
|
|
212
|
+
"world",
|
|
213
|
+
"viewProjection",
|
|
214
|
+
"cameraPosition",
|
|
215
|
+
"_Radius_",
|
|
216
|
+
"_Line_Width_",
|
|
217
|
+
"_Absolute_Sizes_",
|
|
218
|
+
"_Filter_Width_",
|
|
219
|
+
"_Base_Color_",
|
|
220
|
+
"_Line_Color_",
|
|
221
|
+
"_Radius_Top_Left_",
|
|
222
|
+
"_Radius_Top_Right_",
|
|
223
|
+
"_Radius_Bottom_Left_",
|
|
224
|
+
"_Radius_Bottom_Right_",
|
|
225
|
+
"_Rate_",
|
|
226
|
+
"_Highlight_Color_",
|
|
227
|
+
"_Highlight_Width_",
|
|
228
|
+
"_Highlight_Transform_",
|
|
229
|
+
"_Highlight_",
|
|
230
|
+
"_Iridescence_Intensity_",
|
|
231
|
+
"_Iridescence_Edge_Intensity_",
|
|
232
|
+
"_Iridescence_Tint_",
|
|
233
|
+
"_Iridescent_Map_",
|
|
234
|
+
"_Angle_",
|
|
235
|
+
"_Reflected_",
|
|
236
|
+
"_Frequency_",
|
|
237
|
+
"_Vertical_Offset_",
|
|
238
|
+
"_Gradient_Color_",
|
|
239
|
+
"_Top_Left_",
|
|
240
|
+
"_Top_Right_",
|
|
241
|
+
"_Bottom_Left_",
|
|
242
|
+
"_Bottom_Right_",
|
|
243
|
+
"_Edge_Width_",
|
|
244
|
+
"_Edge_Power_",
|
|
245
|
+
"_Line_Gradient_Blend_",
|
|
246
|
+
"_Fade_Out_",
|
|
220
247
|
];
|
|
221
248
|
var samplers = [];
|
|
222
249
|
var uniformBuffers = new Array();
|
|
@@ -225,7 +252,7 @@ var MRDLBackplateMaterial = /** @class */ (function (_super) {
|
|
|
225
252
|
uniformBuffersNames: uniformBuffers,
|
|
226
253
|
samplers: samplers,
|
|
227
254
|
defines: defines,
|
|
228
|
-
maxSimultaneousLights: 4
|
|
255
|
+
maxSimultaneousLights: 4,
|
|
229
256
|
});
|
|
230
257
|
subMesh.setEffect(scene.getEngine().createEffect(shaderName, {
|
|
231
258
|
attributes: attribs,
|
|
@@ -236,7 +263,7 @@ var MRDLBackplateMaterial = /** @class */ (function (_super) {
|
|
|
236
263
|
fallbacks: fallbacks,
|
|
237
264
|
onCompiled: this.onCompiled,
|
|
238
265
|
onError: this.onError,
|
|
239
|
-
indexParameters: { maxSimultaneousLights: 4 }
|
|
266
|
+
indexParameters: { maxSimultaneousLights: 4 },
|
|
240
267
|
}, engine), defines);
|
|
241
268
|
}
|
|
242
269
|
if (!subMesh.effect || !subMesh.effect.isReady()) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mrdlBackplateMaterial.js","sourceRoot":"","sources":["../../../../../sourceES6/gui/src/3D/materials/mrdl/mrdlBackplateMaterial.ts"],"names":[],"mappings":"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","sourcesContent":["import { Nullable } from \"@babylonjs/core/types\";\r\nimport { SerializationHelper, serialize } from \"@babylonjs/core/Misc/decorators\";\r\nimport { Matrix, Vector4 } from \"@babylonjs/core/Maths/math.vector\";\r\nimport { IAnimatable } from \"@babylonjs/core/Animations/animatable.interface\";\r\nimport { BaseTexture } from \"@babylonjs/core/Materials/Textures/baseTexture\";\r\nimport { Texture } from \"@babylonjs/core/Materials/Textures/texture\";\r\nimport { MaterialDefines } from \"@babylonjs/core/Materials/materialDefines\";\r\nimport { MaterialHelper } from \"@babylonjs/core/Materials/materialHelper\";\r\nimport { IEffectCreationOptions } from \"@babylonjs/core/Materials/effect\";\r\nimport { PushMaterial } from \"@babylonjs/core/Materials/pushMaterial\";\r\nimport { VertexBuffer } from \"@babylonjs/core/Buffers/buffer\";\r\nimport { AbstractMesh } from \"@babylonjs/core/Meshes/abstractMesh\";\r\nimport { SubMesh } from \"@babylonjs/core/Meshes/subMesh\";\r\nimport { Mesh } from \"@babylonjs/core/Meshes/mesh\";\r\nimport { Scene } from \"@babylonjs/core/scene\";\r\nimport { RegisterClass } from \"@babylonjs/core/Misc/typeStore\";\r\nimport { Color4 } from \"@babylonjs/core/Maths/math.color\";\r\nimport { EffectFallbacks } from \"@babylonjs/core/Materials/effectFallbacks\";\r\nimport { Constants } from \"@babylonjs/core/Engines/constants\";\r\n\r\nimport \"./shaders/mrdlBackplate.fragment\";\r\nimport \"./shaders/mrdlBackplate.vertex\";\r\n\r\n/** @hidden */\r\nclass MRDLBackplateMaterialDefines extends MaterialDefines {\r\n /*\r\n \"IRIDESCENCE_ENABLE\", \"SMOOTH_EDGES\"\r\n */\r\n public IRIDESCENCE_ENABLED = true;\r\n public SMOOTH_EDGES = true;\r\n\r\n constructor() {\r\n super();\r\n this._needNormals = true;\r\n this.rebuild();\r\n }\r\n}\r\n\r\n/**\r\n * Class used to render backplate material with MRDL\r\n */\r\nexport class MRDLBackplateMaterial extends PushMaterial {\r\n /**\r\n * URL pointing to the texture used to define the coloring for the Iridescent Map effect.\r\n */\r\n public static IRIDESCENT_MAP_TEXTURE_URL = \"https://assets.babylonjs.com/meshes/MRTK/MRDL/mrtk-mrdl-backplate-iridescence.png\";\r\n private _iridescentMapTexture: Texture;\r\n\r\n /**\r\n * Gets or sets the corner radius on the backplate. If this value is changed, update the lineWidth to match.\r\n */\r\n @serialize()\r\n public radius = 0.3;\r\n\r\n /**\r\n * Gets or sets the line width of the backplate.\r\n */\r\n @serialize()\r\n public lineWidth = 0.003;\r\n\r\n /**\r\n * Gets or sets whether to use absolute sizes when calculating effects on the backplate.\r\n * Since desktop and VR/AR have different relative sizes, it's usually best to keep this false.\r\n */\r\n @serialize()\r\n public absoluteSizes = false;\r\n\r\n /** @hidden */\r\n public _filterWidth = 1;\r\n\r\n /**\r\n * Gets or sets the base color of the backplate.\r\n */\r\n @serialize()\r\n public baseColor = new Color4(0, 0, 0, 1);\r\n\r\n /**\r\n * Gets or sets the line color of the backplate.\r\n */\r\n @serialize()\r\n public lineColor = new Color4(0.2, 0.262745, 0.4, 1);\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusTopLeft = 1.0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusTopRight = 1.0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusBottomLeft = 1.0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusBottomRight = 1.0;\r\n\r\n /** @hidden */\r\n public _rate = 0;\r\n\r\n /**\r\n * Gets or sets the color of the highlights on the backplate line.\r\n */\r\n @serialize()\r\n public highlightColor = new Color4(0.239216, 0.435294, 0.827451, 1);\r\n\r\n /**\r\n * Gets or sets the width of the highlights on the backplate line.\r\n */\r\n @serialize()\r\n public highlightWidth = 0;\r\n\r\n /** @hidden */\r\n public _highlightTransform = new Vector4(1, 1, 0, 0);\r\n\r\n /** @hidden */\r\n public _highlight = 1;\r\n\r\n /**\r\n * Gets or sets the intensity of the iridescence effect.\r\n */\r\n @serialize()\r\n public iridescenceIntensity = 0.45;\r\n\r\n /**\r\n * Gets or sets the intensity of the iridescence effect on the backplate edges.\r\n */\r\n @serialize()\r\n public iridescenceEdgeIntensity = 1;\r\n\r\n /**\r\n * Gets or sets the Tint of the iridescence effect on the backplate.\r\n */\r\n @serialize()\r\n public iridescenceTint = new Color4(1, 1, 1, 1);\r\n\r\n /** @hidden */\r\n public _angle = -45;\r\n\r\n /**\r\n * Gets or sets the opacity of the backplate (0.0 - 1.0).\r\n */\r\n @serialize()\r\n public fadeOut = 1;\r\n\r\n /** @hidden */\r\n public _reflected = true;\r\n\r\n /** @hidden */\r\n public _frequency = 1;\r\n\r\n /** @hidden */\r\n public _verticalOffset = 0;\r\n\r\n /**\r\n * Gets or sets the gradient color effect on the backplate.\r\n */\r\n @serialize()\r\n public gradientColor = new Color4(0.74902, 0.74902, 0.74902, 1);\r\n\r\n /**\r\n * Gets or sets the top left gradient color effect on the backplate.\r\n */\r\n @serialize()\r\n public topLeftGradientColor = new Color4(0.00784314, 0.294118, 0.580392, 1);\r\n\r\n /**\r\n * Gets or sets the top right gradient color effect on the backplate.\r\n */\r\n @serialize()\r\n public topRightGradientColor = new Color4(0.305882, 0, 1, 1);\r\n\r\n /**\r\n * Gets or sets the bottom left gradient color effect on the backplate.\r\n */\r\n @serialize()\r\n public bottomLeftGradientColor = new Color4(0.133333, 0.258824, 0.992157, 1);\r\n\r\n /**\r\n * Gets or sets the bottom right gradient color effect on the backplate.\r\n */\r\n @serialize()\r\n public bottomRightGradientColor = new Color4(0.176471, 0.176471, 0.619608, 1);\r\n\r\n /**\r\n * Gets or sets the edge width of the backplate.\r\n */\r\n @serialize()\r\n public edgeWidth = 0.5;\r\n\r\n /**\r\n * Gets or sets the edge width of the backplate.\r\n */\r\n @serialize()\r\n public edgePower = 1;\r\n\r\n /**\r\n * Gets or sets the edge width of the backplate.\r\n */\r\n @serialize()\r\n public edgeLineGradientBlend = 0.5;\r\n\r\n constructor(name: string, scene?: Scene) {\r\n super(name, scene);\r\n this.alphaMode = Constants.ALPHA_DISABLE;\r\n this.backFaceCulling = false;\r\n\r\n this._iridescentMapTexture = new Texture(MRDLBackplateMaterial.IRIDESCENT_MAP_TEXTURE_URL, this.getScene(), true, false, Texture.NEAREST_SAMPLINGMODE);\r\n }\r\n\r\n public needAlphaBlending(): boolean {\r\n return false;\r\n }\r\n\r\n public needAlphaTesting(): boolean {\r\n return false;\r\n }\r\n\r\n public getAlphaTestTexture(): Nullable<BaseTexture> {\r\n return null;\r\n }\r\n\r\n // Methods\r\n public isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh, useInstances?: boolean): boolean {\r\n if (this.isFrozen) {\r\n if (subMesh.effect && subMesh.effect._wasPreviouslyReady) {\r\n return true;\r\n }\r\n }\r\n\r\n if (!subMesh.materialDefines) {\r\n subMesh.materialDefines = new MRDLBackplateMaterialDefines();\r\n }\r\n\r\n const defines = <MRDLBackplateMaterialDefines>subMesh.materialDefines;\r\n const scene = this.getScene();\r\n\r\n if (this._isReadyForSubMesh(subMesh)) {\r\n return true;\r\n }\r\n\r\n const engine = scene.getEngine();\r\n\r\n // Attribs\r\n MaterialHelper.PrepareDefinesForAttributes(mesh, defines, false, false);\r\n\r\n // Get correct effect\r\n if (defines.isDirty) {\r\n defines.markAsProcessed();\r\n\r\n scene.resetCachedMaterial();\r\n\r\n // Fallbacks\r\n const fallbacks = new EffectFallbacks();\r\n if (defines.FOG) {\r\n fallbacks.addFallback(1, \"FOG\");\r\n }\r\n\r\n MaterialHelper.HandleFallbacksForShadows(defines, fallbacks);\r\n\r\n defines.IMAGEPROCESSINGPOSTPROCESS = scene.imageProcessingConfiguration.applyByPostProcess;\r\n\r\n //Attributes\r\n const attribs = [VertexBuffer.PositionKind];\r\n\r\n if (defines.NORMAL) {\r\n attribs.push(VertexBuffer.NormalKind);\r\n }\r\n\r\n if (defines.UV1) {\r\n attribs.push(VertexBuffer.UVKind);\r\n }\r\n\r\n if (defines.UV2) {\r\n attribs.push(VertexBuffer.UV2Kind);\r\n }\r\n\r\n if (defines.VERTEXCOLOR) {\r\n attribs.push(VertexBuffer.ColorKind);\r\n }\r\n\r\n if (defines.TANGENT) {\r\n attribs.push(VertexBuffer.TangentKind);\r\n }\r\n\r\n MaterialHelper.PrepareAttributesForInstances(attribs, defines);\r\n\r\n // Legacy browser patch\r\n const shaderName = \"mrdlBackplate\";\r\n const join = defines.toString();\r\n\r\n const uniforms = [\r\n \"world\", \"viewProjection\", \"cameraPosition\"\r\n , \"_Radius_\", \"_Line_Width_\", \"_Absolute_Sizes_\", \"_Filter_Width_\", \"_Base_Color_\", \"_Line_Color_\"\r\n , \"_Radius_Top_Left_\", \"_Radius_Top_Right_\", \"_Radius_Bottom_Left_\", \"_Radius_Bottom_Right_\"\r\n , \"_Rate_\", \"_Highlight_Color_\", \"_Highlight_Width_\", \"_Highlight_Transform_\", \"_Highlight_\"\r\n , \"_Iridescence_Intensity_\", \"_Iridescence_Edge_Intensity_\", \"_Iridescence_Tint_\", \"_Iridescent_Map_\"\r\n , \"_Angle_\", \"_Reflected_\", \"_Frequency_\", \"_Vertical_Offset_\", \"_Gradient_Color_\", \"_Top_Left_\"\r\n , \"_Top_Right_\", \"_Bottom_Left_\", \"_Bottom_Right_\", \"_Edge_Width_\", \"_Edge_Power_\", \"_Line_Gradient_Blend_\"\r\n , \"_Fade_Out_\"\r\n ];\r\n const samplers: string[] = [];\r\n const uniformBuffers = new Array<string>();\r\n\r\n MaterialHelper.PrepareUniformsAndSamplersList(<IEffectCreationOptions>{\r\n uniformsNames: uniforms,\r\n uniformBuffersNames: uniformBuffers,\r\n samplers: samplers,\r\n defines: defines,\r\n maxSimultaneousLights: 4\r\n });\r\n\r\n subMesh.setEffect(scene.getEngine().createEffect(shaderName,\r\n <IEffectCreationOptions>{\r\n attributes: attribs,\r\n uniformsNames: uniforms,\r\n uniformBuffersNames: uniformBuffers,\r\n samplers: samplers,\r\n defines: join,\r\n fallbacks: fallbacks,\r\n onCompiled: this.onCompiled,\r\n onError: this.onError,\r\n indexParameters: { maxSimultaneousLights: 4 }\r\n }, engine), defines);\r\n }\r\n if (!subMesh.effect || !subMesh.effect.isReady()) {\r\n return false;\r\n }\r\n\r\n defines._renderId = scene.getRenderId();\r\n subMesh.effect._wasPreviouslyReady = true;\r\n\r\n return true;\r\n }\r\n\r\n public bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void {\r\n const defines = <MRDLBackplateMaterialDefines>subMesh.materialDefines;\r\n if (!defines) {\r\n return;\r\n }\r\n\r\n const effect = subMesh.effect;\r\n if (!effect) {\r\n return;\r\n }\r\n\r\n this._activeEffect = effect;\r\n\r\n // Matrices\r\n this.bindOnlyWorldMatrix(world);\r\n this._activeEffect.setMatrix(\"viewProjection\", this.getScene().getTransformMatrix());\r\n this._activeEffect.setVector3(\"cameraPosition\", this.getScene().activeCamera!.position);\r\n\r\n // \"Round Rect\"\r\n this._activeEffect.setFloat(\"_Radius_\", this.radius);\r\n this._activeEffect.setFloat(\"_Line_Width_\", this.lineWidth);\r\n this._activeEffect.setFloat(\"_Absolute_Sizes_\", this.absoluteSizes ? 1.0 : 0.0);\r\n this._activeEffect.setFloat(\"_Filter_Width_\", this._filterWidth);\r\n this._activeEffect.setDirectColor4(\"_Base_Color_\", this.baseColor);\r\n this._activeEffect.setDirectColor4(\"_Line_Color_\", this.lineColor);\r\n\r\n // \"Radii Multipliers\"\r\n this._activeEffect.setFloat(\"_Radius_Top_Left_\", this.radiusTopLeft);\r\n this._activeEffect.setFloat(\"_Radius_Top_Right_\", this.radiusTopRight);\r\n this._activeEffect.setFloat(\"_Radius_Bottom_Left_\", this.radiusBottomLeft);\r\n this._activeEffect.setFloat(\"_Radius_Bottom_Right_\", this.radiusBottomRight);\r\n\r\n // \"Line Highlight\"\r\n this._activeEffect.setFloat(\"_Rate_\", this._rate);\r\n this._activeEffect.setDirectColor4(\"_Highlight_Color_\", this.highlightColor);\r\n this._activeEffect.setFloat(\"_Highlight_Width_\", this.highlightWidth);\r\n this._activeEffect.setVector4(\"_Highlight_Transform_\", this._highlightTransform);\r\n this._activeEffect.setFloat(\"_Highlight_\", this._highlight);\r\n\r\n // \"Iridescence\"\r\n //define IRIDESCENCE_ENABLE true;\r\n this._activeEffect.setFloat(\"_Iridescence_Intensity_\", this.iridescenceIntensity);\r\n this._activeEffect.setFloat(\"_Iridescence_Edge_Intensity_\", this.iridescenceEdgeIntensity);\r\n this._activeEffect.setDirectColor4(\"_Iridescence_Tint_\", this.iridescenceTint);\r\n this._activeEffect.setTexture(\"_Iridescent_Map_\", this._iridescentMapTexture);\r\n this._activeEffect.setFloat(\"_Angle_\", this._angle);\r\n this._activeEffect.setFloat(\"_Reflected_\", this._reflected ? 1.0 : 0.0);\r\n this._activeEffect.setFloat(\"_Frequency_\", this._frequency);\r\n this._activeEffect.setFloat(\"_Vertical_Offset_\", this._verticalOffset);\r\n\r\n // \"Gradient\"\r\n this._activeEffect.setDirectColor4(\"_Gradient_Color_\", this.gradientColor);\r\n this._activeEffect.setDirectColor4(\"_Top_Left_\", this.topLeftGradientColor);\r\n this._activeEffect.setDirectColor4(\"_Top_Right_\", this.topRightGradientColor);\r\n this._activeEffect.setDirectColor4(\"_Bottom_Left_\", this.bottomLeftGradientColor);\r\n this._activeEffect.setDirectColor4(\"_Bottom_Right_\", this.bottomRightGradientColor);\r\n //define EDGE_ONLY false;\r\n this._activeEffect.setFloat(\"_Edge_Width_\", this.edgeWidth);\r\n this._activeEffect.setFloat(\"_Edge_Power_\", this.edgePower);\r\n this._activeEffect.setFloat(\"_Line_Gradient_Blend_\", this.edgeLineGradientBlend);\r\n\r\n // \"Fade\"\r\n this._activeEffect.setFloat(\"_Fade_Out_\", this.fadeOut);\r\n\r\n // \"Antialiasing\"\r\n //define SMOOTH_EDGES true;\r\n\r\n this._afterBind(mesh, this._activeEffect);\r\n }\r\n\r\n /**\r\n * Get the list of animatables in the material.\r\n * @returns the list of animatables object used in the material\r\n */\r\n public getAnimatables(): IAnimatable[] {\r\n return [];\r\n }\r\n\r\n public dispose(forceDisposeEffect?: boolean): void {\r\n super.dispose(forceDisposeEffect);\r\n }\r\n\r\n public clone(name: string): MRDLBackplateMaterial {\r\n return SerializationHelper.Clone(() => new MRDLBackplateMaterial(name, this.getScene()), this);\r\n }\r\n\r\n public serialize(): any {\r\n const serializationObject = super.serialize();\r\n serializationObject.customType = \"BABYLON.MRDLBackplateMaterial\";\r\n return serializationObject;\r\n }\r\n\r\n public getClassName(): string {\r\n return \"MRDLBackplateMaterial\";\r\n }\r\n\r\n // Statics\r\n public static Parse(source: any, scene: Scene, rootUrl: string): MRDLBackplateMaterial {\r\n return SerializationHelper.Parse(() => new MRDLBackplateMaterial(source.name, scene), source, scene, rootUrl);\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.GUI.MRDLBackplateMaterial\", MRDLBackplateMaterial);\r\n"]}
|
|
1
|
+
{"version":3,"file":"mrdlBackplateMaterial.js","sourceRoot":"","sources":["../../../../../../../lts/gui/generated/3D/materials/mrdl/mrdlBackplateMaterial.ts"],"names":[],"mappings":"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","sourcesContent":["import { Nullable } from \"core/types\";\r\nimport { SerializationHelper, serialize } from \"core/Misc/decorators\";\r\nimport { Matrix, Vector4 } from \"core/Maths/math.vector\";\r\nimport { IAnimatable } from \"core/Animations/animatable.interface\";\r\nimport { BaseTexture } from \"core/Materials/Textures/baseTexture\";\r\nimport { Texture } from \"core/Materials/Textures/texture\";\r\nimport { MaterialDefines } from \"core/Materials/materialDefines\";\r\nimport { MaterialHelper } from \"core/Materials/materialHelper\";\r\nimport { IEffectCreationOptions } from \"core/Materials/effect\";\r\nimport { PushMaterial } from \"core/Materials/pushMaterial\";\r\nimport { VertexBuffer } from \"core/Buffers/buffer\";\r\nimport { AbstractMesh } from \"core/Meshes/abstractMesh\";\r\nimport { SubMesh } from \"core/Meshes/subMesh\";\r\nimport { Mesh } from \"core/Meshes/mesh\";\r\nimport { Scene } from \"core/scene\";\r\nimport { RegisterClass } from \"core/Misc/typeStore\";\r\nimport { Color4 } from \"core/Maths/math.color\";\r\nimport { EffectFallbacks } from \"core/Materials/effectFallbacks\";\r\nimport { Constants } from \"core/Engines/constants\";\r\n\r\nimport \"./shaders/mrdlBackplate.fragment\";\r\nimport \"./shaders/mrdlBackplate.vertex\";\r\n\r\n/** @hidden */\r\nclass MRDLBackplateMaterialDefines extends MaterialDefines {\r\n /*\r\n \"IRIDESCENCE_ENABLE\", \"SMOOTH_EDGES\"\r\n */\r\n public IRIDESCENCE_ENABLED = true;\r\n public SMOOTH_EDGES = true;\r\n\r\n constructor() {\r\n super();\r\n this._needNormals = true;\r\n this.rebuild();\r\n }\r\n}\r\n\r\n/**\r\n * Class used to render backplate material with MRDL\r\n */\r\nexport class MRDLBackplateMaterial extends PushMaterial {\r\n /**\r\n * URL pointing to the texture used to define the coloring for the Iridescent Map effect.\r\n */\r\n public static IRIDESCENT_MAP_TEXTURE_URL = \"https://assets.babylonjs.com/meshes/MRTK/MRDL/mrtk-mrdl-backplate-iridescence.png\";\r\n private _iridescentMapTexture: Texture;\r\n\r\n /**\r\n * Gets or sets the corner radius on the backplate. If this value is changed, update the lineWidth to match.\r\n */\r\n @serialize()\r\n public radius = 0.3;\r\n\r\n /**\r\n * Gets or sets the line width of the backplate.\r\n */\r\n @serialize()\r\n public lineWidth = 0.003;\r\n\r\n /**\r\n * Gets or sets whether to use absolute sizes when calculating effects on the backplate.\r\n * Since desktop and VR/AR have different relative sizes, it's usually best to keep this false.\r\n */\r\n @serialize()\r\n public absoluteSizes = false;\r\n\r\n /** @hidden */\r\n public _filterWidth = 1;\r\n\r\n /**\r\n * Gets or sets the base color of the backplate.\r\n */\r\n @serialize()\r\n public baseColor = new Color4(0, 0, 0, 1);\r\n\r\n /**\r\n * Gets or sets the line color of the backplate.\r\n */\r\n @serialize()\r\n public lineColor = new Color4(0.2, 0.262745, 0.4, 1);\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusTopLeft = 1.0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusTopRight = 1.0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusBottomLeft = 1.0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusBottomRight = 1.0;\r\n\r\n /** @hidden */\r\n public _rate = 0;\r\n\r\n /**\r\n * Gets or sets the color of the highlights on the backplate line.\r\n */\r\n @serialize()\r\n public highlightColor = new Color4(0.239216, 0.435294, 0.827451, 1);\r\n\r\n /**\r\n * Gets or sets the width of the highlights on the backplate line.\r\n */\r\n @serialize()\r\n public highlightWidth = 0;\r\n\r\n /** @hidden */\r\n public _highlightTransform = new Vector4(1, 1, 0, 0);\r\n\r\n /** @hidden */\r\n public _highlight = 1;\r\n\r\n /**\r\n * Gets or sets the intensity of the iridescence effect.\r\n */\r\n @serialize()\r\n public iridescenceIntensity = 0.45;\r\n\r\n /**\r\n * Gets or sets the intensity of the iridescence effect on the backplate edges.\r\n */\r\n @serialize()\r\n public iridescenceEdgeIntensity = 1;\r\n\r\n /**\r\n * Gets or sets the Tint of the iridescence effect on the backplate.\r\n */\r\n @serialize()\r\n public iridescenceTint = new Color4(1, 1, 1, 1);\r\n\r\n /** @hidden */\r\n public _angle = -45;\r\n\r\n /**\r\n * Gets or sets the opacity of the backplate (0.0 - 1.0).\r\n */\r\n @serialize()\r\n public fadeOut = 1;\r\n\r\n /** @hidden */\r\n public _reflected = true;\r\n\r\n /** @hidden */\r\n public _frequency = 1;\r\n\r\n /** @hidden */\r\n public _verticalOffset = 0;\r\n\r\n /**\r\n * Gets or sets the gradient color effect on the backplate.\r\n */\r\n @serialize()\r\n public gradientColor = new Color4(0.74902, 0.74902, 0.74902, 1);\r\n\r\n /**\r\n * Gets or sets the top left gradient color effect on the backplate.\r\n */\r\n @serialize()\r\n public topLeftGradientColor = new Color4(0.00784314, 0.294118, 0.580392, 1);\r\n\r\n /**\r\n * Gets or sets the top right gradient color effect on the backplate.\r\n */\r\n @serialize()\r\n public topRightGradientColor = new Color4(0.305882, 0, 1, 1);\r\n\r\n /**\r\n * Gets or sets the bottom left gradient color effect on the backplate.\r\n */\r\n @serialize()\r\n public bottomLeftGradientColor = new Color4(0.133333, 0.258824, 0.992157, 1);\r\n\r\n /**\r\n * Gets or sets the bottom right gradient color effect on the backplate.\r\n */\r\n @serialize()\r\n public bottomRightGradientColor = new Color4(0.176471, 0.176471, 0.619608, 1);\r\n\r\n /**\r\n * Gets or sets the edge width of the backplate.\r\n */\r\n @serialize()\r\n public edgeWidth = 0.5;\r\n\r\n /**\r\n * Gets or sets the edge width of the backplate.\r\n */\r\n @serialize()\r\n public edgePower = 1;\r\n\r\n /**\r\n * Gets or sets the edge width of the backplate.\r\n */\r\n @serialize()\r\n public edgeLineGradientBlend = 0.5;\r\n\r\n constructor(name: string, scene?: Scene) {\r\n super(name, scene);\r\n this.alphaMode = Constants.ALPHA_DISABLE;\r\n this.backFaceCulling = false;\r\n\r\n this._iridescentMapTexture = new Texture(MRDLBackplateMaterial.IRIDESCENT_MAP_TEXTURE_URL, this.getScene(), true, false, Texture.NEAREST_SAMPLINGMODE);\r\n }\r\n\r\n public needAlphaBlending(): boolean {\r\n return false;\r\n }\r\n\r\n public needAlphaTesting(): boolean {\r\n return false;\r\n }\r\n\r\n public getAlphaTestTexture(): Nullable<BaseTexture> {\r\n return null;\r\n }\r\n\r\n // Methods\r\n public isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh, useInstances?: boolean): boolean {\r\n if (this.isFrozen) {\r\n if (subMesh.effect && subMesh.effect._wasPreviouslyReady) {\r\n return true;\r\n }\r\n }\r\n\r\n if (!subMesh.materialDefines) {\r\n subMesh.materialDefines = new MRDLBackplateMaterialDefines();\r\n }\r\n\r\n const defines = <MRDLBackplateMaterialDefines>subMesh.materialDefines;\r\n const scene = this.getScene();\r\n\r\n if (this._isReadyForSubMesh(subMesh)) {\r\n return true;\r\n }\r\n\r\n const engine = scene.getEngine();\r\n\r\n // Attribs\r\n MaterialHelper.PrepareDefinesForAttributes(mesh, defines, false, false);\r\n\r\n // Get correct effect\r\n if (defines.isDirty) {\r\n defines.markAsProcessed();\r\n\r\n scene.resetCachedMaterial();\r\n\r\n // Fallbacks\r\n const fallbacks = new EffectFallbacks();\r\n if (defines.FOG) {\r\n fallbacks.addFallback(1, \"FOG\");\r\n }\r\n\r\n MaterialHelper.HandleFallbacksForShadows(defines, fallbacks);\r\n\r\n defines.IMAGEPROCESSINGPOSTPROCESS = scene.imageProcessingConfiguration.applyByPostProcess;\r\n\r\n //Attributes\r\n const attribs = [VertexBuffer.PositionKind];\r\n\r\n if (defines.NORMAL) {\r\n attribs.push(VertexBuffer.NormalKind);\r\n }\r\n\r\n if (defines.UV1) {\r\n attribs.push(VertexBuffer.UVKind);\r\n }\r\n\r\n if (defines.UV2) {\r\n attribs.push(VertexBuffer.UV2Kind);\r\n }\r\n\r\n if (defines.VERTEXCOLOR) {\r\n attribs.push(VertexBuffer.ColorKind);\r\n }\r\n\r\n if (defines.TANGENT) {\r\n attribs.push(VertexBuffer.TangentKind);\r\n }\r\n\r\n MaterialHelper.PrepareAttributesForInstances(attribs, defines);\r\n\r\n // Legacy browser patch\r\n const shaderName = \"mrdlBackplate\";\r\n const join = defines.toString();\r\n\r\n const uniforms = [\r\n \"world\",\r\n \"viewProjection\",\r\n \"cameraPosition\",\r\n \"_Radius_\",\r\n \"_Line_Width_\",\r\n \"_Absolute_Sizes_\",\r\n \"_Filter_Width_\",\r\n \"_Base_Color_\",\r\n \"_Line_Color_\",\r\n \"_Radius_Top_Left_\",\r\n \"_Radius_Top_Right_\",\r\n \"_Radius_Bottom_Left_\",\r\n \"_Radius_Bottom_Right_\",\r\n \"_Rate_\",\r\n \"_Highlight_Color_\",\r\n \"_Highlight_Width_\",\r\n \"_Highlight_Transform_\",\r\n \"_Highlight_\",\r\n \"_Iridescence_Intensity_\",\r\n \"_Iridescence_Edge_Intensity_\",\r\n \"_Iridescence_Tint_\",\r\n \"_Iridescent_Map_\",\r\n \"_Angle_\",\r\n \"_Reflected_\",\r\n \"_Frequency_\",\r\n \"_Vertical_Offset_\",\r\n \"_Gradient_Color_\",\r\n \"_Top_Left_\",\r\n \"_Top_Right_\",\r\n \"_Bottom_Left_\",\r\n \"_Bottom_Right_\",\r\n \"_Edge_Width_\",\r\n \"_Edge_Power_\",\r\n \"_Line_Gradient_Blend_\",\r\n \"_Fade_Out_\",\r\n ];\r\n const samplers: string[] = [];\r\n const uniformBuffers = new Array<string>();\r\n\r\n MaterialHelper.PrepareUniformsAndSamplersList(<IEffectCreationOptions>{\r\n uniformsNames: uniforms,\r\n uniformBuffersNames: uniformBuffers,\r\n samplers: samplers,\r\n defines: defines,\r\n maxSimultaneousLights: 4,\r\n });\r\n\r\n subMesh.setEffect(\r\n scene.getEngine().createEffect(\r\n shaderName,\r\n <IEffectCreationOptions>{\r\n attributes: attribs,\r\n uniformsNames: uniforms,\r\n uniformBuffersNames: uniformBuffers,\r\n samplers: samplers,\r\n defines: join,\r\n fallbacks: fallbacks,\r\n onCompiled: this.onCompiled,\r\n onError: this.onError,\r\n indexParameters: { maxSimultaneousLights: 4 },\r\n },\r\n engine\r\n ),\r\n defines\r\n );\r\n }\r\n if (!subMesh.effect || !subMesh.effect.isReady()) {\r\n return false;\r\n }\r\n\r\n defines._renderId = scene.getRenderId();\r\n subMesh.effect._wasPreviouslyReady = true;\r\n\r\n return true;\r\n }\r\n\r\n public bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void {\r\n const defines = <MRDLBackplateMaterialDefines>subMesh.materialDefines;\r\n if (!defines) {\r\n return;\r\n }\r\n\r\n const effect = subMesh.effect;\r\n if (!effect) {\r\n return;\r\n }\r\n\r\n this._activeEffect = effect;\r\n\r\n // Matrices\r\n this.bindOnlyWorldMatrix(world);\r\n this._activeEffect.setMatrix(\"viewProjection\", this.getScene().getTransformMatrix());\r\n this._activeEffect.setVector3(\"cameraPosition\", this.getScene().activeCamera!.position);\r\n\r\n // \"Round Rect\"\r\n this._activeEffect.setFloat(\"_Radius_\", this.radius);\r\n this._activeEffect.setFloat(\"_Line_Width_\", this.lineWidth);\r\n this._activeEffect.setFloat(\"_Absolute_Sizes_\", this.absoluteSizes ? 1.0 : 0.0);\r\n this._activeEffect.setFloat(\"_Filter_Width_\", this._filterWidth);\r\n this._activeEffect.setDirectColor4(\"_Base_Color_\", this.baseColor);\r\n this._activeEffect.setDirectColor4(\"_Line_Color_\", this.lineColor);\r\n\r\n // \"Radii Multipliers\"\r\n this._activeEffect.setFloat(\"_Radius_Top_Left_\", this.radiusTopLeft);\r\n this._activeEffect.setFloat(\"_Radius_Top_Right_\", this.radiusTopRight);\r\n this._activeEffect.setFloat(\"_Radius_Bottom_Left_\", this.radiusBottomLeft);\r\n this._activeEffect.setFloat(\"_Radius_Bottom_Right_\", this.radiusBottomRight);\r\n\r\n // \"Line Highlight\"\r\n this._activeEffect.setFloat(\"_Rate_\", this._rate);\r\n this._activeEffect.setDirectColor4(\"_Highlight_Color_\", this.highlightColor);\r\n this._activeEffect.setFloat(\"_Highlight_Width_\", this.highlightWidth);\r\n this._activeEffect.setVector4(\"_Highlight_Transform_\", this._highlightTransform);\r\n this._activeEffect.setFloat(\"_Highlight_\", this._highlight);\r\n\r\n // \"Iridescence\"\r\n //define IRIDESCENCE_ENABLE true;\r\n this._activeEffect.setFloat(\"_Iridescence_Intensity_\", this.iridescenceIntensity);\r\n this._activeEffect.setFloat(\"_Iridescence_Edge_Intensity_\", this.iridescenceEdgeIntensity);\r\n this._activeEffect.setDirectColor4(\"_Iridescence_Tint_\", this.iridescenceTint);\r\n this._activeEffect.setTexture(\"_Iridescent_Map_\", this._iridescentMapTexture);\r\n this._activeEffect.setFloat(\"_Angle_\", this._angle);\r\n this._activeEffect.setFloat(\"_Reflected_\", this._reflected ? 1.0 : 0.0);\r\n this._activeEffect.setFloat(\"_Frequency_\", this._frequency);\r\n this._activeEffect.setFloat(\"_Vertical_Offset_\", this._verticalOffset);\r\n\r\n // \"Gradient\"\r\n this._activeEffect.setDirectColor4(\"_Gradient_Color_\", this.gradientColor);\r\n this._activeEffect.setDirectColor4(\"_Top_Left_\", this.topLeftGradientColor);\r\n this._activeEffect.setDirectColor4(\"_Top_Right_\", this.topRightGradientColor);\r\n this._activeEffect.setDirectColor4(\"_Bottom_Left_\", this.bottomLeftGradientColor);\r\n this._activeEffect.setDirectColor4(\"_Bottom_Right_\", this.bottomRightGradientColor);\r\n //define EDGE_ONLY false;\r\n this._activeEffect.setFloat(\"_Edge_Width_\", this.edgeWidth);\r\n this._activeEffect.setFloat(\"_Edge_Power_\", this.edgePower);\r\n this._activeEffect.setFloat(\"_Line_Gradient_Blend_\", this.edgeLineGradientBlend);\r\n\r\n // \"Fade\"\r\n this._activeEffect.setFloat(\"_Fade_Out_\", this.fadeOut);\r\n\r\n // \"Antialiasing\"\r\n //define SMOOTH_EDGES true;\r\n\r\n this._afterBind(mesh, this._activeEffect);\r\n }\r\n\r\n /**\r\n * Get the list of animatables in the material.\r\n * @returns the list of animatables object used in the material\r\n */\r\n public getAnimatables(): IAnimatable[] {\r\n return [];\r\n }\r\n\r\n public dispose(forceDisposeEffect?: boolean): void {\r\n super.dispose(forceDisposeEffect);\r\n }\r\n\r\n public clone(name: string): MRDLBackplateMaterial {\r\n return SerializationHelper.Clone(() => new MRDLBackplateMaterial(name, this.getScene()), this);\r\n }\r\n\r\n public serialize(): any {\r\n const serializationObject = super.serialize();\r\n serializationObject.customType = \"BABYLON.MRDLBackplateMaterial\";\r\n return serializationObject;\r\n }\r\n\r\n public getClassName(): string {\r\n return \"MRDLBackplateMaterial\";\r\n }\r\n\r\n // Statics\r\n public static Parse(source: any, scene: Scene, rootUrl: string): MRDLBackplateMaterial {\r\n return SerializationHelper.Parse(() => new MRDLBackplateMaterial(source.name, scene), source, scene, rootUrl);\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.GUI.MRDLBackplateMaterial\", MRDLBackplateMaterial);\r\n"]}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { Nullable } from "@babylonjs/core/types";
|
|
2
|
-
import { Matrix, Vector2, Vector3, Vector4 } from "@babylonjs/core/Maths/math.vector";
|
|
3
|
-
import { IAnimatable } from "@babylonjs/core/Animations/animatable.interface";
|
|
4
|
-
import { BaseTexture } from "@babylonjs/core/Materials/Textures/baseTexture";
|
|
5
|
-
import { Texture } from "@babylonjs/core/Materials/Textures/texture";
|
|
6
|
-
import { PushMaterial } from "@babylonjs/core/Materials/pushMaterial";
|
|
7
|
-
import { AbstractMesh } from "@babylonjs/core/Meshes/abstractMesh";
|
|
8
|
-
import { SubMesh } from "@babylonjs/core/Meshes/subMesh";
|
|
9
|
-
import { Mesh } from "@babylonjs/core/Meshes/mesh";
|
|
10
|
-
import { Scene } from "@babylonjs/core/scene";
|
|
11
|
-
import { Color4 } from "@babylonjs/core/Maths/math.color";
|
|
1
|
+
import { Nullable } from "@babylonjs/core/types.js";
|
|
2
|
+
import { Matrix, Vector2, Vector3, Vector4 } from "@babylonjs/core/Maths/math.vector.js";
|
|
3
|
+
import { IAnimatable } from "@babylonjs/core/Animations/animatable.interface.js";
|
|
4
|
+
import { BaseTexture } from "@babylonjs/core/Materials/Textures/baseTexture.js";
|
|
5
|
+
import { Texture } from "@babylonjs/core/Materials/Textures/texture.js";
|
|
6
|
+
import { PushMaterial } from "@babylonjs/core/Materials/pushMaterial.js";
|
|
7
|
+
import { AbstractMesh } from "@babylonjs/core/Meshes/abstractMesh.js";
|
|
8
|
+
import { SubMesh } from "@babylonjs/core/Meshes/subMesh.js";
|
|
9
|
+
import { Mesh } from "@babylonjs/core/Meshes/mesh.js";
|
|
10
|
+
import { Scene } from "@babylonjs/core/scene.js";
|
|
11
|
+
import { Color4 } from "@babylonjs/core/Maths/math.color.js";
|
|
12
12
|
import "./shaders/mrdlSliderBar.fragment";
|
|
13
13
|
import "./shaders/mrdlSliderBar.vertex";
|
|
14
14
|
/**
|
|
@@ -49,8 +49,8 @@ export declare class MRDLSliderBarMaterial extends PushMaterial {
|
|
|
49
49
|
*/
|
|
50
50
|
radiusTopRight: number;
|
|
51
51
|
/**
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
* Gets or sets the top left Radii Multiplier.
|
|
53
|
+
*/
|
|
54
54
|
radiusBottomLeft: number;
|
|
55
55
|
/**
|
|
56
56
|
* Gets or sets the top left Radii Multiplier.
|
|
@@ -186,8 +186,8 @@ export declare class MRDLSliderBarMaterial extends PushMaterial {
|
|
|
186
186
|
*/
|
|
187
187
|
blobNearSize: number;
|
|
188
188
|
/**
|
|
189
|
-
|
|
190
|
-
|
|
189
|
+
* Gets or sets the far size of the hover glow effect.
|
|
190
|
+
*/
|
|
191
191
|
blobFarSize: number;
|
|
192
192
|
/**
|
|
193
193
|
* Gets or sets the distance considered "near" to the mesh, which controls the size of the hover glow effect (see blobNearSize).
|
|
@@ -66,8 +66,8 @@ var MRDLSliderBarMaterial = /** @class */ (function (_super) {
|
|
|
66
66
|
*/
|
|
67
67
|
_this.radiusTopRight = 1.0;
|
|
68
68
|
/**
|
|
69
|
-
|
|
70
|
-
|
|
69
|
+
* Gets or sets the top left Radii Multiplier.
|
|
70
|
+
*/
|
|
71
71
|
_this.radiusBottomLeft = 1.0;
|
|
72
72
|
/**
|
|
73
73
|
* Gets or sets the top left Radii Multiplier.
|
|
@@ -203,8 +203,8 @@ var MRDLSliderBarMaterial = /** @class */ (function (_super) {
|
|
|
203
203
|
*/
|
|
204
204
|
_this.blobNearSize = 0.01;
|
|
205
205
|
/**
|
|
206
|
-
|
|
207
|
-
|
|
206
|
+
* Gets or sets the far size of the hover glow effect.
|
|
207
|
+
*/
|
|
208
208
|
_this.blobFarSize = 0.03;
|
|
209
209
|
/**
|
|
210
210
|
* Gets or sets the distance considered "near" to the mesh, which controls the size of the hover glow effect (see blobNearSize).
|
|
@@ -396,22 +396,87 @@ var MRDLSliderBarMaterial = /** @class */ (function (_super) {
|
|
|
396
396
|
var shaderName = "mrdlSliderBar";
|
|
397
397
|
var join = defines.toString();
|
|
398
398
|
var uniforms = [
|
|
399
|
-
"world",
|
|
400
|
-
"
|
|
401
|
-
"
|
|
402
|
-
"
|
|
403
|
-
"
|
|
404
|
-
"
|
|
405
|
-
"
|
|
406
|
-
"
|
|
407
|
-
"
|
|
408
|
-
"
|
|
409
|
-
"
|
|
410
|
-
"
|
|
411
|
-
"
|
|
412
|
-
"
|
|
413
|
-
"
|
|
414
|
-
"
|
|
399
|
+
"world",
|
|
400
|
+
"viewProjection",
|
|
401
|
+
"cameraPosition",
|
|
402
|
+
"_Radius_",
|
|
403
|
+
"_Bevel_Front_",
|
|
404
|
+
"_Bevel_Front_Stretch_",
|
|
405
|
+
"_Bevel_Back_",
|
|
406
|
+
"_Bevel_Back_Stretch_",
|
|
407
|
+
"_Radius_Top_Left_",
|
|
408
|
+
"_Radius_Top_Right_",
|
|
409
|
+
"_Radius_Bottom_Left_",
|
|
410
|
+
"_Radius_Bottom_Right_",
|
|
411
|
+
"_Bulge_Enabled_",
|
|
412
|
+
"_Bulge_Height_",
|
|
413
|
+
"_Bulge_Radius_",
|
|
414
|
+
"_Sun_Intensity_",
|
|
415
|
+
"_Sun_Theta_",
|
|
416
|
+
"_Sun_Phi_",
|
|
417
|
+
"_Indirect_Diffuse_",
|
|
418
|
+
"_Albedo_",
|
|
419
|
+
"_Specular_",
|
|
420
|
+
"_Shininess_",
|
|
421
|
+
"_Sharpness_",
|
|
422
|
+
"_Subsurface_",
|
|
423
|
+
"_Left_Color_",
|
|
424
|
+
"_Right_Color_",
|
|
425
|
+
"_Reflection_",
|
|
426
|
+
"_Front_Reflect_",
|
|
427
|
+
"_Edge_Reflect_",
|
|
428
|
+
"_Power_",
|
|
429
|
+
"_Sky_Color_",
|
|
430
|
+
"_Horizon_Color_",
|
|
431
|
+
"_Ground_Color_",
|
|
432
|
+
"_Horizon_Power_",
|
|
433
|
+
"_Reflection_Map_",
|
|
434
|
+
"_Indirect_Environment_",
|
|
435
|
+
"_Width_",
|
|
436
|
+
"_Fuzz_",
|
|
437
|
+
"_Min_Fuzz_",
|
|
438
|
+
"_Clip_Fade_",
|
|
439
|
+
"_Hue_Shift_",
|
|
440
|
+
"_Saturation_Shift_",
|
|
441
|
+
"_Value_Shift_",
|
|
442
|
+
"_Blob_Position_",
|
|
443
|
+
"_Blob_Intensity_",
|
|
444
|
+
"_Blob_Near_Size_",
|
|
445
|
+
"_Blob_Far_Size_",
|
|
446
|
+
"_Blob_Near_Distance_",
|
|
447
|
+
"_Blob_Far_Distance_",
|
|
448
|
+
"_Blob_Fade_Length_",
|
|
449
|
+
"_Blob_Pulse_",
|
|
450
|
+
"_Blob_Fade_",
|
|
451
|
+
"_Blob_Texture_",
|
|
452
|
+
"_Blob_Position_2_",
|
|
453
|
+
"_Blob_Near_Size_2_",
|
|
454
|
+
"_Blob_Pulse_2_",
|
|
455
|
+
"_Blob_Fade_2_",
|
|
456
|
+
"_Left_Index_Pos_",
|
|
457
|
+
"_Right_Index_Pos_",
|
|
458
|
+
"_Left_Index_Middle_Pos_",
|
|
459
|
+
"_Right_Index_Middle_Pos_",
|
|
460
|
+
"_Decal_",
|
|
461
|
+
"_Decal_Scale_XY_",
|
|
462
|
+
"_Decal_Front_Only_",
|
|
463
|
+
"_Rim_Intensity_",
|
|
464
|
+
"_Rim_Texture_",
|
|
465
|
+
"_Rim_Hue_Shift_",
|
|
466
|
+
"_Rim_Saturation_Shift_",
|
|
467
|
+
"_Rim_Value_Shift_",
|
|
468
|
+
"_Iridescence_Intensity_",
|
|
469
|
+
"_Iridescence_Texture_",
|
|
470
|
+
"Use_Global_Left_Index",
|
|
471
|
+
"Use_Global_Right_Index",
|
|
472
|
+
"Global_Left_Index_Tip_Position",
|
|
473
|
+
"Global_Right_Index_Tip_Position",
|
|
474
|
+
"Global_Left_Thumb_Tip_Position",
|
|
475
|
+
"Global_Right_Thumb_Tip_Position",
|
|
476
|
+
"Global_Left_Index_Middle_Position;",
|
|
477
|
+
"Global_Right_Index_Middle_Position",
|
|
478
|
+
"Global_Left_Index_Tip_Proximity",
|
|
479
|
+
"Global_Right_Index_Tip_Proximity",
|
|
415
480
|
];
|
|
416
481
|
var samplers = ["_Rim_Texture_", "_Iridescence_Texture_"];
|
|
417
482
|
var uniformBuffers = new Array();
|
|
@@ -420,7 +485,7 @@ var MRDLSliderBarMaterial = /** @class */ (function (_super) {
|
|
|
420
485
|
uniformBuffersNames: uniformBuffers,
|
|
421
486
|
samplers: samplers,
|
|
422
487
|
defines: defines,
|
|
423
|
-
maxSimultaneousLights: 4
|
|
488
|
+
maxSimultaneousLights: 4,
|
|
424
489
|
});
|
|
425
490
|
subMesh.setEffect(scene.getEngine().createEffect(shaderName, {
|
|
426
491
|
attributes: attribs,
|
|
@@ -431,7 +496,7 @@ var MRDLSliderBarMaterial = /** @class */ (function (_super) {
|
|
|
431
496
|
fallbacks: fallbacks,
|
|
432
497
|
onCompiled: this.onCompiled,
|
|
433
498
|
onError: this.onError,
|
|
434
|
-
indexParameters: { maxSimultaneousLights: 4 }
|
|
499
|
+
indexParameters: { maxSimultaneousLights: 4 },
|
|
435
500
|
}, engine), defines, this._materialContext);
|
|
436
501
|
}
|
|
437
502
|
if (!subMesh.effect || !subMesh.effect.isReady()) {
|