小编Lei*_*igh的帖子

SwiftUI 更新降低了金属窗口的 F​​PS

我正在试验 SwiftUI 和 Metal。我有 2 个窗口,一个带有各种列表和控件,另一个带有金属窗口。

视窗

我让滑块数据更新了 Metal 窗口,但是当我移动滑块时,FPS 从 60 下降到 25 左右。我删除了视图之间的所有链接,移动滑块仍然会降低金属窗口中的 FPS。

似乎列表视图也会减慢 FPS。

我在启动时使用以下方法创建金属窗口:

    metalWindow = NSWindow(contentRect: NSRect(x: 0, y: 0, width: 480, height: 300),
                           styleMask: [.titled, .closable, .miniaturizable, .resizable, .fullSizeContentView],
                           backing: .buffered, defer: false)
    metalWindow.center()
    metalWindow.setFrameAutosaveName("Metal Window")
    metalWindow.makeKeyAndOrderFront(nil)

    mtkView = MTKView()
    mtkView.translatesAutoresizingMaskIntoConstraints = false
    metalWindow.contentView!.addSubview(mtkView)
    metalWindow.contentView!.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "|[mtkView]|", options: [], metrics: nil, views: ["mtkView" : mtkView!]))
    metalWindow.contentView!.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "V:|[mtkView]|", options: [], metrics: nil, views: ["mtkView" : mtkView!]))

    device = MTLCreateSystemDefaultDevice()!
    mtkView.device = device

    mtkView.colorPixelFormat = .bgra8Unorm

    commandQueue …
Run Code Online (Sandbox Code Playgroud)

swift metal swiftui

8
推荐指数
1
解决办法
1160
查看次数

标签 统计

metal ×1

swift ×1

swiftui ×1