tutorial_instancing_2 - seraph526/godot-se GitHub Wiki
实例化 (继续)
###概括 实例化有很多方便的用法.一目了然,使用实例,你可以: *细分场景,使之易于管理. *更加灵活的方法替代prefabs(可以工作在更多层级的功能更加强大的实例化). *设计更加复杂的游戏流程甚至是UIs的方法(UI元素在Godot中也是节点).
###设计语言 但是,实例化场景真正强大的点在于它像一门优秀的设计语言一样工作.这使得Godot完全不同于其他的游戏引擎.整个引擎从底层都是围绕这一概念设计的. 用Godot制作游戏时,建议的方式是将其他的设计模式如MVC或Entity-Relationship diagrams放到一边.以更加自然的方式开始制作游戏.开始设想游戏中的可视化元素,那些不光可以被程序员命名,也可以被任何人命名的游戏元素.
如,这里是一个简单的射击类游戏的创意思路:
编写游戏的大部分时间(或者一般的软件)都花在设计游戏模式并让游戏组件适应这一模式上.基于场景的设计取代了这些,使得开发更快更直接,允许直接关注游戏本身.基于场景/实例化的设计节省了大部分上述的工作,使工作变得十分有效率,因为大部分组件被直接映射成一个场景.这样,不再需要或只需很少的模式代码.
下面是一个复杂点的例子,一个开放沙盒类型的游戏,其中有很多资源或部分是交互的:
用家具搭建一些屋子,之后连接它们.制作一间房子,用这些房间作为这间房子的内部.这间房子可能是堡垒的一部分,堡垒有许多房子组成.最后,堡垒可以被放置到世界地图上.也要填加一些守卫和一些NPCsg到先前创建的场景中. 使用Godot,可以快速的按你所想实现游戏,因为只是多个场景的制作和初始化.编辑器UI也设计成无需程序员操作的模式,所以,通常一个游戏开发小组包括3D或2D艺术家,关卡设计师,游戏设计师,动画师等等,都是通过编辑器界面工作.
###信息超载! 不要太担心,这篇文章主要是用来说明场景和实例化在真实生活是是如何使用的这一概念.最好的理解这些的方便是制作一些游戏. 当你实践时所有的这些都会立刻变得显而易见,所以,不用挠头,开始下一篇教程吧!