跳到正文
Resetera· dannymate·· 2 小时前AI 评分12

Godot(游戏引擎)|OT| 是的,名字来自那部戏剧

Godot (Game Engine) |OT| Yes, the name is from the play

AI 导读

Godot 于 3 月 1 日发布重大版本 Godot 4.0,该引擎为免费开源的 2D/3D 跨平台游戏引擎。其于 2022 年 11 月离开 Soft Freedom Conservancy 创立自有 Foundation,并在 Godot 4.0 前弃用 VisualScript、改推 GDScript。目前生态短板为缺乏 asset store,教程与问答资源不及 Unity 等成熟引擎。

正文

Godot is a community-driven 2D and 3D cross-platform game engine. It is a free and open source (FOSS). It's fun and I love it. Oh but it's not just a game engine is it? It's a platform to build app & tools on top of, such as this pixel art editor.

Godot is FOSS which means we get to look at its sensual source code. This to me is actually the best part about Godot. I can see all the issues other devs are having. I can create an issue and get feedback from Godot developers and from the community. And if my bug isn't getting enough attention then I can go in and fix it myself.

This thread is for news and help for the Godot game engine.
If you want to share your game or game related project then please head over to the Hobby and Indie Game Dev |OT|. There is also more generalised information there alongside alternative engines and other tools.

My experience with Godot:

As of March 1st Godot has released the much anticipated release of Godot 4.0 which brings some major new features, improvements and a much needed lick of paint. While some of these upgrades have been backported to Godot 3, if you're just starting out feel free to start learning on the 4.0 beta. Godot is ran incredibly well with fantastic communication and insightful blog posts which has lead to incredible community growth, trust and funding to the point they, in Nov 2022, left the Soft Freedom Conservancy, the home to famous projects such as Git and Wine, to create their own Foundation. However, one recent controversial decision was to discontinue VisualScript on the run up to Godot 4.0. It was felt that VisualScript wasn't being used and that GDScript, Godot's purpose built, powerful but simple programming language, was opted for instead by beginner users.

Currently Godot's weakness lies in the age of its ecosystem. Although in the pipeline, it currently doesn't have an asset store meaning that you are limited to just the lovely people who are willing to release their work for free for the benefit of the community. You also aren't going to see the same level of tutorials or have your random coding question answered on StackOverflow like you would for a mature engine like Unity.

I have been using Godot for 2D over the last few months since Godot 4 has been released and it's been a fresh of breath air to me coming from Unity. I think I got Godot when I realised it places more emphasis on the composition of its nodes than the code itself. Everything about it feels like it's made for game development by game developers. Aside from some very painful C# and Linux bugs (not like Unity didn't have those) I feel much more productive. A couple things I want to call out specifically as having impressed me is the Particle System and the GUI theming. Oh and also the tween system is solid.

**UP TO DATE REVIEW PENDING**

Games made with Godot - 2022 Showreel
Open Source
Falling Square [FOSS]
Thrive [FOSS]

Closed Source
Cassette Beasts [PAID]
Virtual Circuit Board [PAID]
Cruelty Squad [PAID]
Brotato [PAID]
Dome Keeper [PAID]
Halls of Torment [PAID]
Space Bandit [PAID] - Made by a friend of GoodGamerGuy if you can believe that
Project Kat - Paper Lily Prologue [FREE] - Classic RPG style.

Tools made with Godot - 2022 Showreel
Non-game projects built on top of Godot
Pixelorama [FOSS] - Make animated pixel art, game graphics, tiles and any kind of pixel art you want.
Material Maker [FOSS] - Node-based procedural materials authoring and 3D model painting tool.
Dungeondraft [PAID] - Make tabletop dungeons.
RPG in a Box [PAID] - I mean the name is self explanatory. The thing looks cray if I'm honest.
Pixelover [PAID] - More pixel art things. Bone rigs.
Textreme 2 [PAID] - Some weirdo text thingamajig.
Lorien [FOSS] - Infinite note taking app.
Arrow [FOSS] - Node-based narrative design tool.

Plugins and Scripts
Enhance & expand Godot functionality. Asset Library.
They are in various states of development, please check to make sure they are of an acceptable maturity before using.

Dialogue
Dialogic [FOSS] - Create dialogues, characters and scenes to display conversations in your Godot games.
Dialogue Manager [FOSS] - Write your dialogue in a script-like way and easily integrate it into your game.
GodotInk [FOSS] - An ink integration. Ink is a scripting language for writing for branching stories.
Godot Orchestrator [FOSS] - Use visual scripting to create complex stories and dialogues. OP_Note: I tried to make something like this in Unity.

File Support
Qodot [FOSS] - Add .map support, allowing importing Quake maps.
Importality [FOSS] - Support for Aseprite (and LibreSprite), Krita, Pencil2D, Piskel and Pixelorama files.

Level Building
Cyclops Level Builder [FOSS] - A Godot plugin to let you block in levels inside the Godot editor.

Data Visualisers
SignalVisualizer [FOSS] - Displays the current scene's signals and connections in a easy to read graph and tree dock.

Camera
CineCam [FOSS] - An alternative to Unity's CineMachine system. Allows for complex camera sequences.
Cinematic Camera 2D [FOSS] - Create smooth transitions between cameras.
Third Person Camera [FOSS] - It's a third person camera.

Game Mechanics & Systems
Expresso Inventory System [FOSS] - A modular inventory system.
GLoot [FOSS] - A universal inventory system.
Simplified Flight Simulation Library [FOSS] - When you only want your players to vooosh and pew pew around.
GameGUI [FOSS] - Implements a rich and robust dynamic layout and sizing system for building user interfaces.
RL Agents [FOSS] - An interface between Godot and python-based machine learning algorithms. Train and drive NPC, enemy and other agent behaviours.

Design Patterns
Godot State Charts [FOSS] - Provides an easy implementation of State Charts, a more powerful Finite State Machine.
Finite State Machine [FOSS] - A GDScript implementation of the finite state machine pattern.
Constraint Solving [FOSS] - Wave Function Collapse)and generic constraint-solving implementation. Procedural Generation related.

Automation
AutoMat [FOSS] - Automatically create and assign materials.
Rebuild C# Project on Focus [FOSS] - Rebuild the C# solution when editor window is re-focused and changes are detected to .cs files.
Plugin Refresher [FOSS] - Allows you to activate and deactivate your plugins quickly for fast iteration.
Auto Layout [FOSS] - Simplified in-editor container creation.

Utilities & Helpers
Input Helper [FOSS] - Adds loads of helpers to improve input management.
Godot Style [FOSS] - Provides an unofficial style guide in editor.
Extendable Inspector [FOSS] - Makes it a bit easier to add custom inspector controls to nodes. C# Version.
Panku Console [FOSS] - Feature-packed real-time debugging toolkit.
Edit Resources as Table 2 [FOSS] - Adds a tab for editing folders of Resources as data tables.

Frameworks
Squiggles Core [FOSS] - An opinionated framework for Godot 4 C# games.

Physics
Godot-Jolt [FOSS] - Replace Godot's 3D physics with Jolt. I've heard very good things about this. Jolt is used in Horizon Forbidden West.
Godot-Box2D [FOSS] - Replace Godot's 2D physics with Box2D.
WigglyAppendage2D [FOSS] - Add long appendages like tails, loose ropes and antennas to characters and other moving objects.
WiggleBone [FOSS] - Adds jiggle physics to bones of a Skeleton3D.

Modules
C++ modules that directly integrate into Godot Core to add new functionality
**IN PROGRESS**

Godex [FOSS] - An in development Entity Component System library for Godot. ECS is an architectural design pattern that allow to organize the data in a way so that the workload can be split into small and easy programs.
GodotSteam [FOSS] - A popular module/library for using the Steamworks SDK / API.
Voxel Tools [FOSS] - Create volumetric/voxel based worlds. Looks very cool.

Youtube Channels - Thanks to SFJ
Godot Focused
16BitDev [SHORT] [TOPIC] [GDSCRIPT] [VOICELESS] [SFJ-REC]
AJ's Learning Lab [MEDIUM] [SERIES] [GDSCRIPT]
Bitlytic [SHORT] [TOPIC][GDSCRIPT]
Bonkahe [MEDIUM] [SERIES] [C# & GDSCRIPT]
Brett Makes Games [MEDIUM] [TOPIC] [GDSCRIPT]
Cashew OldDew [MEDIUM][TOPIC][GDSCRIPT]
Chaff Games [MEDIUM] [TOPIC] [GDSCRIPT]
Chevifier [SHORT] [SERIES] [C# & GDSCRIPT]
Chris' Tutorials [SHORT - LONG] [TOPIC] [GDSCRIPT] [SFJ-REC]
Coding Quests [SHORT - LONG] [TOPIC & SERIES] [GDSCRIPT]
DevWorm [SHORT - MEDIUM] [TOPIC & SERIES] [GDSCRIPT]
Dicode [SHORT] [TOPIC] [GDSCRIPT]
FinePointCGI [LONG] [TOPIC] [C# & GDSCRIPT] - Advanced Subjects
GDQuest [SHORT-MEDIUM] [TOPIC] [GDSCRIPT] - Well Known and Respected in the community
GDQuest Q&A [SHORT] [TOPIC] [GDSCRIPT]
Godotneers [LONG][TOPIC][GDSCRIPT]
Gwizz [SHORT] [TOPIC] [GDSCRIPT] [SFJ-REC]
Heartbeast [MEDIUM] [SERIES & TOPIC] [GDSCRIPT] [SFJ-REC] - Also does Aseprite
Iaknihs [SHORT - MEDIUM] [TOPIC] [GDSCRIPT]
Jean Makes Games [SHORT] [SERIES] [GDSCRIPT] [SFJ-REC]
JumboGamedev [VERY SHORT] [TOPIC] [GDSCRIPT] [SFJ-REC]
Kaan Alpar [SHORT - MEDIUM] [TOPIC & SERIES] [GDSCRIPT]
LegionGames [SHORT] [TOPIC] [GDSCRIPT]
MizizizizizizizizizizizizzizizizizizzizizTutorials [MEDIUM] [TOPIC] [GDSCRIPT] - Made Wrought Flesh in Godot. Devlogs
MrElipTeach [SHORT] [TOPIC] [GDSCRIPT] [DAN-REC]
Nanotech Gamedev [MEDIUM] [SERIES] [GDSCRIPT]
Nathan Hoad [SHORT] [TOPIC] [GDSCRIPT]
PlayWithFurcifer [SHORT] [TOPIC] [GDSCRIPT] - They're cool folks
StayAtHomeDev - More news focused
Tutemic - [VERY LONG] [GDSCRIPT]

Other Resource Lists
Awesome Godot

Community Recommended Video

View: https://www.youtube.com/watch?v=nAh_Kx5Zh5Q

CAQ AKA FAQ
**What devices can I run the Godot game engine on?**

What is the current state of console support? [Docs] - As of October 2023
You may have heard that because Godot is open source that it isn't able to support consoles directly due to console manufacturers not open-sourcing their SDKs. That is true. Hopefully console manufacturers will open source these SDKs but until then we have to use a third-party company that specialises in porting Godot games to console. I'm not sure about costs but expect anywhere from a few hundred to a few thousand.

This was the last article Godot wrote on the subject. There is some work being done by W4Games a company set up by major Godot devs specifically for this purpose. They released an article August 2023 showing off the early access for console exporting. They intend to launch this in Q4 2023 with PS5 coming later in Q2 2024. You'll still need approval by console devs like you would for any other engine as normal.

W4Games did talk about their business model. The relevant bit here is: "offer Godot console ports as an affordable and transparent yearly subscription that includes all platforms (the admission to each platform is, of course, conditioned on being approved as a licensed developer by the respective console manufacturer)." The Godot console ports would be export process in Godot similar to how you would already do Android, Windows etc.

**What platforms can my game run on?**

**Export sizes?**

Are there a visual scripting option built-in or an extension like PlayMaker or Game Creator?
Yes and No. There are Graph based tools like the one for Shaders and you can build on top of them like they do in RPG in a Box or Material Maker. However, there isn't anything that you can use to develop a game from start to finish.

Godot used to have VisualScript for this purpose. It's still available in the Godot 3 LTS version. However, one recent controversial decision was to discontinue VisualScript on the run up to Godot 4.0. It was felt that VisualScript wasn't being used and that GDScript, Godot's purpose built, powerful but simple programming language, was opted for instead by beginner users.

VisualScript was extracted out into its own respository and members of the community are slowly working port it to an extension. Though to my eye it's moving at a glacial pace and there isn't much interest. It makes sense because those who can program aren't interested and those who are interested are less likely to program and therefore less likely to contribute code (especially not in C++). The Graph tooling still exists and is used to supplement specific tasks like dialogue, shaders or material either built-in and plugins.

What is GDScript?
GDScript is Godot's purpose built, powerful but simple programming language. It's similar in a lot of ways to Python.

How do I get started with GDScript?
This amazing interactive resource is how!

What are the benefits of using C# over GDScript?

  • C# is a more mature language.
  • More examples and guides for just about any use-case. However, they're often not Godot specific.
  • More options for doing the same task. Pick which one fits your specific use case.
  • Easier to be explicit with code.
  • Used outside of Godot
  • Slightly better performance. (No where near as much as using C++).

What are the benefits of using GDScript over C#?

  • Closely integrated into the Godot engine.
  • Built from the ground up for Godot & game development.
  • Simple syntax
  • Easy to learn
  • Quicker to iterate on
  • Much smaller export sizes

Should I use C# or GDScript?
Turns out you can use both at the same time. I've seen it recommended often. It's called Cross-language scripting. Use GDScript on the Frontend and use C# when you need that performance on the Backend. (You can also technically use C++).

But if you had to pick one:

  • If you've got no programming experience I would suggest GDScript.
  • If you already know and like C# then use C#.
  • Everyone else GDScript. If there's something missing make an issue. For example generic syntax would be nice.

How do I get started with Game Development?

  1. Pick an engine, I would suggest you just use Godot. Less for you to think about.
  2. Learn GDScript unless you already know C# and wish to use that.
  3. Learn Nodes and Scenes. [1][2]
  4. Learn Signals. [1][2][3]
  5. Remake a classic game like Pong, Breakout or Pacman to get a hang of the engine.
    5b. Take on The 20 Game Challenge
  6. Juice the game up. [1] [2]
  7. Join a GameJam that takes your fancy and use the limitations and the prompt to get your creative juices flowing.

You can get it if you really want.

Changelog
2024-01-15 - Removed "Work In Progress" label as OP is servicable.
2024-05-05 - Added Tutemic youtuber

Ddedicated to EzekelRAGE. May he forever read this OP.

来源:Resetera · resetera.com