Godot and GDevelop are both commendable open-source game engines, but GDevelop‘s intuitive, event-based visual programming and focused tools makes it more suitable for learners and programmers with variable experience. However, Godot shines with its scene-driven design and flexible scripting language for more experienced developers targeting complex applications.
Key Differences Between GDevelop and Godot
- Focused Audience: GDevelop targets learners and programmers of all experience levels while Godot, although beginner-friendly, focusing more on experienced developers.
- Design: Godot uses a scene-based system for game creation, while GDevelop uses an event-based system.
- Scripting Language: Godot uses its GDScript, with optional C# support, but GDevelop enables game creation without coding.
- 3D Capability: Both offer 3D, but Godot scales better across high and low-end devices.
- Platform Support: Both run on multiple platforms, but GDevelop5 supports Android, iOS, Facebook Gaming, and Steam. Godot 3.5 supports Android phones, tablets, and various web platforms.
Comparison | GDevelop | Godot |
---|---|---|
Engine Type | Open source, cross-platform | Open source, unified |
Game Creation | Event-based visual programming | Intuitive scene-driven design |
Platform Compatibility | Windows, macOS, Linux; Web based | Windows, macOS, Linux |
Game Publish Platforms | PC, Web, Mobile | Desktop, Mobile, Web |
Educational Use | From school to university courses | Beginners to experienced developers |
Advanced Features | 3D graphics, animations | 3D engine supporting high and low-end devices |
Design Structure | Uses objects, code pieces | Scene, nodes |
Program Results | UI, UX Understanding, Game Reviewing | Fully featured component development |
License Fee | Free | Free under MIT License |
What Is GDevelop and Who’s It For?
GDevelop is an open-source, cross-platform game engine developed by Google’s Florian Rival. Seamllessly creating games suitable for PC, mobile, and HTML5 platforms, GDevelop aims to simplify game development. Its IDE, core library, and game engines are all readily accessible. With a visual programming system based on events, GDevelop is designed for all, from the inexperienced to adept coders.
GDevelop is notably used in games education, with its capabilities extending from school-level to university courses. Additionally, it’s a preferred choice for developing learning and serious games. Its versatile suite of features include animation, scripting, sound design, and visual effects, affording developers rich creative freedom. The focus remains firmly on creating games with no code.
Pros of GDevelop
- Open-source and cross-platform
- Designed for non-programmers to experienced coders
- Features include scripting, animation, visual effects, sound design
- Advanced features for creating 3D graphics and animations
- Utilized in games education from schools to university courses
Cons of GDevelop
- Slower development for advanced users
- Potential issues with stability
- May require source modification for advanced projects
What Is Godot and Who’s It For?
Godot stands as an open-source, license-free game engine acclaimed worldwide. Designed around a unique, intuitive scene-driven system, Godot lets developers construct games from simple blocks and reusable scenes. The engine supports a built-in scripting language, GDScript, and a range of other popular languages.
From Juniors to seasoned game developers, Godot provides an array of tools to accommodate all skill levels. Offering dedicated 2D and 3D workflows, multi-platform compatibility, and a built-in visual editor, it presents developers with immense flexibility and customization. However, for more complex 3D game development, Godot may not be the best fit.
Pros of Godot
- License-free and open-source
- Flexible scene system for reusable components
- Built-in scripting language GDscript
- Supports C# and C++
- Compatible with multiple platforms
Cons of Godot
- Not suitable for complex 3D game development
- GDExtension API only available in Godot 4
- Limited languages supported natively
Code Examples for GDevelop & Godot
GDevelop: Platformer Character with Double Jump
This example code enables a platformer character in GDevelop to perform a double jump. The prerequisites are a working understanding of GDevelop, and basic concepts of games development.
//Variable setup
var jumpCounter = new gdjs.Variable(0);
runtimeScene.getVariables().add("jumpCounter", jumpCounter);
//Listening for the jump command
runtimeScene.getOnceTriggers().push(function(){
if(gdjs.evtTools.input.isKeyPressed(runtimeScene, "jump")){
//Check if the player has available jumps
if(jumpCounter.intValue() < 2){
jumpCounter.add(1)
platformerObject.getBehavior("PlatformerObject").jump();
}
}
});
//Resetting jumpCounter on ground contact
runtimeScene.getOnceTriggers().push(function(){
if(platformerObject.getBehavior("PlatformerObject").isOnFloor()){
jumpCounter.setNumber(0);
}
});
Godot: Random NPC Dialogue
This Godot engine code selects a random NPC dialogue from a predefined array. For this code to work, you should have an existing project with NPC characters, and be familiar with using signals and arrays in Godot.
extends Node
//List of dialogues
var dialogues = ["Hello!", "Good day.", "Nice to meet you!"]
//Signal emitted when a dialogue is selected
signal dialogue_chosen(dialogue)
func _ready():
//Connect the signal to a method
connect("dialogue_chosen", self, "_on_dialogue_chosen")
func choose_dialogue():
//Choose a random dialogue
var chosen_dialogue = dialogues
emit_signal("dialogue_chosen", chosen_dialogue)
func _on_dialogue_chosen(chosen_dialogue):
print(chosen_dialogue)
When it comes to GDevelop vs Godot, what’s the conclusion?
In the faceoff between GDevelop and Godot, the choice you make will hinge heavily on your particular demands and experience level. Both technologies excel in their own zones.
Non-coder Game Enthusiasts
For those who are interested in game creation but lack extensive coding expertise, GDevelop is the preferable choice. Its event-based visual programming, easy-to-use engine and focus on making games without code allow novices to engage effectively in the game development process. If you’re seeking to learn game design tools techniques and terminology, GDevelop is a solid option.
Experienced Developers and Coders
Godot’s feature-rich platform, built-in scripting language GDscript and flexibility is more in line with the needs of experienced developers. The intuitive scene-driven design, reusable scene creation and direct import of Blender files allow for complex game development. If you’re a seasoned developer looking for advanced features and customization, Godot is your go-to engine.
Platform Considerations
For developers prioritizing cross-platform functionality, GDevelop shines due to its compatibility with Windows, macOS, Linux, web browser and mobile platforms. Its games can be published to PC, Web, Mobile platforms, and even to Facebook Gaming and Steam. For those requiring extensive platform compatibility, GDevelop has the edge.
For those seeking to unfold their creativity without the worry of programming, GDevelop hits the spot. It’s user-friendly and lightweight, making it perfect for novices. On the other hand, Godot provides experienced coders with flexible and advanced features, making it the better choice for complex game development.