UE4
文章平均质量分 59
KylerLiZi
这个作者很懒,什么都没留下…
展开
-
【UE4】FlatShading
Flat Shading(平坦着色)是指单个三角形用单个颜色,不会像Ground Shading或Phong Shading顶点间颜色会进行插值。这样能更好的观察模型上每个三角面的分布。由于DDX、DDY仅在deferred rendering下生效,因而该效果不支持移动端下的forward shading。...原创 2021-10-27 15:25:21 · 1122 阅读 · 1 评论 -
【UE4】刷草后构建光照巨慢,还提示光照贴图分辨率过大的解决办法
问题简单的在地形上刷了不大的一片草后,点击构建光照,居然异常的慢,还有警告提示Light Map Size太大,请降低光照贴图分辨率或是减少草的数量,这就令人很疑惑了,因为Cast Shadow已经关闭了呀。InstancedFoliageActor_0 The total lightmap size for this InstancedStaticMeshComponent was too big and it was automatically reduced. Consider redu原创 2021-09-18 22:25:25 · 4679 阅读 · 0 评论 -
【UE4+Houdini】地形材质效果优化的几种方式(含源工程)
本文节选自自然环境程序化内容生成工具集的设计与实现 —— Github源码,查看Houdini与UE4源工程以及开发文档详见链接,不够专业,仅供参考。目录4.1隐藏纹理重复感4.1.1 Distance Tilling技术4.1.2 Macro/Micro Variation Tilling技术4.2 纹理拉伸处理4.3 纹理采样数量优化4.4 距离控制曲面细分4.5材质函数实现4.1隐藏纹理重复感Quixel Megascans上扫描真实环...原创 2021-07-26 15:03:49 · 4517 阅读 · 3 评论 -
【UE4】PMC程序化生成戈德堡多面体详解(六边形星球)
游戏实机录屏【魔方超新星】30天独立开发PCG Minigame《盖亚计划》作品展示,尚有不足,大佬轻喷目录游戏实机录屏一、简介二、设计思路2.1 Disco Ball2.2 Fibonacci Sphere2.3 Goldberg Polyhedron2.3.1 细分+对偶(最终方案)2.3.2 对偶+截角(更优)三、参考文献一、简介在制作Minigame初期,游戏风格想模仿《文明6》与《Polygonal Planet Proje...原创 2021-07-16 17:43:44 · 4701 阅读 · 1 评论 -
【UE4】多视角相机捕获图像如何同屏拼接在一起
前段时间有个Demo移植的需求,需要把实时裸眼3D多视角立体显示的Unity版本移植到UE4,主要包含后处理Shader、相机矩阵变换、多视角画面平铺拼接三大部分。对现有的多窗口显示方法进行查阅后,发现主要有Multiplayer与Render Target+UI两种实现思路,由于需要采集的视角数量多、后处理Shader必须作用在拼接的图像上,最终选择了后一种。一、Multiplayer(存在局限性)首先在项目设置中开启Use SplitScreen选项。通过添加多个Player,结合S原创 2020-11-07 20:38:09 · 7298 阅读 · 6 评论 -
【UE4 Packaging】压缩包体大小
官方文档针对安卓包大小压缩与优化有详细的描述,“控制 APK 包的容量 — Unreal Document”,大多数PC也同样适用。在尽量避免导入与项目无关的资源的情况下,我的Minigame包体大小也达到了800M之大,通过优化处理将大小压缩到了160M,现将所采取的措施总结如下。1.项目设置1.1 共享材质着色器代码&共享材质本地库勾选“Project Settings -> packaging -> Share Materail Shader Code &原创 2020-09-16 17:28:30 · 4109 阅读 · 2 评论 -
【UE4】后处理制作马赛克效果
材质节点制作原理就是将图像UV放大,作Floor运算再除回去,这样会得到非线性插值的UV值。效果未开启后期开启后期原创 2020-07-17 20:51:56 · 1684 阅读 · 0 评论 -
【UE4 图形学】材质Shader中尽量避免使用if,能够提升性能的原因
原因GPU的warp内部是按照SIMD(Single Instruction Multiple Data)单指令多数据流模式执行的,也就是说同时只能处理一条指令,当出现分支指令时,只能先执行True的指令,再执行False的指令,这样导致的指令串行执行现象叫做Branch Divergence,它会影响GPU并行化处理的执行效率,降低程序性能。在Shader中使用if往往就会导致分支指令的出现,因而如果能通过其他手段,常用方式是使用其他的内置指令替代if,就能做到性能优化。举个栗子:...原创 2020-07-10 14:27:44 · 2009 阅读 · 0 评论 -
【UE4+Houdini+Bridge】程序化地形生成和野外植被撒点工具制作思路
附上B站:最终效果图HDA可调参数展示二、制作步骤这里仅将最终的制作思路作讲解,期间零碎的测试不再赘述。2.1 Houdini制作步骤2.1.1 地形创建通过学习与研究,我决定采用擅长制作程序化地形的Height Field节点,在该领域花费了较多的时间,首先创建一个默认大小的Height Field高度图区域,大小刚好是题目要求的1k x 1k。Grid Spacing网格上两点之间的距离,相当于这块高度图的分辨率大小,设置为2。使用Height Field No.原创 2020-05-19 15:52:02 · 10601 阅读 · 6 评论 -
【UE4 Material】在CustomNode中编写自定义函数并调用
Custom一般情况下,Custom节点不能添加自定义函数,因为它本身就是一个函数,只需要写好返回值即可。其对应的HLSL源代码如下MaterialFLoat3 CustomExpression0(FMaterialPixelParameters Parameters){ return float3(0.0f,1.0f,0.0f);//节点中的内容}自定义函数及调用如果你想定义多个自定义函数,做成一个类似库文件的节点,那么就需要添加 "return 1;}"使Cust.原创 2020-05-08 18:44:08 · 3713 阅读 · 1 评论 -
【UE4 优化】使用“Actor合并”合批优化性能
更新说明4.22+版本引擎进行了更新,不再需要开发者手动进行合批。Actor合并对渲染有所了解的小伙伴一定知道,渲染耗时的瓶颈在于cpu频繁的向gpu发送数据,因此减少Draw Call的提交次数能够有效的提升性能。《Unity Shader 入门精要》中提到了减少Draw Call的两种方式:避免使用大量很小的网格。当不可避免地需要使用很小的网格结构时,考虑是否可以合并它们。...原创 2020-04-19 17:02:10 · 7439 阅读 · 1 评论 -
【UE4】如何判断是否勾选Custom Depth Pass
首先,Render CustomDepth Pass选项位于Rendering模块中。准备新建材质,更改Material Domain为Post Process。在关卡中放入后期处理盒子(Post Process Volume),勾选Unbound,设置处理范围关卡中的所有内容。添加刚才新建的材质到Post Process Materials数组中。关键...原创 2020-02-26 17:42:39 · 1701 阅读 · 0 评论 -
【OpenGL C++ UE4】获取模型顶点及面索引数据,并优化存储结构供UE4绘制
目录一、功能需求二、成果三、环境配置四、详细步骤4.1Max制作三棱锥并处理4.2 核心代码4.2.1 传入结构体数据4.2.2 顶点去重、更新索引4.2.3 输出本地CSV文件一、功能需求想必你肯定会问我一个问题,UE4直接导入模型不好么?哈哈,前提是在做毕设时,导师提供的只有顶点与面索引数据,没有模型。下文详细介绍了毕设开发中的难点,涉及三...原创 2020-02-24 17:44:53 · 5640 阅读 · 0 评论 -
【UE4 C++】由点面数据,批量绘制ProceduralMesh并转化为StaticMesh资产
创建继承自Blueprint Function Library类的C++文件原创 2020-02-23 23:01:10 · 10889 阅读 · 17 评论 -
【UE4】如何彻底删除创建项目时添加的StarterContent(初学者内容包)
最近为了上传一个Demo到Github,由于StarterContent中有好多未引用的资源,占用600MB上传速度慢下载也慢,就想删除掉。结果无论在文件夹中还是资源浏览器中删除,再次打开项目又会重新生成初学者内容包。解决办法打开项目,在内容浏览器中删除StarterContent,然后右键最上级内容,选择修复文件夹中的重定向器,即可。...原创 2020-02-21 19:50:50 · 6051 阅读 · 0 评论 -
【UE4 附源工程】GGJ 2020极限48小时开发的逆向解谜游戏
GGJ 2020的主题是Repair我是团队队长研一在读栗子,负责程序、搭建整体逻辑并对所有同伴制作的资源在UE4中进行整合。GGJ:官方展示作品地址B站:游戏录屏与玩法解说Github源工程下载:https://github.com/ColorGalaxy/UE4-GGJ2020-SLUOS-KRAD游戏简介:《SLUOS KRAD》是一款逆向解谜游戏,你将扮演...原创 2020-02-21 00:08:47 · 1105 阅读 · 0 评论 -
【UE4 附源工程】VR直升机模拟飞行与轰炸制作流程
游戏简介:课程设计作品:基于UE4 4.23的VR直升机飞行真实模拟与导弹发射与爆炸仿真通过WASD控制水平方向移动,空格与Ctrl键控制垂直方向移动B站录屏展示:https://www.bilibili.com/video/av88606797Github源工程下载:https://github.com/ColorGalaxy/UE4-VR-Helicopter-Bomb-Sim...原创 2020-02-13 16:20:15 · 1690 阅读 · 1 评论 -
【UE4 Animation】动画编辑器制作倒放动画效果
原动画倒播动画如何制作最近使用动画编辑器倒播录制了一个箱子爆炸的动画,达到了物体复原的魔法效果。在动画编辑器中打开箱子爆炸动画,下方点击快退即可看到动画已经倒播了。点击录制,选择新建的资源路径。录制到想要的动画片段后,再次点击停止录制。打开刚录制的新动画资源后,通过下方的关键帧编辑界面可以删除重复或者不想要的关键帧片段,由此得到的就是倒播动画。...原创 2020-02-04 15:43:00 · 4664 阅读 · 2 评论 -
【UE4】打包后没有声音的解决办法
正确的播放音效方式(编辑器/打包均有声音)将你的音乐.wav文件放在你的项目/content/目录下,编辑器中会弹出导入将它转化为一个.uasset文件。。文件夹中显示应该是这样的工程中显示应该是这样的在需要播放音乐的时候调用这个函数添加Audio组件即可。错误的播放音效方式(编辑器有/打包无声音)使用媒体播放器+文件媒体源播放本地.wav文件,这样打包后...原创 2020-02-03 16:43:34 · 2640 阅读 · 0 评论 -
【UE4】打包后的exe可执行文件打开没反应
最近参加了GGJ 2020,最后提交Realease可玩程序时,在UE4中打包项目成功打包,但是得到的exe打开一直没反应打不开,不弹出游戏。最后找到了问题所在:最初项目名为GameJam.uproject,结果想把项目名字改成游戏名,就改成了SLUOS KRAD.uproject,带了一个空格,所以即使打包成功,打包出来的程序也是有问题的。最后直接把.uproject改了回去,再打包,就...原创 2020-02-03 16:11:07 · 7556 阅读 · 2 评论 -
【UE4 Blueprint】ProceduralMeshComponent绘制自定义模型并转为StaticMesh
已知每一个三角形(primitive)中的三个顶点v0,v1,v2(依次按进入的先后顺序排列)位置, 那么:normal = normalize(cross((v1-v0), (v2-v0)));原创 2020-01-27 13:27:23 · 8538 阅读 · 1 评论 -
【UE4】截取当前场景视角的高分辨率图像
保存路径自动保存在你的项目的“../Saved/Screenshots/Windows”该路径下。简单截图按下F9即可截取UE4当前画面中的图像,图像大小是显示器的分辨率大小。编辑器:截取关卡视口画面。运行时:截取整个引擎界面。高分辨率截图位于视口选项中,内置了高分辨率截图的工具。可以输出更高倍率的分辨率图像,比如全屏下1倍截图是2k,那么2倍就是4k。...原创 2020-01-09 17:59:19 · 9804 阅读 · 0 评论 -
【UE4】为了让Text Render显示中文,制作一个中文字体
效果默认的字体显示中文制作的字体显示特定中文一、新建字体二、选择Font Cache Type为Offline模式,选择字体参数三、在Chars中输入想要显示的中文字体,重新导入更新字体四、创建字体材质,赋给Text Render Component下图中Text的字必须是自己制作的字体中的字...原创 2020-01-07 00:53:40 · 5397 阅读 · 2 评论 -
【UE4】解决设置角色/相机Rotation无效的方法
无效节点原因角色/相机均是由它的Controller控制的,因此我们要更新它的旋转时,更新的是Controller的而不是Character的。方法通过Player Controller能得到Set Control Rotation进行更新角色的旋转,而位置继续使用Set Actor Location即可。...原创 2019-12-27 19:03:55 · 3723 阅读 · 4 评论 -
【UE4 Plugin】5个必备的蓝图插件,极大提高开发效率
整理自B站视频[UE4]5个必备的蓝图编辑器工具 插件,改善工作流程,减少时间(大部分免费都在库里)Node Graph Assistant——虚幻4蓝图助手功能超多超强大的蓝图助手,可参考制作者的Github使用说明,本文中唯一官方商城收费的插件,但也可在作者Github上免费下载。现将本人认为好用的功能记录如下,制作者的Github内附动图更容易理解:Alt+R:自动排列小...原创 2019-12-27 14:59:18 · 14238 阅读 · 2 评论 -
【UE4】射线检测获取屏幕中心位置与制作瞄准准星
射线检测通过获取屏幕的中心点二维坐标,将其转换为三维世界坐标系,即可利用射线检测得到想要的数据。准星材质制作一个简单的圆形材质,也可使用十字准星贴图制作。在HUD中绘制新建一个继承自HUD的蓝图,创建如下节点,并将世界设置中的HUD Class更改为自己创建的。...原创 2019-12-27 12:14:54 · 6682 阅读 · 2 评论 -
【UE4】避免与解决UE4一启动就崩溃的Engine.ini配置方法
总结自B站——[FestEurope2019] 蓝图深入探讨 | Blueprints In-depth (官方汉化)讲解的内容之前本人也遇到过蓝图中不小心写了一个BUG,不小心先点了保存再点的编译,导致工程无法启动,一打开就崩溃,就只能删除蓝图重新连了,现在找到了解决办法。将../Saved/Config/WindowsEngine.ini文件中的bRecompileOnLoad设置为...原创 2019-12-18 17:24:24 · 15752 阅读 · 3 评论 -
【Houdini+UE4】Normal节点实现平滑组效果、解决HDA导入UE4硬边感过强
制作的程序化栏杆在Houdini中表面很平滑,结果生成HDA文件导入UE4后,发现模型硬边感太强,没有类似3dsmax的平滑组进行边缘过渡。添加Normal节点调节Cusp Angle让边缘平滑过渡,可以解决该问题,对比下图修改效果。Cusp Angle角度值为0Cusp Angle角度值为60...原创 2019-12-11 00:42:23 · 4754 阅读 · 0 评论 -
【Houdini+UE4】HDA文件导入UE4配置教程、绑定参数并能够实时调整
效果展示UE4中对hda格式的pcg模型实时调整目录效果展示一、Houdini创建HDA1.封装Subnet2.创建HDA文件与导出参数绑定二、UE4中的配置1.将HoudiniEngine插件复制到引擎目录2.开启HoudiniEngine插件3.导入HDA文件三、导入失败的解决方案一、Houdini创建HDA1.封装SubnetHou...原创 2019-12-11 00:18:41 · 10297 阅读 · 9 评论 -
【UE4 AI】AI Move To寻路转向时解决突变、使得平滑过渡的方法(含C++)
目录修改效果对比问题阐述蓝图解决设置C++解决设置修改效果对比修改前存在突变修改后存在过渡(参数可调)问题阐述通过观察NPC的寻路不管使用 行为树的Move To任务节点还是蓝图中的AI移动到节点,在寻路目标点与当前NPC朝向角度存在差距时,都会有明显的旋转突变,速度过快导致角色瞬间转向下个目标点的方向,使得动画十分突兀。即使通过控制台命令Slomo 0...原创 2019-11-27 00:36:56 · 12966 阅读 · 9 评论 -
【学习笔记】Unreal Engine 4 虚幻引擎蓝图中级教程物理碰撞教程
教程链接:Unreal Engine 4 虚幻引擎蓝图中级教程物理碰撞想共享的小伙伴可以E-mail我:lxbcolorgalaxy@qq.com目录第一章 常见的物理现象及分析1蓝图模板中的物理现象2创建子弹抛射3自动追踪4碰撞事件5纯物理模拟子弹第二章 碰撞体1简易碰撞体2DOP碰撞体3凸面碰撞体4567UBX导入碰撞体8从其他模型复...原创 2019-02-24 12:01:58 · 5346 阅读 · 1 评论 -
【UE4】如何使用Edit Scripting Utilities在蓝图中为大量静态网格体设置自动凸包碰撞
官方英文文档官方中文文档(会少一些内容)如图可为静态网格体添加简单碰撞,但如果需要在同一个项目中设置大量静态网格体对象时,将其逐一打开设置可能并不现实。你可能希望在用于导入和管理内容的较大自动化流程中一步完成这些碰撞设置。1.首先开启UE4自带的插件Edit Scripting Utilities2.新建派生自Editor-only类的蓝图,例如PlacedEditorUt...原创 2019-03-26 17:23:53 · 3544 阅读 · 1 评论 -
【UE4】导入FBX格式的模型至UE4
转载自 https://blog.csdn.net/qq_33483344/article/details/80938161 在三维软件制作模型后,为了方便在引擎中能有效的编辑,我们需要注意以下几点:1.单位统一在UE4中,默认单位是CM,所以在使用max等三维软件开始制作之前,请先确保软件的单位与UE4的单位相匹配,并且导入FBX时单位选择cm即可2...转载 2019-03-23 19:30:25 · 6708 阅读 · 0 评论 -
【UE4】如何把Excel数据导入数据表格DataTable以及使用方法
1、新建Excel表格并存入数据,第一列存放递增编号构成索引,并将该Excel格式保存为.CSV格式(数据用英文逗号,隔开,保存为csv格式时会自动识别为列分隔符)2、新建结构体,添加与Excel中相对应的列名称变量3、拖入Excel.csv文件到内容浏览器,选择对应的结构,导入成功4、在蓝图中调用表格数据附加:也可以用括号()来创建有数组元素的数据表格...原创 2019-03-27 22:54:35 · 8457 阅读 · 1 评论 -
【UE4】RenderTarget+SceneCapture2D实现实时投屏效果
一、在场景中拖入一个Scene Capture 2D组件,类似一个摄像机二、新建RendterTarget(渲染目标)材质三、选中场景中的组件——细节中设置Texture Target为刚刚新建的渲染目标四、创建一个材质球,将它赋在一个平面上实现最终效果...原创 2019-04-08 13:11:22 · 8615 阅读 · 0 评论 -
【UE4】万向锁现象及解决方法
通常,存在物体坐标系和世界坐标系,当物体绕Y轴转动90度以后,物体坐标系的X轴和世界坐标系的Z轴就变成了同一个轴。此时,就产生了万向锁现象。万向锁产生的原因不是欧拉角也不是旋转顺序,而是我們的思维方式和程序的执行逻辑没有对应,也就是说是我们的观念导致这个情况的发生。如上在相机上添加两个scene空节点,按如下控制相机移动就可修正万向锁。沿Y轴旋转对CineCamera进行操作...原创 2019-04-10 20:23:39 · 4431 阅读 · 3 评论 -
【UE4 Download】Epic导入本地离线版本详细步骤[附图](更新至4.23版本)
更新最近离线安装最新4.23版本,突然发现之前的办法不适用了,如果关闭Epic平台安装会被取消。因此,研究出了新的方法,只需将下面之前的4.20版本安装方法的第三步变更为如下第三步即可。3、打开任务管理器,结束Epic任务进程。然后不再删除刚下载部分内容的文件夹,而是将事先下载好的完整引擎直接粘贴在该文件夹内,再次打开Epic,成功!!!红色框选的是刚下载生成的文件夹,绿色框...原创 2018-07-14 15:44:32 · 33542 阅读 · 1 评论 -
【UE4 Blueprint】使用射线检测在鼠标点击处生成物体
一、首先设置鼠标显示二、生成一条从相机到鼠标点击位置方向的射线,在碰撞到的第一个Location生成Actor类相同的逻辑,也可以不使用射线生成物体,但鼠标在屏幕的点击处是一个二维坐标,你需要自定义第三维的距离参数,比如下图是在相机前方距离为100的点击处生成。同时,这是一个简易的获取鼠标点击对象的方法...原创 2019-04-20 15:39:14 · 6822 阅读 · 0 评论 -
【UE4 Material】使用材质节点TexCoord偏移、缩放UV
参考博客https://www.jianshu.com/p/be4d90163483https://blog.csdn.net/qq_36282052/article/details/72425618最下方自我实现总结TextureCoordinate解决什么问题在之前的文章中,我们知道材质是按照每个像素计算的。如果把一张图片,贴到物体表面,那么材质系统如何把图片上的点对应...原创 2019-05-08 22:56:41 · 14206 阅读 · 0 评论 -
【UE4 Material】使用材质UV偏移实现视频切割
最终效果图使用UV偏移实现Instance Static Mesh中的实例使用同一材质球播放不同片段的视频/图片增大间隔,分开四块Plane模型效果(简便方法)一、设置材质球中的TexCoord节点的UV缩放值 比如我们想要该模型的UV占比水平竖直各缩放一半,就可设置如下参数,结果同(旧方法一)(旧方法比较复杂)一、在3dsMax中,制作一个UV占播放大屏四...原创 2019-05-10 20:27:14 · 3076 阅读 · 4 评论