Этим утром мы провели еще одну серию бесед с экспертами в режиме реального времени. На этот раз предметом были HTML5 Games, а экспертами были создатель GeekGames Марк Браун и разработчик SitePoint Пол Аннесли. Это была действительно интересная сессия, наполненная огромными ресурсами для всех, кто заинтересован в создании игры.
Когда люди говорят об играх HTML5, они говорят об играх JavaScript, хотя определением может быть любая игра, использующая технологии HTML5. Вот потрясающий список связанных ресурсов, которые Марк собрал, чтобы помочь всем, кто заинтересован в создании игр.
Ресурсы HTML5 и Javascript:
На мой взгляд, лучшим ресурсом являются документы MDN от Mozilla.
Если вы хотите найти что-то в функции HTML5, просто добавьте mdn к поиску в Google, например, « mdn web sockets »
Еще один замечательный ресурс — еженедельные дайджесты по электронной почте:
HTML5 Weekly
Javascript Weekly
Еще один отличный способ научиться — следить за лидерами отрасли, такими как @mrdoob , @paul_irish , @rauchg в твиттере.
Технологии, которые помогут вам создавать игры:
Холст для 2D растровой графики
Постер-потомок HTML5, в Интернете есть несколько действительно впечатляющих демо-роликов.
WebGL для 3D-графики
Three.js — это популярная библиотека JavaScript для упрощения вашей работы с WebGL. Проверьте это моделирование Minecraft
Автономный кеш
Кэшируйте HTML, CSS и JavaScript на клиенте.
Аудио API
Играйте, генерируйте и модифицируйте аудио в JavaScript.
Веб-работники
Потоки в браузере. Позволяет JavaScript запускаться как фоновые процессы, которые не блокируют браузер.
Веб-сокеты
Отсутствие состояния сети означает, что клиенту всегда нужно было отправлять запросы для получения новых данных. Веб-сокеты позволяют принудительно открывать соединения с сервера. Socket.io — это популярный js-фреймворк для использования в настоящее время веб-сокетов.
SVG технически не является частью HTML5, но может быть включен в зонтик технологий
Raphael.js упростит вашу работу с графикой SVG.
Box2D — это порт JavaScript популярного физического движка, который используется во многих языках и средах, поэтому вы можете создавать свои клоны Angry birds.
У нас не может быть такого списка без упоминания Node.js, который собирается разбойничать .
Node.js позволяет вам написать особенности того, как веб-сервер должен реагировать на открытые соединения, идеально подходит для Web Socket как толчок для массовых многопользовательских игр.
Есть действительно отличный пост в блоге о построении многопользовательской игры в воздушный хоккей, который является отличным введением в некоторые сложности, связанные с играми HTML5.
Ресурсы с сегодняшней сессии:
http://retinafy.me/ — отличная небольшая книга о том, как бороться с экранами сетчатки.
http://createjs.com/ — это фреймворк для разработчиков игр, который выглядит хорошо. Вдохновленный вспышкой.
http://kineticjs.com/ KineticJS — это еще одна основа.
Пол рекомендует иметь некоторые знания о линейной алгебре, если вы хотите создать игровой движок. Вот отличный учебник: http://blog.wolfire.com/2009/07/linear-algebra-for-game-developers-part-1/ и как только вы прочитаете это, вот библиотека, которая поможет с векторной математикой : http://sylvester.jcoglan.com/
Вот то, что Пол создает без использования фреймворков или игровых библиотек: http://teven-b82df421.s3-website-us-east-1.amazonaws.com/
И если вы в юнит-тестировании — это можно сделать и для разработки игр. Вот тесты для вышеупомянутой незавершенной работы: http://teven-b82df421.s3-website-us-east-1.amazonaws.com/test.html и код: https://github.com/ кпк / bottom_up / дерево / мастер / SRC / код / спецификации
http://www.html5canvastutorials.com/cookbook/ Поваренная книга HTML5 Canvas — отличный общий ресурс
И довольно удивительная библиотека симуляции физики для JavaScript… Демонстрация: http://dl.dropbox.com/u/2494815/demo/Joints.html Код: https://github.com/josephg/chipmunk-js
http://yellowshoe.com.au/super_fun/ — пример игры в стиле настольной игры с несколькими вариантами ответов / кубиками, определяющими вход.
Для анимации в HTML5 requestAnimationFrame является важным API, однако он еще не является стандартным. Вот хороший скрипт polyfill, который предоставляет его для всех браузеров: http://teven-b82df421.s3-website-us-east-1.amazonaws.com/js/vendor/raf.js и более официальный URL для polyfill requestAnimationFrame : https://gist.github.com/1579671
Для JavaScript Jasmine отлично подходит для модульного тестирования: http://pivotal.github.com/jasmine/ & для кода Ruby, RSpec великолепен: http://pragprog.com/book/achbd/the-rspec-book
Несколько месяцев назад Mozilla опубликовала этот минимальный шаблон HTML5-игры: https://blog.mozilla.org/labs/2012/05/introduction-a-minimalist-html5-game-template/
Если вы заинтересованы в чтении полной стенограммы сегодняшней сессии, она размещена ниже.
Наша следующая сессия будет на UX с автором SitePoint Джоди Мул . Если вы пропустили сегодняшнюю сессию из-за того, что забыли об этом, обязательно подпишитесь на электронные напоминания о будущих сессиях. Вы можете сделать это здесь https://www.facebook.com/sitepoint/app_115462065200508
HAWK |
|
YamilG |
|
MB4 |
|
MB4 |
|
программка … |
|
markbrow … |
|
Paul_Wil … |
|
программка … |
|
SitePoin … |
|
markbrow … |
|
программка … |
|
markbrow … |
|
markbrow … |
|
HAWK |
|
markbrow … |
|
программка … |
|
YamilG |
|
Cuebit |
|
markbrow … |
|
markbrow … |
|
Paul_Wil … |
|
SitePoin … |
|
Диого |
|
SitePoin … |
|
markbrow … |
|
программка … |
|
markbrow … |
|
SitePoin … |
|
YamilG |
|
программка … |
|
SitePoin … |
|
YamilG |
|
markbrow … |
|
SitePoin … |
|
markbrow … |
|
SitePoin … |
|
YamilG |
|
markbrow … |
|
HAWK |
|
markbrow … |
|
YamilG |
|
SitePoin … |
|
SitePoin … |
|
YamilG |
|
программка … |
|
markbrow … |
|
SitePoin … |
|
YamilG |
|
markbrow … |
|
molona |
|
Диого |
|
markbrow … |
|
YamilG |
|
SitePoin … |
|
YamilG |
|
markbrow … |
|
SitePoin … |
|
markbrow … |
|
SitePoin … |
|
markbrow … |
|
HAWK |
|
lnxwalt |
|
markbrow … |
|
YamilG |
|
программка … |
|
markbrow … |
|
SitePoin … |
|
Balachan … |
|
markbrow … |
|
YamilG |
|
chrisser … |
|
markbrow … |
|
программка … |
|
markbrow … |
|
SitePoin … |
|
Paul_Wil … |
|
markbrow … |
|
SitePoin … |
|
markbrow … |
|
chrisser … |
|
программка … |
|
SitePoin … |
|
markbrow … |
|
Диого |
|
chrisser … |
|
markbrow … |
|
chrisser … |
|
HAWK |
|
markbrow … |
|
программка … |
|
SitePoin … |
|
chrisser … |
|
HAWK |
|
molona |
|
markbrow … |
|
SitePoin … |
|
markbrow … |
|
molona |
|
markbrow … |
|
chrisser … |
|
markbrow … |
|
fhuel |
|
SitePoin … |
|
chrisser … |
|
markbrow … |
|
SitePoin … |
|
markbrow … |
|
markbrow … |
|
yuukan |
|
fhuel |
|
markbrow … |
|
Диого |
|
molona |
|
SitePoin … |
|
fhuel |
|
markbrow … |
|
SitePoin … |
|
fhuel |
|
Диого |
|
SitePoin … |
|
markbrow … |
|
chrisser … |
|
SitePoin … |
|
fhuel |
|
HAWK |
|
badjem79 |
|
SitePoin … |
|
markbrow … |
|
Диого |
|
markbrow … |
|
markbrow … |
|
Диого |
|
SitePoin … |
|
SitePoin … |
|
markbrow … |
|
Диого |
|
markbrow … |
|
SitePoin … |
|
SitePoin … |
|
HAWK |
|
molona |
|
molona |
|
chrisser … |
|
программка … |
|
HAWK |
|
theoWire … |
|
Диого |
|
fhuel |
|
HAWK |
|
markbrow … |
|
theoWire … |
|
SitePoin … |
|
markbrow … |
|
SitePoin … |
|