妹でもわかるUnrealEngine4

毎日更新? 妹に説明するために書いてるけど、たまにわかってない場合もあるUnrealEngine4を中心としたゲーム制作の話。略すとイモリアル

毎日更新? 妹に説明するために書いてるけど、たまにわかってない場合もあるUnrealEngine4を中心としたゲーム制作の話。略すとイモリアル

カーリング的な物を作る(2) ストーンを曲げる

f:id:una_unagi:20180228223700g:plain

f:id:una_unagi:20180228224025p:plain

「石が曲がるようになった。減速処理も前回のから変わってるけど、はみ出しちゃったし、そんな重要な問題ではないので」

妹「石が速い時は曲がらないんだよね」

「実物はどうかわからないけど、今回の計算では微妙に曲がり続けてる。ただスピードがある時はちょっとしか角度に影響しない仕組み」

f:id:una_unagi:20180228231654p:plain

「図でいうと、赤が進行方向✕速さ、青が真横✕適当な数字という、Vector3になってる。ストーンは浮かないから高さは常に0で計算してるけど。石が動くたびに2つのベクトルを混ぜて、その結果を次の計算での進行方向にしてる。……という最初に思いついた方法でやってみたところ、まあまあいい感じに曲がったから、これでいいかなと思っている。若干曲がりすぎな気もするけど、石や競技場の寸法次第でもあるし」

妹「いい感じにならなかった場合は?」

「ある程度はパラメータの変更で変えられるけど、そういう次元の問題じゃなければ、例えば予定してる軌道を方眼紙に描いて、そういう感じのスプライン曲線を作るとか。フレームでの移動量を配列に全部入れちゃう手もある」

カーリング的な物を作る(1) ストーンを動かす

f:id:una_unagi:20180226235021g:plain

「オリンピック的なものを見ていた関係で、カーリングめいた物を作りたいなあと思ったので、ちょっと試作中」

f:id:una_unagi:20180226235131p:plain

「といったも石がまっすぐ動いて、しばらくしたら止まるというだけで、今のところカーリング要素はかけらもないんだけど」

妹「物理のとかで動かすの?」

「今回は物理は使わない。大雑把に色々ぶっ飛ばすなら物理使うけど、今回は精密なショットを楽しみたいというのもあるし、物理エンジンだと回転して曲がっていくというのが上手く再現できないというのもある」

妹「そんなのをちゃんと計算すると大変なのでは」

ちゃんとではなくていい。ただ同じパラメータでストーンを投げたら必ず同じ結果になってほしいというのがある。そうでないとゲームとして差し支えがある」

妹「でもカーリングって同じ結果にならないものなのでは?」

「それはパラメータが違うからだろうと思う。投げる強さとか、石や氷の状態とか、いろいろ。完全に同じでもブレはあるのかもしれないけど、それを計測する方法がないし。そもそもどうしてそういう軌道になるかというのも、完全に解明できてはいないらしい」

妹「やっぱり作るの大変なのでは」

カーリング完全再現が目的ならそうなんだけど、今回はそうではないから。軌道については面白ければ本物より大きく曲がってもいいし、途中でバックしてくるストーンとか作ってもいい。そこはゴルフとカービィボウルの違いというか。昔のファミコンゲームとかも本物とはだいぶ違うのが普通だったし」

妹「そういうものなのか」

「違っててもいいけど、ただゲーム中での結果は毎回同じであって欲しい。そう考えると、今日のやつはTickの間隔次第で違う結果になるのでよくない。フレーム落ちで多少見た目がズレても、結果は同じになるよう調整が必要」

VRプラグインが有効になってると画面録画できないので何とかする

f:id:una_unagi:20180225230547p:plain

「ちょっとUE4の作業の様子を動画にしようと思ったら、なぜか録画できなかったので、調べてみたらVRプラグインのせいだった。これが有効になっていた」

妹「VRで作ってたの?」

「いや全然。プラグインが有効で、かつ対応するヘッドセットがつないであると、VRのシステムが反応する仕組み。その状態だとグラフィックボードの録画が機能しなかった。録画ソフト次第では影響を受けないのもあるけど」

妹「使ってないんだったらVRプラグイン要らないのでは」

「要らないんだけど、テンプレートを開くと必ず有効になってるから、特に気にしなければそのまま。とりあえずプラグインを無効にすれば問題は解決した」

妹「なんで有効なんだろ?」

「一応有効にしておいた方ができることは多いから、他にも色々有効になってるけど、たぶん使わないよなコレっていうのがある。要らないけどあったからといって大した害はないから。容量とかはあれだし、今回みたいなことはあるんだけど」

妹「プロジェクト作るたびにプラグインの設定するのめんどくさそう」

「自分用にそういう調節をしたテンプレートを作っておけるみたいなんだけど、まだ試してはいない。前はUE4のランチャーを起動しただけでもこの状態だった気がするから、それに比べるとだいぶ対処しやすくなった」