unity怎么改分辨率,unity引擎怎么设置分辨率

首页 > 游戏 > 作者:YD1662024-02-07 13:12:12

另一个问题就是对美术不友好。高斯分布是一个数学概念,在3S中没有物理意义,当你使用两个lerp参数的时候它是7个自由度的组合,如果不太清楚如何设置它们,很难得到一个有意义的组合。一个资深的美术仍然是可以使用这个高斯组合的模型取得很好的效果的。可是,这是一个漫长的过程,并不适合我们商业引擎Unity。

unity怎么改分辨率,unity引擎怎么设置分辨率(13)

这也是现在我在支持我们很多项目中经常遇到的一个问题,现在很多项目的效果做得不好并不是说渲染技术的问题,而是美术不知道该怎么调。因为很多项目的渲染比如说Shader和工具大部分都是由图形程序或者是偏技术的TA编写的,很多参数曝露出来给美术,美术根本看不懂。像上面这种参数连规范都没法写,你要写明白,就要给美术把前面所有的数学公式讲明白才行,等美术理解掌握了,你按照国内一个项目的周期,可能项目就做完了。

我们看看我们Unity《异教徒》的这个皮肤3S的改良。Unity实现了Burley的一个规范化的扩散模型。我们称之为迪斯尼3S,它为蒙特卡罗模拟得到的一个参考数据提供了一个精确的拟合。这意味着同时要考虑单次和多次的散射。它只有两个参数,体积反照率A和形状参数S,它们都可以解释为颜色,这个形状参数与散射距离成反比,这就是我们在UI中曝露出来的参数。

unity怎么改分辨率,unity引擎怎么设置分辨率(14)

左边是我们HDRP中Diffusion Profile的参数,大家可以发现更简单,更符合美术的理解。同时,我们还做了一个优化,Diffusion Profile这个扩散剖面被归一化了,并且可以直接做概率密度函数,这也是蒙特卡罗积分中一个很重要的性质。

实现方面,《异教徒》的3S效果也做了很多的优化,为了加强视觉统一性,我们使用Surface albedo作为volume albedo,我们提供两个albedo贴图的选项。第一个是post scatter模式。当这个albedo纹理和一些由于3S导致的颜色溢出,比如你这个albedo贴图是照片扫描或者是采集来的,这种模式下我们就只在出口位置做一次反照率。还有一种是pre-and post scatter模式,这种模式会有效地模糊albedo贴图,这个可能会导致更柔和、更自然的外观。比如你的纹理是在DCC工具中制作的,或者是手工制作,你可以使用这种模式。

我们来看一下效果的对比。这是没有3S效果,这是我们第一种post scatter的模式。这是第二种模式,就是pre-and post scatter。对比一下看一眼,这是第一种,更清晰一些。第二种就是会模糊一些。这是两种模式的对比。

unity怎么改分辨率,unity引擎怎么设置分辨率(15)

unity怎么改分辨率,unity引擎怎么设置分辨率(16)

上一页12345下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.