问题标签 [mtkview]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
objective-c - 在 macOS 上,MTKview colorAttachments[0].clearColor 接缝不起作用
在我做的时候在macos下:
当我检查我的值后,colorAttachmentDesc.clearColor
我可以看到我仍然有 (0, 0, 0, 1) 而不是 (1, 1, 1, 1) !
在 ios 上它工作得很好,但在 macOS 上使用 NSView 而不是 UIView 我不明白为什么它不起作用。我错过了什么?
swift - 如何在 MTKView 中正确定位图像?
我正在尝试使用 MTKView 和 Core Image 过滤器实现图像编辑视图,并且基础工作正常并且可以看到实时应用的过滤器。但是,图像在视图中的位置不正确 - 有人可以为我指出正确的方向,以便让图像在视图中正确呈现。它需要适合视图并保持其原始纵横比。
这是金属绘图功能 - 和空的drawableSizeWillChange!?- 去搞清楚。可能还值得一提的是,MTKView 是 ScrollView 中另一个视图的子视图,并且可以由用户调整大小。我不清楚 Metals 如何处理视图大小的调整,但似乎这不是免费的。
我也试图从后台线程调用 draw() 函数,这似乎有点工作。我可以看到滤镜效果,因为它们使用滑块应用于图像。据我了解,这应该是可能的。
似乎用于渲染的坐标空间也在图像坐标空间中 - 所以如果图像小于 MTKView 则将图像定位在中心 X 和 Y 坐标将为负。
当视图被调整大小时,一切都会变得疯狂,图像突然变得太大,部分背景没有被清除。
此外,在静止视图时,图像会被拉伸而不是平滑地重绘。
如您所见,图像位于左下角
android - 基于Android平台的MTKLog实现原理是什么?
想学一点MTKLog是怎么记录日志的,MTKLog可以把各种日志保存在一个本地文件里,很神奇,有人知道吗?请给点建议,谢谢
ios - MTKView Transparency
I can't make my MTKView clear its background. I've set the view's and its layer's isOpaque to false, background color to clear and tried multiple solutions found on google/stackoverflow (most in the code below like loadAction and clearColor of color attachment) but nothing works.
All the background color settings seem to be ignored. Setting loadAction and clearColor of MTLRenderPassColorAttachmentDescriptor does nothing.
I'd like to have my regular UIView's drawn under the MTKView. What am I missing?
swift - UICollectionView 中 MTKView 重叠的单元格
我在 UICollectionViewCell 中有 MTKView。我正在使用 MTKView 来绘制视频。每次小区重用时,旧视频都会在当前重叠。如何以正确的方式将 UICollectionView 与 MTKView 一起使用?
swift - 将 RGBA32Float MTLTextures 转换为 NSImage
我尝试了很多技术,例如使用 CIImage 或将数据复制到 uint_32ts 的缓冲区中,但它们都有自己的问题。到目前为止我发现的最简单的是:
这将创建正确大小的图像,但它是完全透明的。有时使用预览放大时,图像中某些特征的轮廓会闪烁,但一旦图像渲染,它就会消失。我确保同步图像,并确保bytes
缓冲区具有非零值。我也尝试过使用 s 的缓冲区SIMD4<Float>
而不是Float
s,但它产生了相同的结果。
linechart - 提高 CAShapeLayer 绘制的折线图的性能
我创建了一个折线CAShapeLayer
图MTKView
。在某些情况下,此折线图每秒更新一次,但在当前的实现中,每当图表更新(每秒)时,都会有一个微小的冻结时刻,因为它会再次绘制所有内容。我尝试了我能想到的一切来提高它的性能,但我无法修复它。当新数据到来时,这个冻结时刻不允许图表平稳移动。
这是我的代码的一部分:
并且在新数据到来的每一秒,新数据都会被追加到dataEntries
. 如果有人可以在这里给我一些建议,我将不胜感激。
谢谢
ios - MTKView 显示 HDR10 CIImage
我需要使用 MTKView 在 HDR10 ( kCVPixelFormatType_420YpCbCr10BiPlanarVideoRange / BT2020 PQ 颜色空间) 中显示 CVPixelBuffers。我有以下代码要显示,但它会产生失真的图像,我无法确定它是显示 10 位颜色还是钳位颜色。另外无论是 bgra10_xr 还是 bgra10_xr_srgb 都应该是 colorPixelFormat 的正确选择以及两者的区别。
编辑:我尝试了手动设置 colorSpace 的建议,但颜色被洗掉了。
这是 iPhone 上使用 AVCaptureVideoPreviewLayer 的同一场景的屏幕截图。
metal - 如何使用 Metal 渲染多个 triangleStrips?
现在我已经知道如何在 Metal 中渲染多个三角形:
这里,vertices_triangles
是一个Array
元素Vertex
。相邻的三个顶点显示要渲染的三角形。
但是,我真的不知道如何在 Metal 中渲染多个 triangleStrips。
如果我将相邻的顶点放入vertices_triangleStrips
并设置renderEncoder.drawPrimitives.type
为.triangleStrip
,我将得到一个triangleStrip。但是如何渲染多个 triangleStrips?我尝试使用for
循环来制作多个顶点缓冲区并用于renderEncoder.drawPrimitives
绘制每个三角形条。出于性能原因,这样做似乎不是一个好主意。