@onerjs/core 8.26.9 → 8.27.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.
Files changed (37) hide show
  1. package/Buffers/buffer.d.ts +4 -3
  2. package/Buffers/buffer.js +4 -3
  3. package/Buffers/buffer.js.map +1 -1
  4. package/Cameras/Inputs/BaseCameraPointersInput.js +2 -0
  5. package/Cameras/Inputs/BaseCameraPointersInput.js.map +1 -1
  6. package/Cameras/Inputs/geospatialCameraMouseWheelInput.d.ts +18 -0
  7. package/Cameras/Inputs/geospatialCameraMouseWheelInput.js +21 -0
  8. package/Cameras/Inputs/geospatialCameraMouseWheelInput.js.map +1 -0
  9. package/Cameras/Inputs/geospatialCameraPointersInput.d.ts +45 -0
  10. package/Cameras/Inputs/geospatialCameraPointersInput.js +119 -0
  11. package/Cameras/Inputs/geospatialCameraPointersInput.js.map +1 -0
  12. package/Cameras/Inputs/index.d.ts +2 -0
  13. package/Cameras/Inputs/index.js +2 -0
  14. package/Cameras/Inputs/index.js.map +1 -1
  15. package/Cameras/geospatialCamera.d.ts +89 -0
  16. package/Cameras/geospatialCamera.js +268 -0
  17. package/Cameras/geospatialCamera.js.map +1 -0
  18. package/Cameras/geospatialCameraInputsManager.d.ts +23 -0
  19. package/Cameras/geospatialCameraInputsManager.js +33 -0
  20. package/Cameras/geospatialCameraInputsManager.js.map +1 -0
  21. package/Cameras/index.d.ts +1 -0
  22. package/Cameras/index.js +1 -0
  23. package/Cameras/index.js.map +1 -1
  24. package/Engines/constants.d.ts +2 -0
  25. package/Engines/constants.js +2 -0
  26. package/Engines/constants.js.map +1 -1
  27. package/Events/pointerEvents.d.ts +4 -0
  28. package/Events/pointerEvents.js.map +1 -1
  29. package/Materials/PBR/openPbrMaterial.d.ts +3 -0
  30. package/Materials/PBR/openPbrMaterial.js +11 -2
  31. package/Materials/PBR/openPbrMaterial.js.map +1 -1
  32. package/Materials/PBR/pbrBaseMaterial.d.ts +3 -0
  33. package/Materials/PBR/pbrBaseMaterial.js +11 -2
  34. package/Materials/PBR/pbrBaseMaterial.js.map +1 -1
  35. package/Meshes/geometry.js +26 -25
  36. package/Meshes/geometry.js.map +1 -1
  37. package/package.json +1 -1
@@ -0,0 +1,33 @@
1
+ import { CameraInputsManager } from "./cameraInputsManager.js";
2
+ import { GeospatialCameraPointersInput } from "./Inputs/geospatialCameraPointersInput.js";
3
+ import { GeospatialCameraMouseWheelInput } from "./Inputs/geospatialCameraMouseWheelInput.js";
4
+ /**
5
+ * Default Inputs manager for the GeospatialCamera.
6
+ * It groups all the default supported inputs for ease of use.
7
+ */
8
+ export class GeospatialCameraInputsManager extends CameraInputsManager {
9
+ /**
10
+ * Instantiates a new GeospatialCameraInputsManager.
11
+ * @param camera Defines the camera the inputs belong to
12
+ */
13
+ constructor(camera) {
14
+ super(camera);
15
+ }
16
+ /**
17
+ * Add mouse input support to the input manager
18
+ * @returns the current input manager
19
+ */
20
+ addMouse() {
21
+ this.add(new GeospatialCameraPointersInput());
22
+ return this;
23
+ }
24
+ /**
25
+ * Add mouse wheel input support to the input manager
26
+ * @returns the current input manager
27
+ */
28
+ addMouseWheel() {
29
+ this.add(new GeospatialCameraMouseWheelInput());
30
+ return this;
31
+ }
32
+ }
33
+ //# sourceMappingURL=geospatialCameraInputsManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geospatialCameraInputsManager.js","sourceRoot":"","sources":["../../../../dev/core/src/Cameras/geospatialCameraInputsManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAE3F;;;GAGG;AACH,MAAM,OAAO,6BAA8B,SAAQ,mBAAqC;IACpF;;;OAGG;IACH,YAAY,MAAwB;QAChC,KAAK,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC;IAED;;;OAGG;IACI,QAAQ;QACX,IAAI,CAAC,GAAG,CAAC,IAAI,6BAA6B,EAAE,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;OAGG;IACI,aAAa;QAChB,IAAI,CAAC,GAAG,CAAC,IAAI,+BAA+B,EAAE,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ","sourcesContent":["import { CameraInputsManager } from \"./cameraInputsManager\";\r\nimport type { GeospatialCamera } from \"./geospatialCamera\";\r\nimport { GeospatialCameraPointersInput } from \"./Inputs/geospatialCameraPointersInput\";\r\nimport { GeospatialCameraMouseWheelInput } from \"./Inputs/geospatialCameraMouseWheelInput\";\r\n\r\n/**\r\n * Default Inputs manager for the GeospatialCamera.\r\n * It groups all the default supported inputs for ease of use.\r\n */\r\nexport class GeospatialCameraInputsManager extends CameraInputsManager<GeospatialCamera> {\r\n /**\r\n * Instantiates a new GeospatialCameraInputsManager.\r\n * @param camera Defines the camera the inputs belong to\r\n */\r\n constructor(camera: GeospatialCamera) {\r\n super(camera);\r\n }\r\n\r\n /**\r\n * Add mouse input support to the input manager\r\n * @returns the current input manager\r\n */\r\n public addMouse(): GeospatialCameraInputsManager {\r\n this.add(new GeospatialCameraPointersInput());\r\n return this;\r\n }\r\n\r\n /**\r\n * Add mouse wheel input support to the input manager\r\n * @returns the current input manager\r\n */\r\n public addMouseWheel(): GeospatialCameraInputsManager {\r\n this.add(new GeospatialCameraMouseWheelInput());\r\n return this;\r\n }\r\n}\r\n"]}
@@ -18,3 +18,4 @@ export * from "./universalCamera.js";
18
18
  export * from "./virtualJoysticksCamera.js";
19
19
  export * from "./VR/index.js";
20
20
  export * from "./RigModes/index.js";
21
+ export * from "./geospatialCamera.js";
package/Cameras/index.js CHANGED
@@ -19,4 +19,5 @@ export * from "./universalCamera.js";
19
19
  export * from "./virtualJoysticksCamera.js";
20
20
  export * from "./VR/index.js";
21
21
  export * from "./RigModes/index.js";
22
+ export * from "./geospatialCamera.js";
22
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../dev/core/src/Cameras/index.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC","sourcesContent":["/* eslint-disable @typescript-eslint/no-restricted-imports */\r\nexport * from \"./Inputs/index\";\r\nexport * from \"./cameraInputsManager\";\r\nexport * from \"./camera\";\r\nexport * from \"./targetCamera\";\r\nexport * from \"./freeCamera\";\r\nexport * from \"./freeCameraInputsManager\";\r\nexport * from \"./touchCamera\";\r\nexport * from \"./arcRotateCamera\";\r\nexport * from \"./arcRotateCameraInputsManager\";\r\nexport * from \"./deviceOrientationCamera\";\r\nexport * from \"./flyCamera\";\r\nexport * from \"./flyCameraInputsManager\";\r\nexport * from \"./followCamera\";\r\nexport * from \"./followCameraInputsManager\";\r\nexport * from \"./gamepadCamera\";\r\nexport * from \"./Stereoscopic/index\";\r\nexport * from \"./universalCamera\";\r\nexport * from \"./virtualJoysticksCamera\";\r\nexport * from \"./VR/index\";\r\nexport * from \"./RigModes/index\";\r\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../dev/core/src/Cameras/index.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC","sourcesContent":["/* eslint-disable @typescript-eslint/no-restricted-imports */\r\nexport * from \"./Inputs/index\";\r\nexport * from \"./cameraInputsManager\";\r\nexport * from \"./camera\";\r\nexport * from \"./targetCamera\";\r\nexport * from \"./freeCamera\";\r\nexport * from \"./freeCameraInputsManager\";\r\nexport * from \"./touchCamera\";\r\nexport * from \"./arcRotateCamera\";\r\nexport * from \"./arcRotateCameraInputsManager\";\r\nexport * from \"./deviceOrientationCamera\";\r\nexport * from \"./flyCamera\";\r\nexport * from \"./flyCameraInputsManager\";\r\nexport * from \"./followCamera\";\r\nexport * from \"./followCameraInputsManager\";\r\nexport * from \"./gamepadCamera\";\r\nexport * from \"./Stereoscopic/index\";\r\nexport * from \"./universalCamera\";\r\nexport * from \"./virtualJoysticksCamera\";\r\nexport * from \"./VR/index\";\r\nexport * from \"./RigModes/index\";\r\nexport * from \"./geospatialCamera\";\r\n"]}
@@ -359,6 +359,8 @@ export declare class Constants {
359
359
  static readonly TEXTURE_FILTERING_QUALITY_MEDIUM = 16;
360
360
  /** Low quality for texture filtering */
361
361
  static readonly TEXTURE_FILTERING_QUALITY_LOW = 8;
362
+ /** Min quality for texture filtering */
363
+ static readonly TEXTURE_FILTERING_QUALITY_MIN = 1;
362
364
  /** Defines that texture rescaling will use a floor to find the closer power of 2 size */
363
365
  static readonly SCALEMODE_FLOOR = 1;
364
366
  /** Defines that texture rescaling will look for the nearest power of 2 size */
@@ -363,6 +363,8 @@ Constants.TEXTURE_FILTERING_QUALITY_HIGH = 64;
363
363
  Constants.TEXTURE_FILTERING_QUALITY_MEDIUM = 16;
364
364
  /** Low quality for texture filtering */
365
365
  Constants.TEXTURE_FILTERING_QUALITY_LOW = 8;
366
+ /** Min quality for texture filtering */
367
+ Constants.TEXTURE_FILTERING_QUALITY_MIN = 1;
366
368
  // Texture rescaling mode
367
369
  /** Defines that texture rescaling will use a floor to find the closer power of 2 size */
368
370
  Constants.SCALEMODE_FLOOR = 1;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../dev/core/src/Engines/constants.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\r\n/** Defines the cross module used constants to avoid circular dependencies */\r\nexport class Constants {\r\n /** Sampler suffix when associated with a texture name */\r\n public static readonly AUTOSAMPLERSUFFIX = \"Sampler\";\r\n /** Flag used to disable diagnostics for WebGPU */\r\n public static readonly DISABLEUA = \"#define DISABLE_UNIFORMITY_ANALYSIS\";\r\n /** Defines that alpha blending is disabled */\r\n public static readonly ALPHA_DISABLE = 0;\r\n /** Defines that alpha blending is COLOR=SRC_ALPHA * SRC + DEST, ALPHA=DEST_ALPHA */\r\n public static readonly ALPHA_ADD = 1;\r\n /**\r\n * Defines that alpha blending is COLOR=SRC_ALPHA * SRC + (1 - SRC_ALPHA) * DEST, ALPHA=SRC_ALPHA + DEST_ALPHA\r\n * Go-to for transparency. 100% alpha means source, 0% alpha means background. Glass, UI fade, smoke\r\n */\r\n public static readonly ALPHA_COMBINE = 2;\r\n /**\r\n * Defines that alpha blending is COLOR=(1 - SRC) * DEST, ALPHA=SRC_ALPHA - DEST_ALPHA\r\n * Subtracts source from destination, leading to darker results\r\n * */\r\n public static readonly ALPHA_SUBTRACT = 3;\r\n /** Defines that alpha blending is COLOR=DEST * SRC, ALPHA=SRC_ALPHA + DEST_ALPHA */\r\n public static readonly ALPHA_MULTIPLY = 4;\r\n /**\r\n * Defines that alpha blending is COLOR=SRC_ALPHA * SRC + (1 - SRC) * DEST, ALPHA=SRC_ALPHA + DEST_ALPHA\r\n * Prioritizes area with high source alpha, strongly emphasizes the source\r\n */\r\n public static readonly ALPHA_MAXIMIZED = 5;\r\n /**\r\n * Defines that alpha blending is COLOR=SRC + DEST, ALPHA=DEST_ALPHA\r\n * Source color is added to the destination color without alpha affecting the result. Great for additive glow effects (fire, magic, lasers)\r\n */\r\n public static readonly ALPHA_ONEONE = 6;\r\n /** Defines that alpha blending is COLOR=SRC + (1 - SRC_ALPHA) * DEST, ALPHA=SRC_ALPHA + DEST_ALPHA */\r\n public static readonly ALPHA_PREMULTIPLIED = 7;\r\n /** Defines that alpha blending is COLOR=SRC + (1 - SRC_ALPHA) * DEST, ALPHA=SRC_ALPHA + (1 - SRC_ALPHA) * DEST_ALPHA */\r\n public static readonly ALPHA_PREMULTIPLIED_PORTERDUFF = 8;\r\n /**\r\n * Defines that alpha blending is COLOR=CST * SRC + (1 - CST) * DEST, ALPHA=CST_ALPHA * SRC + (1 - CST_ALPHA) * DEST_ALPHA\r\n * Where CST is user-supplied color\r\n */\r\n public static readonly ALPHA_INTERPOLATE = 9;\r\n /**\r\n * Defines that alpha blending is COLOR=SRC + (1 - SRC) * DEST, ALPHA=SRC_ALPHA + (1 - SRC_ALPHA) * DEST_ALPHA\r\n * Brightens, good for soft light or UI highlights (like photoshop's screen blend)\r\n */\r\n public static readonly ALPHA_SCREENMODE = 10;\r\n /**\r\n * Defines that alpha blending is COLOR=SRC + DST, ALPHA=SRC_ALPHA + DEST_ALPHA\r\n * Straight addition of color and alpha- use when you want both source and destination colors and opacities to stack\r\n */\r\n public static readonly ALPHA_ONEONE_ONEONE = 11;\r\n /**\r\n * Defines that alpha blending is COLOR=DEST_ALPHA * SRC + DST, ALPHA=0\r\n */\r\n public static readonly ALPHA_ALPHATOCOLOR = 12;\r\n /**\r\n * Defines that alpha blending is COLOR=(1 - DEST) * SRC + (1 - SRC) * DEST, ALPHA=(1 - DEST_ALPHA) * SRC_ALPHA + (1 - SRC_ALPHA) * DEST_ALPHA\r\n * Result is between source and destination, used for experimental blending or styled effects\r\n */\r\n public static readonly ALPHA_REVERSEONEMINUS = 13;\r\n /**\r\n * Defines that alpha blending is ALPHA=SRC + (1 - SRC ALPHA) * DEST, ALPHA=SRC_ALPHA + (1 - SRC ALPHA) * DEST_ALPHA\r\n * Smooths blending between source and destination, useful in layered alpha masks\r\n */\r\n public static readonly ALPHA_SRC_DSTONEMINUSSRCALPHA = 14;\r\n /**\r\n * Defines that alpha blending is COLOR=SRC + DST, ALPHA=SRC_ALPHA\r\n * Color stacks, but only source alpha is kept\r\n */\r\n public static readonly ALPHA_ONEONE_ONEZERO = 15;\r\n /**\r\n * Defines that alpha blending is COLOR=(1 - DEST) * SRC + (1 - SRC) * DEST, ALPHA=DEST_ALPHA\r\n * Produces inverted look (negative space), like 'exclusion' mode in photoshop\r\n */\r\n public static readonly ALPHA_EXCLUSION = 16;\r\n /**\r\n * Defines that alpha blending is COLOR=SRC_ALPHA * SRC + (1 - SRC ALPHA) * DEST, ALPHA=SRC_ALPHA + (1 - SRC_ALPHA) * DEST_ALPHA\r\n * Great for layered rendering (particles, fog volumes), accumulates transparency in a more physically accurate way\r\n */\r\n public static readonly ALPHA_LAYER_ACCUMULATE = 17;\r\n\r\n /**\r\n * Defines that alpha blending is COLOR=MIN(SRC, DEST), ALPHA=MIN(SRC_ALPHA, DEST_ALPHA)\r\n */\r\n public static readonly ALPHA_MIN = 18;\r\n\r\n /**\r\n * Defines that alpha blending is COLOR=MAX(SRC, DEST), ALPHA=MAX(SRC_ALPHA, DEST_ALPHA)\r\n */\r\n public static readonly ALPHA_MAX = 19;\r\n\r\n /**\r\n * Defines that alpha blending uses dual source blending and is COLOR=SRC + SRC1 * DEST, ALPHA=DST_ALPHA\r\n */\r\n public static readonly ALPHA_DUAL_SRC0_ADD_SRC1xDST = 20;\r\n\r\n /** Defines that alpha blending equation a SUM */\r\n public static readonly ALPHA_EQUATION_ADD = 0;\r\n /** Defines that alpha blending equation a SUBSTRACTION */\r\n public static readonly ALPHA_EQUATION_SUBSTRACT = 1;\r\n /** Defines that alpha blending equation a REVERSE SUBSTRACTION */\r\n public static readonly ALPHA_EQUATION_REVERSE_SUBTRACT = 2;\r\n /** Defines that alpha blending equation a MAX operation */\r\n public static readonly ALPHA_EQUATION_MAX = 3;\r\n /** Defines that alpha blending equation a MIN operation */\r\n public static readonly ALPHA_EQUATION_MIN = 4;\r\n /**\r\n * Defines that alpha blending equation a DARKEN operation:\r\n * It takes the min of the src and sums the alpha channels.\r\n */\r\n public static readonly ALPHA_EQUATION_DARKEN = 5;\r\n\r\n /** Defines that the resource is not delayed*/\r\n public static readonly DELAYLOADSTATE_NONE = 0;\r\n /** Defines that the resource was successfully delay loaded */\r\n public static readonly DELAYLOADSTATE_LOADED = 1;\r\n /** Defines that the resource is currently delay loading */\r\n public static readonly DELAYLOADSTATE_LOADING = 2;\r\n /** Defines that the resource is delayed and has not started loading */\r\n public static readonly DELAYLOADSTATE_NOTLOADED = 4;\r\n\r\n // Depth or Stencil test Constants.\r\n /** Passed to depthFunction or stencilFunction to specify depth or stencil tests will never pass. i.e. Nothing will be drawn */\r\n public static readonly NEVER = 0x0200;\r\n /** Passed to depthFunction or stencilFunction to specify depth or stencil tests will always pass. i.e. Pixels will be drawn in the order they are drawn */\r\n public static readonly ALWAYS = 0x0207;\r\n /** Passed to depthFunction or stencilFunction to specify depth or stencil tests will pass if the new depth value is less than the stored value */\r\n public static readonly LESS = 0x0201;\r\n /** Passed to depthFunction or stencilFunction to specify depth or stencil tests will pass if the new depth value is equals to the stored value */\r\n public static readonly EQUAL = 0x0202;\r\n /** Passed to depthFunction or stencilFunction to specify depth or stencil tests will pass if the new depth value is less than or equal to the stored value */\r\n public static readonly LEQUAL = 0x0203;\r\n /** Passed to depthFunction or stencilFunction to specify depth or stencil tests will pass if the new depth value is greater than the stored value */\r\n public static readonly GREATER = 0x0204;\r\n /** Passed to depthFunction or stencilFunction to specify depth or stencil tests will pass if the new depth value is greater than or equal to the stored value */\r\n public static readonly GEQUAL = 0x0206;\r\n /** Passed to depthFunction or stencilFunction to specify depth or stencil tests will pass if the new depth value is not equal to the stored value */\r\n public static readonly NOTEQUAL = 0x0205;\r\n\r\n // Stencil Actions Constants.\r\n /** Passed to stencilOperation to specify that stencil value must be kept */\r\n public static readonly KEEP = 0x1e00;\r\n /** Passed to stencilOperation to specify that stencil value must be zero */\r\n public static readonly ZERO = 0x0000;\r\n /** Passed to stencilOperation to specify that stencil value must be replaced */\r\n public static readonly REPLACE = 0x1e01;\r\n /** Passed to stencilOperation to specify that stencil value must be incremented */\r\n public static readonly INCR = 0x1e02;\r\n /** Passed to stencilOperation to specify that stencil value must be decremented */\r\n public static readonly DECR = 0x1e03;\r\n /** Passed to stencilOperation to specify that stencil value must be inverted */\r\n public static readonly INVERT = 0x150a;\r\n /** Passed to stencilOperation to specify that stencil value must be incremented with wrapping */\r\n public static readonly INCR_WRAP = 0x8507;\r\n /** Passed to stencilOperation to specify that stencil value must be decremented with wrapping */\r\n public static readonly DECR_WRAP = 0x8508;\r\n\r\n /** Texture is not repeating outside of 0..1 UVs */\r\n public static readonly TEXTURE_CLAMP_ADDRESSMODE = 0;\r\n /** Texture is repeating outside of 0..1 UVs */\r\n public static readonly TEXTURE_WRAP_ADDRESSMODE = 1;\r\n /** Texture is repeating and mirrored */\r\n public static readonly TEXTURE_MIRROR_ADDRESSMODE = 2;\r\n\r\n /** Flag to create a storage texture */\r\n public static readonly TEXTURE_CREATIONFLAG_STORAGE = 1;\r\n\r\n /** ALPHA */\r\n public static readonly TEXTUREFORMAT_ALPHA = 0;\r\n /** LUMINANCE */\r\n public static readonly TEXTUREFORMAT_LUMINANCE = 1;\r\n /** LUMINANCE_ALPHA */\r\n public static readonly TEXTUREFORMAT_LUMINANCE_ALPHA = 2;\r\n /** RGB */\r\n public static readonly TEXTUREFORMAT_RGB = 4;\r\n /** RGBA */\r\n public static readonly TEXTUREFORMAT_RGBA = 5;\r\n /** RED */\r\n public static readonly TEXTUREFORMAT_RED = 6;\r\n /** RED (2nd reference) */\r\n public static readonly TEXTUREFORMAT_R = 6;\r\n /** RED unsigned short normed to [0, 1] **/\r\n public static readonly TEXTUREFORMAT_R16_UNORM = 0x822a;\r\n /** RG unsigned short normed to [0, 1] **/\r\n public static readonly TEXTUREFORMAT_RG16_UNORM = 0x822c;\r\n /** RGB unsigned short normed to [0, 1] **/\r\n public static readonly TEXTUREFORMAT_RGB16_UNORM = 0x8054;\r\n /** RGBA unsigned short normed to [0, 1] **/\r\n public static readonly TEXTUREFORMAT_RGBA16_UNORM = 0x805b;\r\n /** RED signed short normed to [-1, 1] **/\r\n public static readonly TEXTUREFORMAT_R16_SNORM = 0x8f98;\r\n /** RG signed short normed to [-1, 1] **/\r\n public static readonly TEXTUREFORMAT_RG16_SNORM = 0x8f99;\r\n /** RGB signed short normed to [-1, 1] **/\r\n public static readonly TEXTUREFORMAT_RGB16_SNORM = 0x8f9a;\r\n /** RGBA signed short normed to [-1, 1] **/\r\n public static readonly TEXTUREFORMAT_RGBA16_SNORM = 0x8f9b;\r\n /** RG */\r\n public static readonly TEXTUREFORMAT_RG = 7;\r\n /** RED_INTEGER */\r\n public static readonly TEXTUREFORMAT_RED_INTEGER = 8;\r\n /** RED_INTEGER (2nd reference) */\r\n public static readonly TEXTUREFORMAT_R_INTEGER = 8;\r\n /** RG_INTEGER */\r\n public static readonly TEXTUREFORMAT_RG_INTEGER = 9;\r\n /** RGB_INTEGER */\r\n public static readonly TEXTUREFORMAT_RGB_INTEGER = 10;\r\n /** RGBA_INTEGER */\r\n public static readonly TEXTUREFORMAT_RGBA_INTEGER = 11;\r\n /** BGRA */\r\n public static readonly TEXTUREFORMAT_BGRA = 12;\r\n\r\n /** Depth 24 bits + Stencil 8 bits */\r\n public static readonly TEXTUREFORMAT_DEPTH24_STENCIL8 = 13;\r\n /** Depth 32 bits float */\r\n public static readonly TEXTUREFORMAT_DEPTH32_FLOAT = 14;\r\n /** Depth 16 bits */\r\n public static readonly TEXTUREFORMAT_DEPTH16 = 15;\r\n /** Depth 24 bits */\r\n public static readonly TEXTUREFORMAT_DEPTH24 = 16;\r\n /** Depth 24 bits unorm + Stencil 8 bits */\r\n public static readonly TEXTUREFORMAT_DEPTH24UNORM_STENCIL8 = 17;\r\n /** Depth 32 bits float + Stencil 8 bits */\r\n public static readonly TEXTUREFORMAT_DEPTH32FLOAT_STENCIL8 = 18;\r\n /** Stencil 8 bits */\r\n public static readonly TEXTUREFORMAT_STENCIL8 = 19;\r\n /** UNDEFINED */\r\n public static readonly TEXTUREFORMAT_UNDEFINED = 0xffffffff;\r\n\r\n /** Compressed BC7 */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGBA_BPTC_UNORM = 36492;\r\n /** Compressed BC7 (SRGB+A) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_SRGB_ALPHA_BPTC_UNORM = 36493;\r\n /** Compressed BC6 unsigned float */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT = 36495;\r\n /** Compressed BC6 signed float */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGB_BPTC_SIGNED_FLOAT = 36494;\r\n /** Compressed BC3 */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGBA_S3TC_DXT5 = 33779;\r\n /** Compressed BC3 (SRGB+A) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT = 35919;\r\n /** Compressed BC2 */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGBA_S3TC_DXT3 = 33778;\r\n /** Compressed BC2 (SRGB+A) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT = 35918;\r\n /** Compressed BC1 (RGBA) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGBA_S3TC_DXT1 = 33777;\r\n /** Compressed BC1 (RGB) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGB_S3TC_DXT1 = 33776;\r\n /** Compressed BC1 (SRGB+A) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT = 35917;\r\n /** Compressed BC1 (SRGB) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_SRGB_S3TC_DXT1_EXT = 35916;\r\n /** Compressed ASTC 4x4 */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGBA_ASTC_4x4 = 37808;\r\n /** Compressed ASTC 4x4 (SRGB+A) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR = 37840;\r\n /** Compressed ETC1 (RGB) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGB_ETC1_WEBGL = 36196;\r\n /** Compressed ETC2 (RGB) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGB8_ETC2 = 37492;\r\n /** Compressed ETC2 (SRGB) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_SRGB8_ETC2 = 37493;\r\n /** Compressed ETC2 (RGB+A1) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 37494;\r\n /** Compressed ETC2 (SRGB+A1)*/\r\n public static readonly TEXTUREFORMAT_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 37495;\r\n /** Compressed ETC2 (RGBA) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGBA8_ETC2_EAC = 37496;\r\n /** Compressed ETC2 (SRGB+A) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = 37497;\r\n\r\n /** UNSIGNED_BYTE */\r\n public static readonly TEXTURETYPE_UNSIGNED_BYTE = 0;\r\n /** @deprecated use more explicit TEXTURETYPE_UNSIGNED_BYTE instead. Use TEXTURETYPE_UNSIGNED_INTEGER for 32bits values.*/\r\n public static readonly TEXTURETYPE_UNSIGNED_INT = 0;\r\n /** FLOAT */\r\n public static readonly TEXTURETYPE_FLOAT = 1;\r\n /** HALF_FLOAT */\r\n public static readonly TEXTURETYPE_HALF_FLOAT = 2;\r\n /** BYTE */\r\n public static readonly TEXTURETYPE_BYTE = 3;\r\n /** SHORT */\r\n public static readonly TEXTURETYPE_SHORT = 4;\r\n /** UNSIGNED_SHORT */\r\n public static readonly TEXTURETYPE_UNSIGNED_SHORT = 5;\r\n /** INT */\r\n public static readonly TEXTURETYPE_INT = 6;\r\n /** UNSIGNED_INT */\r\n public static readonly TEXTURETYPE_UNSIGNED_INTEGER = 7;\r\n /** UNSIGNED_SHORT_4_4_4_4 */\r\n public static readonly TEXTURETYPE_UNSIGNED_SHORT_4_4_4_4 = 8;\r\n /** UNSIGNED_SHORT_5_5_5_1 */\r\n public static readonly TEXTURETYPE_UNSIGNED_SHORT_5_5_5_1 = 9;\r\n /** UNSIGNED_SHORT_5_6_5 */\r\n public static readonly TEXTURETYPE_UNSIGNED_SHORT_5_6_5 = 10;\r\n /** UNSIGNED_INT_2_10_10_10_REV */\r\n public static readonly TEXTURETYPE_UNSIGNED_INT_2_10_10_10_REV = 11;\r\n /** UNSIGNED_INT_24_8 */\r\n public static readonly TEXTURETYPE_UNSIGNED_INT_24_8 = 12;\r\n /** UNSIGNED_INT_10F_11F_11F_REV */\r\n public static readonly TEXTURETYPE_UNSIGNED_INT_10F_11F_11F_REV = 13;\r\n /** UNSIGNED_INT_5_9_9_9_REV */\r\n public static readonly TEXTURETYPE_UNSIGNED_INT_5_9_9_9_REV = 14;\r\n /** FLOAT_32_UNSIGNED_INT_24_8_REV */\r\n public static readonly TEXTURETYPE_FLOAT_32_UNSIGNED_INT_24_8_REV = 15;\r\n /** UNDEFINED */\r\n public static readonly TEXTURETYPE_UNDEFINED = 16;\r\n\r\n /** 2D Texture target*/\r\n public static readonly TEXTURE_2D = 3553;\r\n /** 2D Array Texture target */\r\n public static readonly TEXTURE_2D_ARRAY = 35866;\r\n /** Cube Map Texture target */\r\n public static readonly TEXTURE_CUBE_MAP = 34067;\r\n /** Cube Map Array Texture target */\r\n public static readonly TEXTURE_CUBE_MAP_ARRAY = 0xdeadbeef;\r\n /** 3D Texture target */\r\n public static readonly TEXTURE_3D = 32879;\r\n\r\n /** nearest is mag = nearest and min = nearest and no mip */\r\n public static readonly TEXTURE_NEAREST_SAMPLINGMODE = 1;\r\n /** mag = nearest and min = nearest and mip = none */\r\n public static readonly TEXTURE_NEAREST_NEAREST = 1;\r\n\r\n /** Bilinear is mag = linear and min = linear and no mip */\r\n public static readonly TEXTURE_BILINEAR_SAMPLINGMODE = 2;\r\n /** mag = linear and min = linear and mip = none */\r\n public static readonly TEXTURE_LINEAR_LINEAR = 2;\r\n\r\n /** Trilinear is mag = linear and min = linear and mip = linear */\r\n public static readonly TEXTURE_TRILINEAR_SAMPLINGMODE = 3;\r\n /** Trilinear is mag = linear and min = linear and mip = linear */\r\n public static readonly TEXTURE_LINEAR_LINEAR_MIPLINEAR = 3;\r\n\r\n /** mag = nearest and min = nearest and mip = nearest */\r\n public static readonly TEXTURE_NEAREST_NEAREST_MIPNEAREST = 4;\r\n /** mag = nearest and min = linear and mip = nearest */\r\n public static readonly TEXTURE_NEAREST_LINEAR_MIPNEAREST = 5;\r\n /** mag = nearest and min = linear and mip = linear */\r\n public static readonly TEXTURE_NEAREST_LINEAR_MIPLINEAR = 6;\r\n /** mag = nearest and min = linear and mip = none */\r\n public static readonly TEXTURE_NEAREST_LINEAR = 7;\r\n /** nearest is mag = nearest and min = nearest and mip = linear */\r\n public static readonly TEXTURE_NEAREST_NEAREST_MIPLINEAR = 8;\r\n /** mag = linear and min = nearest and mip = nearest */\r\n public static readonly TEXTURE_LINEAR_NEAREST_MIPNEAREST = 9;\r\n /** mag = linear and min = nearest and mip = linear */\r\n public static readonly TEXTURE_LINEAR_NEAREST_MIPLINEAR = 10;\r\n /** Bilinear is mag = linear and min = linear and mip = nearest */\r\n public static readonly TEXTURE_LINEAR_LINEAR_MIPNEAREST = 11;\r\n /** mag = linear and min = nearest and mip = none */\r\n public static readonly TEXTURE_LINEAR_NEAREST = 12;\r\n\r\n /** Explicit coordinates mode */\r\n public static readonly TEXTURE_EXPLICIT_MODE = 0;\r\n /** Spherical coordinates mode */\r\n public static readonly TEXTURE_SPHERICAL_MODE = 1;\r\n /** Planar coordinates mode */\r\n public static readonly TEXTURE_PLANAR_MODE = 2;\r\n /** Cubic coordinates mode */\r\n public static readonly TEXTURE_CUBIC_MODE = 3;\r\n /** Projection coordinates mode */\r\n public static readonly TEXTURE_PROJECTION_MODE = 4;\r\n /** Skybox coordinates mode */\r\n public static readonly TEXTURE_SKYBOX_MODE = 5;\r\n /** Inverse Cubic coordinates mode */\r\n public static readonly TEXTURE_INVCUBIC_MODE = 6;\r\n /** Equirectangular coordinates mode */\r\n public static readonly TEXTURE_EQUIRECTANGULAR_MODE = 7;\r\n /** Equirectangular Fixed coordinates mode */\r\n public static readonly TEXTURE_FIXED_EQUIRECTANGULAR_MODE = 8;\r\n /** Equirectangular Fixed Mirrored coordinates mode */\r\n public static readonly TEXTURE_FIXED_EQUIRECTANGULAR_MIRRORED_MODE = 9;\r\n\r\n /** Offline (baking) quality for texture filtering */\r\n public static readonly TEXTURE_FILTERING_QUALITY_OFFLINE = 4096;\r\n\r\n /** High quality for texture filtering */\r\n public static readonly TEXTURE_FILTERING_QUALITY_HIGH = 64;\r\n\r\n /** Medium quality for texture filtering */\r\n public static readonly TEXTURE_FILTERING_QUALITY_MEDIUM = 16;\r\n\r\n /** Low quality for texture filtering */\r\n public static readonly TEXTURE_FILTERING_QUALITY_LOW = 8;\r\n\r\n // Texture rescaling mode\r\n /** Defines that texture rescaling will use a floor to find the closer power of 2 size */\r\n public static readonly SCALEMODE_FLOOR = 1;\r\n /** Defines that texture rescaling will look for the nearest power of 2 size */\r\n public static readonly SCALEMODE_NEAREST = 2;\r\n /** Defines that texture rescaling will use a ceil to find the closer power of 2 size */\r\n public static readonly SCALEMODE_CEILING = 3;\r\n\r\n /**\r\n * The dirty texture flag value\r\n */\r\n public static readonly MATERIAL_TextureDirtyFlag = 1;\r\n /**\r\n * The dirty light flag value\r\n */\r\n public static readonly MATERIAL_LightDirtyFlag = 2;\r\n /**\r\n * The dirty fresnel flag value\r\n */\r\n public static readonly MATERIAL_FresnelDirtyFlag = 4;\r\n /**\r\n * The dirty attribute flag value\r\n */\r\n public static readonly MATERIAL_AttributesDirtyFlag = 8;\r\n /**\r\n * The dirty misc flag value\r\n */\r\n public static readonly MATERIAL_MiscDirtyFlag = 16;\r\n /**\r\n * The dirty prepass flag value\r\n */\r\n public static readonly MATERIAL_PrePassDirtyFlag = 32;\r\n /**\r\n * The dirty image processing flag value\r\n */\r\n public static readonly MATERIAL_ImageProcessingDirtyFlag = 64;\r\n /**\r\n * The all dirty flag value\r\n */\r\n public static readonly MATERIAL_AllDirtyFlag = 127;\r\n\r\n /**\r\n * Returns the triangle fill mode\r\n */\r\n public static readonly MATERIAL_TriangleFillMode = 0;\r\n /**\r\n * Returns the wireframe mode\r\n */\r\n public static readonly MATERIAL_WireFrameFillMode = 1;\r\n /**\r\n * Returns the point fill mode\r\n */\r\n public static readonly MATERIAL_PointFillMode = 2;\r\n /**\r\n * Returns the point list draw mode\r\n */\r\n public static readonly MATERIAL_PointListDrawMode = 3;\r\n /**\r\n * Returns the line list draw mode\r\n */\r\n public static readonly MATERIAL_LineListDrawMode = 4;\r\n /**\r\n * Returns the line loop draw mode\r\n */\r\n public static readonly MATERIAL_LineLoopDrawMode = 5;\r\n /**\r\n * Returns the line strip draw mode\r\n */\r\n public static readonly MATERIAL_LineStripDrawMode = 6;\r\n\r\n /**\r\n * Returns the triangle strip draw mode\r\n */\r\n public static readonly MATERIAL_TriangleStripDrawMode = 7;\r\n /**\r\n * Returns the triangle fan draw mode\r\n */\r\n public static readonly MATERIAL_TriangleFanDrawMode = 8;\r\n\r\n /**\r\n * Stores the clock-wise side orientation\r\n */\r\n public static readonly MATERIAL_ClockWiseSideOrientation = 0;\r\n /**\r\n * Stores the counter clock-wise side orientation\r\n */\r\n public static readonly MATERIAL_CounterClockWiseSideOrientation = 1;\r\n\r\n /**\r\n * Energy-conserving Oren Nayar diffuse model type.\r\n */\r\n public static readonly MATERIAL_DIFFUSE_MODEL_E_OREN_NAYAR = 0;\r\n\r\n /**\r\n * Burley diffuse model type.\r\n */\r\n public static readonly MATERIAL_DIFFUSE_MODEL_BURLEY = 1;\r\n\r\n /**\r\n * Lambertian diffuse model type.\r\n */\r\n public static readonly MATERIAL_DIFFUSE_MODEL_LAMBERT = 2;\r\n\r\n /**\r\n * Babylon.js version less than 8.x\r\n * IBL Lambert + Burley diffuse model type.\r\n */\r\n public static readonly MATERIAL_DIFFUSE_MODEL_LEGACY = 3;\r\n\r\n /**\r\n * Specular lighting for dielectric materials follows the logic\r\n * in the glTF specification and KHR_materials_specular extension.\r\n * Specular colour is applied only at normal incidence (i.e. F0) while\r\n * glancing angles (i.e. F90) tend towards white.\r\n */\r\n public static readonly MATERIAL_DIELECTRIC_SPECULAR_MODEL_GLTF = 0;\r\n\r\n /**\r\n * Specular lighting for dielectric materials follows the logic\r\n * in the OpenPBR specification. Specular colour is applied to all\r\n * dielectric reflection, not just at normal incidence (i.e. F0).\r\n */\r\n public static readonly MATERIAL_DIELECTRIC_SPECULAR_MODEL_OPENPBR = 1;\r\n\r\n /**\r\n * Specular lighting for metals follows the logic in the glTF specification.\r\n * Base colour is applied at F0 while glancing angles tend towards white.\r\n */\r\n public static readonly MATERIAL_CONDUCTOR_SPECULAR_MODEL_GLTF = 0;\r\n\r\n /**\r\n * Specular lighting for metals follows the logic in the OpenPBR specification.\r\n * Specular colour is applied to glancing angles using the F82 spec.\r\n */\r\n public static readonly MATERIAL_CONDUCTOR_SPECULAR_MODEL_OPENPBR = 1;\r\n\r\n /**\r\n * Nothing\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_NothingTrigger = 0;\r\n /**\r\n * On pick\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnPickTrigger = 1;\r\n /**\r\n * On left pick\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnLeftPickTrigger = 2;\r\n /**\r\n * On right pick\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnRightPickTrigger = 3;\r\n /**\r\n * On center pick\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnCenterPickTrigger = 4;\r\n /**\r\n * On pick down\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnPickDownTrigger = 5;\r\n /**\r\n * On double pick\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnDoublePickTrigger = 6;\r\n /**\r\n * On pick up\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnPickUpTrigger = 7;\r\n /**\r\n * On pick out.\r\n * This trigger will only be raised if you also declared a OnPickDown\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnPickOutTrigger = 16;\r\n /**\r\n * On long press\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnLongPressTrigger = 8;\r\n /**\r\n * On pointer over\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnPointerOverTrigger = 9;\r\n /**\r\n * On pointer out\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnPointerOutTrigger = 10;\r\n /**\r\n * On every frame\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnEveryFrameTrigger = 11;\r\n /**\r\n * On intersection enter\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnIntersectionEnterTrigger = 12;\r\n /**\r\n * On intersection exit\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnIntersectionExitTrigger = 13;\r\n /**\r\n * On key down\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnKeyDownTrigger = 14;\r\n /**\r\n * On key up\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnKeyUpTrigger = 15;\r\n\r\n /**\r\n * Billboard mode will only apply to Y axis\r\n */\r\n public static readonly PARTICLES_BILLBOARDMODE_Y = 2;\r\n /**\r\n * Billboard mode will apply to all axes\r\n */\r\n public static readonly PARTICLES_BILLBOARDMODE_ALL = 7;\r\n /**\r\n * Special billboard mode where the particle will be biilboard to the camera but rotated to align with direction\r\n */\r\n public static readonly PARTICLES_BILLBOARDMODE_STRETCHED = 8;\r\n /**\r\n * Special billboard mode where the particle will be billboard to the camera but only around the axis of the direction of particle emission\r\n */\r\n public static readonly PARTICLES_BILLBOARDMODE_STRETCHED_LOCAL = 9;\r\n\r\n /** Default culling strategy : this is an exclusion test and it's the more accurate.\r\n * Test order :\r\n * Is the bounding sphere outside the frustum ?\r\n * If not, are the bounding box vertices outside the frustum ?\r\n * It not, then the cullable object is in the frustum.\r\n */\r\n public static readonly MESHES_CULLINGSTRATEGY_STANDARD = 0;\r\n /** Culling strategy : Bounding Sphere Only.\r\n * This is an exclusion test. It's faster than the standard strategy because the bounding box is not tested.\r\n * It's also less accurate than the standard because some not visible objects can still be selected.\r\n * Test : is the bounding sphere outside the frustum ?\r\n * If not, then the cullable object is in the frustum.\r\n */\r\n public static readonly MESHES_CULLINGSTRATEGY_BOUNDINGSPHERE_ONLY = 1;\r\n /** Culling strategy : Optimistic Inclusion.\r\n * This in an inclusion test first, then the standard exclusion test.\r\n * This can be faster when a cullable object is expected to be almost always in the camera frustum.\r\n * This could also be a little slower than the standard test when the tested object center is not the frustum but one of its bounding box vertex is still inside.\r\n * Anyway, it's as accurate as the standard strategy.\r\n * Test :\r\n * Is the cullable object bounding sphere center in the frustum ?\r\n * If not, apply the default culling strategy.\r\n */\r\n public static readonly MESHES_CULLINGSTRATEGY_OPTIMISTIC_INCLUSION = 2;\r\n /** Culling strategy : Optimistic Inclusion then Bounding Sphere Only.\r\n * This in an inclusion test first, then the bounding sphere only exclusion test.\r\n * This can be the fastest test when a cullable object is expected to be almost always in the camera frustum.\r\n * This could also be a little slower than the BoundingSphereOnly strategy when the tested object center is not in the frustum but its bounding sphere still intersects it.\r\n * It's less accurate than the standard strategy and as accurate as the BoundingSphereOnly strategy.\r\n * Test :\r\n * Is the cullable object bounding sphere center in the frustum ?\r\n * If not, apply the Bounding Sphere Only strategy. No Bounding Box is tested here.\r\n */\r\n public static readonly MESHES_CULLINGSTRATEGY_OPTIMISTIC_INCLUSION_THEN_BSPHERE_ONLY = 3;\r\n\r\n /**\r\n * No logging while loading\r\n */\r\n public static readonly SCENELOADER_NO_LOGGING = 0;\r\n /**\r\n * Minimal logging while loading\r\n */\r\n public static readonly SCENELOADER_MINIMAL_LOGGING = 1;\r\n /**\r\n * Summary logging while loading\r\n */\r\n public static readonly SCENELOADER_SUMMARY_LOGGING = 2;\r\n /**\r\n * Detailed logging while loading\r\n */\r\n public static readonly SCENELOADER_DETAILED_LOGGING = 3;\r\n\r\n /**\r\n * Constant used to retrieve the irradiance texture index in the textures array in the prepass\r\n * using getIndex(Constants.PREPASS_IRRADIANCE_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_IRRADIANCE_TEXTURE_TYPE = 0;\r\n /**\r\n * Constant used to retrieve the position texture index in the textures array in the prepass\r\n * using getIndex(Constants.PREPASS_POSITION_TEXTURE_INDEX)\r\n */\r\n public static readonly PREPASS_POSITION_TEXTURE_TYPE = 1;\r\n /**\r\n * Constant used to retrieve the velocity texture index in the textures array in the prepass\r\n * using getIndex(Constants.PREPASS_VELOCITY_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_VELOCITY_TEXTURE_TYPE = 2;\r\n /**\r\n * Constant used to retrieve the reflectivity texture index in the textures array in the prepass\r\n * using the getIndex(Constants.PREPASS_REFLECTIVITY_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_REFLECTIVITY_TEXTURE_TYPE = 3;\r\n /**\r\n * Constant used to retrieve the lit color texture index in the textures array in the prepass\r\n * using the getIndex(Constants.PREPASS_COLOR_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_COLOR_TEXTURE_TYPE = 4;\r\n /**\r\n * Constant used to retrieve (camera view) depth index in the textures array in the prepass\r\n * using the getIndex(Constants.PREPASS_DEPTH_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_DEPTH_TEXTURE_TYPE = 5;\r\n /**\r\n * Constant used to retrieve normal index in the textures array in the prepass\r\n * using the getIndex(Constants.PREPASS_NORMAL_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_NORMAL_TEXTURE_TYPE = 6;\r\n /**\r\n * Constant used to retrieve (sqrt) albedo index in the textures array in the prepass\r\n * using the getIndex(Constants.PREPASS_ALBEDO_SQRT_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_ALBEDO_SQRT_TEXTURE_TYPE = 7;\r\n\r\n /**\r\n * Constant used to retrieve world normal index in the textures array in the prepass\r\n * using the getIndex(Constants.PREPASS_WORLD_NORMAL_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_WORLD_NORMAL_TEXTURE_TYPE = 8;\r\n\r\n /**\r\n * Constant used to retrieve the local position texture index in the textures array in the prepass\r\n * using getIndex(Constants.PREPASS_LOCAL_POSITION_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_LOCAL_POSITION_TEXTURE_TYPE = 9;\r\n\r\n /**\r\n * Constant used to retrieve screen-space (non-linear) depth index in the textures array in the prepass\r\n * using the getIndex(Constants.PREPASS_SCREENSPACE_DEPTH_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_SCREENSPACE_DEPTH_TEXTURE_TYPE = 10;\r\n\r\n /**\r\n * Constant used to retrieve the velocity texture index in the textures array in the prepass\r\n * using getIndex(Constants.PREPASS_VELOCITY_LINEAR_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_VELOCITY_LINEAR_TEXTURE_TYPE = 11;\r\n\r\n /**\r\n * Constant used to retrieve albedo index in the textures array in the prepass\r\n * using the getIndex(Constants.PREPASS_ALBEDO_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_ALBEDO_TEXTURE_TYPE = 12;\r\n\r\n /**\r\n * Constant used to retrieve normalized camera view depth geometry texture\r\n */\r\n public static readonly PREPASS_NORMALIZED_VIEW_DEPTH_TEXTURE_TYPE = 13;\r\n\r\n /** Flag to create a readable buffer (the buffer can be the source of a copy) */\r\n public static readonly BUFFER_CREATIONFLAG_READ = 1;\r\n /** Flag to create a writable buffer (the buffer can be the destination of a copy) */\r\n public static readonly BUFFER_CREATIONFLAG_WRITE = 2;\r\n /** Flag to create a readable and writable buffer */\r\n public static readonly BUFFER_CREATIONFLAG_READWRITE = 3;\r\n /** Flag to create a buffer suitable to be used as a uniform buffer */\r\n public static readonly BUFFER_CREATIONFLAG_UNIFORM = 4;\r\n /** Flag to create a buffer suitable to be used as a vertex buffer */\r\n public static readonly BUFFER_CREATIONFLAG_VERTEX = 8;\r\n /** Flag to create a buffer suitable to be used as an index buffer */\r\n public static readonly BUFFER_CREATIONFLAG_INDEX = 16;\r\n /** Flag to create a buffer suitable to be used as a storage buffer */\r\n public static readonly BUFFER_CREATIONFLAG_STORAGE = 32;\r\n /** Flag to create a buffer suitable to be used for indirect calls, such as `dispatchIndirect` */\r\n public static readonly BUFFER_CREATIONFLAG_INDIRECT = 64;\r\n\r\n /**\r\n * Prefixes used by the engine for sub mesh draw wrappers\r\n */\r\n\r\n /** @internal */\r\n public static readonly RENDERPASS_MAIN = 0;\r\n\r\n /**\r\n * Constant used as key code for Alt key\r\n */\r\n public static readonly INPUT_ALT_KEY = 18;\r\n\r\n /**\r\n * Constant used as key code for Ctrl key\r\n */\r\n public static readonly INPUT_CTRL_KEY = 17;\r\n\r\n /**\r\n * Constant used as key code for Meta key (Left Win, Left Cmd)\r\n */\r\n public static readonly INPUT_META_KEY1 = 91;\r\n\r\n /**\r\n * Constant used as key code for Meta key (Right Win)\r\n */\r\n public static readonly INPUT_META_KEY2 = 92;\r\n\r\n /**\r\n * Constant used as key code for Meta key (Right Win, Right Cmd)\r\n */\r\n public static readonly INPUT_META_KEY3 = 93;\r\n\r\n /**\r\n * Constant used as key code for Shift key\r\n */\r\n public static readonly INPUT_SHIFT_KEY = 16;\r\n\r\n /** Standard snapshot rendering. In this mode, some form of dynamic behavior is possible (for eg, uniform buffers are still updated) */\r\n public static readonly SNAPSHOTRENDERING_STANDARD = 0;\r\n\r\n /** Fast snapshot rendering. In this mode, everything is static and only some limited form of dynamic behaviour is possible */\r\n public static readonly SNAPSHOTRENDERING_FAST = 1;\r\n\r\n /**\r\n * This is the default projection mode used by the cameras.\r\n * It helps recreating a feeling of perspective and better appreciate depth.\r\n * This is the best way to simulate real life cameras.\r\n */\r\n public static readonly PERSPECTIVE_CAMERA = 0;\r\n /**\r\n * This helps creating camera with an orthographic mode.\r\n * Orthographic is commonly used in engineering as a means to produce object specifications that communicate dimensions unambiguously, each line of 1 unit length (cm, meter..whatever) will appear to have the same length everywhere on the drawing. This allows the drafter to dimension only a subset of lines and let the reader know that other lines of that length on the drawing are also that length in reality. Every parallel line in the drawing is also parallel in the object.\r\n */\r\n public static readonly ORTHOGRAPHIC_CAMERA = 1;\r\n\r\n /**\r\n * This is the default FOV mode for perspective cameras.\r\n * This setting aligns the upper and lower bounds of the viewport to the upper and lower bounds of the camera frustum.\r\n */\r\n public static readonly FOVMODE_VERTICAL_FIXED = 0;\r\n /**\r\n * This setting aligns the left and right bounds of the viewport to the left and right bounds of the camera frustum.\r\n */\r\n public static readonly FOVMODE_HORIZONTAL_FIXED = 1;\r\n\r\n /**\r\n * This specifies there is no need for a camera rig.\r\n * Basically only one eye is rendered corresponding to the camera.\r\n */\r\n public static readonly RIG_MODE_NONE = 0;\r\n /**\r\n * Simulates a camera Rig with one blue eye and one red eye.\r\n * This can be use with 3d blue and red glasses.\r\n */\r\n public static readonly RIG_MODE_STEREOSCOPIC_ANAGLYPH = 10;\r\n /**\r\n * Defines that both eyes of the camera will be rendered side by side with a parallel target.\r\n */\r\n public static readonly RIG_MODE_STEREOSCOPIC_SIDEBYSIDE_PARALLEL = 11;\r\n /**\r\n * Defines that both eyes of the camera will be rendered side by side with a none parallel target.\r\n */\r\n public static readonly RIG_MODE_STEREOSCOPIC_SIDEBYSIDE_CROSSEYED = 12;\r\n /**\r\n * Defines that both eyes of the camera will be rendered over under each other.\r\n */\r\n public static readonly RIG_MODE_STEREOSCOPIC_OVERUNDER = 13;\r\n /**\r\n * Defines that both eyes of the camera will be rendered on successive lines interlaced for passive 3d monitors.\r\n */\r\n public static readonly RIG_MODE_STEREOSCOPIC_INTERLACED = 14;\r\n /**\r\n * Defines that both eyes of the camera should be renderered in a VR mode (carbox).\r\n */\r\n public static readonly RIG_MODE_VR = 20;\r\n /**\r\n * Custom rig mode allowing rig cameras to be populated manually with any number of cameras\r\n */\r\n public static readonly RIG_MODE_CUSTOM = 22;\r\n\r\n /**\r\n * Maximum number of uv sets supported\r\n */\r\n public static readonly MAX_SUPPORTED_UV_SETS = 6;\r\n\r\n /**\r\n * GL constants\r\n */\r\n /** Alpha blend equation: ADD */\r\n public static readonly GL_ALPHA_EQUATION_ADD = 0x8006;\r\n /** Alpha equation: MIN */\r\n public static readonly GL_ALPHA_EQUATION_MIN = 0x8007;\r\n /** Alpha equation: MAX */\r\n public static readonly GL_ALPHA_EQUATION_MAX = 0x8008;\r\n /** Alpha equation: SUBTRACT */\r\n public static readonly GL_ALPHA_EQUATION_SUBTRACT = 0x800a;\r\n /** Alpha equation: REVERSE_SUBTRACT */\r\n public static readonly GL_ALPHA_EQUATION_REVERSE_SUBTRACT = 0x800b;\r\n\r\n /** Alpha blend function: SRC */\r\n public static readonly GL_ALPHA_FUNCTION_SRC = 0x0300;\r\n /** Alpha blend function: ONE_MINUS_SRC */\r\n public static readonly GL_ALPHA_FUNCTION_ONE_MINUS_SRC_COLOR = 0x0301;\r\n /** Alpha blend function: SRC_ALPHA */\r\n public static readonly GL_ALPHA_FUNCTION_SRC_ALPHA = 0x0302;\r\n /** Alpha blend function: ONE_MINUS_SRC_ALPHA */\r\n public static readonly GL_ALPHA_FUNCTION_ONE_MINUS_SRC_ALPHA = 0x0303;\r\n /** Alpha blend function: DST_ALPHA */\r\n public static readonly GL_ALPHA_FUNCTION_DST_ALPHA = 0x0304;\r\n /** Alpha blend function: ONE_MINUS_DST_ALPHA */\r\n public static readonly GL_ALPHA_FUNCTION_ONE_MINUS_DST_ALPHA = 0x0305;\r\n /** Alpha blend function: ONE_MINUS_DST */\r\n public static readonly GL_ALPHA_FUNCTION_DST_COLOR = 0x0306;\r\n /** Alpha blend function: ONE_MINUS_DST */\r\n public static readonly GL_ALPHA_FUNCTION_ONE_MINUS_DST_COLOR = 0x0307;\r\n /** Alpha blend function: SRC_ALPHA_SATURATED */\r\n public static readonly GL_ALPHA_FUNCTION_SRC_ALPHA_SATURATED = 0x0308;\r\n /** Alpha blend function: CONSTANT */\r\n public static readonly GL_ALPHA_FUNCTION_CONSTANT_COLOR = 0x8001;\r\n /** Alpha blend function: ONE_MINUS_CONSTANT */\r\n public static readonly GL_ALPHA_FUNCTION_ONE_MINUS_CONSTANT_COLOR = 0x8002;\r\n /** Alpha blend function: CONSTANT_ALPHA */\r\n public static readonly GL_ALPHA_FUNCTION_CONSTANT_ALPHA = 0x8003;\r\n /** Alpha blend function: ONE_MINUS_CONSTANT_ALPHA */\r\n public static readonly GL_ALPHA_FUNCTION_ONE_MINUS_CONSTANT_ALPHA = 0x8004;\r\n /** Alpha blend function: SRC1 */\r\n public static readonly GL_ALPHA_FUNCTION_SRC1_COLOR = 0x88f9;\r\n /** Alpha blend function: SRC1 */\r\n public static readonly GL_ALPHA_FUNCTION_ONE_MINUS_SRC1_COLOR = 0x88fa;\r\n /** Alpha blend function: SRC1 */\r\n public static readonly GL_ALPHA_FUNCTION_SRC1_ALPHA = 0x8589;\r\n /** Alpha blend function: SRC1 */\r\n public static readonly GL_ALPHA_FUNCTION_ONE_MINUS_SRC1_ALPHA = 0x88fb;\r\n\r\n /** URL to the snippet server. Points to the public snippet server by default */\r\n public static SnippetUrl = \"https://snippet.babylonjs.com\";\r\n\r\n /** The fog is deactivated */\r\n public static FOGMODE_NONE = 0;\r\n /** The fog density is following an exponential function */\r\n public static FOGMODE_EXP = 1;\r\n /** The fog density is following an exponential function faster than FOGMODE_EXP */\r\n public static FOGMODE_EXP2 = 2;\r\n /** The fog density is following a linear function. */\r\n public static FOGMODE_LINEAR = 3;\r\n\r\n /**\r\n * The byte type.\r\n */\r\n public static BYTE = 5120;\r\n\r\n /**\r\n * The unsigned byte type.\r\n */\r\n public static UNSIGNED_BYTE = 5121;\r\n\r\n /**\r\n * The short type.\r\n */\r\n public static SHORT = 5122;\r\n\r\n /**\r\n * The unsigned short type.\r\n */\r\n public static UNSIGNED_SHORT = 5123;\r\n\r\n /**\r\n * The integer type.\r\n */\r\n public static INT = 5124;\r\n\r\n /**\r\n * The unsigned integer type.\r\n */\r\n public static UNSIGNED_INT = 5125;\r\n\r\n /**\r\n * The float type.\r\n */\r\n public static FLOAT = 5126;\r\n\r\n /**\r\n * Positions\r\n */\r\n public static PositionKind = \"position\";\r\n /**\r\n * Normals\r\n */\r\n public static NormalKind = \"normal\";\r\n /**\r\n * Tangents\r\n */\r\n public static TangentKind = \"tangent\";\r\n /**\r\n * Texture coordinates\r\n */\r\n public static UVKind = \"uv\";\r\n /**\r\n * Texture coordinates 2\r\n */\r\n public static UV2Kind = \"uv2\";\r\n /**\r\n * Texture coordinates 3\r\n */\r\n public static UV3Kind = \"uv3\";\r\n /**\r\n * Texture coordinates 4\r\n */\r\n public static UV4Kind = \"uv4\";\r\n /**\r\n * Texture coordinates 5\r\n */\r\n public static UV5Kind = \"uv5\";\r\n /**\r\n * Texture coordinates 6\r\n */\r\n public static UV6Kind = \"uv6\";\r\n /**\r\n * Colors\r\n */\r\n public static ColorKind = \"color\";\r\n /**\r\n * Instance Colors\r\n */\r\n public static ColorInstanceKind = \"instanceColor\";\r\n /**\r\n * Matrix indices (for bones)\r\n */\r\n public static MatricesIndicesKind = \"matricesIndices\";\r\n /**\r\n * Matrix weights (for bones)\r\n */\r\n public static MatricesWeightsKind = \"matricesWeights\";\r\n /**\r\n * Additional matrix indices (for bones)\r\n */\r\n public static MatricesIndicesExtraKind = \"matricesIndicesExtra\";\r\n /**\r\n * Additional matrix weights (for bones)\r\n */\r\n public static MatricesWeightsExtraKind = \"matricesWeightsExtra\";\r\n\r\n // Animation type\r\n /**\r\n * Float animation type\r\n */\r\n public static readonly ANIMATIONTYPE_FLOAT = 0;\r\n /**\r\n * Vector3 animation type\r\n */\r\n public static readonly ANIMATIONTYPE_VECTOR3 = 1;\r\n /**\r\n * Quaternion animation type\r\n */\r\n public static readonly ANIMATIONTYPE_QUATERNION = 2;\r\n /**\r\n * Matrix animation type\r\n */\r\n public static readonly ANIMATIONTYPE_MATRIX = 3;\r\n /**\r\n * Color3 animation type\r\n */\r\n public static readonly ANIMATIONTYPE_COLOR3 = 4;\r\n /**\r\n * Color3 animation type\r\n */\r\n public static readonly ANIMATIONTYPE_COLOR4 = 7;\r\n /**\r\n * Vector2 animation type\r\n */\r\n public static readonly ANIMATIONTYPE_VECTOR2 = 5;\r\n /**\r\n * Size animation type\r\n */\r\n public static readonly ANIMATIONTYPE_SIZE = 6;\r\n\r\n /**\r\n * The default minZ value for the near plane of a frustum light\r\n */\r\n public static ShadowMinZ = 0;\r\n /**\r\n * The default maxZ value for the far plane of a frustum light\r\n */\r\n public static ShadowMaxZ = 10000;\r\n}\r\n"]}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../dev/core/src/Engines/constants.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\r\n/** Defines the cross module used constants to avoid circular dependencies */\r\nexport class Constants {\r\n /** Sampler suffix when associated with a texture name */\r\n public static readonly AUTOSAMPLERSUFFIX = \"Sampler\";\r\n /** Flag used to disable diagnostics for WebGPU */\r\n public static readonly DISABLEUA = \"#define DISABLE_UNIFORMITY_ANALYSIS\";\r\n /** Defines that alpha blending is disabled */\r\n public static readonly ALPHA_DISABLE = 0;\r\n /** Defines that alpha blending is COLOR=SRC_ALPHA * SRC + DEST, ALPHA=DEST_ALPHA */\r\n public static readonly ALPHA_ADD = 1;\r\n /**\r\n * Defines that alpha blending is COLOR=SRC_ALPHA * SRC + (1 - SRC_ALPHA) * DEST, ALPHA=SRC_ALPHA + DEST_ALPHA\r\n * Go-to for transparency. 100% alpha means source, 0% alpha means background. Glass, UI fade, smoke\r\n */\r\n public static readonly ALPHA_COMBINE = 2;\r\n /**\r\n * Defines that alpha blending is COLOR=(1 - SRC) * DEST, ALPHA=SRC_ALPHA - DEST_ALPHA\r\n * Subtracts source from destination, leading to darker results\r\n * */\r\n public static readonly ALPHA_SUBTRACT = 3;\r\n /** Defines that alpha blending is COLOR=DEST * SRC, ALPHA=SRC_ALPHA + DEST_ALPHA */\r\n public static readonly ALPHA_MULTIPLY = 4;\r\n /**\r\n * Defines that alpha blending is COLOR=SRC_ALPHA * SRC + (1 - SRC) * DEST, ALPHA=SRC_ALPHA + DEST_ALPHA\r\n * Prioritizes area with high source alpha, strongly emphasizes the source\r\n */\r\n public static readonly ALPHA_MAXIMIZED = 5;\r\n /**\r\n * Defines that alpha blending is COLOR=SRC + DEST, ALPHA=DEST_ALPHA\r\n * Source color is added to the destination color without alpha affecting the result. Great for additive glow effects (fire, magic, lasers)\r\n */\r\n public static readonly ALPHA_ONEONE = 6;\r\n /** Defines that alpha blending is COLOR=SRC + (1 - SRC_ALPHA) * DEST, ALPHA=SRC_ALPHA + DEST_ALPHA */\r\n public static readonly ALPHA_PREMULTIPLIED = 7;\r\n /** Defines that alpha blending is COLOR=SRC + (1 - SRC_ALPHA) * DEST, ALPHA=SRC_ALPHA + (1 - SRC_ALPHA) * DEST_ALPHA */\r\n public static readonly ALPHA_PREMULTIPLIED_PORTERDUFF = 8;\r\n /**\r\n * Defines that alpha blending is COLOR=CST * SRC + (1 - CST) * DEST, ALPHA=CST_ALPHA * SRC + (1 - CST_ALPHA) * DEST_ALPHA\r\n * Where CST is user-supplied color\r\n */\r\n public static readonly ALPHA_INTERPOLATE = 9;\r\n /**\r\n * Defines that alpha blending is COLOR=SRC + (1 - SRC) * DEST, ALPHA=SRC_ALPHA + (1 - SRC_ALPHA) * DEST_ALPHA\r\n * Brightens, good for soft light or UI highlights (like photoshop's screen blend)\r\n */\r\n public static readonly ALPHA_SCREENMODE = 10;\r\n /**\r\n * Defines that alpha blending is COLOR=SRC + DST, ALPHA=SRC_ALPHA + DEST_ALPHA\r\n * Straight addition of color and alpha- use when you want both source and destination colors and opacities to stack\r\n */\r\n public static readonly ALPHA_ONEONE_ONEONE = 11;\r\n /**\r\n * Defines that alpha blending is COLOR=DEST_ALPHA * SRC + DST, ALPHA=0\r\n */\r\n public static readonly ALPHA_ALPHATOCOLOR = 12;\r\n /**\r\n * Defines that alpha blending is COLOR=(1 - DEST) * SRC + (1 - SRC) * DEST, ALPHA=(1 - DEST_ALPHA) * SRC_ALPHA + (1 - SRC_ALPHA) * DEST_ALPHA\r\n * Result is between source and destination, used for experimental blending or styled effects\r\n */\r\n public static readonly ALPHA_REVERSEONEMINUS = 13;\r\n /**\r\n * Defines that alpha blending is ALPHA=SRC + (1 - SRC ALPHA) * DEST, ALPHA=SRC_ALPHA + (1 - SRC ALPHA) * DEST_ALPHA\r\n * Smooths blending between source and destination, useful in layered alpha masks\r\n */\r\n public static readonly ALPHA_SRC_DSTONEMINUSSRCALPHA = 14;\r\n /**\r\n * Defines that alpha blending is COLOR=SRC + DST, ALPHA=SRC_ALPHA\r\n * Color stacks, but only source alpha is kept\r\n */\r\n public static readonly ALPHA_ONEONE_ONEZERO = 15;\r\n /**\r\n * Defines that alpha blending is COLOR=(1 - DEST) * SRC + (1 - SRC) * DEST, ALPHA=DEST_ALPHA\r\n * Produces inverted look (negative space), like 'exclusion' mode in photoshop\r\n */\r\n public static readonly ALPHA_EXCLUSION = 16;\r\n /**\r\n * Defines that alpha blending is COLOR=SRC_ALPHA * SRC + (1 - SRC ALPHA) * DEST, ALPHA=SRC_ALPHA + (1 - SRC_ALPHA) * DEST_ALPHA\r\n * Great for layered rendering (particles, fog volumes), accumulates transparency in a more physically accurate way\r\n */\r\n public static readonly ALPHA_LAYER_ACCUMULATE = 17;\r\n\r\n /**\r\n * Defines that alpha blending is COLOR=MIN(SRC, DEST), ALPHA=MIN(SRC_ALPHA, DEST_ALPHA)\r\n */\r\n public static readonly ALPHA_MIN = 18;\r\n\r\n /**\r\n * Defines that alpha blending is COLOR=MAX(SRC, DEST), ALPHA=MAX(SRC_ALPHA, DEST_ALPHA)\r\n */\r\n public static readonly ALPHA_MAX = 19;\r\n\r\n /**\r\n * Defines that alpha blending uses dual source blending and is COLOR=SRC + SRC1 * DEST, ALPHA=DST_ALPHA\r\n */\r\n public static readonly ALPHA_DUAL_SRC0_ADD_SRC1xDST = 20;\r\n\r\n /** Defines that alpha blending equation a SUM */\r\n public static readonly ALPHA_EQUATION_ADD = 0;\r\n /** Defines that alpha blending equation a SUBSTRACTION */\r\n public static readonly ALPHA_EQUATION_SUBSTRACT = 1;\r\n /** Defines that alpha blending equation a REVERSE SUBSTRACTION */\r\n public static readonly ALPHA_EQUATION_REVERSE_SUBTRACT = 2;\r\n /** Defines that alpha blending equation a MAX operation */\r\n public static readonly ALPHA_EQUATION_MAX = 3;\r\n /** Defines that alpha blending equation a MIN operation */\r\n public static readonly ALPHA_EQUATION_MIN = 4;\r\n /**\r\n * Defines that alpha blending equation a DARKEN operation:\r\n * It takes the min of the src and sums the alpha channels.\r\n */\r\n public static readonly ALPHA_EQUATION_DARKEN = 5;\r\n\r\n /** Defines that the resource is not delayed*/\r\n public static readonly DELAYLOADSTATE_NONE = 0;\r\n /** Defines that the resource was successfully delay loaded */\r\n public static readonly DELAYLOADSTATE_LOADED = 1;\r\n /** Defines that the resource is currently delay loading */\r\n public static readonly DELAYLOADSTATE_LOADING = 2;\r\n /** Defines that the resource is delayed and has not started loading */\r\n public static readonly DELAYLOADSTATE_NOTLOADED = 4;\r\n\r\n // Depth or Stencil test Constants.\r\n /** Passed to depthFunction or stencilFunction to specify depth or stencil tests will never pass. i.e. Nothing will be drawn */\r\n public static readonly NEVER = 0x0200;\r\n /** Passed to depthFunction or stencilFunction to specify depth or stencil tests will always pass. i.e. Pixels will be drawn in the order they are drawn */\r\n public static readonly ALWAYS = 0x0207;\r\n /** Passed to depthFunction or stencilFunction to specify depth or stencil tests will pass if the new depth value is less than the stored value */\r\n public static readonly LESS = 0x0201;\r\n /** Passed to depthFunction or stencilFunction to specify depth or stencil tests will pass if the new depth value is equals to the stored value */\r\n public static readonly EQUAL = 0x0202;\r\n /** Passed to depthFunction or stencilFunction to specify depth or stencil tests will pass if the new depth value is less than or equal to the stored value */\r\n public static readonly LEQUAL = 0x0203;\r\n /** Passed to depthFunction or stencilFunction to specify depth or stencil tests will pass if the new depth value is greater than the stored value */\r\n public static readonly GREATER = 0x0204;\r\n /** Passed to depthFunction or stencilFunction to specify depth or stencil tests will pass if the new depth value is greater than or equal to the stored value */\r\n public static readonly GEQUAL = 0x0206;\r\n /** Passed to depthFunction or stencilFunction to specify depth or stencil tests will pass if the new depth value is not equal to the stored value */\r\n public static readonly NOTEQUAL = 0x0205;\r\n\r\n // Stencil Actions Constants.\r\n /** Passed to stencilOperation to specify that stencil value must be kept */\r\n public static readonly KEEP = 0x1e00;\r\n /** Passed to stencilOperation to specify that stencil value must be zero */\r\n public static readonly ZERO = 0x0000;\r\n /** Passed to stencilOperation to specify that stencil value must be replaced */\r\n public static readonly REPLACE = 0x1e01;\r\n /** Passed to stencilOperation to specify that stencil value must be incremented */\r\n public static readonly INCR = 0x1e02;\r\n /** Passed to stencilOperation to specify that stencil value must be decremented */\r\n public static readonly DECR = 0x1e03;\r\n /** Passed to stencilOperation to specify that stencil value must be inverted */\r\n public static readonly INVERT = 0x150a;\r\n /** Passed to stencilOperation to specify that stencil value must be incremented with wrapping */\r\n public static readonly INCR_WRAP = 0x8507;\r\n /** Passed to stencilOperation to specify that stencil value must be decremented with wrapping */\r\n public static readonly DECR_WRAP = 0x8508;\r\n\r\n /** Texture is not repeating outside of 0..1 UVs */\r\n public static readonly TEXTURE_CLAMP_ADDRESSMODE = 0;\r\n /** Texture is repeating outside of 0..1 UVs */\r\n public static readonly TEXTURE_WRAP_ADDRESSMODE = 1;\r\n /** Texture is repeating and mirrored */\r\n public static readonly TEXTURE_MIRROR_ADDRESSMODE = 2;\r\n\r\n /** Flag to create a storage texture */\r\n public static readonly TEXTURE_CREATIONFLAG_STORAGE = 1;\r\n\r\n /** ALPHA */\r\n public static readonly TEXTUREFORMAT_ALPHA = 0;\r\n /** LUMINANCE */\r\n public static readonly TEXTUREFORMAT_LUMINANCE = 1;\r\n /** LUMINANCE_ALPHA */\r\n public static readonly TEXTUREFORMAT_LUMINANCE_ALPHA = 2;\r\n /** RGB */\r\n public static readonly TEXTUREFORMAT_RGB = 4;\r\n /** RGBA */\r\n public static readonly TEXTUREFORMAT_RGBA = 5;\r\n /** RED */\r\n public static readonly TEXTUREFORMAT_RED = 6;\r\n /** RED (2nd reference) */\r\n public static readonly TEXTUREFORMAT_R = 6;\r\n /** RED unsigned short normed to [0, 1] **/\r\n public static readonly TEXTUREFORMAT_R16_UNORM = 0x822a;\r\n /** RG unsigned short normed to [0, 1] **/\r\n public static readonly TEXTUREFORMAT_RG16_UNORM = 0x822c;\r\n /** RGB unsigned short normed to [0, 1] **/\r\n public static readonly TEXTUREFORMAT_RGB16_UNORM = 0x8054;\r\n /** RGBA unsigned short normed to [0, 1] **/\r\n public static readonly TEXTUREFORMAT_RGBA16_UNORM = 0x805b;\r\n /** RED signed short normed to [-1, 1] **/\r\n public static readonly TEXTUREFORMAT_R16_SNORM = 0x8f98;\r\n /** RG signed short normed to [-1, 1] **/\r\n public static readonly TEXTUREFORMAT_RG16_SNORM = 0x8f99;\r\n /** RGB signed short normed to [-1, 1] **/\r\n public static readonly TEXTUREFORMAT_RGB16_SNORM = 0x8f9a;\r\n /** RGBA signed short normed to [-1, 1] **/\r\n public static readonly TEXTUREFORMAT_RGBA16_SNORM = 0x8f9b;\r\n /** RG */\r\n public static readonly TEXTUREFORMAT_RG = 7;\r\n /** RED_INTEGER */\r\n public static readonly TEXTUREFORMAT_RED_INTEGER = 8;\r\n /** RED_INTEGER (2nd reference) */\r\n public static readonly TEXTUREFORMAT_R_INTEGER = 8;\r\n /** RG_INTEGER */\r\n public static readonly TEXTUREFORMAT_RG_INTEGER = 9;\r\n /** RGB_INTEGER */\r\n public static readonly TEXTUREFORMAT_RGB_INTEGER = 10;\r\n /** RGBA_INTEGER */\r\n public static readonly TEXTUREFORMAT_RGBA_INTEGER = 11;\r\n /** BGRA */\r\n public static readonly TEXTUREFORMAT_BGRA = 12;\r\n\r\n /** Depth 24 bits + Stencil 8 bits */\r\n public static readonly TEXTUREFORMAT_DEPTH24_STENCIL8 = 13;\r\n /** Depth 32 bits float */\r\n public static readonly TEXTUREFORMAT_DEPTH32_FLOAT = 14;\r\n /** Depth 16 bits */\r\n public static readonly TEXTUREFORMAT_DEPTH16 = 15;\r\n /** Depth 24 bits */\r\n public static readonly TEXTUREFORMAT_DEPTH24 = 16;\r\n /** Depth 24 bits unorm + Stencil 8 bits */\r\n public static readonly TEXTUREFORMAT_DEPTH24UNORM_STENCIL8 = 17;\r\n /** Depth 32 bits float + Stencil 8 bits */\r\n public static readonly TEXTUREFORMAT_DEPTH32FLOAT_STENCIL8 = 18;\r\n /** Stencil 8 bits */\r\n public static readonly TEXTUREFORMAT_STENCIL8 = 19;\r\n /** UNDEFINED */\r\n public static readonly TEXTUREFORMAT_UNDEFINED = 0xffffffff;\r\n\r\n /** Compressed BC7 */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGBA_BPTC_UNORM = 36492;\r\n /** Compressed BC7 (SRGB+A) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_SRGB_ALPHA_BPTC_UNORM = 36493;\r\n /** Compressed BC6 unsigned float */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT = 36495;\r\n /** Compressed BC6 signed float */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGB_BPTC_SIGNED_FLOAT = 36494;\r\n /** Compressed BC3 */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGBA_S3TC_DXT5 = 33779;\r\n /** Compressed BC3 (SRGB+A) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT = 35919;\r\n /** Compressed BC2 */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGBA_S3TC_DXT3 = 33778;\r\n /** Compressed BC2 (SRGB+A) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT = 35918;\r\n /** Compressed BC1 (RGBA) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGBA_S3TC_DXT1 = 33777;\r\n /** Compressed BC1 (RGB) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGB_S3TC_DXT1 = 33776;\r\n /** Compressed BC1 (SRGB+A) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT = 35917;\r\n /** Compressed BC1 (SRGB) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_SRGB_S3TC_DXT1_EXT = 35916;\r\n /** Compressed ASTC 4x4 */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGBA_ASTC_4x4 = 37808;\r\n /** Compressed ASTC 4x4 (SRGB+A) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR = 37840;\r\n /** Compressed ETC1 (RGB) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGB_ETC1_WEBGL = 36196;\r\n /** Compressed ETC2 (RGB) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGB8_ETC2 = 37492;\r\n /** Compressed ETC2 (SRGB) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_SRGB8_ETC2 = 37493;\r\n /** Compressed ETC2 (RGB+A1) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 37494;\r\n /** Compressed ETC2 (SRGB+A1)*/\r\n public static readonly TEXTUREFORMAT_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 37495;\r\n /** Compressed ETC2 (RGBA) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_RGBA8_ETC2_EAC = 37496;\r\n /** Compressed ETC2 (SRGB+A) */\r\n public static readonly TEXTUREFORMAT_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = 37497;\r\n\r\n /** UNSIGNED_BYTE */\r\n public static readonly TEXTURETYPE_UNSIGNED_BYTE = 0;\r\n /** @deprecated use more explicit TEXTURETYPE_UNSIGNED_BYTE instead. Use TEXTURETYPE_UNSIGNED_INTEGER for 32bits values.*/\r\n public static readonly TEXTURETYPE_UNSIGNED_INT = 0;\r\n /** FLOAT */\r\n public static readonly TEXTURETYPE_FLOAT = 1;\r\n /** HALF_FLOAT */\r\n public static readonly TEXTURETYPE_HALF_FLOAT = 2;\r\n /** BYTE */\r\n public static readonly TEXTURETYPE_BYTE = 3;\r\n /** SHORT */\r\n public static readonly TEXTURETYPE_SHORT = 4;\r\n /** UNSIGNED_SHORT */\r\n public static readonly TEXTURETYPE_UNSIGNED_SHORT = 5;\r\n /** INT */\r\n public static readonly TEXTURETYPE_INT = 6;\r\n /** UNSIGNED_INT */\r\n public static readonly TEXTURETYPE_UNSIGNED_INTEGER = 7;\r\n /** UNSIGNED_SHORT_4_4_4_4 */\r\n public static readonly TEXTURETYPE_UNSIGNED_SHORT_4_4_4_4 = 8;\r\n /** UNSIGNED_SHORT_5_5_5_1 */\r\n public static readonly TEXTURETYPE_UNSIGNED_SHORT_5_5_5_1 = 9;\r\n /** UNSIGNED_SHORT_5_6_5 */\r\n public static readonly TEXTURETYPE_UNSIGNED_SHORT_5_6_5 = 10;\r\n /** UNSIGNED_INT_2_10_10_10_REV */\r\n public static readonly TEXTURETYPE_UNSIGNED_INT_2_10_10_10_REV = 11;\r\n /** UNSIGNED_INT_24_8 */\r\n public static readonly TEXTURETYPE_UNSIGNED_INT_24_8 = 12;\r\n /** UNSIGNED_INT_10F_11F_11F_REV */\r\n public static readonly TEXTURETYPE_UNSIGNED_INT_10F_11F_11F_REV = 13;\r\n /** UNSIGNED_INT_5_9_9_9_REV */\r\n public static readonly TEXTURETYPE_UNSIGNED_INT_5_9_9_9_REV = 14;\r\n /** FLOAT_32_UNSIGNED_INT_24_8_REV */\r\n public static readonly TEXTURETYPE_FLOAT_32_UNSIGNED_INT_24_8_REV = 15;\r\n /** UNDEFINED */\r\n public static readonly TEXTURETYPE_UNDEFINED = 16;\r\n\r\n /** 2D Texture target*/\r\n public static readonly TEXTURE_2D = 3553;\r\n /** 2D Array Texture target */\r\n public static readonly TEXTURE_2D_ARRAY = 35866;\r\n /** Cube Map Texture target */\r\n public static readonly TEXTURE_CUBE_MAP = 34067;\r\n /** Cube Map Array Texture target */\r\n public static readonly TEXTURE_CUBE_MAP_ARRAY = 0xdeadbeef;\r\n /** 3D Texture target */\r\n public static readonly TEXTURE_3D = 32879;\r\n\r\n /** nearest is mag = nearest and min = nearest and no mip */\r\n public static readonly TEXTURE_NEAREST_SAMPLINGMODE = 1;\r\n /** mag = nearest and min = nearest and mip = none */\r\n public static readonly TEXTURE_NEAREST_NEAREST = 1;\r\n\r\n /** Bilinear is mag = linear and min = linear and no mip */\r\n public static readonly TEXTURE_BILINEAR_SAMPLINGMODE = 2;\r\n /** mag = linear and min = linear and mip = none */\r\n public static readonly TEXTURE_LINEAR_LINEAR = 2;\r\n\r\n /** Trilinear is mag = linear and min = linear and mip = linear */\r\n public static readonly TEXTURE_TRILINEAR_SAMPLINGMODE = 3;\r\n /** Trilinear is mag = linear and min = linear and mip = linear */\r\n public static readonly TEXTURE_LINEAR_LINEAR_MIPLINEAR = 3;\r\n\r\n /** mag = nearest and min = nearest and mip = nearest */\r\n public static readonly TEXTURE_NEAREST_NEAREST_MIPNEAREST = 4;\r\n /** mag = nearest and min = linear and mip = nearest */\r\n public static readonly TEXTURE_NEAREST_LINEAR_MIPNEAREST = 5;\r\n /** mag = nearest and min = linear and mip = linear */\r\n public static readonly TEXTURE_NEAREST_LINEAR_MIPLINEAR = 6;\r\n /** mag = nearest and min = linear and mip = none */\r\n public static readonly TEXTURE_NEAREST_LINEAR = 7;\r\n /** nearest is mag = nearest and min = nearest and mip = linear */\r\n public static readonly TEXTURE_NEAREST_NEAREST_MIPLINEAR = 8;\r\n /** mag = linear and min = nearest and mip = nearest */\r\n public static readonly TEXTURE_LINEAR_NEAREST_MIPNEAREST = 9;\r\n /** mag = linear and min = nearest and mip = linear */\r\n public static readonly TEXTURE_LINEAR_NEAREST_MIPLINEAR = 10;\r\n /** Bilinear is mag = linear and min = linear and mip = nearest */\r\n public static readonly TEXTURE_LINEAR_LINEAR_MIPNEAREST = 11;\r\n /** mag = linear and min = nearest and mip = none */\r\n public static readonly TEXTURE_LINEAR_NEAREST = 12;\r\n\r\n /** Explicit coordinates mode */\r\n public static readonly TEXTURE_EXPLICIT_MODE = 0;\r\n /** Spherical coordinates mode */\r\n public static readonly TEXTURE_SPHERICAL_MODE = 1;\r\n /** Planar coordinates mode */\r\n public static readonly TEXTURE_PLANAR_MODE = 2;\r\n /** Cubic coordinates mode */\r\n public static readonly TEXTURE_CUBIC_MODE = 3;\r\n /** Projection coordinates mode */\r\n public static readonly TEXTURE_PROJECTION_MODE = 4;\r\n /** Skybox coordinates mode */\r\n public static readonly TEXTURE_SKYBOX_MODE = 5;\r\n /** Inverse Cubic coordinates mode */\r\n public static readonly TEXTURE_INVCUBIC_MODE = 6;\r\n /** Equirectangular coordinates mode */\r\n public static readonly TEXTURE_EQUIRECTANGULAR_MODE = 7;\r\n /** Equirectangular Fixed coordinates mode */\r\n public static readonly TEXTURE_FIXED_EQUIRECTANGULAR_MODE = 8;\r\n /** Equirectangular Fixed Mirrored coordinates mode */\r\n public static readonly TEXTURE_FIXED_EQUIRECTANGULAR_MIRRORED_MODE = 9;\r\n\r\n /** Offline (baking) quality for texture filtering */\r\n public static readonly TEXTURE_FILTERING_QUALITY_OFFLINE = 4096;\r\n\r\n /** High quality for texture filtering */\r\n public static readonly TEXTURE_FILTERING_QUALITY_HIGH = 64;\r\n\r\n /** Medium quality for texture filtering */\r\n public static readonly TEXTURE_FILTERING_QUALITY_MEDIUM = 16;\r\n\r\n /** Low quality for texture filtering */\r\n public static readonly TEXTURE_FILTERING_QUALITY_LOW = 8;\r\n\r\n /** Min quality for texture filtering */\r\n public static readonly TEXTURE_FILTERING_QUALITY_MIN = 1;\r\n\r\n // Texture rescaling mode\r\n /** Defines that texture rescaling will use a floor to find the closer power of 2 size */\r\n public static readonly SCALEMODE_FLOOR = 1;\r\n /** Defines that texture rescaling will look for the nearest power of 2 size */\r\n public static readonly SCALEMODE_NEAREST = 2;\r\n /** Defines that texture rescaling will use a ceil to find the closer power of 2 size */\r\n public static readonly SCALEMODE_CEILING = 3;\r\n\r\n /**\r\n * The dirty texture flag value\r\n */\r\n public static readonly MATERIAL_TextureDirtyFlag = 1;\r\n /**\r\n * The dirty light flag value\r\n */\r\n public static readonly MATERIAL_LightDirtyFlag = 2;\r\n /**\r\n * The dirty fresnel flag value\r\n */\r\n public static readonly MATERIAL_FresnelDirtyFlag = 4;\r\n /**\r\n * The dirty attribute flag value\r\n */\r\n public static readonly MATERIAL_AttributesDirtyFlag = 8;\r\n /**\r\n * The dirty misc flag value\r\n */\r\n public static readonly MATERIAL_MiscDirtyFlag = 16;\r\n /**\r\n * The dirty prepass flag value\r\n */\r\n public static readonly MATERIAL_PrePassDirtyFlag = 32;\r\n /**\r\n * The dirty image processing flag value\r\n */\r\n public static readonly MATERIAL_ImageProcessingDirtyFlag = 64;\r\n /**\r\n * The all dirty flag value\r\n */\r\n public static readonly MATERIAL_AllDirtyFlag = 127;\r\n\r\n /**\r\n * Returns the triangle fill mode\r\n */\r\n public static readonly MATERIAL_TriangleFillMode = 0;\r\n /**\r\n * Returns the wireframe mode\r\n */\r\n public static readonly MATERIAL_WireFrameFillMode = 1;\r\n /**\r\n * Returns the point fill mode\r\n */\r\n public static readonly MATERIAL_PointFillMode = 2;\r\n /**\r\n * Returns the point list draw mode\r\n */\r\n public static readonly MATERIAL_PointListDrawMode = 3;\r\n /**\r\n * Returns the line list draw mode\r\n */\r\n public static readonly MATERIAL_LineListDrawMode = 4;\r\n /**\r\n * Returns the line loop draw mode\r\n */\r\n public static readonly MATERIAL_LineLoopDrawMode = 5;\r\n /**\r\n * Returns the line strip draw mode\r\n */\r\n public static readonly MATERIAL_LineStripDrawMode = 6;\r\n\r\n /**\r\n * Returns the triangle strip draw mode\r\n */\r\n public static readonly MATERIAL_TriangleStripDrawMode = 7;\r\n /**\r\n * Returns the triangle fan draw mode\r\n */\r\n public static readonly MATERIAL_TriangleFanDrawMode = 8;\r\n\r\n /**\r\n * Stores the clock-wise side orientation\r\n */\r\n public static readonly MATERIAL_ClockWiseSideOrientation = 0;\r\n /**\r\n * Stores the counter clock-wise side orientation\r\n */\r\n public static readonly MATERIAL_CounterClockWiseSideOrientation = 1;\r\n\r\n /**\r\n * Energy-conserving Oren Nayar diffuse model type.\r\n */\r\n public static readonly MATERIAL_DIFFUSE_MODEL_E_OREN_NAYAR = 0;\r\n\r\n /**\r\n * Burley diffuse model type.\r\n */\r\n public static readonly MATERIAL_DIFFUSE_MODEL_BURLEY = 1;\r\n\r\n /**\r\n * Lambertian diffuse model type.\r\n */\r\n public static readonly MATERIAL_DIFFUSE_MODEL_LAMBERT = 2;\r\n\r\n /**\r\n * Babylon.js version less than 8.x\r\n * IBL Lambert + Burley diffuse model type.\r\n */\r\n public static readonly MATERIAL_DIFFUSE_MODEL_LEGACY = 3;\r\n\r\n /**\r\n * Specular lighting for dielectric materials follows the logic\r\n * in the glTF specification and KHR_materials_specular extension.\r\n * Specular colour is applied only at normal incidence (i.e. F0) while\r\n * glancing angles (i.e. F90) tend towards white.\r\n */\r\n public static readonly MATERIAL_DIELECTRIC_SPECULAR_MODEL_GLTF = 0;\r\n\r\n /**\r\n * Specular lighting for dielectric materials follows the logic\r\n * in the OpenPBR specification. Specular colour is applied to all\r\n * dielectric reflection, not just at normal incidence (i.e. F0).\r\n */\r\n public static readonly MATERIAL_DIELECTRIC_SPECULAR_MODEL_OPENPBR = 1;\r\n\r\n /**\r\n * Specular lighting for metals follows the logic in the glTF specification.\r\n * Base colour is applied at F0 while glancing angles tend towards white.\r\n */\r\n public static readonly MATERIAL_CONDUCTOR_SPECULAR_MODEL_GLTF = 0;\r\n\r\n /**\r\n * Specular lighting for metals follows the logic in the OpenPBR specification.\r\n * Specular colour is applied to glancing angles using the F82 spec.\r\n */\r\n public static readonly MATERIAL_CONDUCTOR_SPECULAR_MODEL_OPENPBR = 1;\r\n\r\n /**\r\n * Nothing\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_NothingTrigger = 0;\r\n /**\r\n * On pick\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnPickTrigger = 1;\r\n /**\r\n * On left pick\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnLeftPickTrigger = 2;\r\n /**\r\n * On right pick\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnRightPickTrigger = 3;\r\n /**\r\n * On center pick\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnCenterPickTrigger = 4;\r\n /**\r\n * On pick down\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnPickDownTrigger = 5;\r\n /**\r\n * On double pick\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnDoublePickTrigger = 6;\r\n /**\r\n * On pick up\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnPickUpTrigger = 7;\r\n /**\r\n * On pick out.\r\n * This trigger will only be raised if you also declared a OnPickDown\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnPickOutTrigger = 16;\r\n /**\r\n * On long press\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnLongPressTrigger = 8;\r\n /**\r\n * On pointer over\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnPointerOverTrigger = 9;\r\n /**\r\n * On pointer out\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnPointerOutTrigger = 10;\r\n /**\r\n * On every frame\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnEveryFrameTrigger = 11;\r\n /**\r\n * On intersection enter\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnIntersectionEnterTrigger = 12;\r\n /**\r\n * On intersection exit\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnIntersectionExitTrigger = 13;\r\n /**\r\n * On key down\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnKeyDownTrigger = 14;\r\n /**\r\n * On key up\r\n * @see https://doc.babylonjs.com/features/featuresDeepDive/events/actions#triggers\r\n */\r\n public static readonly ACTION_OnKeyUpTrigger = 15;\r\n\r\n /**\r\n * Billboard mode will only apply to Y axis\r\n */\r\n public static readonly PARTICLES_BILLBOARDMODE_Y = 2;\r\n /**\r\n * Billboard mode will apply to all axes\r\n */\r\n public static readonly PARTICLES_BILLBOARDMODE_ALL = 7;\r\n /**\r\n * Special billboard mode where the particle will be biilboard to the camera but rotated to align with direction\r\n */\r\n public static readonly PARTICLES_BILLBOARDMODE_STRETCHED = 8;\r\n /**\r\n * Special billboard mode where the particle will be billboard to the camera but only around the axis of the direction of particle emission\r\n */\r\n public static readonly PARTICLES_BILLBOARDMODE_STRETCHED_LOCAL = 9;\r\n\r\n /** Default culling strategy : this is an exclusion test and it's the more accurate.\r\n * Test order :\r\n * Is the bounding sphere outside the frustum ?\r\n * If not, are the bounding box vertices outside the frustum ?\r\n * It not, then the cullable object is in the frustum.\r\n */\r\n public static readonly MESHES_CULLINGSTRATEGY_STANDARD = 0;\r\n /** Culling strategy : Bounding Sphere Only.\r\n * This is an exclusion test. It's faster than the standard strategy because the bounding box is not tested.\r\n * It's also less accurate than the standard because some not visible objects can still be selected.\r\n * Test : is the bounding sphere outside the frustum ?\r\n * If not, then the cullable object is in the frustum.\r\n */\r\n public static readonly MESHES_CULLINGSTRATEGY_BOUNDINGSPHERE_ONLY = 1;\r\n /** Culling strategy : Optimistic Inclusion.\r\n * This in an inclusion test first, then the standard exclusion test.\r\n * This can be faster when a cullable object is expected to be almost always in the camera frustum.\r\n * This could also be a little slower than the standard test when the tested object center is not the frustum but one of its bounding box vertex is still inside.\r\n * Anyway, it's as accurate as the standard strategy.\r\n * Test :\r\n * Is the cullable object bounding sphere center in the frustum ?\r\n * If not, apply the default culling strategy.\r\n */\r\n public static readonly MESHES_CULLINGSTRATEGY_OPTIMISTIC_INCLUSION = 2;\r\n /** Culling strategy : Optimistic Inclusion then Bounding Sphere Only.\r\n * This in an inclusion test first, then the bounding sphere only exclusion test.\r\n * This can be the fastest test when a cullable object is expected to be almost always in the camera frustum.\r\n * This could also be a little slower than the BoundingSphereOnly strategy when the tested object center is not in the frustum but its bounding sphere still intersects it.\r\n * It's less accurate than the standard strategy and as accurate as the BoundingSphereOnly strategy.\r\n * Test :\r\n * Is the cullable object bounding sphere center in the frustum ?\r\n * If not, apply the Bounding Sphere Only strategy. No Bounding Box is tested here.\r\n */\r\n public static readonly MESHES_CULLINGSTRATEGY_OPTIMISTIC_INCLUSION_THEN_BSPHERE_ONLY = 3;\r\n\r\n /**\r\n * No logging while loading\r\n */\r\n public static readonly SCENELOADER_NO_LOGGING = 0;\r\n /**\r\n * Minimal logging while loading\r\n */\r\n public static readonly SCENELOADER_MINIMAL_LOGGING = 1;\r\n /**\r\n * Summary logging while loading\r\n */\r\n public static readonly SCENELOADER_SUMMARY_LOGGING = 2;\r\n /**\r\n * Detailed logging while loading\r\n */\r\n public static readonly SCENELOADER_DETAILED_LOGGING = 3;\r\n\r\n /**\r\n * Constant used to retrieve the irradiance texture index in the textures array in the prepass\r\n * using getIndex(Constants.PREPASS_IRRADIANCE_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_IRRADIANCE_TEXTURE_TYPE = 0;\r\n /**\r\n * Constant used to retrieve the position texture index in the textures array in the prepass\r\n * using getIndex(Constants.PREPASS_POSITION_TEXTURE_INDEX)\r\n */\r\n public static readonly PREPASS_POSITION_TEXTURE_TYPE = 1;\r\n /**\r\n * Constant used to retrieve the velocity texture index in the textures array in the prepass\r\n * using getIndex(Constants.PREPASS_VELOCITY_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_VELOCITY_TEXTURE_TYPE = 2;\r\n /**\r\n * Constant used to retrieve the reflectivity texture index in the textures array in the prepass\r\n * using the getIndex(Constants.PREPASS_REFLECTIVITY_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_REFLECTIVITY_TEXTURE_TYPE = 3;\r\n /**\r\n * Constant used to retrieve the lit color texture index in the textures array in the prepass\r\n * using the getIndex(Constants.PREPASS_COLOR_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_COLOR_TEXTURE_TYPE = 4;\r\n /**\r\n * Constant used to retrieve (camera view) depth index in the textures array in the prepass\r\n * using the getIndex(Constants.PREPASS_DEPTH_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_DEPTH_TEXTURE_TYPE = 5;\r\n /**\r\n * Constant used to retrieve normal index in the textures array in the prepass\r\n * using the getIndex(Constants.PREPASS_NORMAL_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_NORMAL_TEXTURE_TYPE = 6;\r\n /**\r\n * Constant used to retrieve (sqrt) albedo index in the textures array in the prepass\r\n * using the getIndex(Constants.PREPASS_ALBEDO_SQRT_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_ALBEDO_SQRT_TEXTURE_TYPE = 7;\r\n\r\n /**\r\n * Constant used to retrieve world normal index in the textures array in the prepass\r\n * using the getIndex(Constants.PREPASS_WORLD_NORMAL_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_WORLD_NORMAL_TEXTURE_TYPE = 8;\r\n\r\n /**\r\n * Constant used to retrieve the local position texture index in the textures array in the prepass\r\n * using getIndex(Constants.PREPASS_LOCAL_POSITION_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_LOCAL_POSITION_TEXTURE_TYPE = 9;\r\n\r\n /**\r\n * Constant used to retrieve screen-space (non-linear) depth index in the textures array in the prepass\r\n * using the getIndex(Constants.PREPASS_SCREENSPACE_DEPTH_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_SCREENSPACE_DEPTH_TEXTURE_TYPE = 10;\r\n\r\n /**\r\n * Constant used to retrieve the velocity texture index in the textures array in the prepass\r\n * using getIndex(Constants.PREPASS_VELOCITY_LINEAR_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_VELOCITY_LINEAR_TEXTURE_TYPE = 11;\r\n\r\n /**\r\n * Constant used to retrieve albedo index in the textures array in the prepass\r\n * using the getIndex(Constants.PREPASS_ALBEDO_TEXTURE_TYPE)\r\n */\r\n public static readonly PREPASS_ALBEDO_TEXTURE_TYPE = 12;\r\n\r\n /**\r\n * Constant used to retrieve normalized camera view depth geometry texture\r\n */\r\n public static readonly PREPASS_NORMALIZED_VIEW_DEPTH_TEXTURE_TYPE = 13;\r\n\r\n /** Flag to create a readable buffer (the buffer can be the source of a copy) */\r\n public static readonly BUFFER_CREATIONFLAG_READ = 1;\r\n /** Flag to create a writable buffer (the buffer can be the destination of a copy) */\r\n public static readonly BUFFER_CREATIONFLAG_WRITE = 2;\r\n /** Flag to create a readable and writable buffer */\r\n public static readonly BUFFER_CREATIONFLAG_READWRITE = 3;\r\n /** Flag to create a buffer suitable to be used as a uniform buffer */\r\n public static readonly BUFFER_CREATIONFLAG_UNIFORM = 4;\r\n /** Flag to create a buffer suitable to be used as a vertex buffer */\r\n public static readonly BUFFER_CREATIONFLAG_VERTEX = 8;\r\n /** Flag to create a buffer suitable to be used as an index buffer */\r\n public static readonly BUFFER_CREATIONFLAG_INDEX = 16;\r\n /** Flag to create a buffer suitable to be used as a storage buffer */\r\n public static readonly BUFFER_CREATIONFLAG_STORAGE = 32;\r\n /** Flag to create a buffer suitable to be used for indirect calls, such as `dispatchIndirect` */\r\n public static readonly BUFFER_CREATIONFLAG_INDIRECT = 64;\r\n\r\n /**\r\n * Prefixes used by the engine for sub mesh draw wrappers\r\n */\r\n\r\n /** @internal */\r\n public static readonly RENDERPASS_MAIN = 0;\r\n\r\n /**\r\n * Constant used as key code for Alt key\r\n */\r\n public static readonly INPUT_ALT_KEY = 18;\r\n\r\n /**\r\n * Constant used as key code for Ctrl key\r\n */\r\n public static readonly INPUT_CTRL_KEY = 17;\r\n\r\n /**\r\n * Constant used as key code for Meta key (Left Win, Left Cmd)\r\n */\r\n public static readonly INPUT_META_KEY1 = 91;\r\n\r\n /**\r\n * Constant used as key code for Meta key (Right Win)\r\n */\r\n public static readonly INPUT_META_KEY2 = 92;\r\n\r\n /**\r\n * Constant used as key code for Meta key (Right Win, Right Cmd)\r\n */\r\n public static readonly INPUT_META_KEY3 = 93;\r\n\r\n /**\r\n * Constant used as key code for Shift key\r\n */\r\n public static readonly INPUT_SHIFT_KEY = 16;\r\n\r\n /** Standard snapshot rendering. In this mode, some form of dynamic behavior is possible (for eg, uniform buffers are still updated) */\r\n public static readonly SNAPSHOTRENDERING_STANDARD = 0;\r\n\r\n /** Fast snapshot rendering. In this mode, everything is static and only some limited form of dynamic behaviour is possible */\r\n public static readonly SNAPSHOTRENDERING_FAST = 1;\r\n\r\n /**\r\n * This is the default projection mode used by the cameras.\r\n * It helps recreating a feeling of perspective and better appreciate depth.\r\n * This is the best way to simulate real life cameras.\r\n */\r\n public static readonly PERSPECTIVE_CAMERA = 0;\r\n /**\r\n * This helps creating camera with an orthographic mode.\r\n * Orthographic is commonly used in engineering as a means to produce object specifications that communicate dimensions unambiguously, each line of 1 unit length (cm, meter..whatever) will appear to have the same length everywhere on the drawing. This allows the drafter to dimension only a subset of lines and let the reader know that other lines of that length on the drawing are also that length in reality. Every parallel line in the drawing is also parallel in the object.\r\n */\r\n public static readonly ORTHOGRAPHIC_CAMERA = 1;\r\n\r\n /**\r\n * This is the default FOV mode for perspective cameras.\r\n * This setting aligns the upper and lower bounds of the viewport to the upper and lower bounds of the camera frustum.\r\n */\r\n public static readonly FOVMODE_VERTICAL_FIXED = 0;\r\n /**\r\n * This setting aligns the left and right bounds of the viewport to the left and right bounds of the camera frustum.\r\n */\r\n public static readonly FOVMODE_HORIZONTAL_FIXED = 1;\r\n\r\n /**\r\n * This specifies there is no need for a camera rig.\r\n * Basically only one eye is rendered corresponding to the camera.\r\n */\r\n public static readonly RIG_MODE_NONE = 0;\r\n /**\r\n * Simulates a camera Rig with one blue eye and one red eye.\r\n * This can be use with 3d blue and red glasses.\r\n */\r\n public static readonly RIG_MODE_STEREOSCOPIC_ANAGLYPH = 10;\r\n /**\r\n * Defines that both eyes of the camera will be rendered side by side with a parallel target.\r\n */\r\n public static readonly RIG_MODE_STEREOSCOPIC_SIDEBYSIDE_PARALLEL = 11;\r\n /**\r\n * Defines that both eyes of the camera will be rendered side by side with a none parallel target.\r\n */\r\n public static readonly RIG_MODE_STEREOSCOPIC_SIDEBYSIDE_CROSSEYED = 12;\r\n /**\r\n * Defines that both eyes of the camera will be rendered over under each other.\r\n */\r\n public static readonly RIG_MODE_STEREOSCOPIC_OVERUNDER = 13;\r\n /**\r\n * Defines that both eyes of the camera will be rendered on successive lines interlaced for passive 3d monitors.\r\n */\r\n public static readonly RIG_MODE_STEREOSCOPIC_INTERLACED = 14;\r\n /**\r\n * Defines that both eyes of the camera should be renderered in a VR mode (carbox).\r\n */\r\n public static readonly RIG_MODE_VR = 20;\r\n /**\r\n * Custom rig mode allowing rig cameras to be populated manually with any number of cameras\r\n */\r\n public static readonly RIG_MODE_CUSTOM = 22;\r\n\r\n /**\r\n * Maximum number of uv sets supported\r\n */\r\n public static readonly MAX_SUPPORTED_UV_SETS = 6;\r\n\r\n /**\r\n * GL constants\r\n */\r\n /** Alpha blend equation: ADD */\r\n public static readonly GL_ALPHA_EQUATION_ADD = 0x8006;\r\n /** Alpha equation: MIN */\r\n public static readonly GL_ALPHA_EQUATION_MIN = 0x8007;\r\n /** Alpha equation: MAX */\r\n public static readonly GL_ALPHA_EQUATION_MAX = 0x8008;\r\n /** Alpha equation: SUBTRACT */\r\n public static readonly GL_ALPHA_EQUATION_SUBTRACT = 0x800a;\r\n /** Alpha equation: REVERSE_SUBTRACT */\r\n public static readonly GL_ALPHA_EQUATION_REVERSE_SUBTRACT = 0x800b;\r\n\r\n /** Alpha blend function: SRC */\r\n public static readonly GL_ALPHA_FUNCTION_SRC = 0x0300;\r\n /** Alpha blend function: ONE_MINUS_SRC */\r\n public static readonly GL_ALPHA_FUNCTION_ONE_MINUS_SRC_COLOR = 0x0301;\r\n /** Alpha blend function: SRC_ALPHA */\r\n public static readonly GL_ALPHA_FUNCTION_SRC_ALPHA = 0x0302;\r\n /** Alpha blend function: ONE_MINUS_SRC_ALPHA */\r\n public static readonly GL_ALPHA_FUNCTION_ONE_MINUS_SRC_ALPHA = 0x0303;\r\n /** Alpha blend function: DST_ALPHA */\r\n public static readonly GL_ALPHA_FUNCTION_DST_ALPHA = 0x0304;\r\n /** Alpha blend function: ONE_MINUS_DST_ALPHA */\r\n public static readonly GL_ALPHA_FUNCTION_ONE_MINUS_DST_ALPHA = 0x0305;\r\n /** Alpha blend function: ONE_MINUS_DST */\r\n public static readonly GL_ALPHA_FUNCTION_DST_COLOR = 0x0306;\r\n /** Alpha blend function: ONE_MINUS_DST */\r\n public static readonly GL_ALPHA_FUNCTION_ONE_MINUS_DST_COLOR = 0x0307;\r\n /** Alpha blend function: SRC_ALPHA_SATURATED */\r\n public static readonly GL_ALPHA_FUNCTION_SRC_ALPHA_SATURATED = 0x0308;\r\n /** Alpha blend function: CONSTANT */\r\n public static readonly GL_ALPHA_FUNCTION_CONSTANT_COLOR = 0x8001;\r\n /** Alpha blend function: ONE_MINUS_CONSTANT */\r\n public static readonly GL_ALPHA_FUNCTION_ONE_MINUS_CONSTANT_COLOR = 0x8002;\r\n /** Alpha blend function: CONSTANT_ALPHA */\r\n public static readonly GL_ALPHA_FUNCTION_CONSTANT_ALPHA = 0x8003;\r\n /** Alpha blend function: ONE_MINUS_CONSTANT_ALPHA */\r\n public static readonly GL_ALPHA_FUNCTION_ONE_MINUS_CONSTANT_ALPHA = 0x8004;\r\n /** Alpha blend function: SRC1 */\r\n public static readonly GL_ALPHA_FUNCTION_SRC1_COLOR = 0x88f9;\r\n /** Alpha blend function: SRC1 */\r\n public static readonly GL_ALPHA_FUNCTION_ONE_MINUS_SRC1_COLOR = 0x88fa;\r\n /** Alpha blend function: SRC1 */\r\n public static readonly GL_ALPHA_FUNCTION_SRC1_ALPHA = 0x8589;\r\n /** Alpha blend function: SRC1 */\r\n public static readonly GL_ALPHA_FUNCTION_ONE_MINUS_SRC1_ALPHA = 0x88fb;\r\n\r\n /** URL to the snippet server. Points to the public snippet server by default */\r\n public static SnippetUrl = \"https://snippet.babylonjs.com\";\r\n\r\n /** The fog is deactivated */\r\n public static FOGMODE_NONE = 0;\r\n /** The fog density is following an exponential function */\r\n public static FOGMODE_EXP = 1;\r\n /** The fog density is following an exponential function faster than FOGMODE_EXP */\r\n public static FOGMODE_EXP2 = 2;\r\n /** The fog density is following a linear function. */\r\n public static FOGMODE_LINEAR = 3;\r\n\r\n /**\r\n * The byte type.\r\n */\r\n public static BYTE = 5120;\r\n\r\n /**\r\n * The unsigned byte type.\r\n */\r\n public static UNSIGNED_BYTE = 5121;\r\n\r\n /**\r\n * The short type.\r\n */\r\n public static SHORT = 5122;\r\n\r\n /**\r\n * The unsigned short type.\r\n */\r\n public static UNSIGNED_SHORT = 5123;\r\n\r\n /**\r\n * The integer type.\r\n */\r\n public static INT = 5124;\r\n\r\n /**\r\n * The unsigned integer type.\r\n */\r\n public static UNSIGNED_INT = 5125;\r\n\r\n /**\r\n * The float type.\r\n */\r\n public static FLOAT = 5126;\r\n\r\n /**\r\n * Positions\r\n */\r\n public static PositionKind = \"position\";\r\n /**\r\n * Normals\r\n */\r\n public static NormalKind = \"normal\";\r\n /**\r\n * Tangents\r\n */\r\n public static TangentKind = \"tangent\";\r\n /**\r\n * Texture coordinates\r\n */\r\n public static UVKind = \"uv\";\r\n /**\r\n * Texture coordinates 2\r\n */\r\n public static UV2Kind = \"uv2\";\r\n /**\r\n * Texture coordinates 3\r\n */\r\n public static UV3Kind = \"uv3\";\r\n /**\r\n * Texture coordinates 4\r\n */\r\n public static UV4Kind = \"uv4\";\r\n /**\r\n * Texture coordinates 5\r\n */\r\n public static UV5Kind = \"uv5\";\r\n /**\r\n * Texture coordinates 6\r\n */\r\n public static UV6Kind = \"uv6\";\r\n /**\r\n * Colors\r\n */\r\n public static ColorKind = \"color\";\r\n /**\r\n * Instance Colors\r\n */\r\n public static ColorInstanceKind = \"instanceColor\";\r\n /**\r\n * Matrix indices (for bones)\r\n */\r\n public static MatricesIndicesKind = \"matricesIndices\";\r\n /**\r\n * Matrix weights (for bones)\r\n */\r\n public static MatricesWeightsKind = \"matricesWeights\";\r\n /**\r\n * Additional matrix indices (for bones)\r\n */\r\n public static MatricesIndicesExtraKind = \"matricesIndicesExtra\";\r\n /**\r\n * Additional matrix weights (for bones)\r\n */\r\n public static MatricesWeightsExtraKind = \"matricesWeightsExtra\";\r\n\r\n // Animation type\r\n /**\r\n * Float animation type\r\n */\r\n public static readonly ANIMATIONTYPE_FLOAT = 0;\r\n /**\r\n * Vector3 animation type\r\n */\r\n public static readonly ANIMATIONTYPE_VECTOR3 = 1;\r\n /**\r\n * Quaternion animation type\r\n */\r\n public static readonly ANIMATIONTYPE_QUATERNION = 2;\r\n /**\r\n * Matrix animation type\r\n */\r\n public static readonly ANIMATIONTYPE_MATRIX = 3;\r\n /**\r\n * Color3 animation type\r\n */\r\n public static readonly ANIMATIONTYPE_COLOR3 = 4;\r\n /**\r\n * Color3 animation type\r\n */\r\n public static readonly ANIMATIONTYPE_COLOR4 = 7;\r\n /**\r\n * Vector2 animation type\r\n */\r\n public static readonly ANIMATIONTYPE_VECTOR2 = 5;\r\n /**\r\n * Size animation type\r\n */\r\n public static readonly ANIMATIONTYPE_SIZE = 6;\r\n\r\n /**\r\n * The default minZ value for the near plane of a frustum light\r\n */\r\n public static ShadowMinZ = 0;\r\n /**\r\n * The default maxZ value for the far plane of a frustum light\r\n */\r\n public static ShadowMaxZ = 10000;\r\n}\r\n"]}
@@ -143,4 +143,8 @@ export interface PointerTouch {
143
143
  * Event type passed from DOM.
144
144
  */
145
145
  type: any;
146
+ /**
147
+ * The touch event's associated button ID (0: left, 1: middle, 2: right, etc.)
148
+ */
149
+ button?: number;
146
150
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pointerEvents.js","sourceRoot":"","sources":["../../../../dev/core/src/Events/pointerEvents.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAO/C;;GAEG;AACH,MAAM,OAAO,iBAAiB;;AAC1B;;GAEG;AACoB,6BAAW,GAAG,IAAI,CAAC;AAC1C;;GAEG;AACoB,2BAAS,GAAG,IAAI,CAAC;AACxC;;GAEG;AACoB,6BAAW,GAAG,IAAI,CAAC;AAC1C;;GAEG;AACoB,8BAAY,GAAG,IAAI,CAAC;AAC3C;;GAEG;AACoB,6BAAW,GAAG,IAAI,CAAC;AAC1C;;GAEG;AACoB,4BAAU,GAAG,IAAI,CAAC;AACzC;;GAEG;AACoB,kCAAgB,GAAG,IAAI,CAAC;AAGnD;;GAEG;AACH,MAAM,OAAO,eAAe;IACxB;;;;OAIG;IACH;IACI;;OAEG;IACI,IAAY;IACnB;;OAEG;IACI,KAAkB;QAJlB,SAAI,GAAJ,IAAI,CAAQ;QAIZ,UAAK,GAAL,KAAK,CAAa;IAC1B,CAAC;CACP;AAED;;;GAGG;AACH,MAAM,OAAO,cAAe,SAAQ,eAAe;IA0B/C;;;;;;OAMG;IACH,YAAY,IAAY,EAAE,KAAkB,EAAE,MAAc,EAAE,MAAc;QACxE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAjCvB;;WAEG;QACI,QAAG,GAAkB,IAAI,CAAC;QAOjC;;WAEG;QACI,wBAAmB,GAA0B,IAAI,CAAC;QAqBrD,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC;QACrC,IAAI,CAAC,aAAa,GAAG,IAAI,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC;CACJ;AAED;;;GAGG;AACH,MAAM,OAAO,WAAY,SAAQ,eAAe;IAI5C;;OAEG;IACH,IAAW,QAAQ;QACf,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAClB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC7B,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IACD;;;;;;OAMG;IACH,YAAY,IAAY,EAAE,KAAkB,EAAE,QAA+B,EAAE,eAAuC,IAAI;QACtH,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,gBAAgB;IACT,iBAAiB;QACpB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,KAAsB,CAAC,CAAC;YAC3E,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YACpE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC9B,CAAC;IACL,CAAC;CACJ","sourcesContent":["import type { Nullable } from \"../types\";\r\nimport { Vector2 } from \"../Maths/math.vector\";\r\nimport type { PickingInfo } from \"../Collisions/pickingInfo\";\r\nimport type { IMouseEvent, IPointerEvent } from \"./deviceInputEvents\";\r\nimport type { InputManager } from \"../Inputs/scene.inputManager\";\r\n\r\nimport type { Ray } from \"../Culling/ray\";\r\n\r\n/**\r\n * Gather the list of pointer event types as constants.\r\n */\r\nexport class PointerEventTypes {\r\n /**\r\n * The pointerdown event is fired when a pointer becomes active. For mouse, it is fired when the device transitions from no buttons depressed to at least one button depressed. For touch, it is fired when physical contact is made with the digitizer. For pen, it is fired when the stylus makes physical contact with the digitizer.\r\n */\r\n public static readonly POINTERDOWN = 0x01;\r\n /**\r\n * The pointerup event is fired when a pointer is no longer active.\r\n */\r\n public static readonly POINTERUP = 0x02;\r\n /**\r\n * The pointermove event is fired when a pointer changes coordinates.\r\n */\r\n public static readonly POINTERMOVE = 0x04;\r\n /**\r\n * The pointerwheel event is fired when a mouse wheel has been rotated.\r\n */\r\n public static readonly POINTERWHEEL = 0x08;\r\n /**\r\n * The pointerpick event is fired when a mesh or sprite has been picked by the pointer.\r\n */\r\n public static readonly POINTERPICK = 0x10;\r\n /**\r\n * The pointertap event is fired when a the object has been touched and released without drag.\r\n */\r\n public static readonly POINTERTAP = 0x20;\r\n /**\r\n * The pointerdoubletap event is fired when a the object has been touched and released twice without drag.\r\n */\r\n public static readonly POINTERDOUBLETAP = 0x40;\r\n}\r\n\r\n/**\r\n * Base class of pointer info types.\r\n */\r\nexport class PointerInfoBase {\r\n /**\r\n * Instantiates the base class of pointers info.\r\n * @param type Defines the type of event (PointerEventTypes)\r\n * @param event Defines the related dom event\r\n */\r\n constructor(\r\n /**\r\n * Defines the type of event (PointerEventTypes)\r\n */\r\n public type: number,\r\n /**\r\n * Defines the related dom event\r\n */\r\n public event: IMouseEvent\r\n ) {}\r\n}\r\n\r\n/**\r\n * This class is used to store pointer related info for the onPrePointerObservable event.\r\n * Set the skipOnPointerObservable property to true if you want the engine to stop any process after this event is triggered, even not calling onPointerObservable\r\n */\r\nexport class PointerInfoPre extends PointerInfoBase {\r\n /**\r\n * Ray from a pointer if available (eg. 6dof controller)\r\n */\r\n public ray: Nullable<Ray> = null;\r\n\r\n /**\r\n * Defines picking info coming from a near interaction (proximity instead of ray-based picking)\r\n */\r\n public nearInteractionPickingInfo: Nullable<PickingInfo>;\r\n\r\n /**\r\n * The original picking info that was used to trigger the pointer event\r\n */\r\n public originalPickingInfo: Nullable<PickingInfo> = null;\r\n\r\n /**\r\n * Defines the local position of the pointer on the canvas.\r\n */\r\n public localPosition: Vector2;\r\n\r\n /**\r\n * Defines whether the engine should skip the next OnPointerObservable associated to this pre.\r\n */\r\n public skipOnPointerObservable: boolean;\r\n\r\n /**\r\n * Instantiates a PointerInfoPre to store pointer related info to the onPrePointerObservable event.\r\n * @param type Defines the type of event (PointerEventTypes)\r\n * @param event Defines the related dom event\r\n * @param localX Defines the local x coordinates of the pointer when the event occured\r\n * @param localY Defines the local y coordinates of the pointer when the event occured\r\n */\r\n constructor(type: number, event: IMouseEvent, localX: number, localY: number) {\r\n super(type, event);\r\n this.skipOnPointerObservable = false;\r\n this.localPosition = new Vector2(localX, localY);\r\n }\r\n}\r\n\r\n/**\r\n * This type contains all the data related to a pointer event in Babylon.js.\r\n * The event member is an instance of PointerEvent for all types except PointerWheel and is of type MouseWheelEvent when type equals PointerWheel. The different event types can be found in the PointerEventTypes class.\r\n */\r\nexport class PointerInfo extends PointerInfoBase {\r\n private _pickInfo: Nullable<PickingInfo>;\r\n private _inputManager: Nullable<InputManager>;\r\n\r\n /**\r\n * Defines the picking info associated with this PointerInfo object (if applicable)\r\n */\r\n public get pickInfo(): Nullable<PickingInfo> {\r\n if (!this._pickInfo) {\r\n this._generatePickInfo();\r\n }\r\n\r\n return this._pickInfo;\r\n }\r\n /**\r\n * Instantiates a PointerInfo to store pointer related info to the onPointerObservable event.\r\n * @param type Defines the type of event (PointerEventTypes)\r\n * @param event Defines the related dom event\r\n * @param pickInfo Defines the picking info associated to the info (if any)\r\n * @param inputManager Defines the InputManager to use if there is no pickInfo\r\n */\r\n constructor(type: number, event: IMouseEvent, pickInfo: Nullable<PickingInfo>, inputManager: Nullable<InputManager> = null) {\r\n super(type, event);\r\n this._pickInfo = pickInfo;\r\n this._inputManager = inputManager;\r\n }\r\n\r\n /**\r\n * Generates the picking info if needed\r\n */\r\n /** @internal */\r\n public _generatePickInfo(): void {\r\n if (this._inputManager) {\r\n this._pickInfo = this._inputManager._pickMove(this.event as IPointerEvent);\r\n this._inputManager._setRayOnPointerInfo(this._pickInfo, this.event);\r\n this._inputManager = null;\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * Data relating to a touch event on the screen.\r\n */\r\n// eslint-disable-next-line @typescript-eslint/naming-convention\r\nexport interface PointerTouch {\r\n /**\r\n * X coordinate of touch.\r\n */\r\n x: number;\r\n /**\r\n * Y coordinate of touch.\r\n */\r\n y: number;\r\n /**\r\n * Id of touch. Unique for each finger.\r\n */\r\n pointerId: number;\r\n /**\r\n * Event type passed from DOM.\r\n */\r\n type: any;\r\n}\r\n"]}
1
+ {"version":3,"file":"pointerEvents.js","sourceRoot":"","sources":["../../../../dev/core/src/Events/pointerEvents.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAO/C;;GAEG;AACH,MAAM,OAAO,iBAAiB;;AAC1B;;GAEG;AACoB,6BAAW,GAAG,IAAI,CAAC;AAC1C;;GAEG;AACoB,2BAAS,GAAG,IAAI,CAAC;AACxC;;GAEG;AACoB,6BAAW,GAAG,IAAI,CAAC;AAC1C;;GAEG;AACoB,8BAAY,GAAG,IAAI,CAAC;AAC3C;;GAEG;AACoB,6BAAW,GAAG,IAAI,CAAC;AAC1C;;GAEG;AACoB,4BAAU,GAAG,IAAI,CAAC;AACzC;;GAEG;AACoB,kCAAgB,GAAG,IAAI,CAAC;AAGnD;;GAEG;AACH,MAAM,OAAO,eAAe;IACxB;;;;OAIG;IACH;IACI;;OAEG;IACI,IAAY;IACnB;;OAEG;IACI,KAAkB;QAJlB,SAAI,GAAJ,IAAI,CAAQ;QAIZ,UAAK,GAAL,KAAK,CAAa;IAC1B,CAAC;CACP;AAED;;;GAGG;AACH,MAAM,OAAO,cAAe,SAAQ,eAAe;IA0B/C;;;;;;OAMG;IACH,YAAY,IAAY,EAAE,KAAkB,EAAE,MAAc,EAAE,MAAc;QACxE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAjCvB;;WAEG;QACI,QAAG,GAAkB,IAAI,CAAC;QAOjC;;WAEG;QACI,wBAAmB,GAA0B,IAAI,CAAC;QAqBrD,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC;QACrC,IAAI,CAAC,aAAa,GAAG,IAAI,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC;CACJ;AAED;;;GAGG;AACH,MAAM,OAAO,WAAY,SAAQ,eAAe;IAI5C;;OAEG;IACH,IAAW,QAAQ;QACf,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAClB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC7B,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IACD;;;;;;OAMG;IACH,YAAY,IAAY,EAAE,KAAkB,EAAE,QAA+B,EAAE,eAAuC,IAAI;QACtH,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,gBAAgB;IACT,iBAAiB;QACpB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,KAAsB,CAAC,CAAC;YAC3E,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YACpE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC9B,CAAC;IACL,CAAC;CACJ","sourcesContent":["import type { Nullable } from \"../types\";\r\nimport { Vector2 } from \"../Maths/math.vector\";\r\nimport type { PickingInfo } from \"../Collisions/pickingInfo\";\r\nimport type { IMouseEvent, IPointerEvent } from \"./deviceInputEvents\";\r\nimport type { InputManager } from \"../Inputs/scene.inputManager\";\r\n\r\nimport type { Ray } from \"../Culling/ray\";\r\n\r\n/**\r\n * Gather the list of pointer event types as constants.\r\n */\r\nexport class PointerEventTypes {\r\n /**\r\n * The pointerdown event is fired when a pointer becomes active. For mouse, it is fired when the device transitions from no buttons depressed to at least one button depressed. For touch, it is fired when physical contact is made with the digitizer. For pen, it is fired when the stylus makes physical contact with the digitizer.\r\n */\r\n public static readonly POINTERDOWN = 0x01;\r\n /**\r\n * The pointerup event is fired when a pointer is no longer active.\r\n */\r\n public static readonly POINTERUP = 0x02;\r\n /**\r\n * The pointermove event is fired when a pointer changes coordinates.\r\n */\r\n public static readonly POINTERMOVE = 0x04;\r\n /**\r\n * The pointerwheel event is fired when a mouse wheel has been rotated.\r\n */\r\n public static readonly POINTERWHEEL = 0x08;\r\n /**\r\n * The pointerpick event is fired when a mesh or sprite has been picked by the pointer.\r\n */\r\n public static readonly POINTERPICK = 0x10;\r\n /**\r\n * The pointertap event is fired when a the object has been touched and released without drag.\r\n */\r\n public static readonly POINTERTAP = 0x20;\r\n /**\r\n * The pointerdoubletap event is fired when a the object has been touched and released twice without drag.\r\n */\r\n public static readonly POINTERDOUBLETAP = 0x40;\r\n}\r\n\r\n/**\r\n * Base class of pointer info types.\r\n */\r\nexport class PointerInfoBase {\r\n /**\r\n * Instantiates the base class of pointers info.\r\n * @param type Defines the type of event (PointerEventTypes)\r\n * @param event Defines the related dom event\r\n */\r\n constructor(\r\n /**\r\n * Defines the type of event (PointerEventTypes)\r\n */\r\n public type: number,\r\n /**\r\n * Defines the related dom event\r\n */\r\n public event: IMouseEvent\r\n ) {}\r\n}\r\n\r\n/**\r\n * This class is used to store pointer related info for the onPrePointerObservable event.\r\n * Set the skipOnPointerObservable property to true if you want the engine to stop any process after this event is triggered, even not calling onPointerObservable\r\n */\r\nexport class PointerInfoPre extends PointerInfoBase {\r\n /**\r\n * Ray from a pointer if available (eg. 6dof controller)\r\n */\r\n public ray: Nullable<Ray> = null;\r\n\r\n /**\r\n * Defines picking info coming from a near interaction (proximity instead of ray-based picking)\r\n */\r\n public nearInteractionPickingInfo: Nullable<PickingInfo>;\r\n\r\n /**\r\n * The original picking info that was used to trigger the pointer event\r\n */\r\n public originalPickingInfo: Nullable<PickingInfo> = null;\r\n\r\n /**\r\n * Defines the local position of the pointer on the canvas.\r\n */\r\n public localPosition: Vector2;\r\n\r\n /**\r\n * Defines whether the engine should skip the next OnPointerObservable associated to this pre.\r\n */\r\n public skipOnPointerObservable: boolean;\r\n\r\n /**\r\n * Instantiates a PointerInfoPre to store pointer related info to the onPrePointerObservable event.\r\n * @param type Defines the type of event (PointerEventTypes)\r\n * @param event Defines the related dom event\r\n * @param localX Defines the local x coordinates of the pointer when the event occured\r\n * @param localY Defines the local y coordinates of the pointer when the event occured\r\n */\r\n constructor(type: number, event: IMouseEvent, localX: number, localY: number) {\r\n super(type, event);\r\n this.skipOnPointerObservable = false;\r\n this.localPosition = new Vector2(localX, localY);\r\n }\r\n}\r\n\r\n/**\r\n * This type contains all the data related to a pointer event in Babylon.js.\r\n * The event member is an instance of PointerEvent for all types except PointerWheel and is of type MouseWheelEvent when type equals PointerWheel. The different event types can be found in the PointerEventTypes class.\r\n */\r\nexport class PointerInfo extends PointerInfoBase {\r\n private _pickInfo: Nullable<PickingInfo>;\r\n private _inputManager: Nullable<InputManager>;\r\n\r\n /**\r\n * Defines the picking info associated with this PointerInfo object (if applicable)\r\n */\r\n public get pickInfo(): Nullable<PickingInfo> {\r\n if (!this._pickInfo) {\r\n this._generatePickInfo();\r\n }\r\n\r\n return this._pickInfo;\r\n }\r\n /**\r\n * Instantiates a PointerInfo to store pointer related info to the onPointerObservable event.\r\n * @param type Defines the type of event (PointerEventTypes)\r\n * @param event Defines the related dom event\r\n * @param pickInfo Defines the picking info associated to the info (if any)\r\n * @param inputManager Defines the InputManager to use if there is no pickInfo\r\n */\r\n constructor(type: number, event: IMouseEvent, pickInfo: Nullable<PickingInfo>, inputManager: Nullable<InputManager> = null) {\r\n super(type, event);\r\n this._pickInfo = pickInfo;\r\n this._inputManager = inputManager;\r\n }\r\n\r\n /**\r\n * Generates the picking info if needed\r\n */\r\n /** @internal */\r\n public _generatePickInfo(): void {\r\n if (this._inputManager) {\r\n this._pickInfo = this._inputManager._pickMove(this.event as IPointerEvent);\r\n this._inputManager._setRayOnPointerInfo(this._pickInfo, this.event);\r\n this._inputManager = null;\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * Data relating to a touch event on the screen.\r\n */\r\n// eslint-disable-next-line @typescript-eslint/naming-convention\r\nexport interface PointerTouch {\r\n /**\r\n * X coordinate of touch.\r\n */\r\n x: number;\r\n /**\r\n * Y coordinate of touch.\r\n */\r\n y: number;\r\n /**\r\n * Id of touch. Unique for each finger.\r\n */\r\n pointerId: number;\r\n /**\r\n * Event type passed from DOM.\r\n */\r\n type: any;\r\n /**\r\n * The touch event's associated button ID (0: left, 1: middle, 2: right, etc.)\r\n */\r\n button?: number;\r\n}\r\n"]}
@@ -808,6 +808,9 @@ export declare class OpenPBRMaterial extends OpenPBRMaterialBase {
808
808
  * @internal
809
809
  */
810
810
  _forceIrradianceInFragment: boolean;
811
+ private _systemRealTimeFiltering;
812
+ get systemRealTimeFiltering(): boolean | undefined;
813
+ set systemRealTimeFiltering(value: boolean | undefined);
811
814
  private _realTimeFiltering;
812
815
  /**
813
816
  * Enables realtime filtering on the texture.
@@ -390,11 +390,19 @@ export class OpenPBRMaterial extends OpenPBRMaterialBase {
390
390
  }
391
391
  }
392
392
  }
393
+ /* Realtime filtering system control */
394
+ get systemRealTimeFiltering() {
395
+ return this._systemRealTimeFiltering;
396
+ }
397
+ set systemRealTimeFiltering(value) {
398
+ this._systemRealTimeFiltering = value;
399
+ this.markAsDirty(1);
400
+ }
393
401
  /**
394
402
  * Enables realtime filtering on the texture.
395
403
  */
396
404
  get realTimeFiltering() {
397
- return this._realTimeFiltering ?? false;
405
+ return (this._realTimeFiltering ?? false) || !!this.systemRealTimeFiltering;
398
406
  }
399
407
  set realTimeFiltering(b) {
400
408
  this._realTimeFiltering = b;
@@ -410,7 +418,7 @@ export class OpenPBRMaterial extends OpenPBRMaterialBase {
410
418
  * Quality switch for realtime filtering
411
419
  */
412
420
  get realTimeFilteringQuality() {
413
- return this._realTimeFilteringQuality ?? 8;
421
+ return this._realTimeFilteringQuality ?? 1;
414
422
  }
415
423
  set realTimeFilteringQuality(n) {
416
424
  this._realTimeFilteringQuality = n;
@@ -757,6 +765,7 @@ export class OpenPBRMaterial extends OpenPBRMaterialBase {
757
765
  * @internal
758
766
  */
759
767
  this._forceIrradianceInFragment = false;
768
+ this._systemRealTimeFiltering = undefined;
760
769
  this._realTimeFiltering = undefined;
761
770
  this._realTimeFilteringQuality = undefined;
762
771
  /**