We can literally dedicate an entire article on this. As many differences exist between the two development tools, for now, we’ll just highlight some of the biggest strengths of each tool.
In general, GameMaker boosts a bigger arsenal of 2D functionalities than Unity due to its 2D root. For example, you can get a scrolling perspective background up and running very easily on GameMaker - simply designate the background images and set their scrolling direction and speed, and you’re done. You can learn to do this in 5 minutes. On Unity, there are a few ways to do it, but all involving coding, and the official video tutorial that teaches you how to do it is an hour long – yes, this shows how inelegant the Unity solution is.
On Game Maker, you can also easily fill the screen with texts, draw simple geometric primitives (lines, boxes, circles, polygons) and color them. Three of our games - Beautiful Worm, Saving Raylene and Word Edge – took full advantage of this functionality. They would have required substantially greater effort and more computational resource to render with Unity.
One of the features we love the most about Unity is the ability to create a group object comprising many component objects and register it as a prefab (a pre-fabricated object). An example of a prefab would be a race car with a body object and 4 wheel objects. When you move or transform the prefab (e.g. the said race car speeding along a road), the component objects maintain their spatial relationships with each other. You can easily make many clones of the prefab in the game world, each with a complete set of component objects. This important function is completely missing in GameMaker.
Unity has a much more powerful physics engine than GameMaker due to its root as a 3D development tool. Both tools offer standard rigid body physics, but Unity offers much more: soft body physics (wind effects on cloth and hair, deflation of plastic), ragdoll, hinges, springs and character limbs, to name a few. If you’re interested in making a physics game, Unity is a no-brainer choice.
You can also implement simple light and shadow effects very quickly on Unity – Simply put some reflective material on your sprites, drop a light into the game world and watch them glow! To do the same thing in GameMaker, you’ll have to render your game world onto a surface, and apply some lighting shader. In our opinion, the GameMaker process is significantly less intuitive and accessible to beginners.
Extensions or Plugins for Game Services
Game Maker comes with official support for a host of game services.
If you have the iOS or Android export, you can easily implement leaderboards and achievements on Game Center, Google Play Service and Amazon Game Circle, as well as In-app Purchase (IAP) on iTunes, Google Play and Amazon. The tech blogs in the official site teach how to call the related built-in functions with step-by-step instructions. The same code is good for all platforms, so you don’t need to write three times.
To implement advertisement services like Admob, iAd and Mopub, you can download a free official extension from the GameMaker Marketplace and call the extension functions from your game.
Things are slightly more complicated with Unity. Unity officially supports iOS services like iAd and Game Center. For Android services like Amazon Game Circle, Google Play, Admob, and just about everything else, you’ll have to either download the related plugins from the wild, buy them at the Unity Asset Store or write them yourselves. Note that the plugins bought at the Unity Asset Store are only supported by the respective vendor.
Overall, both tools provide a convenient means to integrate third party SDKs into your game. If you can’t write them yourselves, look them up at the GameMaker Marketplace or the Unity Asset Store.
Despite having made 3 Unity games, we feel that we’ve only skimmed the surface of what Unity has to offer. Meanwhile, the GameMaker tool is being continually upgraded to catch up with its formidable competitor. CKS Studio gives Unity and GameMaker equal love. We’ll continue to monitor their development and update this article from time to time.
Thank you for reading!