音ゲーを作ってみたい

音ゲーを作ってみたい – メディアデザイン実習J音ゲーは、プログラム部分(ゲームエンジン)は非常にシンプルです。
演出でいかに楽しませるか、音楽とのシンクロをいかに気持ち良く感じさせるか、に主眼が置かれます。
そういう意味で、メディアデザイン専攻においてぴったりなテーマの一つであるといえるかもしれません。

いろいろな音ゲー

Audio Surf
img

Rez
maxresdefault
rez3
RezHD_003

Child of Eden
8tnu0100000fqn2d
Child20of20Eden_PERFECT2

Crypt of the necrodancer
zone3

Beat Mania
hqdefault

Dance Dance Revolution (DDR)
ddr_img01

太鼓の達人
130505_bandai_1

パラッパラッパー / ウンジャマラミー
8tnu010000010b3t
images

Space Channel 5
space_channel_5_psn_xbox_live_2

Piano Tap
9616_howto_2

Magic Piano
unnamed

 
 

共通要素(音ゲーたらしめるもの・音ゲーらしさ)

  • 時間の流れを図示したレール(タイムライン)の上を、タイミング(および入力種類)を示すマーカーが流れてくる。
  • マーカーが指定位置まで来たら入力して、タイミングが近いほど高い評価が得られる。

音ゲーと似て非なるもの

TImberman
316a305

Cookie Clicker
images-1

Flappy Bird
unique-design

 
 

基本的な実装

音ゲーは、いかの要素から成り立っていると考えられます。

  1. 音楽データ
  2. パターンデータ(音楽と同期する楽譜)
  3. パターンを描画するプログラム
  4. 入力を評価するプログラム(タイミングと種類)
  5. 得点を計算・表示するプログラム(コンボ倍率など)
  6. 点数状況をパターンや演出に還元するプログラム
  7. ステージ映像を描画するプログラム(ビジュアライザー)

このうち、
2)パターンデータ(音楽と同期する楽譜)
4)入力を評価するプログラム(タイミングと種類)
5)得点を計算・表示するプログラム(コンボ倍率など)
のみを実装すると、以下のようなサンプルを制作することが出来ます。

「松平健健ぱ」
http://dev.koekatamarin.com/zokei/20160501_kenpa/
左キーで「ケン」
右キーで「パ」

まずは、この位のものを作れるところを目指します。

 

JavaScriptによる実装

さきほどのサンプルをJavaScriptで実装するには、以下の処理が必要です。

パターンデータを記述する
 → 配列
パターンデータに沿ってマスの絵を変えて描画
 → forループ、classの変更
キー入力の受付(またはマウスクリックなど)
 → イベント
コマを動かす
 → 座標変更またはアニメーション
マスのカウント、失敗の判定
 → if文、変数をカウンターにする

今後の授業で、まずはこれらの処理を自分でプログラミングできるようにしていきます。

 

ちゃんとした音ゲーにする

次のステップとして、先ほどのサンプルをきちんとした音ゲーには、
1)音楽データ
3)パターンを描画するプログラム
6)点数状況をパターンや演出に還元するプログラム
7)ステージ映像を描画するプログラム(ビジュアライザー)
の4つの要素が残っています。

これらにはタイミング(時間・順番)や繰り返し処理を制御する必要も出てきます。
先ほどのサンプルのような基本的な処理を理解したら、ルパン三世のテロップなどを通して、より高度な処理を自分でプログラミングできるようにします。

 
 

それでは、具体的な内容に進んでいきます。




コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です