JavaScript game development: Unterschied zwischen den Versionen
aus Metalab Wiki, dem offenen Zentrum für meta-disziplinäre Magier und technisch-kreative Enthusiasten.
Zur Navigation springenZur Suche springenC3o (Diskussion | Beiträge) |
|||
(13 dazwischenliegende Versionen von 9 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
Why would anyone do that? Because on two recent cool devices, JavaScript is the ONLY option for open, unrestricted application development. Because making games in JS is a hack and a challenge. Because few people have pushed the technology to its performance limits yet. And because we can. | Why would anyone do that? Because on two recent cool devices, JavaScript is the ONLY option for open, unrestricted application development. Because making games in JS is a hack and a challenge. Because few people have pushed the technology to its performance limits yet. And because we can. | ||
− | |||
== Platforms == | == Platforms == | ||
Zeile 15: | Zeile 14: | ||
* [http://www.pushingbuttons.net/blog/?p=34 Wii Remote API] & [http://www.howtocreate.co.uk/jslibs/script-wiimoteevents Events Library] | * [http://www.pushingbuttons.net/blog/?p=34 Wii Remote API] & [http://www.howtocreate.co.uk/jslibs/script-wiimoteevents Events Library] | ||
* Moz Tech: XUL, XBL etc... no real justification for those though. | * Moz Tech: XUL, XBL etc... no real justification for those though. | ||
+ | * Upcoming Safari CSS extensions: [http://webkit.org/blog/130/css-transforms/ transformations] & [http://webkit.org/blog/138/css-animation/ animation] | ||
* Upcoming canvas 3d context | * Upcoming canvas 3d context | ||
Zeile 22: | Zeile 22: | ||
* Build a library? Input handling, sprite animation, collision detection, SFX, etc etc. Needs more research. | * Build a library? Input handling, sprite animation, collision detection, SFX, etc etc. Needs more research. | ||
* Organize a competition like [[PyWeek]] | * Organize a competition like [[PyWeek]] | ||
+ | * Organize a introductory course/workshop | ||
== Projects & Ideas == | == Projects & Ideas == | ||
Zeile 34: | Zeile 35: | ||
: Multiplayer online Go | : Multiplayer online Go | ||
: Idea only | : Idea only | ||
+ | * [[Benutzer:TomK32|TomK32]] has a few javascript games: | ||
+ | : [https://github.com/TomK32/typedown typedown] (2011-10) uses Canvas and keyboard input | ||
+ | : [https://github.com/TomK32/trollbridge-armours Trollbridge Armours] (2011-05) uses SVG. | ||
== Interested parties == | == Interested parties == | ||
Zeile 39: | Zeile 43: | ||
* [[user:c3o|c3o]] | * [[user:c3o|c3o]] | ||
* [[user:lfittl|lfittl]] | * [[user:lfittl|lfittl]] | ||
+ | * [[user:Snaut|snaut]] | ||
+ | * [[user:Menroth|Menroth]] | ||
+ | * [[user:Tametick|Ido]] | ||
+ | * [[Benutzer:TomK32|TomK32]] | ||
+ | * [[Benutzer:tiefenb|tiefenb]] | ||
== References == | == References == | ||
− | * [ | + | * [https://github.com/bebraw/jswiki/wiki/Game-Engines Comparison sheet of js game engines] |
* [http://javascriptgamer.com/brickslayer/ JavaScriptGamer.com Arkanoid tutorial] (uses Prototype) | * [http://javascriptgamer.com/brickslayer/ JavaScriptGamer.com Arkanoid tutorial] (uses Prototype) | ||
+ | * [http://www.sean.co.uk/a/webdesign/javascript_gamelib/javascript_gamelib.shtm JavaScript gamelib] | ||
== Notable games == | == Notable games == | ||
Zeile 52: | Zeile 62: | ||
* [http://weboggle.shackworks.com Weboggle] | * [http://weboggle.shackworks.com Weboggle] | ||
'''Single player''' | '''Single player''' | ||
+ | * [http://blog.nihilogic.dk/2008/04/super-mario-in-14kb-javascript.html Super Mario] | ||
+ | * [http://blog.nihilogic.dk/2008/05/javascript-super-mario-kart.html Super Mario Kart] | ||
+ | * [http://www.geekin.de/data/public/umsetzung/minesweeper/ Minesweeper] (uses the JS gamelib) | ||
* [http://www.elizium.nu/scripts/lemmings/ Lemmings] | * [http://www.elizium.nu/scripts/lemmings/ Lemmings] | ||
* [http://www.voximperium.com/ Vox Imperium] | * [http://www.voximperium.com/ Vox Imperium] | ||
* [http://www.schillmania.com/arkanoid/arkanoid.html Arkanoid] | * [http://www.schillmania.com/arkanoid/arkanoid.html Arkanoid] | ||
+ | * [http://www.def-logic.com/games.html Def-Logic games] | ||
+ | * [http://www.thomasscott.net/realworldracer/ Realworld Racer] (on Google Maps) | ||
'''iPhone''' | '''iPhone''' | ||
* [http://xwuz.com/stack/game.html Stack the Log] | * [http://xwuz.com/stack/game.html Stack the Log] |
Aktuelle Version vom 27. April 2012, 09:05 Uhr
Why would anyone do that? Because on two recent cool devices, JavaScript is the ONLY option for open, unrestricted application development. Because making games in JS is a hack and a challenge. Because few people have pushed the technology to its performance limits yet. And because we can.
Platforms
- Wii!
- iPhone!
- Regular old boring computers
Technologies
- DHTML/DOM animation
- Canvas (Opera: 2dgame context)
- Wii Remote API & Events Library
- Moz Tech: XUL, XBL etc... no real justification for those though.
- Upcoming Safari CSS extensions: transformations & animation
- Upcoming canvas 3d context
What to do
- Start a wiki?
- Build a library? Input handling, sprite animation, collision detection, SFX, etc etc. Needs more research.
- Organize a competition like PyWeek
- Organize a introductory course/workshop
Projects & Ideas
- JShmup (c3o)
- Full window shoot em up as browser stress test
- Prototype exists (flying+shooting)
- JS Spryjinx (c3o)
- Remake of simple DOS 2 player platform game
- Prototype exists (basic game elements, 2 player controls, game over)
- Multiplayer online Go
- Idea only
- TomK32 has a few javascript games:
- typedown (2011-10) uses Canvas and keyboard input
- Trollbridge Armours (2011-05) uses SVG.
Interested parties
References
- Comparison sheet of js game engines
- JavaScriptGamer.com Arkanoid tutorial (uses Prototype)
- JavaScript gamelib
Notable games
Multiplayer
Single player
- Super Mario
- Super Mario Kart
- Minesweeper (uses the JS gamelib)
- Lemmings
- Vox Imperium
- Arkanoid
- Def-Logic games
- Realworld Racer (on Google Maps)
iPhone
Experimental
- Canvex FPS
- Moon lander
Lists/indexes