UE5 帧数优化思路

A、思路

1、直接在GM的事件beginplay中改可延展性相对质量级别,

改为1或2,最简单粗暴的方式,而效果明显,帧数提高一倍,GPU占用率与显存占用直接下降一大截。在物体密集的地方卡顿会缓解很多,物体少的地方则帧数直接起飞。

默认是0,过场动画级别,1为极高,2为高,3为中,4为低。

相对质量级别关系到画质的各个方面,如视野距离、地形、植物;阴影、全局光照、反射;纹理、特效、着色、后期处理、抗锯齿。

默认是用最高级别画质,所以画质最高而帧数低。

4的帧数最高,但画面不忍直视。

2、修改地形层的LOD

LOD最大等级-1改为1,最多为9-此时画质最低,

LOD分布最近分区大小3改为2或1.5,最低为1,

启用Nanite,取消部分阴影。

实质都是减负,降低当前视口中显示的内容量。

对GPU负载也有较明显的影响,能降低一截。

3、修改植被密度

草、树等装饰物的默认密度都很高,还有风力影响而摆动等,好看而影响性能。

密度降到1/10,效果立竿见影。

B、参考图

### Unreal Engine 手游在安卓平台上实现画质调节的方法 #### 1. 使用质量设置菜单 为了使玩家能够在不同设备上获得最佳体验,可以在游戏中集成一个可调整的质量设置菜单。这允许用户根据其设备性能手动选择不同的视觉效果级别。 通过编辑器中的`Project Settings -> Engine`部分下的Quality Level选项卡来定义多个预设级别的图像质量和特效强度[^2]。这些等级通常包括但不限于: - **低 (Low)**: 减少阴影投射者数量、降低纹理分辨率等。 - **中 (Medium)**: 提供平衡的画面表现,在大多数现代智能手机上运行良好。 - **高 (High)**: 启用更多高级渲染特性如环境光遮蔽(AO),更高的材质细节等等。 ```cpp // C++代码示例:动态切换品质模式 void AMyGameMode::SetGraphicsQuality(int32 QualityIndex) { UWorld* World = GetWorld(); if (!World) return; // 获取当前世界的视图目标 APlayerController* PC = UGameplayStatics::GetPlayerController(World, 0); // 设置新的图形质量指数 GEngine->Exec(World, TEXT("r.SetRes ...")); // 假定命令用于改变分辨率或其他参数 } ``` #### 2. 动态适应硬件能力 除了让用户自己设定外,还可以让应用程序自动检测并响应终端的能力水平。Unreal提供了API接口帮助开发者获取有关CPU/GPU的信息,并据此做出相应调整。 例如,可以通过查询GPU型号或内存大小等因素决定开启哪些功能;当发现资源紧张时,则临时关闭某些耗电较大的特性直到情况改善为止。 #### 3. 利用平台特定优化技术 针对Android系统的特殊需求,采取针对性措施提高效率的同时不影响整体美观度。比如利用Adreno Profiler工具找出瓶颈所在并对症下药;或是采用ARM Mali GPU特有的扩展指令集加速计算过程。 另外值得注意的是,随着Epic Games官方团队持续改进引擎本身及其对移动操作系统的兼容性支持,未来可能会有更简便的方式来进行此类配置管理。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值