被非映射的远距离纹理发生的图形效果是什么?


18

我们都知道mip-mapping。当纹理距离较远时,它会降低纹理质量。

如果不进行mip映射,则纹理似乎会“闪烁”,就像这里的山顶一样:

在此处输入图片说明

有什么特别的名字吗?

我想写一个句子,例如“我应用了mip-mapping以解决___效果”或“这被称为___,并且在不使用mip-mapping时发生”。


2
添加您正在谈论的内容的屏幕快照会大大改善问题:)
Vaillancourt

@AlexandreVaillancourt感谢您的建议-已添加。:)
joehot200 2015年

Answers:


20

您要查找的是别名。它与在屏幕上绘制的3D硬边的锯齿没有什么不同。两者都来自过于严格地使用一种颜色或另一种颜色渲染像素。像mip贴图这样的抗锯齿方法只能帮助模糊边缘,从而呈现中间颜色。这可以应用于单个纹理,也可以应用于整个屏幕。

但是请注意,mip映射不是唯一的解决方案。您也可以使用其他过程插值算法。


3
“模糊边缘”不是描述发生情况的好方法。这种类型的抗锯齿大约是使用来自原始纹理的更多样本来确定每个像素的颜色。由于mip贴图是原始纹理的较小副本,因此从mip贴图中获取一个样本就像从原始纹理中获取多个样本一样。还值得注意的是,mip贴图仅是渲染性能的优化。通过在渲染时从原始纹理中获取更多样本,可以获得相同的效果。
罗杰·达尔2015年

@RogerDahl我从未听说过这种“从原始纹理中获取更多样本”来代替Mip映射的方法。它叫什么(所以我可以用谷歌搜索)?
joehot200

3
@ joehot200:“ Mip映射”只是基于算术的优化,用于适当的缩减。通常,如果您要缩小图像的尺寸,以使一个输出像素对应于源中N个像素所覆盖的空间,则需要至少使用这N个像素(甚至更多)作为输入。这显然在计算上是昂贵的。对于k的每个合理值,通过以2 ^ -k的比例对源进行预先计算的版本,您可以一次欺骗并基本上读取N个像素。
R..

当然,这实际上是一个不理想的近似值,并且会产生一些混淆现象。与预先计算源纹理的2 ^ -n缩放版本相比,将要具有完整尺寸的预先计算的带限制版本会更好。这将为您提供正确的采样,但是当然会消耗更多(可能是禁止的)更多的内存。
R..

我知道有些游戏(尤其是年龄稍大的游戏)甚至带有标有“抗锯齿”的滑块。如此不言自明。
丹尼尔(Daniel)

14

4
@ joehot200是什么意思,“相关”?别名正是mipmapping解决的问题。混淆是发生的“效果”。
snake5 2015年

3
术语“欠采样”也出现在这里,因为您的渲染所获取的纹理样本太少而无法准确捕获其在渲染像素范围内的平均外观,因此采样点的细微变化(例如,较小的相机移动)会导致不同的输出值(闪烁/闪烁)
DMGregory

6

有什么特别的名字吗?

闪烁你在谈论被称为在这种情况下,某些莫尔效应/模式。正如其他答案中已经提到的那样,这是一种空间混叠的形式。但是,混叠本身会产生更多的结果,而不仅仅是波纹图案。


1

我听说过“爆裂和沸腾”一词适用于您在背景中那座山上显示的别名。它不是数学术语,而是描述性的。因此,如果您想为该问题发明一个不同的解决方案并使用它来赚钱(津贴,学术晋升),那么别名就是您撰写论文的目的。在演示中,您可能会称呼“沸腾和沸腾”(用于风险投资)。


0

我只想补充一点,不使用mip映射还有另一个副作用:不仅会出现可怕的别名(请参见Nyquist理论,以了解发生的情况),而且可能会降低性能。纹理访问变得不一致,并影响了GPU的内存/缓存系统。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.