When comparing Allegro vs PlayMaker + Unity3D, the Slant community recommends Allegro for most people. In the question“What are the best 2D game engines?” Allegro is ranked 15th while PlayMaker + Unity3D is ranked 77th. The most important reason people chose Allegro is:
The Allegro community has produced a lot of great tutorials and resources. Allegro [Wiki](https://wiki.allegro.cc/index.php?title=Main_Page), Mike Geig's Allegro [Tutorials](http://fixbyproximity.com/2d-game-development-course/), Rachel Morris' [Tutorials](https://www.youtube.com/watch?v=E4RqHtEAAds), CodingMadeEasy's [Tutorials](https://www.youtube.com/playlist?list=PL6B459AAE1642C8B4&feature=plcp).
Ranked in these QuestionsQuestion Ranking
Pro Supports desktop and mobile
Support for Windows, Mac OS X, Linux, iPhone, and Android
Pro Good engine architecture
Allegro is well designed, easy to use and has many useful features.
Pro Good documentation and lots of tutorials
Since it has been in development since mid-90s with hundreds of people contributing to both the engine and documentation, it has all of its bases covered when it comes to standard support.
Pro Per-platform library optimization
Allegro uses DirectX for Windows, and OpenGL for other targets.
Pro Freedom to implement your own game engine
You are not bound to the limits of existing game engines, and you can actually implement your own engine.
Pro Easy to use
You'll need to put more time in learning Unity + Playmaker compared to something like GameSalad. But once get the hang of it and familiarize yourself with what it's possible to build with them, it's quite easy to use.
Pro Provides access to a huge list of assets through Asset Store
For those developers who can't afford an artist, or aren't skilled enough to create their own art, Unity features an Asset Store full of a wide variety of free and paid assets that can be easily added to your game. The Asset Store has more than just music and art. It also has code and modules that can be added to your game such as unique lighting or GUI systems.
Pro Third party plugins support
A lot of third party plugins have support for Playmaker. Playmaker team also invest time to add support for a lot of third party plugins.
Pro Elegant state-based visual scripting
Instead of a single "if this then that" event list which can become very cluttered beyond the most basic behaviors, PlayMaker gives each object a list of states where only certain events are triggered, and performing an action also changes state.
This allows for a clean, simple visual representation which helps break complex logical structures into smaller pieces, making them easier to understand.
It basically can do same things as scripting in Unity.
Con Learning curve for hobbyist developers
Hobbyist developers coding alone may experience a learning curve with Allegro of about 200 hours (if you are rusty on C++). To learn quickly, see Mike Geig's tutorials at Fix By Proximity. This learning curve may be fine if you are considering going professional, but are still unsure.
For hobbyist developers not planning on going professional, you may want to look into a complete 2D game engine, rather than a coding library. For example, there are "non-coding" engines that provide support for coded plugins or scripting. But, if you are a dedicated hobbyist planning to use Allegro as your coding library of choice, you can still develop great games as a hobbyist.
Con Isn't great for C++
If you are a fan of object oriented programming, and want to use this library, then the chances are that you are going to be creating a lot of wrappers for functions in this library.
In short, if you're a C++ person, it could be recommended to check out SFML instead.
Con Comparatively high learning curve
Con Limited tutorials
There are not a lot videos with Playmaker tutorials. Official text tutorials are also quite limited. Even not every action has a description on an official wiki.
Con Performance could be better for 2D
Performance can be a real issue with 2D games. Unity 3D is actually a 3D game engine, and drags a lot of overhead with it.
For mobile, one could never achieve the performance of more specialized 2D engines with Unity3D.