{
    "image": {
        "map": {
            "NONE": "MTLPixelFormatInvalid",
            "A8_UNORM": "MTLPixelFormatA8Unorm",
            "R8_UNORM": "MTLPixelFormatR8Unorm",
            "R8_SNORM": "MTLPixelFormatR8Snorm",
            "R8_UINT": "MTLPixelFormatR8Uint",
            "R8_SINT": "MTLPixelFormatR8Sint",
            "R8G8_UNORM": "MTLPixelFormatRG8Unorm",
            "R8G8_SNORM": "MTLPixelFormatRG8Snorm",
            "R8G8_UINT": "MTLPixelFormatRG8Uint",
            "R8G8_SINT": "MTLPixelFormatRG8Sint",
            "R8G8B8A8_UINT": "MTLPixelFormatRGBA8Uint",
            "R8G8B8A8_SINT": "MTLPixelFormatRGBA8Sint",
            "R8G8B8A8_UNORM": "MTLPixelFormatRGBA8Unorm",
            "R8G8B8A8_SNORM": "MTLPixelFormatRGBA8Snorm",
            "R8G8B8A8_UNORM_SRGB": "MTLPixelFormatRGBA8Unorm_sRGB",
            "B8G8R8A8_UNORM": "MTLPixelFormatBGRA8Unorm",
            "B8G8R8A8_UNORM_SRGB": "MTLPixelFormatBGRA8Unorm_sRGB",
            "R16_UNORM": "MTLPixelFormatR16Unorm",
            "R16_SNORM": "MTLPixelFormatR16Snorm",
            "R16_UINT": "MTLPixelFormatR16Uint",
            "R16_SINT": "MTLPixelFormatR16Sint",
            "R16_FLOAT": "MTLPixelFormatR16Float",
            "R16G16_UNORM": "MTLPixelFormatRG16Unorm",
            "R16G16_SNORM": "MTLPixelFormatRG16Snorm",
            "R16G16_UINT": "MTLPixelFormatRG16Uint",
            "R16G16_SINT": "MTLPixelFormatRG16Sint",
            "R16G16_FLOAT": "MTLPixelFormatRG16Float",
            "R16G16B16A16_UNORM": "MTLPixelFormatRGBA16Unorm",
            "R16G16B16A16_SNORM": "MTLPixelFormatRGBA16Snorm",
            "R16G16B16A16_UINT": "MTLPixelFormatRGBA16Uint",
            "R16G16B16A16_SINT": "MTLPixelFormatRGBA16Sint",
            "R16G16B16A16_FLOAT": "MTLPixelFormatRGBA16Float",
            "R32_UINT": "MTLPixelFormatR32Uint",
            "R32_SINT": "MTLPixelFormatR32Sint",
            "R32_FLOAT": "MTLPixelFormatR32Float",
            "R32G32_UINT": "MTLPixelFormatRG32Uint",
            "R32G32_SINT": "MTLPixelFormatRG32Sint",
            "R32G32_FLOAT": "MTLPixelFormatRG32Float",
            "R32G32B32A32_UINT": "MTLPixelFormatRGBA32Uint",
            "R32G32B32A32_SINT": "MTLPixelFormatRGBA32Sint",
            "R32G32B32A32_FLOAT": "MTLPixelFormatRGBA32Float",
            "D32_FLOAT": "MTLPixelFormatDepth32Float",
            "S8_UINT": "MTLPixelFormatStencil8",
            "D32_FLOAT_S8X24_UINT": "MTLPixelFormatDepth32Float_Stencil8",
            "B10G10R10A2_UNORM": "MTLPixelFormatBGR10A2Unorm",
            "R10G10B10A2_UINT": "MTLPixelFormatRGB10A2Uint",
            "R10G10B10A2_UNORM": "MTLPixelFormatRGB10A2Unorm",
            "R11G11B10_FLOAT": "MTLPixelFormatRG11B10Float",
            "R9G9B9E5_SHAREDEXP": "MTLPixelFormatRGB9E5Float"
        },
        "map_ios": {
            "R5G6B5_UNORM": "MTLPixelFormatB5G6R5Unorm",
            "R5G5B5A1_UNORM": "MTLPixelFormatA1BGR5Unorm",
            "R4G4B4A4_UNORM": "MTLPixelFormatABGR4Unorm",
            "PVRTC1_RGB_4BPP_UNORM_BLOCK": "MTLPixelFormatPVRTC_RGB_4BPP",
            "PVRTC1_RGB_2BPP_UNORM_BLOCK": "MTLPixelFormatPVRTC_RGB_2BPP",
            "PVRTC1_RGBA_4BPP_UNORM_BLOCK": "MTLPixelFormatPVRTC_RGBA_4BPP",
            "PVRTC1_RGBA_2BPP_UNORM_BLOCK": "MTLPixelFormatPVRTC_RGBA_2BPP",
            "PVRTC1_RGB_2BPP_UNORM_SRGB_BLOCK": "MTLPixelFormatPVRTC_RGB_2BPP_sRGB",
            "PVRTC1_RGB_4BPP_UNORM_SRGB_BLOCK": "MTLPixelFormatPVRTC_RGB_4BPP_sRGB",
            "PVRTC1_RGBA_2BPP_UNORM_SRGB_BLOCK": "MTLPixelFormatPVRTC_RGBA_2BPP_sRGB",
            "PVRTC1_RGBA_4BPP_UNORM_SRGB_BLOCK": "MTLPixelFormatPVRTC_RGBA_4BPP_sRGB",
            "ETC2_R8G8B8_UNORM_BLOCK": "MTLPixelFormatETC2_RGB8",
            "ETC2_R8G8B8_SRGB_BLOCK": "MTLPixelFormatETC2_RGB8_sRGB",
            "ETC2_R8G8B8A1_UNORM_BLOCK": "MTLPixelFormatETC2_RGB8A1",
            "ETC2_R8G8B8A1_SRGB_BLOCK": "MTLPixelFormatETC2_RGB8A1_sRGB",
            "ETC2_R8G8B8A8_UNORM_BLOCK": "MTLPixelFormatEAC_RGBA8",
            "ETC2_R8G8B8A8_SRGB_BLOCK": "MTLPixelFormatEAC_RGBA8_sRGB",
            "EAC_R11_UNORM_BLOCK": "MTLPixelFormatEAC_R11Unorm",
            "EAC_R11_SNORM_BLOCK": "MTLPixelFormatEAC_R11Snorm",
            "EAC_R11G11_UNORM_BLOCK": "MTLPixelFormatEAC_RG11Unorm",
            "EAC_R11G11_SNORM_BLOCK": "MTLPixelFormatEAC_RG11Snorm"
        },
        "map_mac": {
            "D16_UNORM": "MTLPixelFormatDepth16Unorm",
            "D24_UNORM_S8_UINT": "MTLPixelFormatDepth24Unorm_Stencil8",
            "BC1_RGBA_UNORM_BLOCK": "MTLPixelFormatBC1_RGBA",
            "BC1_RGBA_UNORM_SRGB_BLOCK": "MTLPixelFormatBC1_RGBA_sRGB",
            "BC2_RGBA_UNORM_BLOCK": "MTLPixelFormatBC2_RGBA",
            "BC2_RGBA_UNORM_SRGB_BLOCK": "MTLPixelFormatBC2_RGBA_sRGB",
            "BC3_RGBA_UNORM_BLOCK": "MTLPixelFormatBC3_RGBA",
            "BC3_RGBA_UNORM_SRGB_BLOCK": "MTLPixelFormatBC3_RGBA_sRGB",
            "BC4_RED_UNORM_BLOCK": "MTLPixelFormatBC4_RUnorm",
            "BC4_RED_SNORM_BLOCK": "MTLPixelFormatBC4_RSnorm",
            "BC5_RG_UNORM_BLOCK": "MTLPixelFormatBC5_RGUnorm",
            "BC5_RG_SNORM_BLOCK": "MTLPixelFormatBC5_RGSnorm"
        },
        "override": {
            "L8_UNORM": "R8G8B8A8_UNORM",
            "L8A8_UNORM": "R8G8B8A8_UNORM",
            "R8G8B8_UNORM": "R8G8B8A8_UNORM",
            "R8G8B8_SNORM": "R8G8B8A8_SNORM",
            "R8G8B8_UINT": "R8G8B8A8_UINT",
            "R8G8B8_SINT": "R8G8B8A8_SINT",
            "R8G8B8_UNORM_SRGB": "R8G8B8A8_UNORM_SRGB",
            "R32G32B32_FLOAT": "R32G32B32A32_FLOAT",
            "R32G32B32_UINT": "R32G32B32A32_UINT",
            "R32G32B32_SINT": "R32G32B32A32_SINT",
            "R16G16B16_FLOAT": "R16G16B16A16_FLOAT",
            "R16G16B16_UINT": "R16G16B16A16_UINT",
            "R16G16B16_SINT": "R16G16B16A16_SINT",
            "R16G16B16_UNORM": "R16G16B16A16_UNORM",
            "R16G16B16_SNORM": "R16G16B16A16_SNORM",
            "A16_FLOAT": "R16G16B16A16_FLOAT",
            "L16_FLOAT": "R16G16B16A16_FLOAT",
            "L16A16_FLOAT": "R16G16B16A16_FLOAT",
            "A32_FLOAT": "R32G32B32A32_FLOAT",
            "L32_FLOAT": "R32G32B32A32_FLOAT",
            "L32A32_FLOAT": "R32G32B32A32_FLOAT",
            "D24_UNORM_X8_UINT": "D32_FLOAT",
            "D32_UNORM": "D32_FLOAT"
        },
        "override_ios": {
            "D24_UNORM_S8_UINT": "D32_FLOAT_S8X24_UINT",
            "D16_UNORM": "D32_FLOAT",
            "ETC1_R8G8B8_UNORM_BLOCK": "ETC2_R8G8B8_UNORM_BLOCK"
        },
        "override_mac": {
            "R5G6B5_UNORM": "R8G8B8A8_UNORM",
            "R5G5B5A1_UNORM": "R8G8B8A8_UNORM",
            "R4G4B4A4_UNORM": "R8G8B8A8_UNORM",
            "BC1_RGB_UNORM_BLOCK": {
                "default": "NONE",
                "swizzle": ["RGB1", "BC1_RGBA_UNORM_BLOCK"]
            },
            "BC1_RGB_UNORM_SRGB_BLOCK": {
                "default": "NONE",
                "swizzle": ["RGB1", "BC1_RGBA_UNORM_SRGB_BLOCK"]
            },
            "ETC1_R8G8B8_UNORM_BLOCK": "R8G8B8A8_UNORM",
            "ETC2_R8G8B8_UNORM_BLOCK": "R8G8B8A8_UNORM",
            "ETC2_R8G8B8_SRGB_BLOCK": "R8G8B8A8_UNORM_SRGB",
            "ETC2_R8G8B8A1_UNORM_BLOCK": "R8G8B8A8_UNORM",
            "ETC2_R8G8B8A1_SRGB_BLOCK": "R8G8B8A8_UNORM_SRGB",
            "ETC2_R8G8B8A8_UNORM_BLOCK": "R8G8B8A8_UNORM",
            "ETC2_R8G8B8A8_SRGB_BLOCK": "R8G8B8A8_UNORM_SRGB",
            "EAC_R11_UNORM_BLOCK": "R16_UNORM",
            "EAC_R11_SNORM_BLOCK": "R16_SNORM",
            "EAC_R11G11_UNORM_BLOCK": "R16G16_UNORM",
            "EAC_R11G11_SNORM_BLOCK": "R16G16_SNORM"
        },
        "d24s8_fallbacks_mac": {
            "D24_UNORM_S8_UINT": "D32_FLOAT_S8X24_UINT"
        }
    },
    "vertex": {
        "map": {
            "NONE": "MTLVertexFormatInvalid",
            "R8_UNORM": "MTLVertexFormatUCharNormalized",
            "R8_SNORM": "MTLVertexFormatCharNormalized",
            "R8_UINT": "MTLVertexFormatUChar",
            "R8_SINT": "MTLVertexFormatChar",
            "R8_USCALED": "MTLVertexFormatUChar",
            "R8_SSCALED": "MTLVertexFormatChar",
            "R8G8_UNORM": "MTLVertexFormatUChar2Normalized",
            "R8G8_SNORM": "MTLVertexFormatChar2Normalized",
            "R8G8_UINT": "MTLVertexFormatUChar2",
            "R8G8_SINT": "MTLVertexFormatChar2",
            "R8G8_USCALED": "MTLVertexFormatUChar2",
            "R8G8_SSCALED": "MTLVertexFormatChar2",
            "R8G8B8_UNORM": "MTLVertexFormatUChar3Normalized",
            "R8G8B8_SNORM": "MTLVertexFormatChar3Normalized",
            "R8G8B8_UINT": "MTLVertexFormatUChar3",
            "R8G8B8_SINT": "MTLVertexFormatChar3",
            "R8G8B8_USCALED": "MTLVertexFormatUChar3",
            "R8G8B8_SSCALED": "MTLVertexFormatChar3",
            "R8G8B8A8_UNORM": "MTLVertexFormatUChar4Normalized",
            "R8G8B8A8_SNORM": "MTLVertexFormatChar4Normalized",
            "R8G8B8A8_UINT": "MTLVertexFormatUChar4",
            "R8G8B8A8_SINT": "MTLVertexFormatChar4",
            "R8G8B8A8_USCALED": "MTLVertexFormatUChar4",
            "R8G8B8A8_SSCALED": "MTLVertexFormatChar4",

            "R16_UNORM": "MTLVertexFormatUShortNormalized",
            "R16_SNORM": "MTLVertexFormatShortNormalized",
            "R16_UINT": "MTLVertexFormatUShort",
            "R16_SINT": "MTLVertexFormatShort",
            "R16_USCALED": "MTLVertexFormatUShort",
            "R16_SSCALED": "MTLVertexFormatShort",
            "R16G16_UNORM": "MTLVertexFormatUShort2Normalized",
            "R16G16_SNORM": "MTLVertexFormatShort2Normalized",
            "R16G16_UINT": "MTLVertexFormatUShort2",
            "R16G16_SINT": "MTLVertexFormatShort2",
            "R16G16_USCALED": "MTLVertexFormatUShort2",
            "R16G16_SSCALED": "MTLVertexFormatShort2",
            "R16G16B16_UNORM": "MTLVertexFormatUShort3Normalized",
            "R16G16B16_SNORM": "MTLVertexFormatShort3Normalized",
            "R16G16B16_UINT": "MTLVertexFormatUShort3",
            "R16G16B16_SINT": "MTLVertexFormatShort3",
            "R16G16B16_USCALED": "MTLVertexFormatUShort3",
            "R16G16B16_SSCALED": "MTLVertexFormatShort3",
            "R16G16B16A16_UNORM": "MTLVertexFormatUShort4Normalized",
            "R16G16B16A16_SNORM": "MTLVertexFormatShort4Normalized",
            "R16G16B16A16_UINT": "MTLVertexFormatUShort4",
            "R16G16B16A16_SINT": "MTLVertexFormatShort4",
            "R16G16B16A16_USCALED": "MTLVertexFormatUShort4",
            "R16G16B16A16_SSCALED": "MTLVertexFormatShort4",

            "R32_UINT": "MTLVertexFormatUInt",
            "R32_SINT": "MTLVertexFormatInt",
            "R32G32_UINT": "MTLVertexFormatUInt2",
            "R32G32_SINT": "MTLVertexFormatInt2",
            "R32G32B32_UINT": "MTLVertexFormatUInt3",
            "R32G32B32_SINT": "MTLVertexFormatInt3",
            "R32G32B32A32_UINT": "MTLVertexFormatUInt4",
            "R32G32B32A32_SINT": "MTLVertexFormatInt4",

            "R16_FLOAT": "MTLVertexFormatHalf",
            "R16G16_FLOAT": "MTLVertexFormatHalf2",
            "R16G16B16_FLOAT": "MTLVertexFormatHalf3",
            "R16G16B16A16_FLOAT": "MTLVertexFormatHalf4",

            "R32_FLOAT": "MTLVertexFormatFloat",
            "R32G32_FLOAT": "MTLVertexFormatFloat2",
            "R32G32B32_FLOAT": "MTLVertexFormatFloat3",
            "R32G32B32A32_FLOAT": "MTLVertexFormatFloat4",

            "R10G10B10A2_SNORM" : "MTLVertexFormatInt1010102Normalized",
            "R10G10B10A2_UNORM" : "MTLVertexFormatUInt1010102Normalized"
        },
        "override": {
            "R32_FIXED": "R32_FLOAT",
            "R32_UNORM": "R32_FLOAT",
            "R32_SNORM": "R32_FLOAT",
            "R32_USCALED": "R32_FLOAT",
            "R32_SSCALED": "R32_FLOAT",
            "R32G32_FIXED": "R32G32_FLOAT",
            "R32G32_UNORM": "R32G32_FLOAT",
            "R32G32_SNORM": "R32G32_FLOAT",
            "R32G32_USCALED": "R32G32_FLOAT",
            "R32G32_SSCALED": "R32G32_FLOAT",
            "R32G32B32_FIXED": "R32G32B32_FLOAT",
            "R32G32B32_UNORM": "R32G32B32_FLOAT",
            "R32G32B32_SNORM": "R32G32B32_FLOAT",
            "R32G32B32_USCALED": "R32G32B32_FLOAT",
            "R32G32B32_SSCALED": "R32G32B32_FLOAT",
            "R32G32B32A32_FIXED": "R32G32B32A32_FLOAT",
            "R32G32B32A32_UNORM": "R32G32B32A32_FLOAT",
            "R32G32B32A32_SNORM": "R32G32B32A32_FLOAT",
            "R32G32B32A32_USCALED": "R32G32B32A32_FLOAT",
            "R32G32B32A32_SSCALED": "R32G32B32A32_FLOAT",
            "R10G10B10A2_SINT": "R32G32B32A32_FLOAT",
            "R10G10B10A2_SSCALED": "R32G32B32A32_FLOAT",
            "R10G10B10A2_UINT": "R32G32B32A32_FLOAT",
            "R10G10B10A2_USCALED": "R32G32B32A32_FLOAT"
        },
        "override_tightly_packed": {
            "R16_FLOAT": "R16G16_FLOAT",
            "R16_UNORM": "R16G16_UNORM",
            "R16_SNORM": "R16G16_SNORM",
            "R16_UINT": "R16G16_UINT",
            "R16_SINT": "R16G16_SINT",
            "R16_USCALED": "R16G16_UINT",
            "R16_SSCALED": "R16G16_SINT",
            "R16G16B16_FLOAT": "R16G16B16A16_FLOAT",
            "R16G16B16_UNORM": "R16G16B16A16_UNORM",
            "R16G16B16_SNORM": "R16G16B16A16_SNORM",
            "R16G16B16_UINT": "R16G16B16A16_UINT",
            "R16G16B16_SINT": "R16G16B16A16_SINT",
            "R16G16B16_USCALED": "R16G16B16A16_UINT",
            "R16G16B16_SSCALED": "R16G16B16A16_SINT",
            "R8_UNORM": "R8G8B8A8_UNORM",
            "R8_SNORM": "R8G8B8A8_SNORM",
            "R8_UINT": "R8G8B8A8_UINT",
            "R8_SINT": "R8G8B8A8_SINT",
            "R8_USCALED": "R8G8B8A8_UINT",
            "R8_SSCALED": "R8G8B8A8_SINT",
            "R8G8_UNORM": "R8G8B8A8_UNORM",
            "R8G8_SNORM": "R8G8B8A8_SNORM",
            "R8G8_UINT": "R8G8B8A8_UINT",
            "R8G8_SINT": "R8G8B8A8_SINT",
            "R8G8_USCALED": "R8G8B8A8_UINT",
            "R8G8_SSCALED": "R8G8B8A8_SINT",
            "R8G8B8_UNORM": "R8G8B8A8_UNORM",
            "R8G8B8_SNORM": "R8G8B8A8_SNORM",
            "R8G8B8_UINT": "R8G8B8A8_UINT",
            "R8G8B8_SINT": "R8G8B8A8_SINT",
            "R8G8B8_USCALED": "R8G8B8A8_UINT",
            "R8G8B8_SSCALED": "R8G8B8A8_SINT"
        }
    }
}