ue4 点击某一物体触发事件_UE4引擎——姜小白修炼记(三)
大家好,前段时间对UE4蓝图的做了一个浅显的研究,为了对引擎的全流程都做一个系统研究,这两周时间我一直在研究引擎的渲染功能,利用现成的素材,快速搭建场景,搭配UE4灯光系统,完成了一个案例,涵盖了基本的灯光,摄像机操作,因为客观因素,所有知识点在单位进行系统整理,回家后整理素材进行制作,所以断断续续时间花得比较长,如果正常制作的话,这个场景最多两天就可以搞定了!先看一下成品效果,如下
可以看到效果还说的过去,虽然还有一些瑕疵,但整体效果已经达到中上水准了(请忽略不专业的摄像机动画)
我们回到正题上,为什么现在越来越多的人开始使用引擎做视频,因为效率高,像这个场景,我几乎没有把时间花在模型贴图上,因为所有的素材都来自于SUBSTANCE的元素库,简单得介绍下SP素材库
以上部分材质
打开虚幻商城,右下角的插件安装好,打开你的工程文件后加载,你就能进入SUB的官网商店下载你要的素材了,SUB所提供的素材全部都是照片扫描级的模型贴图,效果非常逼真,你甚至不用去研究它的材质系统,就可以直接添加进你的场景中使用,当然素材不是免费的,但是作为聪明的中国人,你懂的。
下面罗列下这个场景所使用的素材库如下所示
可以看到SUB素材库的模型质量非常高,因为它们都是基于PBR流程做得材质,特别适合用来制作影视级别的视频
整个场景主要由石头,植物,水面构成,为了让场景有一些趣味性,构思上用石头形成一个洞门,这样可以把场景分割为二,这样最终视频在观看时就具有了一定的层次感,不会显得那么单调,但本人摄像机水平实在有限,不然效果上可以再做得具有冲击感和运动感,下面我将整个场景的流程做一个梳理
一、地形的雕刻
虽然说场景以水为主,但基础的地形还是必须创建的,这样水可以透下去看到水底的土石,另一方面,如果后续场景添加别的景致,也可以利用地形快速得刷上你需要的植被素材,这里我们创建一个3*3的地面,因为场景不要很大,如图
然后利用地形雕刻工具,对地形用笔刷进行绘制,这个操作完全看你自己的要求和感觉,没有强制性的规定!同时在绘制时,你也可以利用明度贴图进行更复杂的雕刻,如果需要可以联系我,雕刻完的效果如下
为了你们看的清楚,调为线框显示,标注出就是之后放河水的地方,稍微凹一点。
地形的材质需要建立层材质,这样后续我们在刷地形材质时就能随意切换,得到更加复杂的地面材质效果,这里需要基于扫描级别的分层贴图建立材质节点,然后再绘制菜单下选择不同的材质球进行绘制,如图
如图标注所示,这种随机的纹理显示,就是通过层材质实现的,而且可以通过笔刷任意修改区域和范围,这种操作模式比传统三维的层材质系统高效得不是一点点,真的叹为观止!
二、石材和植被
UE4在场景搭建的功能上真的太方便了,和地形一样,我们只要将需要的素材添加到笔刷库中,就能利用笔刷快速得将物体创建到场景中,这个过程就和画画一样,重点是你根本不用担心出错,因为随时可以替换,可以擦除,可以批量修改,对于大小,密度等都是可以自由调整的,具体的参数设置这里不做讲解,查询相关的官方帮助文档,说得很明白。重点是你的场景搭建得好不好看,这个需要你有一定的审美能力,同时必要的时候也可以去一些优秀的照片网站寻找参考。
下面我们将SUB库中的模型素材添加到笔刷中,如下所示
因为石头的摆放需要讲究角度和不同的大小,所以这里的石头我们还是手动创建,具体摆放和笔刷过程不做讲解,你可以看我的场景进行临摹也可以找别的参考临摹,这个没有难度。
我们看下最终调整后的完整场景,如图所示
怎么好看怎么玩,不讲究,考究一点就找些真实环境的照片临摹即可
三、灯光系统
UE4渲染场景,在灯光使用上基本包括天空光,天空球、反射球、大气效果、环境雾和后期盒子,常用的就这些,也足够你去渲染自然场景了
下面我罗列出这个场景主要的灯光设置
天空光,这个光源提供全局照明,类似三维软件中的光球,它不能提供明显的阴影角度,所以要搭配其他主光源使用
重要概念:灯光属性中的静态、固态、可移动,得到的光照效果会有不同,主要体现在阴影和间接照明上,可移动光源不能提供间接照明,只有静态和固定能有优质的间接照明
对比静态和移动在间接照明上的区别,如图所示
可以看到图一是可移动光源,它的光照效果下物体之间无法产生间接照明,阴影关系不强,画面较平,而图二是静态光源,能得到较为正确的阴影关系和间接照明
太阳光,作用是确定场景的光源方向,也是作为场景的主光源使用,一般情况下不需要调太复杂的参数,控制亮度和颜色即可,特定情况下也可以和天光联通,作为天空光的控制器实现场景白天到夜晚的变化过程,以后有机会再讲这块的运用把
大气效果,用来给场景添加景深和雾气,有时候也可以为场景添加天空色来使用
后期盒子,作用是对框选范围或区域单独调色,比如亮度,伽马值等等,有些人用它来做白平衡的调整,具体使用方法在UE官方有非常详细的说明,并且提供了伽马矫正的色彩条
一般在具有反射属性的物体周围添加,用来控制区域的反射强弱,在这个场景中,水是高反射媒介,我们需要用反射球将水的反射影响到周围的石头上,所以根据河水的长度,我们需要添加多个反射球来控制,如图
方如果感觉有点暗的话,可以再创建一个点光源来补充暗部,这些都是灵活运用的,做过三维软件的渲染,UE4中也可以关联一些规律的。
四、摄像机动画及渲染
要完成一个动态视频,所以需要给场景添加摄像机,然后调整摄像机动画,相机的创建可以再过场动画中添加主序列,如图
设置镜头数量和每个镜头的长度,点击创建后进入摄像机属性窗口,我们在摄像机的位移和旋转属性上进行关键帧的创建,你可以创建多个关键帧,这个操作和传统的三维软件是一样的
同样也可以进入曲线编辑窗口对曲线进行调整,非常方便
你打完摄像机动画后,我们就可以将图像进行输出,我们可以进入渲染设置面板进行相关设置,例如质量,帧速率,分辨率,渲染范围等吗,如图所示
点击采集样片,序列帧就可以输出了,这样我们就完成了整个场景的制作
总结:UE4的渲染优势主要体现在所见即所得,你在预览的情况下所看到的画面质量基本已经接近渲染效果了,只要你的显卡够好,这种实时计算就更快,还有就是体现在渲染的速度上,如果我们用传统三维软件来制作这个场景,庞大的模型量会大大降低渲染速度,优化后基本维持在20分钟一帧,采样打高后速度会成倍减慢,而UE4是基于GPU渲染,这个场景15秒的动画我只用了1分钟,是的!没错,就一分钟!虽然在质量上还是没有达到影视级别,但应付一般的项目绰绰有余了!
ue4 点击某一物体触发事件_UE4引擎——姜小白修炼记(三)相关推荐
- android点击手机返回键触发事件
用户在点击手机的返回按钮时,默认是推出当前的activty, 击返回键,触发onKeyDown事件: @Override public boolean onKeyDown(int keyCode, K ...
- jquery实现点击某元素之外触发事件
jq如何实现这个功能呢?其实也不难,大概思路就是,在document上面绑定一个事件,当用户触发document的事件时,判断一下目标元素是什么,然后再执行相应的操作就行了. <script&g ...
- [jQuery]点击某元素之外触发事件
思路 1. 获取点击元素 2. 判断元素是否含有Class || 判断父级是否含有Class 不含有则执行事件 代码 $(document).bind('click', function(event) ...
- vue点击元素自身之外触发事件指令
1注册指令 Vue.directive('clickoutside', {bind(el, binding) {function handler(e) {if (el.contains(e.targe ...
- echarts 点击地图画布空白处 触发事件
点击画布 可以通过params.target是否为undefined判断是否点击到了空白处 let obj = document.getElementById('ElementID'); if (!o ...
- 小程序banner广告点击触发事件技术
现如今,小程序是遍布各大平台(微信,QQ,百度,抖音...),随着小程序的增多,流量也显得越来越珍贵,买量的钱是越来越多,除去靠小程序业务营收的(如商城)和靠小程序服务营收的(外卖,服务等),很大部分 ...
- oracle 触发器的种类和触发事件
触发器的种类和触发事件 触发器必须由事件才能触发.触发器的触发事件分可为3类,分别是DML事件.DDL事件和数据库事件. 每类事件包含若干个事件,如下所示.数据库的事件是具体的,在创建触发器时要 ...
- oracle触发器 触发事件,oracle 触发器的种类和触发事件
oracle触发器的种类和触发事件,DML触发器,DDL事件触发器,替代触发器,查看触发器 触发器的种类和触发事件 触发器必须由事件才能触发.触发器的触发事件分可为3类,分别是DML事件.DDL事件和 ...
- Unity中,实现鼠标点击物体,触发事件
对于UI,很容易能够实现鼠标点击,从而触发事件,但是对于游戏中的物体,则需要多进行一些操作. 原理很简单,就是由鼠标点击处发射线,与游戏物体发生碰撞,碰撞到的物体,就是你点击到的物体.具体操作如下: ...
- [unreal4入门系列之十四] 在UE4中添加碰撞触发事件
一.在HUD中显示消息 1) 在MyHUD.h中定义一个结构来表示我们的消息: #pragma once #include "GameFramework/HUD.h" #inclu ...
最新文章
- springmvc的执行流程_springmvc执行流程
- Javascript let和const
- CS-- WebService、 windowsService
- errgroup 分析
- Eureka缓存机制
- Centos重置root密码
- php curl 417,PHP Curl 417 Expectation Failed解决办法
- IM云通信行业步入快车道,融云或将和Twilio一样实现资本上市
- 保留两位小数除法算式_小数除法计算题100道
- 【预测模型】基于天牛须算法BAS优化BP神经网络实现数据预测matlab代码
- JavaScript网页特效范例宝典pdf
- 华硕主板开机提示按F1怎么办?华硕主板开机提示按F1的解决方法
- python 爬虫 ip池维护思路
- MySQL时间函数总结
- Redis笔记基础篇:6分钟看完Redis的八种数据类型
- phpBB 2.06漏洞
- 关于微信公众号回复消息乱码的问题
- 条码标签编辑软件如何选择?
- 离线强化学习论文学习 Critic Regularized Regression
- 【学术素养】做学问,你必须脚踏实地,一步一步去寻找未知,没有捷径可走
热门文章
- 第一次学游泳技巧_初学者第一次下水需要注意哪些情况,新手学习游泳需要掌握什么技巧,适合的游泳装备有哪些...
- 【面试总结】涵盖1-3年Java程序员必须精通的面试技巧
- dns配置异常怎么修复_dns异常怎么修复【详细介绍】
- SAP 使用BDC的一些心得
- iOS描述文件(.mobileprovision)一键申请
- 移动硬盘无法访问设备未就绪资料找到的法子
- 高等数学笔记:留数法
- Python用 matplotlib 工具包来绘制世界地图
- python微信转账记录_python 处理微信对账单数据的实例代码
- 秦小明推荐书单+豆瓣金融TOP12 金融书籍