Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon
26. November 2019

.

This is a very common question, so this guide and video is setting out to answer why *I* might choose to use Godot over those other engines. Keep in mind, this isn’t me saying Godot is better or worse than those engines. Additionally, I have a video on Unreal vs Unity in the works, so if you want to decide which of those engines to use, stay tuned for that.

Without further ado, let’s jump in.

Free

Obviously, the lack of a price tag is one of the most obvious features of Godot. Yes, you can start for free with both Unity and Unreal Engine, but both ultimately have a price tag. With Unity, you pay a per seat license fee if you make over 100K a year. With Unreal Engine you pay a fixed 5% royalty after the first $3000 dollars earned. If you’re not making money nor plan to, this obviously doesn’t matter… but the more successful your game is, the better a deal free is!

Open Source

On the topic of free, we also have free as in freedom. Godot is free in both regards, to price tag and license, being licensed under the MIT license. Unity trails in this regard having only select subsets of the code available. Unreal Engine has the source code available and you can completely build the engine from scratch, as well as being able to fix problems yourself by walking through a debug build and applying fixes.

UE4 however is under a more restrictive proprietary license, while Godot is under the incredibly flexible and permissive code license.

Another aspect in Godot’s favor… it’s also by far the smallest code base and very modular in design from a code perspective. This makes it among the easiest engines to contribute code to. The learning curve to understand the source code is a fraction of that to get started contributing to Unreal, while contributing to Unity is frankly impossible without a very expensive negotiated source license.

Language Flexibility

Over the years Unity have *REMOVED* language support. Once there was UnityScript and Boo, a python like language, in addition to C#. Now it’s pretty much just C# and their in development visual scripting language.

Unreal on the other hand has C++ support, with the C++ thanks to Live++ usable very much like a scripting language (although final build times are by far the worst of all 3 engines!), as well as the (IMHO) single best visual programming language available, Blueprints.

For Godot the options are much more robust. First off there is the Python-lite scripting language, GDScript. You can also use C++, although the workflow for gameplay programming may be suboptimal. Additionally, C# support is being added as a first-class language and there is a visual programming language available here as well, although I can’t really think of a reason to use it as it stands now.

Where Godot really shines though is its modularity. GDScript itself is implemented as a module, meaning making other custom scripting languages is a borderline trivial task, as is extending or customizing GDScript. Additionally, there is GDNative/NativeScript it makes it fairly simple to link to external code, without having to jump into the guts of Godot (nor having to compile Godot) or to write performance critical code in C or C++. Finally, you have the ability to create C++ “modules” that have access to all of the C++ classes available in Godot without having to make changes to the underlying codebase.

Ease of Use

This one is obviously subjective, but if you are looking to create a game, especially as a beginner, the learning curve and ease of use with GDScript make this the easiest of the 3 engines to pick up, at least in my opinion. Unreal Engine is frankly fairly appalling for 2D titles, having basically abandoned Paper2D (their 2D API) on the vine. Over the last couple years Unity have really been focusing heavier on dedicated 2D support, but you still must dig through a lot of cruft and overhead to get to the meat of your game.

With Godot you pretty much everything you need for 2D out of the box and the ability to work directly with pixel (or % based) coordinates.

It’s Tiny

Unreal and Unity are multi GB installs and both have a hub or launcher app. Godot… a 50ish MB zip file (plus templates for a couple hundred more MB needed when deploying). Download, unzip and start game development!

You Like it Better?

You may, or you may not like the coding model of Godot. Chances are if you like the Node based approach to game development, you will love Godot. All three game engines (and almost all modern game engines) take a composition-based approach to scene modeling. Godot takes it one step further, making everything nodes, trees of nodes, even scenes are simply nodes. The approach is different enough that users may either love or hate the approach. If you love the approach Godot takes, you will be productive in it. If you don’t like it, you’re probably better served using Unity or Unreal.

Why Not Pick Godot Then?

I am not even going to pretend that Godot is the perfect game engine and ideal in every situation… there are certainly areas where Unity and Unreal have a small to huge advantage. This could be its own entire video, but a quick list include:

  • Performance concerns, especially on large 3D scenes (hopefully resolved with proper culling and the upcoming Vulkan renderer). In 3D, both engines out perform Godot quite often
  • Platforms… Unity and Unreal support every single platform you can imagine, Godot supports most of the common consumer categories and takes longer to get support for devices like AR/VR. Hardware manufacturers work with Unity and Epic from the design stages, while Godot pretty much must wait for hardware to come to market and then for someone to implement it. Another huge difference, and one of the few downsides to open source software, it isn’t compatible with the closed proprietary licenses of console hardware. While Godot has been ported to run on console hardware, it isn’t supported out of the box and probably never will be.
  • Ecosystem. Godot has a vibrant community but can’t hold a candle to the ecosystem around Unreal and especially Unity. There are simply more users, more books, larger asset stores, etc.
  • The resume factor… this is a part of ecosystem continued. It’s easier to get a job with Unity experience or Unreal experience on the resume than Godot. While many people wouldn’t (and really for a full-time hire, shouldn’t) care what engine you use, when people are hunting for employees, they often look for Unity or UE experience specifically. The other side of this coin is the number of people with Unity or UE experience is larger if you are the one doing the hiring.
  • As with many open source projects, it’s still heavily dependent on one or two key developers. If the leads left the project, it would be a massive blow to the future of Godot. Meanwhile there are hundred or thousands of people being paid to develop Unity or Unreal and the departure of any individual member isn’t likely to have a tangible impact.

The Longer Video Version

Programming General


26. October 2019


NeoAxis 2019.3 was just released.  NeoAxis is a free C# powered 3D game engine with an editor capable of targeting Windows and UWP platforms currently with more planned in the roadmap.  The 2019.3 release brings several major new features such as a new terrain system and a built in 3D building for assembling geometry directly inside the game engine.

Details from the changelog:

  • API of the engine and the editor have been updated. Now they are considered complete.
  • Terrain.
  • Builder 3D. Fast level creation tools, 3D modeling tools, constructive solid geometry operations.
  • Three ways to create objects in the scene are now available: Drag & Drop, By Click, By Brush.
  • Tools for creation a huge amount of objects.
  • Surface component. A definition of surface type which contains material, set of meshes and other objects. Surfaces are used for painting and object creation by means brush.
  • Group Of Objects component. An object in a scene designed to store and display a large number of similar objects.
  • Decals.
  • Material: Advanced blending. The ability to configure which channels to write to the G-Buffer. Used for decals.
  • Per-object motion blur.
  • Smooth LOD transition.
  • Area component. Represents an area in space defined by the set of points.
  • Layers in the scene.
  • Package manager has been added.
  • Support for creating a build for the target platform has been improved. Now scripts and engine add-ons are supported. The process of creating a build is simplified. The page about build in manual has been added.
  • Build for Universal Windows Platform (UWP) has been improved.
  • Engine DLL assemblies management has been improved. Now unnecessary assemblies are not loaded into the simulation, thereby reducing the load on garbage collector.
  • C# Editor: Work with CS files has been improved. Now changes are synchronized between files. Now there are no invalid warning markers.
  • C# Editor: The ability to customize the visibility of markers has been added.
  • Occlusion query API has been added.
  • Lens flares now use occlusion queries to detect visibility on the screen.
  • Lens flares now appear and disappear smoothly.
  • The ability to change video mode, fullscreen mode, vertical sync in the player app.
  • Editor: Tool tips for events.
  • Editor: Many small fixes.
  • Material Editor: Access to TexCoord 2 and 3 from the shader editor.
  • Material Editor: DitherBlending function.
  • Objects Window: Search.
  • Scene Editor: Select same objects in sphere area by mouse double click.
  • Vignetting screen effect: Noise.
  • Bug fix: Physics: No collision between soft bodies and rigid mesh shapes.
  • Bug fix: Scene Editor: Unable to detach the object when it contains collision body.
  • Bug fix: Screen Space Reflection effect fixed.

You can learn more about the release and see NeoAxis in action in the video below.

GameDev News


24. October 2019


The Game Creators have just released the AppGameKit Studio: Particle Editor, which despite the name will work with both AppGameKit Classic and the newer AppGameKit Studio.  It is a combination editor and runtime making creating and controlling particle systems for AGK a breeze. 

Key features include:

  • Create effects with as little as 1,000 to 1 million particles
  • Emitter types include box, circle, disc, filled sphere, spherical shell, line
  • Burst emitters for explosions and sparks
  • Particle type settings from size, colours, lifespan and more
  • Animated image particle support
  • Particle blend modes supported, opaque, alpha, additive
  • Particle colouring controlled using gradients
  • Particle orientation control
  • Turbulence system
  • Vector field controls, paint, push, attract, repel, swirl
  • Function packed runtime code for your projects (Win, Mac & Linux)
  • Custom textures and gradients supported
  • Reflector system used to bounce particles off floors and walls

The Particle Editor is available as DLC with an MSRP of $30 USD.  If you are interested in checking out AppGameKit Studio, be sure to check out our hands-on getting started tutorial series available here or check out the video below.

GameDev News


13. October 2019


The Unigine Engine has existed for well over a decade and has been used heavily in the engineering, military and scientific markets as well as powering several popular benchmarking applications.  With the boom in indie game development and game engines, Unigine was rarely if ever used and most of that came down to it’s pricing.  Recently however, Unigine started offering cheaper monthly subscription options as well as a 30 day trial.

Unigine is available for Linux and Windows using OpenGL and Direct3D and can target those platforms as well as many VR headsets including the VIVE and RIFT.  Games are programmed using your choice of C++, C# and/or their own UnigineScript language.  Unigine also ships with a fully functioning editor and complete asset pipeline.

In the following video we go hands-on with the Unigine game engine, taking a look at the coding experience, editor and ecosystem available.

GameDev News


8. October 2019


If you’ve been looking at picking up either RPG GameMaker MV or Visual Novel Maker MV from Degica, now is the perfect time with the Humble Software Bundle: RPG Maker Returns bundle.  As always the bundle is organized into tiers, you buy the higher dollar tier, you get all the lower tiers as well.

The tiers of this bundle are:

1$

  • RPG Maker VX
  • RPG Maker 2000
  • Game Character Hub: Portfolio Edition
  • Game Character Hub: DS Generator Parts
  • Game Character Hub PE: Second Story

8$

  • RPG Maker XP
  • RPG Maker 2003

15$

  • RPG Maker VX Ace
  • VX Ace Samurai Resource Pack
  • VX Ace DS Resource Pack
  • VX Ace DS + Resource Pack
  • 8bit Fantasy RPG Tracks Vol 1
  • Modern Music Mega-pack
  • Samurai Force 8bit Tracks Vol 1

50$

  • RPG Maker MV
  • Visual Novel Maker + Live2D
  • MADO
  • SAKAN
  • GENE
  • Visual Novel Maker – Magical School Music Pack
  • Visual Novel Maker – Japanese School Girls Vol 1
  • RPG MV – Frontier Works: Futuristic Heroes and BGM
  • RPG MV – Battle Girl Characters Pack 1
  • RPG MV – Heroine Character Creator
  • RPG MV – Beast Man Generator
  • RPG MV – Ancient Dungeons: Base Pack
  • RPG MV – RMBoy Graphics Pack
  • RPG MV – Time Fantasy
  • RPG MV – Time Fantasy: Side View Animated Battlers
  • RPG MV – Symphonic RPG ME Perfect Collection
  • Retro Fantasy Music Pack
  • Horror Soundscapes
  • Classic Fantasy Music Pack
  • MV Monsters HIBIKI KATAKURUA Vol 1


As with all Humble Bundles, you can decide how your money is allocated, between the Publisher, Humble, Charity and if you so choose (and thanks if you do!) to support GameFromScratch using this link.  Learn more about this bundle in the video below.

GameDev News


AppGameKit Studio

See More Tutorials on DevGa.me!

Month List