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

cheva(73)
Published in
#cn
Words
885
Reading
4 min
Listen
Play
7y

昨天发帖介绍了自制的火箭小游戏,小家伙玩得很开心。今天再给大家介绍一下制作过程,使用的是3D软件blender的修改版upbge。制作过程中不需要写代码,而是连接各种逻辑方块,算是可视化编程吧。有兴趣可以大家一起研究。

一、upbge介绍

blender在升级到2.8版以前是自带游戏引擎的,不过升级到2.8版后,把游戏引擎去掉了。但是upbge这个项目继续维护了游戏引擎的的功能,upbge算是blender的一个分叉。其他的建模,渲染,后期。。。等功能和blender一模一样,但是保留游戏引擎。而且和blender一样是开源免费的。
下载地址

二、游戏介绍

游戏很简单,发射架上有一个火箭,按下空格键就会受到向上的推力,就像点火发射一样。放开空格键,推力会消失,游戏引擎已经设置了重力,所以会向下掉。掉落过程中按空格键可以重新施加推力,接住下落的火箭。游戏的目的很简单,就是保持火箭飞行,直到到达火星,然后返回地球。下面这个gif动画就是游戏过程:
rocketgame.gif

图一、游戏画面 来源:本人截图。版权:CC0

三、游戏资源制作

blender本身就是一个非常强大的3D建模软件,建模过程非常简单。这里就展示一下,不详细介绍了:
1.火箭模型:
bigrocket.png

图二、火箭主体模型 来源:本人截图 版权:CC0

2.发射架模型:
Image 1.jpg
图三、发射架模型 来源:本人截图 版权:CC0

发射架的建模就是将长方体细分,然后删去面,留下边缘(edge),然后加一个皮肤包裹修改器(skin modifier)。
3、云朵模型:
bigrocketcloud.jpg
图四、云朵的模型 来源:本人截图 版权:CC0

云朵就是将几个变形球(meta ball)物体凑在一起,很简单。

三、游戏逻辑设置:

开头说了,upbge的游戏逻辑设置不需要写代码,只要连接逻辑方块就行了,upbge的游戏方块分三类:

  • 感应器
  • 控制器
  • 驱动器
    其中感应器接受玩家输入或者游戏场景中的其他信息,然后交给控制器,控制值负责逻辑判断,根据相应的条件驱动相应的驱动器,驱动器则驱动场景中的物体运动。
    这个小游戏的主要逻辑就是:按下空格键时,火箭受到向上的推力,向上飞行。所以需要一个“键盘感应器”,驱动器则是一个“运动驱动器”并设置为“伺服器模式”,这样物体的运动是通过受力产生的。连接方式如下:
    logic.jpg
    图四、游戏控制逻辑设置 来源:本人截图 版权:CC0

    游戏的主要逻辑就设置好了,是不是很简单,不用写一行代码。你也可以自己做游戏,快来下载免费的upbge吧。

参考资料: