AirSim和UE4的环境配置

关于具体的环境配置网上有很多的资料,之前也配置过这个环境,但是没有好好的整理过,每次遇到问题都是瞎搞,然后莫名其妙的解决了。这次的博客主要是把配置的过程要注意的地方记录一下。1、前提条件cmake3.10.3、VisualStudio2015professionalupdate3、UE4.16.3这是我的机器上的环境,作为参考。2、编译AirSim源码首先要到Air…

大家好,又见面了,我是你们的朋友全栈君。

关于具体的环境配置网上有很多的资料,之前也配置过这个环境,但是没有好好的整理过,每次遇到问题都是瞎搞,然后莫名其妙的解决了。这次的博客主要是把配置的过程要注意的地方记录一下。

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

编译过程中,会下载需要的相关文件,因此最好能科学上网。另外,有几个要注意的地方:

  1. 有人说要手动下载eigen3,并放到AirSim文件夹里面,我觉得是不需要的,官网教程也没有给这一步。编译过程中会自动下载eigen3.
  2. 编译过程中可能会出现一个“中英文双引号”的问题,这是一个bug,自己根据报错的路径找到那个文件,把里面的中文下的双引号改成英文下的就可以了.
  3. 上面的两个命令都是可以的。区别是使用build.cmd编译过程中,会下载一个官方提供的Demo场景,这个过程需要很久。使用第二个命令就不会下载这个场景了,节省时间,之后自己搭建场景也是可以的。

然后如果没有报错的话,应该就是编译成功了。

3、把无人机加到UE4.16.3中的场景中去

  • 创建一个虚拟场景,我创建的场景如下所示。这个场景可以从网上找别人做好的场景,也可以下载UE4官网提供的免费场景,比如LandScapeMountains.

                           AirSim和UE4的环境配置

  • 从“文件菜单”中选择“新建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,确保编译环境如下所示:

                                           AirSim和UE4的环境配置         

  • 按下F5开始编译,编译完成后会触发UE4 Editor,然后你可以自由的编辑场景、添加静态资源等等。

下面重点来了,如何向场景中添加PlayerStart,也就是无人机或者无人车?

  • 在UE4 Editor中找到“玩家起始”,如下图:

                                      AirSim和UE4的环境配置             

  • 把它拖到环境中你想放置的地方
  • 在世界设置中,把GameMode选择为AirSimGameMode
  • 保存当前按钮,点击播放按钮,然后就可以看到无人机了,如下图

AirSim和UE4的环境配置

这就是AirSim、UE4大致的配置过程,大部分都是从官方的教程中翻译过来的,这个东西折腾了两天,导师安排的工作也滞后了。这次终于算是好好的整理了一下。希望能给需要的小伙伴一个参考。

配置好了,可以调用官方提供的api和这个虚拟环境里的无人机通信,拿到它实时拍摄的图像、控制它的飞行等等。微软研发它的初衷也是想把它打造成一个用于无人驾驶研究的平台。

我编译好的源码和UE场景在下面。

https://download.csdn.net/download/llfjcmx/10998339

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/129760.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 计算机网络知识汇总(超详细整理)

    计算机网络知识汇总(超详细整理)为了准备期末考试,同时也是为了之后复习方便,特对计算机网络的知识进行了整理。本篇内容大部分是来源于我们老师上课的ppt。而我根据自己的理解,将老师的PPT整理成博文的形式以便大家复习查阅,同时对于一些不是很清楚的地方,我去查阅了相关资料进行补充,当然也会有部分个人看法夹带其中来帮助大家理解。

  • oracle事务隔离级别_mysql查看事务隔离级别

    oracle事务隔离级别_mysql查看事务隔离级别Oracle事务隔离级别

    2022年10月14日
  • PHP开发WebaPP教程,开发webapp 需要什么技术基础吗? html5 js css3 PHP 除了这些还需要什么?…

    PHP开发WebaPP教程,开发webapp 需要什么技术基础吗? html5 js css3 PHP 除了这些还需要什么?…开发webapp需要什么技术基础吗?或者有没有开发webapp视频教程或者资料求推荐下回复内容:开发webapp需要什么技术基础吗?或者有没有开发webapp视频教程或者资料求推荐下数据库:比如mysqlSQL语言:对数据库编程的语言web容器:比如apache,nginx你还需要了解一些项目管理工具,如maven,svn,git等另外一些基础知识,如http、https协议等话说ap…

  • 京东面板搭建 青龙面板多容器的安装与使用2022年8月22日

    京东面板搭建 青龙面板多容器的安装与使用2022年8月22日系统环境的准备与Docker的安装首先需要准备一台服务器或VPS,当然自家能够安装Docker的路由器也可以,例如N1或OpenWrt等。代挂http://183.56.232.117:5701/下面以Centos为例国内一键安装Dockersudocurl-sSLhttps://get.daocloud.io/docker|shDocker安装(全家桶-推荐)wgethttps://ghproxy.com/https://raw.githubusercon.

  • 一、导航菜单_苹果cms什么导航菜单

    一、导航菜单_苹果cms什么导航菜单一、导航菜单即页面样式,组成很简单,即一个文本输入框<input>和一个搜索图标,这里图标可以自行搜索下载一个,或者像下面一样使用在线图标,全部代码如下:先在<header&gt

  • 简单了解Activity工作流引擎

    简单了解Activity工作流引擎一、什么是工作流以请假为例,现在大多数公司的请假流程是这样的员工打电话(或网聊)向上级提出请假申请——上级口头同意——上级将请假记录下来——月底将请假记录上交公司——公司将请假录入电脑采用工作流技术的公司的请假流程是这样的员工使用账户登录系统——点击请假——上级登录系统点击允许就这样,一个请假流程就结束了有人会问,那上级不用向公司提交请假记录?公司不用将记录录入电脑?答案…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号