MetalPerformanceShaders   >     MPSImageConversion
クラス
MPSImageConversion
色空間、アルファ、またはピクセル形式の変換を実行できるフィルタ。
概観
MPSImageConversion フィルタを使用すると、イメージのアルファコード化または色空間を変更できます。たとえば、事前に乗算されたアルファ値を使用してイメージを事前に乗算されていない値に変換したり、色空間をあるバリアントから別のバリアントに変更できます。
すべての Metal Performance Shaders フィルタと同様に、変換フィルタでは異なるピクセル形式のソーステクスチャと目的テクスチャが使用できます。その場合は、ソーステクスチャの形式を目的テクスチャの形式に変換します。サポートされているピクセル形式のリストについては、イメージカーネルのサポートされるピクセル形式 を参照してください。
リスト 1 は、イメージ変換フィルターを作成して、sRGB 色空間から線形ガンマカーブに色の彩度をマッピングする方法を示しています。
リスト 1 : sRGB 色空間から線形ガンマカーブへの色の彩度のマッピング。
guard let srcColorSpace = CGColorSpace(name: CGColorSpace.sRGB),
let dstColorSpace = CGColorSpace(name: CGColorSpace.linearSRGB),
let device = MTLCreateSystemDefaultDevice() else {
return
}
let conversionInfo = CGColorConversionInfo(src: srcColorSpace,
dst: dstColorSpace)
let conversion = MPSImageConversion(device: device,
srcAlpha: .alphaIsOne,
destAlpha: .alphaIsOne,
backgroundColor: nil,
conversionInfo: conversionInfo)
@@@@@@@@@@@@@
@@@@@@@@@@@@@
編集中
@@@@@@@@@@@@@
@@@@@@@@@@@@@