Finally! We can talk about Molehill! (GPU-3D in Flash)
I’ve been in the Molehill Prerelease program for a few months now.
Today I am proudly showing you what’s Molehill all about.
When people are complaining about developing game in Flash, most of the time it drills down to two main arguments:
1: No hardware acceleration
2: Bad resources management
Well it’s almost over! People will have to find other reasons!
The new Flash 3D H.A – Codename: Molehill
As I’m sure you already know it, Adobe just announced our new toy: Molehill.
A new Flash Player supporting 3D Graphics with Hardware Acceleration and a brand new 3D API with a better resources management system.
Needless to say, it’s a web gaming revolution. Better, it’s not only for the web, but also for mobile platforms!
Technically, “Molehill” is a set of programmable shader-based 3D APIs, exposing features like z-buffering, stencil color buffer, fragment and vertex shaders, cube textures and more. “Molehill” will enable developers to leverage the GPU where possible, while providing the flexibility to fallback to a CPU software rasterizer if the hardware is incompatible.
Today, Adobe Flash Player 10.1, renders thousands of non z-buffered triangles at approximately 30 Hz. With the new 3D APIs, developers can expect hundreds of thousands of z-buffered triangles to be rendered at HD resolution in full screen at around 60 Hz
There are many other solutions… is it?
I think Adobe didn’t have much choice to go that way. With WebGL, HTML5, Unity and the Apple war, they had to do something big.
As for the “Unity3D is not only a renderer, it’s also an editor”, the flash community is big VERY big and I’m sure there will be plenty of third party solutions to create Editors just like Unity3D.
Adobe already announced:
The 3D capabilities enabled by the new APIs will also be available to the broader developer community through popular ActionScript® 3D frameworks, such as Alternativa3D, Away3d, Flare3D, Sophie3D or Yogurt3D.
Can you remember the time when flash didn’t support GPU-3D ?
In may 2009, I was at the Login2009 conference in Seattle and there was a round table called “Barriers to entry: Is Flash the answer to Life, the Universe, and Everything?”
Here is the description:
Is Flash, the most blessed and holy of all browser plug-ins, our only hope for eliminating the most deadly barriers to entry for online games?
If your game requires a browser plug-in or downloading and installing an application, do you stay awake at night worrying about how many players will never install your game and thus will never get to the “fun” part?
Is there anything we can do? Are there any solutions on the horizon that will work in every browser without installing additional plug-ins? Can Flash deliver the kind of high-end content our tools will let us create? What about Flash-based technologies like PaperVision3D? Are we going to get help from the developers of the major browsers?
It was kinda funny back then because most game developers were saying that the only real solution “for high-end content” at that time was to go with Unity3D. And the big question was “If Adobe ever introduce 3D HA to the Flash player, would you choose Unity or flash to create 3D games?”
The real answer was never given because there was always somebody to say “Yeah but Adobe won’t do it (3D with HA)! They move SOOO slowly.”
Now that this is coming, I’m smiling just thinking back of that discussion 🙂
My part in this
I’ve worked intensively with Flash for a few years now and I’ve followed the flash scene closely all that time.
The engineer working on the project are releasing good builds, fixing bugs entered by the Prerelease community and adding feature very quickly. They are also doing very fast iteration and making sure the API is convenient and optimized with a lot of VERY experienced and qualified developer. I can honestly tell you that I’ve never seen Adobe making such good and fast development.
Being a Prerelease community member, I’m giving a lot of feedback on performances and optimization that could be made and making sure that the current Flash 10.1 performance problems are part of the discussions.
Game development using Molehill at Frima Studio
I try not to talk about my “day job” too much in here to really keep things apart, but I think this time it worth bending the rule.
Me, a good friend and colleague of mine (JP Doiron) and many other folks at Frima have worked on games prototypes using Molehill and we were able port a proprietary 3D engine and extend it to create a very nice demo for the Adobe Max presentation by Sebastian Marketsmueller (Flash Player engineer). In his presentation on Flash Player 3D Future today he showed a lot of cool stuff including our Zombie Tycoon demo.
I strongly suggest you watch it in 720p!
By the way, this is a special version just for you guys to see what kind of performance we can get (HiRes-Stats on top left corner)
This video shows many things:
And the best thing: All of that in a 1280×1050 window at more than 30fps with practically zero memory allocation and very small usage of the CPU.
I don’t know how this looks to you, but my feeling tells me there is going to be a LOT of new 3D MMOs browser base in the next months / years.
Thanks for that Adobe!