Hacker News new | past | comments | ask | show | jobs | submit login
Flash vs HTML - Waste Invaders (flashvhtml.com)
136 points by polskibus on March 8, 2013 | hide | past | favorite | 71 comments



Two problems with the HTML5 version in Chrome:

1) No audio

2) If my mouse cursor moves off the window it loses control of the ship

Flash version has neither of these problems.

No idea why audio is broken. I tried a couple HTML5 audio test pages and it works there.

I'm using Chrome beta 26.0.1410.28 on both Windows 7 and OSX Lion, broken on both.

I didn't notice any other differences.


Exact same problems in Firefox. Also background scrolling in flash was somewhat smoother.


Try using this library for audio:

http://howlerjs.com


They could have also included some technical parameters like framerate, memory consumption or battery usage for the sake of comparison.

Even if all browsers gain universal support for HTML5, we must remember that Flash can exist outside browsers. A lot of flash games are in circulation which are simply embedded inside Office documents. The actual Flash standalone runtime is only a few megabytes in size. Flash content is highly compressed and very efficiently packed.

In other words, the problem is not Flash per se, it is the Adobe runtime of Flash. Just like Google changed the browser game by introducing an extremely efficient browser, someone can (in theory) develop a mobile friendly, efficient (and open source) runtime. Flash format quite close to the ideal for games.


someone can (in theory) develop a mobile friendly, efficient (and open source) runtime

I don't think the format is documented to that level. And even if it is, it is very complex and hard to get right for other implementations (and it is a moving target controlled by one player, a bit like MS office formats).

And why bother? If you have the choice, why not go with HTML5 which already has some good and very fast free implementations available? Or as you're implementing your own environment anyway, go completely native?


> And why bother? If you have the choice, why not go with HTML5 which already has some good and very fast free implementations available?

Well, I think this demo kind of proves why not: it doesn't work the same way on everyones browser. We've been talking for years now about html5 games obsoleting flash, but it doesn't seem to be coming together does it? My opinion on why not? We've got some serious problems with the spec and the people producing the spec. Even with the infinite resources of google, the chrome browser is not actually 100% compliant! Is that even fixable at this late stage of the game?

> Or as you're implementing your own environment anyway, go completely native?

That doesn't really help you distribute your games safely over the web to multiple people. Also, cross platform development is actually quite time consuming and hard, and the performance benefeits vs a VM are not really worth it for the average 2D flash-type game.


> Well, I think this demo kind of proves why not: it doesn't work the same way on everyones browser.

Still, you are comparing this to flash, which has only one complete implementation at all which is only available on a subset of platforms and not open source. This number of platforms is decreasing, not increasing (ie, Android dropped).

> That doesn't really help you distribute your games safely over the web to multiple people.

Agreed, no one solved the problem of cross-platform application development (both desktop and mobile) yet. And flash doesn't succeed much, if any, better than HTML5 in this regard. But looking forward HTML5 looks more promising too me.


> Still, you are comparing this to flash, which has only one complete implementation at all which is only available on a subset of platforms and not open source. This number of platforms is decreasing, not increasing (ie, Android dropped).

Indeed, there are problems with both implementations. I'm not saying that flash is the way forward at all, just that I'm starting to doubt that html5 technologies can actually achieve on a technical level what flash has acheived in a reasonable time frame.

Ignoring ideological issues for the moment (which are important too, but we could be here all day) the major benefeit of html5 right now is that your games can run well on gnu/linux machines, on which flash performs terribly. Techinically you can also target smartphones/tablets, but the performance here is really quite bad on almost all devices. So there is this promise of true cross platform coverage that isn't really being acheived. The major downside is this browser incompatibility stuff we've already discussed that is really hampering the platform, and the performance issues, which also varies wildly with browsers.

> Agreed, no one solved the problem of cross-platform application development (both desktop and mobile) yet. And flash doesn't succeed much, if any, better than HTML5 in this regard. But looking forward HTML5 looks more promising too me.

We're in agreement here, except for that last part. Will html5 (or 6 or 10) actually ever live up to what has been promised? Or should we be betting on a 3rd player at this point?


> Still, you are comparing this to flash, which has only one complete implementation at all which is only available on a subset of platforms

Huh?

A flash swf or flash compiled app is available on _all_ platforms. We aren't talking Flash on the iPhone, this is Flash _compiled_ to native for the iPhone.

Haxe NME and Unity3D are similar in that they let you write once and deploy to many. They also in fact let you "deploy to flash". They do this because if you know your audience, you know you need to still support IE8 and while you get IE8 you also get IE7/6. Believe it or not businesses are locked into these horrible browsers. Going 100% HTML5 is cool and trendy but why would you elect to cut off a subset of your users (who you are trying to make $ off of)

Haxe and Adobe (not sure about Unity) are also allowing you to export to HTML5. This would be interesting if they compared performance with that.

We are all looking forward to HTML5 taking over, but we are far from that place right now.


> Haxe NME and Unity3D are similar in that they let you write once and deploy to many. They also in fact let you "deploy to flash".

I think you're distorting my argument a bit -- I wouldn't invest in developing new flash app or game, but if you can get flash support for free through "compile to flash" I don't see any reason for not supporting it as extra option.


If Super Hexagon is a good example, Flash compiled to native iOS is quite sluggish.

edit: It uses Stage3D, so maybe not a great example.


As someone who built and maintained a large-scale Flex app for 5 years, none of Flash's advantages are worth the countless unpredictable difficulties you WILL encounter. It's not a stable platform. Move on.

Maybe the story is entirely different for games, but I can't see how it could be that different.


> built and maintained a large-scale Flex app

I see your problem right there :)

Also, I am not aware of any stable platform for game development. Browsers and iOS have both changed a lot in the last 5 years as well.


Flash and Flex are EXTREMLY stable and easy to maintain for my projects. Maybe it is not Flash/Flexs Fault but yours ?


We were trying to build on a scale Flash just couldn't handle well, so in that sense, yes, we made a poor decision in going with the platform. But it looked good from the start, it was only after scaling that we ran into issues.


Yes the SWF format has not been fully documented [1] by Adobe to make it easy to develop an implementation.

But so was the case with Office documents, but several open source projects can now successfully read and write them.

EDIT: It seems that the Flash Player EULA is a major roadblock. Once installed, you cannot perform any reverse engineering on it [2].

[1]: http://www.adobe.com/devnet/swf.html [2]: http://en.wikipedia.org/wiki/Gnash#Adobe_Flash_Player_End-Us...


Even if it were to be documented, I imagine it would read something like:

"This API works exactly like this. Except when the user disables local storage. Oh wait, also not when the Flash version is 11.0.635.24.b. Well, also it's different if you don't have a security-inst-config.xml installed in the home directory of the user under the path .adobe/flash/securityPolicy. OH! Also it works completely differently if you're using HTTPS. And it won't work at all if you're trying to access any server without a security policy defined on the DNS TXT record third from the top. Also there are some slight issues between 3 and 5 PM GMT on Tuesdays, but a workaround can be found on the Macromedia support forums."


There already are several open source flash runtimes, but neither is complete enough.


When comparing Flash and HTML5, Flash wins 4 out of the 5 criteria but the balance scales end up with them both equal.

Also, Flash gets a 0% for mobile browsers as new phones don't get Flash Player. I'm willing to be that a higher number of smart phones in use today have Flash Player installed (all but iOS and recent Android) than have a browser that supports all the HTML5 required for the game.


Flash fails to reach a large portion of the market, so Flash fails. HTML5 is the future. Also, this game (and many other flash experiences) crash my Flash plugin and take up more CPU usage than HTML5 video or canvas experiences.


What are you running? For me Flash does less CPU. I agree with HTML5 being the future, but the future is not now.


I'm not really sure I could tell them apart in an ABX test. But it's not like the game is demanding in any way. The amount of sprites is way too low and they're all bitmaps. Furthermore, you don't need the webaudio api to playback an audio track and few effects concurrently, like this game does. Standard <audio> elements with the preload attribute work fine [1].

What I'd like to see is a comparison between 2D vector graphic performance of Flash compared to Web technologies as implemented in browsers. In my experience browsers are still very slow at that (without WebGL) while Flash had excellent performance for as long as I remember.

[1]http://robert.ocallahan.org/2011/11/latency-of-html5-sounds....


I tried this on slightly older hardware [1] running Linux Mint 13 x86_64 and here's what I found:

First, even scrolling the website itself was slow and jerky in Firefox 19.0. When I switched to Chromium 24.0.1312.56 the website scrolled nicely. The Flash version of the game ran somewhat choppily with Flash 11.0.1.152 and I could see distinct seams in the scrolling background [2]. However, it had sound and was overall playable. When I tried the HTML 5 version it ran smoothly but felt too fast (seemingly faster than the Flash version would have been with a good frame rate) and had no sound.

The total memory/CPU usage as reported by Chromium's task manager is higher with Flash [3]. Unfortunately, it doesn't report the frame rate for Flash.

Edit WRT the game's design: when I first played the game I went to grab a power-up and my ship apparently got enveloped in some sort of a bright and colourful energy ring. I couldn't tell whether that was a good thing that happened because I picked up the power-up or a bad thing caused by an encounter with a nearby enemy bullet. I had to watch the life counter in the top right until it happened again to know for sure that that's what it looks like when my ship explodes. The explosion looks bright, colourful and pretty, and it's not immediately clear it indicates failure.

[1] http://www.thinkwiki.org/wiki/Category:X61s; mine has an L7500 CPU.

[2] http://imgur.com/qpOIwUt

[3] http://imgur.com/gRfi5KV,E6B1oeG


I'm not voting because you require me to "like" you on facebook. I wouldn't have a problem giving you a like if you weren't trying to manipulate me.

I know this is not a scientific poll but just a marketing effort disguised as one, and that's ok, but I would try to be less disingenuous about it.

Nice game, btw.


"Manipulate me", oh people take this so seriously.


I wouldn't play any game that required me to like anything.


You can play the game without liking anything, can't you ?


Yep. It's required if you want to vote in the meaningless survey, though.


Half the people here are just too dramatic about simple things. "My identity is sacred and my privacy is sacred". If you want to be private you already know what to do, first world problems man. Geez.


HTML5 version ran WAY faster for me (Chromium Linux) but without sound :(


To me (Firefox on Windows 7), Flash seemed a little more responsive, but not radically so.


HTML5 ran faster for me as well. "Faster" as in "everything was sped up at 2x".


Did you try Chrome?


Same thing here, Aurora on Arch.


Was about to post the same but for chrome beta on nexus 7.

No sound but way awesome FPS


The performance of the HTML5 version is smooth and quite impressive, but HTML5's achilles heel is sound. I didn't have any audio.

This game aside, I still haven't played an HTML5 game with audio that wasn't plagued by high latency / other funkiness.


Sadly Firefox doesn't support the WebAudio API, only an older audio API. The WebAudio API was designed primarily by Google and is very nice. It's only supported by Chrome AFAIK. Last year at Google IO they had a talk about it. We use the API in our game, and it works great.


Nightly builds of Firefox are starting to get support for the Web Audio API, hidden behind a pref 'media.webaudio.enabled', which can be set in 'about:config'. At some point when it's considered more useable someone will blog about it and the state it's in.


browserquest.mozilla.org managed to do sound OK.


It's certainly possible to play sounds in all modern browsers. It may be a bug in the game. Or they simply decided not to support all the APIs. We did that because it doesn't make sense to support two different sound APIs when in a few months there will be one as a W3C standard supported by the two major browser engines (screw IE, it doesn't even do WebGL).


Flash - http://imgur.com/fj0AH2r HTML5 - http://imgur.com/dLmHfbE

I'd say HTML wins with my browser configuration.


Yesterday I played this : Kingsroad - https://www.rumblegames.com/kingsroad

First I thought it was HTML 5 and the best HTML 5 game I've ever seen, turned out it's Flash Stage3D stuff. It might be possible to develop games like this in HTML 5 but I haven't seen one yet.


That was an interesting comparison.

As others have said, no sound on the HTML5 version.

There were some minor differences between the two that I found interesting. The HTML5 scrolling would occasionally stutter; however, the Flash version suffered from some slight alignment issues in the tiles.

Overall I was very impressed by the HTML5 version, the two were almost impossible to tell apart. I doubt (apart from the obvious audio issue) I would've known which was which if I hadn't been told beforehand.


I love the open approach to the technologies. I do all my game programming in Unity (which supports Flash deployment and will offer HTML5 as soon as its ready i bet) but im also looking into HTML5 and writing games in Javascript.

The website is also totally aswesome, you wrote you did it in flash ? Did you redo it in JS or convert it somehow ?


Tested on macmini 2009 (or 2006? the one without hdmi anyway , 2GB ram, Core2 T7200@2.00GHz, Intel 945GM onboard GPU >_< etc) running Debian wheezy and compton. Surprisingly html5 was the smoothest of the two, but with no sound. Conversely, sound was crisp but the game itself seriously 'choppier' (with regards to FPS) in Flash 11.2.202.258 .

Obligatory htop screenshots: http://666kb.com/i/cc6jh5a4d3wqopmqu.png < Flash http://666kb.com/i/cc6jhhh5ywa8qrlgm.png < html5

Browser in use: Chromium 24.0.1312.68

Not sure if the compositor (compton) is responsible for the lag or something else entirely. I don't really have the time to test any further :S


I lost mouse focus a couple of times by moving the pointer out of the browser window in the HTML5 version which lead to multiple game deaths. This didn't happen with the flash version. Is there some technical barrier in browsers preventing complete mouse capturing?


Flash version is much better. Less CPU for me as well. I do native mobile/flash/html5 versions for games I make; the html5 versions rarely get any play time. People download native on iOS/Android and on Mac/Win they play the flash version.


On my android (which was the only reason for HTML5) the game does not run at all.


I tried both on my Windows 7 laptop from work, which runs on a first-gen i5 and HD2000 graphics.

The HTML5 version runs smoothly, the Flash one is barely playable and has lots of visible tearing from the lack of VSync.


None of the two scrolled smoothly for me. I guess that makes it a draw :-)


I saw the intro, then a blank deep blue screen. Nothing happened. Boring.


1. Why does the airplane fly backwards? 2. Flash and HTML5 version shave different timings and different game-plays. HTML5 version seems to move faster but with more skipped frames.


Hello! The HTML5 audio does not work because I didn't have time to add it in :)

The main timeline was animated in flash and we wrote a little exporter to output all the items to a js file.


Do you know they get the HTML5 version to be a full screen app that doesn't slide horizontally or vertically? I have been looking everywhere for how to do that in Safari.

Thanks anyone.


Reminds me of GreenSock TweenLite and indeed they’re using it for the timeline. http://www.greensock.com/


I do like the HTML5 version, but i don't want to install flash so i can't compare them.

But thanks for porting your game. Gives me hope that flash might die some day.


I loved the presentation. Once I was done reading, I scrolled back up just to view the whole thing again. Now, time to try the game :)


I tried the HTML5 game, kept pressing fire and switched to Exposé with the F3 key.

Worked for me to obtain auto fire on Chrome/Mountain Lion.


I get a strange line that goes down the flash version every few seconds, nice and slowly. Chrome, rMBP.


No noticeable difference for chrome (on xp) between each version apart from the sound.


Flash version won't start for me, FF19 on Ubuntu with Flash 11,2,202,270.


Flash on linux is dead, The only updated standard implementation comes from Google Chrome (note: not Chromium)


Game ran like complete garbage in HTML5 (Firefox 19, Windows7 i7 2600, 12GB ram). It had a very low framerate, did not respond to mouse in a timely fashion and had no sound. Ran completely smooth and flawless in Flash. Isn't progress (HTML5) great.


You should check your FF extensions. I had a very smooth experience on a much older setup: FF19, OS X 10.7.5, Core2Duo 2.9GHz (MaxBookPro late 2008), 4GB RAM.

I found that the HTML5 version tracked my mouse cursor more smoothly then Flash.


As long as your users have the same problem as goggles99, HTML5 will not be a technology to choose. It is more likely that they already have Flash installed, than being willing to "check their extensions".

BTW, HTML5 version runs really slow on my computer as well. FF1.9, Linux, Core2Duo 1.6GHz, 2GB RAM, while Flash one works flawlessly.


Your anecdotal experience says absolutely nothing about the progress of HTML5. Other folks with lesser setups aren't having the same issues as you (me included) so I suspect there is a problem with your rig.


It ran great for me in HTML5 (Firefox 19, Windows7 i7 Q720, 16GB RAM) + Firebug, et al open.


P.S. Firefox is complete garbage compared to Chrome.


For those who wonder the tech behind is PIXI.js and some good old TweenMax/TweenLite ( js version ). I wonder if they coded sprite movements by hand or used a tool for that though. I'm just glad they did not use adobe edge ;) And yes it does run in IE9.


Your landing page and the game are both amazingly well designed and fun to interact with. Some of the best work I've seen.


Agree. THIS is how you do parallax! I love how the scrollbar is nonexistent; that somehow made the experience better!




Consider applying for YC's Summer 2025 batch! Applications are open till May 13

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: