babylonjs-gui 5.0.0-alpha.61 → 5.0.0-alpha.65

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.
@@ -35,26 +35,30 @@ declare module "babylonjs-gui/2D/controls/focusableControl" {
35
35
  }
36
36
  }
37
37
  declare module "babylonjs-gui/2D/valueAndUnit" {
38
+ import { Observable } from "babylonjs/Misc/observable";
38
39
  import { AdvancedDynamicTexture } from "babylonjs-gui/2D/advancedDynamicTexture";
39
40
  /**
40
41
  * Class used to specific a value and its associated unit
41
42
  */
42
43
  export class ValueAndUnit {
43
- /** defines the unit to store */
44
- unit: number;
45
44
  /** defines a boolean indicating if the value can be negative */
46
45
  negativeValueAllowed: boolean;
47
46
  private _value;
47
+ private _unit;
48
48
  private _originalUnit;
49
49
  /**
50
50
  * Gets or sets a value indicating that this value will not scale accordingly with adaptive scaling property
51
51
  * @see https://doc.babylonjs.com/how_to/gui#adaptive-scaling
52
52
  */
53
53
  ignoreAdaptiveScaling: boolean;
54
+ /**
55
+ * Observable event triggered each time the value or unit changes
56
+ */
57
+ onChangedObservable: Observable<void>;
54
58
  /**
55
59
  * Creates a new ValueAndUnit
56
60
  * @param value defines the value to store
57
- * @param unit defines the unit to store
61
+ * @param unit defines the unit to store - defaults to ValueAndUnit.UNITMODE_PIXEL
58
62
  * @param negativeValueAllowed defines a boolean indicating if the value can be negative
59
63
  */
60
64
  constructor(value: number,
@@ -66,8 +70,19 @@ declare module "babylonjs-gui/2D/valueAndUnit" {
66
70
  get isPercentage(): boolean;
67
71
  /** Gets a boolean indicating if the value is store as pixel */
68
72
  get isPixel(): boolean;
69
- /** Gets direct internal value */
73
+ /**
74
+ * Gets value (without units)
75
+ * @deprecated use value property instead
76
+ */
70
77
  get internalValue(): number;
78
+ /** Gets value (without units) */
79
+ get value(): number;
80
+ /** Sets value (without units) */
81
+ set value(value: number);
82
+ /** Gets units (without value) */
83
+ get unit(): number;
84
+ /** Sets units (without value) */
85
+ set unit(value: number);
71
86
  /**
72
87
  * Gets value as pixel
73
88
  * @param host defines the root host
@@ -76,7 +91,7 @@ declare module "babylonjs-gui/2D/valueAndUnit" {
76
91
  */
77
92
  getValueInPixel(host: AdvancedDynamicTexture, refValue: number): number;
78
93
  /**
79
- * Update the current value and unit. This should be done cautiously as the GUi won't be marked as dirty with this function.
94
+ * Update the current value and unit.
80
95
  * @param value defines the value to store
81
96
  * @param unit defines the unit to store
82
97
  * @returns the current ValueAndUnit
@@ -98,7 +113,7 @@ declare module "babylonjs-gui/2D/valueAndUnit" {
98
113
  /**
99
114
  * Store a value parsed from a string
100
115
  * @param source defines the source string
101
- * @returns true if the value was successfully parsed
116
+ * @returns true if the value was successfully parsed and updated
102
117
  */
103
118
  fromString(source: string | number): boolean;
104
119
  private static _Regex;
@@ -232,6 +247,11 @@ declare module "babylonjs-gui/2D/math2D" {
232
247
  * @returns a new matrix
233
248
  */
234
249
  static Identity(): Matrix2D;
250
+ /**
251
+ * Creates an identity matrix and stores it in a target matrix
252
+ * @param result defines the target matrix
253
+ */
254
+ static IdentityToRef(result: Matrix2D): void;
235
255
  /**
236
256
  * Creates a translation matrix and stores it in a target matrix
237
257
  * @param x defines the x coordinate of the translation
@@ -372,6 +392,8 @@ declare module "babylonjs-gui/2D/advancedDynamicTexture" {
372
392
  export class AdvancedDynamicTexture extends DynamicTexture {
373
393
  /** Define the Uurl to load snippets */
374
394
  static SnippetUrl: string;
395
+ /** Indicates if some optimizations can be performed in GUI GPU management (the downside is additional memory/GPU texture memory used) */
396
+ static AllowGPUOptimizations: boolean;
375
397
  /** Snippet ID if the content was created from the snippet server */
376
398
  snippetId: string;
377
399
  private _isDirty;
@@ -746,9 +768,10 @@ declare module "babylonjs-gui/2D/advancedDynamicTexture" {
746
768
  * @param foreground defines a boolean indicating if the texture must be rendered in foreground (default is true)
747
769
  * @param scene defines the hosting scene
748
770
  * @param sampling defines the texture sampling mode (Texture.BILINEAR_SAMPLINGMODE by default)
771
+ * @param adaptiveScaling defines whether to automatically scale root to match hardwarescaling (false by default)
749
772
  * @returns a new AdvancedDynamicTexture
750
773
  */
751
- static CreateFullscreenUI(name: string, foreground?: boolean, scene?: Nullable<Scene>, sampling?: number): AdvancedDynamicTexture;
774
+ static CreateFullscreenUI(name: string, foreground?: boolean, scene?: Nullable<Scene>, sampling?: number, adaptiveScaling?: boolean): AdvancedDynamicTexture;
752
775
  }
753
776
  }
754
777
  declare module "babylonjs-gui/2D/controls/control" {
@@ -785,6 +808,8 @@ declare module "babylonjs-gui/2D/controls/control" {
785
808
  parent: Nullable<Container>;
786
809
  /** @hidden */
787
810
  _currentMeasure: Measure;
811
+ /** @hidden */
812
+ _tempPaddingMeasure: Measure;
788
813
  private _fontFamily;
789
814
  private _fontStyle;
790
815
  private _fontWeight;
@@ -817,6 +842,7 @@ declare module "babylonjs-gui/2D/controls/control" {
817
842
  _prevCurrentMeasureTransformedIntoGlobalSpace: Measure;
818
843
  /** @hidden */
819
844
  protected _cachedParentMeasure: Measure;
845
+ private _descendantsOnlyPadding;
820
846
  private _paddingLeft;
821
847
  private _paddingRight;
822
848
  private _paddingTop;
@@ -851,6 +877,8 @@ declare module "babylonjs-gui/2D/controls/control" {
851
877
  private _enterCount;
852
878
  private _doNotRender;
853
879
  private _downPointerIds;
880
+ private _evaluatedMeasure;
881
+ private _evaluatedParentMeasure;
854
882
  protected _isEnabled: boolean;
855
883
  protected _disabledColor: string;
856
884
  protected _disabledColorItem: string;
@@ -875,6 +903,10 @@ declare module "babylonjs-gui/2D/controls/control" {
875
903
  */
876
904
  get isReadOnly(): boolean;
877
905
  set isReadOnly(value: boolean);
906
+ /**
907
+ * Gets the transformed measure, that is the bounding box of the control after applying all transformations
908
+ */
909
+ get transformedMeasure(): Measure;
878
910
  /**
879
911
  * Gets or sets an object used to store user defined information for the node
880
912
  */
@@ -1117,6 +1149,12 @@ declare module "babylonjs-gui/2D/controls/control" {
1117
1149
  * Gets the current linked mesh (or null if none)
1118
1150
  */
1119
1151
  get linkedMesh(): Nullable<TransformNode>;
1152
+ /**
1153
+ * Gets or sets a value indicating the padding should work like in CSS.
1154
+ * Basically, it will add the padding amount on each side of the parent control for its children.
1155
+ */
1156
+ get descendantsOnlyPadding(): boolean;
1157
+ set descendantsOnlyPadding(value: boolean);
1120
1158
  /**
1121
1159
  * Gets or sets a value indicating the padding to use on the left of the control
1122
1160
  * @see https://doc.babylonjs.com/how_to/gui#position-and-size
@@ -1129,6 +1167,8 @@ declare module "babylonjs-gui/2D/controls/control" {
1129
1167
  */
1130
1168
  get paddingLeftInPixels(): number;
1131
1169
  set paddingLeftInPixels(value: number);
1170
+ /** @hidden */
1171
+ get _paddingLeftInPixels(): number;
1132
1172
  /**
1133
1173
  * Gets or sets a value indicating the padding to use on the right of the control
1134
1174
  * @see https://doc.babylonjs.com/how_to/gui#position-and-size
@@ -1141,6 +1181,8 @@ declare module "babylonjs-gui/2D/controls/control" {
1141
1181
  */
1142
1182
  get paddingRightInPixels(): number;
1143
1183
  set paddingRightInPixels(value: number);
1184
+ /** @hidden */
1185
+ get _paddingRightInPixels(): number;
1144
1186
  /**
1145
1187
  * Gets or sets a value indicating the padding to use on the top of the control
1146
1188
  * @see https://doc.babylonjs.com/how_to/gui#position-and-size
@@ -1153,6 +1195,8 @@ declare module "babylonjs-gui/2D/controls/control" {
1153
1195
  */
1154
1196
  get paddingTopInPixels(): number;
1155
1197
  set paddingTopInPixels(value: number);
1198
+ /** @hidden */
1199
+ get _paddingTopInPixels(): number;
1156
1200
  /**
1157
1201
  * Gets or sets a value indicating the padding to use on the bottom of the control
1158
1202
  * @see https://doc.babylonjs.com/how_to/gui#position-and-size
@@ -1165,6 +1209,8 @@ declare module "babylonjs-gui/2D/controls/control" {
1165
1209
  */
1166
1210
  get paddingBottomInPixels(): number;
1167
1211
  set paddingBottomInPixels(value: number);
1212
+ /** @hidden */
1213
+ get _paddingBottomInPixels(): number;
1168
1214
  /**
1169
1215
  * Gets or sets a value indicating the left coordinate of the control
1170
1216
  * @see https://doc.babylonjs.com/how_to/gui#position-and-size
@@ -2098,13 +2144,19 @@ declare module "babylonjs-gui/2D/controls/stackPanel" {
2098
2144
  private _manualWidth;
2099
2145
  private _manualHeight;
2100
2146
  private _doNotTrackManualChanges;
2147
+ private _spacing;
2101
2148
  /**
2102
- * Gets or sets a boolean indicating that layou warnings should be ignored
2149
+ * Gets or sets a boolean indicating that layout warnings should be ignored
2103
2150
  */
2104
2151
  ignoreLayoutWarnings: boolean;
2105
2152
  /** Gets or sets a boolean indicating if the stack panel is vertical or horizontal*/
2106
2153
  get isVertical(): boolean;
2107
2154
  set isVertical(value: boolean);
2155
+ /**
2156
+ * Gets or sets the spacing (in pixels) between each child.
2157
+ */
2158
+ get spacing(): number;
2159
+ set spacing(value: number);
2108
2160
  /**
2109
2161
  * Gets or sets panel width.
2110
2162
  * This value should not be set when in horizontal mode as it will be computed automatically
@@ -2498,7 +2550,9 @@ declare module "babylonjs-gui/2D/controls/grid" {
2498
2550
  export class Grid extends Container {
2499
2551
  name?: string | undefined;
2500
2552
  private _rowDefinitions;
2553
+ private _rowDefinitionObservers;
2501
2554
  private _columnDefinitions;
2555
+ private _columnDefinitionObservers;
2502
2556
  private _cells;
2503
2557
  private _childControls;
2504
2558
  /**
@@ -2611,9 +2665,9 @@ declare module "babylonjs-gui/2D/controls/grid" {
2611
2665
  /** Releases associated resources */
2612
2666
  dispose(): void;
2613
2667
  /**
2614
- * Serializes the current control
2615
- * @param serializationObject defined the JSON serialized object
2616
- */
2668
+ * Serializes the current control
2669
+ * @param serializationObject defined the JSON serialized object
2670
+ */
2617
2671
  serialize(serializationObject: any): void;
2618
2672
  /** @hidden */
2619
2673
  _parseFromContent(serializedObject: any, host: AdvancedDynamicTexture): void;
@@ -4150,6 +4204,7 @@ declare module "babylonjs-gui/3D/gui3DManager" {
4150
4204
  private _rootContainer;
4151
4205
  private _pointerObserver;
4152
4206
  private _pointerOutObserver;
4207
+ private _customControlScaling;
4153
4208
  /** @hidden */
4154
4209
  _lastPickedControl: Control3D;
4155
4210
  /** @hidden */
@@ -4160,6 +4215,7 @@ declare module "babylonjs-gui/3D/gui3DManager" {
4160
4215
  _lastControlDown: {
4161
4216
  [pointerId: number]: Control3D;
4162
4217
  };
4218
+ protected static MRTK_REALISTIC_SCALING: number;
4163
4219
  /**
4164
4220
  * Observable raised when the point picked by the pointer events changed
4165
4221
  */
@@ -4180,6 +4236,14 @@ declare module "babylonjs-gui/3D/gui3DManager" {
4180
4236
  get scene(): Scene;
4181
4237
  /** Gets associated utility layer */
4182
4238
  get utilityLayer(): Nullable<UtilityLayerRenderer>;
4239
+ /** Gets the scaling for all UI elements owned by this manager */
4240
+ get controlScaling(): number;
4241
+ /** Sets the scaling adjustment for all UI elements owned by this manager */
4242
+ set controlScaling(newScale: number);
4243
+ /** Gets if controls attached to this manager are realistically sized, based on the fact that 1 unit length is 1 meter */
4244
+ get useRealisticScaling(): boolean;
4245
+ /** Sets if controls attached to this manager are realistically sized, based on the fact that 1 unit length is 1 meter */
4246
+ set useRealisticScaling(newValue: boolean);
4183
4247
  /**
4184
4248
  * Creates a new GUI3DManager
4185
4249
  * @param scene
@@ -4334,6 +4398,8 @@ declare module "babylonjs-gui/3D/controls/control3D" {
4334
4398
  private _enterCount;
4335
4399
  private _downPointerIds;
4336
4400
  private _isVisible;
4401
+ /** @hidden */
4402
+ _isScaledByManager: boolean;
4337
4403
  /** Gets or sets the control position in world space */
4338
4404
  get position(): Vector3;
4339
4405
  set position(value: Vector3);
@@ -7119,21 +7185,24 @@ declare module BABYLON.GUI {
7119
7185
  * Class used to specific a value and its associated unit
7120
7186
  */
7121
7187
  export class ValueAndUnit {
7122
- /** defines the unit to store */
7123
- unit: number;
7124
7188
  /** defines a boolean indicating if the value can be negative */
7125
7189
  negativeValueAllowed: boolean;
7126
7190
  private _value;
7191
+ private _unit;
7127
7192
  private _originalUnit;
7128
7193
  /**
7129
7194
  * Gets or sets a value indicating that this value will not scale accordingly with adaptive scaling property
7130
7195
  * @see https://doc.babylonjs.com/how_to/gui#adaptive-scaling
7131
7196
  */
7132
7197
  ignoreAdaptiveScaling: boolean;
7198
+ /**
7199
+ * BABYLON.Observable event triggered each time the value or unit changes
7200
+ */
7201
+ onChangedObservable: BABYLON.Observable<void>;
7133
7202
  /**
7134
7203
  * Creates a new ValueAndUnit
7135
7204
  * @param value defines the value to store
7136
- * @param unit defines the unit to store
7205
+ * @param unit defines the unit to store - defaults to ValueAndUnit.UNITMODE_PIXEL
7137
7206
  * @param negativeValueAllowed defines a boolean indicating if the value can be negative
7138
7207
  */
7139
7208
  constructor(value: number,
@@ -7145,8 +7214,19 @@ declare module BABYLON.GUI {
7145
7214
  get isPercentage(): boolean;
7146
7215
  /** Gets a boolean indicating if the value is store as pixel */
7147
7216
  get isPixel(): boolean;
7148
- /** Gets direct internal value */
7217
+ /**
7218
+ * Gets value (without units)
7219
+ * @deprecated use value property instead
7220
+ */
7149
7221
  get internalValue(): number;
7222
+ /** Gets value (without units) */
7223
+ get value(): number;
7224
+ /** Sets value (without units) */
7225
+ set value(value: number);
7226
+ /** Gets units (without value) */
7227
+ get unit(): number;
7228
+ /** Sets units (without value) */
7229
+ set unit(value: number);
7150
7230
  /**
7151
7231
  * Gets value as pixel
7152
7232
  * @param host defines the root host
@@ -7155,7 +7235,7 @@ declare module BABYLON.GUI {
7155
7235
  */
7156
7236
  getValueInPixel(host: AdvancedDynamicTexture, refValue: number): number;
7157
7237
  /**
7158
- * Update the current value and unit. This should be done cautiously as the GUi won't be marked as dirty with this function.
7238
+ * Update the current value and unit.
7159
7239
  * @param value defines the value to store
7160
7240
  * @param unit defines the unit to store
7161
7241
  * @returns the current ValueAndUnit
@@ -7177,7 +7257,7 @@ declare module BABYLON.GUI {
7177
7257
  /**
7178
7258
  * Store a value parsed from a string
7179
7259
  * @param source defines the source string
7180
- * @returns true if the value was successfully parsed
7260
+ * @returns true if the value was successfully parsed and updated
7181
7261
  */
7182
7262
  fromString(source: string | number): boolean;
7183
7263
  private static _Regex;
@@ -7305,6 +7385,11 @@ declare module BABYLON.GUI {
7305
7385
  * @returns a new matrix
7306
7386
  */
7307
7387
  static Identity(): Matrix2D;
7388
+ /**
7389
+ * Creates an identity matrix and stores it in a target matrix
7390
+ * @param result defines the target matrix
7391
+ */
7392
+ static IdentityToRef(result: Matrix2D): void;
7308
7393
  /**
7309
7394
  * Creates a translation matrix and stores it in a target matrix
7310
7395
  * @param x defines the x coordinate of the translation
@@ -7431,6 +7516,8 @@ declare module BABYLON.GUI {
7431
7516
  export class AdvancedDynamicTexture extends BABYLON.DynamicTexture {
7432
7517
  /** Define the Uurl to load snippets */
7433
7518
  static SnippetUrl: string;
7519
+ /** Indicates if some optimizations can be performed in GUI GPU management (the downside is additional memory/GPU texture memory used) */
7520
+ static AllowGPUOptimizations: boolean;
7434
7521
  /** Snippet ID if the content was created from the snippet server */
7435
7522
  snippetId: string;
7436
7523
  private _isDirty;
@@ -7805,9 +7892,10 @@ declare module BABYLON.GUI {
7805
7892
  * @param foreground defines a boolean indicating if the texture must be rendered in foreground (default is true)
7806
7893
  * @param scene defines the hosting scene
7807
7894
  * @param sampling defines the texture sampling mode (Texture.BILINEAR_SAMPLINGMODE by default)
7895
+ * @param adaptiveScaling defines whether to automatically scale root to match hardwarescaling (false by default)
7808
7896
  * @returns a new AdvancedDynamicTexture
7809
7897
  */
7810
- static CreateFullscreenUI(name: string, foreground?: boolean, scene?: BABYLON.Nullable<BABYLON.Scene>, sampling?: number): AdvancedDynamicTexture;
7898
+ static CreateFullscreenUI(name: string, foreground?: boolean, scene?: BABYLON.Nullable<BABYLON.Scene>, sampling?: number, adaptiveScaling?: boolean): AdvancedDynamicTexture;
7811
7899
  }
7812
7900
  }
7813
7901
  declare module BABYLON.GUI {
@@ -7831,6 +7919,8 @@ declare module BABYLON.GUI {
7831
7919
  parent: BABYLON.Nullable<Container>;
7832
7920
  /** @hidden */
7833
7921
  _currentMeasure: Measure;
7922
+ /** @hidden */
7923
+ _tempPaddingMeasure: Measure;
7834
7924
  private _fontFamily;
7835
7925
  private _fontStyle;
7836
7926
  private _fontWeight;
@@ -7863,6 +7953,7 @@ declare module BABYLON.GUI {
7863
7953
  _prevCurrentMeasureTransformedIntoGlobalSpace: Measure;
7864
7954
  /** @hidden */
7865
7955
  protected _cachedParentMeasure: Measure;
7956
+ private _descendantsOnlyPadding;
7866
7957
  private _paddingLeft;
7867
7958
  private _paddingRight;
7868
7959
  private _paddingTop;
@@ -7897,6 +7988,8 @@ declare module BABYLON.GUI {
7897
7988
  private _enterCount;
7898
7989
  private _doNotRender;
7899
7990
  private _downPointerIds;
7991
+ private _evaluatedMeasure;
7992
+ private _evaluatedParentMeasure;
7900
7993
  protected _isEnabled: boolean;
7901
7994
  protected _disabledColor: string;
7902
7995
  protected _disabledColorItem: string;
@@ -7921,6 +8014,10 @@ declare module BABYLON.GUI {
7921
8014
  */
7922
8015
  get isReadOnly(): boolean;
7923
8016
  set isReadOnly(value: boolean);
8017
+ /**
8018
+ * Gets the transformed measure, that is the bounding box of the control after applying all transformations
8019
+ */
8020
+ get transformedMeasure(): Measure;
7924
8021
  /**
7925
8022
  * Gets or sets an object used to store user defined information for the node
7926
8023
  */
@@ -8163,6 +8260,12 @@ declare module BABYLON.GUI {
8163
8260
  * Gets the current linked mesh (or null if none)
8164
8261
  */
8165
8262
  get linkedMesh(): BABYLON.Nullable<BABYLON.TransformNode>;
8263
+ /**
8264
+ * Gets or sets a value indicating the padding should work like in CSS.
8265
+ * Basically, it will add the padding amount on each side of the parent control for its children.
8266
+ */
8267
+ get descendantsOnlyPadding(): boolean;
8268
+ set descendantsOnlyPadding(value: boolean);
8166
8269
  /**
8167
8270
  * Gets or sets a value indicating the padding to use on the left of the control
8168
8271
  * @see https://doc.babylonjs.com/how_to/gui#position-and-size
@@ -8175,6 +8278,8 @@ declare module BABYLON.GUI {
8175
8278
  */
8176
8279
  get paddingLeftInPixels(): number;
8177
8280
  set paddingLeftInPixels(value: number);
8281
+ /** @hidden */
8282
+ get _paddingLeftInPixels(): number;
8178
8283
  /**
8179
8284
  * Gets or sets a value indicating the padding to use on the right of the control
8180
8285
  * @see https://doc.babylonjs.com/how_to/gui#position-and-size
@@ -8187,6 +8292,8 @@ declare module BABYLON.GUI {
8187
8292
  */
8188
8293
  get paddingRightInPixels(): number;
8189
8294
  set paddingRightInPixels(value: number);
8295
+ /** @hidden */
8296
+ get _paddingRightInPixels(): number;
8190
8297
  /**
8191
8298
  * Gets or sets a value indicating the padding to use on the top of the control
8192
8299
  * @see https://doc.babylonjs.com/how_to/gui#position-and-size
@@ -8199,6 +8306,8 @@ declare module BABYLON.GUI {
8199
8306
  */
8200
8307
  get paddingTopInPixels(): number;
8201
8308
  set paddingTopInPixels(value: number);
8309
+ /** @hidden */
8310
+ get _paddingTopInPixels(): number;
8202
8311
  /**
8203
8312
  * Gets or sets a value indicating the padding to use on the bottom of the control
8204
8313
  * @see https://doc.babylonjs.com/how_to/gui#position-and-size
@@ -8211,6 +8320,8 @@ declare module BABYLON.GUI {
8211
8320
  */
8212
8321
  get paddingBottomInPixels(): number;
8213
8322
  set paddingBottomInPixels(value: number);
8323
+ /** @hidden */
8324
+ get _paddingBottomInPixels(): number;
8214
8325
  /**
8215
8326
  * Gets or sets a value indicating the left coordinate of the control
8216
8327
  * @see https://doc.babylonjs.com/how_to/gui#position-and-size
@@ -9113,13 +9224,19 @@ declare module BABYLON.GUI {
9113
9224
  private _manualWidth;
9114
9225
  private _manualHeight;
9115
9226
  private _doNotTrackManualChanges;
9227
+ private _spacing;
9116
9228
  /**
9117
- * Gets or sets a boolean indicating that layou warnings should be ignored
9229
+ * Gets or sets a boolean indicating that layout warnings should be ignored
9118
9230
  */
9119
9231
  ignoreLayoutWarnings: boolean;
9120
9232
  /** Gets or sets a boolean indicating if the stack panel is vertical or horizontal*/
9121
9233
  get isVertical(): boolean;
9122
9234
  set isVertical(value: boolean);
9235
+ /**
9236
+ * Gets or sets the spacing (in pixels) between each child.
9237
+ */
9238
+ get spacing(): number;
9239
+ set spacing(value: number);
9123
9240
  /**
9124
9241
  * Gets or sets panel width.
9125
9242
  * This value should not be set when in horizontal mode as it will be computed automatically
@@ -9483,7 +9600,9 @@ declare module BABYLON.GUI {
9483
9600
  export class Grid extends Container {
9484
9601
  name?: string | undefined;
9485
9602
  private _rowDefinitions;
9603
+ private _rowDefinitionObservers;
9486
9604
  private _columnDefinitions;
9605
+ private _columnDefinitionObservers;
9487
9606
  private _cells;
9488
9607
  private _childControls;
9489
9608
  /**
@@ -9596,9 +9715,9 @@ declare module BABYLON.GUI {
9596
9715
  /** Releases associated resources */
9597
9716
  dispose(): void;
9598
9717
  /**
9599
- * Serializes the current control
9600
- * @param serializationObject defined the JSON serialized object
9601
- */
9718
+ * Serializes the current control
9719
+ * @param serializationObject defined the JSON serialized object
9720
+ */
9602
9721
  serialize(serializationObject: any): void;
9603
9722
  /** @hidden */
9604
9723
  _parseFromContent(serializedObject: any, host: AdvancedDynamicTexture): void;
@@ -10982,6 +11101,7 @@ declare module BABYLON.GUI {
10982
11101
  private _rootContainer;
10983
11102
  private _pointerObserver;
10984
11103
  private _pointerOutObserver;
11104
+ private _customControlScaling;
10985
11105
  /** @hidden */
10986
11106
  _lastPickedControl: Control3D;
10987
11107
  /** @hidden */
@@ -10992,6 +11112,7 @@ declare module BABYLON.GUI {
10992
11112
  _lastControlDown: {
10993
11113
  [pointerId: number]: Control3D;
10994
11114
  };
11115
+ protected static MRTK_REALISTIC_SCALING: number;
10995
11116
  /**
10996
11117
  * BABYLON.Observable raised when the point picked by the pointer events changed
10997
11118
  */
@@ -11012,6 +11133,14 @@ declare module BABYLON.GUI {
11012
11133
  get scene(): BABYLON.Scene;
11013
11134
  /** Gets associated utility layer */
11014
11135
  get utilityLayer(): BABYLON.Nullable<BABYLON.UtilityLayerRenderer>;
11136
+ /** Gets the scaling for all UI elements owned by this manager */
11137
+ get controlScaling(): number;
11138
+ /** Sets the scaling adjustment for all UI elements owned by this manager */
11139
+ set controlScaling(newScale: number);
11140
+ /** Gets if controls attached to this manager are realistically sized, based on the fact that 1 unit length is 1 meter */
11141
+ get useRealisticScaling(): boolean;
11142
+ /** Sets if controls attached to this manager are realistically sized, based on the fact that 1 unit length is 1 meter */
11143
+ set useRealisticScaling(newValue: boolean);
11015
11144
  /**
11016
11145
  * Creates a new GUI3DManager
11017
11146
  * @param scene
@@ -11144,6 +11273,8 @@ declare module BABYLON.GUI {
11144
11273
  private _enterCount;
11145
11274
  private _downPointerIds;
11146
11275
  private _isVisible;
11276
+ /** @hidden */
11277
+ _isScaledByManager: boolean;
11147
11278
  /** Gets or sets the control position in world space */
11148
11279
  get position(): BABYLON.Vector3;
11149
11280
  set position(value: BABYLON.Vector3);
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  },
5
5
  "name": "babylonjs-gui",
6
6
  "description": "The Babylon.js GUI library is an extension you can use to generate interactive user interface. It is build on top of the DynamicTexture.",
7
- "version": "5.0.0-alpha.61",
7
+ "version": "5.0.0-alpha.65",
8
8
  "repository": {
9
9
  "type": "git",
10
10
  "url": "https://github.com/BabylonJS/Babylon.js.git"
@@ -28,7 +28,7 @@
28
28
  ],
29
29
  "license": "Apache-2.0",
30
30
  "dependencies": {
31
- "babylonjs": "5.0.0-alpha.61"
31
+ "babylonjs": "5.0.0-alpha.65"
32
32
  },
33
33
  "engines": {
34
34
  "node": "*"