2007-04-07

[]スペハリもどき スペハリもどき - Nao_uの日記 を含むブックマーク はてなブックマーク - スペハリもどき - Nao_uの日記 スペハリもどき - Nao_uの日記 のブックマークコメント

f:id:Nao_u:20070408011845j:image:w180 f:id:Nao_u:20070408011844j:image:w180 f:id:Nao_u:20070408011843j:image:w180

今日は自転車で出かけようと思ってたら雨が降り出してしまったので、暇つぶしに擬似3Dのゲームを3Dポリゴンで再現しようとしたらどうなるのか、という実験をはじめてみた。

以前に購入した「鈴木裕ゲームワークス VOL.1 」に収録されていた「パワードリフト」や「スペースハリアー」などをプレイして、擬似3Dのゲームには普通のポリゴンで作られたゲームにはない独特の感覚があり、通常の3Dのゲームでもどこかに微妙に嘘を混ぜることでこういった擬似3D特有の面白さを再現できたりしないか、ということを実験したくなったので、試しにXNAで作ってみることに。

http://www.nao.mydns.jp/data/SpaceTest_win.zip(要XNAのランタイム)

とりあえずアーケード移植版のスペハリの動きと見比べながらスクロールする地面と柱を表示し、目分量でなんとなく似たような見た目と操作感覚になるように、自機の挙動やカメラの動きなどを調整。

きっと「スペースハリアー」ではスピード感を強調するためにカメラの画角は広めに取ってあるのだろうと思ってたのだけど、実際に試してみると画角を狭くした方がオリジナルの動きに近くなるようだ。地平線近くにある遠距離の物体は奥行きに応じて余分に縮小表示し、X方向の位置さえも補正をかけて無理矢理画面内に収めているような雰囲気。

障害物の出現から手前消失までの時間を基準に考えると、Farクリップ面は思っていたよりもずっと近くにあるようで、見た目の大きさを馬鹿正直に計算して描画したのではあの奇妙なスピード感は出せないようだ。よく見ると遠距離のものは横方向の動きが地面と全く合っていなかったりするので、地面が無限平面でないとこういった技は使いにくいかも。

これだけだと遠距離の拡縮時に違和感があるので、縮小したときにはその分だけZ座標も奥に補正してみた。座標系自体はゲームとして扱いやすいように画面手前付近に狭く取るものの、出現の違和感を減らしてスピード感を強調するために、表示だけは遠距離に移動させるような感じか。他にもまだいろいろと調整の余地はありそう。

また、今回ちゃんと観察してみるまで、空中の敵や弾が画面の横スクロールとは無関係に常に同じ位置にいるということに気づいてなかった。いろんなところでうまくウソをついて、ゲームとして成立しやすいように調整している模様。

通常の3Dのゲームだと遠距離にある物体がほとんど点にしか見えなくて区別がつきにいことが多く、マーカーを乗せるなどで対処するにしても限界がある。うまく他の物体と矛盾しないように嘘をついて視認性を上げることができないかなと考えたりすることはよくあるのだけど、通常の背景表示とあわせると単純なやり方では違和感が出そうかも。かといって普通に3D計算して表示すると画面密度やスピード感が同じような感覚にならず、「プラネットハリアーズ」みたいな微妙な雰囲気になりやすい。通常の3Dモデルを使用したゲームで擬似3D特有の迫力を再現するには、いろいろと工夫が必要そう。そういえばSEGA AGESのリメイク版はどうしてたんだろう?今手元にないので確認できない・・・。