こんにちわ。
職人見習いの小森です。
今回は、HTML5におけるアニメーションループについてです。
私はゲームを作っていた経験もあり、HTML5におけるゲーム開発にも興味あるので調べてみました。
○setInterverlを使ったループ
function render(){ // アニメーション 1フレーム分の処理 } setInterval(render, 1000 / 60);
setTimeoutやsetInterverlを利用したやり方が一般的ですが、requestAnimationFrameというのが新たに用意されています。
○requestAnimationFrameを利用したループ
if ( !window.requestAnimationFrame ) { window.requestAnimationFrame = ( function() { return window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || function(callback, element) { window.setTimeout( callback, 1000 / 60 ); }; } )(); }
requestAnimationFrameを利用する場合も非対応ブラウザへの対処も必要なため、非対応ならsetTimeoutやsetInterverlでループする対策も必要になります。
※この記事は、なかの人(spitz8008)が書いています。