UnholY CreatioN 2020/11/11 10:47

ポーズメニュー制作&低スペックPC対策を盛り込んでいました。


11月8日はいいおっぱいの日だったらしいですよ。うちの作品で10位以内に入るくらい上手く表現できた乳揺れアニメでもどうぞ。(表紙用GIFアニメ)


今週はポーズメニューの制作とか多言語対応とかバグ対応とか…見た目には変化の少ない中身の部分を主にいじっておりました。

世の中のアクションゲームでは当たり前のように実装されているこのポーズメニューですが、作ろうとすると意外と面倒なんですよね。

・アクションゲームシーンのすべてのオブジェクトの動きを止める(ポーズメニューにかかわる部分など動かしたいところ以外)

・ポーズメニューのUIを動かすプログラム(うちのゲームの場合はゲームパッド、キーボード+マウスに対応させる)

・ポーズを解除したらきちんとポーズしたオブジェクトが途中から動くようにする。

UnityやCF2.5などのツールはいろいろとゲーム制作に最低限必要な環境を用意してくれてはいるのですが、こういう仕組みは自分で構築していくか、そういうアセットを(あるのかは知りませんが)探して導入するみたいなことをしないといけません。
しかし、これで本当にいいのか…まあバグが出たらその都度対応していくしかないですね。


低FPSしか出ないPCで動かしてみたらめっちゃバグった。


(画像のホァイはイメージです。実際に起こったバグとは関係ありません)

さて、ゲームがどうやって動いているのか…という仕組みなのですが…フレームという言葉は皆さん聞いたことがあるかも知れませんが、このフレームを基軸としてゲームは動いています。
最近のゲームは60FPSで動いているものが多いのですが、これは1秒間に60回フレームを更新していることを意味します。
つまり、1/60秒に1回ゲーム内のすべてのスクリプトを実行し、その結果を画面に表示するというのを起動中延々と繰り返しているわけですね。
特に何も設定していない場合、PCの環境によってこのFPSはマチマチとなります。高性能なPCであれば120FPSとかたたき出しますし、よわよわPCなら10FPSでアプリケーションが落ちるみたいなことが起こるわけです。

穢神楽は60FPSのリミッターをかけて動かしています。どんなに高性能なPCでも60FPSで動くようになっていますが、低性能なら低性能なりにフレームレートが落ちて動きます。
60FPS出るPCならいいのですが、問題は30FPSなどで動かした場合。先ほど申し上げたように1フレームに1回スクリプトが走りますので、例えば1フレームに1カウントずつ数字を増やしていくスクリプトの場合、1秒後には60と30、その差は倍になってしまいます。
Unityの場合、物理計算はFixed Updateという「フレームがスキップされた分、後で60フレームで動かした場合と同じになるよう、帳尻が合うように更新する」という機能を使って動いているので、この辺りも考えて独自スクリプトは「フレームスキップされたらヤバイ部分はFixed Updateで動かす」みたいな工夫が必要になってきます。
私の場合、経験不足でそのあたりの工夫が出来ていなかったんですねぇ…はぁ…試しにタブレットPCで動かしてみたらジャンプやぶっ飛ばされた時の飛距離が安定せず困ったことになっていました。
精密な操作が必要ではないトーチャラーの時は(脱出ゲーはアレでしたが)ほとんど問題になりませんでしたけど、アクションゲームとなるとこれはかなりの問題。
とまあそんなこんなで、その辺りの対応に2日間くらい時間を使ってしまいました。Time.deltaTime便利やねぇ…。
現在では特に問題…なければいいなぁ…いいとは思うんだけどなぁ…どうなんだろうなぁ…。

ちなみに、今回だらだらと文章を書く殴っておりますが、これは文章に書きだすことによって頭の中の状態を確認しています。文章に書きだせないことは理解が出来ていないことだと思うので…。


今月中に動作試験版を出したい。

開発初期である今のうちに様々な環境でテストし、問題を洗い出しておかないとマズイ。ここ数日でそんなことを思うようになりました。
アンホリプロダクションの頃から弊サークルを追っていただいている熱心な方はご存知かとは思いますが、はたはたさんはゲーム制作に関しては完全に素人から始めていて、イラストやプログラミング、ドット絵についても学校で学んだこともプロの環境で働いていた経験もありませんし、どれもほぼ独学で覚え、声、BGM以外の部分は一人でゲームを構築してきました。
ゲーム制作の時間は現在比較的自由に取れる仕組みになっているのですが、それでもやること覚えることがが多すぎていつも時間が足りない状態です。
なので大変恐縮ではあるのですが、チェックの部分は有志の皆様のお力をお借りできないかと思います。
もう少し制作を進め、プレイしても問題ない状態になったらご協力を仰ぐことになると思います。

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

記事のタグから探す

月別アーカイブ

記事を検索