Unity学习之Human fall flat创意工坊地图制作
Unity学习笔记之Human fall flat
- 主要参考《人类一败涂地》官方教程
- Unity版本
- 详细教程获取
- 开始工程导入
- 素材包介绍
- 界面介绍
- 工具简介
- 常用组件简介
- 多人游戏组件
- 地图构建和关卡设计
- 保存点的设置
- 运行测试
- 导出及测试
- 写在最后
主要参考《人类一败涂地》官方教程
Unity版本
Unity版本:Unity2017.4.13f1
下载链接:Unity2017.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》 游戏,打开本地梦境,就可以在游戏中进行测试了。
写在最后
关卡设计主要还是看个人的设计思路,综合利用多种工具和组件,熟练运行在地图中,就可以设计出有趣的人类一败涂地关卡了。
Unity学习之Human fall flat创意工坊地图制作相关推荐
- 人类一败涂地steam创意工坊地图制作教程交流
下载.安装.创建项目.导入游戏包.熟悉Unity 1-1.下载安装Unity2017.4.13f1 下载地址:Unity2017.4.13f1 ←点击下载,人类一败涂地创意工坊必须使用2017.4.1 ...
- 腐蚀rust高速箭怎么做不了_腐蚀RUST创意工坊皮肤制作教程
新的编辑器非常简单易用 需要的工具 1.正版Rust 2.Photoshop或其他图形编辑工具 1.运行Rust,进入主菜单后,点击右上角的国旗将语言切换成英文(原因后文阐述),然后点击右下角的WOR ...
- csgo服务器搭建 linux,请问搭建csgo服务器切换创意工坊地图报错怎么办
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Unknown command "sv_maxcmdrate" Unknown command "cash_team_eli ...
- 人类一败涂地mac版(human fall flat中文版)
在手机端很火爆的人类一败涂地游戏已经在Mac上线啦!人类一败涂地human fall flat for mac 破解版的玩家需要操控梦境中的主角bob利用物理效果来解开谜题,能否逃出梦境就看你的啦! ...
- 超火爆的人类一败涂地Human Fall Flat Mac中文版(支持m1)
人类一败涂地Human Fall Flat for Mac是Mac平台上的探索类游戏,在人类一败涂地游戏中,玩家需要操作主角Bob去探索和解开各种谜题,最终逃出梦境就是胜利,赶紧来体验一下吧! 人类一 ...
- 人类一败涂地human fall flat游戏通关图文攻略
人类一败涂地human fall flat是解谜探索类游戏,小编各位玩家准备了人类一败涂地human fall flat游戏通关图文攻略,帮助玩家顺利通关. 第一关:教学关 第二关:第二关的这个地方可 ...
- 人类一败涂地做图教程_人类一败涂地地图制作教程 创意工坊自制地图方法
人类一败涂地怎么制作地图?地图怎么自制?人类一败涂地地图制作教程.在全新版本中,这款游戏支持自制地图,玩家可以自己创建地图,并且多人联机,玩家可以进行最多8人的自定义房间游戏.利用创意工坊方便地交换创 ...
- 原神创意工坊工具箱2.0源码-小程序前端源码
简介: 原神创意工坊工具箱2.0源码 此源码原本是反编译而来的,原创意工坊工具箱2.0源码,为一款游戏的工具箱 还有一款是一家车品内饰脚垫样式生成的小程序前端,一并打包了 其主要功能有: 抽卡分析 抽 ...
- 服务器的创意工坊文件,Steam 创意工坊实现指南
简介Steam 创意工坊系统使用后端存储.前端网页的形式,便于存储.整理.排序.评分及下载游戏或应用程序. 本文提供了为产品实现 Steam 创意工坊的技术细节. 在开始将 Steam 创意工坊与您的 ...
最新文章
- 如何在本地安装tomcat、jdk并且配置tomcat环境变量(window7)
- 阻塞、非阻塞、多路复用、同步、异步、BIO、NIO、AIO 一锅端
- net平台c#语言如何实现支付宝payto接口
- Linux下安装GCC5.3.0
- 计算机网络按功能自底而上划分,大连理工大学2011计算机期末模拟题3
- matlab 工具 安装包下载地址,安装 | MATLAB2018a (64位) 安装教程及安装包下载链接...
- VS Code设置代码片段(C++)
- 压箱底总结:流系统端到端一致性对比
- Linux下的MySQL安装及卸载
- 计算机房的分类,雅思词汇分类积累之计算机房
- 【UML】用例图中<<extend>>与<<include>>的区别
- echarts3.0 本期累计堆叠
- 参与微软本地化翻译——MLCP
- CF-HW04-胡杰-16332054
- 分享一款实用的太阳能充电电路(室内光照可用)
- AJAX_json笔记
- autocad 2014 闪退的一种解决办法: 点击菜单栏即闪退报错
- python读取word文件并替换部分文字_python批量替换
- 计算机打数据执行保护删除不掉,运行某应用程序时,出现数据执行保护 (DEP)提示的解决方案...
- android framework学习回忆
热门文章
- opencv-python 读取视频时如何判断读取到最后一张
- 插入u盘计算机未响应,u盘启动电脑无反应,教您电脑插上U盘后无法启动解决方法...
- Echarts中国地图与世界地图实战
- CTO问我,为什么需要API网关?
- 【编程题】【Scratch四级】2022.03 早餐组合
- extern、struct等关键字
- 计算机键盘复制键,键盘按键设置复制粘贴的方法
- 将Word文档中指定内容锁定
- C语言有趣的代码大全,分享一段有趣的小代码
- python 银行数据_Kmeans 银行数据聚类分析