3Dで格闘ゲームを作る話 その1

近況報告のような感じです。
ここのところC#+XNAでゲーム作ってたり、Objective-C+iPhone/iPadでアプリ作ったり、なかなか暇にならないこの頃です。
が、これに追加して3D格闘ゲームを作ることになりました。


2月頭から始めて、期限は2月21日です。3週間です。
今のところ、
2月1日〜2月3日 →モーションエディタ作成
2月4日〜2月8日 →モーション作成(技とかで順次増えるので基本的なモーションのみ)
2月9日〜      →ゲーム本体のプログラミング開始


今のところ順調ですがいつ詰まるか・・。
早い段階でモーションを用意できたので(というよりすぐに用意できるよう3Dモデルにしたんですが^^;)
作業的には予定より少し楽なんですが・・、あと1.5週間の間にこれ+エントリーシートというものを2、3枚用意しないといけなくて。
なかなか大変です。


初めて格闘ゲームにチャレンジするのですが、プログラミングに関してはアクションゲームとか作るよりも断然楽ですね。
何しろ地面は平らだし、管理するキャラは2体(作るのは1体)なので複雑なオブジェクトマネージャを用意しなくていいし。
その分タイミング・バランスの調整、エフェクト・演出が大変ですが、そこは余った時間分でbetterに仕上げる感じですね。


新しいボーンアニメーション構造とか作る暇なかったので、以前ご紹介した(↓の)を使ってるんですが、なかなかいい感じです。
モーションエディタ作る時も特に困らなかったし(スクリプト型にしました)、ゲーム本体の場合も各関節の位置が直接分かるので、当たり判定作るのがものすごく楽なんです。
ボーンクラスが保持してるのは根元だけなんですが、それにそのボーンの回転行列を掛けたオフセットをかますだけでそのパーツの線分ができます。
後はそれと相手全体、もしくは各パーツと判定とってやれば良いだけです。


モーションエディタも汎用的にできたら、公開したいと思ってます。
3Dモデル・モーションの知識が無くともプログラマブルスクリプト)にモーションを作成できるので、3Dゲームを作りたいけどモーション無くて足踏みしてる方にぜひ使って頂きたい。