网站图片的像素,做外贸用什么软件找客户,广州百度快速优化排名,代理公司注册上海一、材质节点介绍#xff1a;
特别注意#xff1a;距离场需要独立显卡支持。
1、什么是距离场#xff1f;
想象一下空间中只有两个实体, 一个球,一个圆柱.
空间由无数个点组成, 取其中任何一个点, 比如,它跟球面的最近距离是3, 跟圆柱面的最近距离是2, 那么这个点的值就…一、材质节点介绍
特别注意距离场需要独立显卡支持。
1、什么是距离场
想象一下空间中只有两个实体, 一个球,一个圆柱.
空间由无数个点组成, 取其中任何一个点, 比如,它跟球面的最近距离是3, 跟圆柱面的最近距离是2, 那么这个点的值就是2. 空间中所有的点都按照这个方法取值, 就形成了一个标量场, 称为距离场.
距离场计算出来以后, 能够得到场中任何一个点跟所有参考物体(比如上例中的球和圆柱)之间的最近距离. 如果距离场的值表现为图像的明度, 它的视觉印象是一个个由参考物体分割出来的渐变区域.
2、距离场的开启
点击 主Main 菜单上的 编辑Edit 并选择 项目设置Project Settings 将其打开。
点击 渲染Rendering 软件光线追踪Software Ray Tracing 可找到用于调整网格体距离场的设置。 3、距离场的查看 4、DistanceToNearestSurface与最近表面的距离蓝图节点 与最近表面的距离DistanceToNearestSurface 材质表达式节点允许材质对全局距离场关卡中的任何点进行取样。 这个材质表达式将输出从距离场到场景中最近遮挡体的带符号距离以全局空间单位计。
必须在 项目设置Project Settings 的 渲染Rendering 下启用 生成网格体距离场Generate Mesh Distance Fields 此表达式才能正确工作。 节点尝试理解
根据理解与最近表面的距离获取的应该是个标量我们除以一个值使渐变区域变大以观察效果。 把这个材质赋予场景中的平面这样平面上的自发光颜色根据这个距离除以100进行发光。 这样我们就理解了这个节点了获取到的是物体上每个像素点到最近物体表面的距离。为了验证我们在添加一个物体看看效果 在此示例中DistanceToNearestSurface输送到材质上的不透明Opacity输入而该材质应用于放在关卡地板正上方的静态网格平面。 DistanceToNearestSurface的作用是告诉材质静态网格平面仅从红色区域开始与场景中的其他静态网格相交。 5、DistanceFieldGradient距离场梯度蓝图节点 距离场梯度DistanceFieldGradient 材质表达式节点进行规范化normalize后将输出对象在距离场中的X,Y,Z移动方向。方向是从物体到材质物体的方向。 这使DistanceFieldGradient材质表达式节点非常适合于需要模拟液体流的材质。
必须在 项目设置Project Settings 的 渲染Rendering 下启用 生成网格体距离场Generate Mesh Distance Fields 此表达式才能正确工作。
材质节点尝试
半透明材质渲染距离场是有点小问题的 换成不透明材质效果如下 为了看清楚效果自发光乘以一个数值。 看另一个效果 再看另一个效果 看完你会发现还是规范化省事并且这个节点是既带有方向又带有距离的。
这里是在材质中使用 DistanceFieldGradient 材质表达式的示例。 在此示例中请务必注意DistanceFieldGradient首先进行规范化然后输入到Mask Channel节点。 这样做的原因是如果不首先对DistanceFieldGradient进行规范化您将无法获得方向性数据。 为了方便在材质实例中进行RGB通道切换添加了遮罩通道Mask Channel参数。 以下是作用中的DistanceFieldGradient示例。 下图显示启用各种RGB后DistanceFieldGradient将会使用的数据。 二、流体中应用