{"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\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\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":";;;AAIO,MAAM,oBAA0C,GAAA;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,uBAAA;AACJ,EAAA;AAEA,IAAI,uBAAA,CAAA;AAEJ,eAAsB,0BACtB,GAAA;AACI,EAAA,IAAI,uBAA4B,KAAA,KAAA,CAAA;AAAW,IAAO,OAAA,uBAAA,CAAA;AAElD,EAAM,MAAA,wBAAA,GAA2B,MAAM,oCAAqC,EAAA,CAAA;AAE5E,EAA0B,uBAAA,GAAA;AAAA,IACtB,GAAG,oBAAA;AAAA,IACH,GAAG,wBAAA;AAAA,GACP,CAAA;AAEA,EAAO,OAAA,uBAAA,CAAA;AACX;;;;"}