JumpLab: a testbed for studying jump motion and scrolling algorithms of videogames

使い方

JumpLab を起動すると以下のような画面が表示されます。

キー入力

紫色の人型キャラクタ ("player character") は、矢印キーの左右で左右移動、space キーでジャンプさせることができます。また shift キーでダッシュします。

加えて、pキーで一時停止、また一時停止中に.キーでコマ送りすることができます。

パラメタの調整

JumpLab は、ジャンプにまつわる様々なパラメタを変更することができます。画面右側が、パラメタ調整のためのパネルです。

調整パネルには "JUMP1" "JUMP2" "CAMERA" "CHARACTER" "JOYSTICK" "CHART" "MISC" の7つのタブがあり、これらをクリックすると表示を切り替えることができます。

"JUMP1/2"・"CAMERA"・"CHARACTER"・"JOYSTICK" についてはそれぞれ「ジャンプ設定」「カメラ設定」「キャラクター設定」「ジョイスティック設定」のページを参照してください。

設定の読み込みと保存

JumpLab では、設定に名前をつけて保存し、後で読み込むことができます。保存された設定のことを「スタイル」と呼びます。また、JumpLab にはいくつかのスタイルがあらかじめ同梱されており、それらを選んで読み込むこともできます。

"STYLES" をクリックすると、スタイルの一覧がリスト表示されます。リストは一度に5件までしか表示されませんが、スクロールすればそれ以上の設定を閲覧・選択することができます。各種パラメタを元に戻したい場合には、「*default*」を選択すると標準設定を読み込むことができます。

設定を保存する際は、「STYLE NAME」と書かれたテキスト入力欄に名前を入力した後に、「SAVE」ボタンを押してください。JumpLab にあらかじめ同梱されていたスタイルは上書き保存することができませんが、名前を変えれば保存できます。

変更した設定は "data/user_settings.json" に JSON 形式で保存されます。

チャート表示

"CHART" タブを選択すると、キャラクタとカメラの移動の様子をリアルタイムにグラフで見ることができます。

初期状態ではキャラクタとカメラの X・Y座標を反映したものがグラフ表示されます。それぞれの値は、画面の最大幅および高さによって正規化したものになります(XとYとで単位が異なるのに注意してください)。

"SHOW VELOCITY" を ON にすると、座標ではなく速度の表示になります。それぞれの値は、座標値のフレーム間差分に適当な係数をかけて見やすくしたものになります。値の絶対的な大きさを知るのには向いていませんが、速度変化の様子を観察するのに便利です。

その他の設定

"MISC" タブを選択すると雑多な設定項目が表示されます。

"Show afterimage" を ON にすると、"Show trail を ON にしている際に、赤い点のかわりに自キャラクタ画像が残像のように表示されるようになります。

"Show input status" を ON にすると、左右キーおよびジャンプボタンの入力状態が画面上に表示されるようになります。

ステータス表示

画面右上には、キャラクタの状態が表示されています。

Jumper X,Y
キャラクタ座標
Jumper VX,VY
キャラクタの移動速度
Jumper AX,AY
キャラクタの加速度
Propelling Remaining
ジャンプの等速上昇ができる残りフレーム数。詳しくはMaximum propelling duration を参照
Jumping
ジャンプ中か否か
Propelling
等速上昇中か否か
On obstacle
足場の上にいるかどうか
FPS
描画速度 (frames per second)

実験してみよう

JumpLab の標準設定は、足場を利用しての頻繁な上り下りや、ジャンプ幅の微調整が求められる、やや難しめのプラットフォームゲームに適した設定にしてあります。パラメタをいろいろと変えてみて、自キャラクタの挙動から受ける印象がどのように変わるか、実験してみましょう。

ジャンプ中制御の可否

'X accell (jumping)' を 0 にすると空中制御がいっさいできなくなり、ジャンプ時に微細な制御が求められるようになります。空中制御の有難みがよくわかります。

重力加速度の対称性

'Gravity (falling)' を 'Gravity' と同じ値(初期設定では 0.5)にすると、ジャンプが描く放物線は物理的に馴染みのある左右対称な放物線になります。この設定で、階段状の箇所を降りてみたり、高い足場から段々に降りてみたりして、そこから受ける感覚を比べてみましょう。また、両方とも 1.2 程度に設定した上で 'Jump velocity' を 22 に設定するとどうなるでしょうか。

カメラ easing の効果

Jump Lab ではカメラの鉛直方向の動きにのみ easing がかけられるようになっています。これはジャンプ時のカメラの挙動の違いから受ける印象の違いを比較検証するための機能です。ジャンプのパラメタも様々に変えながら、'Camera easing' の有効/無効を切り替えて確かめてみましょう。

なお、カメラ easing を切るときは一緒に parallax scrolling も止めるため、'BG scroll speed' を 1 にするとより印象が際立ちます。