# 2D 遊戲開發,除了 Unity 你還可以考慮試試 Godot!以《文字遊戲》為例 ###### tags: `2022TGDF` `台北遊戲開發者論壇` `共筆筆記` - [2022 TGDF 台北遊戲開發者論壇](https://2022.tgdf.tw/) - [共筆目錄](https://hackmd.io/@samuel-t-chou/2022-TGDF) # 基本資訊 https://2022.tgdf.tw/speakers/wenhan_chang_team9 張文瀚 | Team9 共同創辦人 張文瀚, Team9 共同創辦人、《文字遊戲》遊戲工程師,在這之前是一位完全沒做過遊戲的網站前端工程師。 Team9 成立於 2018 年,成員涵括設計、影像、程式、行銷及文字領域的創作者。2022 年於 Steam 平台推出首發作品《文字遊戲》,帶給玩家耳目一新的體驗。作品多次在國內外斬獲獎項:「2021 Indie Game Award 最佳創新獎」、「2021 GWB 金獎」、「2020 巴哈姆特 ACG 創作大賽 遊戲組 金獎」--等。 ## 議程介紹 > 語言:中文 說到遊戲引擎,相信大家最熟悉的絕對是 Unity 與 Unreal,但 Team9 作為從來沒有做過遊戲的新手團隊,卻選擇使用一個在國內默默無名的開源遊戲引擎「Godot Engine」,在兩年的開發過後發售《文字遊戲》並於市場取得了成功。 講者想分享關於 Godot Engine 的功能介紹、開發流程、與 Unity 的優缺點比較、各種製作實務與這兩年來使用的心得,希望能讓台灣的遊戲開發者們認識這款引擎,提供開發上的另一個選擇。 目標對象:獨立遊戲工作室、想了解遊戲開發的人、軟體工程師等,但不預設基礎知識。 預期收穫:認識一個新的遊戲引擎、了解遊戲開發的過程。 # 內容筆記 <!-- 在這裡之下寫筆記。 --> ## 緣起 - 團隊唯一的工程師 - 整個團隊以前幾乎都沒有遊戲開發的經驗 - 講者以前是寫前端的,不習慣強型別語言 - 第一個遊戲引擎的經驗是 RPG maker - 格狀地圖 - 事件互動 - RPG maker 可以用 js 寫,比較熟悉 - 所以講者魔改了 RPG maker,勉強堪用,做完了 demo - 可是 RPG maker 後面不容易擴展,所以想找其他 solution - 最後就選擇了 godot ## Godot 簡介 - 開源 - 用 godot 的遊戲 - 音速小子究極版,聽說是魔改 godot 來開發的 - 設計理念 - 互相獨立的 2D / 3D 引擎 - 開源 ### 場景結構 - 基礎為 Node - Node 組成的樹就是 Scene - Scene 裡面可以有 Scene - Scene 更新的時候會同步更新引用他的 Scene ### GDScript - 類似 python - 官方推薦 GDScript,但可以用 C#,或是透過 GDNative 去使用其他語言開發 - 而且可以混用 ### 遊戲輸出 - 多平台輸出 - 可切換 render engine - GLES2 - GLES3 - ... ### Godot 4.0 - render engine 升級 - 物理引擎升級 - 編輯器 UI 更新 > 社群驅動,遊戲開發者最知道自己需要什麼 ### 官方文件 - 英文 - 簡中 - 繁中 (WIP) ### 推薦的教學頻道 - GDQuest - HeartBeast ### 輕量 + All in One Binary - ~150 MB - 輸出再額外下載 template - 大部分工作就在 editor 裡面進行就好 - 檔案、Scene 管理 - script editor - shader 編輯 - 版控 ### Scene 文件是純文字格式 - 方便人類閱讀與編輯 ### 優秀的 UI 系統 - godot editor 本身也是用 godot 開發的 ### 多樣化,好上手的動畫製作方式 - GUI - Animated Sprite - Animated Player - 團隊動畫師後面就自己透過 Animated Player 去做了 - Animated Tree - 動畫的狀態機,應該類似 Unity 的 Animator - 講者說文字遊戲內沒怎麼用到 - 2D + 3D - Viewport + ViewportTexture - 加強版的 Render Texture ### Scripting - Game Script -> Runtime - Tool Script -> Viewport - Plugin Script -> Editor - 講者在 godot 裡面自己客製化了一個遊戲內的事件編輯器 - GDNative -> Engine - C++ module -> Engine - Source Code -> Software ## Godot 缺點 ### 3D render 較弱 - 使用 OpenGL 來 render - 多數 3D 作品走 low poly 或 retro 路線 ### 社群相對小 - 教學少 - 範例少 - 遇到相同問題的人少 - 中文資源少 ### 生態系相對小 - 素材少 - 插件少 ### 主機移植困難 - 因為各種 license 問題,沒有辦法有官方支援 - 要買第三方公司出的套件或自行研究 :::info 講者正在跟第三方公司合作,剛開始進行 Switch 移植 ::: ## 結論 ### 適合什麼類型的遊戲? - 任何 2D 遊戲 - note:講者有提到他自己沒有用 Unity 去開發過產品的經驗 - 風格化 3D 遊戲 - low poly - retro - prototype / demo - game jam ### 誰適合用 Godot - 喜歡小規模遊戲 - 喜歡掌控一切 aka 喜歡造輪子 - 喜歡吸收英文資源 - 喜歡動手做改造 - 對開源有熱情,想參與遊戲引擎開發 ### 誰不適合用 Godot - 想做大規模遊戲 - 想做高畫質 3D 遊戲 - 不擅長英文 - 喜歡用大量現成套件 - 喜歡和台灣社群一起交流學習的人 - 因為現在沒有 QQ ### 兩年來的使用心得 - 自由,順手 - UI / UX 很棒 - 官方文件很棒 - 方便 Git 協作 - 2D 開發很舒服 - 3D 開發還可以 總之就是非常喜歡 :+1: ## Q&A > 輸入(手把之類的)、l10n 的支援? - l10n 沒經驗,文字遊戲沒這需求 > Asset 管理特色? - 暫時沒想到 - 但使用上沒有遇到困難 > 用過 GDNative (e.g. godot-rust) 沒有 > 沒程式背景的話? - 建議先看看 youtube 教學試試水溫 - 講者本身有前端的工作經驗 > 有內建連線功能嗎? 有 > 有輸出過 mobile 嗎? - 有,沒遇到問題 - 但 iOS 還沒試過 > 從前端和互動藝術轉換到遊戲開發,有遇到什麼困難嗎? - 有 - 但講者喜歡學習,所以覺得沒啥問題 > 3D scene 的文字濾鏡 - 講者自行開發 shader > 適合開發 AVG 遊戲嗎 - 講者認為適合 - 有熱門的對話插件 > 開發文字遊戲時有遇到特別的難題嗎? - 需要做很多客製化 - 難以用通用邏輯表示遊戲內的謎題 > 沒程式背景的話,建議從哪個語言入手 - Python / JS / GDScript 之類的 > 3D 有限制,那 2D 可以做到什麼程度? - 文字遊戲沒有這種需求,所以不大清楚 > 當初試玩版是用 RM 做的? 沒錯! > 討厭弱型別的話還適合 godot 嗎? - 可以加 type notation > 我 60 歲,適合學 godot 嗎? - 可以 - 沒程式基礎也還行吧 ## 團隊介紹 - [Team9](https://www.facebook.com/Team9.co) - 絕大部分成員都沒有遊戲開發的經驗 - 負責人本身是做工業設計 / 平面設計
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.