UE4动画雨滴材质制作教程
虚幻引擎非常适合创建简单且美观的动画着色器和效果,因为它不需要强大的编程技能,只需要基本的数学知识。你需要两个参数来调整动画材质:根据时间来改变贴图的UV坐标以及时间。
1、雨滴材质
动画水滴的工作流程都差不多相同,我首先制作了一些包含材料所需信息的静态纹理。
制作中需要用到的一些贴图:
静态水滴的法线贴图以及打包的Masks。
R,时间变化的Mask,负责在正确的时间出现和消失的水滴。
G,用于将水滴与表面混合的Mask。
B,一个噪点Mask,使水滴看起来更混乱。
动态水滴的法线贴图和打包Masks。
R,水滴Mask。
G,一个用于水滴路径的Mask,不允许其他静态水滴出现在运动的水滴的途中。
还有一张Distortion的法线贴图,它会影响液滴在表面上流动的方式,使其更加不规则。
然后,我制作了两个包含所有必要信息和逻辑的函数。它们分为两组:随时间出现/消失的静态水滴和流过表面的动态水滴。
2、工作流程
首先,需要获取纹理的坐标并开始向必要的方向移动它们。稍后,将使用这些坐标对Distortion的法线贴图进行采样,并为水滴的纹理坐标添加轻微的扭曲。借助有关扭曲和纹理坐标位移的信息,可以对法线和Mask进行采样。
然而,为了呈现不仅仅是简单的水滴流动的效果,我使用了Mask的红色通道,并使其强度随时间变化。另外,我还通过添加一些简单的数学函数使水滴随时间出现和消失。
第二个函数也是如此。它包含置换纹理坐标和扭曲,但略有不同。当我制作流动水滴的纹理时,我只为它制作了一滴水和一组Masks。为了填充水滴,我必须添加一个循环,在该循环中水滴被复制、移位、具有不同的速度(每个水滴都是唯一的),并最终相互混合。
为了使扭曲更有趣,我使用了两次扭曲贴图:用于比较大的扭曲和不太密集的扭曲。然后,它们沿轴以不同的强度混合在一起。假设,可以在一张地图中使用多个水滴或一张地图用于所有水滴,在这种情况下,所有水滴将以相同的速度相互平行移动,因为你无法影响单滴的速度和时间。
我还有一个自定义节点,其中包含有关最大滴数的信息,并使用当前位置和滴速设置了一个静态数组。它可以手动完成,也可以在 Unreal 中完成,我这里使用的是3D Max的脚本。
该脚本获取有关编辑器中所选对象的位置和大小的信息,并将其返回到定义的数组中。在我的例子中,我只使用了 XY 坐标和一个下降速度的指数。同样,可以创建一个包含有关液滴大小信息的数组并将其添加到材质中。
过滤器准备好后,我调整了它们的输出参数。我还创建了一些可以在材质中更改的输入参数,例如动画速度、平铺、水滴失真强度、法线贴图强度和使用过滤器的纹理。
之后,这些过滤器可以用于任何材料,无论其类型如何。材料的参数可以在其掩码的帮助下进行调整。
作为示例,我制作的第一个基础材料是哑光不透明表面,这是混合必要蒙版和设置颜色、粗糙度和水滴法线等参数的起点。
如果将材质类型更改为透明并同样添加透明度和扭曲,将得到一个简单的玻璃材质。
为了使物体更加有趣和复杂,可以通过模糊玻璃后面的背景来添加冷凝效果。此技巧仅适用于透明材料和后期处理。同时,必须降低透明度,仍然保持材质类型透明。之后,是时候为材质添加模糊效果了。
然后,可以添加Mask以避免在平行于地面的表面上移动水滴。
以同样的方式,可以将其与现有纹理混合,例如水滴从屋顶掉落的纹理或任何其他材质。
这是在后处理中使用函数的示例:
3、最后
不幸的是,所有这些效果都非常苛刻,因为它们更适合在屏幕上不占用太多空间的小表面,比如房间里的窗户。
使用的纹理、混合和复杂的数学越多,渲染材质的难度就越大。
为了优化,可以选择简化纹理,例如,如果不想要这样或那样的效果,可以减小它们的大小或去掉一些数学运算。在这个函数的情况下,我并没有针对某些特定的结果,而是尝试制作一些可以在必要时简化的多用途的东西。
UE4动画雨滴材质制作教程相关推荐
- VRay Next for SketchUp 泳池水材质制作教程
作者:Architecture Inspirations 今天与大家分享的是 VRay Next(4.0) for SketchUp中 如何创作真实的游泳池水材质 在建筑表现中 水的材质很简单也很难 ...
- html5教程单摆,Flash动画—单摆的制作教程
想起当初作这个动画时,真是不知如何下手,所以,这是一篇献给初学者的教程的单摆动画的制作,应该要解决两个方面的问题: 一.单摆本身的制作,这一点只要用好flash的绘图工具即可 二.单摆振动,这一点将是 ...
- html5水涟漪动画,CSS3水波涟漪动画定位样式制作教程
先上效果图: 教程 本动画需要用到的主要属性:animation, transition 和 Keyframes 属性. Step 1:HTML 代码: Step 2: CSS样式:设置animati ...
- [玩转UE4动画系统]教程的大纲及设计思路
本教程采用图文教程+视频教程的多元化形式,我会为不同的知识点选择适当的表达方式. 教程内容将同步免费发布于 开发游戏的老王(知乎|CSDN)的玩转UE4动画系统 专栏. 教程中使用的资源及工程将以开源 ...
- 【UE4】材质编辑器教程笔记整理
点我进入原教程链接 节点介绍 基本材质节点 材质的基本属性,可以通过更改着色模式切换可用的接口 节点名称 意义 Base Color 纹理 Metallic 金属度,范围0-1 Speculator ...
- ios开发 方形到圆的动画_3Blue1Brown 动画制作教程(1)--制作第一个自己的动画
制作第一个自己的动画 前一篇详细介绍了 3Blue1Brown 的动画引擎在 Windows 10 64 位系统上,基于 Anaconda的配置方法,并且详细描述了在配置 3Blue1Brown 提供 ...
- UE4材质 制作UV贴图
我们想要制作一张uv贴图,是一个什么意思呢?我们知道一般来说,我们都是根据uv来采样贴图,一般来说这个事情都是美术同学来制作的,所以我们想要进行的是在UE4中,动态或者根据自己的实际情况来生成一张贴图 ...
- hge引擎配置登录器教程_3Blue1Brown 动画制作教程(1)--制作第一个自己的动画
制作第一个自己的动画 前一篇详细介绍了 3Blue1Brown 的动画引擎在 Windows 10 64 位系统上,基于 Anaconda的配置方法,并且详细描述了在配置 3Blue1Brown 提供 ...
- UE4虚幻引擎关于小地图制作教程
UE4虚幻引擎关于小地图制作教程 首先,要做一个这样子的效果! 怎么做呢! 首先,我们要准备UI! 小地图,我们的分辨率是512x512 记住参数! 然后在MainUI当中!我们就可以这么设置! 一个 ...
最新文章
- 如何在HHDI中进行数据质量探查并获取数据剖析报告
- 如何配置VirtualBox中的客户机与宿主机之间的网络连接
- php 统计一周数据,如何获取本周、上周、本月、上个月数据的起止时间 PHP
- 《Java 核心技术卷1 第10版》学习笔记------ 控制可见性的4个访问修饰符详解
- java 桥接模式_JAVA设计模式之【桥接模式】
- ubuntu导入第三方库_在Ubuntu中,如何添加Apt存储库
- 《众妙之门——用户体验设计的秘密》一2.3 触摸至上的设计
- 用户的大量数据保存在计算机的,计算机基础理论复习题
- 实施云计算之后如何保证安全
- tomcat服务器开启gzip功能的方法
- c语言dummy作为参数,C语言中的dummy函数
- 论Web控件开发 - 完美上传下载控件“新”(一)
- C语言程序实验01,广西科技大学理学院《C语言程序设计与算法语言》实验01: 熟悉开发环境.pdf...
- C++ template<typename> 模板怎么用
- vim的ex模式介绍
- Tomcat日志乱码问题解决方法
- HDU 5336(2015多校4)-XYZ and Drops(bfs)
- 2020时尚COSMO美容大奖“破圈直播间”完美收官!打造美妆直播全新形式!
- UCenter Home 正式开源 促进国内SNS网站发展
- 关于滚动条内子控件控制问题
热门文章
- 简历面试择业篇-在面试的过程中你所需要注意的问题
- 推荐一个程序员业余写的小说
- 计算机型号cpu主频,电脑cpu型号怎么看好不好 教你看cpu主频等详细性能参数
- 知识图谱 方法、实践与应用 王昊奋 读书笔记(下)
- 空间数据可视化:ArcGIS JavaScript API 二、三维数据一体化
- Python3进阶--Socket编程、多线程(创建方式、线程通信、线程锁、线程池)
- 06-10 上涨到筹码密集区附近,有震荡消化需求
- 也谈《火车运煤》问题
- 将MacbookPro作为电脑音箱的方法
- 通过linux课程我学到了什么作文,我学会了什么作文(精选3篇)