fwalker 发表于 2021-4-30 05:26

airsim系列(二) - 浏览游戏中的美景(CV mode)

配置好airsim之后,就可以下载Unreal逼真的环境,并在环境中做仿真了。本文的内容包括:配置 LandScapeMountains 环境、使用Computer Vision模式浏览环境中的美景。

Unreal 环境介绍

Unreal 的官方商店有非常多的环境可供使用,有收费的、免费的、户外环境下、室内环境、动漫环境等等,都可以快速的设置好并使用。在Epic Game Launcher里面也集成了环境商店功能,所以也可以直接在Epic Game Launcher里面安装、下载和使用。
同时,你也可以通过一些配置操作,来使用其他网站上的环境和模型,比如有很多三维模型的turbosquid.com和cgitrader.com。这两个网站上都很多不同类型的3维模型,包括:飞机、动物、建筑物、车辆、人物、家具、景观、食物、植物、等等,基本上任何你想用的模型都有。如果将这些模型配置到自己的Unreal环境中,我们将在后续的文章中更新讲解。本文仅详细讲解如何下载安装配置Landscape Mountain环境。
下载安装Landscape Mountains环境

Landscape Mountains环境是一个免费的,非常经典的官方教程用环境。下载安装Landscape Mountain环境成功后,可以用相同的方法下载安装其他环境。
步骤1:下载 & 安装

打开Epic Game Launcher, 点击Learn按钮,然后往下滑,找到Landscape Mountains,点进去之后,点击Create Project,选择安装位置,然后点击Create,就开始下载了,下载和安装都是自动的。在左下有一个Downloads按钮可以查看下载安装的详细情况。
在安装的地址中找到LandscpeMountains.uproject,双击打开,这时应该会自动打开Unreal 编辑器,如下图所示:
为了能够使用Visual Studio 编译.sln文件,我们需要创建自己的类,因为Unreal要求至少有一个源文件。具体步骤是:点击左上角的文件,选择新建C++类,父类选择无,所以直接点击下一步;命名和路径都是默认就好了,直接点击创建类。这时Unreal会自动编译C++代码,然后会自动打开Visual Studio。到此 Landscape Mountain环境就下载安装好了。


步骤2:在环境中添加AirSim插件

这一步我们把airsim作为一个插件,安装到环境中,然后环境就可以认识这个插件,并可以使用airsim。先把上一步打开的Unreal 编辑器和Visual Studio都关闭。找到上一篇文章中下载的airsim文件夹,找到AirSim\Unreal\Plugins文件夹,并将其复制到LandscapeMountains文件夹中。
然后需要修改LandscapeMountains.uproject的内容,右键它,然后选择用写字板打开(也可以用其他文档编辑器打开,eg:Atom),并将内容改为如下所示。最后的namehash是不用管的,每个人的都不一样。一定要用英文输入法编辑,修改完之后保存关闭。
{
   "FileVersion": 3,
   "EngineAssociation": "4.24",
   "Category": "Samples",
   "Description": "",
   "Modules": [
         {
             "Name": "LandscapeMountains",
             "Type": "Runtime",
             "LoadingPhase": "Default",
             "AdditionalDependencies": [
                         "AirSim"
                     ]
         }
   ],
   "TargetPlatforms": [
         "MacNoEditor",
         "WindowsNoEditor"
   ],
   "Plugins": [
             {
                     "Name": "AirSim",
                     "Enabled": true
             }
         ],
   "EpicSampleNameHash": "1226740271"
}然后右键点击LandscapeMountains.uproject选择Generate Visual Studio project files。如果你的右键没有这个选项,那么可以尝试重启电脑,如果仍然没有,可以尝试打开LandscapeMountains.uproject,然后点击文件->刷新Visual Studio工程。
双击打开LandscapeMountains.sln,会自动打开 Visual Studio,选择编译选项为 DebugGame Editor 和 Win64,同时确保LandscapeMountais为启动项目。
设置完成之后,点击 F5 或者用鼠标点击 本地windows调试器,这时会打开 Unreal 编辑器。这时 Unreal 就已经能够识别 airsim 插件了,你可以在 Unreal 编辑器中修改环境、assets 和其他游戏相关的设置。首先一定要改的是将仿真模式改成 AirsimGameMode,在 Unreal编辑器中,选择右下的 世界场景设置中的 Game Mode,选择 游戏模式覆盖 为 AirsimGameMode,并且要按 Ctrl+S 来保存环境。
步骤3:环境中建议的初始设置

游戏玩家初始位置设置
首先比较重要的是 PlayerStart 设置,这个设置的目的是更改游戏开始的时候,玩家的初始位置。如果你是想做无人机仿真,那么仿真开始的时候,PlayerStart 就是四旋翼无人机的初始位置,也就是全局坐标的原点。如果这个点设置到了地表以下,那么飞机是无法飞到天空中的;如果这个点设置到了很高的高空中,那么仿真一开始,四旋翼会直接极速坠落;所以最好将这个点设置到地面以上1米以内的位置上。在右上的 世界大纲视图 下面的搜索框中搜索 PlayerStart,你会发现这个环境中有不止一个 PlayerStart。最好将后面的几个都删除掉,只留下一个。
双击最后剩下的一个 PlayerStart, 这时,中间的画面会直接到了这个初始位置,在中间的画面中,滚动鼠标滚轮可以拉长和拉近视角;把鼠标放在中间的白点或者红绿蓝三个坐标轴上时,用鼠标左键可以拖动 PlayerStart,以此来改变 PlayerStart 的位置。还有一种方法可以改变 PlayerStart 的位置,在右下角的细节窗口下,只用输入坐标即可。更改完之后,记得保存环境。这样下次打开的时候,初始位置还是你设置过的位置。
优化CPU使用设置
此外还有一个比较重要的设置是:编辑->编辑器偏好设置,搜索 CUP找到 处于背景时占用较少CPU 的设置选项。如果勾选了这个选项,那么当做Unreal 编辑器不在窗口的最前面时,就不会实时渲染了,但是不影响仿真的运行。所以还是建议勾选。
显示实时fps设置
点击中间画面中左上角的下三角,勾选显示FPS,此时右边就会出现当前的FPS和时延。当FPS下降到20以内时,说明数据处理比较缓慢,需要找到问题所在,并优化程序。FPS在20以上算是比较流畅的。
步骤4:设置为 Computer Vision Mode

按照上一篇文章介绍的,点击播放按钮就会运行仿真,这时会跳出对话框,询问是否使用小车,如果点是,就会出现一个小车,而点否就会出现一个四旋翼无人机。但是不管是车还是无人机,在没有做其他操作的情况下,都不能用键盘控制车和无人机的运动。本节介绍一种仿真模式:Computer Vision Mode,让你可以用键盘来控制游戏中的视角,然后就可以自由浏览游戏中的美景。
在C:\用户\{用户名}\文档\下面新建AirSim文件夹, 在新建的 AirSim 文件夹中新建 settings.json文件。如果运行过airsim的话,应该会默认创建这个文件夹和文件的,如果没有,则需要手动创建。将 settings.json 文件修改为如下所示:
{
   "SettingsVersion": 1.2,
   "SimMode": "ComputerVision"
}这里的设置就是运行airsim的时候首先读取的设置,这里的SimMode可以设置为 Car、Multirotor ,分别对应小车、四旋翼无人机。这样在仿真的时候就不用选择是用小车还是无人机了。本次我们设置为ComputerVision模式。
在Unreal编辑器中,点击播放,如果是第一次点击播放,可能需要一些时间来渲染画面。
在中间的画面中点击一下鼠标左键,这时就可以用键盘来控制视角了。
上下左右按键:控制前后左右移动PgUp、PgDn:控制上下移动w、s按键:控制俯仰a、d按键:控制偏航
使用这些按键可以自由地在景色中移动,浏览美景。
在浏览模式中,鼠标是不能移动的,同时按 shift+F1,就退出了浏览模式,这时鼠标就出来了。
这个 LandscapeMountains环境中有比较大的雾气,会影响视觉效果。在右边的搜索框找到 ExponentialHeightFog Actor,,然后在下面的细节选项卡中,将雾密度设为0。


现在你可以自由浏览游戏中的美景啦。
下周介绍如何使用遥控器或者Xbox控制四旋翼无人机自由飞行。

量子计算9 发表于 2021-4-30 05:32

博主能不能讲一讲Epic Game Launcher里面安装除了landscapemountains之外的环境啊,我下载了其他环境,但是就是配置不到unreal engine里面去。我自己下载之后就是点add project,说已经add进去了,但是我打开还是没有。谢谢博主

[哈哈]

mastertravels77 发表于 2021-4-30 05:33

主要是那个learn 里面的legacy samples 里面只有几个环境,我在marketplace下的加载不到unreal 去,好气啊

c0d3n4m 发表于 2021-4-30 05:36

这个问题我正在解决,应该快了[大笑],加进去之后,是在下面的文件夹中,是可以直接拖进去的。

fwalker 发表于 2021-4-30 05:38

好的好的

kirin77 发表于 2021-4-30 05:45

我已经实现了使用marketplace中的环境,这周博客更新,详细讲解这方面的内容,再后面两个博客讲怎么从第三方平台导入模型和环境和怎么替换四旋翼模型。

fwalker 发表于 2021-4-30 05:49

ExponentialHeightFog,请问为啥我的视图中没有这个

kyuskoj 发表于 2021-4-30 05:56

generate后打开vs的时候failed to find Material'Airsim/HUDAssets/CameraDistortion.CameraDistortion,出现这个咋回事啊,大佬

JamesB 发表于 2021-4-30 06:06

需要点击播放之后,才会有

HuldaGnodim 发表于 2021-4-30 06:09

感谢,请教一下后面那个问题,一直有这个错误
页: [1] 2 3
查看完整版本: airsim系列(二) - 浏览游戏中的美景(CV mode)