When comparing Flixel vs Urho3D, the Slant community recommends Flixel for most people. In the question“What are the best 2D game engines?” Flixel is ranked 19th while Urho3D is ranked 56th. The most important reason people chose Flixel is:
Ports are available for Objective C, C# (XNA), HaXe and [Monkey X](https://github.com/devolonter/flixel-monkey).
Ranked in these QuestionsQuestion Ranking
Pro Many ports available
Ports are available for Objective C, C# (XNA), HaXe and Monkey X.
Pro Built-in pathfinding and following
Pathfinding just means figuring out how to (or if you can) get from A to B. FlxTilemap has a function FlxTilemap.findPath() which returns a FlxPath object, which is just a collection of "nodes", or FlxPoint objects.
Pro Camera system for split screen
Create effects like "split screen" views, or "picture in picture" style displays, or even mini-maps with FlxCamera. Each camera is an independent display object, with its own zoom, color tint, rotation, and scaling values.
Pro Record and play back replays
Replays are essentially a list of what keyboard keys were pressed, and what mouse inputs were given, during a specific time frame. Because Flixel is largely deterministic, you can use that information to recreate a gameplay session that someone else recorded, as long as you have the same SWF.
Pro Basic features provide a solid foundation
- Display thousands of moving objects
- Basic collisions between objects
- Group objects together for simplicity
- Easily generate and emit particles
- Create game levels using tilemaps
- Text display, save games, scrolling
- Mouse & keyboard input
- Math & color utilities
Pro Flixel Power Tools extend the functionality
Flixel Power Tools provide a set of classes and APIs that provide more functionality.
Pro Used to create Canabalt, game that started endless runner genre
Pro Free and fully open source
The entire engine is open source and makes use of other open source libraries. Source code is licensed under MIT and available on GitHub.
Pro Includes a lot of samples
There are a lot of sample projects included with the engine for both C++ and Angelscript. They are mostly very simple applications built to demonstrate the engines capabilities and features.
Pro In constant active development
Bugs are usually fixed that same day. Core devs are very active on forums. New features are always being worked on. HTML5, DirectX11, and OpenGL3.1 support have recently been added. (as of 4/15/15)
Pro Very high code quality
Urho3D is written in a modular and super-clean way, so that it can be integrated into the other parts of your game seamlessly.
Pro Small turnaround times while developing
Builds are quite fast, aids in rapid development.
Pro Fat-free codebase
Only use what you need.
Pro Good documentation
The documentation for Urho3D can be split in two parts: auto-generated from class references and documentation written to cover the various aspects, features and systems of the engine. The written documentation is pretty good. It covers most of the aspects of the engine in clear and understandable English.
Pro Good 3D level editor
Pro Unofficial Oculus Rift support
Information on enabling OR support can be found here.
Pro Does not require an editor to get going
Con Development has stopped
Seems like development for Flixel has stopped. The last commit on all of the branches of it's Github repository are from 2011.
Con Poor performance on mobile
Con May be a bit hard to get started
To install Urho3D you need to get the archive from GitHub (be careful to download the master branch) and extract it. After that, you need to compile the engine with CMake. If all the dependencies are installed, then it should be a straightforward process, otherwise you will need to track down and install all the missing dependencies.
For people who don't have much experience with CMake this whole process may seem a bit like magic. For people who do have experience with CMake, the whole installation will be relatively easy.
Con The UI can be hard on the eyes
Urho3D's UI lacks polish and and could cause eye strain.