偶然间发现Godot这样一个强大的开源游戏引擎,它十分友好的中文学习文档,让我立刻抛弃了unity,虽然unity也没有学习多久😂
今天简单的使用了一下Godot,了解了它的场景和节点是什么意思(以下内容部分嵌入Godot教程中的内容)。
它的思想非常符合我个人的习惯,一个人做游戏往往做不到那么有条理,如果做一个比较大型的游戏,更是容易糊里糊涂的不知道干啥(对我自己来说是这样的)。
Godot推荐忽略大多数常见的设计模式,如MVC或实体关系图,希望开发者以更自然的方式思考场景。
例如,这是一个简单的射击游戏可以想象的方式:
Godot推荐我们将一个游戏所要实现的功能想象成这样一个图的形式,你要做的就是把场景构建好,然后添加上适当的代码,一切就搞定了,当然中间的过程不可能像一句话说的这么简单。
一旦得到这样的图,制作游戏的推荐过程就是为图中列出的每个元素创建一个场景。使用实例化(通过代码或直接在编辑器中)实现从属关系。
在编程游戏(或一般软件)上花费的大量时间主要用于设计架构并使游戏组件适合该架构。基于场景的设计取代了这种方法,使开发更快、更直接,允许专注于游戏逻辑本身。因为大多数游戏组件直接映射到场景,所以使用基于场景实例化的设计意味着需要很少的其他架构代码。
我们来看看另一个更复杂的开放世界类游戏的示例,它有很多资源和嵌套元素:
看看房间(Room)元素。 比方说,我们从这里开始。可以制作几个不同的房间