3D: Flash vs HTML5

Out of context: Reply #20

  • Started
  • Last post
  • 45 Responses
  • Boz0

    Mojo.. WebGL is not going to be ready for a long time.

    I like the 3D Rome demo but that's like basic 3D stuff right? With panning and so on. You could have done those things in Papervision years ago. Flash is already there now even without 3D low level API coming in Molehill.

    Also don't forget.. WebGL really needs canvas 3D API to evolve and the official canvas in HTML5 is canvas 2D API. Also, WebGL implementations vary from browser to browser, so will performance.

    Personally I think does who support HTML5 to death don't take it into account that MS will most likely introduce HTML5+ and Firefox will do something else and Chrome will do like WebGL+ which will have dire and worse consequences to compatibility aspects. Even today, with CSS3 you have to write the same code 3 times to accommodate mozilla CSS properties, webkit CSS properties, IE specific properties or you are forced to use some kind of bridging framework or some shit like that.

    This is the problem that plagued everyone forever with HTML/CSS/JS and will be even more visible as browser functionalities expand.

    Let's not forget that unless a browser itself doesn't open an API for you for camera, for microphone and other shit, you simply won't be able to create social interaction things or live streaming or any interaction with 3D which is obviously again going in the gesture/Kinect type style right? So Molehill implementations might very well include demos that will allow you to use Kinect to navigate 3d environments and web games. A lot of people don't think about this aspect but it's incredibly important in building an immersive game or app in 3D. But let's get back into the discussion of 3D.

    I believe THE ONLY advantage WebGL has is that you can code it with Javascript and essentially it doesn't require plugin. However, in that sense, they lack significant security (this doesn't help: http://bit.ly/mn7rmA ), they have to rely on browser development and improvement in WebGL support which are usually very slow and you will most likely have issues at certain browsers supporting different things again. The quality isn't there either. If you look at the WebGL demos almost none of them look great really.. They are providing us with actual 3D environment but we don't have anti-aliasing, we miss a lot of things that would provide you with quality 3D and that's really what developers and even those who create 3D rich interactive experience want.

    But let's address this thing from another standpoint. Ubiquity.
    Flash runs on 93 or 95% of computers today. This is unbelievable power. Chrome and other browsers already have automated process to update Flash to the latest version. This almost guarantees Flash Player 11 support when it's release on a massive level. For developers this means everything. This is why Unity guys added export for Molehill in their editor. The level of sophistication of Unity game for example can't even come close to WebGL demos and Unity developers will now publish for Molehill so you will have these unbelievable 3D games built in Unity ready available for Molehill.

    I'm not even getting into 3D engine development from 3rd parties. Unity is actually an engine. But as Flash developers know, over these last couple of years we have so many 3D engines available to us from Away3D, Sandy 3D, Alternativa etc.. All of these guys are doing some insane things with Molehill and adopting to their engines so developers can have serious diversity in building games and picking engines that suit them. And they are all going to run perfectly in one unified environment without any compatibility problems that will run on OSX, on Windows, on Linux.

    But that's not where it ends really.. WebGL is really not optimized for mobile devices, TVs, tablets.. it runs awful and you will then again have to have all mobile browsers include hardware acceleration and support for WebGL which is probably never going to happen or it will be a mess IMO.

    That's where Molehill will have an advantage as well. Molehill is getting integrated both into Flash Player 11 but also AIR 3.0.

    So what does this mean to you as a developer for example. This means that you can pick up the engine you like the most (Unity or Away3D or the other guys), build a sick 3D game that is fully GPU driven, publish your game not only for the web (FP11) and Chrome store and so on, but to all Android devices (or 90%), iOS devices, Android tablets, Blackberry , GoogleTV and other platforms and have just minor changes (matter of hours or at most days) in covering everything.

    This is why WebGL won't even compete.. Will it be used for some things.. absolutely.. I can see people doing it here and there and for open source projects and so on, but I have been saying for a while.. Flash/AIR is the future of superb GPU/3D accelerated apps and games. The advantage of being a runtime is going to become very obvious.

    Lastly, for designers, developers and so on to really create functional and beautiful WebGL projects, they need tools and as of now, there are none and it probably won't happen for years where Flash will again already use Molehill and I can see all or majority of 3D game developers just using Flash as they are already used to it, they have ubiquity, they can make desktop games as well web games without changing a thing etc etc..

    The point is, it's not just necessary that browser can render a webGL project.. it's necessary that tools also support it for it to even get some traction. Other than that, it will just remain a cool demo for something that was easily done with Flash but doesn't require plugin with no other visible advantages.

    • get a blog.team_zissou
    • ummm...this IS his blogmonospaced
    • Thanks for replying mate. I really see two sides to this! HTML5+ point is very true..Mojo

View thread