医学网站建设风格搜索引擎优化需要多少钱
以前的相关笔记,归档发布;
距离场相关节点:

DistanceToNearestSurface节点:
求出传入的Position位置到最近的面的距离并输出,在没有Position输入的时候,默认值会直接使用World Position:

Position的默认值即为World Position;其为输出Pixel Position到最近的Surface的距离值;
加上一个偏移值参数:

能达成最简单的功能:

注意只有地面面片Mesh给予了距离场相关材质;
下面是简单的示例:


使用节点时注意在项目设置中打开距离场相关参数;
DistanceToNearestSurface节点在制作如物件和地面接触相关的一些效果时非常有用;一般可以利用节点制作一个Mask作为Alpha输入:

这个Mask可以用在Normal上,比如让物件的World Normal与地面融合:

主要方式是让mask出来的地方法线朝上:

A输入的是正常的Tangent Normal Map,B如上输入的是World Space中朝上的法线,需要转换为Tangent;
也可以配合World Position Offset让接触地面的部分变形:

节点如下:

DistanceFieldGradient节点:
这个节点不像DistanceToNearestSurface输出的只是一个距离值,而是向量值;同样用最简单的例子表示:


只有地面材质Mesh给予了相关材质,其不同的向量值输入到BaseColor映射成了不同颜色;
由于是向量值,所以有时需要归一化:

DistanceFieldGradient配合DistanceToNearestSurface可以做一些如草地交互的效果,DistanceFieldGradient控制交互向量,然后用DistanceToNearestSurface控制交互范围;