序言

本文可幫助你瞭解 Godot 是否適合你。我們將介紹該引擎的一些廣泛的功能,讓你感受到它能實作什麼,並回答“入門需要知道什麼?”等問題。

這絕不是一個詳盡的概述。我們將在這個入門系列中介紹更多的功能。

什麼是 Godot?

Godot 是一個通用的 2D 和 3D 遊戲引擎,旨在支援各種專案。你可以用它來建立遊戲或應用程式,然後在桌面、手機以及 Web 平臺上發行。

你也可以用它來建立主機平臺的遊戲,儘管你需要很強的程式設計技能,或者需要一個開發者為你移植遊戲。

備註

由於遊戲主機製造商施加的許可條款,Godot 團隊無法提供開源的主機匯出項。但是無論使用哪種引擎,在主機上發行遊戲始終是一項繁重的工作。更多相關內容: Godot 主機支援

這個引擎能幹什麼?

Godot 最初是由一家阿根廷遊戲工作室內部開發的。開發始於 2001 年,2014 年開源發行後經過了重寫和大量的改進。

Some examples of games created with Godot include Cassette Beasts, PVKK, and Usagi Shima. As for applications, the open source pixel art drawing program Pixelorama is powered by Godot, and so is the voxel RPG creator RPG in a Box. You can find many more examples in the Official Showcase.

../../_images/introduction_usagi_shima.webp

Usagi Shima

../../_images/introduction_cassette_beasts.webp

Cassette Beasts

../../_images/introduction_pvkk.webp

PVKK: Planetenverteidigungskanonenkommandant

../../_images/introduction_rpg_in_a_box.webp

RPG in a Box

如何擴充 Godot?

Godot 竭力自主提供一般情況下會用到的工具。我們有專用的腳本工作區、有動畫編輯器、有圖塊編輯器、有著色器編輯器、有除錯工具、有分析工具、還有可以在本機與遠端裝置上熱重載 (Hot-Reload) 的功能…等。

../../_images/introduction_editor.webp

開發團隊致力於提供功能豐富的遊戲編輯器,並提供一致的使用者體驗。雖然總是有改進的餘地,但使用者介面不斷得到完善。

當然,如果你願意,你可以用外部程式工作。我們官方支援匯入在 Blender 中設計的3D場景,並維護在 VSCodeEmacs 中編寫 GDScript 和 C# 的外掛程式。我們還支援 Windows 上的 Visual Studio for C#。

../../_images/introduction_vscode.png

設計語言

我們來看看現有的程式設計語言。

You can code your games using GDScript, a Godot-specific and tightly integrated language with a lightweight syntax, or C#, which is popular in the games industry. These are the two main scripting languages we support.

通過 GDExtension 技術,你也可以用 C 或 C++ 編寫遊戲玩法相關或高性能演算法,而無需重新編譯引擎。你可以使用這項技術在引擎中集成協力廠商庫和其他軟體開發套件(SDK)。

當然,你也可以直接向引擎新增模組和功能,因為它是完全自由且開源的。

使用 Godot 我需要知道什麼?

Godot 是一個功能豐富的遊戲引擎。它有成千上萬的功能,有很多東西需要學習。為了充分利用它,你需要良好的程式設計基礎。雖然我們試圖讓引擎變得簡單易懂,但如果你首先知道如何像程式師一樣思考,你會受益匪淺的。

Godot 依賴物件導向程式設計規範。熟悉類、物件之類的概念可以更有效率地去寫程式碼。

如果你是一個程式設計新手,我們建議你去觀看哈佛大學提供的 CS50 open courseware 。這是一個很好的免費課程。它能教你所有你在使用 Godot 前需要知道的知識。在之後學習任何遊戲引擎時,他會幫你節省非常多的時間並跨過非常多的障礙。

備註

在 CS50 中,你會學習很多程式設計語言。不要感到害怕:程式設計語言之間有很多的相似之處。你在學習一個語言時學到的技巧能夠很容易地轉移到其他語言上。

功能列表 中,我們會提供更多具體為 Godot 學習的資源。

在下一部分中,您將大致瞭解引擎的基本概念。