gpt4 book ai didi

swift - 无法通过在 OSX 10.14 中工作的代码在 OSX 10.15 中制作 Metal 纹理

转载 作者:行者123 更新时间:2023-11-28 13:24:12 37 4
gpt4 key购买 nike

我一直在 OSX 10.14 中成功使用我的代码生成 Metal 纹理:

let textureLoaderOptions = [MTKTextureLoader.Option.origin : MTKTextureLoader.Origin.bottomLeft, MTKTextureLoader.Option.textureStorageMode : MTLStorageMode.managed.rawValue] as [MTKTextureLoader.Option : Any]        
do {
let _image = myNSImage.cgImage(forProposedRect: nil, context: nil, hints: nil)
let textureLoader = MTKTextureLoader(device: device)
texture = try textureLoader.newTexture(cgImage: _image, options: textureLoaderOptions)
} catch {
dump(error)
}

注意:为简洁起见,省略了额外的逻辑和错误处理。

现在我已经将构建计算机升级到 10.15,我发现了以下错误:

Error Domain=MTKTextureLoaderErrorDomain Code=0 "Image decoding failed" UserInfo={NSLocalizedDescription=Image decoding failed, MTKTextureLoaderErrorKey=Image decoding failed}

我目前正在考虑使用:

textureLoader.newTexture(URL: URL(fileURLWithPath: imageFilePath), options:textureLoaderOptions)

但由于围绕原始代码的其他逻辑,我更想知道是否有我错过了新 OSX 的非常简单的事情。我假设它肯定连接到 OSX,因为绝对没有其他东西——即 Xcode 版本或硬件——已经改变。它昨天起作用了,现在不起作用了。我什至将工作应用程序提交到 App Store,但当他们在 OSX 10.15 中运行它时,它因崩溃而被拒绝。

我使用的图像是 pngtiff。两者都有相同的错误,并且都在 OSX 10.14 中工作。

最佳答案

所以升级似乎打开了一大堆蠕虫。整个项目需要重建,这个 answer似乎解决了我的特殊问题。正如 @0xBFE1A8 在他们的评论中所回避的那样,我从 NSImage 生成 CGImage 的方式需要在升级后重新设计。

关于swift - 无法通过在 OSX 10.14 中工作的代码在 OSX 10.15 中制作 Metal 纹理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58663689/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com