UnigineEditor
Interface Overview
Assets Workflow
Settings and Preferences
Working With Projects
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Lighting
Landscape Tool
Using Editor Tools for Specific Tasks
Extending Editor Functionality
编程
Fundamentals
Setting Up Development Environment
Usage Examples
UnigineScript
C++
C#
UUSL (Unified UNIGINE Shader Language)
File Formats
Rebuilding the Engine Tools
GUI
Double Precision Coordinates
应用程序接口
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes

临时抗锯齿(TAA)

临时抗锯齿(也称为 TAA )是一种抗锯齿技术,可以减少临时锯齿(闪烁或闪烁效果)。可以将此技术与 FXAA 结合使用以获得更好的质量。

没有TAA的ISS。
带有TAA的ISS。

TAA功能#

与仅在多边形的边缘上执行抗锯齿处理(并使该边缘更平滑)的 Multisample anti-aliasing (MSAA)不同,时间抗锯齿处理将平滑应用于整个场景。如果完全延迟渲染(最终图像由不同的纹理缓冲区(深度,法线等)组成),则MSAA将增加性能成本,因为应将Multisample抗锯齿应用于每个纹理缓冲区。

TAA如何运作#

时间抗锯齿的主要概念是每帧使用场景相机的子像素抖动,然后将所有这些帧组合为最终图像。因此,要花一些时间才能获得平滑的图片(例如5-7帧),但是以每秒60帧的频率,它将看起来是无缝的。

TAA相机抖动的简化演示。

在栅格化过程中,将测试对象是否会进入像素。如果对象不占据像素的主要部分,则不会渲染该对象。

栅格化之前的矢量图像。

在这里,当我们在光栅化之前有一个球体对象而在栅格化之后得到一个方形对象时,我们会得到一个错误,因为球体的某些部分没有占据足够的像素空间。

没有TAA的栅格化后的位图图像。

效果不是很好,对吧?时域抗锯齿解决了这个问题,因为相机会出现亚像素抖动,并且该球体的每个部分至少会在一个帧中渲染一次。合并这些框架后,我们将得到一个真正的球体,而不是正方形!瞧!

用TAA光栅化后的位图图像。

重影#

这种抗锯齿技术非常适合静态场景(没有任何移动物体)。但是,当物体移动时,框架会彼此明显不同,我们将看到运动物体的“重影”痕迹。这种效果称为 ghosting

为了消除重影,有一个速度缓冲器。速度缓冲区存储有关对象转换的信息。由于有了这个缓冲区,引擎知道对象的变换,并且不渲染移动对象的“鬼影”。此外,由于相机抖动,引擎还会检查像素的颜色强度。

概要#

TAA的使用范围很广,因为它可以改善整个图像(不仅是几何图形的边缘,例如MSAA),包括几何图形,阴影等。它可以大大减少所有问题,并且不会降低性能,与静态和动态图像均能很好地工作。但是,请记住,良好的TAA性能的关键因素是场景的优化内容:FPS越高,临时的抗锯齿效果使场景平滑的速度就越快。除此之外,UNIGINE允许您选择抗锯齿的类型: TAA FXAA ,或将两者组合使用以获得更好的图像质量(在时间求和之前应用FXAA。)

TAA调整#

临时抗锯齿(TAA)设置可通过Settings窗口的Render -> Antialiasing部分以及快速近似抗锯齿(FXAA) Supersampling 进行调整设置。

TAA Settings

抗锯齿设置

日期设定#

TAA 启用和禁用TAA。
Fix Flicker 通过使用上一帧的像素亮度信息来删除明亮的像素。我们建议为明亮的细绳,电线和线启用此选项。但是,启用后,可能会通过去除小的明亮物体而产生伪影。
注意
可以由 render_taa_fix_flicker 控制台命令控制。
Frames By Color 随时间切换可变数量帧的累积,具体取决于当前帧与先前帧之间的像素色差。如果当前帧中的像素颜色与前一帧的像素颜色有很大不同,则在TAA期间不会合并和混合这些帧。启用后,图像会变得更清晰,但可能会产生额外的闪烁,细小的物体可能会模糊(例如,草皮,金属结构,电线等)。 禁用此选项可能会导致更明显的重影效果。
注意
可以通过 render_taa_frames_by_color 控制台命令进行控制。
Fix Blur 开启和关闭Catmull-Rom重采样。该选项使您可以减少相机向前/向后移动时的图像模糊,从而获得更清晰的图像。建议在低设置下禁用重采样。
注意
可以通过 render_taa_catmull_resampling 控制台命令进行控制。

Antialiasing In Motion 切换打开和关闭时改进的运动抗锯齿(用于移动相机和对象)。
注意
可以通过 render_taa_antialiasing_in_motion 控制台命令进行控制。

Antialiasing In Motion

Diagonal Neighbors 在啟用和禁用顏色箝位的過程中考慮對角線相鄰的像素進行切換。

Preserve Details 控制TAA细节级别:值越高,图像越详细。值为 0 时,移动相机时图像变得模糊,但是TAA效果更好。高值时,此选项可能会产生额外的闪烁。因此,要提高抗锯齿效果,可以减小该值;最小化模糊-增加它。
注意
可以通过 render_taa_preserve_details 控制台命令进行控制。
Frame Count 指定在TAA计算期间合并和混合的帧数。值越高,将更多帧合并到最终图像中,抗锯齿效果越好。
注意
Pixel Offset 指定子像素抖动期间执行的样本偏移的大小。此参数允许指定小于像素的偏移量:例如,如果指定 0.5 ,则帧将移动到半像素。该参数可以减少屏幕上小元素的闪烁。
注意
可以通过 render_taa_pixel_offset 控制台命令进行控制。
TAA Samples 指定在子像素抖动期间执行的采样偏移数。通过 1 的最小值,没有偏移,因此没有抗锯齿。该参数允许减少图像抖动和模糊。可用值是 1 4 8 16
注意
可以通过 render_taa_samples 控制台命令进行控制。

速度帧

Enabled 随时间切换累积数量可变的帧,具体取决于当前帧与先前帧之间的像素速度差。考虑到速度缓冲器,执行前一帧像素的重投影,并将结果与​​当前帧的像素合并。 此选项可减少带有大量运动对象的动态场景中的模糊和重影。
注意
可以通过 render_taa_frames_by_velocity 控制台命令进行控制。
Threshold 指定阈值,该阈值定义对速度变化的敏感性(将像素视为快速移动的速度阈值)。
注意
可以通过 render_taa_frames_velocity_threshold 控制台命令进行控制。
Max Frame Count 设置相对于屏幕空间不移动的像素组合和融合的帧数。
注意
可以通过 render_taa_max_frames_by_velocity 控制台命令进行控制。
Min Frame Count 设置组合和融合的帧数,以实现屏幕上快速移动的像素。
注意
可以通过 render_taa_min_frames_by_velocity 控制台命令进行控制。

推荐建议#

如您所见,TAA具有许多设置,使您可以针对相对静态的场景以及动态变化的环境进行调整。

静态场景#

下面是相对静态场景的TAA设置示例。

TAA Settings for Relatively Static Scenes

相对静态场景的推荐抗锯齿设置
  • 应该启用Diagonal Neighbors选项,因为它提供了更准确的像素颜色信息,从而减少了阶梯效应。同时,在快速移动相机的情况下,TAA会导致更多的模糊,在草地和其他类似高对比度屏幕区域上尤其明显。
  • 降低Preserve Detail值以减少小像素的闪烁。
  • TAA样本的数量设置为 16 ,这会增加子像素相机抖动的变化数量,从而使阶梯效果更加不明显。

动态场景#

以下是非常动态的场景中TAA设置的示例,在这种场景中,薄物体的踪迹特别明显。

TAA Settings for Dynamic Scenes

动态场景的推荐抗锯齿设置
  • 应该关闭Diagonal Neighbors选项,因为它可能导致运动中的小细节明显模糊。
  • Preserve Details值提高到 1 或更高,以减少移动对象的重影效果。
  • TAA Samples值设置为 4 ,以减少相机不移动时小像素的闪烁。
  • 还建议将Max Frame Count降低到 60 或更低,以减少帧累积以进行慢动作,从而减少重影效果。
最新更新: 2020-09-30