欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

UE4 制作技巧,优化学习笔记

程序员文章站 2022-07-04 21:03:46
渲染相关的优化建议1,可以使用render doc捕获渲染的信息进行分析2,可以在控制台输入help,获取所有的控制台命令3,Statistic 统计网格4,使用Merge Actor 来合并Actor降低一些网格体和材质贴图5,可以对一些物体使用Forced Lod Model 强制进行Lod6,Detail Mode 来设置细节模型7,级联阴影和距离场的平衡8,定向光源可以设置远阴影,增加第二个级联阴影(被距离场替代)9,针对小型的对象关闭距离场网格体可改善性能10,半透明尽量配合...

世界构建

1,可以将游戏逻辑、音频、光照等划分为不同的子关卡,以实现更流畅,更高效的团队协作。
2,使用LightmassImportance Volume确定需要间接光照细节的场景区域
3,项目需要某个关卡中的光照场景,可以针对不同的光照场景使用不同的子关卡。
4,使用蓝图时间轴节点,在蓝图中制作简单动画

渲染

1,可以使用render doc捕获渲染的信息进行分析
2,可以在控制台输入help,获取所有的控制台命令
3,Statistic 统计网格
4,使用Merge Actor 来合并Actor降低一些网格体和材质贴图
5,可以对一些物体使用Forced Lod Model 强制进行Lod
6,Detail Mode 来设置细节模型
7,级联阴影和距离场的平衡
8,定向光源可以设置远阴影,增加第二个级联阴影(被距离场替代)
9,针对小型的对象关闭距离场网格体可改善性能
10,半透明尽量配合无光照使用
11,可以手动设置光照贴图
12,对于灯光可以设置它的半径,一些翻转啥的,效果相同,但是效率更高
13,Swarm Agent 可以利用局域网进行联机渲染
14,不需要高密度阴影时,或有大量骨骼网格体分组时,应使用胶囊体阴影
15,光照函数是将动画纹理与光照属性组合的推荐方法。
16,距离场网格体AO最适合用于较空旷的环境或室外环境。
17,需渲染距离镜头较远处的阴影时,例如室外环境。推荐使用距离场网格体阴影

动画

1,通过Control Rig可以高效地在虚幻引擎内创建骨架绑定
2,调高LOD将减少骨架中的骨骼数量
3,叠加可以在现有动画上播放动画
4,有两个长度不同的动画,需要将它们混合在一起。使用同步组和同步标记来同步动画以实现平滑过渡
5,动画帧的基本结构是骨架
6,一个骨架可以利用多个骨骼网格体
7,要根据一个变量值混合一组动画,使用混合空间

引擎架构

1,如果需要对一个虚幻引擎项目进行验证测试,你要使用Gaunlet
2,Game sync 用于同步工作站与项目的一项工具

编程

1, 可以把项目拆成多个模块,有利于复用,还有调试方便
2,可以使用Live++ 可以在运行编辑的时候进行编译
3,设计到本地化的东西要是FText
4, 尽量使用插件来扩展引擎
5,对于不需要进行Tick的东西,可以关闭Tick,有些不需要每帧Tick的要修改频率。
6,对于核心的东西尽量放到C++,类似prefab或者一些关卡特有的放到蓝图
7,避免蓝图消耗掉输入事件
8,新建项目最好先用C++建立好游戏框架
9,对于Asset最好在使用的时候加载到内存当中,可以用指针保存引用
10,对于一些Duebug用的方法,最好进行Metadata Specifiers的声明DevelopmentOnly
11,开发的项目中的函数需要在多个actor类型间共享。将该函数放在组件里
12,你的项目有些数据需要在不同关卡的载入之间共享。你会把该数据储存在GameInstance
13,在虚幻引擎项目中创建一个基于C++的资产并将它放入场景时,需要从AActor类开始
14,垃圾回收器会自动寻找完全缺失了引用的对象,并帮助管理项目的内存。

蓝图

1,蓝图就是内容,适合用来作用于内容相关的事情。
2,使用控制台命令dumpticks可以查看所有正在tick的东西
3,可以在有些地方使用timer替代tick
4,使用Isvalid来段是一个对象是否可用,避免一些不必要的错误
5,看蓝图是怎么执行它的节点的,应该使用Logic Visualizer
6,“Bluetility”是用于在虚幻引擎编辑器中创建自建工具和函数的蓝图脚本。

本文地址:https://blog.csdn.net/liuzhimu2018/article/details/110122487