ios - MTLBlitCommandEncode 是否执行线性采样

标签 ios metal

如果我想将低分辨率纹理复制到更高分辨率的纹理上并使用 Blit 命令编码器,它会在拉伸(stretch)纹理时对纹理进行线性采样吗?

最佳答案

Blit 命令编码器根本无法做到这一点,更不用说在执行此操作时执行插值了。所有的复制方法都只接受一个大小参数,它既是源的大小,也是要复制的区域的隐含目标的大小。它无法调整大小。

要执行您想要的操作,您需要使用渲染命令编码器并绘制一个四边形,该四边形从源纹理中采样并使用目标纹理作为渲染目标(颜色附件)。此时,您可以通过片段着色器和用于在确定片段颜色时从源中采样的采样器对象来控制采样/插值。

关于ios - MTLBlitCommandEncode 是否执行线性采样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47974355/

相关文章:

swift - 复制 Metal 帧缓冲区纹理以供读取

ios - 以 640x480@60fps 快速拍摄视频

machine-learning - 检测 Apple 硅 GPU 核心数

ios - 旋转相机使用 lookat 功能与平移手势

ios - 函数在代码块之后运行,即使它之前被调用

ios - 虚拟机 : CG raster Data memory keep growing

ios - 为 iTunes 连接上传应用程序时出错

ios - Core Image 颜色内核的 Metal 着色语言,如何传递 float3 数组

ios - AFNetworkings setImageWithURLRequest 为 UITableViewCell 显示错误的图像

ios - 如何在 SWIFT 的 Objective-C 中替换 #define 宏?