找回密码
 立即注册
查看: 587|回复: 0

AirSim系列(7)-使用 Unreal MarketPlace 中的环境

[复制链接]
发表于 2020-12-14 07:30 | 显示全部楼层 |阅读模式
最近有很多人问我怎么改变Unreal 的环境,因为官方教程的 LandscapeMountian 太普通了,很多人都有使用其他环境的需求,本文我就详细讲解如何从 Unreal MarketPlace 下载自己喜欢的环境,并在 AirSim中 使用。
先重复一下基本概念,Unreal Engine 是一个游戏开发引擎,有出色的效果渲染能力,能够做出非常逼真的场景。AirSim 是微软开发的一个仿真平台,它是作为 Unreal Engine 的一个插件形式存在的,提供 API 接口,用来做四旋翼或者汽车的仿真。
改变 Unreal 中的场景其实大部分都是在 Unreal Editor 中操作的,跟AirSim关系不大,仅需要设置好 Unreal 使用AirSim插件即可,所以本文的大部分操作都是和Unreal有关的。
本文以 Unreal Marketplace 中的 Realistic Forest pack 环境为例,详细讲解怎么使用 Unreal Marketplace 中的大部分环境。下图就是 Unreal Marketplace 中的 Realistic Forest Pack 环境截图。
Unreal Marketplace中的工程介绍

Unreal Marketplace 中的环境分为两类,有一些是以Unreal工程的形式发布的,例如之前讲过的 Landscape Mountain 环境就是一个完整的Unreal 工程,所以可以直接在Epic game launcher中创建此工程,如下图所示。
在Epic game launcher中,Learn 选项卡下面的环境基本都是完整的Unreal工程,所以也可以用同样的方式来创建工程。
下面的截图举例都是完整的Unreal工程,可以直接用之前的方法创建工程。


Unreal Marketplace 中其他大部分环境都是以资源(asset)的形式发布的,它并不是一个完整的 Unreal 工程,但是可以添加到现有的Unreal工程中,所以我们首先需要新建一个工程。我们新建一个空的 Unreal 工程。
步骤1:新建一个Unreal 工程

在 Realistic Forest pack 的介绍中可以看到环境支持 windows系统,我们可以使用,同时它支持的 Unreal 引擎版本为4.22 ~ 4.26,所以只要是写版本的Unreal工程都可以使用。本文使用的是 4.24版本。
点击 Epic Game Launcher 中右上角的 Launch Unreal Engine 2.24,如下图所示,注意这里的版本号,如果不是 4.22 ~ 4.26 请切换到其中的一个版本号。


这时会打开 Unreal Editor,选择新建项目类型中的 游戏 类型,并点击下一步。


模板选择“空”,并点击下一步。


选择路径,并且对自己创建的工程命名,我这里是“myForest”,最后点击创建工程。
这里稍微解释一下上面的几个选项:
    蓝图和C++:蓝图其实可以理解为 Unreal 的编程语言,是图形化编程,简单易学。每个Unreal工程都要有编程类项目,如果是做游戏开发,必不可少蓝图,但是AirSim要求必须使用C++项目。这里先选择蓝图,后面工程建好之后,要手动添加一个 C++ 项目;桌面主机 移动设备平板电脑:这里是选择目标平台,我们选择桌面主机;是否含初学者内容:我们目前并没有使用初学者内容,所以是否添加并没有影响。即使选择含初学者内容,也只是将初学者内容包含在内容浏览器中,我们这里先选择上含初学者内容,后面工程建好之后,给大家指出其位置。


经过一段时间的初始化和加载,一个新的项目就出来了。下图红框内的是内容浏览器,其中的 starter content 就是初学者内容,里面包含了很多基础的资源可以编辑使用。我们目前还用不到初学者内容。


这样一个新的Unreal工程就创建好了,下面就是怎么把 Unreal Market Place 中的 Realistic Forest Pack 加载进去。
步骤2:将 Realistic Forest Pack 加载进去

打开 Epic Game Launcher 中的 Marketplace,搜索找到 Realistic Forest Pack ,点击 Add To Project.
这时会跳出来对话框,找到刚刚创建的 myForest 工程,然后点击 Add to Project。
如果没有找到,则需要勾选上 Show all projects.


这时,Epic Game Launcher 中,左侧的Downloads里面,就会出现一个 TASKS,如果你是第一次使用这会环境,则会有一个下载安装的过程。如果之前已经下载过这个环境,则会直接安装。


安装完成之后,Unreal Editor中的内容浏览器会出现 FoliagePackV1 文件夹,这里面就是 Realistic Forest Pack 所包含的所有内容,我们就是要利用这里面所包含的东西。


先大概介绍一下这里面的内容,如果不感兴趣可以忽略。点击下图中的 过滤器,可以选择显示的资源类型。
    蓝图类:是一种允许内容创建者轻松地基于现有游戏性类添加功能的资源。实际上,这些类蓝图定义了一种新类别或类型的Actor,这些Actor可以作为实例放置到地图中, 就和其他类型的Actor的行为一样。关卡:在玩游戏的过程中,玩家看见的每个东西,交互的每个东西,都是存在于一个世界,这个世界我们叫做 场景关卡(Level)。一个场景关卡是由一组静态网格物体(Static Mesh),体积(Volume),灯光(Light)和蓝图(Blueprint)等物件共同组成,并带给玩家预期的游戏体验。在虚幻4中,一个关卡可以大到是巨大的地图世界,也可以小到是只包含几个Actor的小关卡。材质:是应用于网格体从而控制场景视觉效果的资产。你可以用材质定义对象的颜色、光泽度、透明度等等。骨架网格体: 是一种3D模型资源,可以在外部3D建模程序中进行动画处理,然后导入虚幻编辑器。


步骤3:选择需要的场景

我们在本文主要关注 关卡 这一类型。其实按照定义,关卡就是一个场景,包含了很多东西呈现出来的场景。
点击左侧的 FoliagePackV1,然后勾选过滤器中的关卡,把其他的资源类型都取消勾选,这时就会展示 FoliagePackV1 中的所有关卡。


每一个关卡都是一个场景,但是有些关卡只是为了罗列展示其所包含的一些内容(比如只有天空,或者只是一些植物的组合),并不适用于作为一个场景使用,每个场景都可以双击打开,大家可以每个都打开看一看,但是有些场景包含了很多东西,打开的话会花很长的时间,我就先把每个场景的图展示给大家看看。首先这个资源包中的场景分为3类:
    光线类:ClearSky_Light、Cloudy_Noon、Foggy_Light、Foggy_Night、Noon_light、Winter_light等场景类:Demo开头的都是,Demo_Landscape_A、Demo_Landscape_B等所有资源的展示:Overview
我把每一类都截图展示一下效果:
    光线类:ClearSky_Light,可以看到这里只有天空效果

    Overview: 可以看到这里是所有植被建筑等的罗列展示
我们真正需要用的就是场景类的关卡,就是demo开头的,它这里有Demo_A和Demo_B,作为举例,我们就先用 Demo_Landscape_A,双击打开  Demo_Landscape_A,这时会耗费很大的计算资源来加载渲染场景。


右下角的数字表示剩余需要处理的资源个数。当加载渲染完成后,就是完整的可以使用的场景。


说实话,这个场景还真的挺逼真的。
这个Unreal工程中有这么多场景,我们其实只需使用一个场景即可,打开编辑中的项目设置,把Demo_Landscape_A 场景设置为编辑器开始地图和游戏默认地图。
步骤4:将AirSim插件添加到工程中

AirSim需要用Visual Studio来编译,我们添加一个空的C++类来生成 .sln文件。点击文件,选择新建C++类,选择父类为 无,点击下一步。路径和命名可以默认,点击创建类,这时编译完就可以生成.sln文件了。同时会自动打开 visual studio。


因为工程文件比较大,Visual Studio可能需要一些时间来做分析。这时可以将编译好的AirSim插件文件夹复制到 Unreal工程文件夹下。
用记事本打开 myForest.uproject,添加AirSim插件启用。添加 AdditionalDependencies和 plugins,添加之后如下所示,保存后关闭。
{
     "FileVersion": 3,
     "EngineAssociation": "4.24",
     "Category": "",
     "Description": "",
     "Modules": [
         {
             "Name": "myForest",
             "Type": "Runtime",
             "LoadingPhase": "Default",
             "AdditionalDependencies": [
                 "AirSim"
             ]
         }
     ],
     "Plugins": [
         {
             "Name": "AirSim",
             "Enabled": true
         }
     ]
}
关闭 Visual Studio 和 Unreal Editor。
右键点击myForest.uproject,选择 Generate Visual Studio Project files。


重新打开 myForest.sln,在Visual Studio中设置编译选项为:Degub Game Editor 和 Win64。将myForest 设置为启动项。


点击调试(或者按F5),则会打开 Unreal Editor。在 世界场景设置 中选择 游戏覆盖模式 为 AirSimGameMode。然后点击 播放,就可以进行仿真了。


在项目设置中可以设置默认游戏模式为 AirSimGameMode,这样就不用每次打开都要设置一下了。


最后点击文件中的保存所有,这样所做的设置都会保存好。


仿真效果展示

注意这个环境是没有player start的,所以在仿真前视口显示的位置就是起始位置。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-5-23 12:09 , Processed in 0.103369 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表