第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > Unity学习之Human fall flat创意工坊地图制作

Unity学习之Human fall flat创意工坊地图制作

时间:2024-03-13 21:20:22

相关推荐

Unity学习之Human fall flat创意工坊地图制作

Unity学习笔记之Human fall flat

主要参考《人类一败涂地》官方教程Unity版本详细教程获取开始工程导入素材包介绍界面介绍工具简介常用组件简介多人游戏组件地图构建和关卡设计保存点的设置运行测试导出及测试写在最后

主要参考《人类一败涂地》官方教程

Unity版本

Unity版本:Unity.4.13f1

下载链接:Unity.4.13f1.

复制链接打开即可下载安装

安装好之后完成注册和登录即可使用了

详细教程获取

教程地址:打开steam,点击Human fall flat。进入“指南”,搜索“Getting started”,既可以看到这个叫Mildred Bumble 出的教程了。

开始工程导入

首先进入Unity,会提示更新版本,这里千万不要进行更新!

然后我们开始导入人类一败涂地的工坊资源包

Assets–>Import Package–>Custom Package

然后导航到你的steam安装目录

进入steamapps–>common–>Human fall flat–>WorkshopPackage,找到Human.unitypackage这个包,开始导入!

然后就进入了漫长的等待,等待加载完毕,会显示要导入的包,确认一遍,导入即可,然后又进入了漫长的等待(5-30min,由你的系统决定)

整个导入完毕之后,我们关闭Unity,然后打开目前这个工程所在的目录,接着打开刚才那个WorkshopPackage目录,将其中的ProjectSetting文件夹复制到你当前的工程文件夹中。

至此,导入工作就完成了。

素材包介绍

这里我只是简单的介绍一下我的理解,不详细介绍了。

首先打开刚才的工程,可以看到所有的资源包已经导入进去了

然后主要的素材在Assets–>Workshop–>Prefabs中,如下图所示

然后玩过这款游戏的同学就会发现,这些文件夹打的名字对应的都是Human fall flat中的基础关卡,然后每个文件夹都包含了对应关卡中地图的元素的素材,然后在这里我们称这些“素材”为预制件。

有些同学打开文件夹可能会遇到许多“小蓝块”,我们只需要点击Prefabs,右键–>Reimport All即可解决这一问题。

界面介绍

我们主要完成的是地图的构造,然后我们不需要camera什么组件,我们只需要Perfabs文件夹中的“level组件”,然后拖动这一组件到左边的Hierarchy栏中即可。就像这样!

然后我们的关卡就有了一些初始的元素了。

接着我们展开“level”,可以看到有以下几个元素。

这里应该是四个的,我把PassTrigger(通关点)已经放在地图里了,所以没在这儿显示。然后InitialSpawnpoint(人物出生点),FallTrigger(死亡触发点),Directional Light(平行光源),他们的作用也显而易见啦。

我们所要添加的所有的地图资源都要放在“level”文件夹底下,然后为了整合你的零零散散的资源,你可以重新建立一下包来将他们整合起来。

Create Empty–>Rename

这样就可以创建一个你命名的资源整合包啦,然后把你的预制件全部拖到这个包里就不会显得很凌乱了。

工具简介

主要的工具就上图中的6个,然后看图标就可以知道他们的作用。

从左到右分别是视角拖动,移动,旋转,立体缩放,平面缩放,自由改变工具,然后可以依次对一个预制件使用来看看效果,熟练运用即可开始制作地图了。

多练练就熟悉了,很简单的

常用组件简介

我们创建一个3DCube对象,就是一个方块,然后查看它的Inspector参数

下面一一介绍一下。

1.网格过滤器(Mesh Filter)

网格过滤器指的是物体给外界展示的外貌和形状,现在的状态是Cube,当然你也可以点击右边的小圆圈,选择并切换成其他形状

2.盒子碰撞器(Box Collider)

这个组件的作用是让这个物体可以被碰撞,可以被抓取。

而当我们不勾选盒子碰撞器时,这个物体就不可以被抓取,不可以被碰撞,也就是人物可以“穿过去”。

3.Mesh Renderer

不常用,这个组件的作用主要控制玩家能不能看到这个物体,也就是这个物体真实存在但是玩家看不见。

4.刚体(Rigidbody)

ADD Component,搜索并添加rigidbody即可。

这样一来这个物体就有了它自身的物理特性,如下图所示:

其中

Mass(质量),就是物体的质量了,一般情况下设置成25是比较合适的,是符合实际情况的;

Drag(阻力),表示你在拖动它时受到的阻力的大小;

Angular Drag(角阻力),表示你在旋转时受到的角阻力的大小;

Use Gravity(使用重力),用来控制物体是否受到重力影响;

Is Kinematic(是动力学的),一般来说勾选之后就会使得物体保持静止,就相当于没有刚体一样,所以一般要使得物体可移动的话,就不能勾选这一项了。

最后一个重要的参数就是Constraints,这个参数决定了我们可以固定物体在XYZ轴的位置,如果都不勾选,那么这个物体就是可以随意移动的。

其中X轴和Z轴是左右和前后方向,Y轴就是上下方向。

如果我们想物体只能上下移动,那么我只需要勾选Freeze Position中的X和Z,不勾选Y,这样一来我们就可以固定X轴和Z轴并使得物体上下移动了。

旋转也是一样,勾选Freeze Rotation的参数即可。

我们可以通过设置Constraints来固定物体,设计一些有趣的谜题和玩法了

其他的常用的还有网格碰撞器(Mesh Collider),它不可以和移动的物体一起运动,但是可以覆盖整个物体,一般情况下都是使用这个碰撞器,可以使人物可以和整个物体进行交互,也使得物体更加真实!

我们可以随意地修改这些参数来帮助理解他们对于物体的作用,这样一来我们也能让物体在游戏中显得更为真实。

一般来说,不必修改Drag和Angular Drag,只需要修改Mass就可以使得物体变得很真实。

多人游戏组件

在多人游戏中,常常需要用到“Net Body”组件,添加方法只需点击AddComponent,搜索并添加Net Body即可。

在地图中,如果你想要让你的物体被扔出地图后能重生,就只需要勾选“Respawn”即可,这在多人游戏中非常重要,一般来说,每个刚体物体都需要设置这个参数来保障物体能重生。

为了检查这一点,只需在搜索栏搜索“rigibody”,然后逐一查看被高亮的刚体物体即可,如下图所示:

地图构建和关卡设计

首先我们按照用上面的工具和预制件简单地制作一下地图,这里就略过了,按照个人的地图设计思路来就好了,然后我设计的一部分是这样的。

在做完这些步骤后,我们接下来要做的是设置小人的出生点(InitialSpawnpoint),这里我们只要点击“InitialSpawnpoint”,然后将这个出生点放置在你设计的出生点即可。

上图中,白线表示人物坠落的的地方,红圈表示人物落地的地点,其他的几个小灰点是其他玩家坠落后的着陆点。设置好之后,关卡一启动人物就会掉落在这个红圈里了。

至此,出生点就设置好了!

接下来我们开始设置掉落死亡区域,只要我们的小人掉落触碰到这个区域就死亡了,然后就会重新回到保存点。这一部比较简单,我们只需点击FallTrigger(死亡触发点),然后将它移动到整个地图的外部,调整大小即可,当人物掉落到地图外部之后,就会死亡了。

然后我设计的是这样的!

反正尽量设置的大一些,能覆盖整个地图,当然也可以自定义这个区域,也可以设置多个死亡触发区域,以迎合关卡的设计思路。

至此,死亡触发点就设置好了!

再接下来我们就来设置一个PassTrigger(通关点),当小人触碰到这个通关点就完成了整个关卡,然后就回到了游戏大厅了。

这里我将通关点放置在一个小岛的门边,当小人通关这个门就视为通关了。如下图所示:

然后我们可以用工具随意地设置通关点的大小和形状,按照自己设计思路来即可。

至此,通关点就设置好了!

还有一个就是Directional Light(平行光源),这个主要为你的关卡提供照明的光,当然一般情况下用默认设置就可以了,它可以提供很好的光照。

当然要是你制作的是恐怖系列的地图,你就要设置这个光源了

在Directional Light的Inspector设置里面,我们可以设置一系列参数,这些参数的作用都很好理解,看字面意思就行,自己设置就好。

这里我用的就是默认设置。

至此,平行光源就设置好了!

保存点的设置

人类一败涂地的关卡中都会设置保存点,用来保存玩家的游戏进度,可以让玩家获得很好的游戏体验,而保存点的设置也是考验设计者的思路啦。

然后我们创建一个空的物体,重命名为“checkpoint1”,然后进入其Inspector设置里面,点击“Add Component”,搜索并添加“Checkpoint(Script)”。

接着设置参数“Number”为1,这一步非常重要!!!

如果不设置的话,默认是0,会导致checkpoint1(检查点1)和InitialSpawnpoint(人物出生点)重合,人物就会直接出生到checkpoint1(检查点1)了,所以会导致错误。

另外“Box Collider”中的“Is Trigger”也要勾选一下,说明这个也是一个触发器,并且是可碰撞的。

整体设置如下图所示:

接着我们将设置好的checkpoint1(检查点1)按照设计思路放置在关卡保存点上,具体操作就像设置InitialSpawnpoint(人物出生点)一样的。

整个关卡中肯定要设置多个检查点的,而后续的步骤只需要将“Number”参数设置成2,3,4…即可。

运行测试

再构造完所有地图之后,我们就可以开始测试了。

在运行测试之前,我们要先打开并运行Steam客户端,当运行测试之后,会自动检测你的Steam上是否有《Human Fall Flat》 这个游戏,如果你没有这个游戏,那就别说测试的事儿了…

再运行Steam客户端之后,我们就可以点击“Play”按钮进行测试了。

运行结果如上图所示,然后就可以开始玩啦

导出及测试

点击Human–>Human Export即可

然后输入Dream Title和Dream Description,点击Export Dream即可。

要注意的一点是要将所有预制件放在包里面,不能在包外面,否则会提示无法导出,也就没有Export Dream这个按钮了

就像上图中的包结构一样,都是灰色的文件包就是正确的可导出的。

然后等待一会儿就可以导出成功了。最后我们打开Steam,进入《Human Fall Flat》 游戏,打开本地梦境,就可以在游戏中进行测试了。

写在最后

关卡设计主要还是看个人的设计思路,综合利用多种工具和组件,熟练运行在地图中,就可以设计出有趣的人类一败涂地关卡了。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。