S.F. Page

Programming,Music,etc...

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

昨日今日と文字列表示やゲームフローの実装を行っていた。

デモおよびコード

http://bl.ocks.org/sfpgmr/af963e21286cc88d5937

ゲームフローの実装

ES6のジェネレータを使って実装してみた。イテレータとしてではなくコルーチン的な使い方である。非常に簡潔にゲームフローを書くことができる。

文字列表示の作成

昔の粗いドット風の文字列表示を行うコードを書いた。このゲームは仮想座標として192×256の大きさを持っている。文字に関しては仮想座標上の2×2ピクセルもしくは4×4ピクセルを1ドットとしている。その1ドットにそれぞれメッシュを割り当てて表示しているのである。なんと贅沢な。メッシュとジオメトリの関係についてまだ知識が浅いので、もっと効率的かつリソース消費を抑えることができると思う。Three.jsのそのあたりについてもう少し勉強しないといけない。

ゲームの内容について

ゲーム・ルールは以下のとおりである。

  • プレーヤーにはボールが3つ与えらる
  • パドルを動かし、跳ね返すと1ポイント与えられる
  • ボールを跳ね返し損なうとボール・ロストとなる。3個ボール・ロストするとゲーム・オーバーとなる

今のところ、単純極まりないルールで、ゲームとしての最低限の内容である。全く面白くない。これにいろいろなルールを追加していくことでゲームを面白くしていく。まずは難易度を徐々に上げていくようにしないといけないだろう。