Some Stage3D thoughts by Thibault Imbert

Nissan Stage JukeA few months ago, we shipped Flash Player 11 and AIR 3 with Stage3D support, since we shipped we have seen great response from the developers and amazing content being developed. From Zombie Tycoon, the first Stage3D game available online, we have seen tanks and zombies destroying cities, cars doing rallys, Ben Franklin fighting the Dead Coats. Beyond games, we've also seen an amazing car configurator for Nissan, and tons of creative experimentations like the Evo Particles Engine. More recently, the famous birds have also been migrated to Stage3D. So far, we have been talking with a lot of companies actually developing Stage3D content, leveraging Flash Player's penetration, and by the end of 2011, we anticipated that over 80% had Flash Player 11 installed.

Waste Invaders

How they’re doing it is they’re developing their games for Stage3D software fallback. And then they’re using progressive enhancement to add more complex models, textures, particle effects, etc. when they detect HW-accelerated Stage3D is available. With this kind of progressive experience, you can use Stage3D to deliver the best experience to the most users (even with only software fallback) and provide the best experience for users with hardware acceleration. In addition, we’re working with framework vendors to improve performance of frameworks built on Stage3D, which benefits all Stage3D users. There are a lot of optimizations that can be done on these layers above Stage3D. For example, the latest build of the open source Starling 2D GPU framework is 400% faster than it was just a few weeks ago. You guys can take advantage of these performance enhancements immediately, without waiting for a new release of Flash Player and AIR. Recently, Ville Koskela from Rovio, shared his excitement regarding Starling and its performance boost.
Today, over 50% of users with Flash Player 11 will enjoy full hardware acceleration for Stage3D content. This is based on actual site visit data and data we have collected from partners which also corroborates our penetration models based on data we have directly from OS vendors.

Angry Birds goes Flash Player 11But there has been a lot of discussions regarding Stage3D hardware support and the reach that Stage3D gives you today when it comes to hardware acceleration. The current Flash Player available today (11.1 - shipped in November 2011) still uses a conservative gating model to ensure best stability. We took that decision when we saw how bad some drivers could be, with some horrible inconsistencies, some could basically reboot your computer when browsing a website. We just cannot allow that. If you want more details about the drivers and chipsets we do not support, you can check this technote.

I want you guys to know that we are actively making changes to Flash Player and AIR to enable HW-acceleration for always more people. Specifically, with each release we are working with graphics card partners to test and identify compatible older drivers that are currently blacklisted. Upcoming quarterly releases of Flash Player will relax the blacklisting, we are lowering the restriction from drivers older than 1/1/2009 to 1/1/2008 with Flash Player 11.2 that we are about to release in the next months. We also want to be more aggressive and lower this even more with the next release depending on the feedback you guys will provide during the public beta.

The Flash Player 11.2/AIR 3.2 beta4 we are making available today introduces this change, you should check it out.

This release does not have any changes from the previous betas related to Alchemy. However, as we’ve mentioned, we are working on a solution to address some of the concerns from the Flash community and will have more to share soon.

Note that Flash Player 11.2 ships with silent auto update on Windows, meaning that future versions adoption will happen even faster. Mac support for silent auto-update will be introduced in the next release. On a side note, we are already seeing games running at 60fps on the upcoming version of AIR for mobile with Stage3D support, we are excited to share more about this very soon! ;)

Comments (29)

  1. Mahron wrote::

    Exiting times.

    Whats with the native bitmapdata compression for jpeg and png. Will that make it into 11.2 ?

    Friday, January 20, 2012 at 6:10 am #
  2. Thibault Imbert wrote::

    Hi Mahron,

    Not 11.2 for native compression, but we talked about it today and is very likely to be for the next release. Stay tuned.

    Thibault

    Friday, January 20, 2012 at 8:27 am #
  3. Nicolas wrote::

    Good to know, since that’s one of the main issue we got so far.

    Being able to get information on WHY the HW is disabled would be a big plus : is it because of the video card ? because of the driver version ? because the HW checkbox is unchecked in Flash properties ? Something else ?

    If we can access this information we could at least (a) have better statistics and (b) help the end users enable it when possible.

    Friday, January 20, 2012 at 9:23 am #
  4. A few of the links aren’t working for me:
    Zombie Tycoon, tanks, amazing car configurator for Nissan, and shared…
    Very exciting stuff! Looking forward to the Stage3d support for mobile.
    Any chance there will be support for Flash Player 11 within Flash CS 5.5? I’ve been using the hack suggested by Rich Galvan, but its very cumbersome.
    Thanks!

    Friday, January 20, 2012 at 9:26 am #
  5. Mahron wrote::

    Can’t wait to throw jpgencoder.as out. Will the next iterations have faster release times ?

    Also while i’m at it, would it be thinkable for the flash player to have its how qr code like standard. It would enable some sort of native NFC with other screens. Or is it not low level enough ?

    Friday, January 20, 2012 at 9:55 am #
  6. Jerome wrote::

    Le lien “Ville Koskela from Rovio” est erroné ;)

    Friday, January 20, 2012 at 10:31 am #
  7. Thibault Imbert wrote::

    Thanks guys, links fixed.

    Thibault

    Friday, January 20, 2012 at 10:43 am #
  8. ben w wrote::

    Thanks Thibault for the update and a further reminder that you guys take feedback from community seriously!

    Friday, January 20, 2012 at 11:20 am #
  9. Thibault Imbert wrote::

    Hi Nicolas,

    Good suggestion, definitely something to consider.

    Thibault

    Friday, January 20, 2012 at 11:44 am #
  10. Jon T wrote::

    Looking good. Thank you for all the great changes in the Flash Player.

    I must ask one or two questions, and I’ve probably bugged you before with them.

    Are there any changes to Stage3D limitations? One example is the limitation on how many op codes you can run. Especially if you want to write a complex shader, such as rendering Perlin Noise on the GPU. That’s one thing that has kept me hooked on WebGL since I can write complex shaders there.

    Another thing I’m really looking forward to is multi-threading, are there any plans for it this year? :-)

    Thank you!

    Friday, January 20, 2012 at 12:58 pm #
  11. Gil wrote::

    Great job with the stage3D!
    But we all wait for these 60FPS on mobile!!!!!

    This would make Air T-H-E best way to build mobile/TV games!

    Unity is currently the way to do real multi platform games that do the job…

    Once you get that molehill out to mobile, the world of game dev. would never look back!

    I mean:
    * REAL OOP
    * So many tools
    * libraries
    * Developers
    * Community
    * Knowledge
    * And Adobe to support it in the future… (Well that might be a problem… you never know)

    I put my future there!

    Friday, January 20, 2012 at 4:06 pm #
  12. Jesus wrote::

    Are there any plans to activate Stage3D on Linux?

    Friday, January 20, 2012 at 5:03 pm #
  13. hayesmaker wrote::

    the deadcoats game is really shit, maybe pick good games to show off stage3d instead of awful ones

    Friday, January 20, 2012 at 7:22 pm #
  14. Thibault Imbert wrote::

    Hi Jon T,

    For Stage3D limitations, yes, we are planning removing some restrictions in the future.

    For concurrency, it is coming in a very near release. We are targeting a release for middle of this year. I will blog more about our plans for concurrency asap.

    Thibault

    Friday, January 20, 2012 at 11:11 pm #
  15. ferber wrote::

    A votre connaissance y’as t’il un bon Rpg (old style) style Baldur’s Gate, en stage 3d ? Le portage du moteur GemRB pourrait être une belle présentation des capacitées de stage3d. http://www.gemrb.org/wiki/doku.php?id=start

    Saturday, January 21, 2012 at 3:16 am #
  16. Thibault Imbert wrote::

    Hi Jesus,

    Not for now.

    Thibault

    Saturday, January 21, 2012 at 4:29 am #
  17. Martijn wrote::

    We are working on a mobile AIR project with lots of visuals, which is running ok right now in GPU mode, but it would be great if we could try stage3d to see if this is the way to go. Is it possible to join a test program?

    Saturday, January 21, 2012 at 10:32 am #
  18. wagster wrote::

    Nice one Thibault.

    Stage3D support is the core issue and I’ve worked hard to overcome the potential lack of it. I will be collecting metrics for support with my target audience and will let you know when I have meaningful results.

    +50% is not good enough for us, but it’s good to know you’re dealing with the root of the problem.

    Sunday, January 22, 2012 at 3:13 am #
  19. Thibault Imbert wrote::

    Hi Martjn,

    Please drop me an email if you want to be added to the prerelease.

    Hi wagster,

    Yes, it is one of our biggest focus for this year. Please, let me know the reach you get with 11.2 (with the 2008 change), we are shipping it very soon.

    Thibault

    Sunday, January 22, 2012 at 7:59 am #
  20. senthil kumaran wrote::

    How to find the Pixel Shader version of GPU?

    Monday, January 23, 2012 at 5:06 pm #
  21. frank wrote::

    Any chance of pushing some of the Flex mobile UI through Stage3D?

    Correct me if I’m wrong but I could see complex list items with animations getting a huge boost from this.

    Monday, January 23, 2012 at 5:23 pm #
  22. charlie skinner wrote::

    Silent auto update. Can this be turned off?
    This sounds like a great thing in theory. But what if a new version of Flash breaks existing content?

    Monday, January 23, 2012 at 7:53 pm #
  23. Thibault Imbert wrote::

    Hi charlie,

    Yes, silent-auto update can be turned off.
    For this you can still use the AutoUpdateDisable directive. AutoUpdateDisable=1 will disable it.

    Thibault

    Monday, January 23, 2012 at 9:15 pm #
  24. Thibault Imbert wrote::

    Hi Frank,

    Yes, this would be technically possible. It would require though a lot of work cause Flex is heavily display list dependent. But yes, totally doable. Starling framework is a good example of what can be achieved when it comes to 2D on top of Stage3D.

    Thibault

    Monday, January 23, 2012 at 9:31 pm #
  25. Thibault Imbert wrote::

    Hi Senthil,

    We do not expose that for now. Why would you like to access this info? To inform users they should update their card or drivers?

    We actually want to provide a way for developers to know why it did fallback to software. To help developers provide a dialog box helping users to enable HW acceleration.

    Thibault

    Monday, January 23, 2012 at 9:34 pm #
  26. Arnoud wrote::

    Hi Thibault,

    In the apache flex mailing list there is some talk about the possibility of creating a component framework on top of starling. The main reason not to do it brought up so far is missing accessibility support for Stage3D

    Is there a possibility that there will be support for that in the future or is this something that’s just not a prio at all? I can imagine that now adobe is more focussing on game development with the flash player.

    thnx, Arnoud

    Tuesday, January 24, 2012 at 7:27 pm #
  27. Thibault Imbert wrote::

    Hi Arnoud,

    We will not add accessibility support to Stage3D, cause it is literally a flat surface (bitmap), and you create the DOM in AS3, so it would be up to the developer to implement the accessibility.

    To do that, you would need to have access to low-level APIs allowing to talk to the underlying OS APIs for accessibility and we are not planning exposing those APIs for now.

    Thibault

    Tuesday, January 24, 2012 at 11:19 pm #
  28. Szymon Brych wrote::

    Hi Thibault,

    Could you clarify whether Stage3D will be available for Android along with AIR 3.2?

    Szymon

    Wednesday, January 25, 2012 at 6:30 pm #
  29. Marcus Dobler wrote::

    Hi I am currently working on an Air for Android App in AS3! This app is running perfectly smooth on an Galaxy S2 with constant 60 fps! My new test device, a Galaxy Nexus has just arrived and the performance is very bad, unstable 40fps! Now my question is: Is this normal? Is this a problem with my code or is this an known issue?

    Tuesday, January 31, 2012 at 9:57 am #