{"version":3,"file":"getSupportedTextureFormats.mjs","sources":["../../../../../../src/rendering/renderers/shared/texture/utils/getSupportedTextureFormats.ts"],"sourcesContent":["import { getSupportedCompressedTextureFormats } from './getSupportedCompressedTextureFormats';\n\nimport type { TEXTURE_FORMATS } from '../const';\n\n/** @internal */\nexport const nonCompressedFormats: TEXTURE_FORMATS[] = [\n    // 8-bit formats\n    'r8unorm',\n    'r8snorm',\n    'r8uint',\n    'r8sint',\n\n    // 16-bit formats\n    'r16uint',\n    'r16sint',\n    'r16float',\n    'rg8unorm',\n    'rg8snorm',\n    'rg8uint',\n    'rg8sint',\n\n    // 32-bit formats\n    'r32uint',\n    'r32sint',\n    'r32float',\n    'rg16uint',\n    'rg16sint',\n    'rg16float',\n    'rgba8unorm',\n    'rgba8unorm-srgb',\n    'rgba8snorm',\n    'rgba8uint',\n    'rgba8sint',\n    'bgra8unorm',\n    'bgra8unorm-srgb',\n    // Packed 32-bit formats\n    'rgb9e5ufloat',\n    'rgb10a2unorm',\n    'rg11b10ufloat',\n\n    // 64-bit formats\n    'rg32uint',\n    'rg32sint',\n    'rg32float',\n    'rgba16uint',\n    'rgba16sint',\n    'rgba16float',\n\n    // 128-bit formats\n    'rgba32uint',\n    'rgba32sint',\n    'rgba32float',\n\n    // Depth/stencil formats\n    'stencil8',\n    'depth16unorm',\n    'depth24plus',\n    'depth24plus-stencil8',\n    'depth32float',\n\n    // \"depth32float-stencil8\" feature\n    'depth32float-stencil8',\n];\n\nlet supportedTextureFormats: TEXTURE_FORMATS[];\n\n/** @internal */\nexport async function getSupportedTextureFormats(): Promise<TEXTURE_FORMATS[]>\n{\n    if (supportedTextureFormats !== undefined) return supportedTextureFormats;\n\n    const compressedTextureFormats = await getSupportedCompressedTextureFormats();\n\n    supportedTextureFormats = [\n        ...nonCompressedFormats,\n        ...compressedTextureFormats,\n    ];\n\n    return supportedTextureFormats;\n}\n\n"],"names":[],"mappings":";;;AAKO,MAAM,oBAAA,GAA0C;AAAA;AAAA,EAEnD,SAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA;AAAA,EAGA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA;AAAA,EAGA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA;AAAA,EACA,WAAA;AAAA,EACA,YAAA;AAAA,EACA,iBAAA;AAAA,EACA,YAAA;AAAA,EACA,WAAA;AAAA,EACA,WAAA;AAAA,EACA,YAAA;AAAA,EACA,iBAAA;AAAA;AAAA,EAEA,cAAA;AAAA,EACA,cAAA;AAAA,EACA,eAAA;AAAA;AAAA,EAGA,UAAA;AAAA,EACA,UAAA;AAAA,EACA,WAAA;AAAA,EACA,YAAA;AAAA,EACA,YAAA;AAAA,EACA,aAAA;AAAA;AAAA,EAGA,YAAA;AAAA,EACA,YAAA;AAAA,EACA,aAAA;AAAA;AAAA,EAGA,UAAA;AAAA,EACA,cAAA;AAAA,EACA,aAAA;AAAA,EACA,sBAAA;AAAA,EACA,cAAA;AAAA;AAAA,EAGA;AACJ;AAEA,IAAI,uBAAA;AAGJ,eAAsB,0BAAA,GACtB;AACI,EAAA,IAAI,uBAAA,KAA4B,QAAW,OAAO,uBAAA;AAElD,EAAA,MAAM,wBAAA,GAA2B,MAAM,oCAAA,EAAqC;AAE5E,EAAA,uBAAA,GAA0B;AAAA,IACtB,GAAG,oBAAA;AAAA,IACH,GAAG;AAAA,GACP;AAEA,EAAA,OAAO,uBAAA;AACX;;;;"}