相关文章推荐
绅士的毛巾  ·  C# ...·  2 年前    · 
文雅的海龟  ·  python列表分组排序-掘金·  2 年前    · 

当相机与物体的距离越来越近,达到指定值时,我们让物体逐渐淡出,当相机与物体拉开距离后,再让其淡入,来处理当相机靠近物体时的穿模情况,效果图:

image image.gif

创建一个新的PBR Graph,命名为Fade,在Blackboard黑板中创建以下属性:

Main Texture(Texture2D 类型):用于主贴图

Min Distance(Vector1 类型):用于设定淡入淡出的最小距离

Max Distance (Vector2 类型) :用于设定淡入淡出的最大距离

image image.gif

新建Sample Texture 2D节点用于Main Texture,输出至PBR Master中Albedo节点:

image image.gif

新建一个Dither节点,关于该节点的官方文档介绍如下:

image image.gif

其大致含义指Dither是一种特定格式的噪波,用于随机量化误差,用于防止大幅拉伸图片时出现的异常情况,在屏幕空间抖动来确保图案的均匀分布。此节点通常作为主节点上Alpha Clip Threshold的输入,为不透明对象提供透明的外观,而且仍然可以写入深度缓冲区。

我们这里用Dither节点来实现淡入淡出(透明),将其输出至PBR Master中的Alpha节点:

image image.gif

创建Object节点获取物体位置信息,创建Camera节点获取相机位置信息,通过Distance节点求得二者之间的距离:

image image.gif

创建Remap节点,将Distance的输出值,即相机与物体的距离,通过Min Distance、Max Distance即我们设定的最小、最大淡入淡出的距离,映射到[0,1]的取值范围,以便控制Alpha Clip Threshold:

image image.gif

image image.gif

至此,通过上图发现,当相机与物体距离越近时越是淡入,与我们想要的效果是相反的,因此通过创建一个One Minus节点来调整:

image image.gif

image image.gif

效果和上面的比较相似,Photoshop CS图像黑白调整功能的计算公式为: gray= (max - mid) * ratio_max + (mid - min) * ratio_max_mid + min 公式中:gray为像素灰度值,max、mid和min分别为图像像素R、G、B分量颜色的最大值、中间值和最小值,ratio_max为max所代表的分量颜色(单色)比率,ratio_max_mid则为max与mid两种分量颜色所形成的复色比率。 默认的单色及复色比率为:
【Unity3D Shader】学习笔记-位移动画
Unity3D Shader学习笔记系列,由于是个人理解后写的,因此可能会出现描述错误,理解不到位的地方。另外没有完全从基础的知识开始,对于刚开始学习的同学还需要看更基础的知识进行补充。 一、顶点动画 将顶点的坐标与三角函数进行算术运算,就可以得到一个在原始位置“左右上下”来回的动画效果。还可以通过定义一个_Direction方向向量来进行来回摆动方向。
图2 面版参数 简单的消融效果,Threshold的值是随时间从0-1进行变化。对扰动图采样取r值,通过比较Threshold与R值的大小来进行消融。Noise图可以控制消融的形状,代码如下。 UGUI系列-点击图片生成物体(Unity3D)
今天给大家分享一个如何点击图片生成物体的脚本,可以把这个脚本稍微封装一下,以后也可以方便使用。 主要试用与点击图片时候响应事件,具体用法还要大家多多摸索