engineFeatures.ts 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. /** @hidden */
  2. export interface EngineFeatures {
  3. /** Force using Bitmap when Bitmap or HTMLImageElement can be used */
  4. forceBitmapOverHTMLImageElement: boolean;
  5. /** Indicates that the engine support rendering to as well as copying to lod float textures */
  6. supportRenderAndCopyToLodForFloatTextures: boolean;
  7. /** Indicates that the engine support handling depth/stencil textures */
  8. supportDepthStencilTexture: boolean;
  9. /** Indicates that the engine support shadow samplers */
  10. supportShadowSamplers: boolean;
  11. /** Indicates to check the matrix bytes per bytes to know if it has changed or not. If false, only the updateFlag of the matrix is checked */
  12. uniformBufferHardCheckMatrix: boolean;
  13. /** Indicates that prefiltered mipmaps can be generated in some processes (for eg when loading an HDR cube texture) */
  14. allowTexturePrefiltering: boolean;
  15. /** Indicates to track the usage of ubos and to create new ones as necessary during a frame duration */
  16. trackUbosInFrame: boolean;
  17. /** Indicates that the Cascaded Shadow Map technic is supported */
  18. supportCSM: boolean;
  19. /** Indicates that the textures transcoded by the basis transcoder must have power of 2 width and height */
  20. basisNeedsPOT: boolean;
  21. /** Indicates that the engine supports 3D textures */
  22. support3DTextures: boolean;
  23. /** Indicates that constants need a type suffix in shaders (used by realtime filtering...) */
  24. needTypeSuffixInShaderConstants: boolean;
  25. /** Indicates that MSAA is supported */
  26. supportMSAA: boolean;
  27. /** Indicates that SSAO2 is supported */
  28. supportSSAO2: boolean;
  29. /** Indicates that some additional texture formats are supported (like TEXTUREFORMAT_R for eg) */
  30. supportExtendedTextureFormats: boolean;
  31. /** Indicates that the switch/case construct is supported in shaders */
  32. supportSwitchCaseInShader: boolean;
  33. /** Indicates that synchronous texture reading is supported */
  34. supportSyncTextureRead: boolean;
  35. /** Indicates that y should be inverted when dealing with bitmaps (notably in environment tools) */
  36. needsInvertingBitmap: boolean;
  37. /** @hidden */
  38. _collectUbosUpdatedInFrame: boolean;
  39. }