Mipfilter在效果文件中的使用

The usage of Mipfilter in effect file

我见过很多人使用 MipFilter 效果文件。然而,MinFilterMagFilter分别用于纹理缩小和放大,使得MipFilter的用法不清楚。

所以我想知道MipFilter的设置在什么情况下才会生效

Monogame 中的代码片段 .fx 下面的效果文件:

texture InputTexture;
sampler inputSampler = sampler_state
{
    Texture = <InputTexture>;
    MipFilter = Point;  //What does this line mean?
    MinFilter = Point;
    MagFilter = Point;
    AddressU = Clamp;
    AddressV = Clamp;
};

MipFilter 是关于在 mipmap 级别之间进行插值,而 Min/MagFilter 是关于在对 mipmap 级别进行采样时在像素之间进行插值。

它可以有两个值:

  • POINT 采样最接近的 mipmap 级别(双线性过滤)
  • LINEAR 两个最接近的 mip 级别之间的线性插值(三线性过滤,质量更好)

您可以找到更多信息here