前言
开发2D游戏推荐使用Unity和Godot,但是Unity老是作妖,所以还是推荐使用Godot。
本文使用的是Godot4.5.1 .NET版本。
官方文档
https://docs.godotengine.org/zh_CN/latest/about/introduction.html
语言推荐
Godot支持的编程语言有GDScript和C#。
之前我是推荐GDScript的,但是现在更推荐C#,主要有两点
- C# 在AI提醒方面优于GDScript。
- C# 也方便大一点的项目代码管理。
平台支持
Godot 支持哪些平台?
编辑器:
- Windows
- macOS
- X11(Linux、*BSD)
- Web
- Android(实验性)
导出游戏:
- Windows(以及 UWP)
- macOS
- X11(Linux、*BSD)
- Android
- iOS
- Web
下载与安装
推荐直接从官网下载,最新版本是4.5.1,从Steam也可以下载,Steam版本不支持C#,并且运行的时候必须运行Steam。
软件下载
下载地址
Godot Engine - 免费开源的 2D 与 3D 游戏引擎
.NET下载
这里推荐使用8.0版本
导出模板下载
导出游戏的时候要设置导出模板
Download for Windows – Godot Engine
基础概念
场景(Scenes)
Godot的场景不仅包含关卡,同时可以是人物、物体、场景、布景、菜单等等各种资产和资源。
场景可以嵌套使用,可以将人物和物体放置于关卡中等。
场景支持继承和扩展。
节点(Nodes)
节点是场景的组成部分,是游戏的最小组成单元。对象的一种。
镜头、精灵、碰撞、动画等等都是节点的一种。
节点的显示方式受上下关系影响,列表下面的节点会显示在画面上层。
场景树(Scene Tree)
由若干场景组成的树形结构。由于场景是由节点构成的树,因此场景树也是包含了大量节点的树。
信号(Signals)
当节点被事件触发时可以发出信号,用来和其他节点通信。
使用时要特别小心。
文件夹结构
我开发时按照以下目录进行分类管理文件
- dist(游戏导出目录)
addons(插件)
scenes(游戏场景)
scripts(脚本)
- scenes(场景中挂载代码)
- autoload(自动加载、单例)
- util(工具类)
- common(通用文件,供全局使用)
assets(资源文件)
- images(图片)
- icon(应用图标)
- vfx(视觉特效)
- music(背景音乐)
- sound(音效)
- shader(着色器)
代码忽略配置
.gitignore
1 | # Godot 4+ specific ignores |