作者:mobiledu2502885853 | 来源:互联网 | 2023-09-25 12:30
关于具体的环境配置网上有很多的资料,之前也配置过这个环境,但是没有好好的整理过,每次遇到问题都是瞎搞,然后莫名其妙的解决了。这次的博客主要是把配置的过程要注意的地方记录一下。1、前
关于具体的环境配置网上有很多的资料,之前也配置过这个环境,但是没有好好的整理过,每次遇到问题都是瞎搞,然后莫名其妙的解决了。这次的博客主要是把配置的过程要注意的地方记录一下。
1、前提条件
cmake 3.10.3、Visual Studio 2015 professional update 3、UE4.16.3
这是我的机器上的环境,作为参考。
2、编译AirSim源码
首先要到AirSim的github主页上下载AirSim源码,要注意的是下载AirSim-1.1.10才能和UE4.16.3搭配使用。这是官方给的说明,至于能不能和其他的版本搭配,我没有尝试过。下载完后解压。编译过程如下:
打开“VS2015 x64本机工具命令提示符”(类似于win上的cmd),然后进入到AirSim的文件夹,用下面的命令编译:
build.cmd/build.cmd --no-full-poly-car
编译过程中,会下载需要的相关文件,因此最好能科学上网。另外,有几个要注意的地方:
- 有人说要手动下载eigen3,并放到AirSim文件夹里面,我觉得是不需要的,官网教程也没有给这一步。编译过程中会自动下载eigen3.
- 编译过程中可能会出现一个“中英文双引号”的问题,这是一个bug,自己根据报错的路径找到那个文件,把里面的中文下的双引号改成英文下的就可以了.
- 上面的两个命令都是可以的。区别是使用build.cmd编译过程中,会下载一个官方提供的Demo场景,这个过程需要很久。使用第二个命令就不会下载这个场景了,节省时间,之后自己搭建场景也是可以的。
然后如果没有报错的话,应该就是编译成功了。
3、把无人机加到UE4.16.3中的场景中去
- 创建一个虚拟场景,我创建的场景如下所示。这个场景可以从网上找别人做好的场景,也可以下载UE4官网提供的免费场景,比如LandScapeMountains.
- 从“文件菜单”中选择“新建c++类”,类名保持默认就可以,这一步会触发VS2015,并打开解决方案UE4_Project_name.sln
- 把编译好的AirSim文件夹下的Unreal/Plugin文件夹copy到UE4场景的根目录底下。对Plugin多做一些解释:Plugin就相当于是一个无人机/无人车的插件,我们可以自由的将其导入到自己创建的场景中的任何地方。
- 用记事本编辑UE4_Project_name.uproject,内容如下:
{
"FileVersion": 3,
"EngineAssociation": "4.16",
"Category": "",
"Description": "",
"Modules": [
{
"Name": "Stitch_Online_Cars",
"Type": "Runtime",
"LoadingPhase": "Default",
"AdditionalDependencies": [
"AirSim"
]
}
],
"TargetPlatforms": [
"MacNoEditor",
"WindowsNoEditor"
],
"Plugins": [
{
"Name": "AirSim",
"Enabled": true
}
]
}
- 关键”Visual Studio 2015″和”UE4 Editor”,右键点击UE4_Project_name.uproject,选择”Generate Visual Studio project files”
- 重新打开UE4_Project_name.sln,确保编译环境如下所示:
- 按下F5开始编译,编译完成后会触发UE4 Editor,然后你可以自由的编辑场景、添加静态资源等等。
下面重点来了,如何向场景中添加PlayerStart,也就是无人机或者无人车?
- 在UE4 Editor中找到“玩家起始”,如下图:
- 把它拖到环境中你想放置的地方
- 在世界设置中,把GameMode选择为AirSimGameMode
- 保存当前按钮,点击播放按钮,然后就可以看到无人机了,如下图
这就是AirSim、UE4大致的配置过程,大部分都是从官方的教程中翻译过来的,这个东西折腾了两天,导师安排的工作也滞后了。这次终于算是好好的整理了一下。希望能给需要的小伙伴一个参考。
配置好了,可以调用官方提供的api和这个虚拟环境里的无人机通信,拿到它实时拍摄的图像、控制它的飞行等等。微软研发它的初衷也是想把它打造成一个用于无人驾驶研究的平台。
我编译好的源码和UE场景在下面。
https://download.csdn.net/download/llfjcmx/10998339