Ease of Getting Started
It’s relatively easy to get started on GameMaker. Once you’ve installed the tool, you can download tutorials and follow the step-by-step instructions to start making simple games right away. The library of tutorials is quite sufficient, from simple games like a 1942 (a top down shooter) clone to sophisticated ones that teach how to set the game view to look good on different aspect ratios. Tech blogs on game service integration can be found in the official site. Beyond that, you can find some video tutorials on Youtube as well.
We found the official tutorials to be very easy to follow. We made our first GameMaker game, Super Math Invaders, after going through just 4 tutorials. For game service integration, we found the tech blogs to be very easy to follow.
To get started on Unity, you can watch video tutorials on the official website that teach the Unity user interface, how to make simple games, as well as fundamental concept about the physics engine. You can even find a large collection of videos dedicated to the fundamental concepts of Object Oriented Programming in C#! What’s sorely missing is the coverage on intermediate and advanced topics, such as the animation tool, the shader tool and integration of external game services. We’ll discuss more about Game Services under a separate section.
While the library of educational videos is vast, we found it impossible to start making our first game even after going through as many of them as we could. We had to search for more video tutorials on Youtube to supplement our knowledge. We were finally able to turn Billionaire Blitz into a reality after a month of very intensive learning. If you’re willing to spend, there are plenty of Unity courses on Lynda.com that you can subscribe to.
Overall, we found the learning curve of Unity for a beginner to be much steeper than that of GameMaker.
GameMaker’s intuitive Drag-and-Drop (DnD) interface is very easy to learn. Even without a programming background, you can get a basic game – be it a top down shooter, a runner, a platformer or a point-and-click adventure – off the ground quickly. If your background is arts or music, and you want to make a game that’s primarily about artistic expression instead of complex mechanic or in-depth gameplay, then GameMaker would be a great tool for you.
Once you are comfortable enough with GameMaker to dive deeper into game design, you can use GameMaker’s fairly powerful, C-like scripting language to code more complex algorithms. Frankly speaking, you need to script to go beyond the basic. Even a simple match-3 game like Candy Crush Saga requires an algorithm to function.
Here at CKS Studio, we made our first GameMaker game, Super Math Invaders, entirely with DnD. After that, when we ported Memon’s Quest from Gamesalad to GameMaker, we mixed DnD with a bit of scripting in light of the more demanding algorithm. By our third game, Digi Crush, we’ve switched over to scripting completely.
The good news is that you only need to have a basic grasp of OOP to get started. We picked up Unity in June 2014 and released our first Unity game, Billionaire Blitz, in July 2014. By Jan 2015, we’ve released our third Unity game, Hyper Rift.
Another advantage of the OOP paradigm is that you can implement much more complex algorithms and game events than using the basic scripting language of GameMaker. Ever been amazed by the complex interactions among objects in an open-world game like Grand Theft Auto? Yup, that’s made possible by OOP.
If game development is a long term career path for you, coding, or having a good programmer in the team, is absolutely vital, whether you choose GameMaker or Unity.
User Interface Design
Here, User Interface (UI) Design refers to the positioning of UI elements on the game view. For example, head-up display, health meter, movement buttons, pause buttons are all UI elements.
In GameMaker, a game scene comprises a UI layer and a game layer. The UI layer is positioned on top of the game layer. The UI elements are rendered onto the UI layer. Shader effects can be applied to the game layer without affecting the UI layer.
Since August 2014, a set of new UI elements, comprising rich-text box, slider, scroll view, scroll bar and clipped view, has been introduced into Unity. You can now visually design your UI layout by dragging and dropping these UI elements onto a canvas surface, and the canvas itself can be oriented and animated in creative ways. The UI elements are designed to be easily resized and anchored. They also elegantly adapt to the resolution and aspect ratio of the game view. Last but not the least, you can easily assign callback functions to these UI elements by Drag-and-Drop. Our Hyper Rift takes full advantage of these UI elements.
Overall, Unity’s diverse UI elements, ease of use and full visual control make UI design more superior to what the GameMaker has to offer.