Godot引擎是一款功能强大的开源工具,可帮助您制作视频游戏。Godot 3.0版本为其带来了一场革命
结构,使用现代技术,提高编辑器的用户友好性。由于其多种特性和适应能力
对于许多不同的游戏类型,Godot对于初学者来说可能相当复杂。
这本书将指导你使用Godot编辑器界面,同时解释与游戏开发领域相关的主题。每章
涵盖了一个不同的主题,以创建2D和3D游戏的过程的重要信息为特色。关于一般上下文的详细信息
并解释了如何在Godot中应用它们。其中三章 (第5小时、第17小时和第23小时) 专门讨论示例游戏,因此
您可以看到在实践中使用的内容。
本书中示例项目的所有代码都可以在 https://github.com/vnen/Godot-24-Hours

谁应该读这本书

如果你想学习如何使用Godot引擎开发完整的游戏,这本书是给你的。无论你是一个有经验的游戏
开发人员想要进入一个新的引擎,或者一个刚刚触及这个领域表面的初学者,你会在这些页面上感到很舒服。
这本书是为所有年龄、文化和知识程度的人准备的。

这本书是如何组织的

按照萨姆的 “自学” 方法,这本书分为24章,每章大约需要一个小时才能完成。有
对于高级用户来说,这也是一个额外的第25章,涵盖了如何使用本机代码通过替换慢速代码来补充脚本语言
比特。以下是章节中涉及的内容:
Hour 1, “介绍Godot引擎”: 这一小时让你开始,解释如何下载和运行编辑器,并指导你沿着接口组件。
Hour 2, “场景系统”: 这个小时讨论了一个具体的Godot想法,即项目是如何组织成场景的由其他场景组成,基于被称为 “节点” 的基本块。
Hour 3, “2D图形”: 在这一小时里,你开始学习一般的2D图形知识,包括一点矢量数学。你知道如何使用专门为2D游戏制作的Godot节点。
Hour 4, “脚本”: 这个小时教你关于GDScript,Godot自定义脚本语言。您将学习如何将脚本添加到节点和事物如何相互作用。
Hour 5, “游戏1: 太空射手”: 在这个小时,你让你第一个完整的游戏。它指导您创建一个简单的2D空间射击,包括如何组织你的场景和制作脚本。
Hour 6, “更多脚本”: 这个小时补充了你在第4小时学到的东西,教你如何创建全局游戏对象和在编辑器内部运行的工具脚本。
Hour 7, “处理输入”: 玩家输入对于互动非常重要。在这个小时里,你将学会如何从键盘、鼠标和操纵杆上获得输入。
Hour 8, “物理系统”: 在这个小时内,你将学习如何使用Godot物理引擎来创造真实的运动,而不是各种游戏中经常使用的现实的游戏。
Hour 9, “用户界面”: 本小时向您展示Godot图形控件,如按钮和文本框,用于创建用户游戏中的界面。
Hour 10, “动画”: 在这一小时内,您将了解Godot引擎提供的动画系统。你将学习如何创建属于你的简单动画以及如何使属性随时间变化。
Hour 11, “游戏流程”: 这个小时负责教你如何在游戏中进行转换。你学会了如何从一个场景到另一个场景,如何暂停游戏,以及如何优雅地处理退出请求。
Hour 12, “文件系统”: 在这一小时中,您将看到如何创建和保存配置文件以及保存游戏。你也学会了如何从磁盘加载资源以及如何加密文件。
Hour 13, “3D图形”: 本小时向您展示3D游戏中涉及的基本概念。它教你哪些节点是3D的一部分给玩家视觉的环境,比如相机。您还将学习如何将自己的模型加载到游戏中。
Hour 14, “项目管理”: 本章为您提供有关如何构建游戏项目文件的提示。它向您展示了如何将文件导入到项目中,以及如何使用版本控制系统来保护项目免受不可逆的更改。
Hour 15, “着色器和材质”: 在这一小时中,您将学习如何在2D和3D中为Godot中的对象创建和使用材质环境。您还将学习有关着色器的基本概念以及如何在编辑器中创建着色器。
Hour 16, “灯光和阴影”: 这个小时向你展示了如何在场景中添加光线,这在3D中是至关重要的,在2D也是。您还可以看到如何启用和配置阴影。
Hour 17, “Bloxorz克隆”: 这个小时给出了第二个游戏项目。你学习如何用滚动块制作一个简单的3D益智游戏。
Hour 18, “环境与反射”: 在这一小时中,您将学习如何使用全景自定义3D世界的环境天空或简单的颜色。您还将学习如何使用全局照明以及如何使用探测节点改善反射。
Hour 19, “声音”: 在这个小时里,你会看到如何给你的游戏添加声音。您将了解2D和3D中的位置音频,以及如何使用总线和效果,以及如何利用计算的多普勒效果。
Hour 20, “粒子系统”: 这个小时教授粒子在2D和3D环境中的影响。这些在创建视觉效果 (如烟雾、火和火花) 时非常有用。
Hour 21, “视口和画布”: 在这一小时内,您将看到Viewport节点的使用,例如如何制作分屏游戏和截屏。您还将学习画布图层如何组织2D场景。
Hour 22, “网络”: 本章指导您了解Godot内部的网络功能。你知道如何与他人联系对等并通过网络同步游戏状态。
Hour 23, “游戏3: 网络炸弹人克隆”: 本小时向您展示经典游戏的娱乐,并增加了网络多人游戏功能。
Hour 24, “导出项目”: 在这一小时内,您将学习如何打包所有内容并制作最终的二进制集,该二进制集可以作为Godot支持的每个平台的游戏。
Hour 25, “Native Code”: 本奖励章节为您提供了有关使用本机代码和godot来优化性能-游戏的关键部分。它教您如何使用提供的API以及如何编译C代码。本书中示例项目的所有代码都可以在 https://github.com/vnen/Godot-24-Hours