進捗どうですか?

Unityで2D格闘ゲームを作っています。

Unity格ゲー製作状況等

いつもどおり投稿間隔が長いですが作っています。
作るのをやめたと言わなければやめたことにはならないんです。
一人製作はそのへんが気楽でいいですね。

今年の盆休みは少し作業に集中できたので色々作ることができました。

f:id:yrkhnshk:20170821000254j:plain
ようやく当たり判定を実装し、格ゲーらしくなってきたと思います。
当たり判定は多くの2D格ゲー同様、矩形の組み合わせで行っています。
こういったものはUnityにはないので自前です。
(後述しますが別スレッドで当たり判定を行うので、Unityの機能が使えないというのもあります)

f:id:yrkhnshk:20170820232337j:plain
他には、ギルティギアXrd風の顔面の陰影調整の試作とかもやってました。
顔面の陰影の出方は、セルルック採用の中でもギルティギアXrdは独特です。
わたしの知識不足か、普通に調整しただけではこういう陰影の出方にはならなかったので、
キャラクターの3Dモデルにも色々手を加えたりしました。

144Hzのディスプレイも購入したので、大分前に144fpsの対応を行ったりもしてました。
格ゲーで144fps(というか可変fps)というものはあまり聞いたことがないのですが、
元々のゲーム性が固定fpsでデザインされてるからかと感じます。
格ゲーだとフレーム単位での操作や読み合いがあったりするので、
可変fpsだとそこが上手くいかなくなるのでしょう。
(あと可変fpsだとリプレイ再生が上手くいかなそう)

そこで、自作ゲームではキャラクターの操作や動きの処理、
当たり判定等の処理を固定60fpsで動作する別スレッドで行い、
画面表示を144fps(可変fps)で行うようにしました。
画面に表示するにあたってキャラクターの位置を144fps(可変fps)に合わせて補間するため、
動作がヌルヌルになりました(キャラクターのアニメーション自体はコマアニメですが)。
どのくらいヌルヌルなのかをお見せできないのが残念ですが、
完成したときは144Hzのディスプレイで遊んでもらえるとうれしいです!
(なお、UnityにはFixedUpdateという常に一定フレームで呼ばれる関数がありますが、
色々な理由から別スレッドによる実装を行っています)