There are problems in the legacy code that could not be solved by a simple patch.
Lime 2 and OpenFL 3 is a response to the growth pains, problems and deeply-rooted issues that were tied to the older codebase.
The new codebase:
- Is currently running on the Wii U, Xbox One and PS Vita
- Is primed to get custom shader support
- Has a more accurate shape renderer than ever
- Has support for hardware blending
- Is one codebase for all platforms
I think it’s also much easier to debug and profile, I think
To be fair, Android or iOS support were not working in fairly recent releases (without using
-Dlegacy) and Android still does not have JNI support, which many extensions rely upon.
For production means, “legacy” has been a good path to getting things out the door now, but I want to keep pushing on the new codebase until we surpass the areas of immaturity that are holding it back, and we can really benefit from the new architecture.
One of the things I love about the new architecture, everyone has their own favorites. One person will tell you it’s all about desktop, and that we should go to consoles. Another says it’s all about mobile. Still another wants Flash and HTML5 support for web projects.
OpenFL is one codebase (now) so we can fix problems once, and move on with life. I’m pretty tired of rewriting classes like EventDispatcher for different backend architectures