Ich bin damit einverstanden, dass HTML5 vollständig in der Beta-Phase ist, aber viele Leute arbeiten an Game-Engines. Ich mache selbst eine (die ich als Open-Source-Version veröffentlichen und in einem Buch über HTML5-Spieleentwickler vollständig beschreiben werde.)
Bisher habe ich ein einfaches Sprite-Objekt, das in etwa wie ein MovieClip in ActionScript oder ein Sprite in PyGame funktioniert. Es verfügt über alle grundlegenden Funktionen: Geschwindigkeit, Richtung, Vektorprojektion, Mehrfachbilder, Grenzüberprüfung, Transformationen und grundlegende Kollisionserkennung.
Ich arbeite auch an einem sehr einfachen Spielobjekt. Dadurch wird das Canvas-Element eingekapselt, die Hauptanimationsschleife verwaltet und eine übergeordnete Schnittstelle zum Ereignissystem (wie es ist) bereitgestellt.
Ich versuche es so einfach wie möglich zu halten: so etwas wie gameEngine in Python:
http://aharrisbooks.net/pythonGame/
Selbst wenn ich das zum Laufen bringe, wird es sicherlich nicht stabil sein, da die zugrunde liegenden Technologien viel zu instabil sind. Die Browserunterstützung für verschiedene HTML5-Funktionen ändert sich buchstäblich täglich, und es gibt immer noch keine sinnvolle Unterstützung für die meisten HTML5-Funktionen im IE. Außerdem variiert die Leistung zwischen den Browsern dramatisch, sodass ein Spiel, das in Chrome hervorragend läuft, in Firefox möglicherweise überhaupt nicht ausgeführt wird.
Wenn Sie eine stabile, praktische Umgebung wünschen, ist HTML5 noch nicht das Richtige für Sie. Wenn Sie mit HTML5 experimentieren möchten, ist dies eine vielversprechende Alternative. Ich bin auf jeden Fall bestrebt, es als Unterrichtsumgebung zu nutzen. Ich glaube, dass es in dieser Hinsicht ziemlich nützlich sein wird.