如何在 Metal 中指定 LOD 偏差?
How to specify LOD bias in Metal?
我正在用我目前使用 Metal 开发的应用程序的 Android 版本重写一个 OpenGL 过滤器。它使用以下纹理查找函数:
vec4 texture2D(sampler2D sampler, vec2 coord, float bias)
假设我的过滤器内核函数如下所示:
float4 fname(sampler src) {
...
}
纹理查找调用如下:
src.sample(coord)
但是如何传递偏置参数呢? (示例函数只接受 1 个参数)
恐怕 Core Image 只支持 2D 纹理——没有 mipmapping 和 LOD 选择。仅双线性采样可用。
如果您需要不同的 LOD,您需要将不同的采样器传递给您的内核并自行进行插值。
我正在用我目前使用 Metal 开发的应用程序的 Android 版本重写一个 OpenGL 过滤器。它使用以下纹理查找函数:
vec4 texture2D(sampler2D sampler, vec2 coord, float bias)
假设我的过滤器内核函数如下所示:
float4 fname(sampler src) {
...
}
纹理查找调用如下:
src.sample(coord)
但是如何传递偏置参数呢? (示例函数只接受 1 个参数)
恐怕 Core Image 只支持 2D 纹理——没有 mipmapping 和 LOD 选择。仅双线性采样可用。
如果您需要不同的 LOD,您需要将不同的采样器传递给您的内核并自行进行插值。