読者です 読者をやめる 読者になる 読者になる

S.F. Page

Programming,Music,etc...

スカッシュゲーム

スカッシュゲームを作る(8) - 効果音をつける

スカッシュからブロック崩しに移る前に、WebAudioで効果音をつけてみた。以前作ったシューティングゲームの波形メモリ風音源を修正して使っている。動かしてみるとFirefoxでは動作するが、Chromeでは動作しない。今までAudioBufferSourceNodeのbufferパラメ…

スカッシュゲームを作る(7) - パドルでボールをコントロールする(2)

前回はパドルのx移動量によってボールの動きを変化させるようにしたが、そうするとボールの移動ベクトルの大きさが変わってしまうので、スピードが変わってしまうのであった。今回はパドルの動きによって変化させるのはボールの角度のみにしようと思う。そう…

スカッシュゲームを作る(6) - パドルでボールをコントロールする

まずはパドルのx移動量(Δpx)をボールのx移動量(Δx)に反映してみることにする。 図にすると以下のとおりである。 ボールのx移動量(Δx)からパドルの直近のx移動量(Δpx)を引いたものを新しいボールの移動量(New Δx)とするのである。ボールのyの移動量(Δy)は単純…

スカッシュゲームを作る(5) - Pointer Lock API を試す

マウス操作を改善するために、Pointer Lock APIを使ってみた。 ソースおよびデモ Pointer Lock APIを使うとマウス座標が移動量で検出できて、マウスカーソルも消える。おかげでパドルコントロールにおけるストレスがかなり解消された。しかし依然として面白…

スカッシュゲームを作る(4) - 徐々に難易度を上げていくルールを加える

徐々に難易度を上げていくために、パドルでボールを跳ね返すたびにボールのスピードを少しずつ上げていくことにした。 デモおよびソースコード 難易度が上がっていくので前のバージョンよりは面白くはなった。難しさを乗り越えていくことで達成感を満たすか…

スカッシュゲームを作る(3) - ゲームとしての体裁を整える

昨日今日と文字列表示やゲームフローの実装を行っていた。 デモおよびコード ゲームフローの実装 ES6のジェネレータを使って実装してみた。イテレータとしてではなくコルーチン的な使い方である。非常に簡潔にゲームフローを書くことができる。 文字列表示の…

スカッシュゲームを作る(2) - パドルの実装

Black Mesaで遊んでいる合間に、パドルを実装してみた。 デモへのリンク パドルとのあたり判定はちょっといい加減。マウスカーソルの座標からcanvas内のローカル座標に変換する方法がちょっとわからなくて困った。下の記事の内容で解決した。 本の虫: DOM le…

スカッシュゲームを作る(1)

まあそういうわけで簡単なゲームを作り、ゲームの面白さというものを研究し、ゲームの本質に迫ろうというアイデアで進めていこうとしていて、まずスカッシュゲームを作ろうとしている。しかし単にレトロゲームを作って喜ぶだけで終わりそうな気もする。 なぜ…

ゲームの本質的なおもしろさを追求してみる?

昨日ゲームやらなくなったとか言ってたけど、2か月前に思い出したようにWiiのグラディウスを1-2時間やったことを思い出した。すみません。 シューティングゲームで一番好きなのは縦ではゼビウス、横ではグラディウスIIである。グラディウスIIは本当に飽きる…