【cn-stem】用upbge自制火箭小游戏。

View this thread on: d.buzz | hive.blog | peakd.com | ecency.com
·@cheva·
0.000 HBD
【cn-stem】用upbge自制火箭小游戏。
昨天发帖介绍了自制的火箭小游戏,小家伙玩得很开心。今天再给大家介绍一下制作过程,使用的是3D软件blender的修改版upbge。制作过程中不需要写代码,而是连接各种逻辑方块,算是可视化编程吧。有兴趣可以大家一起研究。
## 一、upbge介绍
blender在升级到2.8版以前是自带游戏引擎的,不过升级到2.8版后,把游戏引擎去掉了。但是upbge这个项目继续维护了游戏引擎的的功能,upbge算是blender的一个分叉。其他的建模,渲染,后期。。。等功能和blender一模一样,但是保留游戏引擎。而且和blender一样是开源免费的。
[下载地址](https://upbge.org/)
## 二、游戏介绍
游戏很简单,发射架上有一个火箭,按下空格键就会受到向上的推力,就像点火发射一样。放开空格键,推力会消失,游戏引擎已经设置了重力,所以会向下掉。掉落过程中按空格键可以重新施加推力,接住下落的火箭。游戏的目的很简单,就是保持火箭飞行,直到到达火星,然后返回地球。下面这个gif动画就是游戏过程:
![rocketgame.gif](https://files.steempeak.com/file/steempeak/cheva/1wF3aKP6-rocket-game.gif)
<center>图一、游戏画面 来源:本人截图。版权:CC0</center>
## 三、游戏资源制作
blender本身就是一个非常强大的3D建模软件,建模过程非常简单。这里就展示一下,不详细介绍了:
1.火箭模型:
![bigrocket.png](https://files.steempeak.com/file/steempeak/cheva/7aINLrXE-bigrocket.png)
<center>图二、火箭主体模型 来源:本人截图 版权:CC0</center>
2.发射架模型:
![Image 1.jpg](https://files.steempeak.com/file/steempeak/cheva/TZpgZNaD-Image201.jpg)
<center>图三、发射架模型 来源:本人截图 版权:CC0</center>
发射架的建模就是将长方体细分,然后删去面,留下边缘(edge),然后加一个皮肤包裹修改器(skin modifier)。
3、云朵模型:
![bigrocketcloud.jpg](https://files.steempeak.com/file/steempeak/cheva/cvx74Edh-bigrocket-cloud.jpg)
<center>图四、云朵的模型 来源:本人截图 版权:CC0</center>
云朵就是将几个变形球(meta ball)物体凑在一起,很简单。

## 三、游戏逻辑设置:
开头说了,upbge的游戏逻辑设置不需要写代码,只要连接逻辑方块就行了,upbge的游戏方块分三类:
- 感应器
- 控制器
- 驱动器
其中感应器接受玩家输入或者游戏场景中的其他信息,然后交给控制器,控制值负责逻辑判断,根据相应的条件驱动相应的驱动器,驱动器则驱动场景中的物体运动。
这个小游戏的主要逻辑就是:按下空格键时,火箭受到向上的推力,向上飞行。所以需要一个“键盘感应器”,驱动器则是一个“运动驱动器”并设置为“伺服器模式”,这样物体的运动是通过受力产生的。连接方式如下:
![logic.jpg](https://cdn.steemitimages.com/DQmajBfgUQ9tNyvZtcuANXK63o3mJgxbPAgPSaaiS3rpKqr/logic.jpg)
<center>图四、游戏控制逻辑设置 来源:本人截图 版权:CC0</center>
游戏的主要逻辑就设置好了,是不是很简单,不用写一行代码。你也可以自己做游戏,快来下载免费的upbge吧。
---
参考资料:
- 作者:mikepan [《The Complete "Game Development with Blender" Book》](https://github.com/mikepan/GameEngineBook)
👍 , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,