Windows+Colosseum(UE5)配置过程及问题记录

一、概述

        在虚幻引擎的更新中,版本为5的虚幻引擎和版本为4的虚幻引擎所使用的虚幻引擎不一样,导致AirSim无法再UE5中使用,另外的原因是微软没有持续对AirSim进行更新,在github上面目前的项目不支持UE5。后续依旧有人对AirSim项目进行维护,其链接如下。
https://github.com/CodexLabsLLC/Colosseum/tree/mainicon-default.png?t=N7T8https://github.com/CodexLabsLLC/Colosseum/tree/main        这个版本的项目更新了原本的引擎,因而可以UE5中使用。因为我使用的是UE5.3,所以接下来将会说明其在UE5.3下面如何进行配置。

二、具体过程

(一)版本

        虚幻引擎版本为UE5.3,visual studio版本为2022,Windows版本为11。

        下面将进行过程的详细过程,过程稍微有些繁琐。

(二)操作过程

        1.编译main版本的

         (1)概述

        如上图所示,这个版本是进入链接之后的默认版本,但是更多是针对UE5.4版本的,对UE5.3版本不太友好,但改改还是可以运行的,但是会出现这样的问题,其运行结果效果如下面所示。

         导致上面这幅图出现的原因是因为下面这些都是UE5.4下面的,无法在UE5.3中加载。

        但是这个版本依旧是可以编译通过的。

         (2)编译过程

       首先需要用管理员权限进入如图所示的这个。通过终端进入我们刚才下载的文件夹内部,注意要是管理员权限。

        进入下载完成的文件夹,在终端中输入下面的命令,即可开始进行编译。

build.cmd

        这个过程可能会报错,如图所示。

        其问题出现在某个需要参与编译的文件夹无法通过网络进行下载,如图所示,是这个文件夹出现了问题,进入之后会发现,里面都是空的。

 

        问题不大,我们可以直接在网络上下载,链接如下。
GitHub - Panics/Colosseum_EigenContribute to Panics/Colosseum_Eigen development by creating an account on GitHub.icon-default.png?t=N7T8https://github.com/Panics/Colosseum_Eigen

        将下载的文件夹内容放进去即可,重新运行build.cmd之后,会发现编译正常通过。

        (3)与UE5联合

        如图所示,在上面一步编译完成之后,进入这个文件夹内部。

         启动BlockV2.sln文件,进入visual studio 2022中,重新进行编译即可。因为这个版本是UE5.4,生成项目会报错,解决方法是将Source下面两个.cs文件进行修改即可,如图所示。

        其中BlockV2.Target.cs文件修改后如下。

// Copyright Epic Games, Inc. All Rights Reserved.

using UnrealBuildTool;
using System.Collections.Generic;

public class BlocksV2Target : TargetRules
{
	public BlocksV2Target(TargetInfo Target) : base(Target)
	{
		Type = TargetType.Game;
		DefaultBuildSettings = BuildSettingsVersion.V4;
		IncludeOrderVersion = EngineIncludeOrderVersion.Unreal5_3;
		ExtraModuleNames.Add("BlocksV2");
	}
}

         BlockV2Editor.Target.cs文件修改后如下。

// Copyright Epic Games, Inc. All Rights Reserved.

using UnrealBuildTool;
using System.Collections.Generic;

public class BlocksV2EditorTarget : TargetRules
{
	public BlocksV2EditorTarget( TargetInfo Target) : base(Target)
	{
		Type = TargetType.Editor;
		DefaultBuildSettings = BuildSettingsVersion.V4;
		IncludeOrderVersion = EngineIncludeOrderVersion.Unreal5_3;
		ExtraModuleNames.Add("BlocksV2");
	}
}

        有点将其强制降低版本的意思。这样后,出现编译则不会出现报错。 

        (4)问题1

        因为这个项目的针对UE5.4的,即使强制修改文件使其可以通过UE5.3的编译,当运行UE5.3时候,如图所示,提示我们地图的版本太新了,无法加载。

        之后如图所示, UE5.3会崩溃。

        这个问题比较好解决,可以参考如下的方式解决,只需要找到默认的地图设置地方,将地图更改为可以使用的地图即可。

        找到Config文件夹。

         在Config文件夹中找到DefaultEngine.ini文件夹,打开它。

         将最开始两行关于默认地图的设置和游戏模型的设置进行更改即可。

         更改为下面这样,即可正常显示地图。

GameDefaultMap=/Engine/Maps/Templates/OpenWorld
GlobalDefaultGameMode=/Script/AirSim.AirSimGameMode
         (5)问题2

        问题1仅仅是第一个问题,第二个问题是因为,其原本的相机由于版本太高导入不进UE5.3里面去,会导致这样的问题出现。

 

        这个是由于相机模型没有被创建导致的, 注意问题在如图所示红线划出的这个文件当中。

        出现问题的地方有两处,原因都是因为空指针的问题,第一处如下所示。

ASimModeBase::initializeCameraDirector 

        如图所示,由于这里CameraDirector是个空指针,所以会因为给空指针幅值导致报错发生。

         另外还有一处跟这个一样的错误。

         在函数中

ASimModeBase::setupVehiclesAndCamera

        解决方法比较简单,加上对指针是否为空的判断即可,即添加下这句代码,问题即可解决。

if (CameraDirector)

        这里可以需要注意,以后需要特别注意对空指针的处理。

        (6)效果

        但运行出来的效果如下所示。

         试过将低版本的蓝图放进去,但是没啥作用。因而放弃。

        2.编译ue5.3

        (1)概述

        后来在网站上面发现,人家原本就有关于UE5.3的版本,如图所示。

        链接如下,当初没有发现这个。

GitHub - CodexLabsLLC/Colosseum at ue-5.3Open source simulator for autonomous robotics built on Unreal Engine with support for Unity - GitHub - CodexLabsLLC/Colosseum at ue-5.3icon-default.png?t=N7T8https://github.com/CodexLabsLLC/Colosseum/tree/ue-5.3

         (2)编译过程

        跟main版本的编译过程一样,也是运行build.cmd这个文件,没有什么特别的,这里不再过多描述了。

        (3)与UE5联合

        与上面类似,如图所示。在visual studio 2022里面编译Block.sln这个项目。

        假如发生报错,其原因出在插件下面的AirLib文件夹下面,如图所示。 

         解决方法是,因为main版本的没有问题,将其复制过来放到这里即可,也不需要额外的功夫。再次编译即可通过,也可以正常运行,问题解决。

        (4)效果展示

        如图所示,一切正常。

  • 19
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GFCGUO

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值