From Godot to Unity

Yassin Dhahbi
3 min readSep 24, 2023

Due to the recent events with Unity, many developers are still moving away from the engine. After the last attempt to mend the trust or at least ease the tension, many developers don’t want to go back.

Here is a list of things that you may have to consider if you’re contemplating the switch :

1. Understand the Basics of Godot:

  • Godot is a free and open-source game engine.
  • It uses a scripting language called GDScript, which is engine-specific and similar to Python.
  • Godot uses a scene-based system, where scenes are composed of nodes that can be organized hierarchically.

2. Installing Godot and Launching:

  • Godot is a light-weight engine (less than 100MB)
  • Very quick to load and launch new projects

3. GDScript and C#:

  • Unity uses C# for scripting, while Godot primarily uses GDScript. You can also use C# in Godot, but GDScript is more commonly used due to its simplicity and compatibility with Godot’s features.
  • C# implementation in Godot is getting better with every version that drops

4. Scene Structure:

  • In Unity, you work with GameObjects and Components. In Godot, you work with scenes composed of nodes that are very similar to prefabs.
  • Nodes can be added, organized, and scripted to create game logic and functionality.
  • Nodes can be a clearer way to visualize the composition of your scene

5. Scripting in Godot:

  • In Unity, Many scripts can be used as components on a game object to achieve a behavior. In Godot, you can only attach one script by node.
    This may be quite weird when starting but very nice when you already love composition.
  • Signals are like magic! Any node could return useful events that can be used much more easily than Unity’s built-in events.
  • Autoload is the Singelton equivalent within Godot. You can hold variable values and many other things like references to other scripts and many more useful functionalities.
  • Custom Resources function exactly like scriptable objects in Unity. You can hold all the data you need and use it however you like!

6. Asset Store:

  • Unity’s asset store is amazing and it saves so much time and provides you with high-quality assets.
  • Godot doesn’t have an official asset store (yet) but it has a built-in asset library that you can browse and use any of the assets that you have available in any way you like!

7. Community-driven engine

  • Unity has a large community with quite a history to help with any problem that you may face.
  • However, Godot is truly community-driven. As many of its aspects are made by the community
  • If you find a bug and know your way around game engines, you can read the source code of the engine and modify it as you like. You can even submit your addition to make sure that many people benefit from your effort. You can add it as an asset or request a pull request.
  • MIT license: Godot’s FOSS nature (free open-source software )is quite appealing to many developers. As all the revenue is yours to reap.

8. 2D and 3D:

  • Godot has not just established but shined with its capabilities in 2D with many hobbies using it for many wonderful projects that will eventually turn into commercial projects
  • A rumor that’s circulating around is “Godot isn’t good for 3D”:
    It used to be a limitation but not anymore. The rendering and lighting capabilities.

Conclusion:

Ultimately, the possibilities are endless with both Unity and Godot. The decision to switch engines should be based on a careful evaluation of your project’s specific needs and your own development preferences. Whether you choose Godot, Unity, or another engine entirely, your creativity and dedication will drive your success in the world of game development.

Remember, no matter which path you choose, both Unity and Godot offer exciting opportunities to create amazing games. Embrace the journey, learn, and let your passion for game development guide you.

--

--