@babylonjs/gui 9.12.1 → 9.14.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/FrameGraph/pure.d.ts +2 -0
- package/2D/FrameGraph/pure.js +3 -0
- package/2D/FrameGraph/pure.js.map +1 -0
- package/2D/FrameGraph/renderGraphGUIBlock.d.ts +3 -41
- package/2D/FrameGraph/renderGraphGUIBlock.js +5 -64
- package/2D/FrameGraph/renderGraphGUIBlock.js.map +1 -1
- package/2D/FrameGraph/renderGraphGUIBlock.pure.d.ts +48 -0
- package/2D/FrameGraph/renderGraphGUIBlock.pure.js +78 -0
- package/2D/FrameGraph/renderGraphGUIBlock.pure.js.map +1 -0
- package/2D/controls/button.d.ts +3 -107
- package/2D/controls/button.js +5 -243
- package/2D/controls/button.js.map +1 -1
- package/2D/controls/button.pure.d.ts +114 -0
- package/2D/controls/button.pure.js +257 -0
- package/2D/controls/button.pure.js.map +1 -0
- package/2D/controls/checkbox.d.ts +3 -51
- package/2D/controls/checkbox.js +5 -161
- package/2D/controls/checkbox.js.map +1 -1
- package/2D/controls/checkbox.pure.d.ts +58 -0
- package/2D/controls/checkbox.pure.js +175 -0
- package/2D/controls/checkbox.pure.js.map +1 -0
- package/2D/controls/colorpicker.d.ts +5 -101
- package/2D/controls/colorpicker.js +7 -1394
- package/2D/controls/colorpicker.js.map +1 -1
- package/2D/controls/colorpicker.pure.d.ts +106 -0
- package/2D/controls/colorpicker.pure.js +1406 -0
- package/2D/controls/colorpicker.pure.js.map +1 -0
- package/2D/controls/container.d.ts +3 -177
- package/2D/controls/container.js +5 -615
- package/2D/controls/container.js.map +1 -1
- package/2D/controls/container.pure.d.ts +184 -0
- package/2D/controls/container.pure.js +629 -0
- package/2D/controls/container.pure.js.map +1 -0
- package/2D/controls/control.d.ts +3 -944
- package/2D/controls/control.js +5 -2457
- package/2D/controls/control.js.map +1 -1
- package/2D/controls/control.pure.d.ts +951 -0
- package/2D/controls/control.pure.js +2471 -0
- package/2D/controls/control.pure.js.map +1 -0
- package/2D/controls/displayGrid.d.ts +5 -53
- package/2D/controls/displayGrid.js +7 -201
- package/2D/controls/displayGrid.js.map +1 -1
- package/2D/controls/displayGrid.pure.d.ts +58 -0
- package/2D/controls/displayGrid.pure.js +213 -0
- package/2D/controls/displayGrid.pure.js.map +1 -0
- package/2D/controls/ellipse.d.ts +5 -25
- package/2D/controls/ellipse.js +7 -92
- package/2D/controls/ellipse.js.map +1 -1
- package/2D/controls/ellipse.pure.d.ts +30 -0
- package/2D/controls/ellipse.pure.js +104 -0
- package/2D/controls/ellipse.pure.js.map +1 -0
- package/2D/controls/focusableButton.d.ts +3 -15
- package/2D/controls/focusableButton.js +5 -22
- package/2D/controls/focusableButton.js.map +1 -1
- package/2D/controls/focusableButton.pure.d.ts +22 -0
- package/2D/controls/focusableButton.pure.js +36 -0
- package/2D/controls/focusableButton.pure.js.map +1 -0
- package/2D/controls/gradient/LinearGradient.d.ts +3 -43
- package/2D/controls/gradient/LinearGradient.js +5 -70
- package/2D/controls/gradient/LinearGradient.js.map +1 -1
- package/2D/controls/gradient/LinearGradient.pure.d.ts +50 -0
- package/2D/controls/gradient/LinearGradient.pure.js +84 -0
- package/2D/controls/gradient/LinearGradient.pure.js.map +1 -0
- package/2D/controls/gradient/RadialGradient.d.ts +3 -51
- package/2D/controls/gradient/RadialGradient.js +5 -86
- package/2D/controls/gradient/RadialGradient.js.map +1 -1
- package/2D/controls/gradient/RadialGradient.pure.d.ts +58 -0
- package/2D/controls/gradient/RadialGradient.pure.js +100 -0
- package/2D/controls/gradient/RadialGradient.pure.js.map +1 -0
- package/2D/controls/gradient/pure.d.ts +3 -0
- package/2D/controls/gradient/pure.js +4 -0
- package/2D/controls/gradient/pure.js.map +1 -0
- package/2D/controls/grid.d.ts +3 -149
- package/2D/controls/grid.js +5 -525
- package/2D/controls/grid.js.map +1 -1
- package/2D/controls/grid.pure.d.ts +156 -0
- package/2D/controls/grid.pure.js +539 -0
- package/2D/controls/grid.pure.js.map +1 -0
- package/2D/controls/image.d.ts +3 -226
- package/2D/controls/image.js +5 -913
- package/2D/controls/image.js.map +1 -1
- package/2D/controls/image.pure.d.ts +233 -0
- package/2D/controls/image.pure.js +927 -0
- package/2D/controls/image.pure.js.map +1 -0
- package/2D/controls/inputPassword.d.ts +3 -7
- package/2D/controls/inputPassword.js +5 -19
- package/2D/controls/inputPassword.js.map +1 -1
- package/2D/controls/inputPassword.pure.d.ts +14 -0
- package/2D/controls/inputPassword.pure.js +33 -0
- package/2D/controls/inputPassword.pure.js.map +1 -0
- package/2D/controls/inputText.d.ts +3 -202
- package/2D/controls/inputText.js +5 -1050
- package/2D/controls/inputText.js.map +1 -1
- package/2D/controls/inputText.pure.d.ts +209 -0
- package/2D/controls/inputText.pure.js +1064 -0
- package/2D/controls/inputText.pure.js.map +1 -0
- package/2D/controls/inputTextArea.d.ts +3 -140
- package/2D/controls/inputTextArea.js +5 -1023
- package/2D/controls/inputTextArea.js.map +1 -1
- package/2D/controls/inputTextArea.pure.d.ts +147 -0
- package/2D/controls/inputTextArea.pure.js +1037 -0
- package/2D/controls/inputTextArea.pure.js.map +1 -0
- package/2D/controls/line.d.ts +5 -74
- package/2D/controls/line.js +7 -234
- package/2D/controls/line.js.map +1 -1
- package/2D/controls/line.pure.d.ts +79 -0
- package/2D/controls/line.pure.js +246 -0
- package/2D/controls/line.pure.js.map +1 -0
- package/2D/controls/multiLine.d.ts +3 -73
- package/2D/controls/multiLine.js +5 -234
- package/2D/controls/multiLine.js.map +1 -1
- package/2D/controls/multiLine.pure.d.ts +80 -0
- package/2D/controls/multiLine.pure.js +248 -0
- package/2D/controls/multiLine.pure.js.map +1 -0
- package/2D/controls/pure.d.ts +38 -0
- package/2D/controls/pure.js +39 -0
- package/2D/controls/pure.js.map +1 -0
- package/2D/controls/radioButton.d.ts +3 -47
- package/2D/controls/radioButton.js +5 -182
- package/2D/controls/radioButton.js.map +1 -1
- package/2D/controls/radioButton.pure.d.ts +54 -0
- package/2D/controls/radioButton.pure.js +196 -0
- package/2D/controls/radioButton.pure.js.map +1 -0
- package/2D/controls/rectangle.d.ts +5 -43
- package/2D/controls/rectangle.js +7 -205
- package/2D/controls/rectangle.js.map +1 -1
- package/2D/controls/rectangle.pure.d.ts +48 -0
- package/2D/controls/rectangle.pure.js +217 -0
- package/2D/controls/rectangle.pure.js.map +1 -0
- package/2D/controls/scrollViewers/pure.d.ts +2 -0
- package/2D/controls/scrollViewers/pure.js +3 -0
- package/2D/controls/scrollViewers/pure.js.map +1 -0
- package/2D/controls/scrollViewers/scrollViewer.d.ts +3 -176
- package/2D/controls/scrollViewers/scrollViewer.js +5 -584
- package/2D/controls/scrollViewers/scrollViewer.js.map +1 -1
- package/2D/controls/scrollViewers/scrollViewer.pure.d.ts +183 -0
- package/2D/controls/scrollViewers/scrollViewer.pure.js +598 -0
- package/2D/controls/scrollViewers/scrollViewer.pure.js.map +1 -0
- package/2D/controls/sliders/imageBasedSlider.d.ts +3 -45
- package/2D/controls/sliders/imageBasedSlider.js +5 -165
- package/2D/controls/sliders/imageBasedSlider.js.map +1 -1
- package/2D/controls/sliders/imageBasedSlider.pure.d.ts +52 -0
- package/2D/controls/sliders/imageBasedSlider.pure.js +179 -0
- package/2D/controls/sliders/imageBasedSlider.pure.js.map +1 -0
- package/2D/controls/sliders/pure.d.ts +4 -0
- package/2D/controls/sliders/pure.js +5 -0
- package/2D/controls/sliders/pure.js.map +1 -0
- package/2D/controls/sliders/scrollBar.d.ts +3 -48
- package/2D/controls/sliders/scrollBar.js +5 -170
- package/2D/controls/sliders/scrollBar.js.map +1 -1
- package/2D/controls/sliders/scrollBar.pure.d.ts +55 -0
- package/2D/controls/sliders/scrollBar.pure.js +184 -0
- package/2D/controls/sliders/scrollBar.pure.js.map +1 -0
- package/2D/controls/sliders/slider.d.ts +3 -44
- package/2D/controls/sliders/slider.js +5 -278
- package/2D/controls/sliders/slider.js.map +1 -1
- package/2D/controls/sliders/slider.pure.d.ts +51 -0
- package/2D/controls/sliders/slider.pure.js +292 -0
- package/2D/controls/sliders/slider.pure.js.map +1 -0
- package/2D/controls/stackPanel.d.ts +3 -62
- package/2D/controls/stackPanel.js +5 -243
- package/2D/controls/stackPanel.js.map +1 -1
- package/2D/controls/stackPanel.pure.d.ts +69 -0
- package/2D/controls/stackPanel.pure.js +257 -0
- package/2D/controls/stackPanel.pure.js.map +1 -0
- package/2D/controls/statics.d.ts +3 -4
- package/2D/controls/statics.js +5 -47
- package/2D/controls/statics.js.map +1 -1
- package/2D/controls/statics.pure.d.ts +11 -0
- package/2D/controls/statics.pure.js +61 -0
- package/2D/controls/statics.pure.js.map +1 -0
- package/2D/controls/textBlock.d.ts +3 -217
- package/2D/controls/textBlock.js +5 -676
- package/2D/controls/textBlock.js.map +1 -1
- package/2D/controls/textBlock.pure.d.ts +224 -0
- package/2D/controls/textBlock.pure.js +690 -0
- package/2D/controls/textBlock.pure.js.map +1 -0
- package/2D/controls/toggleButton.d.ts +3 -91
- package/2D/controls/toggleButton.js +5 -226
- package/2D/controls/toggleButton.js.map +1 -1
- package/2D/controls/toggleButton.pure.d.ts +98 -0
- package/2D/controls/toggleButton.pure.js +240 -0
- package/2D/controls/toggleButton.pure.js.map +1 -0
- package/2D/controls/virtualKeyboard.d.ts +3 -100
- package/2D/controls/virtualKeyboard.js +5 -272
- package/2D/controls/virtualKeyboard.js.map +1 -1
- package/2D/controls/virtualKeyboard.pure.d.ts +107 -0
- package/2D/controls/virtualKeyboard.pure.js +286 -0
- package/2D/controls/virtualKeyboard.pure.js.map +1 -0
- package/2D/pure.d.ts +13 -0
- package/2D/pure.js +15 -0
- package/2D/pure.js.map +1 -0
- package/3D/controls/pure.d.ts +23 -0
- package/3D/controls/pure.js +24 -0
- package/3D/controls/pure.js.map +1 -0
- package/3D/gizmos/pure.d.ts +3 -0
- package/3D/gizmos/pure.js +4 -0
- package/3D/gizmos/pure.js.map +1 -0
- package/3D/materials/fluent/fluentMaterial.d.ts +5 -100
- package/3D/materials/fluent/fluentMaterial.js +7 -305
- package/3D/materials/fluent/fluentMaterial.js.map +1 -1
- package/3D/materials/fluent/fluentMaterial.pure.d.ts +105 -0
- package/3D/materials/fluent/fluentMaterial.pure.js +317 -0
- package/3D/materials/fluent/fluentMaterial.pure.js.map +1 -0
- package/3D/materials/fluent/pure.d.ts +2 -0
- package/3D/materials/fluent/pure.js +3 -0
- package/3D/materials/fluent/pure.js.map +1 -0
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.d.ts +5 -164
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.js +7 -488
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.js.map +1 -1
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.pure.d.ts +169 -0
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.pure.js +500 -0
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.pure.js.map +1 -0
- package/3D/materials/fluentBackplate/pure.d.ts +2 -0
- package/3D/materials/fluentBackplate/pure.js +3 -0
- package/3D/materials/fluentBackplate/pure.js.map +1 -0
- package/3D/materials/fluentButton/fluentButtonMaterial.d.ts +5 -200
- package/3D/materials/fluentButton/fluentButtonMaterial.js +7 -563
- package/3D/materials/fluentButton/fluentButtonMaterial.js.map +1 -1
- package/3D/materials/fluentButton/fluentButtonMaterial.pure.d.ts +205 -0
- package/3D/materials/fluentButton/fluentButtonMaterial.pure.js +575 -0
- package/3D/materials/fluentButton/fluentButtonMaterial.pure.js.map +1 -0
- package/3D/materials/fluentButton/pure.d.ts +2 -0
- package/3D/materials/fluentButton/pure.js +3 -0
- package/3D/materials/fluentButton/pure.js.map +1 -0
- package/3D/materials/handle/handleMaterial.d.ts +5 -66
- package/3D/materials/handle/handleMaterial.js +5 -118
- package/3D/materials/handle/handleMaterial.js.map +1 -1
- package/3D/materials/handle/handleMaterial.pure.d.ts +66 -0
- package/3D/materials/handle/handleMaterial.pure.js +119 -0
- package/3D/materials/handle/handleMaterial.pure.js.map +1 -0
- package/3D/materials/handle/pure.d.ts +2 -0
- package/3D/materials/handle/pure.js +3 -0
- package/3D/materials/handle/pure.js.map +1 -0
- package/3D/materials/mrdl/mrdlBackglowMaterial.d.ts +5 -85
- package/3D/materials/mrdl/mrdlBackglowMaterial.js +7 -299
- package/3D/materials/mrdl/mrdlBackglowMaterial.js.map +1 -1
- package/3D/materials/mrdl/mrdlBackglowMaterial.pure.d.ts +90 -0
- package/3D/materials/mrdl/mrdlBackglowMaterial.pure.js +311 -0
- package/3D/materials/mrdl/mrdlBackglowMaterial.pure.js.map +1 -0
- package/3D/materials/mrdl/mrdlBackplateMaterial.d.ts +5 -145
- package/3D/materials/mrdl/mrdlBackplateMaterial.js +7 -433
- package/3D/materials/mrdl/mrdlBackplateMaterial.js.map +1 -1
- package/3D/materials/mrdl/mrdlBackplateMaterial.pure.d.ts +157 -0
- package/3D/materials/mrdl/mrdlBackplateMaterial.pure.js +452 -0
- package/3D/materials/mrdl/mrdlBackplateMaterial.pure.js.map +1 -0
- package/3D/materials/mrdl/mrdlFrontplateMaterial.d.ts +5 -183
- package/3D/materials/mrdl/mrdlFrontplateMaterial.js +7 -532
- package/3D/materials/mrdl/mrdlFrontplateMaterial.js.map +1 -1
- package/3D/materials/mrdl/mrdlFrontplateMaterial.pure.d.ts +188 -0
- package/3D/materials/mrdl/mrdlFrontplateMaterial.pure.js +544 -0
- package/3D/materials/mrdl/mrdlFrontplateMaterial.pure.js.map +1 -0
- package/3D/materials/mrdl/mrdlInnerquadMaterial.d.ts +5 -54
- package/3D/materials/mrdl/mrdlInnerquadMaterial.js +7 -227
- package/3D/materials/mrdl/mrdlInnerquadMaterial.js.map +1 -1
- package/3D/materials/mrdl/mrdlInnerquadMaterial.pure.d.ts +59 -0
- package/3D/materials/mrdl/mrdlInnerquadMaterial.pure.js +239 -0
- package/3D/materials/mrdl/mrdlInnerquadMaterial.pure.js.map +1 -0
- package/3D/materials/mrdl/mrdlSliderBarMaterial.d.ts +5 -334
- package/3D/materials/mrdl/mrdlSliderBarMaterial.js +7 -855
- package/3D/materials/mrdl/mrdlSliderBarMaterial.js.map +1 -1
- package/3D/materials/mrdl/mrdlSliderBarMaterial.pure.d.ts +346 -0
- package/3D/materials/mrdl/mrdlSliderBarMaterial.pure.js +874 -0
- package/3D/materials/mrdl/mrdlSliderBarMaterial.pure.js.map +1 -0
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.d.ts +5 -334
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.js +7 -855
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.js.map +1 -1
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.pure.d.ts +346 -0
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.pure.js +874 -0
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.pure.js.map +1 -0
- package/3D/materials/mrdl/pure.d.ts +7 -0
- package/3D/materials/mrdl/pure.js +8 -0
- package/3D/materials/mrdl/pure.js.map +1 -0
- package/3D/materials/pure.d.ts +6 -0
- package/3D/materials/pure.js +8 -0
- package/3D/materials/pure.js.map +1 -0
- package/3D/pure.d.ts +6 -0
- package/3D/pure.js +8 -0
- package/3D/pure.js.map +1 -0
- package/package.json +50 -3
- package/pure.d.ts +3 -0
- package/pure.js +5 -0
- package/pure.js.map +1 -0
|
@@ -1,56 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
import { type Nullable } from "@babylonjs/core/types.js";
|
|
7
|
-
import { type Scene } from "@babylonjs/core/scene.js";
|
|
8
|
-
import { type SubMesh } from "@babylonjs/core/Meshes/subMesh.js";
|
|
9
|
-
import { Color4 } from "@babylonjs/core/Maths/math.color.js";
|
|
10
|
-
import { PushMaterial } from "@babylonjs/core/Materials/pushMaterial.js";
|
|
1
|
+
/**
|
|
2
|
+
* Re-exports the pure implementation and applies the runtime registration side effect.
|
|
3
|
+
* Import "./mrdlInnerquadMaterial.pure" for tree-shakeable, side-effect-free usage.
|
|
4
|
+
*/
|
|
5
|
+
export * from "./mrdlInnerquadMaterial.pure.js";
|
|
11
6
|
import "./shaders/mrdlInnerquad.fragment.js";
|
|
12
7
|
import "./shaders/mrdlInnerquad.vertex.js";
|
|
13
|
-
export declare class MRDLInnerquadMaterial extends PushMaterial {
|
|
14
|
-
/**
|
|
15
|
-
* Gets or sets the color of the innerquad.
|
|
16
|
-
*/
|
|
17
|
-
color: Color4;
|
|
18
|
-
/**
|
|
19
|
-
* Gets or sets the corner radius on the innerquad. If this value is changed, update the lineWidth to match.
|
|
20
|
-
*/
|
|
21
|
-
radius: number;
|
|
22
|
-
/**
|
|
23
|
-
* Gets or sets whether the radius of the innerquad should be fixed.
|
|
24
|
-
*/
|
|
25
|
-
fixedRadius: boolean;
|
|
26
|
-
/** @hidden */
|
|
27
|
-
_filterWidth: number;
|
|
28
|
-
/**
|
|
29
|
-
* Gets or sets the glow fraction of the innerquad.
|
|
30
|
-
*/
|
|
31
|
-
glowFraction: number;
|
|
32
|
-
/**
|
|
33
|
-
* Gets or sets the maximum glow intensity of the innerquad.
|
|
34
|
-
*/
|
|
35
|
-
glowMax: number;
|
|
36
|
-
/**
|
|
37
|
-
* Gets or sets the glow falloff effect of the innerquad.
|
|
38
|
-
*/
|
|
39
|
-
glowFalloff: number;
|
|
40
|
-
constructor(name: string, scene: Scene);
|
|
41
|
-
needAlphaBlending(): boolean;
|
|
42
|
-
needAlphaTesting(): boolean;
|
|
43
|
-
getAlphaTestTexture(): Nullable<BaseTexture>;
|
|
44
|
-
isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh): boolean;
|
|
45
|
-
bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void;
|
|
46
|
-
/**
|
|
47
|
-
* Get the list of animatables in the material.
|
|
48
|
-
* @returns the list of animatables object used in the material
|
|
49
|
-
*/
|
|
50
|
-
getAnimatables(): IAnimatable[];
|
|
51
|
-
dispose(forceDisposeEffect?: boolean): void;
|
|
52
|
-
clone(name: string): MRDLInnerquadMaterial;
|
|
53
|
-
serialize(): unknown;
|
|
54
|
-
getClassName(): string;
|
|
55
|
-
static Parse(source: any, scene: Scene, rootUrl: string): MRDLInnerquadMaterial;
|
|
56
|
-
}
|
|
@@ -1,230 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
import { PushMaterial } from "@babylonjs/core/Materials/pushMaterial.js";
|
|
7
|
-
import { RegisterClass } from "@babylonjs/core/Misc/typeStore.js";
|
|
8
|
-
import { serialize } from "@babylonjs/core/Misc/decorators.js";
|
|
9
|
-
import { SerializationHelper } from "@babylonjs/core/Misc/decorators.serialization.js";
|
|
10
|
-
import { VertexBuffer } from "@babylonjs/core/Buffers/buffer.js";
|
|
1
|
+
/**
|
|
2
|
+
* Re-exports the pure implementation and applies the runtime registration side effect.
|
|
3
|
+
* Import "./mrdlInnerquadMaterial.pure" for tree-shakeable, side-effect-free usage.
|
|
4
|
+
*/
|
|
5
|
+
export * from "./mrdlInnerquadMaterial.pure.js";
|
|
11
6
|
import "./shaders/mrdlInnerquad.fragment.js";
|
|
12
7
|
import "./shaders/mrdlInnerquad.vertex.js";
|
|
13
|
-
import {
|
|
14
|
-
|
|
15
|
-
constructor() {
|
|
16
|
-
super();
|
|
17
|
-
this._needNormals = true;
|
|
18
|
-
this._needUVs = true;
|
|
19
|
-
this.rebuild();
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
export class MRDLInnerquadMaterial extends PushMaterial {
|
|
23
|
-
constructor(name, scene) {
|
|
24
|
-
super(name, scene);
|
|
25
|
-
/**
|
|
26
|
-
* Gets or sets the color of the innerquad.
|
|
27
|
-
*/
|
|
28
|
-
this.color = new Color4(1, 1, 1, 0.05);
|
|
29
|
-
/**
|
|
30
|
-
* Gets or sets the corner radius on the innerquad. If this value is changed, update the lineWidth to match.
|
|
31
|
-
*/
|
|
32
|
-
this.radius = 0.12;
|
|
33
|
-
/**
|
|
34
|
-
* Gets or sets whether the radius of the innerquad should be fixed.
|
|
35
|
-
*/
|
|
36
|
-
this.fixedRadius = true;
|
|
37
|
-
/** @hidden */
|
|
38
|
-
this._filterWidth = 1.0;
|
|
39
|
-
/**
|
|
40
|
-
* Gets or sets the glow fraction of the innerquad.
|
|
41
|
-
*/
|
|
42
|
-
this.glowFraction = 0.0;
|
|
43
|
-
/**
|
|
44
|
-
* Gets or sets the maximum glow intensity of the innerquad.
|
|
45
|
-
*/
|
|
46
|
-
this.glowMax = 0.5;
|
|
47
|
-
/**
|
|
48
|
-
* Gets or sets the glow falloff effect of the innerquad.
|
|
49
|
-
*/
|
|
50
|
-
this.glowFalloff = 2.0;
|
|
51
|
-
this.alphaMode = Constants.ALPHA_COMBINE;
|
|
52
|
-
this.backFaceCulling = false;
|
|
53
|
-
}
|
|
54
|
-
needAlphaBlending() {
|
|
55
|
-
return true;
|
|
56
|
-
}
|
|
57
|
-
needAlphaTesting() {
|
|
58
|
-
return false;
|
|
59
|
-
}
|
|
60
|
-
getAlphaTestTexture() {
|
|
61
|
-
return null;
|
|
62
|
-
}
|
|
63
|
-
// Methods
|
|
64
|
-
isReadyForSubMesh(mesh, subMesh) {
|
|
65
|
-
const drawWrapper = subMesh._drawWrapper;
|
|
66
|
-
if (this.isFrozen) {
|
|
67
|
-
if (drawWrapper.effect && drawWrapper._wasPreviouslyReady) {
|
|
68
|
-
return true;
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
if (!subMesh.materialDefines) {
|
|
72
|
-
subMesh.materialDefines = new MRDLInnerquadMaterialDefines();
|
|
73
|
-
}
|
|
74
|
-
const defines = subMesh.materialDefines;
|
|
75
|
-
const scene = this.getScene();
|
|
76
|
-
if (this._isReadyForSubMesh(subMesh)) {
|
|
77
|
-
return true;
|
|
78
|
-
}
|
|
79
|
-
const engine = scene.getEngine();
|
|
80
|
-
// Attribs
|
|
81
|
-
PrepareDefinesForAttributes(mesh, defines, true, false);
|
|
82
|
-
// Get correct effect
|
|
83
|
-
if (defines.isDirty) {
|
|
84
|
-
defines.markAsProcessed();
|
|
85
|
-
scene.resetCachedMaterial();
|
|
86
|
-
// Fallbacks
|
|
87
|
-
const fallbacks = new EffectFallbacks();
|
|
88
|
-
if (defines.FOG) {
|
|
89
|
-
fallbacks.addFallback(1, "FOG");
|
|
90
|
-
}
|
|
91
|
-
HandleFallbacksForShadows(defines, fallbacks);
|
|
92
|
-
defines.IMAGEPROCESSINGPOSTPROCESS = scene.imageProcessingConfiguration.applyByPostProcess;
|
|
93
|
-
//Attributes
|
|
94
|
-
const attribs = [VertexBuffer.PositionKind];
|
|
95
|
-
if (defines.NORMAL) {
|
|
96
|
-
attribs.push(VertexBuffer.NormalKind);
|
|
97
|
-
}
|
|
98
|
-
if (defines.UV1) {
|
|
99
|
-
attribs.push(VertexBuffer.UVKind);
|
|
100
|
-
}
|
|
101
|
-
if (defines.UV2) {
|
|
102
|
-
attribs.push(VertexBuffer.UV2Kind);
|
|
103
|
-
}
|
|
104
|
-
if (defines.VERTEXCOLOR) {
|
|
105
|
-
attribs.push(VertexBuffer.ColorKind);
|
|
106
|
-
}
|
|
107
|
-
if (defines.TANGENT) {
|
|
108
|
-
attribs.push(VertexBuffer.TangentKind);
|
|
109
|
-
}
|
|
110
|
-
PrepareAttributesForInstances(attribs, defines);
|
|
111
|
-
// Legacy browser patch
|
|
112
|
-
const shaderName = "mrdlInnerquad";
|
|
113
|
-
const join = defines.toString();
|
|
114
|
-
const uniforms = [
|
|
115
|
-
"world",
|
|
116
|
-
"worldView",
|
|
117
|
-
"worldViewProjection",
|
|
118
|
-
"view",
|
|
119
|
-
"projection",
|
|
120
|
-
"viewProjection",
|
|
121
|
-
"cameraPosition",
|
|
122
|
-
"_Color_",
|
|
123
|
-
"_Radius_",
|
|
124
|
-
"_Fixed_Radius_",
|
|
125
|
-
"_Filter_Width_",
|
|
126
|
-
"_Glow_Fraction_",
|
|
127
|
-
"_Glow_Max_",
|
|
128
|
-
"_Glow_Falloff_",
|
|
129
|
-
];
|
|
130
|
-
const samplers = [];
|
|
131
|
-
const uniformBuffers = [];
|
|
132
|
-
PrepareUniformsAndSamplersList({
|
|
133
|
-
uniformsNames: uniforms,
|
|
134
|
-
uniformBuffersNames: uniformBuffers,
|
|
135
|
-
samplers: samplers,
|
|
136
|
-
defines: defines,
|
|
137
|
-
maxSimultaneousLights: 4,
|
|
138
|
-
});
|
|
139
|
-
subMesh.setEffect(scene.getEngine().createEffect(shaderName, {
|
|
140
|
-
attributes: attribs,
|
|
141
|
-
uniformsNames: uniforms,
|
|
142
|
-
uniformBuffersNames: uniformBuffers,
|
|
143
|
-
samplers: samplers,
|
|
144
|
-
defines: join,
|
|
145
|
-
fallbacks: fallbacks,
|
|
146
|
-
onCompiled: this.onCompiled,
|
|
147
|
-
onError: this.onError,
|
|
148
|
-
indexParameters: { maxSimultaneousLights: 4 },
|
|
149
|
-
}, engine), defines);
|
|
150
|
-
}
|
|
151
|
-
if (!subMesh.effect || !subMesh.effect.isReady()) {
|
|
152
|
-
return false;
|
|
153
|
-
}
|
|
154
|
-
defines._renderId = scene.getRenderId();
|
|
155
|
-
drawWrapper._wasPreviouslyReady = true;
|
|
156
|
-
return true;
|
|
157
|
-
}
|
|
158
|
-
bindForSubMesh(world, mesh, subMesh) {
|
|
159
|
-
const scene = this.getScene();
|
|
160
|
-
const defines = subMesh.materialDefines;
|
|
161
|
-
if (!defines) {
|
|
162
|
-
return;
|
|
163
|
-
}
|
|
164
|
-
const effect = subMesh.effect;
|
|
165
|
-
if (!effect) {
|
|
166
|
-
return;
|
|
167
|
-
}
|
|
168
|
-
this._activeEffect = effect;
|
|
169
|
-
// Matrices
|
|
170
|
-
this.bindOnlyWorldMatrix(world);
|
|
171
|
-
this._activeEffect.setMatrix("viewProjection", scene.getTransformMatrix());
|
|
172
|
-
this._activeEffect.setVector3("cameraPosition", scene.activeCamera.position);
|
|
173
|
-
// "Color"
|
|
174
|
-
this._activeEffect.setDirectColor4("_Color_", this.color);
|
|
175
|
-
// "Shape"
|
|
176
|
-
this._activeEffect.setFloat("_Radius_", this.radius);
|
|
177
|
-
this._activeEffect.setFloat("_Fixed_Radius_", this.fixedRadius ? 1.0 : 0.0);
|
|
178
|
-
this._activeEffect.setFloat("_Filter_Width_", this._filterWidth);
|
|
179
|
-
// "Glow"
|
|
180
|
-
this._activeEffect.setFloat("_Glow_Fraction_", this.glowFraction);
|
|
181
|
-
this._activeEffect.setFloat("_Glow_Max_", this.glowMax);
|
|
182
|
-
this._activeEffect.setFloat("_Glow_Falloff_", this.glowFalloff);
|
|
183
|
-
this._afterBind(mesh, this._activeEffect, subMesh);
|
|
184
|
-
}
|
|
185
|
-
/**
|
|
186
|
-
* Get the list of animatables in the material.
|
|
187
|
-
* @returns the list of animatables object used in the material
|
|
188
|
-
*/
|
|
189
|
-
getAnimatables() {
|
|
190
|
-
return [];
|
|
191
|
-
}
|
|
192
|
-
dispose(forceDisposeEffect) {
|
|
193
|
-
super.dispose(forceDisposeEffect);
|
|
194
|
-
}
|
|
195
|
-
clone(name) {
|
|
196
|
-
return SerializationHelper.Clone(() => new MRDLInnerquadMaterial(name, this.getScene()), this);
|
|
197
|
-
}
|
|
198
|
-
serialize() {
|
|
199
|
-
const serializationObject = SerializationHelper.Serialize(this);
|
|
200
|
-
serializationObject.customType = "BABYLON.MRDLInnerquadMaterial";
|
|
201
|
-
return serializationObject;
|
|
202
|
-
}
|
|
203
|
-
getClassName() {
|
|
204
|
-
return "MRDLInnerquadMaterial";
|
|
205
|
-
}
|
|
206
|
-
// Statics
|
|
207
|
-
static Parse(source, scene, rootUrl) {
|
|
208
|
-
return SerializationHelper.Parse(() => new MRDLInnerquadMaterial(source.name, scene), source, scene, rootUrl);
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
__decorate([
|
|
212
|
-
serialize()
|
|
213
|
-
], MRDLInnerquadMaterial.prototype, "color", void 0);
|
|
214
|
-
__decorate([
|
|
215
|
-
serialize()
|
|
216
|
-
], MRDLInnerquadMaterial.prototype, "radius", void 0);
|
|
217
|
-
__decorate([
|
|
218
|
-
serialize()
|
|
219
|
-
], MRDLInnerquadMaterial.prototype, "fixedRadius", void 0);
|
|
220
|
-
__decorate([
|
|
221
|
-
serialize()
|
|
222
|
-
], MRDLInnerquadMaterial.prototype, "glowFraction", void 0);
|
|
223
|
-
__decorate([
|
|
224
|
-
serialize()
|
|
225
|
-
], MRDLInnerquadMaterial.prototype, "glowMax", void 0);
|
|
226
|
-
__decorate([
|
|
227
|
-
serialize()
|
|
228
|
-
], MRDLInnerquadMaterial.prototype, "glowFalloff", void 0);
|
|
229
|
-
RegisterClass("BABYLON.GUI.MRDLInnerquadMaterial", MRDLInnerquadMaterial);
|
|
8
|
+
import { RegisterMRDLInnerquadMaterial } from "./mrdlInnerquadMaterial.pure.js";
|
|
9
|
+
RegisterMRDLInnerquadMaterial();
|
|
230
10
|
//# sourceMappingURL=mrdlInnerquadMaterial.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mrdlInnerquadMaterial.js","sourceRoot":"","sources":["../../../../../../dev/gui/src/3D/materials/mrdl/mrdlInnerquadMaterial.ts"],"names":[],"mappings":"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","sourcesContent":["import { type AbstractMesh } from \"core/Meshes/abstractMesh\";\r\nimport { type BaseTexture } from \"core/Materials/Textures/baseTexture\";\r\nimport { type IAnimatable } from \"core/Animations/animatable.interface\";\r\nimport { type IEffectCreationOptions } from \"core/Materials/effect\";\r\nimport { type Matrix } from \"core/Maths/math.vector\";\r\nimport { type Mesh } from \"core/Meshes/mesh\";\r\nimport { type Nullable } from \"core/types\";\r\nimport { type Scene } from \"core/scene\";\r\nimport { type SubMesh } from \"core/Meshes/subMesh\";\r\n\r\nimport { Color4 } from \"core/Maths/math.color\";\r\nimport { Constants } from \"core/Engines/constants\";\r\nimport { EffectFallbacks } from \"core/Materials/effectFallbacks\";\r\nimport { MaterialDefines } from \"core/Materials/materialDefines\";\r\nimport { PushMaterial } from \"core/Materials/pushMaterial\";\r\nimport { RegisterClass } from \"core/Misc/typeStore\";\r\nimport { serialize } from \"core/Misc/decorators\";\r\nimport { SerializationHelper } from \"core/Misc/decorators.serialization\";\r\nimport { VertexBuffer } from \"core/Buffers/buffer\";\r\n\r\nimport \"./shaders/mrdlInnerquad.fragment\";\r\nimport \"./shaders/mrdlInnerquad.vertex\";\r\nimport { HandleFallbacksForShadows, PrepareAttributesForInstances, PrepareDefinesForAttributes, PrepareUniformsAndSamplersList } from \"core/Materials/materialHelper.functions\";\r\n\r\nclass MRDLInnerquadMaterialDefines extends MaterialDefines {\r\n constructor() {\r\n super();\r\n this._needNormals = true;\r\n this._needUVs = true;\r\n this.rebuild();\r\n }\r\n}\r\n\r\nexport class MRDLInnerquadMaterial extends PushMaterial {\r\n /**\r\n * Gets or sets the color of the innerquad.\r\n */\r\n @serialize()\r\n public color: Color4 = new Color4(1, 1, 1, 0.05);\r\n /**\r\n * Gets or sets the corner radius on the innerquad. If this value is changed, update the lineWidth to match.\r\n */\r\n @serialize()\r\n public radius = 0.12;\r\n\r\n /**\r\n * Gets or sets whether the radius of the innerquad should be fixed.\r\n */\r\n @serialize()\r\n public fixedRadius = true;\r\n\r\n /** @hidden */\r\n public _filterWidth = 1.0;\r\n\r\n /**\r\n * Gets or sets the glow fraction of the innerquad.\r\n */\r\n @serialize()\r\n public glowFraction = 0.0;\r\n\r\n /**\r\n * Gets or sets the maximum glow intensity of the innerquad.\r\n */\r\n @serialize()\r\n public glowMax = 0.5;\r\n\r\n /**\r\n * Gets or sets the glow falloff effect of the innerquad.\r\n */\r\n @serialize()\r\n public glowFalloff = 2.0;\r\n\r\n constructor(name: string, scene: Scene) {\r\n super(name, scene);\r\n this.alphaMode = Constants.ALPHA_COMBINE;\r\n this.backFaceCulling = false;\r\n }\r\n\r\n public override needAlphaBlending(): boolean {\r\n return true;\r\n }\r\n\r\n public override needAlphaTesting(): boolean {\r\n return false;\r\n }\r\n\r\n public override getAlphaTestTexture(): Nullable<BaseTexture> {\r\n return null;\r\n }\r\n\r\n // Methods\r\n public override isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh): boolean {\r\n const drawWrapper = subMesh._drawWrapper;\r\n\r\n if (this.isFrozen) {\r\n if (drawWrapper.effect && drawWrapper._wasPreviouslyReady) {\r\n return true;\r\n }\r\n }\r\n\r\n if (!subMesh.materialDefines) {\r\n subMesh.materialDefines = new MRDLInnerquadMaterialDefines();\r\n }\r\n\r\n const defines = <MRDLInnerquadMaterialDefines>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 PrepareDefinesForAttributes(mesh, defines, true, 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 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 PrepareAttributesForInstances(attribs, defines);\r\n\r\n // Legacy browser patch\r\n const shaderName = \"mrdlInnerquad\";\r\n const join = defines.toString();\r\n\r\n const uniforms = [\r\n \"world\",\r\n \"worldView\",\r\n \"worldViewProjection\",\r\n \"view\",\r\n \"projection\",\r\n \"viewProjection\",\r\n \"cameraPosition\",\r\n \"_Color_\",\r\n \"_Radius_\",\r\n \"_Fixed_Radius_\",\r\n \"_Filter_Width_\",\r\n \"_Glow_Fraction_\",\r\n \"_Glow_Max_\",\r\n \"_Glow_Falloff_\",\r\n ];\r\n const samplers: string[] = [];\r\n const uniformBuffers: string[] = [];\r\n\r\n 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 drawWrapper._wasPreviouslyReady = true;\r\n\r\n return true;\r\n }\r\n\r\n public override bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void {\r\n const scene = this.getScene();\r\n\r\n const defines = <MRDLInnerquadMaterialDefines>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\", scene.getTransformMatrix());\r\n this._activeEffect.setVector3(\"cameraPosition\", scene.activeCamera!.position);\r\n\r\n // \"Color\"\r\n this._activeEffect.setDirectColor4(\"_Color_\", this.color);\r\n\r\n // \"Shape\"\r\n this._activeEffect.setFloat(\"_Radius_\", this.radius);\r\n this._activeEffect.setFloat(\"_Fixed_Radius_\", this.fixedRadius ? 1.0 : 0.0);\r\n this._activeEffect.setFloat(\"_Filter_Width_\", this._filterWidth);\r\n\r\n // \"Glow\"\r\n this._activeEffect.setFloat(\"_Glow_Fraction_\", this.glowFraction);\r\n this._activeEffect.setFloat(\"_Glow_Max_\", this.glowMax);\r\n this._activeEffect.setFloat(\"_Glow_Falloff_\", this.glowFalloff);\r\n\r\n this._afterBind(mesh, this._activeEffect, subMesh);\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 override getAnimatables(): IAnimatable[] {\r\n return [];\r\n }\r\n\r\n public override dispose(forceDisposeEffect?: boolean): void {\r\n super.dispose(forceDisposeEffect);\r\n }\r\n\r\n public override clone(name: string): MRDLInnerquadMaterial {\r\n return SerializationHelper.Clone(() => new MRDLInnerquadMaterial(name, this.getScene()), this);\r\n }\r\n\r\n public override serialize(): unknown {\r\n const serializationObject = SerializationHelper.Serialize(this);\r\n serializationObject.customType = \"BABYLON.MRDLInnerquadMaterial\";\r\n return serializationObject;\r\n }\r\n\r\n public override getClassName(): string {\r\n return \"MRDLInnerquadMaterial\";\r\n }\r\n\r\n // Statics\r\n public static override Parse(source: any, scene: Scene, rootUrl: string): MRDLInnerquadMaterial {\r\n return SerializationHelper.Parse(() => new MRDLInnerquadMaterial(source.name, scene), source, scene, rootUrl);\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.GUI.MRDLInnerquadMaterial\", MRDLInnerquadMaterial);\r\n"]}
|
|
1
|
+
{"version":3,"file":"mrdlInnerquadMaterial.js","sourceRoot":"","sources":["../../../../../../dev/gui/src/3D/materials/mrdl/mrdlInnerquadMaterial.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,8BAA8B,CAAC;AAE7C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,gCAAgC,CAAC;AAExC,OAAO,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAC7E,6BAA6B,EAAE,CAAC","sourcesContent":["/**\r\n * Re-exports the pure implementation and applies the runtime registration side effect.\r\n * Import \"./mrdlInnerquadMaterial.pure\" for tree-shakeable, side-effect-free usage.\r\n */\r\nexport * from \"./mrdlInnerquadMaterial.pure\";\r\n\r\nimport \"./shaders/mrdlInnerquad.fragment\";\r\nimport \"./shaders/mrdlInnerquad.vertex\";\r\n\r\nimport { RegisterMRDLInnerquadMaterial } from \"./mrdlInnerquadMaterial.pure\";\r\nRegisterMRDLInnerquadMaterial();\r\n"]}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { type AbstractMesh } from "@babylonjs/core/Meshes/abstractMesh.pure.js";
|
|
2
|
+
import { type BaseTexture } from "@babylonjs/core/Materials/Textures/baseTexture.js";
|
|
3
|
+
import { type IAnimatable } from "@babylonjs/core/Animations/animatable.interface.js";
|
|
4
|
+
import { type Matrix } from "@babylonjs/core/Maths/math.vector.pure.js";
|
|
5
|
+
import { type Mesh } from "@babylonjs/core/Meshes/mesh.js";
|
|
6
|
+
import { type Nullable } from "@babylonjs/core/types.js";
|
|
7
|
+
import { type Scene } from "@babylonjs/core/scene.js";
|
|
8
|
+
import { type SubMesh } from "@babylonjs/core/Meshes/subMesh.js";
|
|
9
|
+
import { Color4 } from "@babylonjs/core/Maths/math.color.pure.js";
|
|
10
|
+
import { PushMaterial } from "@babylonjs/core/Materials/pushMaterial.js";
|
|
11
|
+
export declare class MRDLInnerquadMaterial extends PushMaterial {
|
|
12
|
+
/**
|
|
13
|
+
* Gets or sets the color of the innerquad.
|
|
14
|
+
*/
|
|
15
|
+
color: Color4;
|
|
16
|
+
/**
|
|
17
|
+
* Gets or sets the corner radius on the innerquad. If this value is changed, update the lineWidth to match.
|
|
18
|
+
*/
|
|
19
|
+
radius: number;
|
|
20
|
+
/**
|
|
21
|
+
* Gets or sets whether the radius of the innerquad should be fixed.
|
|
22
|
+
*/
|
|
23
|
+
fixedRadius: boolean;
|
|
24
|
+
/** @hidden */
|
|
25
|
+
_filterWidth: number;
|
|
26
|
+
/**
|
|
27
|
+
* Gets or sets the glow fraction of the innerquad.
|
|
28
|
+
*/
|
|
29
|
+
glowFraction: number;
|
|
30
|
+
/**
|
|
31
|
+
* Gets or sets the maximum glow intensity of the innerquad.
|
|
32
|
+
*/
|
|
33
|
+
glowMax: number;
|
|
34
|
+
/**
|
|
35
|
+
* Gets or sets the glow falloff effect of the innerquad.
|
|
36
|
+
*/
|
|
37
|
+
glowFalloff: number;
|
|
38
|
+
constructor(name: string, scene: Scene);
|
|
39
|
+
needAlphaBlending(): boolean;
|
|
40
|
+
needAlphaTesting(): boolean;
|
|
41
|
+
getAlphaTestTexture(): Nullable<BaseTexture>;
|
|
42
|
+
isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh): boolean;
|
|
43
|
+
bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void;
|
|
44
|
+
/**
|
|
45
|
+
* Get the list of animatables in the material.
|
|
46
|
+
* @returns the list of animatables object used in the material
|
|
47
|
+
*/
|
|
48
|
+
getAnimatables(): IAnimatable[];
|
|
49
|
+
dispose(forceDisposeEffect?: boolean): void;
|
|
50
|
+
clone(name: string): MRDLInnerquadMaterial;
|
|
51
|
+
serialize(): unknown;
|
|
52
|
+
getClassName(): string;
|
|
53
|
+
static Parse(source: any, scene: Scene, rootUrl: string): MRDLInnerquadMaterial;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Registers the MRDLInnerquadMaterial class with the type store for serialization support.
|
|
57
|
+
* Safe to call multiple times; only the first call has an effect.
|
|
58
|
+
*/
|
|
59
|
+
export declare function RegisterMRDLInnerquadMaterial(): void;
|
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
import { __decorate } from "@babylonjs/core/tslib.es6.js";
|
|
2
|
+
import { Color4 } from "@babylonjs/core/Maths/math.color.pure.js";
|
|
3
|
+
import { Constants } from "@babylonjs/core/Engines/constants.js";
|
|
4
|
+
import { EffectFallbacks } from "@babylonjs/core/Materials/effectFallbacks.js";
|
|
5
|
+
import { MaterialDefines } from "@babylonjs/core/Materials/materialDefines.js";
|
|
6
|
+
import { PushMaterial } from "@babylonjs/core/Materials/pushMaterial.js";
|
|
7
|
+
import { RegisterClass } from "@babylonjs/core/Misc/typeStore.js";
|
|
8
|
+
import { serialize } from "@babylonjs/core/Misc/decorators.js";
|
|
9
|
+
import { SerializationHelper } from "@babylonjs/core/Misc/decorators.serialization.js";
|
|
10
|
+
import { VertexBuffer } from "@babylonjs/core/Buffers/buffer.pure.js";
|
|
11
|
+
import { HandleFallbacksForShadows, PrepareAttributesForInstances, PrepareDefinesForAttributes, PrepareUniformsAndSamplersList } from "@babylonjs/core/Materials/materialHelper.functions.js";
|
|
12
|
+
class MRDLInnerquadMaterialDefines extends MaterialDefines {
|
|
13
|
+
constructor() {
|
|
14
|
+
super();
|
|
15
|
+
this._needNormals = true;
|
|
16
|
+
this._needUVs = true;
|
|
17
|
+
this.rebuild();
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
export class MRDLInnerquadMaterial extends PushMaterial {
|
|
21
|
+
constructor(name, scene) {
|
|
22
|
+
super(name, scene);
|
|
23
|
+
/**
|
|
24
|
+
* Gets or sets the color of the innerquad.
|
|
25
|
+
*/
|
|
26
|
+
this.color = new Color4(1, 1, 1, 0.05);
|
|
27
|
+
/**
|
|
28
|
+
* Gets or sets the corner radius on the innerquad. If this value is changed, update the lineWidth to match.
|
|
29
|
+
*/
|
|
30
|
+
this.radius = 0.12;
|
|
31
|
+
/**
|
|
32
|
+
* Gets or sets whether the radius of the innerquad should be fixed.
|
|
33
|
+
*/
|
|
34
|
+
this.fixedRadius = true;
|
|
35
|
+
/** @hidden */
|
|
36
|
+
this._filterWidth = 1.0;
|
|
37
|
+
/**
|
|
38
|
+
* Gets or sets the glow fraction of the innerquad.
|
|
39
|
+
*/
|
|
40
|
+
this.glowFraction = 0.0;
|
|
41
|
+
/**
|
|
42
|
+
* Gets or sets the maximum glow intensity of the innerquad.
|
|
43
|
+
*/
|
|
44
|
+
this.glowMax = 0.5;
|
|
45
|
+
/**
|
|
46
|
+
* Gets or sets the glow falloff effect of the innerquad.
|
|
47
|
+
*/
|
|
48
|
+
this.glowFalloff = 2.0;
|
|
49
|
+
this.alphaMode = Constants.ALPHA_COMBINE;
|
|
50
|
+
this.backFaceCulling = false;
|
|
51
|
+
}
|
|
52
|
+
needAlphaBlending() {
|
|
53
|
+
return true;
|
|
54
|
+
}
|
|
55
|
+
needAlphaTesting() {
|
|
56
|
+
return false;
|
|
57
|
+
}
|
|
58
|
+
getAlphaTestTexture() {
|
|
59
|
+
return null;
|
|
60
|
+
}
|
|
61
|
+
// Methods
|
|
62
|
+
isReadyForSubMesh(mesh, subMesh) {
|
|
63
|
+
const drawWrapper = subMesh._drawWrapper;
|
|
64
|
+
if (this.isFrozen) {
|
|
65
|
+
if (drawWrapper.effect && drawWrapper._wasPreviouslyReady) {
|
|
66
|
+
return true;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
if (!subMesh.materialDefines) {
|
|
70
|
+
subMesh.materialDefines = new MRDLInnerquadMaterialDefines();
|
|
71
|
+
}
|
|
72
|
+
const defines = subMesh.materialDefines;
|
|
73
|
+
const scene = this.getScene();
|
|
74
|
+
if (this._isReadyForSubMesh(subMesh)) {
|
|
75
|
+
return true;
|
|
76
|
+
}
|
|
77
|
+
const engine = scene.getEngine();
|
|
78
|
+
// Attribs
|
|
79
|
+
PrepareDefinesForAttributes(mesh, defines, true, false);
|
|
80
|
+
// Get correct effect
|
|
81
|
+
if (defines.isDirty) {
|
|
82
|
+
defines.markAsProcessed();
|
|
83
|
+
scene.resetCachedMaterial();
|
|
84
|
+
// Fallbacks
|
|
85
|
+
const fallbacks = new EffectFallbacks();
|
|
86
|
+
if (defines.FOG) {
|
|
87
|
+
fallbacks.addFallback(1, "FOG");
|
|
88
|
+
}
|
|
89
|
+
HandleFallbacksForShadows(defines, fallbacks);
|
|
90
|
+
defines.IMAGEPROCESSINGPOSTPROCESS = scene.imageProcessingConfiguration.applyByPostProcess;
|
|
91
|
+
//Attributes
|
|
92
|
+
const attribs = [VertexBuffer.PositionKind];
|
|
93
|
+
if (defines.NORMAL) {
|
|
94
|
+
attribs.push(VertexBuffer.NormalKind);
|
|
95
|
+
}
|
|
96
|
+
if (defines.UV1) {
|
|
97
|
+
attribs.push(VertexBuffer.UVKind);
|
|
98
|
+
}
|
|
99
|
+
if (defines.UV2) {
|
|
100
|
+
attribs.push(VertexBuffer.UV2Kind);
|
|
101
|
+
}
|
|
102
|
+
if (defines.VERTEXCOLOR) {
|
|
103
|
+
attribs.push(VertexBuffer.ColorKind);
|
|
104
|
+
}
|
|
105
|
+
if (defines.TANGENT) {
|
|
106
|
+
attribs.push(VertexBuffer.TangentKind);
|
|
107
|
+
}
|
|
108
|
+
PrepareAttributesForInstances(attribs, defines);
|
|
109
|
+
// Legacy browser patch
|
|
110
|
+
const shaderName = "mrdlInnerquad";
|
|
111
|
+
const join = defines.toString();
|
|
112
|
+
const uniforms = [
|
|
113
|
+
"world",
|
|
114
|
+
"worldView",
|
|
115
|
+
"worldViewProjection",
|
|
116
|
+
"view",
|
|
117
|
+
"projection",
|
|
118
|
+
"viewProjection",
|
|
119
|
+
"cameraPosition",
|
|
120
|
+
"_Color_",
|
|
121
|
+
"_Radius_",
|
|
122
|
+
"_Fixed_Radius_",
|
|
123
|
+
"_Filter_Width_",
|
|
124
|
+
"_Glow_Fraction_",
|
|
125
|
+
"_Glow_Max_",
|
|
126
|
+
"_Glow_Falloff_",
|
|
127
|
+
];
|
|
128
|
+
const samplers = [];
|
|
129
|
+
const uniformBuffers = [];
|
|
130
|
+
PrepareUniformsAndSamplersList({
|
|
131
|
+
uniformsNames: uniforms,
|
|
132
|
+
uniformBuffersNames: uniformBuffers,
|
|
133
|
+
samplers: samplers,
|
|
134
|
+
defines: defines,
|
|
135
|
+
maxSimultaneousLights: 4,
|
|
136
|
+
});
|
|
137
|
+
subMesh.setEffect(scene.getEngine().createEffect(shaderName, {
|
|
138
|
+
attributes: attribs,
|
|
139
|
+
uniformsNames: uniforms,
|
|
140
|
+
uniformBuffersNames: uniformBuffers,
|
|
141
|
+
samplers: samplers,
|
|
142
|
+
defines: join,
|
|
143
|
+
fallbacks: fallbacks,
|
|
144
|
+
onCompiled: this.onCompiled,
|
|
145
|
+
onError: this.onError,
|
|
146
|
+
indexParameters: { maxSimultaneousLights: 4 },
|
|
147
|
+
}, engine), defines);
|
|
148
|
+
}
|
|
149
|
+
if (!subMesh.effect || !subMesh.effect.isReady()) {
|
|
150
|
+
return false;
|
|
151
|
+
}
|
|
152
|
+
defines._renderId = scene.getRenderId();
|
|
153
|
+
drawWrapper._wasPreviouslyReady = true;
|
|
154
|
+
return true;
|
|
155
|
+
}
|
|
156
|
+
bindForSubMesh(world, mesh, subMesh) {
|
|
157
|
+
const scene = this.getScene();
|
|
158
|
+
const defines = subMesh.materialDefines;
|
|
159
|
+
if (!defines) {
|
|
160
|
+
return;
|
|
161
|
+
}
|
|
162
|
+
const effect = subMesh.effect;
|
|
163
|
+
if (!effect) {
|
|
164
|
+
return;
|
|
165
|
+
}
|
|
166
|
+
this._activeEffect = effect;
|
|
167
|
+
// Matrices
|
|
168
|
+
this.bindOnlyWorldMatrix(world);
|
|
169
|
+
this._activeEffect.setMatrix("viewProjection", scene.getTransformMatrix());
|
|
170
|
+
this._activeEffect.setVector3("cameraPosition", scene.activeCamera.position);
|
|
171
|
+
// "Color"
|
|
172
|
+
this._activeEffect.setDirectColor4("_Color_", this.color);
|
|
173
|
+
// "Shape"
|
|
174
|
+
this._activeEffect.setFloat("_Radius_", this.radius);
|
|
175
|
+
this._activeEffect.setFloat("_Fixed_Radius_", this.fixedRadius ? 1.0 : 0.0);
|
|
176
|
+
this._activeEffect.setFloat("_Filter_Width_", this._filterWidth);
|
|
177
|
+
// "Glow"
|
|
178
|
+
this._activeEffect.setFloat("_Glow_Fraction_", this.glowFraction);
|
|
179
|
+
this._activeEffect.setFloat("_Glow_Max_", this.glowMax);
|
|
180
|
+
this._activeEffect.setFloat("_Glow_Falloff_", this.glowFalloff);
|
|
181
|
+
this._afterBind(mesh, this._activeEffect, subMesh);
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Get the list of animatables in the material.
|
|
185
|
+
* @returns the list of animatables object used in the material
|
|
186
|
+
*/
|
|
187
|
+
getAnimatables() {
|
|
188
|
+
return [];
|
|
189
|
+
}
|
|
190
|
+
dispose(forceDisposeEffect) {
|
|
191
|
+
super.dispose(forceDisposeEffect);
|
|
192
|
+
}
|
|
193
|
+
clone(name) {
|
|
194
|
+
return SerializationHelper.Clone(() => new MRDLInnerquadMaterial(name, this.getScene()), this);
|
|
195
|
+
}
|
|
196
|
+
serialize() {
|
|
197
|
+
const serializationObject = SerializationHelper.Serialize(this);
|
|
198
|
+
serializationObject.customType = "BABYLON.MRDLInnerquadMaterial";
|
|
199
|
+
return serializationObject;
|
|
200
|
+
}
|
|
201
|
+
getClassName() {
|
|
202
|
+
return "MRDLInnerquadMaterial";
|
|
203
|
+
}
|
|
204
|
+
// Statics
|
|
205
|
+
static Parse(source, scene, rootUrl) {
|
|
206
|
+
return SerializationHelper.Parse(() => new MRDLInnerquadMaterial(source.name, scene), source, scene, rootUrl);
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
__decorate([
|
|
210
|
+
serialize()
|
|
211
|
+
], MRDLInnerquadMaterial.prototype, "color", void 0);
|
|
212
|
+
__decorate([
|
|
213
|
+
serialize()
|
|
214
|
+
], MRDLInnerquadMaterial.prototype, "radius", void 0);
|
|
215
|
+
__decorate([
|
|
216
|
+
serialize()
|
|
217
|
+
], MRDLInnerquadMaterial.prototype, "fixedRadius", void 0);
|
|
218
|
+
__decorate([
|
|
219
|
+
serialize()
|
|
220
|
+
], MRDLInnerquadMaterial.prototype, "glowFraction", void 0);
|
|
221
|
+
__decorate([
|
|
222
|
+
serialize()
|
|
223
|
+
], MRDLInnerquadMaterial.prototype, "glowMax", void 0);
|
|
224
|
+
__decorate([
|
|
225
|
+
serialize()
|
|
226
|
+
], MRDLInnerquadMaterial.prototype, "glowFalloff", void 0);
|
|
227
|
+
let _Registered = false;
|
|
228
|
+
/**
|
|
229
|
+
* Registers the MRDLInnerquadMaterial class with the type store for serialization support.
|
|
230
|
+
* Safe to call multiple times; only the first call has an effect.
|
|
231
|
+
*/
|
|
232
|
+
export function RegisterMRDLInnerquadMaterial() {
|
|
233
|
+
if (_Registered) {
|
|
234
|
+
return;
|
|
235
|
+
}
|
|
236
|
+
_Registered = true;
|
|
237
|
+
RegisterClass("BABYLON.GUI.MRDLInnerquadMaterial", MRDLInnerquadMaterial);
|
|
238
|
+
}
|
|
239
|
+
//# sourceMappingURL=mrdlInnerquadMaterial.pure.js.map
|