Today Adobe announced its plans for so-called "Premium Features", check it out here
Basically, what it means is that you'll have to get a license from Adobe and pay them 9% of your net revenues if you want to use the "premium features" together with Stage3D API which allow hardware-accelerated 3D in the browser.
Sadly, instead of providing real actual "premium features" that could have appealed to AAA games developers and let independent developers continue making their games and other apps without paying Adobe Tax, the so-called "premium features" consists in one simple thing : Alchemy opcodes.
For those who don't know about it, there are two actual usages for Alchemy :
- the Alchemy toolkit allows to convert C++ code to AVM2 Flash bytecode, and introduces additional opcodes for fast Memory access
- these opcodes can be reused by some tools, such as Haxe flash.Memory or Joa's Apparat for AS3
Why Alchemy is so much important ? Because the AVM2 - the virtual machine that powers the flash player - is AWFULLY SLOW when it comes to memory manipulation.
So far the Alchemy opcodes have been used as a replacement to cope with bad memory performances of AVM2, in order to speedup various tasks such as PNG encoding, Raytracing, Cryptography, Away3D Physics engine and many other tasks that just manipulate memory.
Another example of Alchemy usage is the latest technical demo of a game I've been working on : Galaxy55 is a Minecraft-like engine that absolutely needs Alchemy to build the world triangles and calculate lightning occlusion. Doing it without Alchemy would just make the game impossible since it would require more than one second to rebuild a part of the geometry when a block is changed, which occurs quite often.
A last example is Unity3D which is using Alchemy opcodes to target Flash Player.
So this is it : Adobe just made DECENT SPEED a "premium feature".
And since you really need that speed for doing (serious) Flash 3D games, it means that you will have to pay Adobe Speed Tax when you want to make a 3D game.
More important, it means that there is no hope that they will improve the slowness of the Flash Player memory, since it would then allow developers such as me or tools such as Unity3D to run 3D content without the need to get a premium license !
Oh, and what about the openness of the SWF format ? Sure : it's still open, you can build your own SWF without Adobe tools. But if you use X and Y feature, then you'll have to pay Adobe for it. Not a fixed amount of money, but a 9% tax on your revenues to get your content to run at a decent speed !
Honestly, Adobe just killed the idea of making 3D flash games, especially for independent game developers that don't make that much money that they can afford paying Adobe taxes.
The only "good news" I see is that the Haxe compiler itself is not relying on Alchemy opcodes (unless you use
flash.Memory) and that it easily allows me to target other 3D technologies such as WebGL, which I will definitely consider seriously for the next 3D games, instead of Flash.