6
\$\begingroup\$

So I have been working on web application. So invariably what it boils down to is making simple games which were previously based on flash or openGL. Now I know apple was moving away from flash because its proprietary unlike their stance that its got "pathetic performance"! Not true, try playing a canvas game, I can assure you at any point of time (including when its idle) it will use up a fair bit of processing power just to redraw the UI. Now I do understand that this is my fault because when the game is not active I should not be redrawing the canvas, but honestly its a lot of work and I suppose there should be libraries which should be able to assist me with that! So, how much will it be before I see a decent canvas library which handles these "tiny" issues for me? I can't honestly expect Steve Jobs to be doing anything more for HTML5! I someone knows of a good library, I am all ears...! :)

PS: I use mootools and am presently using Mootools Canvas Library.

\$\endgroup\$
4
  • 1
    \$\begingroup\$ Unless you want to be more specific, possibly about particular genres or something, HTML has been a viable game development platform for years and still is. \$\endgroup\$
    – coderanger
    Nov 15, 2010 at 5:20
  • 1
    \$\begingroup\$ I am not arguing with HTML, I understand with CSS and Js and HTML alone we can do a lot for simple games. But I am more specifically talking about canvas based games. Say pingpong... or tetris... The issue is with rendering the canvas everytime an element in introduced into the canvas, CPU works way more than I have seen games work on native code. \$\endgroup\$
    – Shouvik
    Nov 15, 2010 at 6:42
  • 7
    \$\begingroup\$ -1, speculative and ranty. \$\endgroup\$
    – user744
    Nov 15, 2010 at 8:53
  • \$\begingroup\$ For native mobile apps? Don't hold your breath. I swear Android in particular is trying to screw that up. \$\endgroup\$ Sep 5, 2014 at 11:12

7 Answers 7

6
\$\begingroup\$

I think the title of your question could be better stated as "How long until we see solid HTML5 game development frameworks?".

The answer is: soon. There are several immature or WIP frameworks that I can think of off the top of my head. My guess is we'll start to see some pretty decent frameworks in the next 6 months or so.

Some frameworks to keep an eye on:

I'm sure there are at least a few other HTML5 game engines in the works. (If anyone knows of more, add a comment.)

There are some tricky problems with HTML5 game dev at the moment, for sure. It's kind of the wild west right now.

My co-founder and I have been developing our own HTML5 game engine that solves the kinds of issues you're mentioning (suspend on blur and things of that nature). It's developed for our own games currently, but we may open source it once it matures.

It's either that or wait until a solid framework emerges, and we're impatient. :)

\$\endgroup\$
1
  • \$\begingroup\$ Thanks, I will be on the look out! I hate writing my own framework for simple flash based games I am building... Plus I have read somewhere that canvas takes way more processing power to import an image onto it that just drawing an image... I am importing most of my images which results in very laggy performance on older machines... I would hate for people to have a bad UX so I am looking for a lib which allows me to draw complex images or renders the images I import with better optimization! But I guess thats being too hopeful... :) \$\endgroup\$
    – Shouvik
    Nov 16, 2010 at 7:16
3
\$\begingroup\$

i'm a HTML5 game developer working solely with the ImpactJS engine. It landed me a couple good contracts. By that definition, yes the canvas is a viable development platform.

\$\endgroup\$
2
\$\begingroup\$

The HTML5 games currently running are about where Flash was 5 years ago, just basic 2D/3D graphics with hardly any interactivity to be considered games (oh yes, you can contradict that by linking me to 10 HTML games, but that doesn't outweight the 10 thousand+ flash games in existence).

And by the time browsers that support Canvas become a de-facto standard (and I mean 90%+ usage across the world), Flash apps will have upgraded to supporting 3D rendering via DirectX and OpenGL, and dynamic sound generation via byte stream.

\$\endgroup\$
5
  • 2
    \$\begingroup\$ There is "thousands" more Flash games because Flash has a 10 year head start. Canvas is already equally as capable as Flash, so it seems obvious to me that it will pass Flash before too long. Also, Canvas can already do hardware-accelerated 3D using WebGL, so it's passed Flash in that aspect. Supporting the "de-facto standard" is exactly what causes developers so much grief. Microsoft thought they could get away with letting IE stagnate, and they DID for years because developers kept supporting it. But developers are finally starting to get fed up with IE and are switching to better browsers. \$\endgroup\$ Nov 15, 2010 at 17:42
  • 1
    \$\begingroup\$ Flash should die already. It had it's time. But that time is over. \$\endgroup\$
    – edin-m
    Jul 16, 2012 at 19:31
  • \$\begingroup\$ @Stephen Belanger, flash works wherever it is installed (meaning, most all browsers in use on the internet). Canvas works only on a subset of the latest browsers in use on the internet. They are nowhere near equal in terms of anything. \$\endgroup\$
    – Cypher
    Jul 17, 2012 at 1:57
  • 1
    \$\begingroup\$ Actually, no. Flash doesn't work on iOS at all, and is being dropped from Android as of 4.1. Considering mobile browsers now make up the majority of web traffic, I'd say Flash is very dead at this point. \$\endgroup\$ Jul 17, 2012 at 3:38
  • \$\begingroup\$ I had not seen this post in ages, but stephen has rightly put it, flash is long gone, most sites have shifted to using canvas for simple animations. Some very cool games exist on google chrome web store that use HTML5 (from the top of my head, airmech is an excellent example). So as it goes as of today, HTML5 is a very viable game development platform. \$\endgroup\$
    – Shouvik
    Jul 17, 2012 at 3:57
2
\$\begingroup\$

I'll give you two examples of games that I believe use the canvas element.

Quake II (webGL, chrome-only)
JZNES

I don't know what exactly you mean, or what you're looking for but this looks to be the next in up and coming technology. Games developed for should run on mobile devices as well as laptops and cross-platform without much to-do.

Granted, it won't ever be as powerful as dedicated hardware like an alienware machine or console, but it will probably fill the same role as Flash is performing now.

\$\endgroup\$
2
  • \$\begingroup\$ "Games developed for should run on mobile devices as well as laptops and cross-platform without much to-do." Just like games written for regular GL port between iPhone and Windows and Mac and X11 and all models of graphics cards just fine. \$\endgroup\$
    – user744
    Nov 15, 2010 at 17:02
  • \$\begingroup\$ @Joe Wreshnig, I don't think so. OpenGL ES is different than OpenGL for the machines. ES has a significantly stripped down library. Also, Apple doesn't support all versions of OpenGL. so you can't expect that the graphics will be the same regardless of the system, unless you target for compatibility. \$\endgroup\$ Nov 15, 2010 at 17:03
2
\$\begingroup\$

Rovio just announced web version of Angry Birds at Google I/O 2011. Built on GWT, it uses WebGL with fallback to Canvas2D. The only thing it uses Flash is the sound effect playing. So I think it is fair to say the technology starts to be ready.

\$\endgroup\$
0
\$\begingroup\$

My favorite JS engines built on top of canvas, in personal order:

  • github.com/oberhamsi/gamejs - (my lib) port of PyGame; CommonJs compatible
  • github.com/kesiev/akihabara - arcade game centric
  • github.com/biilly/doodle-js - scene graph
  • github.com/batiste/sprite.js - simplistic but fast sprite handling
  • github.com/fairfieldt/xcjs - coffeescript
  • easeljs.com/
\$\endgroup\$
-2
\$\begingroup\$

Infinite, because IE8 currently supports only HTML < 5, and IE 9 won't be available for Windows < Vista, while many people will be going to wait for Windows 8 until they upgrade.

\$\endgroup\$
5
  • 2
    \$\begingroup\$ First of all, till IE9 is released(and or, if you wish, people upgrade to it) is not infinite time. Then after that, even tho there are a lot of people who won't upgrade till they change their OS, that is not ALL the people. \$\endgroup\$
    – DFectuoso
    Nov 15, 2010 at 18:54
  • \$\begingroup\$ It doesn't matter if a third or two thirds have IE 9, because A) one third won't have it and start complaining B) IE 9 supports only a small part of HTML 5 C) HTML 5 is not the solution for everything, it only has support for video and audio, which html 4.1 already had (with a larger bit of extra work) D) As long as IE's JavaScript engine stays as buggy as it is, AJAX and reverse AJAX will continue to not really work, even with IE 9. \$\endgroup\$
    – Quandary
    Dec 24, 2010 at 16:44
  • \$\begingroup\$ wow... reverse AJAX? really? do you call websockets, flash, long poll and polling reverse AJAX? \$\endgroup\$
    – DFectuoso
    Jan 7, 2011 at 20:51
  • \$\begingroup\$ IE 8&9 support 0% of web sockets. Polling and long polling is only a last resort, and not the same as reverse Ajax. Flash is not HTML, and not supported on iPad or iPhone, and due to neglect by Adobe, it doesn't work very well on Android or Linux either. \$\endgroup\$
    – Quandary
    Jul 18, 2011 at 19:06
  • \$\begingroup\$ I think Quandary's main point is that until Microsoft figures out how to build a web browser, "HTML 5"-based games will not become as viable as other comparable platforms based on the massive distribution of Internet Explorer across the global internet. Of course, the use of the word "viable" is highly subjective in this discussion, so take that for what you will. \$\endgroup\$
    – Cypher
    Jul 17, 2012 at 2:00

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .