虚幻引擎:游戏设计(FPS项目) 一
内容中与蓝图系列相同的部分将会被省略。
一、游戏设计
1.1 项目中将要实现的东西
Play Mechanics
- walking
- jumping
- shooting(target)
- opening doors
System(系统)
- Health(血条)
当遇到伤害时,血条会减少。可以通过捡去血包恢复Health。
Level Hazards(关卡难点)
- Steam jets(蒸汽,玩家触碰会受到伤害)
- Spinning Fan(旋转的锋利风扇)
- Instant kill zones(Pits?Spikes?)
- Time Limit(时长限制)
Game Objectives(游戏目标)
Primary objective(主要目标)
- Get High score
Secondary objective(次要目标)
- Shoot target
- Stay alive
- Complete level
Game rules(游戏规则):
- 如果玩家射中目标,他们将获得积分、速度加成或时间加成。
- 如果玩家接触蒸汽或风扇,他们就会失去生命值。
- 如果一个玩家接触到一个生命值拾取,那么他们获得生命值。
- 如果一个玩家失去了所有生命值,那么他们在关卡开始时重生,分数和时间保持不变。
- 如果玩家到达目标区域,则他们完成关卡并获得最终分数。
- 如果一个玩家的时间用完了,那么游戏结束。没有得分的唯一选择是退出或重新开始。
关于地图的设计,我们可以使用简单的草纸,也可以用visio或是draw.io来绘制,其他的也都可以。下面是简单的一个地图设计,即便我们会在后面对齐进行修改。但是在最开始的时候,有一个自上而下的地图会有好处。
1.2 Player Metrics
Player Metrics是决定你角色的参数,例如速度,跳跃的距离高度等等。
- 角色速度
- 角色跳跃(高度?持续按下跳跃键会跳的更远吗?次数?)
- 子弹速度
- 子弹反弹
- 子弹重力(抛物线还是直线射击)
这些事情在开始灰盒前很重要,只有知道这些参数,在放置障碍物或是其他事件中,不会出现问题。如果你在关卡设置好后,修改了参数,那么关卡也要进行相应的调整。
我们先创建一个射击模板,然后创建如下的目录结构。 同时我们在关卡目录下,创建一个default关卡。
接着我们进入第一人称的蓝图中,修改一些参数,了解一些可用参数。
- 最大步行速度无需修改
- 跳跃Z速度为500
- 空气控制0.2
- 重力标速无需修改
- 跳跃最大数量无需修改
- 跳跃最大按压时间0.25(当我们持续按下时,会跳的更高)
再进入子弹的蓝图中
- 初始速度6000
- 最大速度6000
- 发射物重力范围0.7
- 应反弹
- 初始生命周期(这是指x秒钟后,该子弹将消失)
二、灰盒关卡
2.1关于Level GrayBoxing的介绍[1]:
什么是灰盒?它是游戏开发人员用来快速了解关卡布局和可玩性的过程,而不会浪费太多时间。
所以,灰盒顾名思义就是在你对建筑和其他漂亮的东西过于着迷之前,用简单的几何形状来屏蔽地图中的所有特征的过程,这些几何形状通常采用灰盒的形式
它有几个主要目的:
1. 允许设计者查看关卡是否真的可玩。即规模?玩家是否适合穿过门和走廊?玩家知道他们要去哪里吗?然后设计人员可以快速轻松地进行更改。
2. 它提供了地图的蓝图以及美术团队可以开始处理的所有资产。例如,他们有关于房子需要多大的参考,一般形状,所有门等,碰撞场等等。
3. 如果有任何需要测试的编程元素,即武器、电源、玩家跳跃距离等,现在是时候这样做了,因为关卡可以很容易地调整为向玩家提供挑战,或者至少是可以导航。
Overview:
Geometry 是Geometric Brushes的缩写。而几何画笔是用来雕刻游戏世界的工具。我们这里会主要探讨2个不同的画笔。
- Additive = ADDS shape to the world
- Subtractive = SUBTRACTS shape from the world
2.2 关于笔刷
我们可以选择下方的几何体,并且在最下方会显示添加或是减去。
关于如何使用笔刷来构建门窗,我们在之前的博客中就有提到了。
其次还有一个问题需要注意,就是我们可以使用下面的方法对其进行缩放。但是缩放操作完成后,我们查看右边细节面板中的画刷设置,xyz的大小仍然是200u
所以当我们使用画刷时,实际上并不缩放它,而是使用这些画笔设置来确定其大小。
接着就是关于中空的选项,我们选中这个后,可以设置墙的厚度。
关于锥形的一些参数:
我们可以设置它的半径,它的高度,它的侧边数量。同样的我们也可以设置中空。
我们在这里省略其他的几何体参数介绍,如果想了解的话,可以在关卡中自行调整参数。
最后,我们假设我们有如下的一个几何体。我们希望将它保存为静态网格体,以便我们之后将其拖入其他关卡中。
首先我们选中这两个几何体,然后到细节面板的画刷设置中,我们可以看到有创建静态网格体这一选项。
2.3 几何体编辑
我们可以从模式中,选择笔刷编辑。我们有下面几种方式改变其性状
<1> 我们可以通过移动面,来改变其形状。
<2> 同样的可以移动线来改变形状
<3> 我们选中角落的点,来改变形状
注意,如果我们要删除这个几何体,我们需要先退出编辑模式。
接着我们要介绍的是挤压,在我们选中一个面后,我们可以在上方选择挤压:
我们可以在左边的面板中得到以下的设置
我们将长度设为200,分段为5个,通过结果我们可以很清楚的了解到它的作用:
关于其他的具体设置我们这里不做多的介绍。关于画笔的操作,我们这里也略去。
我们可以使用画笔创建笔刷形状,使用空格键创建顶点,或者创建枢轴点等等。
2.4 构建到网格+关于建筑效率
什么是网格?可见下图:
关于这个网格的大小,在右上角有具体数值。关于虚幻单位和实际单位的换算,我们之前也有提到过。那么如何将放置几何体和网格对齐呢?
我们可以按住control+end键对齐。
提升建筑的点:
- 尽量使几何体的大小和网格大小对应,减少奇怪值的出现频率
- 灵活的使用正交视图,使用它们来对齐,还可以通过鼠标中间键来使用测量工具(得到距离)
- 关于复制对象:1 按住alt键拖动 2 按住w 3 右击对象复制
2.5 关卡布局
关卡设计的草图使我们的参照,我们要参照这个来完成操作。我们重新创建一个1000*1000*20的几何体作为地板,然后我们进入到上视图,将地图像草图中对齐坐标轴。这个就是我们草图中的左下角小格。
同样的,我们也放置其他的地板楼梯等草图中的地形,如楼梯,圆筒通道(放置一个圆柱体,然后再放置一个消除笔刷形成通道)。我们暂时省略水、移动平台这些。
楼梯:
接下来我们放置一些墙壁,大概花了1小时左右:
但是我们这里还没有标示道具,标示一些危险机关的位置等等。所以我们要加入一些体积雾,一些门和一些平台。我们也可以使用销毁Z volume,这是可以用来销毁玩家的一个方法。我们可以在河流中放置这个体积,使玩家掉落到河流中会被杀死。
接下来我们会对关卡进行装饰。见下一章
[1] What is GrayBoxing https://jackw-gamedesign.tumblr.com/post/139960850160/what-is-greyboxing
虚幻引擎:游戏设计(FPS项目) 一相关推荐
- 虚幻引擎图文笔记:项目升级到虚幻5(UE5.0.1)以后出现奇怪阴影问题的解决办法
问题演示 UE5.0.1 奇怪的阴影的解决办法 解决办法 解决完毕 奇怪阴影问题解决
- 虚幻引擎游戏国际化总结
- 虚幻引擎 4.10 发布信息
版本信息 SHARE: 该版本为虚幻引擎 4 带来数百项更新,包括由 GitHub 上的虚幻引擎开发人员社区提交的 53 项改进!感谢虚幻引擎 4.10 的所有贡献者: Andreas Axelsso ...
- 终极Git课程——在虚幻引擎中的应用 The Ultimate Git Course – with Applications in Unreal Engine
了解Git和GitHub.虚幻引擎C++项目的版本控制等等! 你会学到: Git是如何工作的 如何从命令行使用Git 使用GitHub.GitHub桌面应用程序.Visual Studio中的Git工 ...
- 虚幻引擎虚拟现实开发基础学习教程
流派:电子学习| MP4 |视频:h264,1280×720 |音频:AAC,44.1 KHz 语言:英语+中英文字幕(根据原英文字幕机译更准确)|大小解压后:3.93 GB |时长:5h 15m 了 ...
- 虚幻引擎C++终极射手教程 Unreal Engine C++ The Ultimate Shooter Course
虚幻引擎C++终极射手教程 Unreal Engine C++ The Ultimate Shooter Course MP4 |视频:h264,1280×720 |音频:AAC,44.1 KHz,2 ...
- 虚幻引擎3 —— 内容制作工具以及技术支持
游戏脚本和电影制作 作为我们的视觉脚本系统,UnrealKismet: 可使美工和关卡设计师实现几乎对关卡游戏方式无限控制,而无需触及任何代码. 将程序员创建的简单事件和操作连接起来,即可快速构建从简 ...
- Online Subsystem Steam 在线子系统Steam (虚幻引擎UE4 联网)
在本页: 满足阀门的要求 正在下载Steamworks 设置Steamworks SDK Steam App ID 配置您的应用程序的设置 补充笔记 该在线子系统蒸汽API使您能够出货虚幻引擎4(UE ...
- 虚幻引擎5 AR开发教程03:创建第一个AR App
在本教程中,我们将学习如何在项目中添加 AR 功能并在虚幻引擎 5 中创建我们的第一个 AR 应用程序. 步骤 01:创建和设置 UE5(虚幻引擎 5)AR 项目:教程 01 步骤 02:创建 AR ...
最新文章
- JavaSist之ClassPool
- Python中list复制引发的问题
- python 绘制功率谱密度图 plt.psd
- BoW(词袋Bag of words)
- 仅需10道题轻松掌握Python文件处理 | Python技能树征题
- 足球机器人第一次作业:编写程序解析球员所看到和听到的信息。
- mysql分页查询公式
- 支持向量机(SVM)理解以及在sklearn库中的简单应用
- 计算机进去bios方式,bios怎么轻松进入?电脑进入bios方法大全
- java from space to space_快速定位Java 内存OOM的问题
- 昆石网络 VOS3000虚拟运营支撑系统任意文件读取漏洞
- (一)Hadoop介绍
- 计算机领域常用的英文名称和缩写,计算机常用英文缩写.doc
- 当罗“工匠”遇上雷“铁匠”
- 英语中’s和s’的区别
- 中国联通云数据有限公司总经理焦刚:沃筑生态,共创未来
- c蔚语言艺术,伊能静的语言艺术,写下老公和好友章子怡,网友称赞
- ITIL、CMMI、TMMI、CMMI、SAFe、ITSM、DevOps及VeriSM这些名词究竟是神马
- 即时通讯系列-1-即时通讯软件的项目需求说明书
- 交通事故预测 读书笔记
热门文章
- P7776 【模板】特征多项式 题解
- 冥想基础知识(总结于冥想相关书)
- 小厨房设计软件测试,小厨房只要设计的合理 照样可以轻松在家做大餐
- 〖3D激光点云〗激光雷达点云bin文件读取和显示!
- windows7浏览器无法打开html,Win7系统chrome浏览器无法打开怎么回事?Win7系统chrome浏览器无法打开的解决方法...
- swagger no content
- Android Studio教程
- Hawk: 无编程抓取淘女郎的所有高清照片
- M.2、PCIe、mSATA接口的SSD 速度性能如何?哪一个是装机首选
- 火箭队新赛季十大最卖座电影前瞻!