Where 3d browser stuff stands

 Posted by (Visited 55945 times)  Game talk  Tagged with: , , , , , ,
Jan 152011
 

Been awhile since I posted about how progress is going on this front. Everyone is very excited about HTML5, of course, but particularly with the latest H.264 news, Flash is still going to be pretty widely used. WebGL is going to be in Firefox 4, (basically, the OpenGL ES 2.0 API will be available).

To my eye, the WebGL stuff is behind the Flash stuff in terms of framerate consistency and performance — but it does have all sorts of nifty off-the-shelf integration with Web data on the fly, because it is literally “a 3d web page” made out of HTML, CSS, and JavaScript. Here’s a video of the “Flight of the Navigator” demo — if you have a WebGL enabled browser, you can actually try it yourself.

And then there’s Molehill, which basically lets the 3d engines that already exist for Flash (which I have blogged about in the past) get access to hardware acceleration.

What is the 3D functionality provided by the “Molehill” APIs?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.

Molehill is going to be part of  Flash Player 11, and won’t be in public beta until “the first half of 2011.” Here’s some videos showing it off, though. At a glance I see environment mapping, specular, shaders, a few sorts of shadows, and pretty darn good fill rate. These were all put together for the AdobeMAX conference a few months ago.

Silverlight, which I had identified as a contender back in ’08 when I last wrote much about this, has a new version coming next year, and there was some confusion recently as to whether Microsoft was continuing to push it. But I have no cool videos to show there. [Edit: actually, there is one in this post now, thanks to commenter Ezra below.]

Right around now is when someone says “But Unity…” Unity is really popular among game developers because of the fantastic toolchain. It’s still not a widely adopted plugin, compared to the sheer volume that browser adoption or Flash have, but it is gaining. But I still think this is a battle won not by quality but by “good enough” married to really strong distribution.

  9 Responses to “Where 3d browser stuff stands”

  1. […] This post was mentioned on Twitter by Raph Koster and Allen Varney, The MMO Hobo's Feed. The MMO Hobo's Feed said: Where 3d browser stuff stands: Been awhile since I posted about how progress is going on this front. Everyone is… http://bit.ly/f0xLTq […]

  2. For Silverlight 5, Microsoft did showcase the new 3D functionality it has at the Firestarter event a couple of months ago: http://www.youtube.com/watch?v=RDIeijJkV14

    From the looks of it, its actual real GPU running shader code out of a Silverlight project.

  3. If flash had added molehill 5 years ago, it would have won.

    Now, I’m not so sure it is such a clear cut case.

    IMO native client is the best tech solution, at some point I suspect that nacl will run flash. Unity have already stated that unity will run under nacl, which will incidental also bring unity support to linux.

    Put simply, nacl fixes everything…

    All that webgl and 3d css stuff is just distracting pap, nacl is what you should be paying attention to.

  4. Good post Raph, and spot on as usual. Flash isn’t going anywhere, that much is clear.

    And while Unity is I believe native to Chrome (and Chrome’s usage numbers are moving up quickly), it still has a long way to go to becoming a de facto standard.

    There are two points that I think are significant here: First, as you mentioned with your “good enough” comment, this may not be an issue where better (more advanced, 3D over 2D, etc.) technology necessarily wins — outside of the core gamer market (where people are still buying retail games for PC and consoles), 3D may not be in high demand, or not high enough to justify itself.

    That leads me to the second point, and for game developers one that’s just as significant: the addition of 3D to the current 2D/Flash production pipeline will create a huge jump in complexity and schedule costs for any game project. This will have the same deadening effect we’ve seen in other game sectors where a few big companies can compete, but do so with as little risk and as little innovation as possible — the stakes are too high to do otherwise.

    Right now browser-based games are in their infancy. Introducing 3D too quickly, especially as part of an assumption that that will drive broad market adoption as it has driven niche market sales in the past, will smother in the cradle the innovation that’s possible with online games now.

    So: Long live Flash. 🙂

  5. I have taken a few looks at this the last year and found that the WebGL performance is quite impressive on the browsers that support it properly. For a long time there was a problem with CPU compositing of the canvas and the hardware rendered stuff.

    Unity feels like it suffers some from dictating your data structure in a format that makes projects scale poorly. Great for small things but not so great for bigger productions.

  6. One of the more common uses of Molehill won’t be fancy 3D games. It will be 2D games that use hardware acceleration to speed up the fill rate constrained software rendering in Flash. For at least a few years, more of the same tends to win out over something completely different.

    Very few of the current flash developers (1/100th to 1/1000ths) will transfer over to making 3D flash games. The skills are different, the tools are different, the games are different and it is not completely obvious that the resulting gameplay is more appealing to broader audiences. As the various genres start to mature and stagnate in terms of game mechanics, you’ll see a turn to 3D as an attempt at differentiation.

    take care,
    Danc.

  7. the best non-flash 3d demo i’ve seen comes from Google. before Chrome merged O3D with WebGL, they released the Beach demo. IMO, this looks far better than the Flight of the Navigator (not surprising for a demo built 1/2 as much to demonstrate realtime audio processing as much as raw webgl graphics)
    http://www.youtube.com/watch?v=uofWfXOzX-g

    cubicvr, the engine used to make Flight of the Navigator, is a small open source project. that’s kind of the state of WebGL– people are still cobbling together engines. there’s no one out there just pushing the bounds of what is possible, trying to create a well produced visually stunning tour de force to showcase what WebGL itself is capable of. everyone is building tools. none of the teams have huge production budgets for modelers and painters and area builders. this lack of publicity leads to these very biased appearing comparisons. the real situation is that we just dont know what WebGL is capable of. although, were I forced to pick, Google’s Beach Demo would be my choice of well produced tech demos.

  8. rektide,
    I’ve written about that exact demo multiple times:
    https://www.raphkoster.com/2009/04/21/google-3d-web-plugin/
    https://www.raphkoster.com/2009/06/01/googles-o3d-and-vws/
    https://www.raphkoster.com/2010/05/08/o3d-becomes-a-js-webgl-engine/

    I am still dubious about an approach that requires a lot of engine-specific heavy lifting to be baked into browsers, though… seems like a bit of a challenge to get widespread adoption for pipelines, etc.

  9. As I find myself learning Flash in detail for the first time, as good as any 3D engine is, as long as it takes to the metal chops to do good enough work (and that in a world where YouTube matters more than any game going), it’s the ease of mastery of the editing tools and their relative costs, good knockoffs (say Quicker) and professional community supported freeware (say Blender) that drives ubiquity.

    I’ve always found Flash (raster on steroids) to be awkward but then frame-based symbol library driven animation is tedious, and hand to eye intensive. OTOH, CS5 is way better than my expectations and here is where Adobe like Microsoft tends to beat the shrill punditry predictions and the oh so cool but oh so simplistic Google tends to fall short. Lots of clever professionally built but no one else can or tries demos simply don’t cut it. No traction.

    I expect WebGL to make a difference but not very soon, not until good applications really make their appearance. The most phenomenal uptake of an app lately is XtraNormal. Someone finally realized what the HUML crew and other text/stagescript people have been trying to say for a decade: authors don’t live in the vertex economy and they are where the compelling content comes from, the stories. The fly through demos are pretty and compelling to someone who understands framerate but to everyone else in the audience, they are the first thirty seconds of the movie the credits and titles are layered over… and not a heckuva lot else. No reach where it counts: into the imagination.

Sorry, the comment form is closed at this time.