Hallo da!

Ich wollte mich ja mal etwas im Prog-Forum blicken lassen, zur Abwechslung.
Also mal nen Thread. Mein erster seit vielen, vielen Jahren. @_@

Also hier geht's um HTML5 (d.h. HTML mit neuen Features wie <canvas>, <audio> und <video> und CSS mit dollen properties wie transform etc sowie immer schnelleres JavaScript) und wie man es für Spielentwicklung verwenden könnte (oder generell für grafisch anspruchsvollere Anwendungen).

Wie ich auf HTML5 kam?

Ich hatte dieses Jahr nen Praktikum über ein halbes Jahr gemacht und dort ein "Social Network Game" basierend auf HTML5 implementiert. Zu beginn war ich auch skeptisch, inwieweit das überhaupt funktioniert, bis ich dann dieses Spiel gesehen habe:
http://www.warimals.com/play.html
Das Spiel basiert komplett auf HTML (kein Flash). Die Grafik wird sogar mit HTML <div> elementen dargestellt, kein <canvas>.
Das Spiel das wir dann entwickelt haben (leider nur eine Art FarmVille ...) ging dann in eine ähnliche Richtung und lief auch ähnlich anschaulich. Kann leider nichts zeigen, da es noch nicht öffentlich ist. ^^"

Zu dem Zeitpunkt fing ich an, Web-Technologien als eine Möglichkeit für Spiel-Entwicklung in Betracht zu ziehen.

Zwei HTML5 game engines, die sich imho sehen lassen können:
Effectgames: http://www.effectgames.com/effect/ (wieder basierend auf HTML layout, leider eingestellt, aber schaut euch mal die Demos an)
Impactjs: http://impactjs.com/ basiert auf <canvas>, läuft auch ziemlich gut.

Wieso eigentlich HTML5?
Ja, wieso eigentlich? Vor allem weil es doch für sowas Flash gibt oder Unity3D.
Also für mich ist der Hauptgrund einfach der, dass ich Web-Technologien sehr gut kenne und Flash/Unity3D einfach gar nicht,
Darüber hinaus hab ich die Erfahrungen gemacht, das dynamische Webseiten Inhalte die mit modernem HTML umgesetzt wurden, in aller Regel besser verwendbar sind, als das selbe Zeug mit Flash.
Es läuft irgendwie flüssiger, das Look-and-Feel ist wie man es gewohnt ist... und es einfach weniger überladen, weil HTML einfach immer noch limitierter ist als Flash.

Aber ist es deswegen gut zur Spiel-Entwicklung geeignet? Also ich denke mal mit Flash und Unity3D kriegt man heute immer noch bessere Ergebnisse hin. Aber so gut wie alle Browser setzten momentan viel daran die Performance der nativen Web-Technologien hoch zu puschen und in den letzten Jahren gab es da massiv Fortschritte. Und der Trend könnte so eine weile noch weiter gehen.

Nebenbei angemerkt arbeite ich auch an der Uni an einem Projekt, dass Declarative 3D Grafik in HTML integriert... wahrscheinlich auch ein großer Grund, wieso ich gerne damit arbeite.

Und sonst halt noch:
- Man ist nicht abhängig von proprietären Plug-Ins/ Authoring-Tools
- Es läuft auf dem iPhone!!1 (naja, noch nicht sooo schnell afaik)
- JavaScript ist imho eine tolle Sprache, wenn man sie mal besser kennen lernt.
- HTML ist imho eine der produktivsten Optionen für Interface Design... aber ich kenne sonst auch nur Java/Swing.

Was ich momentan mache.
Im Moment setzte ich eine meiner Spiel-Idee von mir mit HTML5 um - mal im etwas kleinerem Format. Genauer gesagt hab ich mir die impactjs Engine gekauft und baue das ganze basierend darauf auf.
Hab zwar große Teile der Engine komplett umgeschrieben, bereue den Kauf aber gar nicht, da schon sehr viel Brauchbares dabei ist (vor allem der Level Editor) und der Quellcode unglaublich sauber ist und sich sehr toll damit arbeiten lässt.

Die Leute auf der Nato haben schon nen Preview bekommen von dem was ich mache. Wenn ich mal etwas weiter bin, werde ich Ergebnisse hier reinstellen.

Und mein bisheriger Eindruck: Genial! Für einfache Spiele auf RM2k/RMXP Niveau kriegt man mit canvas locker 60 fps hin, zumindest bei den meisten Browsern und halbwegs modernen Rechnern (ausgerechnet Firefox stellt sich momentan leider etwas quer...).
Die Entwicklung geht auch weitaus schneller von der Hand als etwa mit C++ (naja, wen wundert es...).

Naja, was meint ihr dazu? Kennt ihr noch andere, interessante Spiele oder Game-Engines basierend auf HTML5?

C ya

Lachsen


PS: Weiß nicht, ob das vielleicht eher unter Web-Entwiclung reingehört. Aber ich wollte mal ins Progforum posten! D:
PPS: In 'grafisch' steckt doch tatsächlich 'fisch' drin. Holy carp.