LoginSignup
0
0

More than 5 years have passed since last update.

UE4でVR空間にカノジョを錬金 20日目

Last updated at Posted at 2017-12-19

UE4でVR空間にカノジョを錬金する Advent Calendar 2017 20日目の記事です。

12/1~25日までに一人で、UE4を用いてサ○○レッスンとかVR○○ジョっぽいゲームを作って仮想彼女を生み出すことにチャレンジします。

昨日に引き続き、呼吸のロジック実装です。

吸うロジック

早速吸うように見せるアニメーションの関数説明に入ります。

image.png

今回は上にあるSet Inhaleメソッドについての説明です。

Set Inhaleメソッド

全体は以下の通りです。

image.png

簡単に説明すると、このメソッドでは各ボーンの吸うアニメーションに必要な回転値をセットしています。

一番下が吸うアニメーションの時間を判定しています。
image.png

呼吸の時間は以下のように計算しています。
inhale * durationRate + 0.5
0.5は今回実装した時に自然に呼吸させるように見せるために必要な調整時間です。
これを吸うモーション開始してからの経過時間を計り、もし過ぎたら待機状態にフェーズを移行するようにセットします。

続いて各ボーンの回転値をセットします。
image.png

ボーンを回転させるのは縦方向なので、ボーンの向きを見て正しく動くように値をセットします。
今回、ユニティちゃん、グレイちゃん共にX(Roll)が縦方向に回転するので、Xにセットしています。

回転値はGetInhaleTimeという関数を作成して取得しています。

※関数名が色々オカシイのは許してください。元は時間を取るためのメソッドでしたが色々試した結果、最終的に回転値を取るメソッドになってしまいました。
※よい子の皆さんはちゃんと適切な関数名にしましょう。

本日はここまでです。

次回

明日は回転値の計算式を書きます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0