在使用unity做工艺仿真等对模型渲染有比较高的要求时,经常会发现模型渲染时边缘会出现锯齿波纹状。那么锯齿究竟是从哪里产生的呢?
本质原因是,现今的显示器屏幕都由像素阵列组成。现实世界中的物体形状都是连续的,而屏幕上只能用离散的像素点来表征。例如,屏幕上的一条斜线由一排阶梯状的像素点构成,看起来就显得锯齿型。
以下是一些抗锯齿问题的主流解决方案:
一、unity的Quality设置
最简单的做法,在编辑(edit)菜单-找project setting -> Quality, 在弹出的面板里点击AntiAliasing, 选择 4x或更高。
设置此属性后,锯齿现象会减弱,相应的性能开销也会增大。

二、改变摄像机的渲染路径
为摄像机挂上一个去锯齿的系统脚本,将摄像机的渲染路径(Rendering Path)设置为前向渲染(ForwardBase)就行,因为Unity默认的延迟渲染(Deffered Rendering)不支持多重采样抗锯齿(MSAA),对显卡有硬件要求哦。

导入后Assets资源下多了一个包


找到这个脚本,挂在摄像机上即可。
三、减少模型重叠面、磨损面
这种方法需要美工来做,不做详细介绍了

使用Unity做工艺仿真等对模型渲染要求较高时,模型边缘会出现锯齿波纹状。其本质是显示器用离散像素点表征连续物体形状所致。文中介绍了抗锯齿的主流解决方案,包括Unity的Quality设置、改变摄像机渲染路径、减少模型重叠面和磨损面、改变shader渲染方式。

852

被折叠的 条评论
为什么被折叠?



