UE5.4 导航区域出现空洞的一种处理

1. 现象

        使用石板石块等模型搭建一个平台,表面对齐平整。重建寻路,按P键,发现并没有全部覆盖,某个地方有一个洞。

2. 处理

        将出现洞的地方那个模型替换掉,重建寻路,覆盖正常。通过比较发现,出问题的模型底部比较高。最后将这个模型在Z轴缩小,整体变薄,解决了这个问题。

3. 疑虑

        一般认为,寻路都是对表面的路况进行分析处理,路面平整就能通行。这次的问题发现,模型的底部也有可能影响到寻路算法,导致一些异常。

        提供一个参考思路。

10-17
Unreal Engine 5.4 是一款功能强大的游戏开发引擎,以下从使用指南、功能介绍、下载资源方面进行介绍: ### 使用指南 Unreal Engine 5.4 的使用通常从项目创建开始,用户可以根据不同的游戏类型和需求选择合适的模板,如第一人称射击、角色扮演等模板。在场景搭建上,用户可以利用引擎自带的大量模型资源和地形编辑工具来创建丰富的游戏场景。对于角色创建,可借助动画系统和骨骼绑定功能让角色具有生动的动作表现。在代码编写方面,支持 C++ 和蓝图两种方式,C++ 适合实现复杂的游戏逻辑,而蓝图则以可视化的方式降低了编程门槛,方便非专业程序员参与开发。在开发过程中,还可以利用引擎的调试工具来查找和修复问题,确保游戏的稳定性和性能。 ### 功能介绍 - **Nanite虚拟几何体**:这一功能在 5.4 版本中进一步优化,能够处理超高质量的多边形模型,让游戏场景中的物体拥有极其精细的细节,同时保持高效的性能,大大减少了开发者在优化模型方面的工作量。 - **Lumen全局光照**:提供了逼真的实时全局光照效果,使场景中的光影效果更加自然和真实,增强了游戏的沉浸感。并且在 5.4 版本中,其性能和质量都得到了提升,能够更好地适应不同的硬件环境。 - **MetaHuman Creator**:允许开发者快速创建逼真的人类角色,包括面部表情、发型等细节。在 5.4 中,该工具与引擎的集成更加紧密,方便开发者将创建好的角色直接应用到游戏项目中。 - **增强的蓝图系统**:蓝图系统在 5.4 版本中变得更加直观和强大,增加了更多的节点和功能,让开发者可以更轻松地实现复杂的游戏逻辑,同时提高了开发效率。 ### 下载资源 用户可以通过 Epic Games 启动器下载 Unreal Engine 5.4。首先需要在 Epic Games 官网(https://www.epicgames.com/ )注册并下载安装 Epic Games 启动器。打开启动器后,在左侧导航栏中找到“虚幻引擎”选项,然后在引擎列表中选择 Unreal Engine 5.4 进行下载和安装。此外,Epic Games 官方网站还提供了丰富的文档和教程资源,帮助用户快速上手和深入了解引擎的使用。 ```python # 示例代码(仅为示意,非实际 UE5.4 代码) # 假设这是一个简单的 C++ 类在 UE5.4 中实现角色移动逻辑 #include "GameFramework/Character.h" #include "MyCharacter.generated.h" UCLASS() class AMyCharacter : public ACharacter { GENERATED_BODY() public: AMyCharacter(); protected: virtual void SetupPlayerInputComponent(class UInputComponent* PlayerInputComponent) override; void MoveForward(float Value); void MoveRight(float Value); }; AMyCharacter::AMyCharacter() { // 初始化角色属性 } void AMyCharacter::SetupPlayerInputComponent(UInputComponent* PlayerInputComponent) { Super::SetupPlayerInputComponent(PlayerInputComponent); // 绑定移动输入 PlayerInputComponent->BindAxis("MoveForward", this, &AMyCharacter::MoveForward); PlayerInputComponent->BindAxis("MoveRight", this, &AMyCharacter::MoveRight); } void AMyCharacter::MoveForward(float Value) { if (Value != 0.0f) { AddMovementInput(GetActorForwardVector(), Value); } } void AMyCharacter::MoveRight(float Value) { if (Value != 0.0f) { AddMovementInput(GetActorRightVector(), Value); } } ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值