时间反锯齿(和其他时间算法)的工作方式是:将该帧的像素与最后一帧的像素进行匹配,然后使用该信息。向量信息以匹配帧之间的像素。

我不明白的是如何知道重新投影的像素是否有效?例如,旧像素现在可能隐藏在其他对象后面。

仅按颜色显示吗?如果是这样,如何处理动画纹理或变化的光照条件?

#1 楼

布赖恩·卡里斯(Brian Karis)在谈论TAA时提到的一种策略是邻里钳制。通常的想法是,要使前一帧的像素有效,其颜色应在该帧当前像素的邻域(例如3x3像素)内的颜色范围内。改变光照条件,如果您不希望移动阴影以产生重影,那么无论如何,这可能都是您想要的。运动矢量,如果您具有可预测的UV贴图或可以合理猜测的话。)

评论


$ \ begingroup $
您是否听说过有人使用深度缓冲区值进行健全性检查?
$ \ endgroup $
–艾伦·沃尔夫(Alan Wolfe)
2015年8月9日14:16

$ \ begingroup $
@AlanWolfe不,我认为这是因为运动矢量纹理通常是2分量的:您需要Z分量更改才能知道深度缓冲区的值是多少,并且边界不太好通过屏幕尺寸。我怀疑您可以通过添加更多的每像素信息来获得更好的拒绝策略。
$ \ endgroup $
– John Calsbeek
2015年8月9日在16:48

$ \ begingroup $
好的。您认为什么样的信息会有所帮助。阴影参数类型的东西可以分辨出是否是相同的材质?
$ \ endgroup $
–艾伦·沃尔夫(Alan Wolfe)
2015年8月9日17:26

$ \ begingroup $
@AlanWolfe我没有很多具体想法。我不是专家,当带有邻域钳位的时间重投影何时分解并产生伪像以及在这些情况下有用的信息时,我不是专家。也许透明物(没有运动矢量信息)与高频照明结合在一起会产生伪影,因此您需要一些遮蔽信息。也许几何混叠是您的问题,并且您需要其他一些信息。
$ \ endgroup $
– John Calsbeek
15年8月9日在18:11