在package manager中下载adventure creator,记得下载2D demo包
然后在顶部菜单栏点击adventure creator——Getting Started ——load 2D Demo

在AC Game Editor窗口里,有八个基本菜单,每个菜单都有自己单独的Asset File:Manager文件

New Game Wizard

新建一个空scene,然后点击adventure creator ——getting started——New game wizard

新建游戏弹出窗口
Game name:这里命名为My 2D Game
Camere Perspective:2D
Interface: 这里选择 choose interaction then Hotspot,这里后期可以修改
GUI System:Default AC
然后Confirm choices,在弹出的窗口中确定Setup Scene

建完之后,在Assets文件夹下,就会出现My 2D Game文件夹
点击My 2D Game文件夹,其中有一个My 2D Game_ManagerPackage文件,双击它可以可快速将八个基本菜单的manager设置为当前的manager

我们可以再新建一个Scene,然后在scene manager中,可以选择with folders和without folders
点击之后,会确定生不生成默认的子文件

AC Game Editor窗口,可以通过Adventure Creator —— Editors—— Game Editor打开

A New 2D Scene

把demo中Graphics——Sprites——Park中的ParkGround、ParkSky、ParkBackground、ParkTree放进_SetGeometry父对象里面

设置ParkSky的Sorting Order为-10、ParkBackground为-5、ParkGround为-1、ParkTree为5。调整一下位置,把树放在草坪上

在场景中有一个蓝色的小箭头,这是指示玩家开始场景时站立的地方,具体控制脚本在Scene manager——Scene Settings——Default PlayerStart

把这个小箭头放在树的左下方草坪上

后期图片

点击Scene manager的Scene settings,在Default Navmesh(导航网格)右侧点击Create,就能在游戏中生成默认的导航网格,挂载在Hierarchy窗口的_Navigation——Navmesh下面

选中这个Navmesh,在inspector窗口里选择polygon Collider2D的Edit Collider,编辑一下碰撞器的边界,可以打开gizmos来一直显示边界,这个边界的内部就是玩家角色在整个图上能移动的范围

image-20211011161852834

在_Navigation——Navmesh内部新建一个空对象,命名为TreeBase,添加Polygon Collider2D 组件,打开is trigger,编辑它的外形和树根底部位置重合

image-20211011162929327

选择Default Navmesh,在inspector窗口中Navigation Mesh——NavMesh holes,点击Create hole,将TreeBase拉取进来,游戏运行时将会将在Default Navmesh的基础上挖掉TreeBase的部分,人物移动时会绕过去

可以修改一下Main Camera的Size(Orthographic模式下)或Field of View(Perspective模式下),再调整一下Position,让游戏的画面居中

Creating a Player

把demo中Graphics——Sprites——Brain——BrainIdle中的Idle_D拉取在Hierarchy窗口,重命名为PlayerSprite

在菜单栏中点击Adventure Creator——Editors——Character Wizard

image-20211011204418125

在弹出的窗口中点击next

Base graphic里面选择player,并且将PlayerSprite拉取进去

Animation engine里面选择Sprites Unity,关于这几个动画引擎的区别,可以到官方手册里面去查看

image-20211011212816637

Additional settings里面直接点击finish,最后的窗口关闭就可以了

AC会自动将PlayerSprite放在一个叫做My new Player的父对象里,并带一个Sound Child

将整个My new Player放在项目根目录“My 2D Game”里来组成一个Prefab

然后在AC Game Editor窗口里,选择settings,在Character Settings里面,将上面的My new Player这个Prefab放在里面

image-20211012101044407

这样的话即使在scene里面隐藏或者移除了player,开始游戏时player都会自动出现

在My 2D Game文件夹里新建一个Animation Controller并命名为PlayerController,放进Hierarchy里面My 2D Game——PlayerSprite——Animator里面(这个组件也是Character Wizard自动添加进去的)

双击PlayerController,打开animator窗口,然后将Assets——AdventureCreator——2D Demo——Animations——Brain下的所有Animation Clips全部拖拽进里面

image-20211012113203831

我们可以按快捷键Ctrl+6打开animation面板快速预览这些动画

点击My new Player,在inspector窗口中的Player脚本里面可以设置Standard 2D animations,只要将Animation Clips的命名方式在这里统一一下,引擎就会自动安排动画播放

image-20211012135122123

image-20211012135157619

按照动画片段的数量,设置Facing directions为Eight,可以点击List expected animations来确定需要的动画片段有哪些

这时player的走路动画就可以播放了,接下来我们解决player被大树遮挡的问题

进入AC Game Editor面板,在scene settings里面点击create创建default sortingmap

image-20211012151425144

这时在hierarchy窗口中的_Navigation——_SortingMaps里面就会有刚才创建的default sortingmap

将场景中间的箭头放在角色能移动的最远端,也就是草坪的上端

点击default sortingmap,在inspector窗口的sortingmap脚本里面点击add area两次,打开Affect Character size

start scale,角色到达设置的最远端时的缩放值,设为90

image-20211012155534187

在scene中调整sorting area的切分点,点击轴心的蓝色正方形区域来移动,只能上下移动,前面区域是7,后面区域是1,前方缩放120,点击Interpolate in-between scales自动创建自然缩放105

image-20211012165911587

Player Sprite自动挂载有Follow SortingMap脚本,运行游戏可以直接看到角色不会被大树遮挡了

image-20211012170611272

打开编辑模式预览,可以在编辑模式下预览缩放效果,但是预览完记得关闭

点击My new Player,在inspector的Movement Settings里面,提升一下walk speed,打开turn before pathfinding

image-20211012192645895