

Adobe to charge Flash coders to use 'premium' features - felipemnoa
http://news.cnet.com/8301-30685_3-57405606-264/adobe-to-charge-flash-coders-to-use-premium-features/

======
chanon
More info at: [http://www.adobe.com/devnet/flashplayer/articles/premium-
fea...](http://www.adobe.com/devnet/flashplayer/articles/premium-
features.html)

Specifically:

Premium features licensing will only be needed when both of the following APIs
are used in the same application run in Flash Player:

* ApplicationDomain.domainMemory, which provides access to domain memory

* Stage3D.request3DContext, if using hardware acceleration

\--

From the article, it looks like ApplicationDomain.domainMemory is required
when using the Alchemy compiler which allows compiling and running C/C++ code
in Flash Player. (Hmmm.. seems like a competitor to Google's NaCl)

While Stage3D.request3DContext is required for using Stage3D which enables
hardware acceleration in Flash Player. Angry Birds on Facebook already uses
this.

Most games coded natively in Flash/AS3 won't require both. However, I'm not
sure whether Unity's export to Flash and Unreal's export to Flash require
Alchemy.

In any case, the revenue share is only required when _both_ features are used.
However, again the media aren't communicating the whole deal and again it's
Adobe's fault for coming up with such weird/complex terms.

Edit:

After some quick research, it seems both Unity and Unreal's export to Flash
Player feature require both Alchemy and Stage3D to work. So it looks like what
Adobe are trying to do here is to generate some revenue from their 'platform'
as otherwise they wouldn't receive a dime from all those Unity devs who would
have easily exported their project to run on Flash Player which has a ton more
penetration than Unity Web Player.

I think it is unfortunate though that they chose a 'revenue share' model.

It would have been a lot better for the end developers if Adobe just charged
Unity and Epic a licensing fee for targeting Flash Player.

~~~
corysama
Well, shit... Alchemy+Stage3D is directly a competitor to NaCl+WebGL. By
refusing to help NaCl become open-standards-worthy, Mozilla is going to end up
watching Alchemy beat out NaCl (and Emscriptem) with a completely proprietary,
revenue-shared (and therefore implicitly licensor-dependent) alternative.

~~~
azakai
> Well, shit... Alchemy+Stage3D is directly a competitor to NaCl+WebGL.

First of all, NaCl has little to do with WebGL. NaCl has it's own, non-web-
standard way (like NaCl itself) to render 3D graphics. If you use NaCl, you
likely do not use WebGL.

> By refusing to help NaCl become open-standards-worthy, Mozilla is going to
> end up watching Alchemy beat out NaCl (and Emscriptem) with a completely
> proprietary, revenue-shared (and therefore implicitly licensor-dependent)
> alternative.

Mozilla can't help NaCl become a relevant standard for the web, even if it
wanted to. NaCl is still CPU-specific, still too complex and evolving to
standardize and create alternate implementations of, and still will not be
supported by browsers without plugins like the iOS browser and Windows 8
Metro.

Alchemy might beat out NaCl. It works in far more places than NaCl, but it's
slower, so that will be interesting to watch. But I very much doubt Alchemy
will beat 3D gaming on the open web. It isn't just Emscripten, it's also
Mandreel and several other C++ to JS compilers in the industry. That approach
reaches more people than even Alchemy, and it reaches them with 0 license
fees.

~~~
corysama
OK, technically OpenGLES2 is the open-standard that the open-web-standard
WebGL is based on. Still a big step in the right direction compared to
Stage3D. Moving from ES2 to a C++ interface to WebGL would not be a huge pain
at this point if someone pushed for it.

That's how Mozilla /can/ help NaCl become a relevant standard for the web.
It's still evolving rapidly! That could be a good thing because it's far too
complex and cpu-specific /now/. With Moz's participation, that evolution could
be directed to something standardizable. It's a lot of work, but it's better
than sitting back and watching Adobe take over without asking for anyone's
support.

Right now, Alchemy runs at 40% of native speed. They are targeting 80% at
public launch. We'll see how that goes... Meanwhile, I've dug deep into the
performance of JS and I've been happy when I can get deeply-optimized JS to
reach 10% speed compared to deeply-optimized native.

~~~
azakai
Mozilla can't make NaCl non-CPU specific. It's CPU specific by design. PNaCl,
which tries to be portable, is a completely separate project (although the
underlying SFI is similar), and it's too early to evaluate the performance
there to see if it's worth it. So there is nothing Mozilla or Opera or anyone
can do.

Deeply optimized JS should run much faster than 10x slower than native. Most
benchmarks I've run on compiled code are 2x-6x slower than native. And that is
before JS engines actually optimize specifically for that type of code, which
is happening this year.

~~~
corysama
The point is that Google isn't self-motivated enough to get an Open-PNaCl-
Whatever in shape to be standardizable on their own. They need Moz and Opera
to push them, not rebuke them.

I understand Moz's position. I'm just frustrated. Mozilla seems to be so proud
to have finally reaching the point that we can run Super Nintendo games in the
browser (<http://browserquest.mozilla.org/>) only 18 years after
<http://en.wikipedia.org/wiki/XBAND> Meanwhile, Alchemy and NaCl can deliver a
better-than-iPad3 user experience (zero install + sandboxed, etc) comparable
to <http://infinitybladegame.com/> to the browser today.

When I speak of deeply-optimized native, I'm talking about large volumes of
tuned double-precision SSE vs tuned double-precision math in JS. If I were to
cheat and do single-precision in SSE, it would be more like 20x. Moz is
talking about adding a Matrix4x4 type to JS to make it easier for games to
keep up. That seems to me like a patch to the larger problem of SIMD not
making sense the context of JS.

~~~
azakai
> The point is that Google isn't self-motivated enough to get an Open-PNaCl-
> Whatever in shape to be standardizable on their own. They need Moz and Opera
> to push them, not rebuke them.

Opera, Mozilla, Microsoft and Apple can't help Google push a standard that
doesn't make sense for the web. I don't understand what you want them to do.
Help from the other browser vendors can't magically fix the problems already
mentioned with NaCl.

The only thing they can do, is ignore the principles of standardization and
what is good for the web, and just drop NaCl into their browsers. That would
be terrible though.

> Meanwhile, Alchemy and NaCl can deliver a better-than-iPad3 user experience
> (zero install + sandboxed, etc) comparable to
> <http://infinitybladegame.com/> to the browser today.

<http://dl.dropbox.com/u/6873971/data/cube2/index.html>

And again, this is _before_ actually optimizing for that kind of code. In a
few months that will improve even more.

> When I speak of deeply-optimized native, I'm talking about large volumes of
> tuned double-precision SSE vs tuned double-precision math in JS.

That's true, for that kind of code JS is slow currently. Things like
RiverTrail should help, but they are not close to ready yet.

~~~
corysama
What I want is to /eventually/ get PNaCl with WebGL/WebAudio/IndexDB/whatever
APIs make Mozilla happy. I make high-end 3D apps to pay my bills. I want to
bring them to the web. But, what I don't want is to go through Adobe's content
approval process in order to not be 15 years behind the technology curve
(Cube2=Quake2=1997).

JS+WebGL is great and I'll keep pounding on it. But, building JS into the
world's VM because of the asteroid-like inertia behind JS is frustrating in a
similar way to watching Intel bolt stuff on to a pocket calculator CPU (8086)
until we get a CoreI7. It obviously /can/ work, but...

~~~
azakai
> What I want is to /eventually/ get PNaCl

Well, NaCl is in no way a step towards that. They are completely separate
technologies: One is a modified gcc compiler and custom validator in the
browser, the other is a modified LLVM compiler and another modified LLVM
compiler in the browser. The only similarity between them is the name, and
some of the SFI approaches they utilize. But their code, potential spec for
standardization some day, startup times, portability etc. are entirely
different.

Supporting NaCl now would not help out PNaCl in any way. (In fact, the
opposite could be argued.)

> But, building JS into the world's VM because of the asteroid-like inertia
> behind JS is frustrating in a similar way to watching Intel bolt stuff on to
> a pocket calculator CPU (8086) until we get a CoreI7. It obviously /can/
> work, but...

First thing, I do understand your frustration. I feel it too.

But JS isn't _just_ there because of inertia. There is no other valid option,
all the proposals have major flaws, either technical or legal. JS also has its
flaws, to be sure. But since the others are not clearly better (running
faster, but only on certain CPUs is not better), JS will win because it does
have inertia.

------
king_magic
Adobe sounds pretty clueless on this. I personally don't use Flash (unless I
really, really can't help it); I look forward to the day when it's gone the
way of the dinosaur.

I think... I mean I guess it sounds like Adobe sees that Apple is able to get
a percentage of revenue and be successful attracting developers, and they
somehow think that they can do the same thing and also attract developers?
Sounds like... a winning proposition to me!

~~~
Mansyn
I think you're giving them too much credit. They are just relying on the
staunch Apple/Adobe designers who refuse to use anything but what they've
always used (like an artistic VB developer). Also Apple people are used to
saying "How high?" whenever their beloved says "Jump".

~~~
tijs
Most Flash developers actually use Windows since, until recently, the Flash
IDE ran much faster on Windows.

------
talmand
I believe too many are jumping the gun on this one. Based on the rather strict
requirements I would say this change is irrelevant to the majority of the
Flash developers out there. It seems to be aimed at the developers that might
be making an Unreal engine game (as an example) and wish to port it over to
Flash for whatever reason. Most likely these are projects in the high dollar
development range expecting a high return. Adobe simply wants a cut of that
revenue just like every other major game tools creator out there. Epic Games
has a similar deal with using the UDK platform. Some of you are simply reading
too much into this.

------
asto
This move is currently getting HA-HA'ed here on HN but it's a fairly decent
move. Some people have _no choice_ but to use flash (mostly game-makers). Some
of them, like Zynga rake in big money. Adobe looks like they might get a piece
of that action. What's to laugh at?

~~~
ceejayoz
> What's to laugh at?

The fact that this is a pretty big incentive to change the situation of "some
people [having] no choice but to use flash".

~~~
warmfuzzykitten
Flash is rapidly overtaken by HTML5 and JavaScript. Obviously, it's the moment
to slap a royalty on it. Genius!

------
overshard
I'm glad Adobe has finally taken the initiative to phase out Flash.

------
Karunamon
Kneejerk response:

"What th... seriously? It's almost like they WANT flash to lose to HTML5.."

~~~
MatthewPhillips
Is it out the question that that's part of the equation here? Adobe is making
Canvas tools after all. Flash is going to increasingly become a cost center
for Adobe (support cost remain as profits diminish), so why not cannibalize
that business by sending developers to another one of your products? And grab
some cash from the suckers who refuse to leave Flash behind.

------
pcestrada
Sounds like Adobe finally figured out how to monetize Flash. Too bad it's at
the expense of their most important resources, their developers.

~~~
SaulOfTheJungle
> Sounds like Adobe finally figured out how to monetize Flash

Adobe sells a Flash authoring app for $700, wouldn't that be considered
monetizing it?

~~~
andybak
There are quite a few ways to develop Flash games without using Flash the
tool.

------
ihateatmfees
If I was developing for the Flash platform, this would make me seek
alternatives immediately. Sure, maybe the premium licensing isn't needed for
my app now, but the cat is out of the bag. Why would I invest time/money into
a platform that could change terms and take a % of my revenue at any moment?

~~~
talmand
Then I suppose you should never use any commercial development platforms
because that possibility is there for them all. Stick with open source I
suppose.

------
khalidmbajwa
I am a flash devoleper. Have been an ardent flash supporter for the past 7
years, but sadly, at this point, even i have to admit, it's Game Over. Adobe
fucked up. Over, and over and over again. They had everything going for them,
a large and and extremely smart, devoted community, a very rich and powerful
authoring platform, and ,most importantly,ubiquity, but they got complacent,
deluded by their own hype. They failed to make flash better, and they failed
to make AIR better. At this point, they are just shooting a dead horse in the
face. This is an inexplicable move, the exodus has already begin. This then is
going to be the final warning alarm before the train leaves the station. There
will be few who can risk getting left behind now.It's over.

~~~
brico
No, it's not over. Not yet. I think only a small percentage of developers make
$50k / year per game/app.

And Stage3 is way ahead of what one day hopefully WebGL will offer. There's no
way (at the moment) of producing the same quality application in HTML5/js with
the same effort you need for Flash.

Mozilla released their cute browserQuest game yesterday, something "Realm of
the Mad God" did 2+ years ago in Flash.

HTML5 is very likely to be the future but there's no way they can compete with
Flash at least in the areas of Games (and Audio) at the moment..

~~~
dugmartin
Correct. Audio support is one of the big features what is keeping me on Flash.
This is a great rundown on the depressing state of audio support in HTML5:

[http://www.phoboslab.org/log/2011/03/the-state-of-
html5-audi...](http://www.phoboslab.org/log/2011/03/the-state-of-html5-audio)

------
9999
I ranted a bit when this news was first posted on HN late last night, now that
I've had more time to mull it over, it just pisses me off even more. It seems
like every Adobe press release these days is like a gorgeous chocolate cake...

...with cigarette butts stubbed out in it.

I write games in Actionscript every day, that's my day job and it was going to
be my night job too. The state of Flash development has never been worse than
it is right now, and it is largely because of Adobe's utter incompetence at
building tools for targeting the Flash VM. Their documentation ranges from
mediocre to horrendous, their frameworks have sprawled far too much, and the
runtime is needlessly fragmented. They threw in the towel on mobile
development months ago. Then they killed (more or less) their Linux support.
So much for write once run anywhere. And what did they declare as their new
strategy? Games. Console quality, AAA dev worthy games. They're betting the
whole flash ecosystem farm on people playing GPU accelerated, high quality
games in the browser. Not the worst idea they've ever had, but not
particularly inventive.

Obviously they were going to have to make some money off of this new
initiative, and I naively assumed that they would build a really great toolset
for developing these games. For some really ridiculous reason, I actually
thought that they would get back in the business of building tools to let
people create really great content (they haven't been selling the best tools
for making Flash content for the last 4 years or so, so I thought maybe they
would change that).

Instead we get this, the chocolate cake with cigarette butts stamped out in
it. I fully understand that Adobe have not had the time to actually develop a
useful developer's kit for game dev targeted at the Flash runtime. In fact, it
might not ever be appropriate for them to do so. But right now they are
struggling mightily just to remain relevant, so it seemed natural to me that
whatever they did come up with would really give devs an incentive to consider
their runtime and workflow as a reasonable, efficient, and cost effective
option.

Instead some greedy twit seems to have taken a gander at UDK licensing costs
(25% off gross after your first 50 grand in revenue), and thought, "we can
charge that!" If they offered a tenth of what UDK actually offers, then they
might very well have been able to charge what they're going after--9% off net
from pretty much all revenue in excess of 50 grand, virtual items, whatever.
How very generous of them. But what are you actually getting for this big
chunk of your profit?

You're getting Alchemy, a cross compiler that compiles C/C++ into AS bytecode
to be executed by the Flash VM or a binary compiled for iOS. Are you getting
an industry leading developer's toolkit like Unreal? An amazing engine? A
version of Gears of War 3 or some other equally massive/ambitious game to use
as a starting point to base your project around? No, you'll still have to pay
Unreal for that (or Unity or write your own game engine) and pay their
licensing fees (remember, that's 25% off gross). Alchemy was introduced years
ago, and at the time, it was just a one man project (if that, it seemed like
it was just a part time project at the time). Cross-compile C and C++ into AS
bytecode, sweet. Cost: free. I seriously doubt that this stopgap, bullshit,
announcement has been preceded by considerably more development into Alchemy,
and even if they have thrown dozens of people at the project for the last 6
months, it can't possibly justify the cost. I would think they would work for
longer than 6 months on flagship product announcements that are the lynchpin
for their entire damned roadmap, but at Adobe, roadmaps themselves don't seem
to last that long. So will any giant game developer actually use this? I can't
see how it's viable for them to use it at the public royalty rates. Maybe
Zynga can get a better licensing contract than us poor schlubs, but there's no
way they're going to throw away 9% of their net after blowing through 55% on
Unreal and Facebook's take before even considering their own costs.

~~~
kj12345
So true about the documentation and APIs. In the network stack for example, if
you do certain things to a POST, Flash actually stops using HTTP and starts
using "XML Sockets" which runs over a different port, and AFAIK is something
Abobe just made up one day. This happens silently and can be triggered in a
couple different subtle ways. They need to fix nonsense like this before I can
take Flash seriously again.

------
kinofcain
This is Adobe telling the Flash team to find a way to pay for themselves going
forward.

------
tomrod
I don't think Adobe understands the concept of "substitution"--namely, that
for most things, HTML5 seems to far outweigh Adobe's inferior Flash. So
charging for Flash may prove to be a bone-headed move.

This being said, what better way to force a spin-off than to totally wreck
that side of the business' pricing?

------
marathe
Wrote this up here, with some choice quotes from this thread:
[http://webdev360.com/adobe-tries-to-lock-in-flash-devs-
with-...](http://webdev360.com/adobe-tries-to-lock-in-flash-devs-
with-9-revenue-share-41722.html)

Seems like a pretty ridiculous idea to me.

------
lazerwalker
Given that there's a grace period until August 1, I suspect we're going to see
a _lot_ of barely-working applications and games released before then, just so
they can get grandfathered in before they're made to function properly.

------
wtdominey
I'll be curious to hear how Adobe plans on enforcing/auditing this. There are
but a handful of gaming companies, I suspect, that would be affected (Rovio,
EA, Zynga), but still.

~~~
Impossible
$50K isn't really that much. This will basically affect anyone trying to make
a serious commercial 3D flash game with Unity, UDK or a custom engine. This
includes small indie developers that might want to target flash as a platform
as well. The 9% would also apply to UDK games like QUBE or Antichamber, if
they decided to release a web versions.

------
crusso
That's fantastic news.

The sooner Adobe makes Flash go away, the better.

------
neilmiddleton
…and how exactly are Adobe going to know what 9 percent of net revenue for a
given movie is?

~~~
ComputerGuru
You've obviously never worked in the business world. It's all built on trust.
You either have it, or you don't. When you sign a contract with these
companies, you give them the right to, if they so choose, ask for all your
records to review at any given point in time.

I'm not at liberty to go into specifics, but for example one company we deal
with charges a flat royalty off of every product that includes their tech. At
the end of the month, we send them exactly 2 statistics along with a check:
how many items sold, and what we now owe them. (This is a huge company and
we're talking on the scale of hundreds of thousands of dollars.)

When you're a company, you don't take stupid risks like cheating out your
licensors over something less than half of what you're making. It's nowhere
near being worth the risk, as even aside from any legal issues, fees, and
compensations, if you get caught you can kiss that licensing agreement goodbye
and then you have to start over from scratch with a different platform, a
different provider, and different tech.

------
mikeocool
I wonder what counts as making net revenue with Flash that would cause this to
kick in.

Advertising agencies have been charging clients well over $50,000 to build
flash sites for years. Are they going to have to start giving Adobe a 9% cut
of everything made on their client work?

~~~
SteveMcQwark
1\. Flash sites won't be using the features in question.

2\. Flash sites should die a horrible horrible death.

~~~
mikeocool
No disagreement here on the fact that flash sites should die a horrible death.

Regardless, many flash developers have been clamoring for true 3D rendering in
flash for a long time, and hack it together with libraries like Paper Vision.
Perhaps I missed something, but the article seems to suggest that these
features will indeed be available in the browser plugin, and thus usable on
flash sites.

------
AshleysBrain
Isn't this just going to encourage people to use WebGL?

------
codesuela
looks like Adobe tries to squeeze every last bit out of money out of the Flash
platform

~~~
j_baker
Adobe is a business. Businesses are supposed to make money. Where's the
conflict?

------
ktizo
last nail in the coffin.

I do wonder if this will affect haxe though.

------
user2459
_"It's not clear to me how requiring programmers to pay to use something that
was previously free will spark innovation."_

Steve doesn't understand his own article. The whole point is that they're
changing for _completely new_ functionality. These aren't improvements of the
existing flash player, they're completely new additions. And beyond that the
vast majority of devs will never even have to think about it. You have to make
over $50k with your flash product and you have to use the premium features.

Weather you like flash or not, these new features are great for online and ios
game developers and cost Adobe a lot of time and money. Also weather you think
about it or not, many of the mobile games you play are written in actionscript
and running in Adobe air and air apps are specifically exempt from the fees.

So all in all, this is interesting news, but it's in no way as dramatic or
devastating as some people would like to believe.

~~~
kj12345
It's not completely new functionality. Adobe Alchemy, for example, has been
free since 2008 and is used by a number of popular Flash apps and games. Of
course they can charge for it if they want, but they're now competing with
Unity, NaCL, UDK, and HTML5, so it is going to be a hard sell.

~~~
talmand
Don't forget you have to use Alchemy and Stage3D in the same project. I think
too many are glossing over that fact.

Plus UDK has a similar deal.

------
Mansyn
HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA
HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA
HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA HA
HA HA!

------
cellis
I don't really see a problem with this. From the Unity3D blog [1].

 _Adobe announced a brand new licensing structure for Flash games You should
definitely read the details as Adobe explains them here: www.adobe.com/go/fpl
and here:[http://www.adobe.com/devnet/flashplayer/articles/premium-
fea...](http://www.adobe.com/devnet/flashplayer/articles/premium-features-
licensing-faq.html) The short version is that Adobe is introducing a new
revenue share licensing model where they will take a revenue share from some
content publishers. Adobe will charge publishers 9% of only the revenues
directly caused by the game which exceed $50K. If revenue is not directly
caused by the game you pay nothing. i.e. An online teaser level for a iOS /
Android game, a car company having a realtime 3d demo of their newest model
which you can inspect and drive around, a 3d walkthrough for a library, etc,
all would not pay the revenue share. We see this as Flash positioning itself
alongside other well known distribution channels: make money through the App
Store, Apple takes a share. Make money through the Android Market place,
Google takes a share. Make money through Flash, Adobe takes a share. It’s also
worth noting that the new Adobe license will prohibit scenarios where you’d
have the first level of a game in the Flash Player, and the full experience
inside the Unity Web Player. Alas, this is something you’ll need to be aware
of if you were considering such a route._

You see, Flash is _not_ web technology.Neither is iOS, or Android. Flash _was_
web tech, a long,long time ago, but frankly the web hasn't evolved fast enough
to keep up. HTML5 is still nowhere close to flash. WebGL is, but that's not
exactly standard.

[1] <http://blogs.unity3d.com/2012/03/28/unity-flash-update/>

~~~
calydon
Of the possible revenue sharing arrangements this type (similar to Unity's) is
the most civilized. It doesn't stop indie devs from experimenting (since it
doesn't kick in until the first 50k has been exceeded) and it allows Adobe to
profit when its tech is used on a breakaway hit.

What I don't understand is the timing of this. Since it is popularly believed
that HTML5 will kill Flash in the near future and that Adobe has stopped
developing the mobile plugin (neither is true). This will only give Flash
detractors more ammo. Adobe needs to do some damage control before they add
more drag to one of their flagship products.

