3
我使用的是金屬在iOS與下面的片段着色器:金屬:線性紋理過濾工作不正常
constexpr sampler s(coord::normalized,
address::clamp_to_zero,
filter::linear);
fragment half4 passThroughFragment(VertexInOut inFrag [[stage_in]],
texture2d<float> tex [[ texture(0) ]])
{
return half4(tex.sample(s, inFrag.uv));
}
我的質地是一個4x4的圖像。儘管過濾設置爲線性,我獲得下面的圖片,與近鄰過濾:
看來,我的紫外線的都很好,因爲當我修改片段着色器如下:
return half4(0, inFrag.uv.x, inFrag.uv.y, 1);
我得到預期的圖像:
除了指定filter::linear
之外,是否還有其他工作需要線性過濾工作?
如果您還沒有意識到,可以查看Apple的[金屬像素格式功能](https://developer.apple.com/metal/capabilities/)表。您需要在所用格式的行中查找「過濾器」或「全部」,然後在功能集的列(按操作系統和版本分組)中查找。 –