Javascript Game: Что я должен знать? - PullRequest
0 голосов
/ 11 октября 2009

Я думаю, что как вызов, я должен написать игру на основе JavaScript. Я хочу звук, изображения и ввод. Фон для имитации экрана (например, 640x480 со всеми моими изображениями в нем) был бы полезен для отделения остальной части страницы от «игры». На что мне посмотреть?

Некоторые вещи, которые мне нужны

  • Framecontrol. Способ узнать текущее время (или дельта).
  • Изображение, отображение и перемещение. Как отобразить полное изображение Знание доступа к пикселям может быть круто.
  • Ввод Способ заблокировать его в коробке (как это делает вспышка) - это круто.
  • Звук воспроизводит простые звуки по требованию (например, когда я получаю удар). Несколько звуков одновременно было бы здорово
  • Узкие. Какие вещи убьют процессор?
  • Ограничения. Что я не могу сделать? Я слышал, я не могу "спать", чтобы ждать. Я должен установить обратный вызов
  • Хорошая или лучшая практика. Какие хорошие вещи я могу сделать, чтобы сохранить скорость или уменьшить проблемы с совместимостью.

Ответы [ 3 ]

2 голосов
/ 11 октября 2009

Я собираюсь ответить на этот вопрос, глядя на вещи с точки зрения JavaScript mootools:

Framecontrol. Способ узнать текущее время (или дельта).

журнал ()

Изображение, отображение и перемещение. Как отобразить полное изображение.

setStyles ()

Ввод Способ блокировки в коробке (например, вспышка делает) это круто.

Простой старый CSS

Звук воспроизводит простые звуки по запросу (например, когда я получаю удар).

Swiff , пульт () ;

Узкие. Какие вещи, которые будут убить процессор?

Internet Explorer.

Ограничения.

3D ...?

Какие хорошие вещи я могу сделать ... для меньший глюк или совместимость проблемы.

Используйте рамки.

1 голос
/ 11 октября 2009

В качестве отправной точки вы можете написать ее для Opera, поскольку Opera предоставляет игровой холст, который вам поможет.

Для некоторых примеров игр в javascript: http://dev.opera.com/articles/view/3d-games-with-canvas-and-raycasting-part/

http://my.opera.com/WebApplications/blog/show.dml/200788

Это интересно, это демонстрации игр с использованием элемента canvas. http://www.canvasdemos.com/tag/games/

Лучший способ узнать, в чем проблема, - это начать писать игру, а затем вы увидите, в чем может быть проблема. Глядя на демонстрации, вы можете понять, с какими проблемами производительности они столкнулись. Например, полноценная игра 3D Doom будет иметь проблемы, но, как объясняется в первой статье, есть несколько способов оптимизации для javascript.

Как только вы начнете работать с Opera, вы сможете взглянуть на Firefox 3.5+ и Safari, а также на Chrome и посмотреть, сможете ли вы внести некоторые изменения, чтобы он работал с ними. Сколько платформ это работает, зависит от того, сколько работы вы хотите сделать для этого. Для проверки концепции выберите самый простой браузер для вашей задачи.

0 голосов
/ 11 октября 2009

Лучше всего начать знакомство с тегом <canvas> (он позволяет рисовать что угодно на экране)

Это может сильно помочь: http://benfirshman.com/projects/jsnes/ это онлайн-эмулятор NES, который отображает все на экране - источник также доступен

Надеюсь, это поможет =)

...