虚幻引擎UEUE5 阴影异常与优化

Posted 灵境引路人

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了虚幻引擎UEUE5 阴影异常与优化相关的知识,希望对你有一定的参考价值。

一、消除阴影锯齿

异常效果:
模型锯齿状阴影。
解决方案:
① 确定打开虚拟阴影贴图。

虚拟阴影贴图(VSM)是一种全新的阴影贴图方法,可以提供稳定的高分辨率阴影。通过与虚幻引擎5的Nanite虚拟几何体、Lumen全局光照和反射以及世界分区功能结合使用,它能够实现电影级的品质效果,并为大型开放场景打光。具有以下优势:
1 显著提升阴影分辨率,以便配合拥有高度细节内容的Nanite几何体
2 以合理、可控的性能开销,获得真实的柔和阴影
3 提供一个简单解决方案,能够默认使用,并且只需少量的调整工作
4 避免混用各种静态光照阴影技术,取而代之的是一个单一、统一的方法

② 游戏质量预设调整。

二、消除网格体异常阴影斑点

异常效果:
网格体阴影异常。
解决方案:
方法1:光线追踪阴影设置改为禁用或项目设置

方法2:控制台关闭双面投射阴影
光线追踪阴影为启用(默认值)
在控制台输入 r.RayTracing.Shadows.EnableTwoSidedGeometry 0
(关闭双面投射阴影,该方法不适用于需要投射单面阴影的情况)

原因:光线追踪阴影不会追踪实际的Nanite网格体,光线追踪阴影只踪我们Nanite的后备网格体(代理网格体)

方法3:异常网格体对象的后备网格体的回退相对误差设置为0
光线追踪阴影为启用(默认值);双面投射阴影为启用(默认值)

设置静态网格体的后备网格体的回退相对误差设置为0

可以在这里查看静态网格体的后备网格体:

三、消除动态变化深色浮动阴影

异常效果:
模型浮动的动态深色阴影。
解决方案:
检查源数据。
可能源于原始数据的法线或UV异常,以及单面渲染的问题。
打开材质双面可以解决部分法线异常问题。
排查问题模型的方法是:将部分模型移动到其他区域,二分法排查阴影是否正常。
提升效率的方法:即时渲染未构建光照时的阴影(建议仅在排查过程中开启,用后关闭)

四、优化不够精细的阴影

异常效果:
树影,房屋影子不够精细,呈粗块状。(优化前后效果图)

解决方案:
① 修改目标对象的光照贴图分辨率,调整至合适的值。
② 修改地形的静态光照清晰度。

五、全局调整阴影柔和度和连续度

优化目标:
调整阴影的柔和度
更柔和/更锐利
以及需要连接不连续的阴影

实现方案:
找到场景中的光源,搜索shadow,调整以下参数到适合的位置。

本文参考的视频:

《修复UE5中的丑陋阴影问题(中文精翻)》(另见 → 英文原版地址
《如何修复lumen阴影》
《如何解决大块的阴影问题!》

拓展阅读:

《UE5 虚拟阴影贴图 (VirtualShadowMaps)的优势和局限性》

虚幻引擎UEUE5仅需5个步骤快速实现AR项目调试与打包(安卓篇)

【虚幻引擎UE】UE5仅需5个步骤快速实现移动端AR项目调试

1.确保VS环境符合要求
到控制面板找到安装程序点击更改→修改。

以下是我自己确认可用的勾选。

2.安装JAVA环境,Android SDK,AndroidNDK并配置相关参数。

推荐参考:
JAVA SDK:https://blog.csdn.net/xhmico/article/details/122390181
AndroidSDK:https://blog.csdn.net/weixin_44350205/article/details/119233809
AndroidNDK:https://blog.csdn.net/m0_62167422/article/details/120557692

//注意一定按下述版本安装否则会报错
Anroid SDK 11
Anroid NDK 21

**

单独下载好NDK 21放在这个路径下

3.创建项目。
本次使用5.03虚幻引擎版本
这里可能遇到的问题:
5.03版本从5.02更新以后无法创建除了空白项目以外的模板项目
修复方法:在EPIC启动器,点击选项,可以看到已经安装的内容,把模块和功能包那几个没勾的勾上,让它自动补全,就可以啦。
另外需要用到Android模块,也给它勾上补全。

选择手持式AR应用,创建项目。
4.打开项目设置,拉到Android界面下方找到配置,点击立即配置。
(1)开启基本配置


(2)编程环境配置

(3)确认调试手机支持64位

(4)最低支持版本(根据自己的需要修改)

(5)平台确定

(6)设置输入传感器

5.启动运行
注意手机正常连接,开启开发者模式,选择允许文件传输模式。
以下是正常运行的控制台结果。

本文参考视频:https://www.youtube.com/watch?v=WNwDftQtrp4(需科学上网)

*6.需要稍微注意的几个地方:
(1)确认AR插件均被使用(使用AR模板不需要更改)

(2)确认选择的是AR模式(使用AR模板不需要更改)

PS: 关于打包

参考文章:https://www.pudn.com/news/628f8298bf399b7f351e34d5.html

如果要构建发布版本(shipping模式),需要设置keystore,步骤如下:

上面的AndroidWorks安装好以后,执行命令:

keytool -genkey -v -keystore my-release-key.keystore -alias alias_name
-keyalg RSA -keysize 2048 -validity 10000

执行时会让你输入一系列参数,这些参数记好,等会需要在UE4编辑器中设置。执行命令时cmd当前选中的是哪个目录,那么生成出来的keystore就在那个目录下,windows10 默认在这个路径:C:\\Users\\你的用户名\\

执行完毕后会在当前cmd目录下生成一个.keystore文件,然后将这个文件拷贝到“工程名/Build/Android”目录下,然后在工程设置里面设置下之前命令中输入的参数,这样即可通过shipping模式打包

参考上文的内容,我用的命令:

keytool -genkey -v -keystore UEkey.keystore -alias UEpackage -keyalg RSA -keysize 2048 -validity 10000

生成结果填写到对应区域:

如果没有google key,打包后会报错,可以勾选这个:

常见错误:

1.如果报错项目路径与本机UE4路径不一致以及Failed to open descriptor file …//…//…//UE4/UE4.uproject
考虑重新生成项目或改为英文引擎。

参考文章1:https://blog.csdn.net/weixin_42132990/article/details/83344068

2.UE LogWindows: Error: Could not find based-on AssetRegistry
参考文章2:https://blog.csdn.net/Tokyo_2024/article/details/102836064

以上是关于虚幻引擎UEUE5 阴影异常与优化的主要内容,如果未能解决你的问题,请参考以下文章

虚幻引擎UEUE5 实现WEB和UE通讯思路(含工程源码)

虚幻引擎UE4/UE5数字孪生与前端Web页面匹配

UE4,UE5虚幻引擎源码版下载

虚幻引擎UEUE4/UE5 功能性插件推荐及使用介绍

虚幻引擎UEUE4/UE5 GIS相关插件推荐及使用介绍

UE4/UE5 虚幻引擎,材质HueShift色相(色调改变)