文章目錄
- 前言
- 游戲引擎
- 軟件界面
- 關鍵概念
- GDScript
- 導出成品
- 創建非游戲應用
- 后記
前言
最近對游戲引擎這塊感興趣,特別是因為游戲引擎自帶的很多工具,作為圖形化軟件的開發應該也不錯。 Godot
是一款這幾年比較流行的開源游戲引擎。這里記錄下入門學習使用 Godot
相關的資源鏈接等。
官方頁面:https://godotengine.org/
官方文檔:https://docs.godotengine.org/en/stable/
官方的文檔本身寫的比較好,下文的內容更多的是對我自己關注的一些點進行梳理。
官方文檔的左下角和右下角可以選擇版本和語言,較新的版本是有中文的。
游戲引擎
Godot is a general-purpose 2D and 3D game engine designed to support all sorts of projects. You can use it to create games or applications you can then release on desktop or mobile, as well as on the web.
Godot 是一個通用的 2D 和 3D 游戲引擎,旨在支持各種項目。你可以用它來創建游戲或應用程序,然后在桌面、手機以及 Web 平臺上發布。
Godot comes with a fully-fledged game editor with integrated tools to answer the most common needs. It includes a code editor, an animation editor, a tilemap editor, a shader editor, a debugger, a profiler, and more.
Godot 是一個通用的 2D 和 3D 游戲引擎,旨在支持各種項目。你可以用它來創建游戲或應用程序,然后在桌面、手機以及 Web 平臺上發布。
游戲引擎可以在官網上下載,有多個操作系統平臺的,也有網頁版的。另外也可以在Steam,EPIC等游戲商店下載。 Godot
主要的開發語言有自帶的 GDScript(一種類似Python的腳本語言)
或者 .NET C#
,所以下載時游戲引擎也會有兩個版本,這里下載使用 Window
上使用 GDScript
的版本(當前版本為4.4.1)。
下載之后解壓直接打開就可以使用不需要按照。當然這里建議解壓到一個文件夾,然后在該文件夾下新建名為 ._sc_
或者 _sc_
的文件,這樣你使用時的一些配置文件和臨時文件就會在該目錄下,而不會出現在系統的用戶目錄下。這種方式方便多個版本的引擎共存,或者當作便攜軟件使用。
軟件界面
軟件界面本來應該沒啥好說的,稍微看下就會。不過目前這個引擎的界面有一個地方是有點反直覺的,所以這里拿出來說一下。
下圖中頂部中間的工作空間切換按鈕切換的是中間的工作空間區域,比如2D/3D的場景視圖;而兩個區域間的一個個標簽是場景的標簽。這個當你在編輯腳本的時候,這里的標簽還是場景標簽,具體顯示的是哪個腳本需要看工作區左邊。
關鍵概念
Godot
開發的游戲是由一個個的場景( Scene
)組成的,場景可以是一個角色、一件武器、用戶界面中的一個菜單、一座房子、整個關卡、或者任何你能想到的東西。每個場景都中包含了若干的節點( Node
)或子場景,節點下面可以有一個或多個子節點。場景和場景、場景和節點、節點和節點間通過信號( Signal
)進行通信。
整個游戲有一個主場景( Main Scene
),這是游戲打開的第一個頁面。整個游戲其實就是由這個場景開始的一個個場景樹或者節點樹構成的。
Godot
中的節點是有繼承關系的,每個節點都繼承了它的父節點的屬性和方法:
每個節點可以綁定一個腳本,腳本中可以使用該節點的屬性和方法,也可以使用其子節點的一些屬性和方法。
GDScript
Godot
主要的開發語言有自帶的 GDScript(一種類似Python的腳本語言)
或者 .NET C#
,另外 Godot
本身是基于 C++
開發的,所以也可以用 C/C++
開發(借助 GDExtension
)。當然沒特殊需求的話官方的 GDScript
用起來也是很方便的。
官方提供了 GDScript
入門教程,這個教程也是用 Godot
開發的,可以在線學習:
https://gdquest.github.io/learn-gdscript/
如果網絡不好的話也可以下載本地版本進行學習:
https://github.com/GDQuest/learn-gdscript
Godot
內置的文檔比較方便,寫腳本的時候按住 Ctrl
單擊函數等會自動跳轉文檔。除了寫腳本時的文檔,在軟件中按 F1
可以打開全局文檔搜索,節點右擊也可以選擇打開相關文檔。
如果寫腳本覺得這個自帶的不行話也可以用VSCode等外部編輯器來寫,具體可以參考官方文檔:
https://docs.godotengine.org/en/stable/tutorials/editor/external_editor.html
導出成品
Godot
導出成品游戲最簡單的方式使用 Export templates
,這個可以在官網下載。導出時可以配置圖標、軟件信息、資源加密等內容。可以導出主要的桌面和移動平臺,也可以導出到網頁端:
具體導出配置因平臺而異有所差別,有些還會依賴額外的工具,具體內容可以參考官方文檔:
https://docs.godotengine.org/en/stable/tutorials/export/index.html
創建非游戲應用
Godot
也可以僅僅用來制作圖形化軟件,還有一些官方支持基于它開發的熱門軟件:
Pixelorama(像素藝術創作工具):https://github.com/Orama-Interactive/Pixelorama
Material Maker(材質制作工具):https://github.com/RodZill4/material-maker
作為普通的應用程序來說,不需要像游戲一樣保持高刷新率,可以啟用 low_processor_mode
模式來減少CPU和GPU的占用,只在必要時重繪界面,降低功耗:
后記
關于 Godot
入門相關的記錄主要就是上面一些內容。這個引擎本身使用起來還是比較簡單的,不過正式用來開發游戲或者應用程序的話只是會引擎和語言等還是不夠的,需要有更多系統性的知識,以及一些練習。關于具體的開發應用,官方也提供了很多Demo和資源等:
https://github.com/godotengine/godot-demo-projects
https://godotengine.org/asset-library/asset