When comparing BlitzMax vs Unity 2D, the Slant community recommends Unity 2D for most people. In the question“What are the best 2D game engines?” Unity 2D is ranked 7th while BlitzMax is ranked 52nd. The most important reason people chose Unity 2D is:
2D game creation was a major feature request from the Unity community and was added with version 4.3. 2D is provided in both the Pro and Free distribution of Unity.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Multi target
You can compile on Windows, Mac and Linux. Nothing to change. There are solutions to compile on the same machine for 2 targets.
Pro Modular
There are many modules to extend the features of the language: you can create PDF (via a Cairo module), or just download/upload files (via LibCurl), playing streaming sound (via BASS) and so on (databases, xml, xls...) User can create their own module (they could be written in plain BlitzMax)
Pro Easy syntax
Based on BASIC syntax. Supports OOP, collections (array, list and map)
Pro Stable language and source code
After many years the language it self is very stable. The packages contains the source code of ALL modules (excluding the source of the compiler).
Pro Easy to start, high productivity
BlitzMax is just ready after the installation. Open the IDE, write your code and just press F5 to see the results. You don't need to install other things to use the language. Of course if you want to change the language itself - or modules - you need to install MinGW or other libs, but guidelines are provided and easy to follow.
Pro Fast compiler
With comparison to the some of the other languages Blitzmax compiles source files fast enough.
Pro Compiles to native code
Good performance thanks to native code on each of the target platforms.
Pro Garbage collected language
The language is garbage collected in two modes: reference counting or using the Boehm-Demers-Weiser conservative garbage collector.
Pro GUI for apps
BlitzMax provides the MaxGUI modules that allow to build GUI desktop applications for Windows, Mac and Linux (FLTK or GTK via a module). You also could create your own 'gadgets'.
Pro Great community support
the forum is plenty of examples and solutions! Community is strong and still working, available for getting an hand
Pro BLIde
BLIde is an integrated development environment for Blitz Max, designed to work very close to the project file management performed by BlitzMax engine.
It’s inspired by the .NET IDE and some other great tools, It’s been designed for hobbyist and professional coders.
Pro Built into Unity 4.3+
2D game creation was a major feature request from the Unity community and was added with version 4.3. 2D is provided in both the Pro and Free distribution of Unity.
Pro Integrates with Mecanim
Mecanim brings state machines and blending to 2D bone animation. The state machine editor allows for designers and programmers to visually create a Finite State Machine (FSM) to control when animations should play. Mecanim also allows for blending so an animation can transition smoothly between two states without the need of in between frames made by an animator.
Pro Sprite Sheet and Bone based animation supported
Both types of 2D animation for game development are supported in Unity’s system and can be used interchangeably in the timeline.
Pro Easily change sprites dynamically
Usually used for character customization, programmers can change any sprite in a bone animation at runtime easily by referencing the bone and loading the new sprite from the resources folder.
Cons
Con Outdated and abandoned
The author neglected BlitzMax and works on Monkey2.
Con No mobile targets
Only desktop targets available: Windows, MacOS, Linux.
Con Lacks critical features
- Vertices can't be animated, so you can't have ANY organic feel (like... lungs breathing).
- Parent bone can't be animated without affecting the children. This is especially impeding for organic feel, again.
- No option to show & unshow assets (or it is hidden), like for switching weapon on your character for exemple.
Con Poor script interface for texture atlases
Accessing individual sprites within an atlas texture is possible at runtime, but requires use of the Resources folder subsystem.