For the beginner game developer, GameMaker’s simplistic design and extensive toolkit make it an ideal choice. However, for developers seeking a robust, community-supported, and cross-platform engine, Defold’s open-source model shines.
Key Differences Between Defold and GameMaker
- While both engines support 2D development, Defold’s 3D development is on the horizon, creating potential for more diverse game creation.
- Defold is open-source and developer-friendly, granting a wealth of flexibility. GameMaker, though not open-source, prides itself on simplicity and scalability, benefitting novice developers.
- Defold operates on a completely free model, with no fees attached, offering increased accessibility for developers on a budget.
- GameMaker has celebrated 2 decades of development and has powered numerous popular games, boasting a proven track record. Defold, though newer, is continually developing and already used in commercial successes.
Comparison | Defold | GameMaker |
---|---|---|
Cost | Free | Offers various tiers: Free, Creator, Indie, Enterprise |
Language | Lua, C/C++ | GLSL, HLSL, JSON, XML |
Platform Support | Console, Desktop, Mobile, Web | Desktop, Console |
Game Type | Primarily 2D, 3D in progress | 2D |
Open Source | Yes | No |
Community Support | Active community on Discord, Forums | Game developer support |
Performance | Quick and Simple Editor, limited scale due to small team | Language Server for Syntax Highlighting and Intellisense support |
Upcoming Features | 3D Development expected to become stronger by end 2020 | Major updates in 2023: New code editor, AI support, Enhanced modding capabilities |
Extra Features | Cross platform building. No SDKs required | Mod.io extension for user-generated content |
Usage | Used for Games, Simulators, Apps development | Used in hits like Undertale, Forager, and Chicory |
What Is Defold and Who’s It For?
A free and open-source game engine, Defold empowers developers across the spectrum, from amateurs to commercial institutions, offering a powerful platform for game development. Highly regarded for its ease of use, robust technical documentation, and active community, Defold is offered by the namesake foundation, contributing to open software for global game developers.
Defold is primarily intended for developers aiming for multi-platform game creation, necessitating flexibility and an understanding of Lua and native Extensions. It boasts a broad functional scope, offering everything from code editors to debuggers. Regularly updated, the engine keeps stride with the evolving tech landscape.
Pros of Defold
- Free and open-source engine, transparent source code
- Supports multi-platform package building
- Regular bi-weekly updates
Cons of Defold
- Limited primarily to 2D game creation
- Small development team potentially limits large-scale projects
What Is GameMaker and Who’s It For?
GameMaker is a versatile 2D game engine offering an accessible platform for budding game designers. Recognized for its simplicity, the engine is a bedrock for indie gems like Undertale and Spelunky. The engine offers varying tiers from free to enterprise, fitting different requirements.
The developers range from novices looking for an entry point into game design, to full-time developers crafting intricate games. The software boasts support for various languages and plans to offer AI integration and enhanced modding capabilities through a major update in 2023.
Pros of GameMaker
- Attracts both beginner and experienced developers
- Scalable solutions with various tiers
- Continual evolution with regular updates
Cons of GameMaker
- Limited primarily to 2D game design
- Free tier may lack functionality for intricate projects
Code Examples for Defold & GameMaker
Defold: 3D Object Rotation
This Defold code snippet demonstrates rotating a 3D object around its Z-axis. For effective execution, ensure the latest version of Defold is installed along with a 3D object under the name “my_model”.
function init(self)
self.rotation_speed = math.rad(90) -- 90 degrees per second
end
function update(self, dt)
-- retrieve the current rotation
local rotation = go.get_rotation()
-- add onto the current rotation
rotation.z = rotation.z + self.rotation_speed * dt
-- apply the new rotation
go.set_rotation(rotation)
end
GameMaker: Animated Sprite Creation
In this GameMaker code, we create an animated sprite from a sprite sheet. Note, prior installation of GameMaker Studio 2 is needed. Ensure presence of sprite_sheet.png and alignment with the size parameters given.
/// Create event
sprite_index = -1; // No sprite
image_speed = 0.5; // 50{66f7997927a862c9f57ec7dffc6a2fe6d405caee7001dff533b976d48fe118b1} speed
/// Step event
if (keyboard_check_pressed(vk_space))
{
sprite_index = sPlayer; // set the sprite to sPlayer
image_speed = 0.5; // Set the animation speed
image_index = 0; // Start at the first frame
}
Remember: Modify the ‘lang-js’ to ‘lang-gml’ for GameMaker Language snippets. Correct usage of the language descriptor is paramount for correct syntax highlighting. Concatenate your code using “Prism.format” for best readability.
Decision Time: Defold vs GameMaker, Which is Better?
After an exhaustive analysis, let’s cut through the haze and choose the appropriate platform for your creative needs.
Emerging Indie Developers
If you’re an Indie game developer surging into the industry, especially with a focus on 2D games, GameMaker is a solid choice. It presents a scalable and simple platform with extensive tools and more importantly, it doesn’t require hardcore programming skill.
Commercial Game Developers
Full-fledged game development studios or developers aiming for commercial success would find Defold a superior choice. With its native code extension capabilities, regularly updated engine, and active, thriving community, Defold empowers your ambitions with versatility.
2D vs 3D Game Developers
Developers spearheading 2D games, GameMaker is adequate for your aspirations, offering simplified design workflows. But the ambitious game developers planning to angle towards 3D, Defold promises brighter prospects even if its 3D capabilities are yet in a nascent stage.
Defold and GameMaker are both formidable forces in game development. While Defold excels in community support and cross-platform building, GameMaker scores points for ease of use and 2D development capability. For budding developers, GameMaker’s simplicity holds sway. On the other hand, Defold’s versatility caters to the advanced requisites of commercial and 3D game developers.