- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我知道在 SceneKit 中,您可以在 SKView
的一侧启用横幅查看实时帧速率和其他有用的调试信息。但是 MTKView
呢? ?我似乎没有找到这样的属性来启用,或者我如何查询当前的帧速率。 (因为我正在渲染帧速率为 0.5fps 左右的东西)
最佳答案
我不认为你有简单的标志。因为您在创建命令缓冲区时控制了完整的渲染管道,所以 Metal 无法知道在哪里注入(inject)带有一些自定义文本的渲染 channel 。
您可以在管道中注入(inject)自己的渲染 channel (基于 var showDebugInformation = true
之类的标志),但这听起来有点工作。
我可能会在 draw
中手动监控帧时间。方法并在每次绘制时更新一个标签。粗略的轮廓可能如下所示:
var previousFrameAtTime: Date
let lastFrameTime = CurrentValueSubject<TimeInterval, Never>(.infinity)
func draw(in view: MTKView) {
lastFrameTime.send(Date().timeIntervalSince(previousFrameAtTime))
previousFrameAtTime = Date()
// ...
}
import Combine
class MyViewController: UIViewController {
let label = UILabel()
var cancellables: [AnyCancellable] = []
func subscribeToFrameTime() {
renderer.lastFrameTime
.sink { label.text = "\($0 * 1000) ms." }
.store(in: &cancellables)
}
}
关于xcode - 显示 MTKView 的当前帧率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55289377/
我在由窗口 Controller 管理的窗口中有一个 MTKView。当我第一次实例化窗口 Controller 和窗口时,MTKView 调用我的委托(delegate)的两个调用,并以首选速率调用
我想在 Mac 应用程序上使用 MTKView。初始化 MTKView 后,它显示红色而不是预期的清晰颜色我的笔记本电脑是 macOS Catalina 10.15.2 的 MacBook Pro,它
我有一个 Metal 片段着色器,它返回一些带有 alpha channel 的透明颜色,我想在 MTKView 下显示一个 UIView,但我得到的背景结果只有黑色和“错误噪声”。 MTLRende
我有一个简单的 macOS 应用程序,它有一个 MTKView——它只是窗口内的一个 MTKView。片段着色器总是这样做: return float4(1, 0, 0, 0.01) 这是带有 1%
我知道在 SceneKit 中,您可以在 SKView 的一侧启用横幅查看实时帧速率和其他有用的调试信息。但是 MTKView 呢? ?我似乎没有找到这样的属性来启用,或者我如何查询当前的帧速率。 (
我正在使用 MTKView 来绘制 Metal 内容。它的配置如下: mtkView = MTKView(frame: self.view.frame, device: device)
我已经成功地创建了一个应用程序来接收实时的 h264 编码视频流,然后使用 Video Toolbox 和 AVSampleBufferDisplayLayer 解码并显示视频。这按预期工作,但我希望
我得到了什么 我正在关注 Apple 示例代码 AVCamPhotoFilter 在 MTKView 上显示相机画面。 我想做什么 除了上面的MTKView,我还需要显示第二个MTKView。但是,第
我是 Metal 的新手,但正在努力遵循 Apple 的 AVCamFilter示例项目。该项目演示了如何使用 MTKView 作为 AVCaptureSession 的预览。 我一直未能弄清楚如何让
我正在尝试实现一个 Metal 支持的绘图应用程序,其中通过沿路径重复冲压纹理正方形在 MTKView 上绘制笔触。我遇到的问题是,虽然每个画笔图章都正确显示了纹理的不透明度,但重叠的方 block
我正在尝试使用 MTKView 进行多重采样。我有一个带有委托(delegate)的 MTKView。我将 View 的 sampleCount 属性设置为 4。我创建了一个将 rasterSampl
众所周知,更新 AppKit 中的用户界面或 UIKit需要在主线程上进行。在展示 drawable 时,Metal 是否有相同的要求? ? 在一个层托管 NSView我一直在玩,我注意到我可以调用[
我有一个项目,用户可以在其中拍摄视频,然后为他们添加滤镜或更改亮度和对比度等基本设置。为此,我使用 BBMetalImage ,它基本上返回 MTKView 中的视频(在项目中命名为 BBMetalV
我正在尝试实现一个 Metal 支持的绘图应用程序,其中通过沿着路径重复冲压纹理方 block 来在 MTKView 上绘制笔触。我在绘制笔触时在顶点级别改变图章的颜色/透明度,这样我就可以模拟墨水效
我正在将 CIImage 渲染到 MTKView 并且图像小于可绘制对象。 let centered = image.transformed(by: CGAffineTransform(transla
我在我的 UIKit 应用程序中使用 MTKViews 来选择 UI 元素。我有一个中央 Metal Controller ,它做的事情有点像这样: public class MetalView: M
这里我有一个 MTKView 并在摄像头源上实时运行一个简单的 CIFilter。这很好用。 问题 在旧设备的自拍相机上,例如 iPhone 5、iPad Air,提要绘制在较小的区域。 更新:发现发
这可能更像是一个通用的图形编程问题,但目前这是在 macOS 上使用 Apple 的 Metal 框架的上下文中。 在 NSView mouseDown 中,只需调用以下命令即可轻松获取鼠标按下事件发
从 MTKView 捕获帧的最有效方法是什么?如果可能的话,我想实时保存帧中的 .mov 文件。是否可以渲染成 AVPlayer 帧或其他东西? 目前正在使用此代码绘制(基于@warrenm Perf
如果我将窗口大小调整为小于 Metal View ,我可以看到滚动条一秒钟,但我无法单击它们,它们也保持可见。你知道我该如何改变这种行为吗?我希望只要窗口小于 Metal View ,滚动条就可见且可
我是一名优秀的程序员,十分优秀!