Обзорный доклад WEB-спецификаций, которые позволяют создавать игры в браузере
WSD 28 января 2017
Anatomy of a video gamefunction tick (timestamp) {
/* recalculate */
/* redraw */
requestAnimationFrame(tick);
}
requestAnimationFrame(tick);
function tick (timestamp) {
// ...
circle.update((timestamp - lastTimeValue) / 1000);
// ...
}
requestAnimationFrame(tick);
// ...
this._position[0] += (timeDelta * this._speed) *
this._direction[0];
// ...
document.addEventListener('visibilitychange', function () {
lastTimeValue = performance.now();
});
transform: scaleY(0.5);
transform: rotate(45deg);
animation: play 0.5s steps(6) infinite;
/* Изменение свойства background-position в анимации */
vector
bitmap
elem.addEventListener('mousemove', function(event) {
// do something awesome!
});
var gamepad = navigator.getGamepads()[0];
var button0 = gp.buttons[0]; /* 0-16 */
var axe0 = gp.axes[0]; /* 0-3 */
canvas.addEventListener('mousemove', function(event) {
// Смещение с предыдущего события
event.movementX;
event.movementY;
});
var myaudio = new Audio("sound_asset.mp3");
myaudio.play();
// Текущее положение в аудиофайле
myaudio.currentTime
// Громкость
myaudio.volume
Презентация и примеры
github.com/vsesh/wsd-28-01-2017
Всеволод Шмыров
vsesh.me